Interface (Schnittstelle)

We need/provide the following parameters:

  • Edge length
  • String/Sequence (lowest level annotation)
  • Substitution probabilities Preferred: HashMap<Character, MagicTable> =⇒ Either complete HashMap, or probability array for each character separately
  • Deletion probabilities for each position (prob array) of the given sequence
  • Probabilities for insertions:
    1. for each position of the given sequence
    2. for each inserted character of the alphabet
  Maximal (and minimal?) legth of an insertion/deletion (if needed, treat separately) 

An Example could be:

evolve(
  double/int edgeLength,
  Sequence s,
  HashMap<Character,MagicTable> substitutionTable,
  Double[] insProb,
  Double[] insPos,
  Double[] delPos,
  int maxLength
){...}

evolve(10, "AGCTAA", ..., new Double[]{0.2,0.2,0.3,0.3}, new Double[]{0.3,0.2,0.2,0.3}, ..., ..., 2);