mailr24703 - in /trunk: ./ auto_analyses/ devel_scripts/ docs/ docs/latex/ graphics/misc/Rosenbrock_function/ graphics/relax_ico...


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

Header


Content

Posted by edward on July 24, 2014 - 13:26:
Author: bugman
Date: Thu Jul 24 13:26:12 2014
New Revision: 24703

URL: http://svn.gna.org/viewcvs/relax?rev=24703&view=rev
Log:
Merged revisions 
24542,24545-24548,24552-24559,24564-24584,24587-24595,24597-24611,24616-24618,24640,24649,24671,24674-24678,24680-24683,24688-24701
 via svnmerge from 
svn+ssh://bugman@xxxxxxxxxxx/svn/relax/branches/zooming_grid_search

........
  r24542 | bugman | 2014-07-16 17:35:02 +0200 (Wed, 16 Jul 2014) | 7 lines
  
  Added a new set of icons for use with the minimisation user functions.
  
  These are of the Rosenbrock function and are much better suited for small 
icons than the current
  OpenDX 3D isosurface plots.  The matplotlib figure originates from public 
domain code at
  http://commons.wikimedia.org/wiki/File:Rosenbrock_function.svg.
........
  r24545 | bugman | 2014-07-16 20:57:03 +0200 (Wed, 16 Jul 2014) | 12 lines
  
  Redesign of the optimisation user functions calculate, grid_search, and 
minimise.
  
  In preparation for expanding the number of optimisation user functions, 
these three current user
  functions have been shifted into the new minimise user function class.  The 
calculate user function
  is now accessed as minimise.calculate.  The grid search as 
minimise.grid_search.  And minimisation
  is via the minimise.execute user function.  The icon used for the new user 
function class is the
  Rosenbrock function or the banana optimisation problem.
  
  As this is such a radical change, a huge number of changes in the relax 
source code, the sample
  scripts, the user manual, and the test suite were required.
........
  r24546 | bugman | 2014-07-17 14:27:50 +0200 (Thu, 17 Jul 2014) | 6 lines
  
  Created the new minimise.grid_zoom user function.
  
  This allows the grid zoom level to be set.  The value is stored in the 
current data pipe and will be
  used later by the minimise.grid_search user function.
........
  r24547 | bugman | 2014-07-17 14:36:15 +0200 (Thu, 17 Jul 2014) | 3 lines
  
  The minimise.grid_zoom user function now uses the zoom-in Oxygen icon.
........
  r24548 | bugman | 2014-07-17 14:46:53 +0200 (Thu, 17 Jul 2014) | 6 lines
  
  Created the Relax_fit.test_zooming_grid_search system test.
  
  This will be used to test the implementation of the zooming grid search.  
The relaxation
  curve-fitting analysis should be one of the fastest for testing this.
........
  r24552 | bugman | 2014-07-17 16:22:36 +0200 (Thu, 17 Jul 2014) | 5 lines
  
  Added the print_model_title() method to the specific analysis base API 
class.
  
  This will be used to format and print out the information returned by the 
model_info() API method.
........
  r24553 | bugman | 2014-07-17 16:29:14 +0200 (Thu, 17 Jul 2014) | 3 lines
  
  Implemented the print_model_title() specific analysis API method for the 
dispersion analysis.
........
  r24554 | bugman | 2014-07-17 16:45:06 +0200 (Thu, 17 Jul 2014) | 6 lines
  
  Modified the specific analysis API _model_loop_spin() common method.
  
  This now additionally returns the spin ID string to allow the corresponding 
spin container to be
  identified.
........
  r24555 | bugman | 2014-07-17 16:46:57 +0200 (Thu, 17 Jul 2014) | 6 lines
  
  Implemented the specific analysis API common method 
_print_model_title_spin().
  
  This is for the corresponding _model_loop_spin() method.  It can be aliased 
in the specific analyses
  to provide the print_model_title() API method.
........
  r24556 | bugman | 2014-07-17 16:49:26 +0200 (Thu, 17 Jul 2014) | 6 lines
  
  Aliased the _print_model_title_spin() specific analysis API common method 
in a few analyses.
  
  This provides the print_model_title() API method for the J(w) mapping, 
