Integrators
Integrators are crucial components in VLMP, responsible for the temporal evolution of the system. VLMP offers a large number of integrators.
"integrators":[{
"type":"BBK",
"parameters":{"timeStep":0.02,
"frictionConstant":1.0,
"integrationSteps":1000000}}
],
Multiple integrators can be added to a single simulation. They will activate sequentially, following their order in the category list. This feature is particularly useful for processes like thermalization or avoiding steric clashes at the beginning of a simulation.
The list of integrators available in VLMP is:
BBK
- author
Pablo Ibáñez-Freire
BBK integrator for the NVT ensemble. This Langevin integrator is designed for simulations that maintain a constant number of particles, volume, and temperature. It is particularly useful for molecular dynamics simulations requiring stochastic thermal noise and friction.
Name |
Description |
Type |
Default |
|---|---|---|---|
integrationSteps |
Number of integration steps |
int |
|
timeStep |
Time step of the integrator |
float |
|
frictionConstant |
Friction constant of the integrator |
float |
Example:
{
"type": "BBK",
"parameters":{
"integrationSteps": 10000,
"timeStep": 0.001,
"frictionConstant": 0.1
}
}
EulerMaruyama
- author
Pablo Ibáñez-Freire
Simple Euler-Maruyama integrator for Brownian dynamics. This integrator is suitable for simulations involving stochastic processes, particularly in fluid environments with defined viscosity.
Name |
Description |
Type |
Default |
|---|---|---|---|
viscosity |
Viscosity of the fluid |
float |
|
timeStep |
Time step of the integrator |
float |
|
integrationSteps |
Number of integration steps |
int |
Example:
{
"type": "EulerMaruyama",
"parameters":{
"integrationSteps": 10000,
"timeStep": 0.001,
"viscosity": 0.01
}
}
EulerMaruyamaRigidBody
- author
Pablo Ibáñez-Freire
Euler-Maruyama integrator for rigid bodies, based on the approach detailed in DOI: 10.1063/1.4932062. Suitable for simulations involving Brownian dynamics of rigid bodies in a viscous fluid.
Name |
Description |
Type |
Default |
|---|---|---|---|
viscosity |
Viscosity of the fluid |
float |
|
timeStep |
Time step of the integrator |
float |
|
integrationSteps |
Number of integration steps |
int |
Example:
{
"type": "EulerMaruyamaRigidBody",
"parameters":{
"integrationSteps": 10000,
"timeStep": 0.001,
"viscosity": 0.01
}
}
EulerMaruyamaRigidBodyPatchesState
- author
Pablo Ibáñez-Freire
Euler-Maruyama integrator designed for rigid bodies with patches state. This integrator extends the standard Euler-Maruyama approach to accommodate simulations involving rigid bodies with specific patches states, adding complexity and realism to the simulated dynamics. The update of the patches state is performed using the a Monte Carlo approach, after the Euler-Maruyama update of the rigid body state. Random numbers are generated and used to decide whether a patch is going to be update its state or not.
Name |
Description |
Type |
Default |
|---|---|---|---|
viscosity |
Viscosity of the fluid |
float |
|
timeStep |
Time step of the integrator |
float |
|
integrationSteps |
Number of integration steps |
int |
Example:
{
"type": "EulerMaruyamaRigidBodyPatchesState",
"parameters":{
"integrationSteps": 10000,
"timeStep": 0.001,
"viscosity": 0.01
}
}
GFJ
- author
Pablo Ibáñez-Freire
GJF integrator, a Langevin integrator for the NVT ensemble, as described in DOI: 10.1080/00268976.2012.760055. This integrator is designed for simulations that maintain a constant number of particles, volume, and temperature, incorporating stochastic thermal noise and friction in the dynamics.
Name |
Description |
Type |
Default |
|---|---|---|---|
integrationSteps |
Number of integration steps |
int |
|
timeStep |
Time step of the integrator |
float |
|
frictionConstant |
Friction constant of the integrator |
float |
Example:
{
"type": "GFJ",
"parameters":{
"integrationSteps": 10000,
"timeStep": 0.001,
"frictionConstant": 0.1
}
}
MagneticBrownian
- author
Palacios-Alonso
Simple Euler-Maruyama integrator adapted for Brownian dynamics with magnetic properties. It is designed for simulating the behavior of magnetically responsive particles in a fluid, considering viscosity, gyromagnetic ratio, damping, and saturation magnetization.
Name |
Description |
Type |
Default |
|---|---|---|---|
magneticIntegrationAlgorithm |
Algorithm for magnetic integration |
string |
|
msat |
Saturation magnetization |
float |
|
viscosity |
Viscosity of the fluid |
float |
|
timeStep |
Time step of the integrator |
float |
|
integrationSteps |
Number of integration steps |
int |
Name |
Description |
Type |
Default |
|---|---|---|---|
gyroRatio |
Gyromagnetic ratio |
float |
|
damping |
Damping factor |
float |
Example:
{
"type": "MagneticBrownian",
"parameters":{
"integrationSteps": 10000,
"timeStep": 0.001,
"viscosity": 0.01,
"gyroRatio": 2.8,
"damping": 0.1,
"msat": 1.0,
"magneticIntegrationAlgorithm": "algorithmName"
}
}
NVE
- author
Pablo Ibáñez-Freire
NVE integrator for simulations maintaining a constant number of particles, volume, and energy. This integrator is suitable for closed-system simulations where energy exchange with the environment is not considered.
Name |
Description |
Type |
Default |
|---|---|---|---|
integrationSteps |
Number of integration steps |
int |
|
timeStep |
Time step of the integrator |
float |
Example:
{
"type": "NVE",
"parameters":{
"integrationSteps": 10000,
"timeStep": 0.001
}
}