Mantid
Loading...
Searching...
No Matches
PRConjugateGradientMinimizer.h
Go to the documentation of this file.
1// Mantid Repository : https://github.com/mantidproject/mantid
2//
3// Copyright © 2009 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//----------------------------------------------------------------------
10// Includes
11//----------------------------------------------------------------------
12#include "MantidCurveFitting/DllConfig.h"
14
15namespace Mantid {
16namespace CurveFitting {
17namespace FuncMinimisers {
25class MANTID_CURVEFITTING_DLL PRConjugateGradientMinimizer : public DerivMinimizer {
26public:
30 std::string name() const override { return "Conjugate gradient (Polak-Ribiere imp.)"; }
31
32protected:
34 const gsl_multimin_fdfminimizer_type *getGSLMinimizerType() override;
35};
36
37} // namespace FuncMinimisers
38} // namespace CurveFitting
39} // namespace Mantid
A wrapper around the GSL functions implementing a minimizer using derivatives.
Implementing Polak-Ribiere flavour of the conjugate gradient algorithm by wrapping the IFuncMinimizer...
Helper class which provides the Collimation Length for SANS instruments.