hep.aida.ref.function
Class FunctionFactory

java.lang.Object
  extended by hep.aida.ref.function.FunctionFactory
All Implemented Interfaces:
IFunctionFactory

public class FunctionFactory
extends Object
implements IFunctionFactory


Constructor Summary
FunctionFactory(ITree tree)
          Create a new FunctionFactory.
 
Method Summary
 IFunctionCatalog catalog()
          get access to the function catalog
 IFunction cloneFunction(String path, IFunction f)
          Create a clone of an existing function.
 IFunction createFunctionByName(String path, String model)
          Create function from a name registered in the catalog.
 IFunction createFunctionFromScript(String path, int dim, String valexpr, String parameters, String description)
          Create function from script.
 IFunction createFunctionFromScript(String path, int dim, String valexpr, String parameters, String description, String gradexpr)
          Create function from script.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FunctionFactory

public FunctionFactory(ITree tree)
Create a new FunctionFactory. This constructor is used by AnalysisFactory, the Master Factory.

Parameters:
tree - the ITree where the histogram is added.
Method Detail

createFunctionByName

public IFunction createFunctionByName(String path,
                                      String model)
Create function from a name registered in the catalog. This is the easiest way to create simple model functions for fitting. Every AIDA compliant implementation should predefine "G", "E", "Pn" (n is an integer, e.e "P0","P5"). Simple operations are permitted, e.g. "G+P2".

Specified by:
createFunctionByName in interface IFunctionFactory
Parameters:
path - The path of the IFunction. The path can either be a relative or full path. ("/folder1/folder2/functionName" and "../folder/functionName" are valid paths). All the directories in the path must exist. The characther `/` cannot be used in names; it is only used to delimit directories within paths.
model - The model of the function to be created.
Returns:
The newly created function.

createFunctionFromScript

public IFunction createFunctionFromScript(String path,
                                          int dim,
                                          String valexpr,
                                          String parameters,
                                          String description)
Create function from script. Script conventions: example: createFunctionFromScript(2, "a*x[0]*x[0] + b*x[1]", "a,b", "this is my function", "2*a*x[0],b")

Specified by:
createFunctionFromScript in interface IFunctionFactory
dim - The dimension of the function, i.e. the number of variables.
valexpr - The expression of the scripted function.
parameters - A comma separeted list of what has to be considered as a parameter in the valexpr expression.
description - The description of the function.
Returns:
The newly created function

createFunctionFromScript

public IFunction createFunctionFromScript(String path,
                                          int dim,
                                          String valexpr,
                                          String parameters,
                                          String description,
                                          String gradexpr)
Create function from script. Script conventions: example: createFunctionFromScript(2, "a*x[0]*x[0] + b*x[1]", "a,b", "this is my function", "2*a*x[0],b")

Specified by:
createFunctionFromScript in interface IFunctionFactory
dim - The dimension of the function, i.e. the number of variables.
valexpr - The expression of the scripted function.
parameters - A comma separeted list of what has to be considered as a parameter in the valexpr expression.
description - The description of the function.
gradexpr - A comma separated list of the expressions for the derivatives of the function with respect to the parameters.
Returns:
The newly created function

cloneFunction

public IFunction cloneFunction(String path,
                               IFunction f)
Description copied from interface: IFunctionFactory
Create a clone of an existing function.

Specified by:
cloneFunction in interface IFunctionFactory
Parameters:
path - The path of the IFunction. The path can either be a relative or full path. ("/folder1/folder2/functionName" and "../folder/functionName" are valid paths). All the directories in the path must exist. The characther `/` cannot be used in names; it is only used to delimit directories within paths.
f - The IFunction to be cloned.
Returns:
The clone of the provided IFunction.

catalog

public IFunctionCatalog catalog()
get access to the function catalog

Specified by:
catalog in interface IFunctionFactory


jHepWork 3.2 © jWork.org