Rosetta
Public Member Functions | Private Member Functions | Private Attributes | List of all members
protocols::helical_bundle::FitSimpleHelixMultiFunc Class Reference

Multifunction class for fitting a simple (straight) helix to the Crick parameters. More...

#include <FitSimpleHelixMultiFunc.hh>

Inheritance diagram for protocols::helical_bundle::FitSimpleHelixMultiFunc:
Inheritance graph
[legend]

Public Member Functions

 ~FitSimpleHelixMultiFunc () override
 Destructor. More...
 
 FitSimpleHelixMultiFunc (core::pose::Pose const &pose, std::string const &atom_name, core::Size const first_res_index, core::Size const res_per_repeat, core::Size const start_index, core::Size const end_index, core::Size const minimization_mode, core::Real const &rms_offset)
 Constructor. More...
 
core::Real operator() (core::optimization::Multivec const &vars) const override
 Calculate function value (rms squared) More...
 
void dfunc (core::optimization::Multivec const &vars, core::optimization::Multivec &dE_dvars) const override
 Calculate function value derivatives. More...
 
void dump (core::optimization::Multivec const &vars, core::optimization::Multivec const &vars2) const override
 Error state reached – derivative does not match gradient. More...
 
- Public Member Functions inherited from core::optimization::Multifunc
 ~Multifunc () override=default
 Destructor. More...
 
virtual bool abort_min (Multivec const &) const
 Christophe added the following to allow premature end of minimization If you want to abort the minimizer under specific circonstances overload this function and return true if you want to stop, false if you want to continue. FOR THE MOMENT, ONLY IN DFPMIN! More...
 

Private Member Functions

void vars_to_params (core::optimization::Multivec const &vars, core::Real &r1, core::Real &omega1, core::Real &dz1, core::Real &delta_omega1, core::Real &delta_z1) const
 Convert the vars Multivec to the Crick parameters. More...
 
void params_derivs_to_vars (core::optimization::Multivec &deriv_vars, core::Real const &dE_dr1, core::Real const &dE_domega1, core::Real const &dE_ddz1, core::Real const &dE_ddelta_omega1, core::Real const &dE_ddelta_z1) const
 Convert the Crick parameter derivatives to the derivative Multivec. More...
 

Private Attributes

core::pose::Pose pose_
 A copy of the pose on which we'll be operating. X,Y,Z coordinates of relevant residues will be extracted from this. More...
 
std::string atom_name_
 The atoms that trace out the helix (e.g. "CA" or "N" or whatever) More...
 
core::Size first_res_index_
 The Rosetta-numbering index of the first residue in the helix that will be fit. More...
 
core::Size residues_per_repeat_
 The number of residues per repeating unit in the helix. More...
 
core::Size start_index_
 The first residue of the helix. More...
 
core::Size end_index_
 The last residue of the helix. More...
 
core::Size minimization_mode_
 The minimization mode. More...
 
core::Real rms_offset_
 The small offset used by the RMS code to avoid zero determinants. More...
 

Additional Inherited Members

- Public Types inherited from core::optimization::Multifunc
typedef utility::VirtualBase parent
 
- Protected Member Functions inherited from core::optimization::Multifunc
 Multifunc ()
 Default constructor. More...
 
 Multifunc (Multifunc const &)
 Copy constructor. More...
 
Multifuncoperator= (Multifunc const &)
 Copy assignment. More...
 

Detailed Description

Multifunction class for fitting a simple (straight) helix to the Crick parameters.

Constructor & Destructor Documentation

◆ ~FitSimpleHelixMultiFunc()

protocols::helical_bundle::FitSimpleHelixMultiFunc::~FitSimpleHelixMultiFunc ( )
overridedefault

Destructor.

◆ FitSimpleHelixMultiFunc()

protocols::helical_bundle::FitSimpleHelixMultiFunc::FitSimpleHelixMultiFunc ( core::pose::Pose const &  pose,
std::string const &  atom_name,
core::Size const  first_res_index,
core::Size const  res_per_repeat,
core::Size const  start_index,
core::Size const  end_index,
core::Size const  minimization_mode,
core::Real const &  rms_offset 
)

