Il cavallo marino e l’energia

Il cavallo marino e l’energia

Le misure metaboliche in vitro dello studio norvegese  in cui fu evidenziato un possibile blocco al livello del piruvato deidrogenasi nei pazienti ME/CFS, sono state effettuate con il dispositivo Seahorse XFe96 della Agilent. Questo apparecchio (grande come una stampante da tavolo) permette di misurare in tempo reale – in vitro – il metabolismo energetico di cellule prelevate da pazienti (ad esempio linfociti). Come è spiegato nel video che segue, il tutto si riduce a due misure:

  1. una misura del consumo di ossigeno, che fornisce una stima del funzionamento mitocondriale;
  2. una misura della concentrazione di protoni, che fornisce una stima del funzionamento della glicolisi.

Mi risulta che l’Università degli Studi di Firenze sia in possesso di questo apparecchio (vedi qui).

Il Seahorse è attualmente impiegato nello studio di Avindra Nath (NIH) su 40 pazienti con ME/CFS post-infettiva (PI-ME/CFS). Come gruppo di controllo per questa ricerca, oltre a 20 persone sane, sono state selezionate anche 20 persone che hanno avuto la Lyme e sono completamente guarite.

seahorse

L’algoritmo di Needleman-Wunsch

L’algoritmo di Needleman-Wunsch

Allineamento di proteine

Cercare similitudini fra sequenze di peptidi è estremamente utile per stabilire rapporti evolutivi fra proteine (e quindi fra gli esseri viventi che le sintetizzano), per progettare vaccini, per studiare fenomeni di autoimmunità e altro. In questo post presento un software che si occupa proprio del confronto fra due sequenze proteiche. La scrittura di questo programma mi ha tenuto compagnia durante molti mesi, segnandomi la rotta fra le costanti ricadute e riacutizzazioni della mia malattia, malattia che fin’ora non mi ha ancora abbandonato per un solo giorno. Mentre scrivevo questo e altri codici, che ne sono lo sviluppo, inventavo anche un modo per aspettare il domani.

dihedral-angle-psi-2
Figura 1. Una sequenza di tre amminoacidi, con in evidenza il legame peptidico e l’angolo psi del legame fra il carbonio C-alpha e il C-beta di un amminoacido. Disegno di Paolo Maccallini.

Needleman e Wunsch

L’algoritmo di Needleman-Wunsch descrive un procedimento automatico che consente di calcolare il migliore allineamento possibile fra due sequenze di amminoacidi (Needleman SB, Wunsch CD, 1969). Questo metodo permette di svolgere in modo relativamente veloce e ingegnoso il confronto fra tutti gli allineamenti fra le due sequenze, considerando ogni possibile numero di lacune, in ogni possibile posizione. Il suo scopo è quello di scegliere fra questi allineamenti il migliore, ovvero quello che garantisce il ‘punteggio’ più alto, essendo tale punteggio calcolato utilizzando delle matrici quadrate di dimensione 20, dette ‘matrici di sostituzione’. Questo compito è non banale e comporta l’esame di un numero di allineamenti pari a

NeW 1.png

dove k e m sono le lunghezze dei due peptidi. Si tratta di numeri molto elevati, infatti posto ad esempio k=4 e m=6, si ottengono circa 215 allineamenti diversi. In genere però si ha a che fare con peptidi di centinaia di amminoacidi, il che comporta milioni di possibili allineamenti tra cui cercare il migliore. Ebbene, l’algoritmo di Needleman e Wunsch permette di effettuare questa analisi senza dover considerare direttamente ogni allineamento possibile. In figura 2 e 3 si ha una descrizione grafica di questo algoritmo.

new
Figura 2. L’algoritmo di Needleman-Wunsch, con l’indicazione delle variabili che ho usato nel mio codice per implementarlo. Disegno di Paolo Maccallini.
new2
Figura 3. La matrice TBM (trace back matrix) per uno specifico allineamento. Disegno di Paolo Maccallini.

Il mio programma

Il mio software per l’allineamento globale fra due proteine si chiama NeW_6 ed è scritto in Octave. Il programma presenta la stessa funzionalità di due analoghi prodotti di largo impiego, che sono LALIGN dello Swiss Institute of Bioniformatics e EMBOSS Needle dell’Europen Bioinformatic Institute. In particolare il mio programma ha le seguenti caratteristiche:

  • permette all’utente di scegliere fra un set di comuni matrici di sostituzione;
  • ha un modello di lacuna del tipo a+b(x), dove a è la penalità della lacuna iniziale, b quella delle lacune di estensione e x è il numero di lacune;
  • prevede lacune alla fine delle sequenze.

Lo sviluppo del programma, nonché il codice, si trovano in questo PDF, dove è possibile seguire vari esempi applicativi e varie versioni del programma stesso, nonché dei test in cui ne confronto l’output con i programmi attualmente in uso.

Applicazioni

Perché scrivere un programma che esiste già? Mi è servito per penetrare i metodi di allineamento fra due sequenze di amminoacidi, ma soprattutto mi ha permesso di costruire programmi più complessi (non inclusi nel PDF di cui sopra) che sto attualmente utilizzando per risolvere problemi di immunologia. In cerca di una soluzione.