Rosetta
Classes | Typedefs | Enumerations | Functions | Variables
core::kinematics::jacobian Namespace Reference

Classes

class  JacobianStructure
 The JacobianStructure class is the upper-level wrapper of the Jacobian analysis of a protein's kinematics relations. More...
 
class  ModuleType1
 The ModuleType1 class covers the Jacobian analysis at the lower-level for type-1 systems, which have internal DoFs that can be organized as three sets of two torsion angles with intersecting axes. More...
 
class  SeriesJacobians
 The SeriesJacobians class is the mid-level of the Jacobian analysis of a protein's kinematics relations. More...
 

Typedefs

using JacobianStructureOP = utility::pointer::shared_ptr< JacobianStructure >
 
using JacobianStructureCOP = utility::pointer::shared_ptr< JacobianStructure const >
 
using ModuleType1OP = utility::pointer::shared_ptr< ModuleType1 >
 
using ModuleType1COP = utility::pointer::shared_ptr< ModuleType1 const >
 
using SeriesJacobiansOP = utility::pointer::shared_ptr< SeriesJacobians >
 
using SeriesJacobiansCOP = utility::pointer::shared_ptr< SeriesJacobians const >
 

Enumerations

enum class  SeriesJacobianTypeEnum { ALPHA_AA = 1 , OTHER = 2 , num_types = OTHER }
 List of supported residue types in the loop that is to be represented by a series Jacobian. More...
 

Functions

static basic::Tracer TR ("core.kinematics.jacobian.util")
 
void weigh_columns_inversely_squared (utility::vector1< numeric::MathVector< core::Real > > &input_cols)
 method that gives weights to different columns (that all represent the same error twist in their respective torsion space), inversely proportional to the norm of the required torsion changes More...
 
void weigh_columns_by_energy_grad (utility::vector1< numeric::MathVector< core::Real > > &input_cols, utility::vector1< numeric::MathVector< core::Real > > const &gradient_cols, core::Real const scaling=0.1)
 method that gives weights to different columns (that all represent the same error twist in their respective torsion space), according to a sigmoid function that gives greatest weight to input_cols alligned with negative gradient_cols. The shape of the sigmoid can be controlled using the variable 'scaling' More...
 
numeric::xyzVector< core::Realproject_ZYX_euler_on_cart (numeric::xyzVector< core::Real > const euler_angles, numeric::xyzVector< core::Real > const euler_error)
 projects intrinsic Euler angles onto extrinsic Euler angles in order XYZ (i.e. projected onto Cartesian unit vectors) More...
 
ModuleType1::Screw calculate_error_twist (core::kinematics::RT const RT_current, core::kinematics::RT const RT_target)
 Extract the error twist (linearized rotations) from the current and target position and orientation (in Euler angles) More...
 

Variables

constexpr core::Real margin_from_zero_in_jacobian_util = 1e-6
 

Typedef Documentation

◆ JacobianStructureCOP

using core::kinematics::jacobian::JacobianStructureCOP = typedef utility::pointer::shared_ptr< JacobianStructure const >

◆ JacobianStructureOP

using core::kinematics::jacobian::JacobianStructureOP = typedef utility::pointer::shared_ptr< JacobianStructure >

◆ ModuleType1COP

using core::kinematics::jacobian::ModuleType1COP = typedef utility::pointer::shared_ptr< ModuleType1 const >

◆ ModuleType1OP

using core::kinematics::jacobian::ModuleType1OP = typedef utility::pointer::shared_ptr< ModuleType1 >

◆ SeriesJacobiansCOP

using core::kinematics::jacobian::SeriesJacobiansCOP = typedef utility::pointer::shared_ptr< SeriesJacobians const >

◆ SeriesJacobiansOP

using core::kinematics::jacobian::SeriesJacobiansOP = typedef utility::pointer::shared_ptr< SeriesJacobians >

Enumeration Type Documentation

◆ SeriesJacobianTypeEnum

List of supported residue types in the loop that is to be represented by a series Jacobian.

Enumerator
ALPHA_AA 
OTHER 
num_types 

Function Documentation

◆ calculate_error_twist()

ModuleType1::Screw core::kinematics::jacobian::calculate_error_twist ( core::kinematics::RT const  RT_current,
core::kinematics::RT const  RT_target 
)

Extract the error twist (linearized rotations) from the current and target position and orientation (in Euler angles)

calculates the error twist between two RT objects, i.e. the linearised dual vector between them

References core::kinematics::RT::get_rotation(), core::kinematics::RT::get_translation(), and project_ZYX_euler_on_cart().

Referenced by protocols::loops::loop_closure::jacobi::JacobiLoopClosureMover::apply().

◆ project_ZYX_euler_on_cart()

numeric::xyzVector<core::Real> core::kinematics::jacobian::project_ZYX_euler_on_cart ( numeric::xyzVector< core::Real > const  euler_angles,
numeric::xyzVector< core::Real > const  euler_error 
)

projects intrinsic Euler angles onto extrinsic Euler angles in order XYZ (i.e. projected onto Cartesian unit vectors)

Referenced by calculate_error_twist().

◆ TR()

static basic::Tracer core::kinematics::jacobian::TR ( "core.kinematics.jacobian.util"  )
static

◆ weigh_columns_by_energy_grad()

void core::kinematics::jacobian::weigh_columns_by_energy_grad ( utility::vector1< numeric::MathVector< core::Real > > &  input_cols,
utility::vector1< numeric::MathVector< core::Real > > const &  gradient_cols,
core::Real const  scaling 
)

method that gives weights to different columns (that all represent the same error twist in their respective torsion space), according to a sigmoid function that gives greatest weight to input_cols alligned with negative gradient_cols. The shape of the sigmoid can be controlled using the variable 'scaling'

References margin_from_zero_in_jacobian_util.

◆ weigh_columns_inversely_squared()

void core::kinematics::jacobian::weigh_columns_inversely_squared ( utility::vector1< numeric::MathVector< core::Real > > &  input_cols)

method that gives weights to different columns (that all represent the same error twist in their respective torsion space), inversely proportional to the norm of the required torsion changes

References margin_from_zero_in_jacobian_util.

Referenced by protocols::loops::loop_closure::jacobi::JacobiLoopClosureMover::apply().

Variable Documentation

◆ margin_from_zero_in_jacobian_util

constexpr core::Real core::kinematics::jacobian::margin_from_zero_in_jacobian_util = 1e-6
constexpr