mailr22250 - /trunk/auto_analyses/relax_disp.py


Others Months | Index by Date | Thread Index
>>   [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Header


Content

Posted by edward on February 23, 2014 - 19:33:
Author: bugman
Date: Sun Feb 23 19:33:39 2014
New Revision: 22250

URL: http://svn.gna.org/viewcvs/relax?rev=22250&view=rev
Log:
Improvement for the relaxation dispersion auto-analysis.

The names of the data pipes created by the auto-analysis are now unique, but 
appending the name of
the data pipe bundle to the end.  This allows multiple dispersion 
auto-analyses to exist within one
relax state file.


Modified:
    trunk/auto_analyses/relax_disp.py

Modified: trunk/auto_analyses/relax_disp.py
URL: 
http://svn.gna.org/viewcvs/relax/trunk/auto_analyses/relax_disp.py?rev=22250&r1=22249&r2=22250&view=diff
==============================================================================
--- trunk/auto_analyses/relax_disp.py (original)
+++ trunk/auto_analyses/relax_disp.py Sun Feb 23 19:33:39 2014
@@ -214,6 +214,20 @@
 
             # Run the error analysis on the subset.
             self.interpreter.spectrum.error_analysis(subset=ids)
+
+
+    def name_pipe(self, prefix):
+        """Generate a unique name for the data pipe.
+
+        @param prefix:  The prefix of the data pipe name.
+        @type prefix:   str
+        """
+
+        # The unique pipe name.
+        name = "%s - %s" % (prefix, self.pipe_bundle)
+
+        # Return the name.
+        return name
 
 
     def nesting(self, model=None):
@@ -377,19 +391,22 @@
         # Printout.
         subsection(file=sys.stdout, text="Pre-run parameters", prespace=1)
 
+        # The data pipe name.
+        pipe_name = self.name_pipe('pre')
+
         # Create a temporary data pipe for the previous run.
-        self.interpreter.pipe.create(pipe_name='pre', pipe_type='relax_disp')
+        self.interpreter.pipe.create(pipe_name=pipe_name, 
pipe_type='relax_disp')
 
         # Load the previous results.
         path = self.pre_run_dir + sep + model
         self.interpreter.results.read(file='results', dir=path)
 
         # Copy the parameters.
-        self.interpreter.relax_disp.parameter_copy(pipe_from='pre', 
pipe_to=model)
+        self.interpreter.relax_disp.parameter_copy(pipe_from=pipe_name, 
pipe_to=model)
 
         # Finally, switch back to the original data pipe and delete the 
temporary one.
         self.interpreter.pipe.switch(pipe_name=model)
-        self.interpreter.pipe.delete(pipe_name='pre')
+        self.interpreter.pipe.delete(pipe_name=pipe_name)
 
 
     def run(self):
@@ -409,7 +426,7 @@
             path = self.results_dir+sep+model
 
             # The name of the data pipe for the model.
-            model_pipe = model
+            model_pipe = self.name_pipe(model)
             if self.is_model_for_selection(model):
                 self.model_pipes.append(model_pipe)
 
@@ -440,7 +457,7 @@
 
             # Copy the R2eff values from the R2eff model data pipe.
             if model != MODEL_R2EFF and MODEL_R2EFF in self.models:
-                self.interpreter.value.copy(pipe_from=MODEL_R2EFF, 
pipe_to=model, param='r2eff')
+                
self.interpreter.value.copy(pipe_from=self.pipe_name(MODEL_R2EFF), 
pipe_to=model_pipe, param='r2eff')
 
             # Calculate the R2eff values for the fixed relaxation time 
period data types.
             if model == MODEL_R2EFF and not has_exponential_exp_type():




Related Messages


Powered by MHonArc, Updated Sun Feb 23 22:20:04 2014