HelixBoundaries
The HelixBoundaries potential confines particles within a helical boundary, typically used for simulating systems with helical symmetry or chiral confinement.
This potentential is an extension of ExternalTabulated potential. ExternalTabulated potential takes as argument the value of the energy and force at a set of grid points. In the case of HelixBoundaries these values are computed to represent a helical boundary.
The helix boundary is defined as:
where \(r_{\text{h}}\) is the distance from the helix axis, \(R_{\text{helixInnerRadius}}\) is the radius of the tube that follows the helix (the helix itself has a radius of \(R_{\text{helix}}\)), and \(K\) is the strength of the confining potential.
We compute the previous potential in every point of a grid that is defined by the parameters nx, ny, and nz, and then we interpolate the values of the potential.
Since the value of \(r_{\text{h}}\) is not easily computed, we proceed as follows:
We generate \(n_{\text{pointsHelix}}\) points along the helix, with a pitch of \(R_{\text{helixPitch}}\) and a radius of \(R_{\text{helix}}\).
For each grid point, we compute the distance to that point to every point in the helix axis, the lowest distance is considered as \(r_{\text{h}}\).
We compute the value of the potential and its gradient at each grid point.
The second step is done in the GPU. This step is the most computationally expensive, since it requires \(O(n_{\text{pointsHelix}} \cdot nx \cdot ny \cdot nz)\) operations.
type:
External,HelixBoundariesparameters:
helixPitch:real: Pitch of the helix \([distance]\)helixRadius:real: Radius of the helix \([distance]\)eps:real: Handedness of the helix (1.0 for right-handed, -1.0 for left-handed, default: 1.0)helixInnerRadius:real: Inner radius of the confining potential \([distance]\)K:real: Strength of the confining potential \([energy/distance^2]\)nTurns:int: Number of turns in the helixnPointsHelix:int: Number of discretization points along the helixnx,ny,nz:int: Number of grid points for the tabulated potential
Example:
"helixBoundaries":{
"type":["External","HelixBoundaries"],
"parameters":{
"helixPitch": 10.0,
"helixRadius": 5.0,
"eps": 1.0,
"helixInnerRadius": 2.0,
"K": 100.0,
"nTurns": 5,
"nPointsHelix": 1000,
"nx": 64, "ny": 64, "nz": 64
}
}
Note
This potential is particularly useful for simulating systems with helical symmetry, such as certain biological structures or chiral nanotubes.
Warning
The potential calculation can be computationally intensive due to the discretization and tabulation process. Ensure that the number of grid points and helix discretization points are sufficient for accurate representation without being excessively large.
Tip
The helixInnerRadius and K parameters can be adjusted to control the “softness” of the confinement. A larger K will result in a steeper, more rigid boundary.