Sequences in red contain non-standard nucleotides.
Click on the virus name to see an image.
Virus Name |
RNA/DNA |
Sequence |
# Nucleotides |
PDB ID |
$res = @mysql_query("select distinct family from viper,ENTITY_POLY where viper.entry_key = ENTITY_POLY.entry_key and type like '%nucleotide%' order by family");
$count = 1;
while ($orow = mysql_fetch_row($res)) {
$family = $orow[0];
print "$count. $family | \n";
$q = "select distinct viper.entry_key, pdb_id, entry_id, name from viper,ENTITY_POLY where viper.entry_key = ENTITY_POLY.entry_key and type like '%nucleotide%' and family = '$family'";
$results = @mysql_query($q);
$entries = array();
while ($row = mysql_fetch_assoc($results)) {
array_push($entries,$row);
}
$data = array();
foreach ($entries as $entry) {
$sequences = array();
$lengths = array();
$types = array();
$entry_key = $entry['entry_key'];
$data[$entry_key] = array();
$next = "select type, pdbx_seq_one_letter_code, number_of_monomers, nstd_monomer, entity_key from ENTITY_POLY where entry_key = $entry_key and type like '%nucleotide%'";
$results2 = @mysql_query($next);
while ($nrow = mysql_fetch_array($results2)) {
// Get the chain ID for the entity
$entity_key = $nrow['entity_key'];
$lq = "select label_asym_id from ATOM_SITE where entry_key = $entry_key and label_entity_key = $entity_key limit 1";
// print "$lq";
$lek = @mysql_query($lq);
$lrow = mysql_fetch_row($lek);
$chainid = $lrow[0];
// print "Done query.Freeing result";
mysql_free_result($lek);
// print "Done freeing result.";
//
if ($nrow['nstd_monomer'] == "no") {
array_push($sequences,$chainid."(".$nrow['pdbx_seq_one_letter_code'].")");
}
else {
array_push($sequences,$chainid."("."".$nrow['pdbx_seq_one_letter_code']."".")");
}
$nucname = $nrow['type'];
//Not in database, must find the length
//$length = $row['number_of_monomers'];
$aSeq = preg_split('//', $nrow['pdbx_seq_one_letter_code'], -1, PREG_SPLIT_NO_EMPTY);
$length = 0;
$inParen = false;
foreach($aSeq AS $c){
if($c == '('){
$length++;
$inParen = true;
}
if($inParen == false){
$length++;
}
if($c == ')'){
$inParen = false;
}
}
array_push($lengths,$chainid."(".$length.")");
switch($nucname) {
case 'polydeoxyribonucleotide':
$dorn = 'DNA';
break;
case 'polyribonucleotide':
$dorn = 'RNA';
break;
default:
$dorn = '???';
break;
}
array_push($types,$dorn);
}
// Only one instance of each type should be listed.
$types = array_unique($types);
$data[$entry_key]['sequences'] = join(", ",$sequences);
$data[$entry_key]['types'] = join(", ",$types);
$data[$entry_key]['lengths'] = join(", ",$lengths);
}
foreach ($entries as $entry) {
$entry_key = $entry['entry_key'];
$name = $entry['name'];
print "";
print "".$entry['name']." | ";
print "".$data[$entry_key]['types']." | ";
print "".$data[$entry_key]['sequences']." | ";
print "".$data[$entry_key]['lengths']." | ";
print "".$entry['entry_id']." | ";
print " ";
}
$count++;
}
print " ";
// $results = @mysql_query("select distinct pdb_id, entry_id, name, type, pdbx_seq_one_letter_code, number_of_monomers, nstd_monomer from viper,ENTITY_POLY where viper.entry_key = ENTITY_POLY.entry_key and type like '%nucleotide%' order by family");
$results = @mysql_query("select distinct entry_id, name from viper,ENTITY_POLY where viper.entry_key = ENTITY_POLY.entry_key and type like '%nucleotide%' order by family");
print "
Stereo pictures: (click images to enlarge)
";
while ($row = mysql_fetch_array($results)) {
$name = $row['name'];
$entry_id = $row['entry_id'];
$stereo = "rna_" . $entry_id . "_stereo.gif";
$mono = "rna_" . $entry_id . ".gif";
print "";
print "
$name
|
|
Top of page
|
";
}
?>
|