Class MutationFunction.NoMutation

    • Method Detail

      • 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

        public void setMutationSpectrum​(OrderNDistribution odn)
                                 throws ChangeVetoException
        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