APBS 3.0.0
Loading...
Searching...
No Matches
pbeparm.h
Go to the documentation of this file.
1
62#ifndef _PBEPARM_H_
63#define _PBEPARM_H_
64
65#include "apbscfg.h"
66
67#include "maloc/maloc.h"
68
69#include "generic/vhal.h"
70#include "generic/vstring.h"
71
75#define PBEPARM_MAXWRITE 20
76
86
92
102
108
117struct sPBEparm {
118
119 int molid;
138 int nion;
140 double ionq[MAXION];
141 double ionc[MAXION];
142 double ionr[MAXION];
144 double pdie;
146 double sdens;
148 double sdie;
152 double srad;
154 double swin;
156 double temp;
159 double smsize;
162 double smvolume;
170 /*----------------------------------------------------------------*/
171 /* Added by Michael Grabe */
172 /*----------------------------------------------------------------*/
173
174 double zmem;
176 double Lmem;
178 double mdie;
180 double memv;
183 /*----------------------------------------------------------------*/
184
186 char writestem[PBEPARM_MAXWRITE][VMAX_ARGLEN];
195 char writematstem[VMAX_ARGLEN];
201 /*Added for issue 482*/
202 char pbam_3dmapstem[VMAX_ARGLEN];
203 int pbam_3dmapflag;
204
205 int parsed;
207};
208
213typedef struct sPBEparm PBEparm;
214
215/* ///////////////////////////////////////////////////////////////////////////
216// Class NOsh: Non-inlineable methods (mcsh.c)
218
224VEXTERNC double PBEparm_getIonCharge(
225 PBEparm *thee, /**< PBEparm object */
226 int iion
227 );
228
234VEXTERNC double PBEparm_getIonConc(
235 PBEparm *thee,
236 int iion
237 );
238
244VEXTERNC double PBEparm_getIonRadius(
245 PBEparm *thee,
246 int iion
247 );
248
249
255VEXTERNC PBEparm* PBEparm_ctor();
256
262VEXTERNC int PBEparm_ctor2(
263 PBEparm *thee
264 );
265
270VEXTERNC void PBEparm_dtor(
271 PBEparm **thee
272 );
273
278VEXTERNC void PBEparm_dtor2(
279 PBEparm *thee
280 );
281
287VEXTERNC int PBEparm_check(
288 PBEparm *thee
289 );
290
295VEXTERNC void PBEparm_copy(
296 PBEparm *thee,
297 PBEparm *parm
298 );
299
306VEXTERNC int PBEparm_parseToken(
307 PBEparm *thee,
308 char tok[VMAX_BUFSIZE],
309 Vio *sock
310 );
311
312
313#endif
314
enum ePBEparm_calcForce PBEparm_calcForce
Define ePBEparm_calcForce enumeration as PBEparm_calcForce.
Definition pbeparm.h:107
ePBEparm_calcForce
Define force calculation enumeration.
Definition pbeparm.h:97
ePBEparm_calcEnergy
Define energy calculation enumeration.
Definition pbeparm.h:81
#define PBEPARM_MAXWRITE
Number of things that can be written out in a single calculation.
Definition pbeparm.h:75
VEXTERNC void PBEparm_copy(PBEparm *thee, PBEparm *parm)
Copy PBEparm object into thee.
Definition pbeparm.c:283
VEXTERNC void PBEparm_dtor(PBEparm **thee)
Object destructor.
Definition pbeparm.c:173
enum ePBEparm_calcEnergy PBEparm_calcEnergy
Define ePBEparm_calcEnergy enumeration as PBEparm_calcEnergy.
Definition pbeparm.h:91
VEXTERNC int PBEparm_check(PBEparm *thee)
Consistency check for parameter values stored in object.
Definition pbeparm.c:183
VEXTERNC void PBEparm_dtor2(PBEparm *thee)
FORTRAN stub for object destructor.
Definition pbeparm.c:181
VEXTERNC double PBEparm_getIonRadius(PBEparm *thee, int iion)
Get radius (A) of specified ion species.
Definition pbeparm.c:77
VEXTERNC PBEparm * PBEparm_ctor()
Construct PBEparm object.
Definition pbeparm.c:104
VEXTERNC int PBEparm_ctor2(PBEparm *thee)
FORTRAN stub to construct PBEparm object.
Definition pbeparm.c:115
VEXTERNC double PBEparm_getIonConc(PBEparm *thee, int iion)
Get concentration (M) of specified ion species.
Definition pbeparm.c:71
VEXTERNC int PBEparm_parseToken(PBEparm *thee, char tok[VMAX_BUFSIZE], Vio *sock)
Parse a keyword from an input file.
Definition pbeparm.c:1215
@ PCF_COMPS
Definition pbeparm.h:100
@ PCF_TOTAL
Definition pbeparm.h:99
@ PCF_NO
Definition pbeparm.h:98
@ PCE_TOTAL
Definition pbeparm.h:83
@ PCE_COMPS
Definition pbeparm.h:84
@ PCE_NO
Definition pbeparm.h:82
enum eVdata_Format Vdata_Format
Declaration of the Vdata_Format type as the Vdata_Format enum.
Definition vhal.h:323
enum eVsurf_Meth Vsurf_Meth
Declaration of the Vsurf_Meth type as the Vsurf_Meth enum.
Definition vhal.h:133
enum eVbcfl Vbcfl
Declare Vbcfl type.
Definition vhal.h:223
#define MAXION
The maximum number of ion species that can be involved in a single PBE calculation.
Definition vhal.h:377
enum eVhal_PBEType Vhal_PBEType
Declaration of the Vhal_PBEType type as the Vhal_PBEType enum.
Definition vhal.h:151
enum eVdata_Type Vdata_Type
Declaration of the Vdata_Type type as the Vdata_Type enum.
Definition vhal.h:302
Parameter structure for PBE variables from input files.
Definition pbeparm.h:117
double smsize
Definition pbeparm.h:159
int setsmsize
Definition pbeparm.h:160
int setsrad
Definition pbeparm.h:153
int numwrite
Definition pbeparm.h:185
int writemat
Definition pbeparm.h:191
int setsdie
Definition pbeparm.h:149
PBEparm_calcEnergy calcenergy
Definition pbeparm.h:165
int writematflag
Definition pbeparm.h:196
int setcalcforce
Definition pbeparm.h:168
char writematstem[VMAX_ARGLEN]
Definition pbeparm.h:195
int parsed
Definition pbeparm.h:205
Vbcfl bcfl
Definition pbeparm.h:136
double pdie
Definition pbeparm.h:144
int useChargeMap
Definition pbeparm.h:131
int kappaMapID
Definition pbeparm.h:126
Vdata_Format writefmt[PBEPARM_MAXWRITE]
Definition pbeparm.h:189
int setmolid
Definition pbeparm.h:120
double zmem
Definition pbeparm.h:174
int usePotMap
Definition pbeparm.h:127
int setswin
Definition pbeparm.h:155
Vhal_PBEType pbetype
Definition pbeparm.h:134
double mdie
Definition pbeparm.h:178
int setion[MAXION]
Definition pbeparm.h:143
int setmemv
Definition pbeparm.h:181
char writestem[PBEPARM_MAXWRITE][VMAX_ARGLEN]
Definition pbeparm.h:186
double swin
Definition pbeparm.h:154
int settemp
Definition pbeparm.h:157
int setbcfl
Definition pbeparm.h:137
int nion
Definition pbeparm.h:138
double sdens
Definition pbeparm.h:146
double memv
Definition pbeparm.h:180
int setpbetype
Definition pbeparm.h:135
int chargeMapID
Definition pbeparm.h:133
int setsrfm
Definition pbeparm.h:151
int setsdens
Definition pbeparm.h:147
int setmdie
Definition pbeparm.h:179
double temp
Definition pbeparm.h:156
int potMapID
Definition pbeparm.h:129
Vsurf_Meth srfm
Definition pbeparm.h:150
double sdie
Definition pbeparm.h:148
Vdata_Type writetype[PBEPARM_MAXWRITE]
Definition pbeparm.h:188
int setpdie
Definition pbeparm.h:145
double Lmem
Definition pbeparm.h:176
double ionr[MAXION]
Definition pbeparm.h:142
int useDielMap
Definition pbeparm.h:121
PBEparm_calcForce calcforce
Definition pbeparm.h:167
int setsmvolume
Definition pbeparm.h:163
int useKappaMap
Definition pbeparm.h:124
int setwritemat
Definition pbeparm.h:194
int setnion
Definition pbeparm.h:139
int dielMapID
Definition pbeparm.h:123
int molid
Definition pbeparm.h:119
int setzmem
Definition pbeparm.h:175
double smvolume
Definition pbeparm.h:162
double srad
Definition pbeparm.h:152
double ionc[MAXION]
Definition pbeparm.h:141
int setcalcenergy
Definition pbeparm.h:166
int setLmem
Definition pbeparm.h:177
double ionq[MAXION]
Definition pbeparm.h:140
Contains generic macro definitions for APBS.
Contains declarations for class Vstring.