Programa

L'anàlisi desenvolupat en el nostre projecte s'ha realitzat a partir del programa motius.pl. Aquest és un algorisme escrit en Perl que té com a funció identificar un motiu determinat en qualsevol conjunt de seqüències, que poden ser tant nucleotídiques com aminoacídiques. El programa ignora els distincions alfabètiques, és a dir, les dades poden estar tant en majúscuels com en minúscules. Hem escrit dues versions del programa per tal de poder-lo executar tant des de la terminal de LINUX (motius.pl) com des de la web, a través del SERVIDOR (motiusweb.cgi). El contingut de l'script pot dividir-se, bàsicament, en tres parts fonamentals:



Obertura de fitxers
El programa utilitza com a variables d'entrada dos tipus de dades:

El programa verificarà que s'hagi introduït correctament les dades i donarà un missatge d'error si hi ha cap incorrecció. Es crearà un altre filehandle que sostingui un arxiu de sortida, on s'hi aniran guardant ordenadament les dades obtingudes al llarg del procés.



Preparació de la matriu de seqüències
El programa crea una matriu a partir del fitxer que conté les seqüències en FASTA. La matriu tindrà tantes files com seqüències hi hagi a l'arxiu, i cadascuna d'elles esdevindrà un vector. Hi haurà dues columnes, de forma que a la primera (primera posició de cada vector) s'hi registra l'identificador i la descripció, i a la segona s'hi posa la seqüència linealitzada.



Algorisme pel match
A continuació es processa la informació recollida fins el moment.  El programa recorre les seqüències contingudes en la segona columna de la matriu a través de dues composicions iteratives, per tal de trobar coincidències amb el patró (match). Per a cada match trobat es registra al fitxer de sortida la següent informació:

Identificador i descripció de seqüència - seqüència del motiu trobat - posició inicial - posició final - longitud total de la seqüència

Addicionalment, en el fitxer de sortida s'adjunta el nombre total de motius trobats  i el nombre de proteïnes que contenen un o més match. Aquest fitxer es mostrarà en pantalla en la versió motiusweb.cgi, i s'emmagatzemarà en el fitxer outfile.txt en la versió per LINUX.