Author: bugman Date: Thu Aug 12 11:32:54 2010 New Revision: 11487 URL: http://svn.gna.org/viewcvs/relax?rev=11487&view=rev Log: Better support for the free rotor frame order model. Modified: 1.3/specific_fns/frame_order.py Modified: 1.3/specific_fns/frame_order.py URL: http://svn.gna.org/viewcvs/relax/1.3/specific_fns/frame_order.py?rev=11487&r1=11486&r2=11487&view=diff ============================================================================== --- 1.3/specific_fns/frame_order.py (original) +++ 1.3/specific_fns/frame_order.py Thu Aug 12 11:32:54 2010 @@ -85,7 +85,7 @@ """ # Initialise the parameter array using the tensor rotation Euler angles (average domain position). - if cdp.model in ['iso cone, torsionless', 'iso cone, free rotor']: + if cdp.model in ['free rotor', 'iso cone, torsionless', 'iso cone, free rotor']: param_vect = [cdp.ave_pos_beta, cdp.ave_pos_gamma] else: param_vect = [cdp.ave_pos_alpha, cdp.ave_pos_beta, cdp.ave_pos_gamma] @@ -97,7 +97,7 @@ param_vect.append(cdp.eigen_gamma) # Frame order eigenframe - the isotropic cone axis. - elif cdp.model in ['iso cone, torsionless', 'iso cone, free rotor']: + elif cdp.model in ['free rotor', 'iso cone, torsionless', 'iso cone, free rotor']: param_vect.append(cdp.axis_theta) param_vect.append(cdp.axis_phi) @@ -499,7 +499,7 @@ # Build the parameter name list. if not len(cdp.params): # The tensor rotation, or average domain position. - if cdp.model not in ['iso cone, torsionless', 'iso cone, free rotor']: + if cdp.model not in ['free rotor', 'iso cone, torsionless', 'iso cone, free rotor']: cdp.params.append('ave_pos_alpha') cdp.params.append('ave_pos_beta') cdp.params.append('ave_pos_gamma') @@ -511,7 +511,7 @@ cdp.params.append('eigen_gamma') # Frame order eigenframe - the isotropic cone axis. - elif cdp.model in ['iso cone, torsionless', 'iso cone, free rotor']: + elif cdp.model in ['free rotor', 'iso cone, torsionless', 'iso cone, free rotor']: cdp.params.append('axis_theta') cdp.params.append('axis_phi') @@ -584,8 +584,11 @@ ave_pos_alpha, ave_pos_beta, ave_pos_gamma, eigen_alpha, eigen_beta, eigen_gamma, cone_theta_x, cone_sigma_max = param_vector elif cdp.model in ['line, torsionless', 'line, free rotor']: ave_pos_alpha, ave_pos_beta, ave_pos_gamma, eigen_alpha, eigen_beta, eigen_gamma, cone_theta_x, cone_sigma_max = param_vector - elif cdp.model in ['rotor', 'free rotor']: + elif cdp.model in ['rotor']: ave_pos_alpha, ave_pos_beta, ave_pos_gamma, eigen_alpha, eigen_beta, eigen_gamma, cone_theta_x, cone_sigma_max = param_vector + elif cdp.model in ['free rotor']: + ave_pos_beta, ave_pos_gamma, axis_theta, axis_phi = param_vector + ave_pos_alpha = 0.0 elif cdp.model == 'rigid': ave_pos_alpha, ave_pos_beta, ave_pos_gamma = param_vector @@ -789,7 +792,7 @@ # Parameters. if (set == 'all' or set == 'params') and hasattr(cdp, 'model'): # Initialise the parameter array using the tensor rotation Euler angles (average domain position). - if cdp.model not in ['iso cone, torsionless', 'iso cone, free rotor']: + if cdp.model not in ['free rotor', 'iso cone, torsionless', 'iso cone, free rotor']: names.append('ave_pos_alpha%s' % suffix) names.append('ave_pos_beta%s' % suffix) names.append('ave_pos_gamma%s' % suffix) @@ -801,7 +804,7 @@ names.append('eigen_gamma%s' % suffix) # Frame order eigenframe - the isotropic cone axis. - elif cdp.model in ['iso cone, torsionless', 'iso cone, free rotor']: + elif cdp.model in ['free rotor', 'iso cone, torsionless', 'iso cone, free rotor']: names.append('axis_theta%s' % suffix) names.append('axis_phi%s' % suffix)