svn+ssh://bugman@.../svn/relax/trunk
........
r18260 | bugman | 2013-01-22 20:13:33 +0100 (Tue, 22 Jan 2013) | 12 lines
Clean up of some of the logic in N-state model analysis specific code.
The following methods have been added:
_opt_tensor(),
_opt_uses_align_data(),
_opt_uses_pcs(),
_opt_uses_rdc()
These are used through the class to determine what is needed for or used during optimisation,
making a lot of checking code more consistent (hence removing latent bugs).
........
r18261 | bugman | 2013-01-22 21:47:41 +0100 (Tue, 22 Jan 2013) | 3 lines
Added some more checks to the metal_pos_opt.py N-state model system test script.
........
r18262 | bugman | 2013-01-22 23:07:02 +0100 (Tue, 22 Jan 2013) | 10 lines
First attempt at implementing the paramagnetic centre position gradient in the N-state model.
This will be used for faster optimisation of the lanthanide position. Two new functions have been
added:
maths_fns.pcs.ave_pcs_tensor_ddeltaij_dc()
maths_fns.pcs.pcs_constant_grad()
These are used by the dfunc_*() methods of the N-state model target function class.
........
r18263 | bugman | 2013-01-23 10:49:15 +0100 (Wed, 23 Jan 2013) | 9 lines
Major code simplification of the N-state model target functions.
The func_tensor_opt(), dfunc_tensor_opt(), and d2func_tensor_opt() methods have been merged with the
func_population(), dfunc_population(), and d2func_population() methods into the new func_standard(),
dfunc_standard(), and d2func_standard() methods. This halves the amount of code required to be
maintained and debugged. For the merger, the new probs_fixed class instance variable has been
created to determine when the probabilities need to be unpacked from the parameter vector.
........
r18264 | bugman | 2013-01-23 10:50:15 +0100 (Wed, 23 Jan 2013) | 3 lines
Removed the unused parameter scaling in the N-state model gradient and Hessian target functions.
........
r18265 | bugman | 2013-01-23 11:08:10 +0100 (Wed, 23 Jan 2013) | 5 lines
Added a RelaxError to the N-state model Hessian for the optimisation of the paramagnetic position.
This is because these equations are not derived or coded yet.
........
r18266 | bugman | 2013-01-23 11:21:27 +0100 (Wed, 23 Jan 2013) | 5 lines
The probabilities and paramagnetic position can now be simultaneously in the N-state model.
Such a combination would have previously failed to unpack the parameters correctly.
........
r18267 | bugman | 2013-01-23 16:09:34 +0100 (Wed, 23 Jan 2013) | 5 lines
Expanded the N-state model target function func_standard() docstring to include the xi derivative.
This is the partial derivative with respect to the paramagnetic centre position.
........
r18268 | bugman | 2013-01-23 16:10:21 +0100 (Wed, 23 Jan 2013) | 3 lines
Bug fix for the N-state model target functions - now copies of the gradient and Hessian are returned.
........
r18269 | bugman | 2013-01-23 16:11:51 +0100 (Wed, 23 Jan 2013) | 5 lines
Bug fix for the N-state model optimisation of populations and paramagnetic position.
The gradient from dfunc_standard() is now correctly calculated when both are optimised.
........
r18270 | bugman | 2013-01-23 16:15:15 +0100 (Wed, 23 Jan 2013) | 3 lines
Comment fixes in the ave_pcs_tensor_ddeltaij_dc() and pcs_constant_grad() functions.
........
r18271 | bugman | 2013-01-23 16:16:39 +0100 (Wed, 23 Jan 2013) | 6 lines
Bug fix for the calculation of the PCS gradient with respect to the paramagnetic coordinates.
This is in the ave_pcs_tensor_ddeltaij_dc() function - the gradient needs to be converted back to
the Angstrom units of the paramagnetic position parameters.
........
r18272 | bugman | 2013-01-23 16:22:53 +0100 (Wed, 23 Jan 2013) | 5 lines
Constraints are now allowed for the paramagnetic position optimisation in the N-state model.
This is because the gradients are implemented and functional.
........
r18273 | bugman | 2013-01-23 16:34:03 +0100 (Wed, 23 Jan 2013) | 6 lines
Fix for the assembly of the N-state model linear constraints.
These were not set up correctly when the populations and paramagnetic position are optimised
together.
........
r18274 | bugman | 2013-01-23 16:48:37 +0100 (Wed, 23 Jan 2013) | 5 lines
Modified the N-state model metal_pos_opt.py system test script.
This is to test optimisation with the new paramagnetic position gradients.
........