Only one single object of this module should be initialized. More...
Data Types | |
type | type_force_energy |
Store the grid number to use for computing interaction and theirs types. More... | |
Functions/Subroutines | |
subroutine | init_image_charge (this, tab_protein) |
Initialize array for image charge. Couyld be used for metal desolv as well. Make separate for the moment, allocate different array, but could be combined to init_force_energy img_chg can be found by tab_protein, important for sdamm to optimize to integrate init init_force, to test with sdamm. More... | |
subroutine | init_force_energy (this, tab_protein, type_calc, imetal) |
Initilaize the oobject newer version, include asymetry, so need tab_protein to be general ( and sdamm case ) with sdamm need to modify shift, inter-type interactions, need type calculation. More... | |
subroutine | init_analytic (this, tab_protein, cut_off, surf_cut, h_anal, surf_prefct, opt_ionic, gouy_chapman) |
Initialize specificaly analytical interactions. . More... | |
subroutine | delete_force_energy (this) |
Initialization of one analytic of sogrid done in this subfunction, in module so_grid. More... | |
subroutine | print_info_param_fe (this) |
Print info about global settings. Would need a check for sdamm, array_grid_calc not used . More... | |
subroutine | force_atom_uhbd (x, f, tgrid) |
Compute the derivative of the energy of position x. Will be used to compute the force on an atom at position x Pass an instance of type_grid as parameter, so it can apply to any grid This version can deal with both uhbd and dtgrid. Overhead estimated to 10 %. More... | |
subroutine | potential_atom_uhbd (x, U, tgrid) |
Compute the energy of position x of grid tgrid. More... | |
Variables | |
integer, parameter | symetric = 0 |
enumeration type for symetry of asymetry of interactions c2g1 : charge of protein2 in grid of solute 1 lennard-jones with surface is c1g2 More... | |
integer, parameter | c2g1 = -1 |
integer, parameter | c1g2 = 1 |
Only one single object of this module should be initialized.
subroutine mod_force_energy::delete_force_energy | ( | type ( type_force_energy ) | this | ) |
Initialization of one analytic of sogrid done in this subfunction, in module so_grid.
Deallocate all arrays.
this | : instance of this class |
subroutine mod_force_energy::force_atom_uhbd | ( | real ( kind=8 ), dimension(3), intent(in) | x, |
real ( kind=8 ), dimension(3), intent(out) | f, | ||
type (type_grid ), intent(in) | tgrid | ||
) |
Compute the derivative of the energy of position x.
Will be used to compute the force on an atom at position x
Pass an instance of type_grid as parameter, so it can apply to any grid
This version can deal with both uhbd and dtgrid. Overhead estimated to 10 %.
x | : position of the atom |
f | : return force ( rather derivative of the energy ) computed at x |
tgrid | : instance of the grid used for computation |
voxel | : voxel list containing 8 potential values |
subroutine mod_force_energy::init_analytic | ( | type ( type_force_energy ) | this, |
type ( array_protein_type ), intent(in) | tab_protein, | ||
real (kind=4), intent(in) | cut_off, | ||
real (kind=4), intent(in) | surf_cut, | ||
real (kind=4), intent(in) | h_anal, | ||
real (kind=8), intent(in) | surf_prefct, | ||
real (kind=4), intent(in), optional | opt_ionic, | ||
logical, optional, value | gouy_chapman | ||
) |
Initialize specificaly analytical interactions.
.
this | : instance of this class |
tab_protein | : instance of mod_array_protein |
cut_off | : indicates the maximum distance, half the box for sdamm, c-surface for sda_2proteins |
surf_cut | : For a charged surface, its cut off is c-surf for 2prot, z extent for sdamm |
h_anal | : bin size of analytical arrays |
opt_ionic | : optional, used only for the ionic strength at the moment |
subroutine mod_force_energy::init_force_energy | ( | type ( type_force_energy ) | this, |
type ( array_protein_type ), intent(in) | tab_protein, | ||
type ( type_calculation ), intent(in) | type_calc, | ||
logical, intent(in) | imetal | ||
) |
Initilaize the oobject newer version, include asymetry, so need tab_protein to be general ( and sdamm case ) with sdamm need to modify shift, inter-type interactions, need type calculation.
this | : instance of this class |
tab_protein | : instance of mod_array_protein |
type_calc | : instance of type_calc |
imetal | : logical set metal desolvation |
subroutine mod_force_energy::init_image_charge | ( | type ( type_force_energy ) | this, |
type ( array_protein_type ), intent(in) | tab_protein | ||
) |
Initialize array for image charge.
Couyld be used for metal desolv as well.
Make separate for the moment, allocate different array, but could be combined to init_force_energy img_chg can be found by tab_protein, important for sdamm to optimize to integrate init init_force, to test with sdamm.
this | : instance of this class |
tab_protein | : instance of mod_array_protein |
subroutine mod_force_energy::potential_atom_uhbd | ( | real ( kind=8 ), dimension(3), intent(in) | x, |
real ( kind=8 ), intent(out) | U, | ||
type (type_grid ), intent(in) | tgrid | ||
) |
Compute the energy of position x of grid tgrid.
This version can deal with both uhbd and dtgrid
x | : position of the atom |
U | : return the computed potential |
tgrid | : instance of the grid to use for the computation |
subroutine mod_force_energy::print_info_param_fe | ( | type ( type_force_energy ) | this | ) |
Print info about global settings.
Would need a check for sdamm, array_grid_calc not used
.
this | : instance of type_force_energy |
integer, parameter mod_force_energy::c1g2 = 1 |
integer, parameter mod_force_energy::c2g1 = -1 |
integer, parameter mod_force_energy::symetric = 0 |
enumeration type for symetry of asymetry of interactions c2g1 : charge of protein2 in grid of solute 1 lennard-jones with surface is c1g2