Mantid
|
Two implementations of Jacobian. More...
#include <EigenJacobian.h>
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_type & | getJ () |
Get the map to the jacobian. More... | |
EigenMatrix & | matrix () |
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... | |
|
inline |
Constructor.
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().
|
inlineoverride |
overwrite base method
value | :: the value |
iActiveP | :: the index of the parameter |
runtime_error | Thrown 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.
|
inlineoverridevirtual |
overwrite base method
Implements Mantid::API::Jacobian.
Definition at line 74 of file EigenJacobian.h.
References Mantid::CurveFitting::EigenMatrix::get(), m_index, and m_J.
Referenced by Mantid::CurveFitting::Algorithms::ProfileChiSquared1D::getCovarianceMatrix().
|
inline |
Get the map to the jacobian.
Definition at line 48 of file EigenJacobian.h.
References m_J, and Mantid::CurveFitting::EigenMatrix::mutator().
Referenced by Mantid::CurveFitting::CostFunctions::CostFuncFitting::calActiveCovarianceMatrix().
|
inline |
Definition at line 45 of file EigenJacobian.h.
References m_J.
|
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.
|
inlineoverridevirtual |
overwrite base method
Implements Mantid::API::Jacobian.
Definition at line 81 of file EigenJacobian.h.
References m_J, and Mantid::CurveFitting::EigenMatrix::zero().
|
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().
|
private |
The internal jacobian matrix.
Definition at line 25 of file EigenJacobian.h.
Referenced by addNumberToColumn(), EigenJacobian(), get(), getJ(), matrix(), set(), and zero().