Task4 Hemochromatosis Protocol

From Bioinformatikpedia
Revision as of 00:13, 4 June 2012 by Bernhoferm (talk | contribs) (Model creation)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Template search

Query sequence used: Q30201

HHPred

We used HHPred (Webserver) to search for homologs. Standard parameters were used (DB: pdb70_15May12).

Weblink to results (as long as they are online): results


COMA

Another search was performed using COMA (Webserver). Again standard parameters were kept (DB: pdb40_2012-03-22).

Weblink to results (as long as they are online): results


Model creation

Modeller

SwissModel

We used the Webserver to produce our models.

I-Tasser

For I-Tasser we also used the Webserver, but with Option I to specify our template (without alignment).

3D-Jigsaw

Webserver... love the web :P

Evaluation

For the native structure we used 1a6z and 1de4 for the complex structure.

A bash script was used to run TM-Score, TM-Align, and SAP for our models:

<source lang="bash">

  1. !/bin/bash

TMSCORE="/mnt/project/pracstrucfunc12/bin/TMscore" TMALIGN="/mnt/project/pracstrucfunc12/bin/TMalign" RMSD="/mnt/project/pracstrucfunc12/bin/sap"

for model in `ls | grep .pdb` do MODELNAME=${model%.[^.]*} echo "Processing model: "$MODELNAME mkdir -p $MODELNAME cd $MODELNAME $TMSCORE ../$model ../1a6z.ent -o $MODELNAME"_native_tm.sup" > $MODELNAME"_native.tmscore" $TMSCORE ../$model ../1de4.ent -o $MODELNAME"_complex_tm.sup" > $MODELNAME"_complex.tmscore" $TMALIGN ../$model ../1a6z.ent -o $MODELNAME"_native_align.sup" > $MODELNAME"_native.tmalign" $TMALIGN ../$model ../1de4.ent -o $MODELNAME"_complex_align.sup" > $MODELNAME"_complex.tmalign" $RMSD ../$model ../1a6z.ent > $MODELNAME"_native.rmsd" mv super.pdb $MODELNAME"_native_super.pdb" $RMSD ../$model ../1de4.ent > $MODELNAME"_complex.rmsd" mv super.pdb $MODELNAME"_complex_super.pdb" cd .. done </source>


These scores were then extracted with a perl script:

<source lang="perl">

  1. !/usr/local/bin/perl

use strict; use warnings; use diagnostics; use sigtrap; use autodie;

my $targetdir = "./"; my $outFileNative = "native.txt"; my $outFileComplex = "complex.txt";

opendir (DIR, $targetdir) or die ("Could not open directory!");

my @content= readdir(DIR);

closedir(DIR);

open (NATIVE, ">", $outFileNative) or die ("Could not open file!"); open (COMPLEX, ">", $outFileComplex) or die ("Could not open file!");

  1. print headers

print NATIVE "<figtable id=\"scores_native\">\n"; print NATIVE "{| class=\"wikitable\" style=\"width: 65%; margin: 1em 1em 1em 0; border-collapse: collapse; border-style: solid; border-width:0px; border-color: #000\"\n"; print NATIVE "|-\n"; print NATIVE "! style=\"text-align:left; border-style: solid; border-width: 0 0 2px 0\" |Model\n"; print NATIVE "! style=\"text-align:left; border-style: solid; border-width: 0 0 2px 0\" |Common residues\n"; print NATIVE "! style=\"text-align:left; border-style: solid; border-width: 0 0 2px 0\" |TM-Score\n"; print NATIVE "! style=\"text-align:left; border-style: solid; border-width: 0 0 2px 0\" |GDT-TS\n"; print NATIVE "! style=\"text-align:left; border-style: solid; border-width: 0 0 2px 0\" |GDT-HA\n"; print NATIVE "! style=\"text-align:left; border-style: solid; border-width: 0 0 2px 0\" |TM-Align\n"; print NATIVE "! style=\"text-align:left; border-style: solid; border-width: 0 0 2px 0\" |Weighted RMSD\n"; print NATIVE "|-\n";

print COMPLEX "<figtable id=\"scores_complex\">\n"; print COMPLEX "{| class=\"wikitable\" style=\"width: 65%; margin: 1em 1em 1em 0; border-collapse: collapse; border-style: solid; border-width:0px; border-color: #000\"\n"; print COMPLEX "|-\n"; print COMPLEX "! style=\"text-align:left; border-style: solid; border-width: 0 0 2px 0\" |Model\n"; print COMPLEX "! style=\"text-align:left; border-style: solid; border-width: 0 0 2px 0\" |Common residues\n"; print COMPLEX "! style=\"text-align:left; border-style: solid; border-width: 0 0 2px 0\" |TM-Score\n"; print COMPLEX "! style=\"text-align:left; border-style: solid; border-width: 0 0 2px 0\" |GDT-TS\n"; print COMPLEX "! style=\"text-align:left; border-style: solid; border-width: 0 0 2px 0\" |GDT-HA\n"; print COMPLEX "! style=\"text-align:left; border-style: solid; border-width: 0 0 2px 0\" |TM-Align\n"; print COMPLEX "! style=\"text-align:left; border-style: solid; border-width: 0 0 2px 0\" |Weighted RMSD\n"; print COMPLEX "|-\n";