Member Function Documentation

◆ dfunc()

void protocols::helical_bundle::FitSimpleHelixMultiFunc::dfunc ( core::optimization::Multivec const &  vars,
core::optimization::Multivec dE_dvars 
) const
overridevirtual

◆ dump()

void protocols::helical_bundle::FitSimpleHelixMultiFunc::dump ( core::optimization::Multivec const &  vars,
core::optimization::Multivec const &  vars2 
) const
overridevirtual

Error state reached – derivative does not match gradient.

Useful debugging code that can be re-enabled by changing the boolean variables at the top of this function.

Reimplemented from core::optimization::Multifunc.

◆ operator()()

Real protocols::helical_bundle::FitSimpleHelixMultiFunc::operator() ( core::optimization::Multivec const &  vars) const
overridevirtual

◆ params_derivs_to_vars()

void protocols::helical_bundle::FitSimpleHelixMultiFunc::params_derivs_to_vars ( core::optimization::Multivec deriv_vars,
core::Real const &  dE_dr1,
core::Real const &  dE_domega1,
core::Real const &  dE_ddz1,
core::Real const &  dE_ddelta_omega1,
core::Real const &  dE_ddelta_z1 
) const
private

Convert the Crick parameter derivatives to the derivative Multivec.

Referenced by dfunc().

◆ vars_to_params()

void protocols::helical_bundle::FitSimpleHelixMultiFunc::vars_to_params ( core::optimization::Multivec const &  vars,
core::Real r1,
core::Real omega1,
core::Real dz1,
core::Real delta_omega1,
core::Real delta_z1 
) const
private

Convert the vars Multivec to the Crick parameters.

References protocols::hybridization::r1.

Referenced by dfunc(), and operator()().

Member Data Documentation

◆ atom_name_

std::string protocols::helical_bundle::FitSimpleHelixMultiFunc::atom_name_
private

The atoms that trace out the helix (e.g. "CA" or "N" or whatever)

Referenced by dfunc(), FitSimpleHelixMultiFunc(), and operator()().

◆ end_index_

core::Size protocols::helical_bundle::FitSimpleHelixMultiFunc::end_index_
private

The last residue of the helix.

Referenced by dfunc(), FitSimpleHelixMultiFunc(), and operator()().

◆ first_res_index_

core::Size protocols::helical_bundle::FitSimpleHelixMultiFunc::first_res_index_
private

The Rosetta-numbering index of the first residue in the helix that will be fit.

Referenced by dfunc(), FitSimpleHelixMultiFunc(), and operator()().

◆ minimization_mode_

core::Size protocols::helical_bundle::FitSimpleHelixMultiFunc::minimization_mode_
private

The minimization mode.

If set to 0, the minimizer fits r1, omega1, and dz1, aligning the generated helix to the input pose at every step. If set to 1, the minimizer fits r1, delta-omega1, and delta-z, with no alignment (i.e. the input pose must already be aligned to an ideal helix).

Referenced by dfunc(), FitSimpleHelixMultiFunc(), and operator()().

◆ pose_

core::pose::Pose protocols::helical_bundle::FitSimpleHelixMultiFunc::pose_
private

A copy of the pose on which we'll be operating. X,Y,Z coordinates of relevant residues will be extracted from this.

Referenced by dfunc(), FitSimpleHelixMultiFunc(), and operator()().

◆ residues_per_repeat_

core::Size protocols::helical_bundle::FitSimpleHelixMultiFunc::residues_per_repeat_
private

The number of residues per repeating unit in the helix.

Referenced by dfunc(), FitSimpleHelixMultiFunc(), and operator()().

◆ rms_offset_

core::Real protocols::helical_bundle::FitSimpleHelixMultiFunc::rms_offset_
private

The small offset used by the RMS code to avoid zero determinants.

This may need to be increased slightly to avoid bad geometry.

Referenced by dfunc().

◆ start_index_

core::Size protocols::helical_bundle::FitSimpleHelixMultiFunc::start_index_
private

The first residue of the helix.

Referenced by dfunc(), FitSimpleHelixMultiFunc(), and operator()().


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