Package pulse.problem.laser
Class PulseTemporalShape
- java.lang.Object
-
- pulse.util.UpwardsNavigable
-
- pulse.util.Group
-
- pulse.util.Accessible
-
- pulse.util.PropertyHolder
-
- pulse.problem.laser.PulseTemporalShape
-
- All Implemented Interfaces:
Serializable,Descriptive,Reflexive
- Direct Known Subclasses:
ExponentiallyModifiedGaussian,NumericPulse,RectangularPulse,TrapezoidalPulse
public abstract class PulseTemporalShape extends PropertyHolder implements Reflexive
An abstract time-dependent pulse shape. Declares the abstract method to calculate the laser power function at a given moment of time. This generally utilises a discrete pulse width. By default, uses a midpoint-rule numeric integrator to calculate the pulse integral.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description PulseTemporalShape()PulseTemporalShape(PulseTemporalShape another)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract PulseTemporalShapecopy()abstract doubleevaluateAt(double time)This evaluates the dimensionless, discretised pulse function on agridneeded to evaluate the heat source in the difference scheme.StringgetPrefix()doublegetPulseWidth()abstract intgetRequiredDiscretisation()voidinit(ExperimentalData data, DiscretePulse pulse)Stores the pulse width frompulseand initialises area integration.voidsetPulseWidth(double width)StringtoString()-
Methods inherited from class pulse.util.PropertyHolder
addListener, areDetailsHidden, data, describe, firePropertyChanged, getDescriptor, getListeners, ignoreSiblings, initListeners, isListedNumericType, isListedParameter, listedKeywords, listedTypes, numericData, parameterListChanged, removeListeners, setPrefix, updateProperties, updateProperty
-
Methods inherited from class pulse.util.Accessible
accessibleChildren, genericProperties, genericProperty, numericProperties, numericProperty, property, set, update, update
-
Methods inherited from class pulse.util.UpwardsNavigable
addHierarchyListener, getHierarchyListeners, getParent, identify, removeHierarchyListener, removeHierarchyListeners, setParent, specificAncestor, tellParent
-
-
-
-
Constructor Detail
-
PulseTemporalShape
public PulseTemporalShape()
-
PulseTemporalShape
public PulseTemporalShape(PulseTemporalShape another)
-
-
Method Detail
-
evaluateAt
public abstract double evaluateAt(double time)
This evaluates the dimensionless, discretised pulse function on agridneeded to evaluate the heat source in the difference scheme.- Parameters:
time- the dimensionless time (a multiplier oftau), at which calculation should be performed- Returns:
- a double value, representing the pulse function at
time
-
init
public void init(ExperimentalData data, DiscretePulse pulse)
Stores the pulse width frompulseand initialises area integration.- Parameters:
data-pulse- the discrete pulse containing the pulse width
-
copy
public abstract PulseTemporalShape copy()
-
getPrefix
public String getPrefix()
- Overrides:
getPrefixin classPropertyHolder
-
getPulseWidth
public double getPulseWidth()
-
setPulseWidth
public void setPulseWidth(double width)
-
getRequiredDiscretisation
public abstract int getRequiredDiscretisation()
-
-