Mantid
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
Mantid::CurveFitting::EigenJacobian Class Reference

Two implementations of Jacobian. More...

#include <EigenJacobian.h>

Inheritance diagram for Mantid::CurveFitting::EigenJacobian:
Mantid::API::Jacobian

Public Member Functions

void addNumberToColumn (const double &value, const size_t &iActiveP) override
 overwrite base method More...
 
 EigenJacobian (const API::IFunction &fun, const size_t ny)
 Constructor. More...
 
double get (size_t iY, size_t iP) override
 overwrite base method More...
 
map_typegetJ ()
 Get the map to the jacobian. More...
 
EigenMatrixmatrix ()
 
void set (size_t iY, size_t iP, double value) override
 overwrite base method More...
 
void zero () override
 overwrite base method More...
 
- Public Member Functions inherited from Mantid::API::Jacobian
virtual double get (size_t iY, size_t iP)=0
 Get the value to a Jacobian matrix element. More...
 
virtual void set (size_t iY, size_t iP, double value)=0
 Set a value to a Jacobian matrix element. More...
 
virtual void zero ()=0
 Zero all matrix elements. More...
 
virtual ~Jacobian ()=default
 Virtual destructor. More...
 

Private Attributes

std::vector< int > m_index
 Maps declared indeces to active. For fixed (tied) parameters holds -1. More...
 
EigenMatrix m_J
 The internal jacobian matrix. More...
 

Detailed Description

Two implementations of Jacobian.

Author
Anders Markvardsen, ISIS, RAL
Date
14/05/2010

Definition at line 23 of file EigenJacobian.h.

Constructor & Destructor Documentation

◆ EigenJacobian()

Mantid::CurveFitting::EigenJacobian::EigenJacobian ( const API::IFunction fun,
const size_t  ny 
)
inline

Constructor.

Parameters
fun:: Function which derivatives to be stored in this Jacobian.
ny:: Size of the fitting data.

Definition at line 33 of file EigenJacobian.h.

References Mantid::API::IFunction::isActive(), m_index, m_J, Mantid::API::IFunction::nParams(), and Mantid::CurveFitting::EigenMatrix::resize().

Member Function Documentation

◆ addNumberToColumn()

void Mantid::CurveFitting::EigenJacobian::addNumberToColumn ( const double &  value,
const size_t &  iActiveP 
)
inlineoverride

overwrite base method

Parameters
value:: the value
iActiveP:: the index of the parameter
Exceptions
runtime_errorThrown if column of Jacobian to add number to does not exist

Definition at line 55 of file EigenJacobian.h.

References m_J, Mantid::CurveFitting::EigenMatrix::mutator(), Mantid::CurveFitting::EigenMatrix::size1(), Mantid::CurveFitting::EigenMatrix::size2(), and value.

◆ get()

double Mantid::CurveFitting::EigenJacobian::get ( size_t  iY,
size_t  iP 
)
inlineoverridevirtual

◆ getJ()

map_type & Mantid::CurveFitting::EigenJacobian::getJ ( )
inline

◆ matrix()

EigenMatrix & Mantid::CurveFitting::EigenJacobian::matrix ( )
inline

Definition at line 45 of file EigenJacobian.h.

References m_J.

◆ set()

void Mantid::CurveFitting::EigenJacobian::set ( size_t  iY,
size_t  iP,
double  value 
)
inlineoverridevirtual

overwrite base method

Implements Mantid::API::Jacobian.

Definition at line 68 of file EigenJacobian.h.

References m_index, m_J, Mantid::CurveFitting::EigenMatrix::set(), and value.

◆ zero()

void Mantid::CurveFitting::EigenJacobian::zero ( )
inlineoverridevirtual

overwrite base method

Implements Mantid::API::Jacobian.

Definition at line 81 of file EigenJacobian.h.

References m_J, and Mantid::CurveFitting::EigenMatrix::zero().

Member Data Documentation

◆ m_index

std::vector<int> Mantid::CurveFitting::EigenJacobian::m_index
private

Maps declared indeces to active. For fixed (tied) parameters holds -1.

Definition at line 27 of file EigenJacobian.h.

Referenced by EigenJacobian(), get(), and set().

◆ m_J

EigenMatrix Mantid::CurveFitting::EigenJacobian::m_J
private

The internal jacobian matrix.

Definition at line 25 of file EigenJacobian.h.

Referenced by addNumberToColumn(), EigenJacobian(), get(), getJ(), matrix(), set(), and zero().


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