| 35 |
|
#define G_BOXZ 14 |
| 36 |
|
#define G_SAMPLETIME 15 |
| 37 |
|
#define G_STATUSTIME 16 |
| 38 |
< |
#define G_ECR 17 |
| 39 |
< |
#define G_DIELECTRIC 18 |
| 40 |
< |
#define G_TEMPSET 19 |
| 41 |
< |
#define G_THERMALTIME 20 |
| 42 |
< |
#define G_USEPBC 21 |
| 43 |
< |
#define G_MIXINGRULE 22 |
| 44 |
< |
#define G_EST 23 |
| 38 |
> |
#define G_RCUT 17 |
| 39 |
> |
#define G_RSW 18 |
| 40 |
> |
#define G_DIELECTRIC 19 |
| 41 |
> |
#define G_TEMPSET 20 |
| 42 |
> |
#define G_THERMALTIME 21 |
| 43 |
> |
#define G_USEPBC 22 |
| 44 |
> |
#define G_MIXINGRULE 23 |
| 45 |
|
#define G_USERF 24 |
| 46 |
|
#define G_TARGETPRESSURE 25 |
| 47 |
|
#define G_TAUTHERMOSTAT 26 |
| 55 |
|
#define G_USEINITTIME 34 |
| 56 |
|
#define G_USEINIT_XS_STATE 35 |
| 57 |
|
#define G_ORTHOBOXTOLERANCE 36 |
| 58 |
< |
#define G_LJRCUT 37 |
| 59 |
< |
#define G_MINIMIZER 38 |
| 60 |
< |
#define G_MIN_MAXITER 39 |
| 61 |
< |
#define G_MIN_WRITEFRQ 40 |
| 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 |
| 58 |
> |
#define G_MINIMIZER 37 |
| 59 |
> |
#define G_MIN_MAXITER 38 |
| 60 |
> |
#define G_MIN_WRITEFRQ 39 |
| 61 |
> |
#define G_MIN_STEPSIZE 40 |
| 62 |
> |
#define G_MIN_FTOL 41 |
| 63 |
> |
#define G_MIN_GTOL 42 |
| 64 |
> |
#define G_MIN_LSTOL 43 |
| 65 |
> |
#define G_MIN_LSMAXITER 44 |
| 66 |
> |
#define G_ZCONSGAP 45 |
| 67 |
> |
#define G_ZCONSFIXTIME 46 |
| 68 |
> |
#define G_ZCONSUSINGSMD 47 |
| 69 |
|
|
| 70 |
|
Globals::Globals(){ |
| 71 |
|
|
| 98 |
|
addHash( "sampleTime", G_SAMPLETIME ); |
| 99 |
|
addHash( "resetTime", G_RESETTIME ); |
| 100 |
|
addHash( "statusTime", G_STATUSTIME ); |
| 101 |
< |
addHash( "electrostaticCutoffRadius", G_ECR ); |
| 101 |
> |
addHash( "cutoffRadius", G_RCUT ); |
| 102 |
> |
addHash( "switchingRadius", G_RSW ); |
| 103 |
|
addHash( "dielectric", G_DIELECTRIC ); |
| 104 |
|
addHash( "tempSet", G_TEMPSET ); |
| 105 |
|
addHash( "thermalTime", G_THERMALTIME ); |
| 106 |
|
addHash( "mixingRule", G_MIXINGRULE); |
| 107 |
|
addHash( "usePeriodicBoundaryConditions", G_USEPBC); |
| 109 |
– |
addHash( "electrostaticSkinThickness", G_EST ); |
| 108 |
|
addHash( "useReactionField", G_USERF ); |
| 109 |
|
addHash( "targetPressure", G_TARGETPRESSURE); |
| 110 |
|
addHash( "tauThermostat", G_TAUTHERMOSTAT); |
| 117 |
|
addHash( "useInitialTime", G_USEINITTIME); |
| 118 |
|
addHash( "useInitialExtendedSystemState", G_USEINIT_XS_STATE); |
| 119 |
|
addHash( "orthoBoxTolerance", G_ORTHOBOXTOLERANCE); |
| 122 |
– |
addHash( "LJrcut", G_LJRCUT); |
| 120 |
|
addHash( "minimizer", G_MINIMIZER); |
| 121 |
|
addHash( "minMaxIter", G_MIN_MAXITER); |
| 122 |
|
addHash( "minWriteFrq", G_MIN_WRITEFRQ); |
| 128 |
|
addHash( "zconsGap", G_ZCONSGAP); |
| 129 |
|
addHash( "zconsFixtime", G_ZCONSFIXTIME); |
| 130 |
|
addHash( "zconsUsingSMD", G_ZCONSUSINGSMD); |
| 134 |
– |
addHash( "useMolecularCutoffs", G_USEMOLECULARCUTOFFS); |
| 131 |
|
|
| 132 |
|
strcpy( mixingRule,"standard"); //default mixing rules to standard. |
| 133 |
|
usePBC = 1; //default periodic boundry conditions to on |
| 134 |
|
useRF = 0; |
| 139 |
– |
useMolecularCutoffs = 0; |
| 135 |
|
useInitTime = 0; // default to pull init time from the init file |
| 136 |
|
useInitXSstate = 0; // default to pull the extended state from the init file |
| 137 |
|
orthoBoxTolerance = 1E-6; |
| 156 |
|
have_status_time = 0; |
| 157 |
|
have_reset_time = 0; |
| 158 |
|
have_thermal_time = 0; |
| 159 |
< |
have_ecr = 0; |
| 159 |
> |
have_rcut = 0; |
| 160 |
> |
have_rsw = 0; |
| 161 |
|
have_dielectric = 0; |
| 162 |
|
have_tempSet = 0; |
| 167 |
– |
have_est = 0; |
| 163 |
|
have_target_pressure =0; |
| 164 |
|
have_q_mass = 0; |
| 165 |
|
have_tau_thermostat = 0; |
| 172 |
|
have_zcons_fixtime = 0; |
| 173 |
|
have_zcons_using_smd = 0; |
| 174 |
|
have_seed = 0; |
| 180 |
– |
have_ljrcut = 0; |
| 175 |
|
have_minimizer = 0; |
| 176 |
|
have_minimizer_maxiteration = 0; |
| 177 |
|
have_minimizer_writefrq = 0; |
| 180 |
|
have_minimizer_gtol = 0; |
| 181 |
|
have_minimizer_ls_tol = 0; |
| 182 |
|
have_minimizer_ls_maxiteration = 0; |
| 189 |
– |
have_use_molecular_cutoffs = 0; |
| 183 |
|
|
| 184 |
|
} |
| 185 |
|
|
| 853 |
|
default: |
| 854 |
|
the_event->err_msg = |
| 855 |
|
strdup( "Global error. thermalTime unrecognized.\n" ); |
| 863 |
– |
return 0; |
| 864 |
– |
break; |
| 865 |
– |
} |
| 866 |
– |
break; |
| 867 |
– |
|
| 868 |
– |
case G_LJRCUT: |
| 869 |
– |
switch( the_type ){ |
| 870 |
– |
|
| 871 |
– |
case STRING: |
| 872 |
– |
the_event->err_msg = |
| 873 |
– |
strdup( "Global error. LJrcut is not a double or int.\n" ); |
| 874 |
– |
return 0; |
| 875 |
– |
break; |
| 876 |
– |
|
| 877 |
– |
case DOUBLE: |
| 878 |
– |
LJrcut = the_event->evt.asmt.rhs.dval; |
| 879 |
– |
have_ljrcut = 1; |
| 880 |
– |
return 1; |
| 881 |
– |
break; |
| 882 |
– |
|
| 883 |
– |
case INT: |
| 884 |
– |
LJrcut = (double)the_event->evt.asmt.rhs.ival; |
| 885 |
– |
have_ljrcut = 1; |
| 886 |
– |
return 1; |
| 887 |
– |
break; |
| 888 |
– |
|
| 889 |
– |
default: |
| 890 |
– |
the_event->err_msg = |
| 891 |
– |
strdup( "Global error. LJrcut unrecognized.\n" ); |
| 856 |
|
return 0; |
| 857 |
|
break; |
| 858 |
|
} |
| 859 |
|
break; |
| 860 |
|
|
| 861 |
< |
case G_ECR: |
| 861 |
> |
case G_RCUT: |
| 862 |
|
switch( the_type ){ |
| 863 |
|
|
| 864 |
|
case STRING: |
| 865 |
|
the_event->err_msg = |
| 866 |
< |
strdup( "Global error. electrostaticCutoffRadius is not a double or int.\n" ); |
| 866 |
> |
strdup( "Global error. cutoffRadius is not a double or int.\n" ); |
| 867 |
|
return 0; |
| 868 |
|
break; |
| 869 |
|
|
| 870 |
|
case DOUBLE: |
| 871 |
< |
ecr = the_event->evt.asmt.rhs.dval; |
| 872 |
< |
have_ecr = 1; |
| 871 |
> |
rcut = the_event->evt.asmt.rhs.dval; |
| 872 |
> |
have_rcut = 1; |
| 873 |
|
return 1; |
| 874 |
|
break; |
| 875 |
|
|
| 876 |
|
case INT: |
| 877 |
< |
ecr = (double)the_event->evt.asmt.rhs.ival; |
| 878 |
< |
have_ecr = 1; |
| 877 |
> |
rcut = (double)the_event->evt.asmt.rhs.ival; |
| 878 |
> |
have_rcut = 1; |
| 879 |
|
return 1; |
| 880 |
|
break; |
| 881 |
|
|
| 882 |
|
default: |
| 883 |
|
the_event->err_msg = |
| 884 |
< |
strdup( "Global error. electrostaticCutoffRadius unrecognized.\n" ); |
| 884 |
> |
strdup( "Global error. cutoffRadius unrecognized.\n" ); |
| 885 |
|
return 0; |
| 886 |
|
break; |
| 887 |
|
} |
| 888 |
|
break; |
| 889 |
|
|
| 890 |
< |
case G_EST: |
| 890 |
> |
case G_RSW: |
| 891 |
|
switch( the_type ){ |
| 892 |
|
|
| 893 |
|
case STRING: |
| 894 |
|
the_event->err_msg = |
| 895 |
< |
strdup( "Global error. electrostaticSkinThickness is not a double or int.\n" ); |
| 895 |
> |
strdup( "Global error. switchingRadius is not a double or int.\n" ); |
| 896 |
|
return 0; |
| 897 |
|
break; |
| 898 |
|
|
| 899 |
|
case DOUBLE: |
| 900 |
< |
est = the_event->evt.asmt.rhs.dval; |
| 901 |
< |
have_est = 1; |
| 900 |
> |
rsw = the_event->evt.asmt.rhs.dval; |
| 901 |
> |
have_rsw = 1; |
| 902 |
|
return 1; |
| 903 |
|
break; |
| 904 |
|
|
| 905 |
|
case INT: |
| 906 |
< |
est = (double)the_event->evt.asmt.rhs.ival; |
| 907 |
< |
have_est = 1; |
| 906 |
> |
rsw = (double)the_event->evt.asmt.rhs.ival; |
| 907 |
> |
have_rsw = 1; |
| 908 |
|
return 1; |
| 909 |
|
break; |
| 910 |
|
|
| 911 |
|
default: |
| 912 |
|
the_event->err_msg = |
| 913 |
< |
strdup( "Global error. electrostaticSkinThickness unrecognized.\n" ); |
| 913 |
> |
strdup( "Global error. switchingRadius unrecognized.\n" ); |
| 914 |
|
return 0; |
| 915 |
|
break; |
| 916 |
|
} |
| 1035 |
|
|
| 1036 |
|
the_event->err_msg = |
| 1037 |
|
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" ); |
| 1038 |
|
return 0; |
| 1039 |
|
break; |
| 1040 |
|
|