bond Class Reference

Residual and gradient calculations for harmonically restrained bonds. More...

#include <bond.h>

Inheritance diagram for bond:

bond_params

List of all members.

Public Types

typedef scitbx::vec3< double > vec3
 Convenience typedef.

Public Member Functions

 bond ()
 Default constructor. Some data members are not initialized!
 bond (af::tiny< scitbx::vec3< double >, 2 > const &sites_, double distance_ideal_, double weight_, double slack_=0, double limit_=-1.0, bool top_out_=false)
 Constructor.
 bond (af::const_ref< scitbx::vec3< double > > const &sites_cart, bond_simple_proxy const &proxy)
 Coordinates are copied from sites_cart according to proxy.i_seqs, parameters are copied from proxy.
 bond (uctbx::unit_cell const &unit_cell, af::const_ref< scitbx::vec3< double > > const &sites_cart, bond_simple_proxy const &proxy)
 Coordinates are copied from sites_cart according to proxy.i_seqs, parameters are copied from proxy.
 bond (uctbx::unit_cell const &unit_cell, af::const_ref< scitbx::vec3< double > > const &sites_cart, bond_sym_proxy const &proxy)
 Coordinates are copied from sites_cart according to proxy.i_seqs and proxy.rt_mx_ji, parameters are copied from proxy.
 bond (af::const_ref< scitbx::vec3< double > > const &sites_cart, direct_space_asu::asu_mappings<> const &asu_mappings, bond_asu_proxy const &proxy)
 Coordinates are copied from sites_cart according to proxy.i_seq, proxy.j_seq, parameters are copied from proxy.
 bond (asu_cache<> const &cache, bond_asu_proxy const &proxy)
 For fast processing. Not available in Python.
double residual () const
 weight * delta_slack**2.
scitbx::vec3< double > gradient_0 (double epsilon=1.e-100) const
 Gradient of R = w * sum(deltas) with respect to sites[0].
af::tiny< scitbx::vec3< double >, 2 > gradients () const
 Gradient of R = w * deltas^2 with respect to each site.
void add_gradients (af::ref< scitbx::vec3< double > > const &gradient_array, bond_simple_proxy::i_seqs_type const &i_seqs) const
 Support for bond_residual_sum.
void add_gradients (uctbx::unit_cell const &unit_cell, af::ref< scitbx::vec3< double > > const &gradient_array, bond_simple_proxy const &proxy) const
 Support for bond_residual_sum.
void add_gradients (af::ref< scitbx::vec3< double > > const &gradient_array, direct_space_asu::asu_mappings<> const &asu_mappings, asu_mapping_index_pair const &pair) const
 Support for bond_residual_sum.
void add_gradients (asu_cache<> &cache, asu_mapping_index_pair const &pair) const
 Support for bond_residual_sum.
void linearise (uctbx::unit_cell const &unit_cell, cctbx::restraints::linearised_eqns_of_restraint< double > &linearised_eqns, cctbx::xray::parameter_map< cctbx::xray::scatterer< double > > const &parameter_map, bond_simple_proxy const &proxy) const

Public Attributes

double delta
 Difference distance_ideal - distance_model.
double delta_slack
 sign(delta) * max(0, (abs(delta) - slack)).


Detailed Description

Residual and gradient calculations for harmonically restrained bonds.

Member Function Documentation

double residual (  )  const [inline]

weight * delta_slack**2.

See also: Hendrickson, W.A. (1985). Meth. Enzym. 115, 252-270.

References bond::delta_slack, bond_params::limit, bond_params::top_out, and bond_params::weight.

Referenced by cctbx::geometry_restraints::bond_residuals().

scitbx::vec3<double> gradient_0 ( double  epsilon = 1.e-100  )  const [inline]

Gradient of R = w * sum(deltas) with respect to sites[0].

Not available in Python.

References bond::delta_slack, bond_params::limit, bond_params::slack, bond_params::top_out, and bond_params::weight.

Referenced by bond::add_gradients(), and bond::gradients().

void add_gradients ( af::ref< scitbx::vec3< double > > const &  gradient_array,
bond_simple_proxy::i_seqs_type const &  i_seqs 
) const [inline]

Support for bond_residual_sum.

Not available in Python.

References bond::gradient_0().

void add_gradients ( uctbx::unit_cell const &  unit_cell,
af::ref< scitbx::vec3< double > > const &  gradient_array,
bond_simple_proxy const &  proxy 
) const [inline]

void add_gradients ( af::ref< scitbx::vec3< double > > const &  gradient_array,
direct_space_asu::asu_mappings<> const &  asu_mappings,
asu_mapping_index_pair const &  pair 
) const [inline]

void add_gradients ( asu_cache<> &  cache,
asu_mapping_index_pair const &  pair 
) const [inline]


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

Generated on Thu Jun 19 15:34:56 2014 for cctbx by  doxygen 1.5.6