#include "maloc/maloc.h"
#include "apbs/apbs.h"
#include "isim/various.h"
#include "isim/ionlist.h"
#include "isim/params.h"
#include "isim/energy.h"
#include "isim/macromolecule.h"
#include "isim/twister.h"
Go to the source code of this file.
Compounds | |
| struct | ssystem |
| Class for simulation system objects. More... | |
Defines | |
| #define | _SSYSTEM_H_ 1 |
| Environment variable for 'ssystem.h'. | |
Typedefs | |
| typedef ssystem | ssystem |
Functions | |
| ssystem * | ssystem_ctor () |
| Constructor for the ssystem object. More... | |
| void | ssystem_dtor (ssystem *thee) |
| Destructor for the ssystem object. More... | |
| double | sphere_volume (ssystem *thee) |
| Volume calculation for a sphere. More... | |
| double | cylinder_volume (ssystem *thee) |
| Volume calculation for a cylinder. More... | |
| void | sphere_valid_xyz (ssystem *thee, double *xyz) |
Generate a point (Cartesian in
) inside the solvent- accessible volume of a sphere (accessibility is mediated by the macromolecule object hidden in 'thee'). More... | |
| void | cylinder_valid_xyz (ssystem *thee, double *xyz) |
Generate a point (Cartesian in
) inside the solvent- accessible volume of a cylinder (accessibility is mediated by the macromolecule object hidden in 'thee'). More... | |
| void | sphere_move_one (ssystem *thee, int type, int pos) |
| Move a specified ion hidden in 'thee->ions' under the restriction of the spherical system boundaries, updates the coordinates array within the ionlist object directly. More... | |
| void | cylinder_move_one (ssystem *thee, int type, int pos) |
| Move a specified ion hidden in 'thee->ions' under the restriction of the cylindrical system boundaries, updates the coordinates array within the ionlist object directly. More... | |
| void | sphere_move_some (ssystem *thee, int type, int start, int nr, double *coordsnew[]) |
| Move some specified ions hidden in 'thee->ions' under the restriction of the spherical system boundaries, writes the new coordinates to temporary array. More... | |
| void | cylinder_move_some (ssystem *thee, int type, int start, int nr, double *coordsnew[]) |
| Move some specified ions hidden in 'thee->ions' under the restriction of the cylindrical system boundaries, writes the new coordinates to temporary array. More... | |
| void | ssystem_setup (ssystem *thee) |
| Setup routine for the ssystem object (i.e. the whole simulation). More... | |
| int | ssystem_parprepare (ssystem *thee) |
| Additional setup function used in parametrization mode. More... | |
| void | ssystem_process_results (ssystem *thee) |
| Transforms the primary results obtained in a parametrization simulation into excess chemical potentials. More... | |
| void | ssystem_calculate_expects (ssystem *thee) |
| Calculate numbers for ions in solvent-accessible volume according to specific ion concentrations and system size when assuming a bulk electrolyte solution. More... | |
| void | ssystem_populate (ssystem *thee) |
| Populate the simulation system with initial (bulk) numbers of ions of each type in an entirely random conformation (the only restrictions are the system boundaries and the solvent accessiblity of the coordinates). More... | |
| void | ssystem_creation_destruction (ssystem *thee, int GCsteps, int type) |
| Routine provides the "heart" of the whole simulation: Ions are attempted to be created (random, accessible point) and destroyed (random choice) always one for both attempts for each type according to ion type's input order (e.g. if two ionic species "joe" and "jill" are specified, it tries to create one joe-ion, tries to destroy one joe-ion, tries to create one jill-ion and finally tries to destroy one jill-ion). More... | |
| void | ssystem_minimization (ssystem *thee, int minsteps, FILE *en) |
| This routine is a simple Monte Carlo moving procedure at 0K, ions are attempted to be moved and the energy change is evaluated after each single movement. More... | |
| void | ssystem_shuffling (ssystem *thee, int MCsteps, int step, char mode, FILE *en) |
| This routine is a simple Monte Carlo moving procedure at the simulation temperature, which offers different modes. More... | |
Since 'ssystem' is something like the master class this file (directly or indrectly) depends on almost all other ISIM-files
* * ISIM (simulation of explicit ions in the GCE) * * * Dept. of Chemistry and Biochemistry * University of California, San Diego * * Additional contributing authors listed in the code documentation. * * Copyright (c) 1999-2002. The Regents of the University of California * (Regents). All Rights Reserved. * * Permission to use, copy, modify, and distribute this software and its * documentation for educational, research, and not-for-profit purposes, * without fee and without a signed licensing agreement, is hereby granted, * provided that the above copyright notice, this paragraph and the * following two paragraphs appear in all copies, modifications, and * distributions. * * IN NO EVENT SHALL REGENTS BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, * SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING LOST PROFITS, * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF * REGENTS HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * * REGENTS SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A * PARTICULAR PURPOSE. THE SOFTWARE AND ACCOMPANYING DOCUMENTATION, IF * ANY, PROVIDED HEREUNDER IS PROVIDED "AS IS". REGENTS HAS NO OBLIGATION * TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR * MODIFICATIONS. * *
1.2.14 written by Dimitri van Heesch,
© 1997-2002