Main Page   Modules   Compound List   File List   Compound Members   File Members  

analysis class

Class that provides a module, which performs all analysis tasks. More...


Files

file  analysis.h
 Data members and function declarations for class analysis.


Compounds

struct  analysis
 Definition of analysis class. More...


Defines

#define _ANALYSIS_H_   1
 Environment variable for 'analysis.h'.


Functions

analysis * analysis_ctor (char *inputpath, int len)
 Constructor for the analysis object. More...

void analysis_dtor (analysis *thee, int len)
 Destructor for the analysis object. More...

int sphere_grbuilder (analysis *thee, ssystem *kalle)
 Build a spherical, non-redundant grid. More...

int cylinder_grbuilder (analysis *thee, ssystem *kalle)
 Build a cylindrical, non-redundant grid. More...

void sphere_paircorr (analysis *thee, ssystem *kalle, int step)
 Get pair correlation functions for a spherical simulation system. More...

void cylinder_paircorr (analysis *thee, ssystem *kalle, int step)
 Get pair correlation functions for a cylindrical simulation system. More...

int sphere_get_gridpoint (double rad, double len, int res, double *xyz)
 Tool to get the nearest grid point (spherical grid) for a specified point. More...

int cylinder_get_gridpoint (double rad, double len, int res, double *xyz)
 Tool to get the nearest grid point (cylindrical grid) for a specified point. More...

void analysis_grpot (analysis *thee, ssystem *kalle, int step)
 Perform potential calculation on grid. More...

void analysis_setup (analysis *thee, ssystem *kalle)
 Setup routine for assigning function pointers, transferring parameters and verifying user input in the log-file. More...

void analysis_reset_files (analysis *thee)
 Little routine, which closes and re-opens important files. More...

void analysis_kill_files (analysis *thee)
 Little routine, which kills certain files during parametrization. More...

void analysis_make (analysis *thee, ssystem *kalle, int step)
 "Master" function. More...

char * analysis_sysname (char *s, char *name, int nr, int max)
 Tool to get systematic filenames. More...

void analysis_grdtor (analysis *thee, ssystem *kalle)
 Destructor for all grid-related arrays. More...

void analysis_mmpaircorr (analysis *thee, ssystem *kalle, int step)
 Routine that calculates ion distribution functions around the macromolecule. More...


Detailed Description

Class that provides a module, which performs all analysis tasks.

To be able to handle the different simulation systems (cylindrical and spherical ones) function pointers are used (which replace virtual abstract functions and inheritance in Clean OO-C)

This class is the only one within ISIM, which is "outside" of the ssystem class


Function Documentation

analysis* analysis_ctor char *    inputpath,
int    len
 

Constructor for the analysis object.

Opens some of the output files and writes a header section to the log- and error-files

Author:
Andreas Vitalis
Parameters:
inputpath  Character pointer to the input path via command line
len  Index for inputpath, which holds the terminate-string character
Returns:
Analysis object

void analysis_dtor analysis   thee,
int    len
 

Destructor for the analysis object.

Closes some of the output files and writes a concluding section to the log- and error-files

Author:
Andreas Vitalis
Parameters:
thee  Analysis object
len  Index for inputpath, which holds the terminate-string character

void analysis_grdtor analysis   thee,
ssystem   kalle
 

Destructor for all grid-related arrays.

Author:
Andreas Vitalis
Parameters:
thee  Analysis object
kalle  Ssystem object ("master object")

void analysis_grpot analysis   thee,
ssystem   kalle,
int    step
 

Perform potential calculation on grid.

Analysis and output frequency are dependent on the user choices (hidden in 'kalle'), also manages value initialization

Author:
Andreas Vitalis
Parameters:
thee  Analysis object
kalle  Ssystem object ("master object")
step  integer number for the actual simulation step

void analysis_kill_files analysis   thee
 

Little routine, which kills certain files during parametrization.

Author:
Andreas Vitalis
Parameters:
thee  Analysis object

void analysis_make analysis   thee,
ssystem   kalle,
int    step
 

"Master" function.

Analysis and output frequency are dependent on the user choices (hidden in 'kalle'), makes calls to 'analysis_grpot' and the function pointer for pair correlation analysis

