Hi Ed,

Won't the variable "len(file_data[0])" change size depending on the
number of datasets used in relax but also on the diffusion tensor selected ?

For example, there are 51 fields for a 'local_tm' diffusion using 8
datasets, but 58 fields for an ellipsoid using 9 datasets...

Maybe the check for version 1.2 could be something more like :

--------------------------
if file_data[0][0:8] == ['Num', 'Name', 'Selected', 'Data_set',
'Nucleus', 'Model', 'Equation', 'Params']:
--------------------------

instead of

--------------------------
if len(file_data[0]) == 54 and file_data[0][0:8] == ['Num', 'Name',
'Selected', 'Data_set', 'Nucleus', 'Model', 'Equation', 'Params']:
--------------------------

This change works for the two cases in example above...

What do you think ?

Ciao !


Séb





[EMAIL PROTECTED] wrote:
> Author: bugman
> Date: Wed May 28 21:35:55 2008
> New Revision: 6275
>
> URL: http://svn.gna.org/viewcvs/relax?rev=6275&view=rev
> Log:
> Wrote a method for determining which relax version the results file belongs 
> to.
>
>
> Modified:
>     1.3/specific_fns/model_free/results.py
>
> Modified: 1.3/specific_fns/model_free/results.py
> URL: 
> http://svn.gna.org/viewcvs/relax/1.3/specific_fns/model_free/results.py?rev=6275&r1=6274&r2=6275&view=diff
> ==============================================================================
> --- 1.3/specific_fns/model_free/results.py (original)
> +++ 1.3/specific_fns/model_free/results.py Wed May 28 21:35:55 2008
> @@ -38,6 +38,32 @@
>  class Results:
>      """Class containing methods specific to the model-free results files."""
>  
> +    def __determine_version(self, file_data):
> +        """Determine which relax version the results file belongs to.
> +
> +        @param file_data:   The processed results file data.
> +        @type file_data:    list of lists of str
> +        @return:            The relax version number.
> +        @rtype:             str
> +        @raises RelaxError: If the relax version the model-free results file 
> belongs to cannot be
> +                            determined.
> +        """
> +
> +        # relax 1.2 results file (test for the 1.2 header line).
> +        if len(file_data[0]) == 54 and file_data[0][0:8] == ['Num', 'Name', 
> 'Selected', 'Data_set', 'Nucleus', 'Model', 'Equation', 'Params']:
> +            version = '1.2'
> +
> +        # Can't determine the file version.
> +        else:
> +            raise RelaxError, "Cannot determine the relax version the 
> model-free results file belongs to."
> +
> +        # Print out.
> +        print "relax " + version + " model-free results file."
> +
> +        # Return the version.
> +        return version
> +
> +
>      def read_columnar_col_numbers(self, header):
>          """Function for sorting the column numbers from the columnar 
> formatted results file."""
>  
> @@ -721,6 +747,9 @@
>          @type verbosity:    int
>          """
>  
> +        # Determine the results file version.
> +        version = self.__determine_version(file_data)
> +
>          # Extract and remove the header.
>          header = file_data[0]
>          file_data = file_data[1:]
>
>
> _______________________________________________
> relax (http://nmr-relax.com)
>
> This is the relax-commits mailing list
> [EMAIL PROTECTED]
>
> To unsubscribe from this list, get a password
> reminder, or change your subscription options,
> visit the list information page at
> https://mail.gna.org/listinfo/relax-commits
>
>   



_______________________________________________
relax (http://nmr-relax.com)

This is the relax-devel mailing list
[email protected]

To unsubscribe from this list, get a password
reminder, or change your subscription options,
visit the list information page at
https://mail.gna.org/listinfo/relax-devel

Reply via email to