public abstract class AbstractQFunction extends java.lang.Object implements QFunction
Constructor and Description |
---|
AbstractQFunction() |
Modifier and Type | Method and Description |
---|---|
abstract QDataSet |
exampleInput()
Discover an example input.
|
QDataSet |
exampleOutput()
this simply calls
value( exampleInput() ) . |
abstract QDataSet |
value(QDataSet parm)
Evaluate the function at the location.
|
QDataSet |
values(QDataSet vs)
calculate the values by calling the
value function for
each element of vs . |
public abstract QDataSet value(QDataSet parm)
QFunction
public QDataSet values(QDataSet vs)
value
function for
each element of vs
. A check is made for each call to the value
function that a dataset with the same rank and length is returned.public abstract QDataSet exampleInput()
QFunction
slice(0) is the first argument, slice(1) would be the second, etc. This would be a bundle. Note, for functions that have only one argument, like F(T)→[R,MLT,MLAT], this may return a rank 0 dataset. Clients should pass a dataset to the value method a dataset with the same geometry.QFunction ff= TestFunction(); ff.exampleInput().length(); // how many parameters the function takes QDataSet bds= ff.exampleInput().property( QDataSet.BUNDLE_0 ); bds.slice(0).property( QDataSet.UNITS ) // function should handle convertible units (e.g. TimeAxes Ephemeris). bds.slice(0).property( QDataSet.VALID_MIN ) // absolute limits of domain of the function bds.slice(0).property( QDataSet.VALID_MAX ) bds.slice(0).property( QDataSet.TYPICAL_MIN ) // domain of the function parameter bds.slice(0).property( QDataSet.TYPICAL_MAX ) bds.slice(0).property( QDataSet.CADENCE ) // granularity of the function parameter bds.slice(0).property( QDataSet.LABEL ) // label for the parameter
exampleInput
in interface QFunction
public QDataSet exampleOutput()
value( exampleInput() )
.exampleOutput
in interface QFunction