Questo progetto è su scala ridotta e si basa su file presi dal Protein Data Bank (PDB) e richiede di rappresentare ciascuna proteina come un grafo G = (V,E) per calcolarne la distribuzione dei gradi dei nodi: in particolare, se Δ indica il grado massimo del grafo, il progetto richiede di calcolare D[i] = cardinalità({ u in V : grado[u] = i}) per ogni 0 ≤ i ≤ Δ.
1ald
, 1fcb
e 4enl
, che sono disponibili in questo file zip. Il grafo va costruito da un file di testo PDB come segue. I vertici sono gli atomi, descritti nelle linee ATOM. I campi di interesse sono “serial” (identificatore unico dell'atomo), “x”, “y”, “z” (sue coordinate cartesiane in angstrom) e “element” (simbolo dell'elemento associato all'atomo).
Gli archi del grafo da costruire sono implicitamente definiti dalla seguente regola: due vertici hanno un legame se la loro distanza euclidea in angstrom è nell’intervallo [1 … 3,2]; altrimenti, l'arco non esiste (la distanza è inferiore a 1, che viene considerata rumore, oppure la distanza è superiore a 3.2 angstrom e le forze sono troppo deboli).
Nota. In alcuni file PDB, la proteina può essere stata replicata più volte: in tal caso è sufficiente prendere soltanto la componente connessa a partire dal primo vertice ATOM.