Package pulse.problem.statements.model
Class AbsorptionModel
- java.lang.Object
-
- pulse.util.UpwardsNavigable
-
- pulse.util.Group
-
- pulse.util.Accessible
-
- pulse.util.PropertyHolder
-
- pulse.problem.statements.model.AbsorptionModel
-
- All Implemented Interfaces:
Serializable,Optimisable,Descriptive,Reflexive
- Direct Known Subclasses:
BeerLambertAbsorption,Insulator
public abstract class AbsorptionModel extends PropertyHolder implements Reflexive, Optimisable
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbsorptionModel()protectedAbsorptionModel(AbsorptionModel c)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract doubleabsorption(SpectralRange range, double x)voidassign(ParameterVector params)Assigns parameter values of thisOptimisableusing the optimisation vectorparams.abstract AbsorptionModelcopy()NumericPropertygetAbsorptivity(SpectralRange spectrum)NumericPropertygetCombinedAbsorptivity()NumericPropertygetLaserAbsorptivity()NumericPropertygetThermalAbsorptivity()Set<NumericPropertyKeyword>listedKeywords()By default, this will search the children of thisPropertyHolderto collect the types of their listed numeric parameters recursively.voidoptimisationVector(ParameterVector output)Calculates the vector argument defined on to the scalar objective function for thisOptimisable.voidset(NumericPropertyKeyword type, NumericProperty property)An abstract method, which must be overriden to gain access over setting the values of all relevant (selected by the programmer)NumericProperties in subclasses ofAccessible.voidsetAbsorptivity(SpectralRange range, NumericProperty a)voidsetCombinedAbsorptivity(NumericProperty a)voidsetLaserAbsorptivity(NumericProperty a)voidsetThermalAbsorptivity(NumericProperty a)StringtoString()-
Methods inherited from class pulse.util.PropertyHolder
addListener, areDetailsHidden, data, describe, firePropertyChanged, getDescriptor, getListeners, getPrefix, ignoreSiblings, initListeners, isListedNumericType, isListedParameter, listedTypes, numericData, parameterListChanged, removeListeners, setPrefix, updateProperties, updateProperty
-
Methods inherited from class pulse.util.Accessible
accessibleChildren, genericProperties, genericProperty, numericProperties, numericProperty, property, update, update
-
Methods inherited from class pulse.util.UpwardsNavigable
addHierarchyListener, getHierarchyListeners, getParent, identify, removeHierarchyListener, removeHierarchyListeners, setParent, specificAncestor, tellParent
-
-
-
-
Constructor Detail
-
AbsorptionModel
protected AbsorptionModel()
-
AbsorptionModel
protected AbsorptionModel(AbsorptionModel c)
-
-
Method Detail
-
absorption
public abstract double absorption(SpectralRange range, double x)
-
getLaserAbsorptivity
public NumericProperty getLaserAbsorptivity()
-
getThermalAbsorptivity
public NumericProperty getThermalAbsorptivity()
-
getCombinedAbsorptivity
public NumericProperty getCombinedAbsorptivity()
-
getAbsorptivity
public NumericProperty getAbsorptivity(SpectralRange spectrum)
-
setAbsorptivity
public void setAbsorptivity(SpectralRange range, NumericProperty a)
-
setLaserAbsorptivity
public void setLaserAbsorptivity(NumericProperty a)
-
setThermalAbsorptivity
public void setThermalAbsorptivity(NumericProperty a)
-
setCombinedAbsorptivity
public void setCombinedAbsorptivity(NumericProperty a)
-
set
public void set(NumericPropertyKeyword type, NumericProperty property)
Description copied from class:AccessibleAn abstract method, which must be overriden to gain access over setting the values of all relevant (selected by the programmer)
NumericProperties in subclasses ofAccessible. Typically this involves aswitchstatement that goes through the different options for thetypeand invokes differentset(...)methods to update the matchingNumericPropertywithproperty.- Specified by:
setin classAccessible- Parameters:
type- the type, which must be equal by definition toproperty.getType().property- the property, which contains new information.
-
listedKeywords
public Set<NumericPropertyKeyword> listedKeywords()
Description copied from class:PropertyHolderBy default, this will search the children of this
PropertyHolderto collect the types of their listed numeric parameters recursively.- Overrides:
listedKeywordsin classPropertyHolder- Returns:
- a set of
NumericPropertyKeywordinstances, which have been explicitly marked as a listed parameter for thisPropertyHolder.
-
optimisationVector
public void optimisationVector(ParameterVector output)
Description copied from interface:OptimisableCalculates the vector argument defined on to the scalar objective function for thisOptimisable.- Specified by:
optimisationVectorin interfaceOptimisable- Parameters:
output- the output vector where the result will be stored
-
assign
public void assign(ParameterVector params) throws SolverException
Description copied from interface:OptimisableAssigns parameter values of thisOptimisableusing the optimisation vectorparams. Only those parameters will be updated, the types of which are listed as indices in theparamsvector.- Specified by:
assignin interfaceOptimisable- Parameters:
params- the optimisation vector, containing a similar set of parameters to thisProblem- Throws:
SolverException- ifparamscontains invalid parameter values
-
copy
public abstract AbsorptionModel copy()
-
-