Main Page   Modules   Compound List   File List   Compound Members   File Members  

ssystem.h File Reference

Data members and function declarations for class ssystem. More...

#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

ssystemssystem_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...


Detailed Description

Data members and function declarations for class ssystem.

Since 'ssystem' is something like the master class this file (directly or indrectly) depends on almost all other ISIM-files

Version:
Id:
ssystem.h,v 1.6 2002/05/14 21:47:11 apbs Exp
Author:
Andreas Vitalis
Attention:
 *
 * 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.
 *
 * 

Generated on Tue Jun 18 16:58:29 2002 for ISIM by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002