Langevin C++ source

Loading...
Searching...
No Matches
DPLangevin Class Reference

DPLangevin model application of BaseLangevin class integrator. More...

`#include <dplangevin.hpp>`

Inheritance diagram for DPLangevin:

## Public Member Functions
| DPLangevin ()=default
| Constructor assuming default model parameters.
| DPLangevin (Parameters p)
| Constructor when model parameters are passed by the user.
void | set_nonlinear_coefficients (const Coefficients &coefficients)
| Method to set nonlinear coefficients for deterministic integration step.
double | nonlinear_rhs (const int i_cell, const grid_t &density) const
| Method to set nonlinear RHS of Langevin equation for deterministic integration step.
Public Member Functions inherited from BaseLangevin
| BaseLangevin ()=default
| Default constructor.
bool | construct_grid (const Parameters parameters)
| Construct Langevin density field grid of appropriate n-D dimension.
bool | construct_1D_grid (const Parameters parameters)
| Build 1d Langevin density field grid & topology.
bool | construct_2D_grid (const Parameters parameters)
| Build 2d Langevin density field grid & mixed topology.
bool | initialize_grid (const Parameters parameters, rng_t &rng)
| Initial condition for density field: uniformly random.
void | prepare (const Coefficients &coefficients)
| Set initial condition of Langevin density field grid.
bool | check_boundary_conditions (const Parameters parameters)
| Check we have 2N boundary conditions for an N-dimensional grid.
void | apply_boundary_conditions (const Parameters parameters, int i_epoch)
| Set density field values only the grid edges per bc specs.
void | integrate_rungekutta (rng_t &rng)
| Runge-Kutta + stochastic integration + grid update.
void | integrate_euler (rng_t &rng)
| Explicit Euler + stochastic integration + grid update.
double | get_density_grid_value (const int) const
| Return the Langevin density field grid value at a given "node".
double | get_mean_density () const
| Expose mean density.
double | get_poisson_mean () const
| Compute Poisson RNG mean.

## Public Attributes
double | quadratic_coefficient
| Coefficient in nonlinear term -bρ² in DP-Langevin equation.
double | diffusion_coefficient
| Diffusion coefficient D in DP-Langevin equation.

## Additional Inherited Members
Protected Attributes inherited from BaseLangevin
int | n_cells
| Total number of cells in n-D grid.
grid_t | density_grid
| Density field grid.
grid_wiring_t | grid_wiring
| Neighorhood topology for all grid cells.
double | dt
| Time step, i.e, epoch-to-epoch Δt.
double | dx
| Grid spacing, i.e., spacing Δx between cell centers in all directions.
double | mean_density
| Grid-average of density field.
poisson_dist_t | poisson_sampler
| Function generating Poisson variates.
gamma_dist_t | gamma_sampler
| Function generating gamma variates.
gaussian_dist_t | gaussian_sampler
| Function generating normal variates.
double | linear_coefficient
| Dornic method coefficient.
double | noise_coefficient
| Dornic method coefficient.
double | lambda
| Dornic method stochastic-step variable.
double | lambda_on_explcdt
| Dornic method stochastic-step variable.
grid_t | k1_grid
| Runge-Kutta variable grid #1.
grid_t | k2_grid
| Runge-Kutta variable grid #2.
grid_t | k3_grid
| Runge-Kutta variable grid #3.
grid_t | aux_grid1
| Temporary density grid used to perform an integration step.
grid_t | aux_grid2
| Temporary density grid used to perform an integration step.

## Detailed Description

DPLangevin model application of BaseLangevin class integrator.

Definition at line 15 of file dplangevin.hpp.

## Constructor & Destructor Documentation

## ◆ DPLangevin()

DPLangevin::DPLangevin | ( | Parameters | p | ) |

Constructor when model parameters are passed by the user.

Redefinition of BaseLangevin class constructor.

Definition at line 13 of file dplangevin.cpp.

## Member Function Documentation

## ◆ nonlinear_rhs()

double DPLangevin::nonlinear_rhs | ( | const int | i_cell,
|  | const grid_t & | grid ) const
| virtual

Method to set nonlinear RHS of Langevin equation for deterministic integration step.

Method to set nonlinear RHS of DP Langevin equation for deterministic integration step

Reimplemented from BaseLangevin.

Definition at line 39 of file dplangevin.cpp.

## ◆ set_nonlinear_coefficients()

void DPLangevin::set_nonlinear_coefficients | ( | const Coefficients & | coefficients | ) |
| virtual

Method to set nonlinear coefficients for deterministic integration step.

Method to set nonlinear coefficients in DP Langevin equation for deterministic integration step

Reimplemented from BaseLangevin.

Definition at line 31 of file dplangevin.cpp.

## Member Data Documentation

## ◆ diffusion_coefficient

double DPLangevin::diffusion_coefficient

Diffusion coefficient D in DP-Langevin equation.

Definition at line 26 of file dplangevin.hpp.

## ◆ quadratic_coefficient

double DPLangevin::quadratic_coefficient

Coefficient in nonlinear term -bρ² in DP-Langevin equation.

Definition at line 24 of file dplangevin.hpp.

The documentation for this class was generated from the following files:

- cplusplus/dp/dplangevin.hpp
- cplusplus/dp/dplangevin.cpp