hep.aida
Interface IModelFunction
-
- All Superinterfaces:
- IFunction
- All Known Subinterfaces:
- IDevModelFunction
- All Known Implementing Classes:
- AbstractDevModelFunction, AbstractIFunction, BaseModelFunction, BreitWigner, Exponent, Exponential, ExponentModelFunction, FNon, Function, Gauss, Gaussian, IFunctionWrapper, JELBaseModelFunction, Landau, NegativeBinomial, NonParametricFunction, NonParametricPdf, P0, P1, P2, P3, P4, P5, P6, Poisson, PolynomialModelFunction, Pow, PowModified, Product, Step, Sum, UserFunction
public interface IModelFunction extends IFunction
Interface of model function for fitting (for advanced users). OPEN QUESTIONS: How to treat normalization at user level? Two possibilities: - we have "Gauss" and "NormalizedGauss", the first one user cannot use for ML fit - we have only one "Gauss" function, but it's smart and when normalized, gets rid of one of its parameters Normalization range might be set directly on the function by the user? Now we set it in the data pipe, Victor thinks that it is not very clear and should be on the function ;)
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method and Description voidexcludeNormalizationAll()Set empty range in all axes.voidincludeNormalizationAll()Set full range in all axes.booleanisNormalized()Return true if normalization is currently switched on.IRangeSetnormalizationRange(int iAxis)Set the normalization range from -inf to +inf in the i-th axis (dimension).voidnormalize(boolean on)Normalize by internally adjusting some of the parameters.double[]parameterGradient(double[] x)Compute gradient with respect to parameters.booleanprovidesNormalization()booleanprovidesParameterGradient()Return true if provides parameter gradient.-
Methods inherited from interface hep.aida.IFunction
annotation, codeletString, dimension, gradient, indexOfParameter, isEqual, normalizationParameter, numberOfParameters, parameter, parameterNames, parameters, providesGradient, setParameter, setParameters, setTitle, title, value, variableName, variableNames
-
-
-
-
Method Detail
-
providesNormalization
boolean providesNormalization()
-
normalize
void normalize(boolean on)
Normalize by internally adjusting some of the parameters. When normalization is on then integral of the function in the normalization range equals to 1.
-
isNormalized
boolean isNormalized()
Return true if normalization is currently switched on.
-
parameterGradient
double[] parameterGradient(double[] x)
Compute gradient with respect to parameters.
-
providesParameterGradient
boolean providesParameterGradient()
Return true if provides parameter gradient.
-
normalizationRange
IRangeSet normalizationRange(int iAxis)
Set the normalization range from -inf to +inf in the i-th axis (dimension). Full range is the default if not set otherwise. It is still possible to evaluate function outside of the normalization range. PENDING: no methods to retrieve current range!
-
includeNormalizationAll
void includeNormalizationAll()
Set full range in all axes.
-
excludeNormalizationAll
void excludeNormalizationAll()
Set empty range in all axes.
-
-
DMelt 3.0 © DataMelt by jWork.ORG