Rosetta  2020.37
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | List of all members
core::kinematics::jacobian::SeriesJacobians Class Reference

The SeriesJacobians class is the mid-level of the Jacobian analysis of a protein's kinematics relations. More...

#include <SeriesJacobians.hh>

Inheritance diagram for core::kinematics::jacobian::SeriesJacobians:
Inheritance graph
[legend]

Public Types

typedef utility::vector1
< core::Size
residue_series
 typedef a vector containing a series of residue numbers More...
 

Public Member Functions

 SeriesJacobians ()=delete
 No default constructor because SeriesJacobian is not used on its own, but always as part of a JacobianStructure. More...
 
 SeriesJacobians (core::conformation::Conformation const &conformation, residue_series const &residue_set, core::id::AtomID const &ref_atom)
 Constructor based on a vector containing a series of residues. More...
 
 SeriesJacobians (SeriesJacobians const &src)
 Copy constructor. More...
 
 ~SeriesJacobians () override
 Destructor. More...
 
SeriesJacobiansOP clone () const
 Clone operation: make a copy of this object, and return an owning pointer to the copy. More...
 
utility::vector1< core::Sizeget_residues ()
 get residues that make up the chain More...
 
void update_Jacobian_matrices (core::conformation::Conformation const &conformation)
 update all Jacobian matrices in the chain More...
 

Public Attributes

utility::vector1
< core::kinematics::jacobian::ModuleType1OP
modules_
 vector with Jacobian modules More...
 

Private Member Functions

utility::vector1
< core::kinematics::jacobian::ModuleType1OP
init_modules_amino_acids ()
 function that initializes the low-level Jacobian modules for a series of canonical amino acids More...
 
SeriesJacobianTypeEnum determine_residue_series_type (core::conformation::Conformation const &conformation, residue_series const &res_numbers)
 function to determine the type of the residues that make up the series More...
 

Private Attributes

utility::vector1< core::Sizeresidue_set_
 vector with residue series whose internal DoFs are free to move More...
 
core::Size number_dofs_
 number of dofs of the serial chain More...
 
core::id::AtomID ref_atom_
 reference atom in which all vectors are expressed More...
 

Detailed Description

The SeriesJacobians class is the mid-level of the Jacobian analysis of a protein's kinematics relations.

Author
teunhoevenaars (teunh.nosp@m.oeve.nosp@m.naars.nosp@m.@gma.nosp@m.il.co.nosp@m.m)

Member Typedef Documentation

typedef a vector containing a series of residue numbers

Constructor & Destructor Documentation

core::kinematics::jacobian::SeriesJacobians::SeriesJacobians ( )
delete

No default constructor because SeriesJacobian is not used on its own, but always as part of a JacobianStructure.

core::kinematics::jacobian::SeriesJacobians::SeriesJacobians ( core::conformation::Conformation const &  conformation,
residue_series const &  residue_set,
core::id::AtomID const &  ref_atom 
)

Constructor based on a vector containing a series of residues.

This function constructs SeriesJacobians object based on a series of residues. First it is determined what kind of residues the series consists of, because this determines which Jacobian modules need to be initialized.

Parameters
[in]residue_setthe provided vector with residue numbers needs to be in ascending order, but may contain gaps (e.g. a vector with residues [16, 17, 19, 23, 24, 25, 26] is fine).

References core::kinematics::jacobian::CANONICAL_AA, determine_residue_series_type(), init_modules_amino_acids(), modules_, number_dofs_, ref_atom_, and residue_set_.

core::kinematics::jacobian::SeriesJacobians::SeriesJacobians ( SeriesJacobians const &  src)
default

Copy constructor.

Copy constructor. Keep default unless deep copying is needed (and in that case, consider using DeepCopyOPs.)

core::kinematics::jacobian::SeriesJacobians::~SeriesJacobians ( )
override

Destructor.

Member Function Documentation

SeriesJacobiansOP core::kinematics::jacobian::SeriesJacobians::clone ( ) const

Clone operation: make a copy of this object, and return an owning pointer to the copy.

SeriesJacobianTypeEnum core::kinematics::jacobian::SeriesJacobians::determine_residue_series_type ( core::conformation::Conformation const &  conformation,
residue_series const &  res_numbers 
)
private

function to determine the type of the residues that make up the series

References core::kinematics::jacobian::CANONICAL_AA, core::chemical::ResidueType::is_canonical_aa(), and core::conformation::Conformation::residue_type().

Referenced by SeriesJacobians().

utility::vector1< core::Size > core::kinematics::jacobian::SeriesJacobians::get_residues ( )
inline

get residues that make up the chain

References residue_set_.

utility::vector1< core::kinematics::jacobian::ModuleType1OP > core::kinematics::jacobian::SeriesJacobians::init_modules_amino_acids ( )
private

function that initializes the low-level Jacobian modules for a series of canonical amino acids

For canonical amino acids the internal DoFs are the phi and psi torsion angles. That knowledge is used to initialize the underlying Jacobian modules. First, the total number of DoFs in the residue series is calculated, and subsequently the residue series is complemented with "assisting residues" such that the series can be split up in modules of six torsion axes. This means that some of the torsion axes in the last module are actually constrained, which is captured by the variable dofs_module.

References number_dofs_, ref_atom_, and residue_set_.

Referenced by SeriesJacobians().

void core::kinematics::jacobian::SeriesJacobians::update_Jacobian_matrices ( core::conformation::Conformation const &  conformation)

update all Jacobian matrices in the chain

update all Jacobian matrices in the series chain

References modules_.

Member Data Documentation

utility::vector1< core::kinematics::jacobian::ModuleType1OP > core::kinematics::jacobian::SeriesJacobians::modules_

vector with Jacobian modules

Referenced by SeriesJacobians(), and update_Jacobian_matrices().

core::Size core::kinematics::jacobian::SeriesJacobians::number_dofs_
private

number of dofs of the serial chain

Referenced by init_modules_amino_acids(), and SeriesJacobians().

core::id::AtomID core::kinematics::jacobian::SeriesJacobians::ref_atom_
private

reference atom in which all vectors are expressed

Referenced by init_modules_amino_acids(), and SeriesJacobians().

utility::vector1< core::Size > core::kinematics::jacobian::SeriesJacobians::residue_set_
private

vector with residue series whose internal DoFs are free to move

Referenced by get_residues(), init_modules_amino_acids(), and SeriesJacobians().


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