consistency testing, and
  relaxation curve fitting analyses.
........
  r24557 | bugman | 2014-07-17 17:13:34 +0200 (Thu, 17 Jul 2014) | 6 lines
  
  Updated all the specific analysis methods affected by the 
_model_info_spin() API method change.
  
  This is for the change whereby the common API method now returns the spin 
ID string as well
  (r24554).
........
  r24558 | bugman | 2014-07-17 17:24:09 +0200 (Thu, 17 Jul 2014) | 3 lines
  
  Fix for a number of docstring typos from r24557.
........
  r24559 | bugman | 2014-07-17 17:31:50 +0200 (Thu, 17 Jul 2014) | 5 lines
  
  Implemented get_param_names() and get_param_values() for the relaxation 
curve-fitting analysis.
  
  These are part of the specific analysis API.
........
  r24564 | bugman | 2014-07-18 11:02:52 +0200 (Fri, 18 Jul 2014) | 6 lines
  
  Created the specific analysis API return_parameter_object() function.
  
  This is used by the non-specific analysis code to obtain the parameter 
object (a singleton object).
  It will allow for more direct access to the parameter information.
........
  r24565 | bugman | 2014-07-18 11:05:51 +0200 (Fri, 18 Jul 2014) | 8 lines
  
  Created the parameter object infrastructure for adding the grid search 
lower and upper bounds.
  
  The _add() method now accepts the grid_lower and grid_upper keyword 
arguments, which can be either
  values or functions.  These are then stored in the _grid_lower and 
_grid_upper class dictionaries.
  The public methods grid_lower() and grid_upper() have been added to return 
the value corresponding
  to the given parameter.
........
  r24566 | bugman | 2014-07-18 11:51:54 +0200 (Fri, 18 Jul 2014) | 8 lines
  
  Modified the specific analysis parameter object grid_lower() and 
grid_upper() methods.
  
  These now accept the model information from the model_loop() API method and 
send that into an grid
  lower and upper functions.  These functions will require the information to 
pull out the correct
  spin, spin cluster, or other information from the current data pipe to 
determine what the bounds
  should be.
........
  r24567 | bugman | 2014-07-18 13:47:59 +0200 (Fri, 18 Jul 2014) | 12 lines
  
  Implemented infrastructure in the grid_search user function in preparation 
for the zooming grid.
  
  The grid search backend now calls the new grid_bounds() function.  This 
takes the lower and upper
  bounds as arguments, uses the specific API to determine the per-model 
parameter grid search bounds,
  and then returns a per model list of lower and upper bounds.  The specific 
API get_param_names() and
  get_param_values() are called to obtain the current model parameter names 
and values, and then the
  parameter names and model info are used in the new parameter object 
grid_lower() and grid_upper()
  methods to obtain the bounds.  This shifts all of the grid search bounds 
logic out of the specific
  analyses and into the grid search backend, so it should allow the specific 
analysis code to be
  simplified.
........
  r24568 | bugman | 2014-07-18 14:43:07 +0200 (Fri, 18 Jul 2014) | 11 lines
  
  More modifications of the minimise.grid_search user function backend.
  
  The grid_bounds() function has been renamed to grid_setup(), and it now 
accepts and processes the
  inc user function argument.  The error checking code of the relaxation 
curve-fitting
  grid_search_setup() optimisation function has been shifted into this 
analysis independent
  grid_setup() function to shift the minimise.grid_search user function error 
checking out of the
  specific analyses.  The function now scales the parameter bounds, using the 
yet-to-be implemented
  scaling() method of the parameter object.  And the grid search increments 
are converted into a
  per-model list of lists.
........
  r24569 | bugman | 2014-07-18 15:03:54 +0200 (Fri, 18 Jul 2014) | 7 lines
  
  Created the parameter object infrastructure for registering parameter 
scalings.
  
  The _add() method now accepts the scaling keyword argument, which can be 
either a value or function.
  This is then stored in the _scaling dictionary.  The public method 
scaling() has been added to
  return the scaling factor corresponding to the given parameter.
