Author: bugman Date: Mon Mar 9 15:10:26 2009 New Revision: 8942 URL: http://svn.gna.org/viewcvs/relax?rev=8942&view=rev Log: The order_parameters saveframes are now created (although are missing all the contents). Modified: branches/bmrb/bmrblib/nmr_star_dict.py branches/bmrb/bmrblib/nmr_star_dict_v3_1.py branches/bmrb/bmrblib/thermodynamics/order_parameters.py branches/bmrb/bmrblib/thermodynamics/order_parameters_v3_1.py Modified: branches/bmrb/bmrblib/nmr_star_dict.py URL: http://svn.gna.org/viewcvs/relax/branches/bmrb/bmrblib/nmr_star_dict.py?rev=8942&r1=8941&r2=8942&view=diff ============================================================================== --- branches/bmrb/bmrblib/nmr_star_dict.py (original) +++ branches/bmrb/bmrblib/nmr_star_dict.py Mon Mar 9 15:10:26 2009 @@ -32,6 +32,7 @@ from bmrblib.kinetics.heteronucl_NOEs import HeteronuclNOESaveframe from bmrblib.kinetics.heteronucl_T1_relaxation import HeteronuclT1Saveframe from bmrblib.kinetics.heteronucl_T2_relaxation import HeteronuclT2Saveframe +from bmrblib.thermodynamics.order_parameters import OrderParameterSaveframe from pystarlib.File import File @@ -65,6 +66,9 @@ self.heteronucl_T1_relaxation = HeteronuclT1Saveframe(self.data.datanodes) self.heteronucl_T2_relaxation = HeteronuclT2Saveframe(self.data.datanodes) + # Initialise the thermodynamics saveframe supergroup. + self.order_parameters = OrderParameterSaveframe(self.data.datanodes) + def read(self): """Read the data from a BMRB NMR-STAR formatted file.""" Modified: branches/bmrb/bmrblib/nmr_star_dict_v3_1.py URL: http://svn.gna.org/viewcvs/relax/branches/bmrb/bmrblib/nmr_star_dict_v3_1.py?rev=8942&r1=8941&r2=8942&view=diff ============================================================================== --- branches/bmrb/bmrblib/nmr_star_dict_v3_1.py (original) +++ branches/bmrb/bmrblib/nmr_star_dict_v3_1.py Mon Mar 9 15:10:26 2009 @@ -32,6 +32,7 @@ from bmrblib.kinetics.heteronucl_NOEs_v3_1 import HeteronuclNOESaveframe_v3_1 from bmrblib.kinetics.heteronucl_T1_relaxation_v3_1 import HeteronuclT1Saveframe_v3_1 from bmrblib.kinetics.heteronucl_T2_relaxation_v3_1 import HeteronuclT2Saveframe_v3_1 +from bmrblib.thermodynamics.order_parameters_v3_1 import OrderParameterSaveframe_v3_1 from bmrblib.nmr_star_dict import NMR_STAR @@ -48,3 +49,6 @@ self.heteronucl_NOEs = HeteronuclNOESaveframe_v3_1(self.data.datanodes) self.heteronucl_T1_relaxation = HeteronuclT1Saveframe_v3_1(self.data.datanodes) self.heteronucl_T2_relaxation = HeteronuclT2Saveframe_v3_1(self.data.datanodes) + + # Initialise the thermodynamics saveframe supergroup. + self.order_parameters = OrderParameterSaveframe_v3_1(self.data.datanodes) Modified: branches/bmrb/bmrblib/thermodynamics/order_parameters.py URL: http://svn.gna.org/viewcvs/relax/branches/bmrb/bmrblib/thermodynamics/order_parameters.py?rev=8942&r1=8941&r2=8942&view=diff ============================================================================== --- branches/bmrb/bmrblib/thermodynamics/order_parameters.py (original) +++ branches/bmrb/bmrblib/thermodynamics/order_parameters.py Mon Mar 9 15:10:26 2009 @@ -28,18 +28,13 @@ # relax module imports. from bmrblib.misc import no_missing, translate -from bmrblib.kinetics.relax_base import HeteronuclRxList, RelaxSaveframe, Rx from bmrblib.tag_category import TagCategory from pystarlib.SaveFrame import SaveFrame from pystarlib.TagTable import TagTable -class HeteronuclNOESaveframe(RelaxSaveframe): - """The Heteronuclear NOE data saveframe class.""" - - # Saveframe variables. - label = 'NOE' - +class OrderParameterSaveframe: + """The Order parameters data saveframe class.""" def __init__(self, datanodes): """Initialise the class, placing the pystarlib data nodes into the namespace. @@ -51,54 +46,39 @@ # Place the data nodes into the namespace. self.datanodes = datanodes - # The number of relaxation data sets. - self.noe_inc = 0 - # Add the specific tag category objects. self.add_tag_categories() - def add(self, frq=None, res_nums=None, res_names=None, atom_names=None, data=None, errors=None): + def add(self, res_nums=None, res_names=None, atom_names=None): """Add relaxation data to the data nodes. - @keyword frq: The spectrometer proton frequency, in Hz. - @type frq: float @keyword res_nums: The residue number list. @type res_nums: list of int @keyword res_names: The residue name list. @type res_names: list of str @keyword atom_names: The atom name list. @type atom_names: list of str - @keyword data: The relaxation data. - @type data: list of float - @keyword errors: The errors associated with the relaxation data. - @type errors: list of float """ # Check the ID info. - no_missing(res_nums, 'residue numbers of the ' + `int(frq*1e-6)` + ' MHz NOE data') - no_missing(res_names, 'residue names of the ' + `int(frq*1e-6)` + ' MHz NOE data') - no_missing(atom_names, 'atom names of the ' + `int(frq*1e-6)` + ' MHz NOE data') + no_missing(res_nums, 'residue numbers of the model-free data') + no_missing(res_names, 'residue names of the model-free data') + no_missing(atom_names, 'atom names of the model-free data') # Place the args into the namespace. - self.frq = frq self.res_nums = translate(res_nums) self.res_names = translate(res_names) self.atom_names = translate(atom_names) - self.data = translate(data) - self.errors = translate(errors) - - # Set up the NOE specific variables. - self.noe_inc = self.noe_inc + 1 # Initialise the save frame. - self.frame = SaveFrame(title='heteronuclear_'+self.label+'_list_'+`self.noe_inc`) + self.frame = SaveFrame(title='order_parameters') # Create the tag categories. - self.heteronuclRxlist.create() - self.heteronuclRxexperiment.create() - self.heteronuclRxsoftware.create() - self.Rx.create() + self.order_parameter_list.create() + self.order_parameter_experiment.create() + self.order_parameter_software.create() + self.order_parameter.create() # Add the saveframe to the data nodes. self.datanodes.append(self.frame) @@ -108,30 +88,27 @@ """Create the v3.1 tag categories.""" # The tag category objects. - self.heteronuclRxlist = HeteronuclNOEList(self) - self.heteronuclRxexperiment = HeteronuclNOEExperiment(self) - self.heteronuclRxsoftware = HeteronuclNOESoftware(self) - self.Rx = HeteronuclNOE(self) - - -class HeteronuclNOEList(HeteronuclRxList): - """Base class for the HeteronuclNOEList tag category.""" - - def create(self): - """Create the HeteronuclNOEList tag category.""" + self.order_parameter_list = OrderParameterList(self) + self.order_parameter_experiment = OrderParameterExperiment(self) + self.order_parameter_software = OrderParameterSoftware(self) + self.order_parameter = OrderParameter(self) + + +class OrderParameterList(TagCategory): + """Base class for the OrderParameterList tag category.""" + + def create(self): + """Create the OrderParameterList tag category.""" # The save frame category. - self.sf.frame.tagtables.append(TagTable(free=True, tagnames=[self.tag_names_full['SfCategory']], tagvalues=[[self.sf.label+'_relaxation']])) + self.sf.frame.tagtables.append(TagTable(free=True, tagnames=[self.tag_names_full['SfCategory']], tagvalues=[['S2_parameters']])) # NOE ID number. - if self.tag_names.has_key('HeteronuclNOEListID'): - self.sf.frame.tagtables.append(TagTable(free=True, tagnames=[self.tag_names_full['HeteronuclNOEListID']], tagvalues=[[str(self.sf.noe_inc)]])) + if self.tag_names.has_key('OrderParameterListID'): + self.sf.frame.tagtables.append(TagTable(free=True, tagnames=[self.tag_names_full['OrderParameterListID']], tagvalues=[['1']])) # Sample info. self.sf.frame.tagtables.append(TagTable(free=True, tagnames=[self.tag_names_full['SampleConditionListLabel']], tagvalues=[['$conditions_1']])) - - # NMR info. - self.sf.frame.tagtables.append(TagTable(free=True, tagnames=[self.tag_names_full['SpectrometerFrequency1H']], tagvalues=[[str(self.sf.frq/1e6)]])) def tag_setup(self, tag_category_label=None, sep=None): @@ -152,11 +129,11 @@ self.tag_names['SpectrometerFrequency1H'] = 'Spectrometer_frequency_1H' -class HeteronuclNOEExperiment(TagCategory): - """Base class for the HeteronuclNOEExperiment tag category.""" - - def create(self): - """Create the HeteronuclNOEExperiment tag category.""" +class OrderParameterExperiment(TagCategory): + """Base class for the OrderParameterExperiment tag category.""" + + def create(self): + """Create the OrderParameterExperiment tag category.""" # Sample info. self.sf.frame.tagtables.append(TagTable(free=True, tagnames=[self.tag_names_full['SampleLabel']], tagvalues=[['$sample_1']])) @@ -178,23 +155,23 @@ self.tag_names['SampleLabel'] = 'Sample_label' -class HeteronuclNOESoftware(TagCategory): - """Base class for the HeteronuclNOESoftware tag category.""" - - def create(self): - """Create the HeteronuclNOESoftware tag category.""" - - -class HeteronuclNOE(Rx): - """Base class for the HeteronuclNOE tag category.""" - - def create(self): - """Create the HeteronuclNOE tag category.""" +class OrderParameterSoftware(TagCategory): + """Base class for the OrderParameterSoftware tag category.""" + + def create(self): + """Create the OrderParameterSoftware tag category.""" + + +class OrderParameter(TagCategory): + """Base class for the OrderParameter tag category.""" + + def create(self): + """Create the OrderParameter tag category.""" # The relaxation tag names. tag_names = [] missing = [] - for key in ['SeqID', 'CompID', 'AtomID', 'Val', 'ValErr']: + for key in ['SeqID', 'CompID', 'AtomID']: if not self.tag_names.has_key(key): missing.append(key) else: @@ -208,10 +185,6 @@ tag_values.append(self.sf.res_names) if 'AtomID' not in missing: tag_values.append(self.sf.atom_names) - if 'Val' not in missing: - tag_values.append(self.sf.data) - if 'ValErr' not in missing: - tag_values.append(self.sf.errors) # Add the data. table = TagTable(tagnames=tag_names, tagvalues=tag_values) @@ -236,5 +209,3 @@ self.tag_names['SeqID'] = 'Residue_seq_code' self.tag_names['CompID'] = 'Residue_label' self.tag_names['AtomID'] = 'Atom_name' - self.tag_names['Val'] = self.sf.label+'_value' - self.tag_names['ValErr'] = self.sf.label+'_value_error' Modified: branches/bmrb/bmrblib/thermodynamics/order_parameters_v3_1.py URL: http://svn.gna.org/viewcvs/relax/branches/bmrb/bmrblib/thermodynamics/order_parameters_v3_1.py?rev=8942&r1=8941&r2=8942&view=diff ============================================================================== --- branches/bmrb/bmrblib/thermodynamics/order_parameters_v3_1.py (original) +++ branches/bmrb/bmrblib/thermodynamics/order_parameters_v3_1.py Mon Mar 9 15:10:26 2009 @@ -27,61 +27,59 @@ """ # relax module imports. -from bmrblib.kinetics.heteronucl_NOEs import HeteronuclNOESaveframe, HeteronuclNOEList, HeteronuclNOEExperiment, HeteronuclNOESoftware, HeteronuclNOE +from bmrblib.thermodynamics.order_parameters import OrderParameterSaveframe, OrderParameterList, OrderParameterExperiment, OrderParameterSoftware, OrderParameter -class HeteronuclNOESaveframe_v3_1(HeteronuclNOESaveframe): - """The v3.1 Heteronuclear NOE data saveframe class.""" +class OrderParameterSaveframe_v3_1(OrderParameterSaveframe): + """The v3.1 Order parameters data saveframe class.""" def add_tag_categories(self): """Create the v3.1 tag categories.""" # The tag category objects. - self.heteronuclRxlist = HeteronuclNOEList_v3_1(self) - self.heteronuclRxexperiment = HeteronuclNOEExperiment_v3_1(self) - self.heteronuclRxsoftware = HeteronuclNOESoftware_v3_1(self) - self.Rx = HeteronuclNOE_v3_1(self) + self.order_parameter_list = OrderParameterList_v3_1(self) + self.order_parameter_experiment = OrderParameterExperiment_v3_1(self) + self.order_parameter_software = OrderParameterSoftware_v3_1(self) + self.order_parameter = OrderParameter_v3_1(self) -class HeteronuclNOEList_v3_1(HeteronuclNOEList): - """v3.1 HeteronuclNOEList tag category.""" +class OrderParameterList_v3_1(OrderParameterList): + """v3.1 OrderParameterList tag category.""" def tag_setup(self, tag_category_label=None, sep=None): # Execute the base class tag_setup() method. - HeteronuclNOEList.tag_setup(self, tag_category_label='Heteronucl_NOE_list', sep=sep) + OrderParameterList.tag_setup(self, tag_category_label='Order_parameter_list', sep=sep) # Tag names for the relaxation data. self.tag_names['SfCategory'] = 'Sf_category' - self.tag_names['HeteronuclNOEListID'] = 'ID' + self.tag_names['OrderParameterListID'] = 'ID' self.tag_names['SampleConditionListLabel'] = 'Sample_condition_list_label' -class HeteronuclNOEExperiment_v3_1(HeteronuclNOEExperiment): - """v3.1 HeteronuclNOEExperiment tag category.""" +class OrderParameterExperiment_v3_1(OrderParameterExperiment): + """v3.1 OrderParameterExperiment tag category.""" def tag_setup(self, tag_category_label=None, sep=None): # Execute the base class tag_setup() method. - HeteronuclNOEExperiment.tag_setup(self, tag_category_label='Heteronucl_NOE_experiment', sep=sep) + OrderParameterExperiment.tag_setup(self, tag_category_label='Order_parameter_experiment', sep=sep) -class HeteronuclNOESoftware_v3_1(HeteronuclNOESoftware): - """v3.1 HeteronuclNOESoftware tag category.""" +class OrderParameterSoftware_v3_1(OrderParameterSoftware): + """v3.1 OrderParameterSoftware tag category.""" def tag_setup(self, tag_category_label=None, sep=None): # Execute the base class tag_setup() method. - HeteronuclNOESoftware.tag_setup(self, tag_category_label='Heteronucl_NOE_software', sep=sep) + OrderParameterSoftware.tag_setup(self, tag_category_label='Order_parameter_software', sep=sep) -class HeteronuclNOE_v3_1(HeteronuclNOE): - """v3.1 HeteronuclNOE tag category.""" +class OrderParameter_v3_1(OrderParameter): + """v3.1 OrderParameter tag category.""" def tag_setup(self, tag_category_label=None, sep=None): # Execute the base class tag_setup() method. - HeteronuclNOE.tag_setup(self, tag_category_label='Heteronucl_NOE', sep=sep) + OrderParameter.tag_setup(self, tag_category_label='Order_param', sep=sep) # Tag names for the relaxation data. self.tag_names['SeqID'] = 'Seq_ID' self.tag_names['CompID'] = 'Comp_ID' self.tag_names['AtomID'] = 'Atom_ID' - self.tag_names['Val'] = 'Val' - self.tag_names['ValErr'] = 'Val_err'