|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.biojava.utils.AbstractChangeable
org.biojava.bio.dist.PairDistribution
public class PairDistribution
Class for pairing up two independant distributions.
Nested Class Summary |
---|
Nested classes/interfaces inherited from interface org.biojava.bio.dist.Distribution |
---|
Distribution.NullModelForwarder |
Field Summary |
---|
Fields inherited from interface org.biojava.bio.dist.Distribution |
---|
NULL_MODEL, WEIGHTS |
Constructor Summary | |
---|---|
PairDistribution(Distribution first,
Distribution second)
Create a new PairDistribution that represents the product of two other distributions. |
Method Summary | |
---|---|
Alphabet |
getAlphabet()
The alphabet from which this spectrum emits symbols. |
Distribution |
getNullModel()
Retrieve the null model Distribution that this Distribution recognizes. |
protected static Distribution |
getNullModel(Distribution first,
Distribution second)
Get a uniform null model over a PairDistribution over [first,second]. |
double |
getWeight(Symbol sym)
Return the probability that Symbol s is emitted by this spectrum. |
void |
registerWithTrainer(DistributionTrainerContext dtc)
Register this distribution with a training context. |
void |
registerWithTrainer(ModelTrainer trainer)
Register this paired distribution with a model trainer. |
Symbol |
sampleSymbol()
Sample a symbol from this state's probability distribution. |
void |
setNullModel(Distribution nullModel)
Set the null model Distribution that this Distribution recognizes. |
void |
setWeight(Symbol sym,
double weight)
Set the probability or odds that Symbol s is emitted by this state. |
Methods inherited from class org.biojava.utils.AbstractChangeable |
---|
addChangeListener, addChangeListener, generateChangeSupport, getChangeSupport, hasListeners, hasListeners, isUnchanging, removeChangeListener, removeChangeListener |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface org.biojava.utils.Changeable |
---|
addChangeListener, addChangeListener, isUnchanging, removeChangeListener, removeChangeListener |
Constructor Detail |
---|
public PairDistribution(Distribution first, Distribution second)
first
- the first distributionsecond
- the second distributionMethod Detail |
---|
protected static Distribution getNullModel(Distribution first, Distribution second)
first
- the first Alphabetsecond
- the second Alphabet
public Alphabet getAlphabet()
Distribution
getAlphabet
in interface Distribution
public Distribution getNullModel()
Distribution
getNullModel
in interface Distribution
public void setNullModel(Distribution nullModel) throws IllegalAlphabetException, ChangeVetoException
Distribution
setNullModel
in interface Distribution
nullModel
- the new null model Distribution
IllegalAlphabetException
- if the null model has the wrong alphabet
ChangeVetoException
- if this Distirbution doesn't support setting
the null model, or if one of its listeners objectspublic void registerWithTrainer(ModelTrainer trainer)
trainer
- the trainer to register this distribution with.public double getWeight(Symbol sym) throws IllegalSymbolException
Distribution
Return the probability that Symbol s is emitted by this spectrum.
If the symbol is ambiguou, then it is the sum of the probability that each one of the matching symbols was emitted.
getWeight
in interface Distribution
sym
- the Symbol emitted
IllegalSymbolException
- if s is not from this state's alphabetpublic void setWeight(Symbol sym, double weight) throws ChangeVetoException
Distribution
setWeight
in interface Distribution
sym
- the Symbol emittedweight
- the probability of emitting that symbol
ChangeVetoException
- if this state does not allow weights
to be tampered with, or if one of the listeners vetoed this changepublic void registerWithTrainer(DistributionTrainerContext dtc)
Distribution
Register this distribution with a training context.
This should be invoked from within dtc.addDistribution(). This method is responsible for constructing a suitable DistributionTrainer instance and registering it by calling dtc.registerDistributionTrainer(this, trainer). If the distribution is a view onto another distribution, it can force the other to be registered by calling dtc.addDistribution(other), and can then get on with registering it's own trainer.
registerWithTrainer
in interface Distribution
dtc
- the DistributionTrainerContext with witch to register a trainerpublic Symbol sampleSymbol()
Distribution
sampleSymbol
in interface Distribution
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |