Main Page Namespace List Class Hierarchy Alphabetical List Compound List File List Namespace Members Compound Members File Members Related Pages

colvar::dihedral Class Reference

\brief Colvar component: dihedral between the centers of mass of four groups (colvarvalue::type_scalar type, range [-PI:PI]). More...

#include <colvarcomp.h>

Inheritance diagram for colvar::dihedral:

List of all members.

Public Methods

dihedral (std::string const &conf)
Initialize by parsing the configuration. More...

dihedral (cvm::atom const &a1, cvm::atom const &a2, cvm::atom const &a3, cvm::atom const &a4)
\brief Initialize the four groups after four atoms. More...

dihedral ()
virtual ~dihedral ()
virtual void calc_value ()
\brief Calculate the variable. More...

virtual void calc_gradients ()
\brief Calculate the atomic gradients, to be reused later in order to apply forces. More...

virtual void calc_force_invgrads ()
\brief Calculate the total force from the system using the inverse atomic gradients. More...

virtual void calc_Jacobian_derivative ()
\brief Calculate the divergence of the inverse atomic gradients. More...

virtual void apply_force (colvarvalue const &force)
\brief Apply the collective variable force, by communicating the atomic forces to the simulation program (Note: the ft member is not altered by this function) Note: multiple calls to this function within the same simulation step will add the forces altogether
Parameters:
cvforce The collective variable force, usually coming from the biases and eventually manipulated by the parent colvar object.
More...

virtual cvm::real dist2 (colvarvalue const &x1, colvarvalue const &x2) const
Redefined to handle the 2*PI periodicity. More...

virtual colvarvalue dist2_lgrad (colvarvalue const &x1, colvarvalue const &x2) const
Redefined to handle the 2*PI periodicity. More...

virtual colvarvalue dist2_rgrad (colvarvalue const &x1, colvarvalue const &x2) const
Redefined to handle the 2*PI periodicity. More...

virtual void wrap (colvarvalue &x_unwrapped) const
Redefined to handle the 2*PI periodicity. More...


Protected Attributes

cvm::atom_group * group1
Atom group. More...

cvm::atom_group * group2
Atom group. More...

cvm::atom_group * group3
Atom group. More...

cvm::atom_group * group4
Atom group. More...

cvm::rvector r12
Inter site vectors. More...

cvm::rvector r23
Inter site vectors. More...

cvm::rvector r34
Inter site vectors. More...

bool b_1site_force
\brief Compute total force on first site only to avoid unwanted coupling to other colvars (see e.g. Ciccotti et al., 2005). More...


Detailed Description

\brief Colvar component: dihedral between the centers of mass of four groups (colvarvalue::type_scalar type, range [-PI:PI]).

Definition at line 844 of file colvarcomp.h.


Constructor & Destructor Documentation

colvar::dihedral::dihedral ( std::string const & conf )

Initialize by parsing the configuration.

colvar::dihedral::dihedral ( cvm::atom const & a1,
cvm::atom const & a2,
cvm::atom const & a3,
cvm::atom const & a4
)

\brief Initialize the four groups after four atoms.

Definition at line 267 of file colvarcomp_angles.C.

References colvarmodule::atom_group, b_1site_force, colvardeps::enable, colvardeps::f_cvc_com_based, colvardeps::f_cvc_inv_gradient, colvardeps::f_cvc_Jacobian, group1, group2, group3, group4, colvar::cvc::init_as_periodic_angle, colvardeps::provide, colvar::cvc::register_atom_group, and colvar::cvc::set_function_type.

colvar::dihedral::dihedral ( )

Definition at line 291 of file colvarcomp_angles.C.

References colvardeps::enable, colvardeps::f_cvc_inv_gradient, colvardeps::f_cvc_Jacobian, colvardeps::f_cvc_periodic, colvar::cvc::init_as_periodic_angle, colvardeps::provide, and colvar::cvc::set_function_type.

virtual colvar::dihedral::~dihedral ( ) [inline, virtual]

Definition at line 871 of file colvarcomp.h.


Member Function Documentation

void colvar::dihedral::apply_force ( colvarvalue const & force ) [virtual]

\brief Apply the collective variable force, by communicating the atomic forces to the simulation program (Note: the ft member is not altered by this function) Note: multiple calls to this function within the same simulation step will add the forces altogether

Parameters:
cvforce The collective variable force, usually coming from the biases and eventually manipulated by the parent colvar object.

Implements colvar::cvc.

Definition at line 442 of file colvarcomp_angles.C.

References force, group1, group2, group3, group4, and colvarvalue::real_value.

void colvar::dihedral::calc_force_invgrads ( ) [virtual]

