PROGRESS  master
prg_xlbo_mod Module Reference

A module to perform XLBO integration. More...

Data Types

type  xlbo_type
 General xlbo solver type. More...
 

Functions/Subroutines

subroutine, public prg_parse_xlbo (xlbo, filename)
 The parser for XLBO parser. More...
 
subroutine, public prg_xlbo_nint (charges, n, n_0, n_1, n_2, n_3, n_4, n_5, mdstep, xl)
 This routine integrates the dynamical variable "n". More...
 
subroutine, public prg_xlbo_nint_kernel (charges, n, n_0, n_1, n_2, n_3, n_4, n_5, mdstep, kernel, xl)
 This routine integrates the dynamical variable "n". More...
 
subroutine, public prg_xlbo_nint_kerneltimesres (charges, n, n_0, n_1, n_2, n_3, n_4, n_5, mdstep, kernelTimesRes, xl)
 This routine integrates the dynamical variable "n". More...
 
subroutine, public prg_xlbo_fcoulupdate (fcoul, charges, n)
 Adjust forces for the linearized XLBOMD functional. More...
 

Variables

integer, parameter dp = kind(1.0d0)
 
real(dp), parameter c0 = -6.0_dp
 Coefficients for modified Verlet integration. More...
 
real(dp), parameter c1 = 14.0_dp
 
real(dp), parameter c2 = -8.0_dp
 
real(dp), parameter c3 = -3.0_dp
 
real(dp), parameter c4 = 4.0_dp
 
real(dp), parameter c5 = -1.0_dp
 
real(dp), parameter kappa = 1.82_dp
 Coefficients for modified Verlet integration. More...
 
real(dp), parameter alpha = 0.018_dp
 
real(dp), parameter cc = 0.9_dp
 

Detailed Description

A module to perform XLBO integration.

This module will be used to compute integrate the dynamical variable "n" in xlbo.

Function/Subroutine Documentation

◆ prg_parse_xlbo()

subroutine, public prg_xlbo_mod::prg_parse_xlbo ( type(xlbo_type), intent(inout)  xlbo,
character(len=*)  filename 
)

The parser for XLBO parser.

Definition at line 62 of file prg_xlbo_mod.F90.

◆ prg_xlbo_fcoulupdate()

subroutine, public prg_xlbo_mod::prg_xlbo_fcoulupdate ( real(dp), dimension(:,:), intent(inout)  fcoul,
real(dp), dimension(:), intent(inout)  charges,
real(dp), dimension(:), intent(inout)  n 
)

Adjust forces for the linearized XLBOMD functional.

Parameters
charges

Definition at line 252 of file prg_xlbo_mod.F90.

◆ prg_xlbo_nint()

subroutine, public prg_xlbo_mod::prg_xlbo_nint ( real(dp), dimension(:), intent(in), allocatable  charges,
real(dp), dimension(:), intent(inout), allocatable  n,
real(dp), dimension(:), intent(inout), allocatable  n_0,
real(dp), dimension(:), intent(inout), allocatable  n_1,
real(dp), dimension(:), intent(inout), allocatable  n_2,
real(dp), dimension(:), intent(inout), allocatable  n_3,
real(dp), dimension(:), intent(inout), allocatable  n_4,
real(dp), dimension(:), intent(inout), allocatable  n_5,
integer, intent(in)  mdstep,
type(xlbo_type), intent(in)  xl 
)

This routine integrates the dynamical variable "n".

Parameters
charges

Definition at line 118 of file prg_xlbo_mod.F90.

◆ prg_xlbo_nint_kernel()

subroutine, public prg_xlbo_mod::prg_xlbo_nint_kernel ( real(dp), dimension(:), intent(in), allocatable  charges,
real(dp), dimension(:), intent(inout), allocatable  n,
real(dp), dimension(:), intent(inout), allocatable  n_0,
real(dp), dimension(:), intent(inout), allocatable  n_1,
real(dp), dimension(:), intent(inout), allocatable  n_2,
real(dp), dimension(:), intent(inout), allocatable  n_3,
real(dp), dimension(:), intent(inout), allocatable  n_4,
real(dp), dimension(:), intent(inout), allocatable  n_5,
integer, intent(in)  mdstep,
real(dp), dimension(:,:), intent(in), allocatable  kernel,
type(xlbo_type), intent(in)  xl 
)

This routine integrates the dynamical variable "n".

Parameters
charges

Definition at line 158 of file prg_xlbo_mod.F90.

◆ prg_xlbo_nint_kerneltimesres()

subroutine, public prg_xlbo_mod::prg_xlbo_nint_kerneltimesres ( real(dp), dimension(:), intent(in), allocatable  charges,
real(dp), dimension(:), intent(inout), allocatable  n,
real(dp), dimension(:), intent(inout), allocatable  n_0,
real(dp), dimension(:), intent(inout), allocatable  n_1,
real(dp), dimension(:), intent(inout), allocatable  n_2,
real(dp), dimension(:), intent(inout), allocatable  n_3,
real(dp), dimension(:), intent(inout), allocatable  n_4,
real(dp), dimension(:), intent(inout), allocatable  n_5,
integer, intent(in)  mdstep,
real(dp), dimension(:), intent(in), allocatable  kernelTimesRes,
type(xlbo_type), intent(in)  xl 
)

This routine integrates the dynamical variable "n".

In this case we are passing a premultiplied ressidue x kernel tis is done to avoid rank-specific multiplication within this routine.

Parameters
charges

Definition at line 210 of file prg_xlbo_mod.F90.

Variable Documentation

◆ alpha

real(dp), parameter prg_xlbo_mod::alpha = 0.018_dp
private

Definition at line 28 of file prg_xlbo_mod.F90.

◆ c0

real(dp), parameter prg_xlbo_mod::c0 = -6.0_dp
private

Coefficients for modified Verlet integration.

Definition at line 19 of file prg_xlbo_mod.F90.

◆ c1

real(dp), parameter prg_xlbo_mod::c1 = 14.0_dp
private

Definition at line 20 of file prg_xlbo_mod.F90.

◆ c2

real(dp), parameter prg_xlbo_mod::c2 = -8.0_dp
private

Definition at line 21 of file prg_xlbo_mod.F90.

◆ c3

real(dp), parameter prg_xlbo_mod::c3 = -3.0_dp
private

Definition at line 22 of file prg_xlbo_mod.F90.

◆ c4

real(dp), parameter prg_xlbo_mod::c4 = 4.0_dp
private

Definition at line 23 of file prg_xlbo_mod.F90.

◆ c5

real(dp), parameter prg_xlbo_mod::c5 = -1.0_dp
private

Definition at line 24 of file prg_xlbo_mod.F90.

◆ cc

real(dp), parameter prg_xlbo_mod::cc = 0.9_dp
private

Definition at line 29 of file prg_xlbo_mod.F90.

◆ dp

integer, parameter prg_xlbo_mod::dp = kind(1.0d0)
private

Definition at line 16 of file prg_xlbo_mod.F90.

◆ kappa

real(dp), parameter prg_xlbo_mod::kappa = 1.82_dp
private

Coefficients for modified Verlet integration.

Definition at line 27 of file prg_xlbo_mod.F90.