........
  r24570 | bugman | 2014-07-18 15:51:10 +0200 (Fri, 18 Jul 2014) | 12 lines
  
  Modified the analysis specific API optimisation method.
  
  The base calculate(), grid_search() and minimise() methods now all accept 
the scaling_matrix
  argument, and the minimise() scaling argument has been removed.  This 
scaling_matrix argument should
  be a per-model list of scaling matrices.
  
  To handle the change, the pipe_control.minimise.assemble_scaling_matrix() 
function has been created.
  This uses the new parameter object scaling values to create the list of 
scaling matrices.  This will
  in the end replace all of the analysis specific assemble_scaling_matrix() 
functions and simplify
  their optimisation code paths.
........
  r24571 | bugman | 2014-07-18 16:13:11 +0200 (Fri, 18 Jul 2014) | 7 lines
  
  Changed the order of operations in the minimisation user function backends.
  
  The specific analysis API overfit_deselect() method needs to be called 
before any grid bounds,
  increments, or the scaling matrices are assembled.  This is for the cases 
when the grid bounds or
  scaling factors are functions rather than values.
........
  r24572 | bugman | 2014-07-18 16:26:29 +0200 (Fri, 18 Jul 2014) | 15 lines
  
  Converted the relaxation curve-fitting analysis to the new grid bounds and 
scaling factor design.
  
  The parameter object now registers the grid bounds and scaling factors for 
all of the curve-fitting
  parameters.  This includes three functions i_scaling(), i0() and iinf() in 
the
  specific_analyses.relax_fit.parameter_object module for calculating some of 
these values.
  
  The specific_analyses.relax_fit.parameters.assemble_scaling_matrix() 
function has been deleted as
  this is now provided by the upstream code in pipe_control.minimise.  And 
the API methods
  grid_search() and minimise() has been modified to accept the list of 
scaling matrices.
  
  As the grid bounds and increments are now handled by the upstream 
pipe_control.minimise.grid_setup()
  function, the specific_analyses.relax_fit.optimisation.grid_search_setup() 
function was redundant
  and was deleted.
........
  r24573 | bugman | 2014-07-18 16:43:39 +0200 (Fri, 18 Jul 2014) | 7 lines
  
  Created the consistency testing specific API method get_param_names().
  
  This is now required for the minimise.calculate user function, specifically 
for the analysis
  independent assemble_scaling_matrix() function.  The get_param_names() 
method simply returns the
  fixed list of parameter names.
........
  r24574 | bugman | 2014-07-18 19:43:23 +0200 (Fri, 18 Jul 2014) | 7 lines
  
  Standardisation of the specific analysis API with respect to the 
model_loop() and base_data_loop().
  
  The model information arguments for the data returned by model_loop(), and 
the data arguments for
  the data arguments for the data returned by base_data_loop() have been 
standardised throughout the
  API.
........
  r24575 | bugman | 2014-07-21 08:57:55 +0200 (Mon, 21 Jul 2014) | 3 lines
  
  Epydoc parameter order rearrangement in the specific analysis API base 
class.
........
  r24576 | bugman | 2014-07-21 09:01:54 +0200 (Mon, 21 Jul 2014) | 3 lines
  
  Updated the specific analysis API common methods for the recent model_info 
argument changes.
........
  r24577 | bugman | 2014-07-21 09:07:47 +0200 (Mon, 21 Jul 2014) | 7 lines
  
  Updated all of the specific API calculate() methods to accept the 
scaling_matrix argument.
  
  The list of per-model scaling matrices is now created independently of the 
analysis type by the
  pipe_control.minimise methods for the minimise.calculate, 
minimise.grid_search and minimise.execute
  user functions and sent into the specific analysis backend.
........
  r24578 | bugman | 2014-07-21 09:14:00 +0200 (Mon, 21 Jul 2014) | 10 lines
  
  Updated all of the specific API grid_search() methods to accept the 
scaling_matrix argument.
  
  The list of per-model scaling matrices is now created independently of the 
analysis type by the
  pipe_control.minimise methods for the minimise.calculate, 
minimise.grid_search and minimise.execute
  user functions and sent into the specific analysis backend.
  
  The argument is also passed into the minimise() API method from the 
grid_search() method when that
  is used.
