--- trunk/src/io/Globals.cpp 2005/05/19 04:28:26 536 +++ trunk/src/io/Globals.cpp 2005/09/07 20:46:46 586 @@ -116,7 +116,11 @@ #define G_THERM_INT_DIST_SPRING 54 #define G_THERM_INT_THETA_SPRING 55 #define G_THERM_INT_OMEGA_SPRING 56 -#define G_TARGETSTRESS 57 +#define G_SURFACETENSION 57 +#define G_PRINTPREESURETENSOR 58 +#define G_USE_UNDAMPED_WOLF 59 +#define G_USE_DAMPED_WOLF 60 +#define G_CUTOFFPOLICY 61 Globals::Globals(){ initalize(); @@ -191,8 +195,11 @@ void Globals::initalize(){ command_table.insert(CommandMapType::value_type("thermIntDistSpringConst", G_THERM_INT_DIST_SPRING)); command_table.insert(CommandMapType::value_type("thermIntThetaSpringConst", G_THERM_INT_THETA_SPRING)); command_table.insert(CommandMapType::value_type("thermIntOmegaSpringConst", G_THERM_INT_OMEGA_SPRING)); - command_table.insert(CommandMapType::value_type("targetStress", G_TARGETSTRESS)); - + command_table.insert(CommandMapType::value_type("surfaceTension", G_SURFACETENSION)); + command_table.insert(CommandMapType::value_type("printPressureTensor", G_PRINTPREESURETENSOR)); + command_table.insert(CommandMapType::value_type("useUndampedWolf", G_USE_UNDAMPED_WOLF)); + command_table.insert(CommandMapType::value_type("useDampedWolf", G_USE_DAMPED_WOLF)); + command_table.insert(CommandMapType::value_type("cutoffPolicy", G_CUTOFFPOLICY)); strcpy( mixingRule,"standard"); //default mixing rules to standard. usePBC = 1; //default periodic boundry conditions to on @@ -254,7 +261,9 @@ void Globals::initalize(){ have_dist_spring_constant = 0; have_theta_spring_constant = 0; have_omega_spring_constant = 0; - have_targetStress = 0; + have_surface_tension = 0; + have_print_pressure_tensor = 0; + have_cutoff_policy = 0; } int Globals::newComponent( event* the_event ){ @@ -1842,36 +1851,127 @@ int Globals::globalAssign( event* the_event ){ } break; - case G_THERM_INT_THETA_SPRING: + case G_SURFACETENSION: switch( the_type ){ case STRING: the_event->err_msg = - strdup( "Error in parsing meta-data file!\n\ttargetStress is not a double or int.\n" ); + strdup( "Error in parsing meta-data file!\n\tsurfaceTension is not a double or int.\n" ); return 1; break; case DOUBLE: - target_stress= the_event->evt.asmt.rhs.dval; - have_targetstress = 1; + surface_tension= the_event->evt.asmt.rhs.dval; + have_surface_tension = 1; return 1; break; case INT: - target_stress = (double)the_event->evt.asmt.rhs.dval; - have_targetstress = 1; + surface_tension = (double)the_event->evt.asmt.rhs.dval; + have_surface_tension = 1; return 1; break; default: the_event->err_msg = - strdup( "Error in parsing meta-data file!\n\tttargetStress unrecognized.\n" ); + strdup( "Error in parsing meta-data file!\n\tsurfaceTension unrecognized.\n" ); return 0; break; } break; + + case G_PRINTPREESURETENSOR: + if( the_type == STRING ){ + + if( !strcasecmp( "true", the_event->evt.asmt.rhs.sval )) { + have_print_pressure_tensor= 1; + print_pressure_tensor = 1; + } else if( !strcasecmp( "false", the_event->evt.asmt.rhs.sval )) { + have_print_pressure_tensor= 1; + print_pressure_tensor = 0; + } else{ + the_event->err_msg = + strdup( "Error in parsing meta-data file!\n\tprintPressureTensor was not \"true\" or \"false\".\n" ); + return 0; + } + return 1; + } + + the_event->err_msg = + strdup( "Error in parsing meta-data file!\n\tprintPressureTensor was not \"true\" or \"false\".\n" ); + return 0; + break; + + case G_USE_UNDAMPED_WOLF: + if( the_type == STRING ){ + + if( !strcasecmp( "true", the_event->evt.asmt.rhs.sval )) useUndampedWolf = 1; + else if( !strcasecmp( "false", the_event->evt.asmt.rhs.sval )) useUndampedWolf = 0; + else{ + the_event->err_msg = + strdup( "Error in parsing meta-data file!\n\tuseUndampedWolf was not \"true\" or \"false\".\n" ); + return 0; + } + return 1; + } + + the_event->err_msg = + strdup( "Error in parsing meta-data file!\n\tuseUndampedWolf was not \"true\" or \"false\".\n" ); + return 0; + break; + + case G_USE_DAMPED_WOLF: + if( the_type == STRING ){ + if( !strcasecmp( "true", the_event->evt.asmt.rhs.sval )) useDampedWolf = 1; + else if( !strcasecmp( "false", the_event->evt.asmt.rhs.sval )) useDampedWolf = 0; + else{ + the_event->err_msg = + strdup( "Error in parsing meta-data file!\n\tuseDampedWolf was not \"true\" or \"false\".\n" ); + return 0; + } + return 1; + } + + the_event->err_msg = + strdup( "Error in parsing meta-data file!\n\tuseDampedWolf was not \"true\" or \"false\".\n" ); + return 0; + break; + + case G_CUTOFFPOLICY: + switch( the_type ){ + + case STRING: + strcpy(cutoffPolicy, the_event->evt.asmt.rhs.sval); + for(int i = 0; cutoffPolicy[i] != '\0'; i++) + { + cutoffPolicy[i] = toupper(cutoffPolicy[i]); + } + have_cutoff_policy = 1; + return 1; + break; + + case DOUBLE: + the_event->err_msg = + strdup( "Error in parsing meta-data file!\n\tcutoffPolicy should be a string!\n" ); + return 0; + break; + + case INT: + the_event->err_msg = + strdup( "Error in parsing meta-data file!\n\tcutoffPolicy should be a string!\n" ); + return 0; + break; + + default: + the_event->err_msg = + strdup( "Error in parsing meta-data file!\n\tcutoffPolicy unrecognized.\n" ); + return 0; + break; + } + break; + // add more token cases here. }