stella.xml
Class BeforeAfterMerit
java.lang.Object
util.PropertyContainer
util.PropertyResources
util.PropertyBundles
stella.AbstractMerit
stella.xml.BeforeAfterMerit
- All Implemented Interfaces:
- Serializable, Cloneable, EndpointDefining, Meriting, Initializable, LocalizedSupplying, PropertySupplying, ResourceSupplying
public class BeforeAfterMerit
- extends AbstractMerit
- implements EndpointDefining
A class defining a time-slot merit that allows observation either after
or before a time defined with KEY_T0. If the KEY_WIDTH
is positive, the merit blocks observation before t0, if it
is negative, the merit blocks observation after t0.
The absoulte value
of KEY_WIDTH defines the sharpness of the merit as in
ts(t) = ln(±(t-t0)/width+1)
If the logarithm evaluates to a negative value, zero is returned. For a
positive KEY_WIDTH, i.e. for a before merit, this class also has
the power of defining an end-point, i.e. this class implements
EndpointDefining.
- See Also:
- Serialized Form
|
Field Summary |
private static String |
DEFTIME
Default time parameter name. |
private static double |
DEFWIDTH
Default value for the width, one hour. |
static String |
KEY_T0
The key linked to the impact of the airmass merit. |
static String |
KEY_TIME
The key pointing to the name of the time parameter. |
static String |
KEY_WIDTH
The key linked to the maximum number of successful observations. |
|
Constructor Summary |
BeforeAfterMerit(Map prop)
Constructs a at-time merit centered at the current time and with a
default width of DEFWIDTH. |
| Methods inherited from class util.PropertyResources |
createFrom, createFrom, createFrom, getApplet, getAsResources, getLocalClassLoader, getPropertiesToKey, getPropertiesToKey, getResource, getResourceAsStream, getResourceFromKey, getResources, init, keyCreate, keyCreate, reload, setApplet |
| Methods inherited from class util.PropertyContainer |
augment, augment, augment, defaultBoolean, defaultChar, defaultDouble, defaultFloat, defaultInt, defaultLong, defaultObject, defaultObject, defaultProperties, defaultProperty, getAsBoolean, getAsChar, getAsDouble, getAsEnums, getAsFloat, getAsInt, getAsList, getAsLong, getAsMap, getAsMap, getAsObject, getAsObject, getProperties, getProperty, has, isNew, parseObject, reload, removeProperty, rescanned, setObject, setProperties, setProperty, stringProperties, toString |
| Methods inherited from interface util.PropertySupplying |
defaultBoolean, defaultChar, defaultDouble, defaultFloat, defaultInt, defaultLong, defaultObject, defaultObject, defaultProperties, defaultProperty, getAsBoolean, getAsChar, getAsDouble, getAsFloat, getAsInt, getAsList, getAsLong, getAsMap, getAsObject, getAsObject, getProperties, getProperty, has, parseObject, removeProperty, setObject, setProperty, stringProperties |
KEY_T0
public static final String KEY_T0
- The key linked to the impact of the airmass merit.
- See Also:
- Constant Field Values
KEY_WIDTH
public static final String KEY_WIDTH
- The key linked to the maximum number of successful observations.
- See Also:
- Constant Field Values
KEY_TIME
public static final String KEY_TIME
- The key pointing to the name of the time parameter.
- See Also:
- Constant Field Values
DEFWIDTH
private static final double DEFWIDTH
- Default value for the width, one hour.
- See Also:
- Constant Field Values
DEFTIME
private static final String DEFTIME
- Default time parameter name.
- See Also:
- Constant Field Values
BeforeAfterMerit
public BeforeAfterMerit(Map prop)
- Constructs a at-time merit centered at the current time and with a
default width of
DEFWIDTH. Proper creation should be
done using the
AbstractMerit.createMerit(java.util.Map)
method. This create method also takes care of proper parameter
overloading.
getMerit
public double getMerit(ParameterClustering set,
TargetDefinition target,
Collection ignore,
long within)
- Calculates the actual time slot merit. The current time is substracted
from
KEY_T0, and dived through the KEY_WIDTH.
The remaining
value is used in a logarithm.
- Specified by:
getMerit in interface Meriting
- Parameters:
set - Current observing conditions.target - The actual target.ignore - The list of targetes relevant to the actual target.within - The relevant time span in ms.
isCompleted
public boolean isCompleted(ParameterClustering set,
TargetDefinition target)
- Test if this target is completed. Only in the 'after' mode, a definitie
decision is possible: if the current time is past the zero-time,
this method returns true.
- Specified by:
isCompleted in interface EndpointDefining