Class MutationFunction.NoMutation

java.lang.Object
org.biojavax.ga.functions.MutationFunction.NoMutation
All Implemented Interfaces:
Changeable, MutationFunction
Enclosing interface:
MutationFunction

public static final class MutationFunction.NoMutation extends Object implements MutationFunction

Place Holder class that doesn't mutate its SymbolLists

Version:
1.0
Author:
Mark Schreiber
  • Constructor Details

  • Method Details

    • getMutationProbs

      public double[] getMutationProbs()
      Specified by:
      getMutationProbs in interface MutationFunction
    • getMutationSpectrum

      Specified by:
      getMutationSpectrum in interface MutationFunction
      Returns:
      null if the Distribution has not been set.
    • mutate

      public SymbolList mutate(SymbolList syml)
      Description copied from interface: MutationFunction
      Produces a new SymbolList by mutation. Each position i in the SymbolList seq is mutated with probability getMutationProbs[i]. The new residue is selected at random from the Distribution mutation. The use of an array of probabilities allows the modelling of mutational hotspots. Position 0 in the array corresponds to the probability of the first residue of seq mutating. If the length of the array defined in getMutationProbs() is shorter than the length of the sequence the default behaivour of implementations will be to apply the last probability to each subsequence residue. A single member array will mutate all bases with equal probability.
      Specified by:
      mutate in interface MutationFunction
      Parameters:
      syml - the sequence to mutate
      Returns:
      The mutated sequence.
    • setMutationProbs

      public void setMutationProbs(double[] muts) throws ChangeVetoException
      Description copied from interface: MutationFunction
      Set the probability of a mutation occuring at a certain position Position 0 in the array corresponds to the probability of the first residue of seq mutating. If the length of the array defined in getMutationProbs() is shorter than the length of the sequence the default behaivour of implementations will be to apply the last probability to each subsequence residue. A single member array will mutate all bases with equal probability.
      Specified by:
      setMutationProbs in interface MutationFunction
      Parameters:
      muts - an array of double values representing mutation probabilities
      Throws:
      ChangeVetoException - if a ChangeListener vetoes the change.
    • setMutationSpectrum

      Description copied from interface: MutationFunction
      Sets the Distribution of Symbols that will be selected from when a mutation occurs. An OrderNDistribution is used so that you can model a situation where the identity of the 'mutant' Symbol is dependent on the original Symbol. The primary use is to prevent Symbols mutating to themselves. Another use would be to model transitions and transversions.
      Specified by:
      setMutationSpectrum in interface MutationFunction
      Parameters:
      odn - the Distribution of 'mutant' bases to choose from.
      Throws:
      ChangeVetoException - if a ChangeListener vetoes the change.
    • isUnchanging

      public boolean isUnchanging(ChangeType ct)
      Description copied from interface: Changeable

      A particular ChangeType can never be raised by this Changeable.

      If this returns true, then it is guaranteed that change events of this type (and all child types) can never under any circumstances be fired by this Changeable instance. If it returns false, that does not mean that this type of event will or even can be raised, but that it is worth registering listeners incase.

      Specified by:
      isUnchanging in interface Changeable
      Parameters:
      ct - the ChangeType to check
      Returns:
      true if ChangeEvents of this type are guaranteed to never be fired
    • removeChangeListener

      Description copied from interface: Changeable
      Remove a listener that was interested in all types of changes.
      Specified by:
      removeChangeListener in interface Changeable
      Parameters:
      c - a ChangeListener to remove
    • addChangeListener

      Description copied from interface: Changeable
      Add a listener that will be informed of all changes.
      Specified by:
      addChangeListener in interface Changeable
      Parameters:
      cl - the ChangeListener to add
    • addChangeListener

      Description copied from interface: Changeable
      Add a listener that will be informed of changes of a given type.
      Specified by:
      addChangeListener in interface Changeable
      Parameters:
      cl - the ChangeListener
      ct - the ChangeType it is to be informed of
    • removeChangeListener

      Description copied from interface: Changeable
      Remove a listener that was interested in a specific types of changes.
      Specified by:
      removeChangeListener in interface Changeable
      Parameters:
      cl - a ChangeListener to remove
      ct - the ChangeType that it was interested in