faunus
Protected Member Functions | Protected Attributes | List of all members
Faunus::move::ChainRotationMove Class Reference

An abstract class that rotates a selected segment of a polymer chain in the given simulation box. More...

#include <chainmove.h>

Inheritance diagram for Faunus::move::ChainRotationMove:
Inheritance graph
[legend]
Collaboration diagram for Faunus::move::ChainRotationMove:
Collaboration graph
[legend]

Protected Member Functions

 ChainRotationMove (Space &spc, const std::string &name, const std::string &cite)
 
void _from_json (const json &j) override
 Extra info for report if needed.
 
- Protected Member Functions inherited from Faunus::move::ChainRotationMoveBase
 ChainRotationMoveBase (Space &spc, const std::string &name, const std::string &cite)
 
void _to_json (json &j) const override
 Extra info for report if needed.
 

Protected Attributes

Space::GroupVector::iterator molecule_iter
 
std::array< size_t, 2 > axis_ndx
 Indices of atoms in the spc.p vector that mark the origin and the direction of the axis of rotation. More...
 
std::vector< size_t > segment_ndx
 Indices of atoms in the spc.p vector that shall be rotated.
 
- Protected Attributes inherited from Faunus::move::ChainRotationMoveBase
std::string molname
 
size_t molid
 
double dprot
 maximal angle of rotation, ±0.5*dprot
 
double sqdispl
 center-of-mass displacement squared
 
Average< double > msqdispl
 center-of-mass mean squared displacement
 
bool permit_move = true
 
bool allow_small_box = false
 
int small_box_encountered = 0
 number of skipped moves due to too small container
 
- Protected Attributes inherited from Faunus::move::Move
const std::string name
 Name of move.
 
Spacespc
 Space to operate on.
 
int repeat = 1
 
unsigned long number_of_attempted_moves = 0
 Counter for total number of move attempts.
 

Additional Inherited Members

- Public Member Functions inherited from Faunus::move::ChainRotationMoveBase
double bias (Change &, double uold, double unew) override
 Extra energy not captured by the Hamiltonian. More...
 
- Public Member Functions inherited from Faunus::move::Move
void from_json (const json &j)
 
void to_json (json &j) const
 JSON report w. statistics, output etc.
 
void move (Change &change)
 Perform move and modify given change object.
 
void accept (Change &change)
 
void reject (Change &change)
 
void setRepeat (int repeat)
 
 Move (Space &spc, std::string_view name, std::string_view cite)
 
bool isStochastic () const
 True if move should be called stochastically.
 
const std::string & getName () const
 
- Static Public Attributes inherited from Faunus::move::Move
static Random slump
 Shared for all moves.
 

Detailed Description

An abstract class that rotates a selected segment of a polymer chain in the given simulation box.

Member Data Documentation

◆ axis_ndx

std::array<size_t, 2> Faunus::move::ChainRotationMove::axis_ndx
protected

Indices of atoms in the spc.p vector that mark the origin and the direction of the axis of rotation.


The documentation for this class was generated from the following files: