Management of large, hierarchical parameter sets for modelling and simulation
We consider it to be best practice to cleanly separate the parameters of a model from the model itself. At the least, parameters should be defined in a separate section at the start of a file. Ideally, they should be defined in a separate file entirely. This makes version control easier, since the model code typically changes less often than the parameters, and makes it easier to track a simulation project, since the parameter sets can be stored in a database, displayed in a GUI, etc.
The Parameters package provides Python classes to make it easier to work with parameter sets for complex models. In particular it provides tools for
- working with parameters for models that have a deep hierarchical structure;
- specifying that a parameter value should be drawn from a random distribution;
- specifying a range of values, for example for performing a sensitivity analysis;
- specifying the physical dimensions and range of permissible values of parameters;
- defining and iterating over multiple points in a parameter space;
- validation of parameter sets against a pre-defined schema.
Copyright (C) 2008-2013 Andrew Davison, Eilif Muller, Jan Antolik
Parameters is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
The GNU General Public License does not permit this software to be redistributed in proprietary programs.
$ pip install parameters