foreach my $dir (@content) { if (not $dir=~m/\./gi) { print "Extracting scores for $dir...\n"; my @nativeTM = extractTM("$dir/$dir\_native.tmscore"); my @complexTM = extractTM("$dir/$dir\_complex.tmscore"); my @nativeTMA = extractTMA("$dir/$dir\_native.tmalign"); my @complexTMA = extractTMA("$dir/$dir\_complex.tmalign"); my @nativeRMSD = extractRMSD("$dir/$dir\_native.rmsd"); my @complexRMSD = extractRMSD("$dir/$dir\_complex.rmsd");

print NATIVE "| style=\"border-style: solid; border-width: 0 0 0 0\" |$dir\n"; print NATIVE "| style=\"border-style: solid; border-width: 0 0 0 0\" |$nativeTM[0]\n"; print NATIVE "| style=\"border-style: solid; border-width: 0 0 0 0\" |$nativeTM[1]\n"; print NATIVE "| style=\"border-style: solid; border-width: 0 0 0 0\" |$nativeTM[2]\n"; print NATIVE "| style=\"border-style: solid; border-width: 0 0 0 0\" |$nativeTM[3]\n"; print NATIVE "| style=\"border-style: solid; border-width: 0 0 0 0\" |$nativeTMA[0]\n"; print NATIVE "| style=\"border-style: solid; border-width: 0 0 0 0\" |$nativeRMSD[1] (over $nativeRMSD[0] atoms)\n"; print NATIVE "|-\n";

print COMPLEX "| style=\"border-style: solid; border-width: 0 0 0 0\" |$dir\n"; print COMPLEX "| style=\"border-style: solid; border-width: 0 0 0 0\" |$complexTM[0]\n"; print COMPLEX "| style=\"border-style: solid; border-width: 0 0 0 0\" |$complexTM[1]\n"; print COMPLEX "| style=\"border-style: solid; border-width: 0 0 0 0\" |$complexTM[2]\n"; print COMPLEX "| style=\"border-style: solid; border-width: 0 0 0 0\" |$complexTM[3]\n"; print COMPLEX "| style=\"border-style: solid; border-width: 0 0 0 0\" |$complexTMA[0]\n"; print COMPLEX "| style=\"border-style: solid; border-width: 0 0 0 0\" |$complexRMSD[1] (over $complexRMSD[0] atoms)\n"; print COMPLEX "|-\n"; } }

print NATIVE "|+ style=\"caption-side: bottom; text-align: left\" | TODO: NATIVE.\n"; print NATIVE "|}\n"; print NATIVE "</figtable>\n";

print COMPLEX "|+ style=\"caption-side: bottom; text-align: left\" | TODO: COMPLEX.\n"; print COMPLEX "|}\n"; print COMPLEX "</figtable>\n";

close COMPLEX; close NATIVE;


sub extractTM { my $filename = $_[0];

open (FILE, "<", $filename) or die "Could not open file!";

my $commonResidues = ""; my $tmScore = ""; my $gdttsScore = ""; my $gdthaScore = "";

while (<FILE>) { my $line = $_;

if ($line=~m/^Number\sof\sresidues\sin\scommon\s*?=\s*?(\S+?)\s+?/gi) { $commonResidues = $1; } elsif ($line=~m/^TM-score\s*?=\s*?(\S+?)\s+?/gi) { $tmScore = $1; } elsif ($line=~m/^GDT-TS-score\s*?=\s*?(\S+?)\s+?/gi) { $gdttsScore = $1; } elsif ($line=~m/^GDT-HA-score\s*?=\s*?(\S+?)\s+?/gi) { $gdthaScore = $1; } }

print $commonResidues."\t"; print $tmScore."\t"; print $gdttsScore."\t"; print $gdthaScore."\n";

close FILE;

return ($commonResidues, $tmScore, $gdttsScore, $gdthaScore); }


sub extractTMA { my $filename = $_[0];

open (FILE, "<", $filename) or die "Could not open file!";

my $tmScore = "";

while (<FILE>) { my $line = $_;

if ($line=~m/TM-score\s*?=\s*?(\S+?)\s*?,/gi) { $tmScore = $1; } }

print $tmScore."\n";

close FILE;

return ($tmScore); }


sub extractRMSD { my $filename = $_[0];

open (FILE, "<", $filename) or die "Could not open file!";

my $commonResidues = ""; my $rmsdScore = "";

while (<FILE>) { my $line = $_;

if ($line=~m/^Weighted\sRMSd\s*?=\s*?(\S+?)\s*?\(over\s*?(\S+?)\s+?/gi) { $rmsdScore = $1; $commonResidues = $2; } }

print $commonResidues."\t"; print $rmsdScore."\n";

close FILE;

return ($commonResidues, $rmsdScore); } </source>

Other