El nostre programa està dissenyat de manera que porti a terme les següents tasques:
Seqüència en format FASTAA continuació detallem les diferents accions i funcions que utilitza el programa:
Matriu de pesos dels llocs d'splicing donors
Matriu de pesos dels llocs d'splicing acceptors
Valor llindar per les senyals d'splicing
Taula d'ús de codons (coding bias)
Valor llindar de cada exó predit
Enregistrament de la seqüència FASTA:
Obrim el filehandle que conté el fitxer de la seqüència en format FASTA, el llegim, i enregistrem per una banda l'identificador de la seqüència, i per l'altra la seqüència en string (la guardem tota seguida eliminant tots els salts de línia i els espais entre caràcters) i també en un vector on en cada posició hi enregistrem un nucleòtid.
Funció HASH:
Enregistrament de la taula d'uús de codons:
Exons inicials: comencen amb un codó ATG i acaben amb un donorEn fer les combinacions hem de tenir en compte que les posicions que emparellem s'han de trobar en un mateix ORF, és a dir, que estiguin contingudes entre l'inici o el final i un codó stop o entre dos codons stop.Exons interns: comencen amb un acceptor i acaben amb un donor
Exons terminals: comencen amb un acceptor i acaben amb un codó stop
Exons singles: comencen amb un codó ATG i acaben amb un codó stop
Amb aquestes combinacions creem una matriu per cada tipus d'exó que conté la posició d'inici i final de l'exó i les puntuacions dels llocs d'splicing en cas que l'exó en contingui.
Aplicant la matriu d'ús de codons es calcula la raó de versemblança dels possibles exons predits anteriorment en una pauta de lectura donada i obtenim el valor d'aquesta raó en escala logarítmica. Aquest valor se suma a les puntuacions de l'splicing de manera que obtenim la puntuació total de cada exó. Aquells exons que tinguin una puntuació superior al llindar assignat seran emmagatzemats en la matriu de sortida.
La matriu de sortida també contindrà la pauta (frame) de l'exó. Aquest número l'obtenim a partir del residu de la divisió per 3 de la posició d'inici de l'exó en la seqüència original.