|
RMPCDMD
|
Block correlators. More...
Data Types | |
| type | axial_correlator_t |
| type | correlator_t |
Functions/Subroutines | |
| subroutine | init (this, l, b, dim, n) |
| Initialize a correlator_t variable. More... | |
| subroutine | add (this, i, block_operation, x, x_n, xvec, xvec_n) |
| Add a data element to the correlator. More... | |
| subroutine, public | correlate_block_dot (s, c, idx, l, n, dim) |
| Correlation routine for dot product. More... | |
| subroutine, public | correlate_block_distsq (s, c, idx, l, n, dim) |
| Correlation routine for squared distance. More... | |
| integer function, public | get_n_blocks (l, n_blocks_max, n_samples) |
| Return the number of blocks needed for a trajectory of length n_samples. More... | |
| subroutine | axial_init (this, block_length, n_samples, n_samples_fast) |
| Initialize an axial correlator. More... | |
| subroutine | axial_add (this, i, com_pos, unit_r) |
| Add a data element to an axial correlator (slow time scale) More... | |
| subroutine | axial_add_fast (this, i, v_com, unit_r) |
| Add a data element to an axial correlator (fast time scale) More... | |
| subroutine | axial_write (this, correlator_group, sampling, dt, fast_sampling, fast_dt) |
| Write all correlators from an axial correlator variable to a HDF5 group. More... | |
| subroutine, public | write_correlator_block (loc, name, c, step, time) |
| Write the data from a correlator_t variable to a HDF5 group. More... | |
Block correlators.
This modules defines a derived type for storing logarithmic block correlators. The subroutines correlate_block_distsq and correlate_block_dot are correlators for the square distance and the dot product, respectively.
The derived type axial_correlator_t groups correlators for axisymmetric bodies such as the dimer.
See http://pdebuyl.be/blog/2016/correlators.html for information
|
private |
Add a data element to the correlator.
Definition at line 90 of file correlator.f90.
|
private |
Add a data element to an axial correlator (slow time scale)
Definition at line 217 of file correlator.f90.
|
private |
Add a data element to an axial correlator (fast time scale)
Definition at line 228 of file correlator.f90.
|
private |
Initialize an axial correlator.
Definition at line 199 of file correlator.f90.
|
private |
Write all correlators from an axial correlator variable to a HDF5 group.
Definition at line 244 of file correlator.f90.
| subroutine, public correlator::correlate_block_distsq | ( | double precision, dimension(:,:,:), intent(in) | s, |
| double precision, dimension(:,:,:), intent(inout) | c, | ||
| integer, intent(in) | idx, | ||
| integer, intent(in) | l, | ||
| integer, intent(in) | n, | ||
| integer, intent(in) | dim | ||
| ) |
Correlation routine for squared distance.
Definition at line 168 of file correlator.f90.
| subroutine, public correlator::correlate_block_dot | ( | double precision, dimension(:,:,:), intent(in) | s, |
| double precision, dimension(:,:,:), intent(inout) | c, | ||
| integer, intent(in) | idx, | ||
| integer, intent(in) | l, | ||
| integer, intent(in) | n, | ||
| integer, intent(in) | dim | ||
| ) |
Correlation routine for dot product.
Definition at line 148 of file correlator.f90.
| integer function, public correlator::get_n_blocks | ( | integer, intent(in) | l, |
| integer, intent(in) | n_blocks_max, | ||
| integer, intent(in) | n_samples | ||
| ) |
Return the number of blocks needed for a trajectory of length n_samples.
Definition at line 188 of file correlator.f90.
|
private |
Initialize a correlator_t variable.
Definition at line 58 of file correlator.f90.
| subroutine, public correlator::write_correlator_block | ( | integer(hid_t), intent(inout) | loc, |
| character(len=*), intent(in) | name, | ||
| type(correlator_t), intent(in) | c, | ||
| integer, intent(in) | step, | ||
| double precision, intent(in) | time | ||
| ) |
Write the data from a correlator_t variable to a HDF5 group.
Definition at line 267 of file correlator.f90.
1.8.13