........
  r24579 | bugman | 2014-07-21 09:17:44 +0200 (Mon, 21 Jul 2014) | 7 lines
  
  Updated all of the specific API minimise() methods to accept the 
scaling_matrix argument.
  
  The list of per-model scaling matrices is now created independently of the 
analysis type by the
  pipe_control.minimise methods for the minimise.calculate, 
minimise.grid_search and minimise.execute
  user functions and sent into the specific analysis backend.
........
  r24580 | bugman | 2014-07-21 09:23:37 +0200 (Mon, 21 Jul 2014) | 3 lines
  
  Fix for the Monte Carlo simulations for the model_info argument changes in 
the specific API.
........
  r24581 | bugman | 2014-07-21 09:28:44 +0200 (Mon, 21 Jul 2014) | 5 lines
  
  Fixes for the consistency testing and J(w) mapping calculate() methods.
  
  This is for the changes to the data_init() specific analysis API method.
........
  r24582 | bugman | 2014-07-21 09:30:43 +0200 (Mon, 21 Jul 2014) | 3 lines
  
  More fixes for the Monte Carlo simulations for the model_info argument 
changes in the specific API.
........
  r24583 | bugman | 2014-07-21 09:50:45 +0200 (Mon, 21 Jul 2014) | 3 lines
  
  Updated all of the data_init() specific API calls where the spin ID is 
expected.
........
  r24584 | bugman | 2014-07-21 09:59:34 +0200 (Mon, 21 Jul 2014) | 6 lines
  
  Fixes for the _data_init_spin() specific API common method.
  
  The data returned from _base_data_loop_spin() is just the spin ID, the spin 
container is not
  included.
........
  r24587 | bugman | 2014-07-21 18:57:56 +0200 (Mon, 21 Jul 2014) | 3 lines
  
  Updated the elminate user function backend to work with the model_info 
argument changes in the specific API.
........
  r24588 | bugman | 2014-07-21 18:59:58 +0200 (Mon, 21 Jul 2014) | 6 lines
  
  The new pipe_control.minimise module functions can now handle models with 
no parameters.
  
  The new assemble_scaling_matrix() and grid_setup() functions will now 
handle models with no
  parameters, as this is required for the relaxation dispersion analysis.
........
  r24589 | bugman | 2014-07-21 19:18:06 +0200 (Mon, 21 Jul 2014) | 6 lines
  
  More fixes for the elminate user function backend.
  
  This is for the model_info argument changes in the specific API.
........
  r24590 | bugman | 2014-07-22 10:15:15 +0200 (Tue, 22 Jul 2014) | 9 lines
  
  Fixes for the grid search backend for a recent breakage and expansion of 
its capabilities.
  
  The user supplied lower and upper bounds for the grid search were no longer 
being scaled via the
  scaling matrix.
  
  In addition, the code has been refactored to be simpler and more flexible.  
The user can now supply
  just the lower or just the upper bounds and the grid search will work.
........
  r24591 | bugman | 2014-07-22 10:43:19 +0200 (Tue, 22 Jul 2014) | 7 lines
  
  The grid search setup function now prints out the grid search bounds to be 
used.
  
  This is in the pipe_control.minimise.grid_setup() function, hence it is 
analysis independent.  This
  is useful feedback for the user to know what the grid search is doing.  And 
it will be even more
  useful for the zooming grid search to understand what is happening.
........
  r24592 | bugman | 2014-07-22 10:45:28 +0200 (Tue, 22 Jul 2014) | 3 lines
  
  The grid search setup printout now also included the number of increments 
for each parameter.
........
  r24593 | bugman | 2014-07-22 10:49:33 +0200 (Tue, 22 Jul 2014) | 6 lines
  
  Modified the new print_model_title() specific analysis API method.
  
  This now accepts the prefix argument for creating different titles 
independently of the specific
  analysis.
........
  r24594 | bugman | 2014-07-22 10:51:23 +0200 (Tue, 22 Jul 2014) | 5 lines
  
  The grid search setup function now uses the prefix argument to the 
print_model_title() API function.
  
  This is simply set to 'Grid search setup:'.
