Clipper
Public Member Functions
clipper::ResolutionFn_nonlinear Class Reference

2nd order resolution function evaluator More...

#include <resol_fn.h>

Inheritance diagram for clipper::ResolutionFn_nonlinear:
clipper::ResolutionFn

List of all members.

Public Member Functions

 ResolutionFn_nonlinear (const HKL_info &hkl_info, const BasisFn_base &basisfn, const TargetFn_base &targetfn, const std::vector< ftype > &params, const ftype damp=0.0, const bool debug=false)
 constructor: need reflections, basis fn and target fn.

Detailed Description

2nd order resolution function evaluator

This is an automatic evaluator for arbitrary functions of HKL, most commonly used for evaluating a function of resolution (such a mean F^2 or sigmaa), although more general tasks including local scaling of reflections and anisotropic functions can also be handled. This form is for target functions which approach zero quadratically, e.g. least-squares targets.

Note:
This version implements a minimiser which uses both Newton-Raphson and gradient steps depending on the situation. It can be used for non-quadratic targets or non-linear basis functions.

To evaluate a resolution function, this class must be provided with two objects:


Constructor & Destructor Documentation

clipper::ResolutionFn_nonlinear::ResolutionFn_nonlinear ( const HKL_info hkl_info,
const BasisFn_base basisfn,
const TargetFn_base targetfn,
const std::vector< ftype > &  params,
const ftype  damp = 0.0,
const bool  debug = false 
)

constructor: need reflections, basis fn and target fn.

The constructor performs the full minimisation calculation.

Parameters:
hkl_infoHKL_info object which provides the reflection list.
basisfnThe basis function used to describe the desired property.
targetfnThe target function to be minimised.
damp_If > 0.0, shifts are fdamped during early cycles to help convergence with difficult bases/target conbinations

References clipper::ResolutionFn::basisfn_, clipper::ResolutionFn::calc_derivs(), clipper::HKL_info::cell(), clipper::ResolutionFn::cell_, clipper::HKL_class::epsilonc(), clipper::ResolutionFn::f(), clipper::HKL_info::first(), clipper::HKL_info::HKL_reference_index::hkl_class(), clipper::ResolutionFn::hkl_info_, clipper::Util::is_nan(), clipper::HKL_info::HKL_reference_index::last(), clipper::HKL_info::HKL_reference_index::next(), clipper::BasisFn_base::num_params(), clipper::ResolutionFn::params(), clipper::ResolutionFn::params_, clipper::TargetFn_base::rderiv(), clipper::Matrix< T >::solve(), and clipper::ResolutionFn::targetfn_.


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