Mantid
Loading...
Searching...
No Matches
Framework
CurveFitting
inc
MantidCurveFitting
CostFunctions
CostFuncPoisson.h
Go to the documentation of this file.
1
// Mantid Repository : https://github.com/mantidproject/mantid
2
//
3
// Copyright © 2019 ISIS Rutherford Appleton Laboratory UKRI,
4
// NScD Oak Ridge National Laboratory, European Spallation Source,
5
// Institut Laue - Langevin & CSNS, Institute of High Energy Physics, CAS
6
// SPDX - License - Identifier: GPL - 3.0 +
7
#pragma once
8
9
#include "
MantidAPI/FunctionDomain.h
"
10
#include "
MantidAPI/FunctionValues.h
"
11
#include "
MantidCurveFitting/CostFunctions/CostFuncFitting.h
"
12
13
namespace
Mantid
{
14
namespace
CurveFitting {
15
namespace
CostFunctions {
16
20
class
MANTID_CURVEFITTING_DLL
CostFuncPoisson
:
public
CostFuncFitting
{
21
public
:
22
CostFuncPoisson
();
24
virtual
std::string
name
()
const override
{
return
"Poisson"
; }
26
virtual
std::string
shortName
()
const override
{
return
"Poisson"
; };
27
28
void
addVal(
API::FunctionDomain_sptr
domain,
API::FunctionValues_sptr
values)
const override
;
29
void
addValDerivHessian(
API::IFunction_sptr
function,
API::FunctionDomain_sptr
domain,
30
API::FunctionValues_sptr
values,
bool
evalDeriv =
true
,
31
bool
evalHessian =
true
)
const override
;
32
33
private
:
35
void
calculateDerivative(
API::IFunction
&function,
const
API::FunctionDomain
&domain,
36
API::FunctionValues
&values)
const
;
38
void
calculateHessian(
API::IFunction
&function,
const
API::FunctionDomain
&domain,
39
const
API::FunctionValues
&values)
const
;
40
};
41
42
}
// namespace CostFunctions
43
}
// namespace CurveFitting
44
}
// namespace Mantid
CostFuncFitting.h
FunctionDomain.h
FunctionValues.h
Mantid::API::FunctionDomain
Base class that represents the domain of a function.
Definition:
FunctionDomain.h:31
Mantid::API::FunctionValues
A class to store values calculated by a function.
Definition:
FunctionValues.h:25
Mantid::API::IFunction
This is an interface to a fitting function - a semi-abstarct class.
Definition:
IFunction.h:163
Mantid::CurveFitting::CostFunctions::CostFuncFitting
A semi-abstract class for a cost function for fitting functions.
Definition:
CostFuncFitting.h:29
Mantid::CurveFitting::CostFunctions::CostFuncPoisson
CostFuncPoisson : Implements a cost function for fitting applications using a Poisson measure.
Definition:
CostFuncPoisson.h:20
Mantid::CurveFitting::CostFunctions::CostFuncPoisson::name
virtual std::string name() const override
Get name of minimizer.
Definition:
CostFuncPoisson.h:24
Mantid::CurveFitting::CostFunctions::CostFuncPoisson::shortName
virtual std::string shortName() const override
Get short name of minimizer - useful for say labels in guis.
Definition:
CostFuncPoisson.h:26
Mantid::API::FunctionValues_sptr
std::shared_ptr< FunctionValues > FunctionValues_sptr
typedef for a shared pointer
Definition:
FunctionValues.h:108
Mantid::API::IFunction_sptr
std::shared_ptr< IFunction > IFunction_sptr
shared pointer to the function base class
Definition:
IFunction.h:732
Mantid::API::FunctionDomain_sptr
std::shared_ptr< FunctionDomain > FunctionDomain_sptr
typedef for a shared pointer
Definition:
FunctionDomain.h:43
Mantid
Helper class which provides the Collimation Length for SANS instruments.
Definition:
AbsorptionCorrection.h:18
Generated on Tue Jan 3 2023 11:57:26 for Mantid by
1.9.5