Open main menu

Changes

Relax 4.0.0

11,846 bytes added, 10:14, 14 October 2015
Links to the API documentation (part 6).
* Updated all of the Scipy quadratic integration frame order target functions. A number of the data structures in the target function class have been redesigned since these target functions were deleted. All of the func_*_quad_int*() target functions have been updated for these changes.
* Updated all of the &chi;<sup>2</sup> value checks for the Frame_order.test_cam_quad_int_* system tests. This is only for those tests which use PCS data - the RDC only test &chi;<sup>2</sup> values are the same as in the Frame_order.test_cam_qr_int_* system tests. In all cases, the &chi;<sup>2</sup> value is lower for the more accurate SciPy quadratic integration as compared to the quasi-random Sobol' integration, as expected.
* Implemented the SciPy quadratic integration target function for the double rotor frame order model. This simply follows from what all the other quadratic integration target functions and [http://www.nmr-relax.com/api/4.0/lib.frame_order-module.html lib.frame_order module ] functions do.
* Changed the &chi;<sup>2</sup> value checks in the Frame_order.test_cam_quad_int_double_rotor* system tests. These were the values for the quasi-random Sobol' integration and needed updating for the SciPy quadratic integration.
* Removed the skip_tests argument for the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#__init__ Frame_order system tests __init__() method]. This argument, which was used to manually turn on or off the blacklisted tests, is no longer needed due to the new --no-skip relax command line flag which will enable all blacklisted tests.
* The splitting of the rigid model grid search into rotation and translation parts is now optional. In the [http://www.nmr-relax.com/api/4.0/auto_analyses.frame_order-module.html frame order auto-analysis], the rigid_grid_split argument has been introduced. The alternating algorithm of performing a grid search over the rotational space followed by translation is now optional and turned off by default. The reason is because the global minimum is sometimes missed with this shortcut algorithm.
* Speedup of the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_auto_analysis Frame_order.test_auto_analysis system test]. The splitting of the rigid model grid search into rotation and translation parts has been reactivated.
* Created the [http://www.nmr-relax.com/api/4.0/auto_analyses.frame_order.Optimisation_settings-class.html#has_grid Optimisation.has_grid() method ] for the [http://www.nmr-relax.com/api/4.0/auto_analyses.frame_order-module.html frame order auto-analysis]. This is used to test if the optimisation settings object has a grid search defined.
* The grid search can now be skipped for the rigid model in the [http://www.nmr-relax.com/api/4.0/auto_analyses.frame_order-module.html frame order auto-analysis]. If the input 3D structures are close to the real solution, the grid search over the translational and rotation parameters of the rigid model could be skipped. This speeds up the analysis and can help find the real solution in problematic cases.
* The intermediate results storing can now be turned off in the [http://www.nmr-relax.com/api/4.0/auto_analyses.frame_order-module.html frame order auto-analysis]. The new store_intermediate Boolean argument has been added to the analysis to allow the storage of these results to be turned on or off.
* The compression level for results files can now be set in the [http://www.nmr-relax.com/api/4.0/auto_analyses.frame_order-module.html frame order auto-analysis]. This is via the new argument results_compress_type, which is used to set the compress_type argument of the [http://www.nmr-relax.com/manual/results_write.html results.write user function]. The results reading parts of the auto-analysis have been updated to allow uncompressed, bzip2 compressed, and gzip compressed files to be handled.
* Added a printout of the frame order model in the target function setup function. This is printed out when the [http://www.nmr-relax.com/manual/minimise_calculate.html minimise.calculate], [http://www.nmr-relax.com/manual/minimise_grid_search.html minimise.grid_search], or [http://www.nmr-relax.com/manual/minimise_execute.html minimise.execute] user functions are called, and is for better feedback, especially in the auto-analysis where the repetitive optimisations can be confusing.
* Updated the frame order analysis for the [http://www.nmr-relax.com/manual/structure_load_spins.html structure.load_spins user function ] changes. The [http://www.nmr-relax.com/api/4.0/specific_analyses.frame_order.optimisation-module.html#minimise_setup_atomic_pos minimise_setup_atomic_pos() function] of the [http://www.nmr-relax.com/api/4.0/specific_analyses.frame_order.optimisation-module.html specific_analyses.frame_order.optimisation module] now handles the mixed type spin.pos variable correctly.
* The data pipe containing a PCS subset is now optional in the [http://www.nmr-relax.com/api/4.0/auto_analyses.frame_order-module.html frame order auto-analysis]. This is for systems which have so little data that a subset makes no sense.
* Redesigned the optimisation steps for the [http://www.nmr-relax.com/api/4.0/auto_analyses.frame_order-module.html frame order auto-analysis]. The code has been significantly simplified as the optimisation for the PCS subset and full data set was the same. The code duplication has been eliminated by combining it into the new [http://www.nmr-relax.com/api/4.0/auto_analyses.frame_order.Frame_order_analysis-class.html#optimisation optimisation() method]. The check for the PCS subset has also been expanded so that it is skipped if the subset data pipe is not supplied, even if an optimisation object for the subset has been (this should prevent strange errors when the auto-analysis is incorrectly used). A side effect of this code merger is that the zooming grid search has now been activated for the full PCS data set. This is of great benefit when a PCS subset is not being used.
* The [http://www.nmr-relax.com/manual/minimise_execute.html minimise.execute user function] skip_preset flag is now False in the [http://www.nmr-relax.com/api/4.0/auto_analyses.frame_order-module.html frame order auto-analysis]. This is for the main model optimisation. Without this flag set, the grid search for the pivot point position for the rotor model was being skipped at the first zoom level.
* The pivot point can now be excluded from the grid search in the [http://www.nmr-relax.com/api/4.0/auto_analyses.frame_order-module.html frame order auto-analysis]. If the initial pivot point is known to be reasonable, then it may be possible to skip it in the grid search for the rotor frame order model. This can lead to a speedup of the analysis and can help with stability. The pivot_search argument has been added to the [http://www.nmr-relax.com/api/4.0/auto_analyses.frame_order.Optimisation_settings-class.html#add_grid auto-analysis Optimisation.add_grid() method ] to enable this. The [http://www.nmr-relax.com/api/4.0/auto_analyses.frame_order.Optimisation_settings-class.html#get_grid_pivot_search get_grid_pivot_search() method ] has also been added to allow the auto-analysis to query this and turn it off if desired.
* Updated the description of the [http://www.nmr-relax.com/manual/frame_order_permute_axes.html frame_order.permute_axes user function]. This now includes the isotopic cone.
* Replaced the table in the [http://www.nmr-relax.com/manual/frame_order_permute_axes.html frame_order.permute_axes user function]. The original table was an old and incorrect version. This has been replaced by the correct permutation table.
* Improvements for the Grace files produced by the frame_order_simulate.py script. The model name is now set as a variable and is used for the subheading.
* Updated the frame_order_solution.py script for directly calculating the frame order matrix elements. The MODEL variable has been added in preparation for supporting all model types, and this is now added to the file name. The Grace header is now also being automatically generated and this matches that for the frame_order_simulation.py script.
* Zero values can now be handled in the pseudo-ellipse 1<sup>st</sup> degree frame order matrix function. This is in [http://www.nmr-relax.com/api/4.0/lib.frame_order.pseudo_ellipse-module.html#compile_1st_matrix_pseudo_ellipse lib.frame_order.pseudo_ellipse.compile_1st_matrix_pseudo_ellipse()].* Removed some unused code in the pseudo-ellipse 2<sup>nd</sup> degree frame order matrix function. This is the [http://www.nmr-relax.com/api/4.0/lib.frame_order.pseudo_ellipse-module.html#compile_2nd_matrix_pseudo_ellipse compile_2nd_matrix_pseudo_ellipse() function ] in the [http://www.nmr-relax.com/api/4.0/lib.frame_order.pseudo_ellipse-module.html lib.frame_order.pseudo_ellipse module]. The change should make the RDC part of the frame order analysis for the pseudo-ellipse model slightly faster.* Modified the rotate_daeg() function as this is independent of the degree of the frame order matrix. This is the [http://www.nmr-relax.com/api/4.0/lib.frame_order.matrix_ops-module.html#rotate_daeg lib.frame_order.matrix_ops.rotate_daeg() function].* Fix for the [http://www.nmr-relax.com/api/4.0/lib.frame_order.pseudo_ellipse-module.html#compile_1st_matrix_pseudo_ellipse compile_1st_matrix_pseudo_ellipse() function]. This function of the [http://www.nmr-relax.com/api/4.0/lib.frame_order.pseudo_ellipse-module.html lib.frame_order.pseudo_ellipse module ] now can rotate the 1<sup>st</sup> degree frame order matrix out of its eigenframe and into the PDB frame.
* Created an executable Python script for mass converting the frame order matrix Grace graphs. The script converts the *.agr files to EPS and PNG files.
* Modified the frame order matrix Grace graph to EPS/PNG format conversion script. The binary being called is now 'grace' rather than 'xmgrace'. This allows different Grace versions to be used.
* Added all of the Grace graphs produced by the frame_order_solution.py script. These are the graphs of the 1<sup>st</sup> and 2<sup>nd</sup> degree frame order matrix elements, calculated using the functions in lib.frame_order.
* Updated frame_order_simulate.py to be much faster in simulating the frame order matrix elements. The script also matches the Grace file output of the frame_order_solution.py script. The inside() method has been renamed for the pseudo-ellipse and the infrastructure for adding support for the other frame order models has been added. By shifting calculations outside of the loops, the script is now many orders of magnitude faster.
* Implemented the [http://www.nmr-relax.com/api/4.0/lib.frame_order.rotor-module.html#compile_1st_matrix_rotor compile_1st_matrix_rotor() function]. This is for the [http://www.nmr-relax.com/api/4.0/lib.frame_order.rotor -module.html lib.frame_order.rotor module]. The function will calculate the 1<sup>st</sup> degree in-frame frame order matrix for the rotor model.* Created the Grace graphs for the rotor model 1<sup>st</sup> degree frame order matrix elements. These are the values calculated directly from the [http://www.nmr-relax.com/api/4.0/lib.frame_order-module.html lib.frame_order modules]. The graphs were previously all zeros.* Implemented the [http://www.nmr-relax.com/api/4.0/lib.frame_order.free_rotor-module.html#compile_1st_matrix_free_rotor compile_1st_matrix_free_rotor() function]. This is for the [http://www.nmr-relax.com/api/4.0/lib.frame_order.free_rotor-module.html lib.frame_order.free_rotor module]. The function will calculate the 1<sup>st</sup> degree in-frame frame order matrix for the free rotor model.* Created the Grace graphs for the free rotor model 1<sup>st</sup> degree frame order matrix elements. These are the values calculated directly from the [http://www.nmr-relax.com/api/4.0/lib.frame_order-module.html lib.frame_order modules]. The graphs were previously all zeros.* Implemented the [http://www.nmr-relax.com/api/4.0/lib.frame_order.iso_cone-module.html#compile_1st_matrix_iso_cone compile_1st_matrix_iso_cone() function]. This is for the [http://www.nmr-relax.com/api/4.0/lib.frame_order.iso_cone-module.html lib.frame_order.iso_cone module]. The function will calculate the 1<sup>st</sup> degree in-frame frame order matrix for the isotropic cone model.* Created the Grace graphs for the isotropic cone model 1<sup>st</sup> degree frame order matrix elements. These are the values calculated directly from the [http://www.nmr-relax.com/api/4.0/lib.frame_order-module.html lib.frame_order modules]. The graphs were previously all zeros.* Implemented the [http://www.nmr-relax.com/api/4.0/lib.frame_order.iso_cone_torsionless-module.html#compile_1st_matrix_iso_cone_torsionless compile_1st_matrix_iso_cone_torsionless() function]. This is for the [http://www.nmr-relax.com/api/4.0/lib.frame_order.iso_cone_torsionless-module.html lib.frame_order.iso_cone_torsionless module]. The function will calculate the 1<sup>st</sup> degree in-frame frame order matrix for the torsionless isotropic cone model.* Created the Grace graphs for the torsionless isotropic cone 1<sup>st</sup> degree frame order matrix elements. These are the values calculated directly from the [http://www.nmr-relax.com/api/4.0/lib.frame_order-module.html lib.frame_order modules]. The graphs were previously all zeros.* Implemented the [http://www.nmr-relax.com/api/4.0/lib.frame_order.iso_cone_free_rotor-module.html#compile_1st_matrix_iso_cone_free_rotor compile_1st_matrix_iso_cone_free_rotor() function]. This is for the [http://www.nmr-relax.com/api/4.0/lib.frame_order.iso_cone_free_rotor-module.html lib.frame_order.iso_cone_free_rotor module]. The function will calculate the 1<sup>st</sup> degree in-frame frame order matrix for the free rotor isotropic cone model.* Created the Grace graphs for the free rotor isotropic cone 1<sup>st</sup> degree frame order matrix elements. These are the values calculated directly from the [http://www.nmr-relax.com/api/4.0/lib.frame_order-module.html lib.frame_order modules]. The graphs were previously all zeros.* Docstring fixes for the new [http://www.nmr-relax.com/api/4.0/lib.frame_order.iso_cone-module.html#compile_1st_matrix_iso_cone compile_1st_matrix_iso_cone() function].
* A minor speedup for the frame_order_simulate.py script. The angles are now being calculated at the very start prior to the main loop, removing repetitive calculations.
* The frame_order_simulate.py script now uses [http://www.nmr-relax.com/api/4.0/lib.text.progress-module.html#progress_meter lib.text.progress.progress_meter()]. This script for simulating the frame order matrix elements now uses the standard progress meter in relax to simplify the script. This should also speed up the calculations as the progress printouts were slowing down the calculations.
* Simulation of the pseudo-ellipse frame order matrix elements. This is for a simulation of 1,000,000 states for each angle increment, and includes in-frame and out-of-frame and varying of &theta; X, Y, and Z. The resultant Grace graphs have been added to the repository.
* The frame order matrix element simulation script now uses the Kronecker outer product. This allows the frame order matrix to be in the same notation as that used internally in relax. It will cause the colours of the Sijkl_* curves to match between the simulation and solution scripts.
* Added the rotor model to the frame order matrix element simulation script. The generated in-frame and out-of-frame Grace graphs containing the matrix values for 1,000,000 simulation values have been added to the repository. The script was modified so that the rotation is generated by special rotation_*() methods which are aliased depending on the model.
* Added the free rotor model to the frame order matrix element simulation script. The generated in-frame and out-of-frame Grace graphs containing the matrix values for 1,000,000 simulation values have been added to the repository. The inside_free_rotor() method has been added to always return True for the rotation generated by rotation_z_axis().
* Simplifications and fixes for the 1<sup>st</sup> degree frame order matrix calculation for the pseudo-ellipse. The [http://www.nmr-relax.com/api/4.0/lib.frame_order.pseudo_ellipse-module.html#compile_1st_matrix_pseudo_ellipse compile_1st_matrix_pseudo_ellipse() function ] of the [http://www.nmr-relax.com/api/4.0/lib.frame_order.pseudo_ellipse -module .html lib.frame_order.pseudo_ellipse module] has been significantly simplified by shifting a lot of maths outside of the quadratic integration.* Updated all the calculated 1<sup>st</sup> degree frame order matrix graphs for the pseudo-ellipse. The changes are due to the fixes in the [http://www.nmr-relax.com/api/4.0/lib.frame_order.pseudo_ellipse-module.html lib.frame_order.pseudo_ellipse module].
* Simplifications for all of the torsionless pseudo-ellipse frame order matrix equations.
* Implemented the [http://www.nmr-relax.com/api/4.0/lib.frame_order.pseudo_ellipse_torsionless-module.html#compile_1st_matrix_pseudo_ellipse_torsionless compile_1st_matrix_pseudo_ellipse_torsionless() function]. This is for the [http://www.nmr-relax.com/api/4.0/lib.frame_order.pseudo_ellipse_torsionless -module.html lib.frame_order.pseudo_ellipse_torsionless module]. The function will calculate the 1<sup>st</sup> degree in-frame frame order matrix for the torsionless pseudo-ellipse model.* Created the Grace graphs for the torsionless pseudo-ellipse model 1<sup>st</sup> degree frame order matrix. These are the values calculated directly from the [http://www.nmr-relax.com/api/4.0/lib.frame_order-module.html lib.frame_order modules]. The graphs were previously all zeros.* Added the isotropic cone model to the frame order matrix element simulation script. The generated in-frame and out-of-frame Grace graphs for the torsion angle cone_sigma_max, containing the matrix values for 1,000,000 simulation values have been added to the repository. The inside_iso_cone() method has been created to check for the &theta;<sub>x</sub> and &theta;_z <sub>z</sub> angle violations from the rotation_hypersphere() method.
* Simplifications for the inside_*() methods of the frame order matrix element simulation script. The limit() method is now called only once outside of these methods and the maximum cone half-angles passed into the inside_*() methods. Although only slightly faster, this is mainly to simplify the code.
* Alphabetical ordering of methods in the frame order matrix element simulation script.
* Simplification of some of the pseudo-ellipse 2<sup>nd</sup> degree frame order matrix equations.
* More simplifications of the pseudo-ellipse 2<sup>nd</sup> degree frame order matrix equations.
* Integer to float conversions in [http://www.nmr-relax.com/api/4.0/lib.frame_order.pseudo_ellipse-module.html#part_int_daeg2_pseudo_ellipse_13 part_int_daeg2_pseudo_ellipse_13()]. This avoid integer to float conversion during execution, saving a little time for the pseudo-ellipse 2<sup>nd</sup> degree frame order matrix compilation.
* Removal of many repetitive calculations in the pseudo-ellipse 2<sup>nd</sup> degree frame order matrix equations.
* Simplifications of pseudo-ellipse 1<sup>st</sup> degree frame order matrix functions. The xx, yy, and zz have been renamed to 00, 11, and 22 for consistency. And all sigma_max arguments have been dropped as they are not used.
* Small numerical changes for the pseudo-ellipse 2<sup>nd</sup> degree frame order matrix graphs. These are only for the first point close to zero and the changes are minimal, caused by the recent simplifications of the code.
* Created the Grace graphs for the free rotor pseudo-ellipse model 1<sup>st</sup> degree frame order matrix. These are the values calculated directly from the [http://www.nmr-relax.com/api/4.0/lib.frame_order-module.html lib.frame_order modules]. The graphs were previously all zeros.* Implemented the [http://www.nmr-relax.com/api/4.0/lib.frame_order.pseudo_ellipse_free_rotor-module.html#compile_1st_matrix_pseudo_ellipse_free_rotor compile_1st_matrix_pseudo_ellipse_free_rotor() function]. This is for the [http://www.nmr-relax.com/api/4.0/lib.frame_order.pseudo_ellipse_free_rotor-module.html lib.frame_order.pseudo_ellipse_free_rotor module]. The function will calculate the 1<sup>st</sup> degree in-frame frame order matrix for the free_rotor pseudo-ellipse model.
* Speedups and simplifications of the free rotor pseudo-ellipse 2<sup>nd</sup> degree frame order matrix equations.
* Added the torsionless isotropic cone model to the frame order matrix element simulation script.
* Implemented the [http://www.nmr-relax.com/api/4.0/lib.frame_order.double_rotor-module.html#compile_1st_matrix_double_rotor compile_1st_matrix_double_rotor() function]. This is for the [http://www.nmr-relax.com/api/4.0/lib.frame_order.double_rotor-module.html lib.frame_order.double_rotor module]. The function will calculate the 1<sup>st</sup> degree frame order matrix for the double_rotor model.* Created the Grace graphs for the double rotor model 1<sup>st</sup> degree frame order matrix. These are the values calculated directly from the [http://www.nmr-relax.com/api/4.0/lib.frame_order-module.html lib.frame_order modules]. The graphs were previously all zeros.* Recreated all of the simulated pseudo-ellipse frame order matrix element graphs. These are now in the Kronecker product notation so that they will match the graphs calculated using the [http://www.nmr-relax.com/api/4.0/lib.frame_order.pseudo_ellipse-module.html relax lib.frame_order.pseudo_ellipse module].* Fix for the [http://www.nmr-relax.com/api/4.0/lib.frame_order.pseudo_ellipse-module.html#part_int_daeg1_pseudo_ellipse_22 pseudo-ellipse 1<sup>st</sup> degree frame order matrix Daeg22 element].
* Updated all of the pseudo-ellipse 1<sup>st</sup> degree frame order matrix graphs for the recent fix.
* Converted the Sobol' rotation matrices to float32 in the frame order target function. This is to conserve huge amounts of memory to allow for more Sobol' points to be used. For example for the models which use 3D Sobol' points (isotropic cone and pseudo-ellipse), a maximum of 50000 Sobol' points requires 50000000 to be created, using about 15 Gb of RAM.
* A few Frame_order system test updates for the float64 to float32 memory saving changes. The chi-squared value of 3 tests was slightly different.
* Bug fix for the activation of quadratic integration in the [http://www.nmr-relax.com/api/4.0/auto_analyses.frame_order-module.html frame order auto-analysis]. The calls to the [http://www.nmr-relax.com/manual/frame_order_quad_int.html frame_order.quad_int user function] in the [http://www.nmr-relax.com/api/4.0/auto_analyses.frame_order.Frame_order_analysis-class.html#optimisation optimisation() method ] did not supply an argument so the user function was defaulting to False rather than the True value required.
* The [http://www.nmr-relax.com/api/4.0/auto_analyses.frame_order-module.html frame order auto-analysis] summary functions are now more robust. If the data pipe already exists for some reason, it is deleted prior to the new one being created.
* Changed the f[http://www.nmr-relax.com/manual/rame_order_quad_intframe_order_quad_int.html rame_orderframe_order.quad_int user function] argument default to True. This means that calling the user function without arguments will activate the quadratic integration rather than turning it off.
* Added the isotropic cone model frame order matrix simulation graphs for the cone opening angle &theta;<sub>x</sub>.
* Created and added all of the torsionless isotropic cone simulated frame order matrix element graphs.
* Added the frame order matrix element graphs for the double rotor model.
* A divide by zero fix for the torsionless pseudo-ellipse. This is in the [http://www.nmr-relax.com/api/4.0/lib.frame_order.pseudo_ellipse_torsionless-module.html#compile_2nd_matrix_pseudo_ellipse_torsionless compile_2nd_matrix_pseudo_ellipse_torsionless() relax library function].
* A divide by zero fix for the free rotor pseudo-ellipse. This is in the [http://www.nmr-relax.com/api/4.0/lib.frame_order.pseudo_ellipse_free_rotor-module.html#compile_2nd_matrix_pseudo_ellipse_free_rotor compile_2nd_matrix_pseudo_ellipse_free_rotor() relax library function].
* The 1<sup>st</sup> angle for the calculated frame order matrix graphs is 0 for all non pseudo-ellipse models. This is for the frame_order_solution.py script. Only the pseudo-ellipse models where numerical integration is required fail for the angle of 0.0. Therefore the changing of the first angle from 0.0 to 0.01 only occurs for the pseudo-ellipse models. All graphs have been updated.
* The 1<sup>st</sup> pseudo-ellipse torsion angle value in the frame order matrix graphs is now 0.0. Only the cone opening angles set to 0.0 cause a failure in the pseudo-ellipse models, so the torsion angle is now allowed to start at exactly zero.
* Redesign of the free rotor isotropic cone frame order model - the order parameter has been replaced. From the frame order matrix element graphs in test_suite/shared_data/frame_order/sim_vs_pred_matrix, specifically Sijkl_iso_cone_free_rotor_in_frame_theta_x_calc.agr, Sijkl_iso_cone_free_rotor_axis2_1_3_theta_x_calc.agr, and Sijkl_iso_cone_free_rotor_out_of_frame_theta_x_calc.agr, it is clear that the symmetry of the order parameter after 120 degrees causes the 2<sup>nd</sup> degree frame order matrix to be incorrectly estimated. Therefore the S1 order parameter has been replaced with the original cone opening angle cone_theta. All parts of relax have been updated for this large conversion.
* Updated the frame order matrix element graphs for the free rotor isotropic cone fixes. The cone S1 parameter has been converted back to the original cone &theta; opening half-angle, allowing the 2<sup>nd</sup> degree frame order matrix elements to be properly calculated for all motions.
* Eliminated the lib.frame_order.iso_cone.populate_*() functions. The populate_1st_eigenframe_iso_cone() function was unused and incorrect, so it was deleted. The contents of the populate_2nd_eigenframe_iso_cone() function have been shifted [http://www.nmr-relax.com/api/4.0/lib.frame_order.iso_cone-module.html#compile_2nd_matrix_iso_cone compile_2nd_matrix_iso_cone() ] as a separate function is unnecessary. This now matches all the other [http://www.nmr-relax.com/api/4.0/lib.frame_order-module.html lib.frame_order modules].
* Bug fix for the [http://www.nmr-relax.com/manual/frame_order_simulate.html frame_order.simulate user function]. The incorrect model number was being specified and hence the simulation was not starting from the optimised average domain position but rather the arbitrary position of the original structure.
* Manual Python 3 fixes for the dict.key() function which returns a list or iterator in Python 2 or 3. This matches r26519 in trunk.
* Python 3 fixes via 2to3 - the spacing around commas has been fixed. The command used was: 2to3 -j 4 -w -f ws_comma .
* Python 3 fixes via 2to3 - the xrange() function has been replaced by range(). The command used was: 2to3 -j 4 -w -f xrange .
* Started to create the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_pdb_model_rotor_z_axis Frame_order.test_pdb_model_rotor system test]. This will be used to check that the PDB representations of the frame order motions are correct.
* Modified the [http://www.nmr-relax.com/manual/frame_order_pdb_model.html frame_order.pdb_model user function] backend to handle missing structural data. The [http://www.nmr-relax.com/api/4.0/specific_analyses.frame_order.geometric-module.html#create_ave_pos create_ave_pos() function] of the [http://www.nmr-relax.com/api/4.0/specific_analyses.frame_order.geometric-module.html specific_analyses.frame_order.geometric module] now checks that cdp.structure exists, and if not a warning is given and the PDB file creating is skipped.
* Fixes for the [http://www.nmr-relax.com/manual/frame_order_pdb_model.html frame_order.pdb_model user function] backend for when no data is present. The [http://www.nmr-relax.com/api/4.0/pipe_control.structure.mass-module.html#pipe_centre_of_mass pipe_centre_of_mass() function ] of [http://www.nmr-relax.com/api/4.0/pipe_control.structure.mass-module.html pipe_control.structure.mass module ] is now called with the missing_error flag set to False so that the PDB generation can continue with the CoM set to [0, 0, 0].
* The geometric representation part of the [http://www.nmr-relax.com/manual/frame_order_pdb_model.html frame_order.pdb_model user function] now checks parameters. This calls the [http://www.nmr-relax.com/api/4.0/specific_analyses.frame_order.checks-module.html#check_parameters specific_analyses.frame_order.checks.check_parameters Check object] to make sure that all necessary parameters for the model exist.
* Completed the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_pdb_model_rotor_z_axis Frame_order.test_pdb_model_rotor system test]. This now sets the rotor axis to the z-axis (with a printout to be sure), sets the torsion angle to zero for simplicity, creates a new data pipe and loads the PDB representation file, then checks all of the key atom coordinates.* Fixes for the unit tests of the [http://www.nmr-relax.com/api/4.0/lib.frame_order.matrix_ops-module.html lib.frame_order_matrix_ops frame_order.matrix_ops module ] for the free rotor isotropic cone. The S1 order parameter has been eliminated due to angles &gt; &pi;/2.0 causing the frame order matrix to be incorrectly predicted. Therefore all unit tests have been converted to use the cone opening angle &theta; instead. In addition, the [http://www.nmr-relax.com/api/4.0/test_suite.unit_tests._lib._frame_order.test_matrix_ops.Test_matrix_ops-class.html#test_compile_2nd_matrix_iso_cone_free_rotor_disorder test_compile_2nd_matrix_iso_cone_free_rotor_disorder] had been modified to pass with the incorrect frame order matrix by comparing to the half cone frame order matrix rather than the identity frame order matrix.* Fix for inverted axes in the new [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_pdb_model_rotor_z_axis Frame_order.test_pdb_model_rotor system test].* Huge bug fix for the [http://www.nmr-relax.com/manual/frame_order_pdb_model.html frame_order.pdb_model user function] - the single axis direction was incorrect. In the PDB representation of the frame order motion for the rotor and isotropic cone models (rotor, free rotor, isotropic cone, free rotor isotropic cone, and torsionless isotropic cone), the X and Z axes were swapped. This is because the eigenframe of the motion was being incorrectly constructed via the [http://www.nmr-relax.com/api/4.0/lib.geometry.rotations-module.html#two_vect_to_R lib.geometry.rotations.two_vect_to_R() function]. For better control, the [http://www.nmr-relax.com/api/4.0/specific_analyses.frame_order.geometric-module.html#frame_from_axis specific_analyses.frame_order.geometric.frame_from_axis() function ] has been created. This constructs a full motional eigenframe from the Z-axis. The problem was detected via the new [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_pdb_model_rotor_z_axis Frame_order.test_pdb_model_rotor system test].* Size fix for the rotor representation from the [http://www.nmr-relax.com/manual/frame_order_pdb_model.html frame_order.pdb_model user function]. The size problem was detected via the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_pdb_model_rotor_z_axis Frame_order.test_pdb_model_rotor system test]. The rotors in the PDB representation were all fixed in size, and ignored the 'size' argument of the [http://www.nmr-relax.com/manual/frame_order_pdb_model.html frame_order.pdb_model user function]. The size argument is now passed into the [http://www.nmr-relax.com/api/4.0/specific_analyses.frame_order.geometric-module.html#add_rotors add_rotors() function] of the [http://www.nmr-relax.com/api/4.0/specific_analyses.frame_order.geometric-module.html specific_analyses.frame_order.geometric module] and passed on to the [http://www.nmr-relax.com/api/4.0/lib.structure.represent.rotor-module.html#rotor rotor() function ] of the [http://www.nmr-relax.com/api/4.0/lib.structure.represent.rotor -module.html lib.structure.represent.rotor module].* Created the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_pdb_model_rotor_xz_plane_tilt Frame_order.test_pdb_model_rotor2 system test ] to check for an offset pivot. The pivot is set to [1, 0, 1] so that the rotor axis is tilted -45 degrees in the xz-plane. And the size of the geometric object is set to 100 Angstrom for better testing of the sizes of the elements.* Simplification of the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_pdb_model_rotor_z_axis Frame_order.test_pdb_model_rotor system test]. The size is now programatically handled.* Created the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_pdb_model_iso_cone_z_axis Frame_order.test_pdb_model_iso_cone system test]. This is for checking the PDB representation of the isotropic cone frame order model created by the [http://www.nmr-relax.com/manual/frame_order_pdb_model.html frame_order.pdb_model user function]. It checks both A and B representations.* Fix for the cone sized created by the [http://www.nmr-relax.com/manual/frame_order_pdb_model.html frame_order.pdb_model user function]. The 'size' argument was not being used at all for the cone size. It is now passed into the [http://www.nmr-relax.com/api/4.0/lib.structure.represent.cone-module.html#cone lib.structure.represent.cone.cone() function ] as the 'scale' argument.* Small fix for the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_pdb_model_iso_cone_z_axis Frame_order.test_pdb_model_iso_cone system test ] for the 'B' representation.* Fix for the representation label positions created by the [http://www.nmr-relax.com/manual/frame_order_pdb_model.html frame_order.pdb_model user function]. The 'size' argument was not being used at all for the representation title atoms. It is now passed into the [http://www.nmr-relax.com/api/4.0/specific_analyses.frame_order.geometric-module.html#add_titles add_titles() function ] as the displacement argument + 10 Angstrom.* Printout fix for the axis in the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_pdb_model_iso_cone_z_axis Frame_order.test_pdb_model_iso_cone system test].* Created the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_pdb_model_iso_cone_xz_plane_tilt Frame_order.test_pdb_model_iso_cone_xz_plane_tilt system test]. This checks the PDB file from the [http://www.nmr-relax.com/manual/frame_order_pdb_model.html frame_order.pdb_model user function] for the isotropic cone model with a xz-plane tilt.
* Renamed all of the Frame_order.test_pdb_model_* system tests to be more descriptive.
* Improvements for all of the Frame_order.test_pdb_model_* system tests. The [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#rotate_from_Z rotate_from_Z() method ] has been introduced to simplify the determination of the 3D coordinates expected for the PDB file. This will allow for more advanced testing of the PDB for the cone models.
* Fixes for the printouts from the Frame_order.test_pdb_model_rotor_* system tests.
* Alphabetical ordering of the Frame_order system test methods.
* Fixes for all of the Frame_order system tests - the temporary directories are now being deleted. The [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#tearDown system test base class tearDown() method ] is now being called to properly clean up after the tests.* Created the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_pdb_model_pseudo_ellipse_z_axis Frame_order.test_pdb_model_pseudo_ellipse_z_axis system test]. This demonstrates the correct atom coordinates in the PDB file created by the [http://www.nmr-relax.com/manual/frame_order_pdb_model.html frame_order.pdb_model user function] for the pseudo-ellipse model along the z-axis.
* Fixes for the checks in the Frame_order.test_pdb_model_* system tests. Atomic positions are now checked with self.assertAlmostEqual() to 3 places, and the residue and atom names and numbers are checked with self.assertEqual().
* Created the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_pdb_model_pseudo_ellipse_xz_plane_tilt Frame_order.test_pdb_model_pseudo_ellipse_xz_plane_tilt system test]. This checks the PDB file created by the [http://www.nmr-relax.com/manual/frame_order_pdb_model.html frame_order.pdb_model user function] for the pseudo-ellipse model with a xz-plane tilt. To properly construct the coordinates, the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#rotate_from_Z rotate_from_Z() method ] was modified to accept a rotation matrix argument to allow the geometric shape to be rotated.* Modified the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_pdb_model_iso_cone_xz_plane_tilt Frame_order.test_pdb_model_iso_cone_xz_plane_tilt system test ] to have a cone angle. The cone opening half-angle was previously 0.0. The test now checks the geometric object in the PDB file for a cone opening half-angle of 2.0.* Modified the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_pdb_model_iso_cone_z_axis Frame_order.test_pdb_model_iso_cone_z_axis system test ] to have a cone angle. The cone opening half-angle was previously 0.0. The test now checks the geometric object in the PDB file for a cone opening half-angle of 2.0.* Created two new system tests for the free rotor PDB representation file. This is the file from the [http://www.nmr-relax.com/manual/frame_order_pdb_model.html frame_order.pdb_model user function]. The two new unit tests are [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_pdb_model_free_rotor_z_axis Frame_order.test_pdb_model_free_rotor_z_axis ] and [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_pdb_model_free_rotor_xz_plane_tilt Frame_order.test_pdb_model_free_rotor_xz_plane_tilt].* Created two new frame order system tests for the free rotor isotropic cone PDB representation file. This is the two PDB files from the [http://www.nmr-relax.com/manual/frame_order_pdb_model.html frame_order.pdb_model user function]. The two new system tests are [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_pdb_model_iso_cone_free_rotor_z_axis Frame_order.test_pdb_model_iso_cone_free_rotor_z_axis ] and [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_pdb_model_iso_cone_free_rotor_xz_plane_tilt Frame_order.test_pdb_model_iso_cone_free_rotor_xz_plane_tilt].* Created two new frame order system tests for the torsionless isotropic cone PDB representation file. This is the two PDB files from the [http://www.nmr-relax.com/manual/frame_order_pdb_model.html frame_order.pdb_model user function]. The two new system tests are [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_pdb_model_iso_cone_torsionless_z_axis Frame_order.test_pdb_model_iso_cone_torsionless_z_axis ] and [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_pdb_model_iso_cone_torsionless_xz_plane_tilt Frame_order.test_pdb_model_iso_cone_torsionless_xz_plane_tilt].* Created two new frame order system tests for the free rotor pseudo-ellipse PDB representation file. This is the two PDB files from the [http://www.nmr-relax.com/manual/frame_order_pdb_model.html frame_order.pdb_model user function]. The two new system tests are [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_pdb_model_pseudo_ellipse_free_rotor_z_axis Frame_order.test_pdb_model_pseudo_ellipse_free_rotor_z_axis ] and [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_pdb_model_pseudo_ellipse_free_rotor_xz_plane_tilt Frame_order.test_pdb_model_pseudo_ellipse_free_rotor_xz_plane_tilt].* Created two new frame order system tests for the torsionless pseudo-ellipse PDB representation file. This is the two PDB files from the [http://www.nmr-relax.com/manual/frame_order_pdb_model.html frame_order.pdb_model user function]. The two new system tests are [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_pdb_model_pseudo_ellipse_torsionless_z_axis Frame_order.test_pdb_model_pseudo_ellipse_torsionless_z_axis ] and [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_pdb_model_pseudo_ellipse_torsionless_xz_plane_tilt Frame_order.test_pdb_model_pseudo_ellipse_torsionless_xz_plane_tilt].* Created two new frame order system tests for the double rotor PDB representation file. This is the two PDB files from the [http://www.nmr-relax.com/manual/frame_order_pdb_model.html frame_order.pdb_model user function]. The two new system tests are [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_pdb_model_double_rotor_z_axis Frame_order.test_pdb_model_double_rotor_z_axis ] and [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_pdb_model_double_rotor_xz_plane_tilt Frame_order.test_pdb_model_double_rotor_xz_plane_tilt].
* Added relax scripts and PDB files which match the Frame_order.test_test_pdb_model_* system tests. These were used to construct and visually check the tests in a molecular viewer. These could be a useful reference, so have been added to the repository.
* Simplified all of the Frame_order.test_pdb_model_* system tests. The atom, residue and 3D coordinate checking in all these methods has been shifted into the common [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#check_pdb_model_representation check_pdb_model_representation() method]. This dramatically decreases the amount of code in the system test file.* Simplification for all of the Frame_order.test_pdb_model_* system tests. The model setup in all of these tests has been merged into the common [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#setup_model setup_model() method]. This not only removes a large quantity of repetitive code, but the new method can also be used for constructing future tests, for example for checking the [http://www.nmr-relax.com/manual/frame_order_simulate.html frame_order.simulate user function].* Created an initial version of the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_simulate_rotor_z_axis Frame_order.test_simulate_rotor_z_axis system test]. This is to check the [http://www.nmr-relax.com/manual/frame_order_simulate.html frame_order.simulate user function] rotor model along the z-axis. It currently fails due to a bug in the user function.* Fixes for the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_simulate_rotor_z_axis Frame_order.test_simulate_rotor_z_axis system test]. Now 6 atoms are being created at X, -X, Y, -Y, Z, and -Z, 100 Angstrom from the origin. This is required so that the CoM is at the origin, to allow the CoM-pivot vector to be unchanged at [1, 0, 0] so that the axis &alpha; angle of &pi;/2 creates an axis parallel to Z. The origin to atom distance check has also been loosened due to the PDB truncation artifact.* Fix for the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_pdb_model_free_rotor_xz_plane_tilt Frame_order.test_pdb_model_free_rotor_xz_plane_tilt system test]. This was broken while implementing the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_simulate_rotor_z_axis Frame_order.test_simulate_rotor_z_axis system test]. Instead of shifting the 6 atom structure so its CoM is the pivot of the motion when creating the atoms, now the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_simulate_rotor_z_axis Frame_order.test_simulate_rotor_z_axis system test ] sets the average domain translation vector to the pivot to achieve the same result. This preserves the z-axis orientation of the rotor models.* Created the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_simulate_free_rotor_z_axis Frame_order.test_simulate_free_rotor_z_axis system test]. This is to check the [http://www.nmr-relax.com/manual/frame_order_simulate.html frame_order.simulate user function] for the free rotor model along the z-axis.* Created the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_simulate_iso_cone_z_axis Frame_order.test_simulate_iso_cone_z_axis system test]. This is to check the [http://www.nmr-relax.com/manual/frame_order_simulate.html frame_order.simulate user function] for the isotropic cone model along the z-axis.* Created the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_simulate_iso_cone_free_rotor_z_axis Frame_order.test_simulate_iso_cone_free_rotor_z_axis system test]. This is to check the [http://www.nmr-relax.com/manual/frame_order_simulate.html frame_order.simulate user function] for the free rotor isotropic cone model along the z-axis.* Created the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_simulate_iso_cone_torsionless_z_axis Frame_order.test_simulate_iso_cone_torsionless_z_axis system test]. This is to check the [http://www.nmr-relax.com/manual/frame_order_simulate.html frame_order.simulate user function] for the torsionless isotropic cone model along the z-axis.* Created the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_simulate_pseudo_ellipse_z_axis Frame_order.test_simulate_pseudo_ellipse_z_axis system test]. This is to check the [http://www.nmr-relax.com/manual/frame_order_simulate.html frame_order.simulate user function] for the pseudo-ellipse model along the z-axis.* Created the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_simulate_pseudo_ellipse_xz_plane_tilt Frame_order.test_simulate_iso_cone_xz_plane_tilt system test]. This is to check the [http://www.nmr-relax.com/manual/frame_order_simulate.html frame_order.simulate user function] for the torsionless isotropic cone model with a xz-plane tilt.* Created the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_simulate_pseudo_ellipse_free_rotor_z_axis Frame_order.test_simulate_pseudo_ellipse_free_rotor_z_axis system test]. This is to check the [http://www.nmr-relax.com/manual/frame_order_simulate.html frame_order.simulate user function] for the free rotor pseudo-ellipse model along the z-axis.* Created the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_simulate_pseudo_ellipse_xz_plane_tilt Frame_order.test_simulate_pseudo_ellipse_xy_plane_tilt system test]. This is to check the [http://www.nmr-relax.com/manual/frame_order_simulate.html frame_order.simulate user function] for the pseudo-ellipse model with a xz-plane tilt.* Created the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_simulate_pseudo_ellipse_torsionless_z_axis Frame_order.test_simulate_pseudo_ellipse_torsionless_z_axis system test]. This is to check the [http://www.nmr-relax.com/manual/frame_order_simulate.html frame_order.simulate user function] for the torsionless pseudo-ellipse model along the z-axis.* Fix for the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_simulate_pseudo_ellipse_xz_plane_tilt Frame_order.test_simulate_pseudo_ellipse_xz_plane_tilt system test ] name. This was mislabelled as Frame_order.test_simulate_pseudo_ellipse_xy_plane_tilt.* Redesign of the [http://www.nmr-relax.com/manual/pymol_frame_order.html pymol.frame_order user function]. This user function was still fitting to the old design in the relax trunk. It has been updated for the frame_order_cleanup branch whereby the [http://www.nmr-relax.com/manual/frame_order_pdb_model.html frame_order.pdb_model user function] has been split up and the positional distribution has been replaced by the Brownian simulation [user function http://www.nmr-relax.com/manual/frame_order_simulate.html user function frame_order.simulate].
* Better checking for the non-moving domain setup. The [http://www.nmr-relax.com/manual/frame_order_pdb_model.html frame_order.pdb_model user function] will now raise a RelaxError if the [http://www.nmr-relax.com/manual/frame_order_ref_domain.html frame_order.ref_domain user function] has not been called to set up the non-moving domain.
* Updated the [http://www.nmr-relax.com/manual/frame_order_ref_domain.html frame_order.ref_domain user function] for the current branch design. This user function was quite out of date. The alignment tensor checks have been removed, to allow this to be used in the absence of base data. And the user function description has been updated.
* Converted the [http://www.nmr-relax.com/api/4.0/specific_analyses.frame_order.checks-module.html specific_analyses.frame_order.checks module] to the new Check object design. This follows from http://wiki.nmr-relax.com/Relax_source_design#The_check_.2A.28.29_functions and the changes significantly simplify the checking objects.
* Improved checking for the [http://www.nmr-relax.com/api/4.0/specific_analyses.frame_order.data-module.html#generate_pivot frame order generate_pivot() function]. The [http://www.nmr-relax.com/api/4.0/specific_analyses.frame_order.checks-module.html#check_model check_model() checking object] is now called to make sure the frame order model has been specified, as this is essential for this function.
* Created two system tests for the [http://www.nmr-relax.com/manual/frame_order_simulate.html frame_order.simulate user function] for the double rotor model. These are [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_simulate_double_rotor_mode1_z_axis Frame_order.test_simulate_double_rotor_mode1_z_axis ] and [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_simulate_double_rotor_mode2_z_axis Frame_order.test_simulate_double_rotor_mode2_z_axis].* Created two system tests for the [http://www.nmr-relax.com/manual/frame_order_simulate.html frame_order.simulate user function] for the double rotor model. These are [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_simulate_double_rotor_mode1_xz_plane_tilt Frame_order.test_simulate_double_rotor_mode1_xz_plane_tilt ] and [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.frame_order.Frame_order-class.html#test_simulate_double_rotor_mode2_xz_plane_tilt Frame_order.test_simulate_double_rotor_mode2_xz_plane_tilt].
* Added relax scripts which match the Frame_order.test_test_simulate_* system tests. These are the tests of the [http://www.nmr-relax.com/manual/frame_order_simulate.html frame_order.simulate user function]. These were used to construct and visually check the Brownian simulation and PDB model representation in a molecular viewer. These could be a useful reference, so have been added to the repository.
* Fix for the [http://www.nmr-relax.com/api/4.0/auto_analyses.frame_order-module.html frame order auto-analysis] when only the 'rigid' model is optimised. The final summary table printout for the number of Sobol' points used was failing as there were no models in the table. The table is now only printed out if non rigid models are present in the model list.
Trusted, Bureaucrats
4,228

edits