NAME

HackaMol::Roles::PdbRole - PdbRole of lazy attributes for HackaMol atoms

VERSION

version 0.023

SYNOPSIS

use HackaMol::Atom;

my $atom = Atom->new(Z=>6);

print $atom->$_ foreach ( qw( 
                           record_name  
                           serial       
                           occ          
                           bfact        
                           resname      
                           chain        
                           altloc       
                           resid        
                           iatom        
                           pdbid        
                           segid  
                         )
);
 
foreach my $resn (qw(TRP TYR GLN ASN ETC)){
  $atom->resname($resn);
  print $atom->aa321;
}

DESCRIPTION

PdbRole provides atom attributes for PDB parsing. All attributes are 'rw' and lazy, so they will not contaminate the namespace unless called upon. The functionality of the PdbRole may be extended in the future. An extension (HackaMolX::PDB or HackaMol::X::PDB) will be released soon.

METHODS

aa321

returns 1 letter code for amino acid. Generated from resname attribute. throws a warning and returns 'X' if residue name is unrecognized.

ATTRIBUTES

record_name

pdb cols 1-6: ATOM|HETATM. default = 'HETATM'

serial

pdb cols 7-11: index. default = 0

occ

pdb cols 55-60: occupancy. range 0 to 1. default = 1.0 (all there)

bfact

pdb cols 61-66: temperature factor. see Willis and Pryor. default = 20.0

altloc

pdb col 17. is AHIS and BHIS above. default = ' '

resname

pdb cols 18-20: residue name. defaults to 'ALA'

chain

pdb cols 22. protein chain. default = ' '

resid

pdb cols 23-26. residue index. PDB calls is resSeq, but resid is more familiar (to me). default = 64

icode

pdb cols 27. see code comments or http://www.wwpdb.org/documentation/format23/sect9.html

pdbid

a place to store which PDB it came from

segid

a CHARMMish parameter that may not belong here. default = 'TIP3'

iatom

this is a place for the actual index. Segid does not have to start from 0 (cut and paste as above, etc).

SEE ALSO

AUTHOR

Demian Riccardi <demianriccardi@gmail.com>

COPYRIGHT AND LICENSE

This software is copyright (c) 2015 by Demian Riccardi.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.