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.

Required Parameters

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.

Required Parameters

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.

Required Parameters

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.

Required Parameters

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.

Required Parameters

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
  1. 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.

Required Parameters

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

Optional Parameters

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.

Required Parameters

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
        }
}