59 |
|
#define G_MINIMIZER 38 |
60 |
|
#define G_MIN_MAXITER 39 |
61 |
|
#define G_MIN_WRITEFRQ 40 |
62 |
< |
#define G_MIN_RESETFRQ 41 |
62 |
> |
#define G_MIN_STEPSIZE 41 |
63 |
|
#define G_MIN_FTOL 42 |
64 |
|
#define G_MIN_GTOL 43 |
65 |
|
#define G_MIN_LSTOL 44 |
66 |
|
#define G_MIN_LSMAXITER 45 |
67 |
+ |
#define G_ZCONSGAP 46 |
68 |
+ |
#define G_ZCONSFIXTIME 47 |
69 |
+ |
#define G_ZCONSUSINGSMD 48 |
70 |
+ |
#define G_USEMOLECULARCUTOFFS 49 |
71 |
|
|
68 |
– |
|
72 |
|
Globals::Globals(){ |
73 |
|
|
74 |
|
int i; |
123 |
|
addHash( "minimizer", G_MINIMIZER); |
124 |
|
addHash( "minMaxIter", G_MIN_MAXITER); |
125 |
|
addHash( "minWriteFrq", G_MIN_WRITEFRQ); |
126 |
< |
addHash( "minResetFrq", G_MIN_RESETFRQ); |
126 |
> |
addHash( "minStepSize", G_MIN_STEPSIZE); |
127 |
|
addHash( "minFTol", G_MIN_FTOL); |
128 |
|
addHash( "minGTol", G_MIN_GTOL); |
129 |
|
addHash( "minLSTol", G_MIN_LSTOL); |
130 |
|
addHash( "minLSMaxIter", G_MIN_LSMAXITER); |
131 |
< |
|
131 |
> |
addHash( "zconsGap", G_ZCONSGAP); |
132 |
> |
addHash( "zconsFixtime", G_ZCONSFIXTIME); |
133 |
> |
addHash( "zconsUsingSMD", G_ZCONSUSINGSMD); |
134 |
> |
addHash( "useMolecularCutoffs", G_USEMOLECULARCUTOFFS); |
135 |
|
|
136 |
|
strcpy( mixingRule,"standard"); //default mixing rules to standard. |
137 |
|
usePBC = 1; //default periodic boundry conditions to on |
138 |
|
useRF = 0; |
139 |
< |
useInitTime = 1; // default to pull init time from the init file |
140 |
< |
useInitXSstate = 1; // default to pull the extended state from the init file |
139 |
> |
useMolecularCutoffs = 0; |
140 |
> |
useInitTime = 0; // default to pull init time from the init file |
141 |
> |
useInitXSstate = 0; // default to pull the extended state from the init file |
142 |
|
orthoBoxTolerance = 1E-6; |
143 |
|
|
144 |
|
have_force_field = 0; |
173 |
|
have_n_zConstraints = 0; |
174 |
|
have_zConstraints = 0; |
175 |
|
have_zcons_tol = 0; |
176 |
+ |
have_zcons_gap = 0; |
177 |
+ |
have_zcons_fixtime = 0; |
178 |
+ |
have_zcons_using_smd = 0; |
179 |
|
have_seed = 0; |
180 |
|
have_ljrcut = 0; |
181 |
+ |
have_minimizer = 0; |
182 |
+ |
have_minimizer_maxiteration = 0; |
183 |
+ |
have_minimizer_writefrq = 0; |
184 |
+ |
have_minimizer_stepsize = 0; |
185 |
+ |
have_minimizer_ftol = 0; |
186 |
+ |
have_minimizer_gtol = 0; |
187 |
+ |
have_minimizer_ls_tol = 0; |
188 |
+ |
have_minimizer_ls_maxiteration = 0; |
189 |
+ |
have_use_molecular_cutoffs = 0; |
190 |
|
|
191 |
|
} |
192 |
|
|
1071 |
|
|
1072 |
|
the_event->err_msg = |
1073 |
|
strdup( "Global error. useReactionField was not \"true\" or \"false\".\n" ); |
1074 |
+ |
return 0; |
1075 |
+ |
break; |
1076 |
+ |
|
1077 |
+ |
case G_USEMOLECULARCUTOFFS: |
1078 |
+ |
if( the_type == STRING ){ |
1079 |
+ |
|
1080 |
+ |
if( !strcasecmp( "true", the_event->evt.asmt.rhs.sval )) useMolecularCutoffs = 1; |
1081 |
+ |
else if( !strcasecmp( "false", the_event->evt.asmt.rhs.sval )) useMolecularCutoffs = 0; |
1082 |
+ |
else{ |
1083 |
+ |
the_event->err_msg = |
1084 |
+ |
strdup( "Global error. useMolecularCutoffs was not \"true\" or \"false\".\n" ); |
1085 |
+ |
return 0; |
1086 |
+ |
} |
1087 |
+ |
return 1; |
1088 |
+ |
} |
1089 |
+ |
|
1090 |
+ |
the_event->err_msg = |
1091 |
+ |
strdup( "Global error. useMolecularCutoffs was not \"true\" or \"false\".\n" ); |
1092 |
|
return 0; |
1093 |
|
break; |
1094 |
|
|
1270 |
|
break; |
1271 |
|
} |
1272 |
|
break; |
1273 |
+ |
|
1274 |
+ |
case G_ZCONSGAP: |
1275 |
+ |
switch( the_type ){ |
1276 |
+ |
|
1277 |
+ |
case STRING: |
1278 |
+ |
the_event->err_msg = |
1279 |
+ |
strdup( "Global error. zcons_gap is not a double or int.\n" ); |
1280 |
+ |
return 0; |
1281 |
+ |
break; |
1282 |
+ |
|
1283 |
+ |
case DOUBLE: |
1284 |
+ |
zcons_gap = the_event->evt.asmt.rhs.dval; |
1285 |
+ |
have_zcons_gap= 1; |
1286 |
+ |
return 1; |
1287 |
+ |
break; |
1288 |
+ |
|
1289 |
+ |
case INT: |
1290 |
+ |
zcons_gap= (double)the_event->evt.asmt.rhs.ival; |
1291 |
+ |
have_zcons_gap= 1; |
1292 |
+ |
return 1; |
1293 |
+ |
break; |
1294 |
+ |
|
1295 |
+ |
default: |
1296 |
+ |
the_event->err_msg = |
1297 |
+ |
strdup( "Global error. zcons_gap unrecognized.\n" ); |
1298 |
+ |
return 0; |
1299 |
+ |
break; |
1300 |
+ |
} |
1301 |
+ |
break; |
1302 |
|
|
1303 |
+ |
case G_ZCONSFIXTIME: |
1304 |
+ |
switch( the_type ){ |
1305 |
+ |
|
1306 |
+ |
case STRING: |
1307 |
+ |
the_event->err_msg = |
1308 |
+ |
strdup( "Global error. zcons_fixtime is not a double or int.\n" ); |
1309 |
+ |
return 0; |
1310 |
+ |
break; |
1311 |
+ |
|
1312 |
+ |
case DOUBLE: |
1313 |
+ |
zcons_fixtime= the_event->evt.asmt.rhs.dval; |
1314 |
+ |
have_zcons_fixtime= 1; |
1315 |
+ |
return 1; |
1316 |
+ |
break; |
1317 |
+ |
|
1318 |
+ |
case INT: |
1319 |
+ |
zcons_fixtime= (double)the_event->evt.asmt.rhs.ival; |
1320 |
+ |
have_zcons_fixtime= 1; |
1321 |
+ |
return 1; |
1322 |
+ |
break; |
1323 |
+ |
|
1324 |
+ |
default: |
1325 |
+ |
the_event->err_msg = |
1326 |
+ |
strdup( "Global error. zcons_fixtime unrecognized.\n" ); |
1327 |
+ |
return 0; |
1328 |
+ |
break; |
1329 |
+ |
} |
1330 |
+ |
break; |
1331 |
+ |
|
1332 |
+ |
case G_ZCONSUSINGSMD: |
1333 |
+ |
switch( the_type ){ |
1334 |
+ |
|
1335 |
+ |
case STRING: |
1336 |
+ |
the_event->err_msg = |
1337 |
+ |
strdup( "Global error. zcons_fixtime is not an int.\n" ); |
1338 |
+ |
return 0; |
1339 |
+ |
break; |
1340 |
+ |
|
1341 |
+ |
case DOUBLE: |
1342 |
+ |
the_event->err_msg = |
1343 |
+ |
strdup( "Global error. zcons_fixtime is not an int.\n" ); |
1344 |
+ |
return 0; |
1345 |
+ |
break; |
1346 |
+ |
|
1347 |
+ |
case INT: |
1348 |
+ |
zcons_using_smd= the_event->evt.asmt.rhs.ival; |
1349 |
+ |
have_zcons_using_smd= 1; |
1350 |
+ |
return 1; |
1351 |
+ |
break; |
1352 |
+ |
|
1353 |
+ |
default: |
1354 |
+ |
the_event->err_msg = |
1355 |
+ |
strdup( "Global error. zcons_usingsmd unrecognized.\n" ); |
1356 |
+ |
return 0; |
1357 |
+ |
break; |
1358 |
+ |
} |
1359 |
+ |
break; |
1360 |
+ |
|
1361 |
|
case G_MINIMIZER: |
1362 |
|
switch( the_type ){ |
1363 |
|
|
1449 |
|
} |
1450 |
|
break; |
1451 |
|
|
1452 |
< |
case G_MIN_RESETFRQ: |
1452 |
> |
case G_MIN_STEPSIZE: |
1453 |
|
switch( the_type ){ |
1454 |
|
|
1455 |
|
case STRING: |
1459 |
|
break; |
1460 |
|
|
1461 |
|
case DOUBLE: |
1462 |
< |
minimizer_resetfrq= the_event->evt.asmt.rhs.dval; |
1463 |
< |
have_minimizer_resetfrq = 1; |
1462 |
> |
minimizer_stepsize= the_event->evt.asmt.rhs.dval; |
1463 |
> |
have_minimizer_stepsize = 1; |
1464 |
|
return 1; |
1465 |
|
break; |
1466 |
|
|
1467 |
|
case INT: |
1468 |
< |
minimizer_resetfrq= the_event->evt.asmt.rhs.ival; |
1469 |
< |
have_minimizer_resetfrq = 1; |
1468 |
> |
minimizer_stepsize= the_event->evt.asmt.rhs.ival; |
1469 |
> |
have_minimizer_stepsize = 1; |
1470 |
|
return 1; |
1471 |
|
break; |
1472 |
|
|
1686 |
|
have_err= 1; |
1687 |
|
} |
1688 |
|
|
1689 |
< |
if( !have_ensemble ){ |
1690 |
< |
strcat( err, "\t->ensemble\n" ); |
1691 |
< |
have_err= 1; |
1692 |
< |
} |
1689 |
> |
if(!have_minimizer) |
1690 |
> |
if( !have_ensemble ){ |
1691 |
> |
strcat( err, "\t->ensemble\n" ); |
1692 |
> |
have_err= 1; |
1693 |
> |
} |
1694 |
|
|
1695 |
|
if( !have_dt ){ |
1696 |
|
strcat( err, "\t->dt\n" ); |