ptolemy.backtrack.automatic.ptolemy.actor.lib
Class GradientAdaptiveLattice
java.lang.Object
ptolemy.kernel.util.NamedObj
ptolemy.kernel.InstantiableNamedObj
ptolemy.kernel.Entity
ptolemy.kernel.ComponentEntity
ptolemy.actor.AtomicActor
ptolemy.actor.TypedAtomicActor
ptolemy.actor.lib.Transformer
ptolemy.actor.lib.Lattice
ptolemy.backtrack.automatic.ptolemy.actor.lib.GradientAdaptiveLattice
- All Implemented Interfaces:
- java.io.Serializable, java.lang.Cloneable, Actor, Executable, FiringsRecordable, Initializable, TypedActor, Rollbackable, Changeable, Debuggable, DebugListener, Derivable, Instantiable, ModelErrorHandler, MoMLExportable, Moveable, Nameable
public class GradientAdaptiveLattice
- extends Lattice
- implements Rollbackable
An adaptive FIR filter with a lattice structure. This class extends
the base class to dynamically adapt the reflection coefficients to
minimize the power of the output sequence. The output reflection
coefficients are guaranteed to lie between -1.0 and 1.0, ensuring that the
resulting filter is a minimum phase linear predictor. The
reflectionCoefficients parameter is interpreted as the initial
coefficients.
- Since:
- Ptolemy II 4.0
- Version:
- $Id: GradientAdaptiveLattice.java 57040 2010-01-27 20:52:32Z cxh $
- Author:
- Steve Neuendorffer
- See Also:
- Serialized Form
- Accepted Rating:
- Proposed Rating:
Fields inherited from class ptolemy.kernel.util.NamedObj |
_changeListeners, _changeLock, _changeRequests, _debugging, _debugListeners, _elementName, _isPersistent, _verbose, _workspace, ATTRIBUTES, CLASSNAME, COMPLETE, CONTENTS, DEEP, FULLNAME, LINKS |
Methods inherited from class ptolemy.actor.AtomicActor |
_actorFiring, _actorFiring, addActorFiringListener, addInitializable, connectionsChanged, createReceivers, declareDelayDependency, getCausalityInterface, getDirector, getExecutiveDirector, getManager, inputPortList, isFireFunctional, isStrict, iterate, newReceiver, outputPortList, preinitialize, pruneDependencies, recordFiring, removeActorFiringListener, removeDependency, removeInitializable, setContainer, stop, stopFire, terminate, wrapup |
Methods inherited from class ptolemy.kernel.ComponentEntity |
_adjustDeferrals, _checkContainer, _getContainedObject, _propagateExistence, getContainer, instantiate, isAtomic, isOpaque, moveDown, moveToFirst, moveToIndex, moveToLast, moveUp, propagateExistence, setName |
Methods inherited from class ptolemy.kernel.Entity |
_description, _exportMoMLContents, _removePort, _validateSettables, connectedPortList, connectedPorts, containedObjectsIterator, getAttribute, getPort, getPorts, linkedRelationList, linkedRelations, portList, removeAllPorts, setClassDefinition, uniqueName |
Methods inherited from class ptolemy.kernel.util.NamedObj |
_addAttribute, _adjustOverride, _attachText, _cloneFixAttributeFields, _debug, _debug, _debug, _debug, _debug, _getIndentPrefix, _isMoMLSuppressed, _markContentsDerived, _propagateValue, _recordDecoratedAttributes, _removeAttribute, _splitName, _stripNumericSuffix, addChangeListener, addDebugListener, attributeList, attributeList, deepContains, depthInHierarchy, description, description, event, executeChangeRequests, exportMoML, exportMoML, exportMoML, exportMoML, exportMoMLPlain, getAttribute, getAttributes, getChangeListeners, getClassName, getDecoratorAttribute, getDecoratorAttributes, getDerivedLevel, getDerivedList, getDisplayName, getFullName, getModelErrorHandler, getName, getName, getSource, handleModelError, isDeferringChangeRequests, isOverridden, isPersistent, lazyContainedObjectsIterator, message, propagateValue, propagateValues, removeChangeListener, removeDebugListener, requestChange, setClassName, setDeferringChangeRequests, setDerivedLevel, setDisplayName, setModelErrorHandler, setPersistent, setSource, sortContainedObjects, toplevel, toString, validateSettables, workspace |
Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
$CHECKPOINT
protected transient Checkpoint $CHECKPOINT
adaptedReflectionCoefficients
public TypedIOPort adaptedReflectionCoefficients
- The output port that produces the current reflection
coefficients. The port is of type array of double.
timeConstant
public Parameter timeConstant
- The time constant of the filter, which determines how fast the
filter adapts.
The default value of this parameter is 1.0.
_alpha
private double _alpha
_oneMinusAlpha
private double _oneMinusAlpha
_estimatedErrorPower
private double[] _estimatedErrorPower
_estimatedErrorPowerCache
private double[] _estimatedErrorPowerCache
_reflectionCoefficientsCache
private double[] _reflectionCoefficientsCache
$RECORD$$CHECKPOINT
protected transient CheckpointRecord $RECORD$$CHECKPOINT
$RECORD$_alpha
private transient FieldRecord $RECORD$_alpha
$RECORD$_oneMinusAlpha
private transient FieldRecord $RECORD$_oneMinusAlpha
$RECORD$_estimatedErrorPower
private transient FieldRecord $RECORD$_estimatedErrorPower
$RECORD$_estimatedErrorPowerCache
private transient FieldRecord $RECORD$_estimatedErrorPowerCache
$RECORD$_reflectionCoefficientsCache
private transient FieldRecord $RECORD$_reflectionCoefficientsCache
$RECORDS
private transient FieldRecord[] $RECORDS
GradientAdaptiveLattice
public GradientAdaptiveLattice(CompositeEntity container,
java.lang.String name)
throws NameDuplicationException,
IllegalActionException
- Construct an actor with the given container and name.
- Parameters:
container
- The container.name
- The name of this actor.
- Throws:
IllegalActionException
- If the actor cannot be contained
by the proposed container.
NameDuplicationException
- If the container already has an
actor with this name.
attributeChanged
public void attributeChanged(Attribute attribute)
throws IllegalActionException
- Handle parameter change events on the
order and timeConstant parameters. The
filter state vector is reinitialized to zero state.
- Overrides:
attributeChanged
in class Lattice
- Parameters:
attribute
- The attribute that changed.
- Throws:
IllegalActionException
- If this method is invoked
with an unrecognized parameter.
clone
public java.lang.Object clone(Workspace workspace)
throws java.lang.CloneNotSupportedException
- Clone the actor into the specified workspace. This calls the
base class and then sets the type constraints.
- Overrides:
clone
in class Lattice
- Parameters:
workspace
- The workspace for the new object.
- Returns:
- A new actor.
- Throws:
java.lang.CloneNotSupportedException
- If a derived class has
an attribute that cannot be cloned.- See Also:
NamedObj.exportMoML(Writer, int, String)
,
NamedObj.setDeferringChangeRequests(boolean)
initialize
public void initialize()
throws IllegalActionException
- Initialize the state of the filter.
- Specified by:
initialize
in interface Initializable
- Overrides:
initialize
in class Lattice
- Throws:
IllegalActionException
- If a derived class throws it.
postfire
public boolean postfire()
throws IllegalActionException
- Update the filter state.
- Specified by:
postfire
in interface Executable
- Overrides:
postfire
in class Lattice
- Returns:
- False if the number of iterations matches the number requested.
- Throws:
IllegalActionException
- If the base class throws it.
_doFilter
protected void _doFilter()
throws IllegalActionException
- Description copied from class:
Lattice
- Compute the filter, updating the caches, based on the current
values.
- Overrides:
_doFilter
in class Lattice
- Throws:
IllegalActionException
- Not thrown in this base class.
_reallocate
protected void _reallocate()
- Description copied from class:
Lattice
- Reallocate the internal arrays.
- Overrides:
_reallocate
in class Lattice
$ASSIGN$_alpha
private final double $ASSIGN$_alpha(double newValue)
$ASSIGN$_oneMinusAlpha
private final double $ASSIGN$_oneMinusAlpha(double newValue)
$ASSIGN$_estimatedErrorPower
private final double[] $ASSIGN$_estimatedErrorPower(double[] newValue)
$ASSIGN$_estimatedErrorPower
private final double $ASSIGN$_estimatedErrorPower(int index0,
double newValue)
$BACKUP$_estimatedErrorPower
private final double[] $BACKUP$_estimatedErrorPower()
$ASSIGN$_estimatedErrorPowerCache
private final double[] $ASSIGN$_estimatedErrorPowerCache(double[] newValue)
$ASSIGN$_estimatedErrorPowerCache
private final double $ASSIGN$_estimatedErrorPowerCache(int index0,
double newValue)
$BACKUP$_estimatedErrorPowerCache
private final double[] $BACKUP$_estimatedErrorPowerCache()
$ASSIGN$_reflectionCoefficientsCache
private final double[] $ASSIGN$_reflectionCoefficientsCache(double[] newValue)
$ASSIGN$_reflectionCoefficientsCache
private final double $ASSIGN$_reflectionCoefficientsCache(int index0,
double newValue)
$BACKUP$_reflectionCoefficientsCache
private final double[] $BACKUP$_reflectionCoefficientsCache()
$COMMIT
public void $COMMIT(long timestamp)
- Description copied from interface:
Rollbackable
- Commit changes up to the given timestamp, but not including changes
made at timestamp and afterward.
- Specified by:
$COMMIT
in interface Rollbackable
- Parameters:
timestamp
- The timestamp.
$RESTORE
public void $RESTORE(long timestamp,
boolean trim)
- Description copied from interface:
Rollbackable
- Restore a previous state to all the private fields of this rollbackable
object.
- Specified by:
$RESTORE
in interface Rollbackable
- Parameters:
timestamp
- The timestamp taken at the time when the previous
state was recorded.trim
- Whether to delete the records used for the rollback.- See Also:
Checkpoint.rollback(long, boolean)
$GET$CHECKPOINT
public final Checkpoint $GET$CHECKPOINT()
- Description copied from interface:
Rollbackable
- Get the checkpoint object that monitors this rollbackable object.
- Specified by:
$GET$CHECKPOINT
in interface Rollbackable
- Returns:
- The checkpoint object.
$SET$CHECKPOINT
public final java.lang.Object $SET$CHECKPOINT(Checkpoint checkpoint)
- Description copied from interface:
Rollbackable
- Set the checkpoint object of this rollbackable object. A merge
operation is performed on the current checkpoint object and the new
checkpoint object, so that the two checkpoint objects monitor the same
set of objects when this function returns.
- Specified by:
$SET$CHECKPOINT
in interface Rollbackable
- Parameters:
checkpoint
- The new checkpoint object.
- Returns:
- This rollbackable object itself.
- See Also:
Checkpoint.setCheckpoint(Checkpoint)