Mantid
Loading...
Searching...
No Matches
Namespaces | Functions
TrustRegion.h File Reference
#include "MantidCurveFitting/DllConfig.h"
#include "MantidCurveFitting/EigenFortranDefs.h"
#include "MantidCurveFitting/RalNlls/Workspaces.h"

Go to the source code of this file.

Namespaces

namespace  Mantid
 Helper class which provides the Collimation Length for SANS instruments.
 
namespace  Mantid::CurveFitting
 
namespace  Mantid::CurveFitting::NLLS
 

Functions

void Mantid::CurveFitting::NLLS::allEigSymm (const DoubleFortranMatrix &A, DoubleFortranVector &ew, DoubleFortranMatrix &ev)
 Calculate all the eigenvalues of a symmetric matrix. More...
 
void Mantid::CurveFitting::NLLS::applyScaling (const DoubleFortranMatrix &J, DoubleFortranMatrix &A, DoubleFortranVector &v, DoubleFortranVector &scale, const nlls_options &options)
 Apply_scaling input Jacobian matrix, J ouput scaled Hessisan, H, and J^Tf, v. More...
 
double Mantid::CurveFitting::NLLS::calculateRho (double normf, double normfnew, double md, const nlls_options &options)
 Calculate the quantity 0.5||f||^2 - 0.5||fnew||^2 actual_reduction rho = -----------------------— = ----------------— m_k(0) - m_k(d) predicted_reduction. More...
 
double Mantid::CurveFitting::NLLS::evaluateModel (const DoubleFortranVector &f, const DoubleFortranMatrix &J, const DoubleFortranMatrix &hf, const DoubleFortranVector &d, const nlls_options &options, evaluate_model_work &w)
 Input: f = f(x_k), J = J(x_k), hf = \sum_{i=1}^m f_i(x_k) \nabla^2 f_i(x_k) (or an approx) More...
 
void MANTID_CURVEFITTING_DLL Mantid::CurveFitting::NLLS::getSvdJ (const DoubleFortranMatrix &J, double &s1, double &sn)
 Given an (m x n) matrix J held by columns as a vector, this routine returns the largest and smallest singular values of J. More...
 
void MANTID_CURVEFITTING_DLL Mantid::CurveFitting::NLLS::matmultInner (const DoubleFortranMatrix &J, DoubleFortranMatrix &A)
 Takes an m x n matrix J and forms the n x n matrix A given by A = J' * J. More...
 
void MANTID_CURVEFITTING_DLL Mantid::CurveFitting::NLLS::multJ (const DoubleFortranMatrix &J, const DoubleFortranVector &x, DoubleFortranVector &Jx)
 Multiply a matrix by a vector. More...
 
void MANTID_CURVEFITTING_DLL Mantid::CurveFitting::NLLS::multJt (const DoubleFortranMatrix &J, const DoubleFortranVector &x, DoubleFortranVector &Jtx)
 Multiply a transposed matrix by a vector. More...
 
double MANTID_CURVEFITTING_DLL Mantid::CurveFitting::NLLS::norm2 (const DoubleFortranVector &v)
 Compute the 2-norm of a vector which is a square root of the sum of squares of its elements. More...
 
void Mantid::CurveFitting::NLLS::rankOneUpdate (DoubleFortranMatrix &hf, NLLS_workspace &w)
 Update the Hessian matrix without actually evaluating it (quasi-Newton?) More...
 
void Mantid::CurveFitting::NLLS::testConvergence (double normF, double normJF, double normF0, double normJF0, const nlls_options &options, nlls_inform &inform)
 Test the convergence. More...
 
void Mantid::CurveFitting::NLLS::updateTrustRegionRadius (double &rho, const nlls_options &options, NLLS_workspace &w)
 Update the trust region radius which is hidden in NLLS_workspace w (w.Delta). More...