........
  r24595 | bugman | 2014-07-22 11:22:56 +0200 (Tue, 22 Jul 2014) | 3 lines
  
  The relaxation dispersion API now uses the MODEL_R2EFF variable for 
identifying the R2eff model.
........
  r24597 | bugman | 2014-07-22 13:06:50 +0200 (Tue, 22 Jul 2014) | 5 lines
  
  Changes to the minimise.grid_search user function front end.
  
  The Boolean constraints argument has been shifted to the end, and empty 
lines have been removed.
........
  r24598 | bugman | 2014-07-22 13:11:50 +0200 (Tue, 22 Jul 2014) | 3 lines
  
  Epydoc docstring fixes for the keyword arguments of the 
pipe_control.minimise module.
........
  r24599 | bugman | 2014-07-22 13:12:40 +0200 (Tue, 22 Jul 2014) | 3 lines
  
  Shifted the constraints boolean argument to the end of the grid_search() 
function argument list.
........
  r24600 | bugman | 2014-07-22 13:36:33 +0200 (Tue, 22 Jul 2014) | 12 lines
  
  Major change to the grid search user function.
  
  The minimise.grid_search user function now accepts the skip_preset flag.  
When True, the grid search
  will skip any parameters with a preset value.  This allows the user to set 
parameters via the
  value.set user function and then have these parameters skipped in the grid 
search.
  
  The new skip_preset argument is passed into the 
pipe_control.minimise.grid_setup() function in the
  backend.  This then sets both the grid lower and upper bounds to the preset 
parameter value and sets
  the number of increments to 1 for that parameter so that it is essentially 
skipped in the grid
  search.
........
  r24601 | bugman | 2014-07-22 13:44:40 +0200 (Tue, 22 Jul 2014) | 7 lines
  
  Increased the amount of user feedback for the minimise.grid_search user 
function.
  
  Now a comment for each parameter is included in the printed grid search 
setup table.  This includes
  if the lower or upper bounds, or both, have been supplied by the user and 
if a preset value has been
  used instead.
........
  r24602 | bugman | 2014-07-22 13:46:27 +0200 (Tue, 22 Jul 2014) | 3 lines
  
  Small change to the table printed out during the minimise.grid_search setup.
........
  r24603 | bugman | 2014-07-22 14:22:48 +0200 (Tue, 22 Jul 2014) | 5 lines
  
  Fix for the skipping of preset parameters in the grid search.
  
  Dictionary and list type parameters are now handled correctly.
........
  r24604 | bugman | 2014-07-22 14:30:48 +0200 (Tue, 22 Jul 2014) | 24 lines
  
  Converted the relaxation dispersion analysis to the new grid bounds and 
scaling factor design.
  
  The parameter object now registers the grid bounds and scaling factors for 
all of the dispersion
  parameters.  This includes the functions dw_lower(), dwH_lower(), 
pA_lower() and i0_upper() in the
  specific_analyses.relax_disp.parameter_object module for calculating some 
of these values.
  
  The specific_analyses.relax_disp.parameters.assemble_scaling_matrix() 
function has been deleted as
  this is now provided by the upstream code in pipe_control.minimise.  And 
the API methods
  grid_search() and minimise() has been modified to accept the list of 
scaling matrices.
  
  As the grid bounds and increments are now handled by the upstream 
pipe_control.minimise.grid_setup()
  function, the specific_analyses.relax_disp.optimisation.grid_search_setup() 
function was redundant
  and was deleted.
  
  The specific_analyses.relax_disp.parameters.get_param_names() function was 
also modified with the
  full argument added, to allow either the base parameter names or an 
augmented form with the
  dictionary key for presenting to the user to be returned.
  
  Importantly to allow the changes to be operational, the model_loop() API 
method was redesigned so
  that, for the R2eff base model, the individual spins rather than spin 
clusters will be looped over.
  This allows the specific_analyses.relax_disp.optimisation.minimise_r2eff() 
function to continue to
  operate correctly.
........
  r24605 | bugman | 2014-07-22 14:33:18 +0200 (Tue, 22 Jul 2014) | 6 lines
  

[... 1023 lines stripped ...]



Related Messages


Powered by MHonArc, Updated Thu Jul 24 13:40:02 2014