\brief Calculate the total force from the system using the inverse atomic gradients.

Reimplemented from colvar::cvc.

Definition at line 404 of file colvarcomp_angles.C.

References colvardeps::f_cvc_one_site_total_force, colvar::cvc::ft, group1, group4, colvardeps::is_enabled, PI, r12, r23, r34, colvarvalue::real_value, and colvarmodule::sqrt.

void colvar::dihedral::calc_gradients ( ) [virtual]

\brief Calculate the atomic gradients, to be reused later in order to apply forces.

Reimplemented from colvar::cvc.

Definition at line 330 of file colvarcomp_angles.C.

References colvarmodule::fabs, group1, group2, group3, group4, PI, r12, r23, and r34.

void colvar::dihedral::calc_Jacobian_derivative ( ) [virtual]

\brief Calculate the divergence of the inverse atomic gradients.

Reimplemented from colvar::cvc.

Definition at line 435 of file colvarcomp_angles.C.

References colvar::cvc::jd.

void colvar::dihedral::calc_value ( ) [virtual]

\brief Calculate the variable.

Implements colvar::cvc.

Definition at line 301 of file colvarcomp_angles.C.

References colvarmodule::atan2, colvardeps::f_cvc_pbc_minimum_image, group1, group2, group3, group4, colvardeps::is_enabled, PI, colvarmodule::position_distance, r12, r23, r34, colvarvalue::real_value, wrap, and colvar::cvc::x.

cvm::real colvar::dihedral::dist2 ( colvarvalue const & x1,
colvarvalue const & x2
) const [virtual]

Redefined to handle the 2*PI periodicity.

Reimplemented from colvar::cvc.

Definition at line 460 of file colvarcomp_angles.C.

References colvarvalue::real_value.

colvarvalue colvar::dihedral::dist2_lgrad ( colvarvalue const & x1,
colvarvalue const & x2
) const [virtual]

Redefined to handle the 2*PI periodicity.

Reimplemented from colvar::cvc.

Definition at line 469 of file colvarcomp_angles.C.

References colvarvalue::real_value.

colvarvalue colvar::dihedral::dist2_rgrad ( colvarvalue const & x1,
colvarvalue const & x2
) const [virtual]

Redefined to handle the 2*PI periodicity.

Reimplemented from colvar::cvc.

Definition at line 478 of file colvarcomp_angles.C.

References colvarvalue::real_value.

void colvar::dihedral::wrap ( colvarvalue & x_unwrapped ) const [virtual]

Redefined to handle the 2*PI periodicity.

Reimplemented from colvar::cvc.

Definition at line 487 of file colvarcomp_angles.C.

References colvarvalue::real_value, and colvar::cvc::wrap_center.

Referenced by calc_value.


Member Data Documentation

bool colvar::dihedral::b_1site_force [protected]

\brief Compute total force on first site only to avoid unwanted coupling to other colvars (see e.g. Ciccotti et al., 2005).

Definition at line 862 of file colvarcomp.h.

Referenced by dihedral.

cvm::atom_group* colvar::dihedral::group1 [protected]

Atom group.

Definition at line 850 of file colvarcomp.h.

Referenced by apply_force, calc_force_invgrads, calc_gradients, calc_value, and dihedral.

cvm::atom_group* colvar::dihedral::group2 [protected]

Atom group.

Definition at line 852 of file colvarcomp.h.

Referenced by apply_force, calc_gradients, calc_value, and dihedral.

cvm::atom_group* colvar::dihedral::group3 [protected]

Atom group.

Definition at line 854 of file colvarcomp.h.

Referenced by apply_force, calc_gradients, calc_value, and dihedral.

cvm::atom_group* colvar::dihedral::group4 [protected]

Atom group.

Definition at line 856 of file colvarcomp.h.

Referenced by apply_force, calc_force_invgrads, calc_gradients, calc_value, and dihedral.

cvm::rvector colvar::dihedral::r12 [protected]

Inter site vectors.

Definition at line 858 of file colvarcomp.h.

Referenced by calc_force_invgrads, calc_gradients, and calc_value.

cvm::rvector colvar::dihedral::r23 [protected]

Inter site vectors.

Definition at line 858 of file colvarcomp.h.

Referenced by calc_force_invgrads, calc_gradients, and calc_value.

cvm::rvector colvar::dihedral::r34 [protected]

Inter site vectors.

Definition at line 858 of file colvarcomp.h.

Referenced by calc_force_invgrads, calc_gradients, and calc_value.


The documentation for this class was generated from the following files:
Generated on Mon Nov 17 02:48:17 2025 for VMD (current) by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002

AltStyle によって変換されたページ (->オリジナル) /