--- trunk/src/io/Globals.cpp 2005/09/16 16:07:39 603 +++ trunk/src/io/Globals.cpp 2005/09/26 15:58:17 629 @@ -120,6 +120,8 @@ #define G_ELECTRO_SUM_METHOD 58 #define G_DAMPING_ALPHA 59 #define G_CUTOFFPOLICY 60 +#define G_COMPRESSDUMPFILE 61 +#define G_SKINTHICKNESS 62 Globals::Globals(){ initalize(); @@ -198,6 +200,8 @@ void Globals::initalize(){ command_table.insert(CommandMapType::value_type("electrostaticSummationMethod", G_ELECTRO_SUM_METHOD)); command_table.insert(CommandMapType::value_type("dampingAlpha", G_DAMPING_ALPHA)); command_table.insert(CommandMapType::value_type("cutoffPolicy", G_CUTOFFPOLICY)); + command_table.insert(CommandMapType::value_type("compressDumpFile", G_COMPRESSDUMPFILE)); + command_table.insert(CommandMapType::value_type("skinThickness", G_SKINTHICKNESS)); strcpy( mixingRule,"standard"); //default mixing rules to standard. usePBC = 1; //default periodic boundry conditions to on @@ -207,6 +211,8 @@ void Globals::initalize(){ useSolidThermInt = 0; // default solid-state thermodynamic integration to off useLiquidThermInt = 0; // default liquid thermodynamic integration to off dampingAlpha = 1.5; // default damping parameter in Wolf Electrostatics + compressDumpFile = 0; // default compressDumpFile set to off + skinThickness = 1.0; // default neighborlist skin thickness is one angstrom have_force_field = 0; have_n_components = 0; @@ -215,6 +221,7 @@ void Globals::initalize(){ have_dt = 0; have_run_time = 0; + have_skin_thickness = 0; have_initial_config = 0; have_final_config = 0; have_n_mol = 0; @@ -264,6 +271,7 @@ void Globals::initalize(){ have_electro_sum_method = 0; have_damping_alpha = 0; have_cutoff_policy = 0; + have_compress_dumpfile = 0; } int Globals::newComponent( event* the_event ){ @@ -989,6 +997,38 @@ int Globals::globalAssign( event* the_event ){ break; } break; + + + case G_SKINTHICKNESS: + switch( the_type ){ + + case STRING: + the_event->err_msg = + strdup( "Error in parsing meta-data file!\n\tskinThickness is not a double or int.\n" ); + return 0; + break; + + case DOUBLE: + skinThickness = the_event->evt.asmt.rhs.dval; + have_skin_thickness = 1; + return 1; + break; + + case INT: + skinThickness = (double)the_event->evt.asmt.rhs.ival; + have_skin_thickness = 1; + return 1; + break; + + default: + the_event->err_msg = + strdup( "Error in parsing meta-data file!\n\tskinThickness unrecognized.\n" ); + return 0; + break; + } + break; + + case G_DIELECTRIC: switch( the_type ){ @@ -1884,6 +1924,29 @@ int Globals::globalAssign( event* the_event ){ return 0; break; + case G_COMPRESSDUMPFILE: + if( the_type == STRING ){ + + if( !strcasecmp( "true", the_event->evt.asmt.rhs.sval )) { + have_compress_dumpfile = 1; + compressDumpFile = 1; + } else if( !strcasecmp( "false", the_event->evt.asmt.rhs.sval )) { + have_compress_dumpfile= 1; + compressDumpFile = 0; + } else{ + the_event->err_msg = + strdup( "Error in parsing meta-data file!\n\tcompressDumpFile was not \"true\" or \"false\".\n" ); + return 0; + } + return 1; + } + + the_event->err_msg = + strdup( "Error in parsing meta-data file!\n\tcompressDumpFile was not \"true\" or \"false\".\n" ); + return 0; + break; + + case G_ELECTRO_SUM_METHOD: switch( the_type ){