ptolemy.actor.lib.colt
Class ColtChiSquare
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.Source
ptolemy.actor.lib.RandomSource
ptolemy.actor.lib.colt.ColtRandomSource
ptolemy.actor.lib.colt.ColtChiSquare
- All Implemented Interfaces:
- java.io.Serializable, java.lang.Cloneable, Actor, Executable, FiringsRecordable, Initializable, TypedActor, Changeable, Debuggable, DebugListener, Derivable, Instantiable, ModelErrorHandler, MoMLExportable, Moveable, Nameable
public class ColtChiSquare
- extends ColtRandomSource
Produce a random sequence with a ChiSquare distribution. On each
iteration, a new random number is produced. The output port is of
type DoubleToken. The values that are generated are independent
and identically distributed with the freedom and the standard
deviation given by parameters. In addition, the seed can be
specified as a parameter to control the sequence that is generated.
This actor instantiates a
cern.jet.random.ChiSquare object with
freedom argument set to 1.0.
The Chi Square Distribution is
A special case of the Gamma distribution.
p(x) = (1/g(f/2)) * (x/2)^(f/2-1) * exp(-x/2) with g(a) being the gamma function and f being the degrees of freedom.
Valid parameter ranges: freedom > 0.
The above description of Chi Square is
copyrighted.
A definition of the ChiSquare distribution can be found at
http://www.cern.ch/RD11/rkb/AN16pp/node31.html#SECTION000310000000000000000
- Since:
- Ptolemy II 4.1
- Version:
- $Id: ColtChiSquare.java 57040 2010-01-27 20:52:32Z cxh $
- Author:
- David Bauer and Kostas Oikonomou
- 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 |
freedom
public PortParameter freedom
- freedom.
This has type double with default value 1.0.
_current
private double _current
- The random number for the current iteration.
_generator
private cern.jet.random.ChiSquare _generator
- The random number generator.
ColtChiSquare
public ColtChiSquare(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.
fire
public void fire()
throws IllegalActionException
- Send a random number with a ChiSquare distribution to the output.
This number is only changed in the prefire() method, so it will
remain constant throughout an iteration.
- Specified by:
fire
in interface Executable
- Overrides:
fire
in class RandomSource
- Throws:
IllegalActionException
- If there is no director.
_createdNewRandomNumberGenerator
protected void _createdNewRandomNumberGenerator()
- Method that is called after _randomNumberGenerator is changed.
- Specified by:
_createdNewRandomNumberGenerator
in class ColtRandomSource
_generateRandomNumber
protected void _generateRandomNumber()
throws IllegalActionException
- Generate a new random number.
- Specified by:
_generateRandomNumber
in class RandomSource
- Throws:
IllegalActionException
- If parameter values are incorrect.