|
|
Evaluation ruleset for SCOP 1.69
For more information see the more detailed page on the outdated ruleset for SCOP 1.61 here.
sub Criteria {
#1.69 version
#Takes as an input two SCOP classifications, and returns a flag.
#1 if they're the same, 0 if it's ambiguous, and -1 if they're different
my $flag = -1;
my $one = $_[1];
my $two = $_[2];
my $cf1;
my $cf2;
my $sf1;
my $sf2;
my $fa1;
my $fa2;
my %rossmann = (
'c.2', 0, 'c.3', 0, 'c.4', 0, 'c.5', 0,
'c.27', 0, 'c.28', 0, 'c.30', 0, 'c.31', 0
);
#these all have notes in SCOP
if ( $one =~ /^(\w\.\d+)(\.\d+)(\.\d+)/ ) {
$fa1 = "$1$2$3";
$sf1 = "$1$2";
$cf1 = "$1";
}
else {
print STDERR "Error parsing classification: $one\n";
}
if ( $two =~ /^(\w\.\d+)(\.\d+)(\.\d+)/ ) {
$fa2 = "$1$2$3";
$sf2 = "$1$2";
$cf2 = "$1";
}
else {
print STDERR "Error parsing classification: $two\n";
}
#Same fold ambiguous
if ( $cf1 eq $cf2 ) {
$flag = 0;
}
#plain right
if ( $sf1 eq $sf2 ) {
$flag = 1;
}
#Fixed as of SCOP 1.63!
##Unless Membrane all-alpha
#if (($sf1 eq 'f.2.1' or $sf2 eq 'f.2.1') and $fa1 ne $fa2){
#$flag=-1;
#}
#TIM barrels
#first 7 similar -note in SCOP-
if (
(
$sf1 eq 'c.1.1'
or $sf1 eq 'c.1.2'
or $sf1 eq 'c.1.3'
or $sf1 eq 'c.1.4'
or $sf1 eq 'c.1.5'
or $sf1 eq 'c.1.6'
or $sf1 eq 'c.1.7'
)
and ( $sf2 eq 'c.1.1'
or $sf2 eq 'c.1.2'
or $sf2 eq 'c.1.3'
or $sf2 eq 'c.1.4'
or $sf2 eq 'c.1.5'
or $sf2 eq 'c.1.6'
or $sf2 eq 'c.1.7' )
)
{
$flag = 1;
}
elsif ( ( $cf1 eq 'c.1' and $cf2 eq 'c.1' and ( $sf1 ne $sf2 ) ) ) {
$flag = 0;
}
#Rossmann-like
if ( exists( $rossmann{$cf1} ) and exists( $rossmann{$cf2} ) ) {
if ( $cf1 eq $cf2 ) {
$flag = 1;
}
else {
$flag = 0;
}
}
#Nah! Julian thinks now it's a grower, since 1.63
##as of 1.57 c.23.12 looks like superposes OK
#if ((exists($rossmann{$cf1}) and $sf2 eq 'c.23.12') or (exists($rossmann{$cf2}) and $sf1 eq 'c.23.12')){
#$flag=1;
#}
#Old note -correspondance checked-
#1ykf, residues 151-314 superpose with 1eiz: 2.26382 ANGSTROMS/ATOM over 98 residues
if ( ( exists( $rossmann{$cf1} ) and $cf2 eq 'c.66' )
or ( exists( $rossmann{$cf2} ) and $cf1 eq 'c.66' ) )
{
$flag = 0;
}
#1lvh superposes with 1ek6 to 2.19488 ANGSTROMS/ATOM over 88 residues(same topology), BUT is VERY different
if ( ( exists( $rossmann{$cf1} ) and $cf2 eq 'c.108' )
or ( exists( $rossmann{$cf2} ) and $cf1 eq 'c.108' ) )
{
$flag = 0;
}
#Can't find it and there are no cross-hits anyway.
##Old note -correspondance checked-
#if ((exists($rossmann{$cf1}) and $cf2 eq 'c.32') or (exists($rossmann{$cf2}) and $cf1 eq 'c.32')){
#$flag=0;
#}
#note: the ATP nucleotide-binding site is similar to that of the NAD-binding Rossmann-folds
if ( ( exists( $rossmann{$cf1} ) and $sf2 eq 'c.111.1' )
or ( exists( $rossmann{$cf2} ) and $sf1 eq 'c.111.1' ) )
{
$flag = 0;
}
#Other rules
#beta propellors 4-8 blades
if (
(
$cf1 eq 'b.66'
or $cf1 eq 'b.67'
or $cf1 eq 'b.68'
or $cf1 eq 'b.69'
or $cf1 eq 'b.70'
)
and ( $cf2 eq 'b.66'
or $cf2 eq 'b.67'
or $cf2 eq 'b.68'
or $cf2 eq 'b.69'
or $cf2 eq 'b.70' )
)
{
if ( $cf1 eq $cf2 ) {
$flag = 1;
}
else {
$flag = 0;
}
}
#Note in SCOP, Similar in architecture but partly differs in topology
if ( ( $cf1 eq 'c.94' and $cf2 eq 'c.93' )
or ( $cf2 eq 'c.94' and $cf1 eq 'c.93' ) )
{
$flag = 0;
}
#This re-classified in 1.67 (Cutinase-like)
#if (($sf1 eq 'c.23.9' and $sf2 eq 'c.69.1') or ($sf2 eq 'c.23.9' and $sf1 eq 'c.69.1')){
#$flag=0;
#}
#This re-classified in 1.63
#if (($fa1 eq 'f.2.1.10' and $sf2 eq 'c.108.1') or ($fa2 eq 'f.2.1.10' and $sf1 eq 'c.108.1')){
#$flag=1;
#}
#Very similar alpha super-helix
if ( ( $sf1 eq 'a.118.8' and $sf2 eq 'a.118.6' )
or ( $sf2 eq 'a.118.8' and $sf1 eq 'a.118.6' ) )
{
$flag = 0;
}
#Similar motif sulphur binding
if ( ( $sf1 eq 'd.58.1' and $sf2 eq 'a.1.2' )
or ( $sf2 eq 'd.58.1' and $sf1 eq 'a.1.2' ) )
{
$flag = 0;
}
#OK note in SCOP one of the previous cases
if ( ( $sf1 eq 'a.137.4' and $sf2 eq 'c.96.1' )
or ( $sf2 eq 'a.137.4' and $sf1 eq 'c.96.1' ) )
{
$flag = 0;
}
#OK same fold and general look
if ( ( $sf1 eq 'b.42.5' and $sf2 eq 'b.42.1' )
or ( $sf2 eq 'b.42.5' and $sf1 eq 'b.42.1' ) )
{
$flag = 0;
}
#Note in SCOP. Leucine rich repeats both of them, structures look the same OK
if ( ( $sf1 eq 'c.10.1' and $sf2 eq 'c.10.2' )
or ( $sf2 eq 'c.10.1' and $sf1 eq 'c.10.2' ) )
{
$flag = 0;
}
##re-classified in SCOP 1.67
##Obvious sequence homology with blast, one is beta-beta-alpha superhelix, and one is beta-alpha togethor in PFAM
#if (($sf1 eq 'c.11.1' and $sf2 eq 'c.10.2') or ($sf2 eq 'c.11.1' and $sf1 eq 'c.10.2')){
#$flag=0;
#}
##Obvious sequence homology with blast, one is beta-beta-alpha superhelix, and one is beta-alpha togethor in PFAM
#if (($sf1 eq 'c.11.1' and $sf2 eq 'c.10.1') or( $sf2 eq 'c.11.1' and $sf1 eq 'c.10.1')){
#$flag=0;
#}
#Note in SCOP, contains P-loop
if ( ( $sf1 eq 'c.91.1' and $sf2 eq 'c.37.1' )
or ( $sf2 eq 'c.91.1' and $sf1 eq 'c.37.1' ) )
{
$flag = 0;
}
#Note in SCOP, shared motif
if ( ( $sf1 eq 'd.51.1' and $sf2 eq 'd.52.3' )
or ( $sf2 eq 'd.51.1' and $sf1 eq 'd.52.3' ) )
{
$flag = 0;
}
#Note in SCOP: variant of beta/alpha barrel
if ( ( $cf1 eq 'c.6' and $cf2 eq 'c.1' )
or ( $cf2 eq 'c.6' and $cf1 eq 'c.1' ) )
{
$flag = 0;
}
#Note in SCOP, possible link
if ( ( $sf1 eq 'a.24.1' and $sf2 eq 'a.63.1' )
or ( $sf2 eq 'a.24.1' and $sf1 eq 'a.63.1' ) )
{
$flag = 0;
}
###NEw to 1.69
#Shared helix no note in SCOP, sequence identical, structure different position
if ( ( $sf1 eq 'a.8.4' and $sf2 eq 'b.130.1' )
or ( $sf2 eq 'a.8.4' and $sf1 eq 'b.130.1' ) )
{
$flag = 0;
}
#Shared helix no note in SCOP, sequence aligns, structure looks same (domain boundary definition problem)
if ( ( $sf1 eq 'a.5.10' and $sf2 eq 'd.79.4' )
or ( $sf2 eq 'a.5.10' and $sf1 eq 'd.79.4' ) )
{
$flag = 0;
}
#Shared helix no note in SCOP, sequence alignment very bad, but includes a hyper-variable linker region. Looks like a misclassified? part of a strange chain
if ( ( $sf1 eq 'f.21.1' and $sf2 eq 'f.32.1' )
or ( $sf2 eq 'f.21.1' and $sf1 eq 'f.32.1' ) )
{
$flag = 0;
}
###-----------
#-----------------------------------
return ($flag);
}
|