Implement functions for BD translation and rotation, boost. More...
Functions/Subroutines | |
subroutine | bd_translation (rorig, cell, rtry, geom, force, dmd, rmsnow) |
Return a random vector for translation Used by both sda and sdamm PBC applied by update translation in mod_geometry Thread-safe function. | |
subroutine | bd_translation_surf_hydro (rorig, cell, rtry, geom, force, dmd_xy, dmd_z, rmsnow) |
subroutine | bd_rotation (torque, rot_try, rot_displ, rmsang, prot_id, old_rotation) |
Return a random rotation matrix rot_try Function used by sda_2proteins, which corrects rotation of protein 1 into a translation of protein 2. | |
subroutine | bd_rotation_simple (torque, rot_try, rot_displ, rmsang, old_rotation) |
Return a random rotation matrix rot_try Simple version without correction. Used by sdamm. | |
subroutine | boost (r, geom, dist, rboost) |
Apply boost if too many overlaps, only for sda_2protein. | |
Implement functions for BD translation and rotation, boost.
Copyright (c) 2009, 2010, 2015, 2016, 2019 Heidelberg Institute of Theoretical Studies (HITS, www.h-its.org) Schloss-Wolfsbrunnenweg 35 69118 Heidelberg, Germany
Please send your contact address to get information on updates and new features to "mcmsoft@h-its.org". Questions will be answered as soon as possible.
References: see also http://mcm.h-its.org/sda7/do:c/doc_sda7/references.html:
Brownian dynamics simulation of protein-protein diffusional encounter. (1998) Methods, 14, 329-341.
SDA 7: A modular and parallel implementation of the simulation of diffusional association software. Journal of computational chemistry 36.21 (2015): 1631-1645.
Authors: M.Martinez, N.J.Bruce, J.Romanowska, D.B.Kokh, P.Mereghetti, X. Yu, M. Ozboyaci, M. Reinhardt, P. Friedrich, R.R.Gabdoulline, S.Richter and R.C.Wade
subroutine bd_rotation | ( | real ( kind=8 ), dimension(3), intent(in) | torque, |
real ( kind=8 ), dimension (3,3), intent(out) | rot_try, | ||
real ( kind=8 ) | rot_displ, | ||
real ( kind=8 ) | rmsang, | ||
integer, intent(in) | prot_id, | ||
logical | old_rotation | ||
) |
Return a random rotation matrix rot_try
Function used by sda_2proteins, which corrects rotation of protein 1 into a translation of protein 2.
torque | : torque between proteins |
rot_try | : rotation after BD, matrix form |
rot_displ | : rotational diffusion coefficient |
rmsang | : fluctuation for rotation |
prot_id | : index of the protein, if 1 apply the inverse transformation to protein 2 |
subroutine bd_rotation_simple | ( | real ( kind=8 ), dimension (3), intent(in) | torque, |
real ( kind=8 ), dimension (3,3), intent(out) | rot_try, | ||
real ( kind=8 ) | rot_displ, | ||
real ( kind=8 ) | rmsang, | ||
logical | old_rotation | ||
) |
Return a random rotation matrix rot_try
Simple version without correction. Used by sdamm.
torque | : total torque on one protein |
rot_try | : rotational BD in matrix form |
rot_displ | : rotational coeffcient |
rmsang | : fluctuation for rotation |
subroutine bd_translation | ( | real ( kind=8 ), dimension ( 3 ), intent(in) | rorig, |
integer, dimension ( 3 ), intent(inout) | cell, | ||
real ( kind=8 ), dimension ( 3 ) | rtry, | ||
type ( geometry ), intent(in) | geom, | ||
real ( kind=8 ), dimension ( 3 ), intent(in) | force, | ||
real ( kind=8 ), intent(in) | dmd, | ||
real ( kind=8 ), intent(in) | rmsnow | ||
) |
Return a random vector for translation
Used by both sda and sdamm
PBC applied by update translation in mod_geometry
Thread-safe function.
rorig | : original position |
cell | : |
rtry | : position after translation |
geom | : instance of mod_geometry |
force | : force on the solute |
dmd | : diffusional translation |
rmsnow | : fluctuation term in translation |
subroutine bd_translation_surf_hydro | ( | real ( kind=8 ), dimension ( 3 ), intent(in) | rorig, |
integer, dimension ( 3 ), intent(inout) | cell, | ||
real ( kind=8 ), dimension ( 3 ) | rtry, | ||
type ( geometry ), intent(in) | geom, | ||
real ( kind=8 ), dimension ( 3 ), intent(in) | force, | ||
real ( kind=8 ), intent(in) | dmd_xy, | ||
real ( kind=8 ), intent(in) | dmd_z, | ||
real ( kind=8 ), intent(in) | rmsnow | ||
) |
subroutine boost | ( | real ( kind=8 ), dimension( 3 ) | r, |
type ( geometry ), intent(in) | geom, | ||
real ( kind=4 ), intent(in) | dist, | ||
real ( kind=4 ), intent(in) | rboost | ||
) |
Apply boost if too many overlaps, only for sda_2protein.
r | : relative position, updated buring the boost |
geom | : instance of mod_geometry |
dist | : distance before the boost |
rboost | : boost value |