Author:
Andreas Vitalis
Parameters:
thee  Analysis object
kalle  Ssystem object ("master object")
step  integer number for the actual simulation step

void analysis_mmpaircorr analysis   thee,
ssystem   kalle,
int    step
 

Routine that calculates ion distribution functions around the macromolecule.

For Born ions the problem is essentially radial, for charged cylinders a constant resolution expansion of larger, cylindrical shapes is done to calculate the ion distribution; this can be problematic, as ions, which are 'diagonally off' the macroion contribute to the same shell despite having a different distance from the surface; no analysis is done for other macromolecules (yet)

Author:
Andreas Vitalis
Parameters:
thee  Analysis object
kalle  Ssystem object ("master object")
step  integer number for the actual simulation step

void analysis_reset_files analysis   thee
 

Little routine, which closes and re-opens important files.

Author:
Andreas Vitalis
Parameters:
thee  Analysis object

void analysis_setup analysis   thee,
ssystem   kalle
 

Setup routine for assigning function pointers, transferring parameters and verifying user input in the log-file.

Also builds the grid by calling the corresponding function pointer

Author:
Andreas Vitalis
Parameters:
thee  Analysis object
kalle  Ssystem object ("master object")

char* analysis_sysname char *    s,
char *    name,
int    nr,
int    max
 

Tool to get systematic filenames.

Takes no this/thee-pointer

Author:
Andreas Vitalis
Parameters:
s  Character pointer representing the starting string for the filename
name  Character pointer to hold the complete name
nr  Integer number to appear in the name (e.g. a step number)
max  Integer giving the maximum number of digits in 'nr'
Returns:
pointer to complete name (same as 'name')

int cylinder_get_gridpoint double    rad,
double    len,
int    res,
double *    xyz
 

Tool to get the nearest grid point (cylindrical grid) for a specified point.

Takes no this/thee-pointer

Author:
Andreas Vitalis
Parameters:
rad  Simulation cylinder radius around z-axis
len  Simulation cylinder length in z-direction
res  Grid resolution
xyz  Pointer to coordinate array holding the point of interest (Cartesian in )
Returns:
Integer number, which specifies number of gridpoint in arrays (indexing starts at '1')

int cylinder_grbuilder analysis   thee,
ssystem   kalle
 

Build a cylindrical, non-redundant grid.

Allocates memory for the grid-dependent arrays and fills 'thee->gridxyz' as well as the volume array 'thee->normvol'

Author:
Andreas Vitalis
Parameters:
thee  Analysis object
kalle  Ssystem object ("master object")

void cylinder_paircorr analysis   thee,
ssystem   kalle,
int    step
 

Get pair correlation functions for a cylindrical simulation system.

Analysis and output frequency are dependent on the user choices (hidden in 'kalle'), also handles memory allocation and value initialization

Author:
Andreas Vitalis
Parameters:
thee  Analysis object
kalle  Ssystem object ("master object")
step  integer number for the actual simulation step

int sphere_get_gridpoint double    rad,
double    len,
int    res,
double *    xyz
 

Tool to get the nearest grid point (spherical grid) for a specified point.

Takes no this/thee-pointer

Author:
Andreas Vitalis
Parameters:
rad  Simulation sphere radius
len  Unused
res  Grid resolution
xyz  Pointer to coordinate array holding the point of interest (Cartesian in )
Returns:
Integer number, which specifies number of gridpoint in arrays (indexing starts at '1')

int sphere_grbuilder analysis   thee,
ssystem   kalle
 

Build a spherical, non-redundant grid.

Allocates memory for the grid-dependent arrays and fills 'thee->gridxyz' as well as the volume arrays 'thee->normvol' and 'thee->cellvol'

Author:
Andreas Vitalis
Parameters:
thee  Analysis object
kalle  Ssystem object ("master object")

void sphere_paircorr analysis   thee,
ssystem   kalle,
int    step
 

Get pair correlation functions for a spherical simulation system.

Analysis and output frequency are dependent on the user choices (hidden in 'kalle'), also handles memory allocation and value initialization

Author:
Andreas Vitalis
Parameters:
thee  Analysis object
kalle  Ssystem object ("master object")
step  integer number for the actual simulation step


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