Package bmrblib :: Package NMR_parameters :: Module chem_shift_anisotropy
[hide private]
[frames] | no frames]

Source Code for Module bmrblib.NMR_parameters.chem_shift_anisotropy

  1  ############################################################################# 
  2  #                                                                           # 
  3  # The BMRB library.                                                         # 
  4  #                                                                           # 
  5  # Copyright (C) 2009-2013 Edward d'Auvergne                                 # 
  6  #                                                                           # 
  7  # This program is free software: you can redistribute it and/or modify      # 
  8  # it under the terms of the GNU General Public License as published by      # 
  9  # the Free Software Foundation, either version 3 of the License, or         # 
 10  # (at your option) any later version.                                       # 
 11  #                                                                           # 
 12  # This program is distributed in the hope that it will be useful,           # 
 13  # but WITHOUT ANY WARRANTY; without even the implied warranty of            # 
 14  # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the             # 
 15  # GNU General Public License for more details.                              # 
 16  #                                                                           # 
 17  # You should have received a copy of the GNU General Public License         # 
 18  # along with this program.  If not, see <http://www.gnu.org/licenses/>.     # 
 19  #                                                                           # 
 20  ############################################################################# 
 21   
 22  # Module docstring. 
 23  """The chemical shift anisotropy data saveframe category. 
 24   
 25  This file is part of the U{BMRB library<https://gna.org/projects/bmrblib>}. 
 26   
 27  For example, see http://www.bmrb.wisc.edu/dictionary/3.1html_frame/frame_SaveFramePage.html#chem_shift_anisotropy 
 28  """ 
 29   
 30  # relax module imports. 
 31  from bmrblib.base_classes import BaseSaveframe, TagCategory, TagCategoryFree 
 32   
 33   
34 -class ChemShiftAnisotropySaveframe(BaseSaveframe):
35 """The chemical shift anisotropy data saveframe class.""" 36 37 # Class variables. 38 sf_label = 'chem_shift_anisotropy' 39
40 - def add_tag_categories(self):
41 """Create the tag categories.""" 42 43 # The tag category objects. 44 self.tag_categories.append(ChemShiftAnisotropy(self)) 45 self.tag_categories.append(CSAnisotropyExperiment(self)) 46 self.tag_categories.append(CSAnisotropySoftware(self)) 47 self.tag_categories.append(CSAnisotropy(self))
48 49 50
51 -class ChemShiftAnisotropy(TagCategoryFree):
52 """Base class for the ChemShiftAnisotropy tag category.""" 53
54 - def __init__(self, sf):
55 """Setup the ChemShiftAnisotropy tag category. 56 57 @param sf: The saveframe object. 58 @type sf: saveframe instance 59 """ 60 61 # Initialise the baseclass. 62 super(ChemShiftAnisotropy, self).__init__(sf) 63 64 # Add the tag info. 65 self.add(key='ChemShiftAnisotropyID', tag_name='ID', var_name='count_str', format='int') 66 self.add(key='DataFileName', tag_name='Data_file_name', var_name='file_name') 67 self.add(key='SampleConditionListLabel', tag_name='Sample_conditions_label', var_name='sample_cond_list_label', default='$conditions_1') 68 self.add(key='ValUnits', tag_name='Val_units', var_name='units', default='ppm')
69 70 71
72 -class CSAnisotropyExperiment(TagCategory):
73 """Base class for the CSAnisotropyExperiment tag category.""" 74
75 - def __init__(self, sf):
76 """Setup the CSAnisotropyExperiment tag category. 77 78 @param sf: The saveframe object. 79 @type sf: saveframe instance 80 """ 81 82 # Initialise the baseclass. 83 super(CSAnisotropyExperiment, self).__init__(sf) 84 85 # Add the tag info. 86 self.add(key='SampleLabel', tag_name='Sample_label', var_name='sample_label', default='$sample_1')
87 88 89
90 -class CSAnisotropySoftware(TagCategory):
91 """Base class for the CSAnisotropySoftware tag category."""
92 93 94
95 -class CSAnisotropy(TagCategory):
96 """Base class for the CSAnisotropy tag category.""" 97
98 - def __init__(self, sf):
99 """Setup the CSAnisotropy tag category. 100 101 @param sf: The saveframe object. 102 @type sf: saveframe instance 103 """ 104 105 # Initialise the baseclass. 106 super(CSAnisotropy, self).__init__(sf) 107 108 # Add the tag info. 109 self.add(key='CSAnisotropyID', tag_name='ID', var_name='data_ids', format='int') 110 self.add(key='AssemblyAtomID', tag_name='Assembly_atom_ID', var_name='assembly_atom_ids') 111 self.add(key='EntityAssemblyID', tag_name='Entity_assembly_ID', var_name='entity_assembly_ids') 112 self.add(key='EntityID', tag_name='Entity_ID', var_name='entity_ids', format='int') 113 self.add(key='CompIndexID', tag_name='Residue_seq_code', var_name='res_nums', format='int') 114 self.add(key='SeqID', tag_name='Seq_ID', var_name='seq_id') 115 self.add(key='CompID', tag_name='Residue_label', var_name='res_names') 116 self.add(key='AtomID', tag_name='Atom_name', var_name='atom_names') 117 self.add(key='AtomType', tag_name='Atom_type', var_name='atom_types') 118 self.add(key='AtomIsotopeNumber', tag_name='Atom_isotope_number', var_name='isotope', format='int') 119 self.add(key='Val', tag_name='value', var_name='csa', format='float') 120 self.add(key='ValErr', tag_name='value_error', var_name='csa_error', format='float') 121 self.add(key='ChemShiftAnisotropyID', tag_name='Chem_shift_anisotropy_ID', var_name='count_str')
122