|
||||
File indexing completed on 2025-01-18 09:28:08
0001 // -*- C++ -*- 0002 // AID-GENERATED 0003 // ========================================================================= 0004 // This class was generated by AID - Abstract Interface Definition 0005 // DO NOT MODIFY, but use the org.freehep.aid.Aid utility to regenerate it. 0006 // ========================================================================= 0007 #ifndef AIDA_IFITPARAMETERSETTINGS_H 0008 #define AIDA_IFITPARAMETERSETTINGS_H 1 0009 0010 // This file is part of the AIDA library 0011 // Copyright (C) 2002 by the AIDA team. All rights reserved. 0012 // This library is free software and under the terms of the 0013 // GNU Library General Public License described in the LGPL.txt 0014 0015 #include <string> 0016 0017 namespace AIDA { 0018 0019 /** @interface 0020 * 0021 * Fitting-specific settings applied to a parameter of the fitted function. 0022 * 0023 * @author The AIDA team (http://aida.freehep.org/) 0024 * 0025 */ 0026 0027 class IFitParameterSettings { 0028 0029 public: 0030 /// Destructor. 0031 virtual ~IFitParameterSettings() { /* nop */; } 0032 0033 /// Name of the parameter to which settings apply. 0034 virtual std::string name() const = 0; 0035 0036 /// Step size allows to control the "sensitivity" of the change of the parameter 0037 /// when fitters looks for the optimal parameter value. Default is 1.0. 0038 virtual double stepSize() const = 0; 0039 0040 /// Bounds. 0041 virtual double upperBound() const = 0; 0042 0043 virtual double lowerBound() const = 0; 0044 0045 /// Shortcut for lowerBound() == -INF && upperBound() == +INF. 0046 virtual bool isBound() const = 0; 0047 0048 /// Value of the parameter cannot change if isFixed() == true. 0049 /// Parameter can be fixed independently from setting the bounds. 0050 virtual bool isFixed() const = 0; 0051 0052 /// Set the step size for the fitter. 0053 virtual void setStepSize(double step) = 0; 0054 0055 /// Set bounds. If bounds not set, then default bound is (-INF,+INF). 0056 virtual void setBounds(double lo, double up) = 0; 0057 0058 /// Shortcut for setBounds(-INF,+INF). 0059 virtual void removeBounds() = 0; 0060 0061 /// Fix/unfix parameter. 0062 virtual void setFixed(bool isFixed) = 0; 0063 0064 /** 0065 * Set the lower bound. When this method is 0066 * invoked any previous bound is reset. The new bounds 0067 * are (lowerBound, +INF). 0068 * @param lowerBound The lower bound. 0069 * 0070 */ 0071 virtual void setLowerBound(double lowerBound) = 0; 0072 0073 /** 0074 * Set the upper bound. When this method is 0075 * invoked any previous bound is reset. The new bounds 0076 * are (-INF, upperBound). 0077 * @param upperBound The upper bound. 0078 * 0079 */ 0080 virtual void setUpperBound(double upperBound) = 0; 0081 0082 /// Reset all settings to the default values (remove bounds, step size = 1.0, no fix). 0083 virtual void reset() = 0; 0084 }; // class 0085 } // namespace AIDA 0086 #endif /* ifndef AIDA_IFITPARAMETERSETTINGS_H */
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |