ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libBASS/Globals.cpp
(Generate patch)

Comparing trunk/OOPSE/libBASS/Globals.cpp (file contents):
Revision 378 by mmeineke, Fri Mar 21 17:42:12 2003 UTC vs.
Revision 579 by gezelter, Wed Jul 9 13:56:27 2003 UTC

# Line 25 | Line 25
25   #define G_RUNTIME     6
26  
27   //optional parameters
28 < #define G_INITIALCONFIG 7
29 < #define G_FINALCONFIG   8
30 < #define G_NMOL          9
31 < #define G_DENSITY       10
32 < #define G_BOX           11
33 < #define G_BOXX          12
34 < #define G_BOXY          13
35 < #define G_BOXZ          14
36 < #define G_SAMPLETIME    15
37 < #define G_STATUSTIME    16
38 < #define G_RRF           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
28 > #define G_INITIALCONFIG   7
29 > #define G_FINALCONFIG     8
30 > #define G_NMOL            9
31 > #define G_DENSITY        10
32 > #define G_BOX            11
33 > #define G_BOXX           12
34 > #define G_BOXY           13
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
45 > #define G_USERF          24
46 > #define G_TARGETPRESSURE 25
47 > #define G_TAUTHERMOSTAT  26
48 > #define G_TAUBAROSTAT    27
49  
50  
51   Globals::Globals(){
# Line 70 | Line 75 | Globals::Globals(){
75    addHash( "boxZ",          G_BOXZ );
76    addHash( "sampleTime",    G_SAMPLETIME );
77    addHash( "statusTime",    G_STATUSTIME );
78 <  addHash( "rRF",           G_RRF );
78 >  addHash( "electrostaticCutoffRadius",            G_ECR );
79    addHash( "dielectric",    G_DIELECTRIC );
80    addHash( "tempSet",       G_TEMPSET );
81    addHash( "thermalTime",   G_THERMALTIME );
82    addHash( "mixingRule",    G_MIXINGRULE);
83 <  addHash( "periodicBox",   G_USEPBC);
83 >  addHash( "usePeriodicBoundaryConditions",        G_USEPBC);
84 >  addHash( "electrostaticSkinThickness",           G_EST );
85 >  addHash( "useReactionField",                     G_USERF );
86 >  addHash( "targetPressure",                       G_TARGETPRESSURE);
87 >  addHash( "tauThermostat",                        G_TAUTHERMOSTAT);
88 >  addHash( "tauBarostat",                          G_TAUBAROSTAT);
89    
90    // define some default values
91  
92    strcpy( mixingRule,"standard");  //default mixing rules to standard.
93    usePBC = 1; //default  periodic boundry conditions to on
94 +  useRF  = 0;
95    
85
96    have_force_field =  0;
97    have_n_components = 0;
98    have_target_temp =  0;
# Line 102 | Line 112 | Globals::Globals(){
112    have_sample_time =    0;
113    have_status_time =    0;
114    have_thermal_time =   0;
115 <  have_rrf =            0;
115 >  have_ecr =            0;
116    have_dielectric =     0;
117    have_tempSet =        0;
118 +  have_est =            0;
119 +  have_target_pressure =0;
120 +  have_q_mass =         0;
121 +  have_tau_thermostat = 0;
122 +  have_tau_barostat =   0;
123   }
124  
125   Globals::~Globals(){
# Line 639 | Line 654 | int Globals::globalAssign( event* the_event ){
654        }
655        break;
656        
657 <    case G_RRF:
657 >    case G_ECR:
658        switch( the_type ){
659          
660        case STRING:
661          the_event->err_msg =
662 <          strdup( "Global error. rRF is not a double or int.\n" );
662 >          strdup( "Global error. electrostaticCutoffRadius is not a double or int.\n" );
663          return 0;
664          break;
665          
666        case DOUBLE:
667 <        rRF = the_event->evt.asmt.rhs.dval;
668 <        have_rrf = 1;
667 >        ecr = the_event->evt.asmt.rhs.dval;
668 >        have_ecr = 1;
669          return 1;
670          break;
671          
672        case INT:
673 <        rRF = (double)the_event->evt.asmt.rhs.ival;
674 <        have_rrf = 1;
673 >        ecr = (double)the_event->evt.asmt.rhs.ival;
674 >        have_ecr = 1;
675          return 1;
676          break;
677          
678        default:
679          the_event->err_msg =
680 <          strdup( "Global error. rRF unrecognized.\n" );
680 >          strdup( "Global error. electrostaticCutoffRadius unrecognized.\n" );
681          return 0;
682          break;
683        }
684        break;
685 +
686 +    case G_EST:
687 +      switch( the_type ){
688 +        
689 +      case STRING:
690 +        the_event->err_msg =
691 +          strdup( "Global error. electrostaticSkinThickness is not a double or int.\n" );
692 +        return 0;
693 +        break;
694 +        
695 +      case DOUBLE:
696 +        est = the_event->evt.asmt.rhs.dval;
697 +        have_est = 1;
698 +        return 1;
699 +        break;
700 +        
701 +      case INT:
702 +        est = (double)the_event->evt.asmt.rhs.ival;
703 +        have_est = 1;
704 +        return 1;
705 +        break;
706 +        
707 +      default:
708 +        the_event->err_msg =
709 +          strdup( "Global error. electrostaticSkinThickness unrecognized.\n" );
710 +        return 0;
711 +        break;
712 +      }
713 +      break;
714        
715      case G_DIELECTRIC:
716        switch( the_type ){
# Line 700 | Line 744 | int Globals::globalAssign( event* the_event ){
744      case G_TEMPSET:
745        if( the_type == STRING ){
746          
747 <        if( !strcmp( "true", the_event->evt.asmt.rhs.sval )) tempSet = 1;
748 <        else if( !strcmp( "false", the_event->evt.asmt.rhs.sval )) tempSet = 0;
747 >        if( !strcasecmp( "true", the_event->evt.asmt.rhs.sval )) tempSet = 1;
748 >        else if( !strcasecmp( "false", the_event->evt.asmt.rhs.sval )) tempSet = 0;
749          else{
750            the_event->err_msg =
751              strdup( "Global error. tempSet was not \"true\" or \"false\".\n" );
# Line 719 | Line 763 | int Globals::globalAssign( event* the_event ){
763      case G_USEPBC:
764        if( the_type == STRING ){
765          
766 <        if( !strcmp( "true", the_event->evt.asmt.rhs.sval )) usePBC = 1;
767 <        else if( !strcmp( "false", the_event->evt.asmt.rhs.sval )) usePBC = 0;
766 >        if( !strcasecmp( "true", the_event->evt.asmt.rhs.sval )) usePBC = 1;
767 >        else if( !strcasecmp( "false", the_event->evt.asmt.rhs.sval )) usePBC = 0;
768          else{
769            the_event->err_msg =
770 <            strdup( "Global error. periodicBoundryConditions was not \"true\" or \"false\".\n" );
770 >            strdup( "Global error. usePeriodicBoundaryConditions was not \"true\" or \"false\".\n" );
771 >          return 0;
772 >        }
773 >        return 1;
774 >      }
775 >      
776 >      the_event->err_msg =
777 >        strdup( "Global error. usePeriodicBoundaryConditions was not \"true\" or \"false\".\n" );
778 >      return 0;
779 >      break;
780 >
781 >    case G_USERF:
782 >      if( the_type == STRING ){
783 >        
784 >        if( !strcasecmp( "true", the_event->evt.asmt.rhs.sval )) useRF = 1;
785 >        else if( !strcasecmp( "false", the_event->evt.asmt.rhs.sval )) useRF = 0;
786 >        else{
787 >          the_event->err_msg =
788 >            strdup( "Global error. useReactionField was not \"true\" or \"false\".\n" );
789            return 0;
790          }
791          return 1;
792        }
793        
794        the_event->err_msg =
795 <        strdup( "Global error. tempSet was not \"true\" or \"false\".\n" );
795 >        strdup( "Global error. useReactionField was not \"true\" or \"false\".\n" );
796        return 0;
797        break;
798 +
799 +    case G_TARGETPRESSURE:
800 +      switch( the_type ){
801 +        
802 +      case STRING:
803 +        the_event->err_msg =
804 +          strdup( "Global error. targetPressure is not a double or int.\n" );
805 +        return 0;
806 +        break;
807 +        
808 +      case DOUBLE:
809 +        target_pressure = the_event->evt.asmt.rhs.dval;
810 +        have_target_pressure = 1;
811 +        return 1;
812 +        break;
813 +        
814 +      case INT:
815 +        target_pressure = (double)the_event->evt.asmt.rhs.ival;
816 +        have_target_pressure = 1;
817 +        return 1;
818 +        break;
819 +        
820 +      default:
821 +        the_event->err_msg =
822 +          strdup( "Global error. targetPressure unrecognized.\n" );
823 +        return 0;
824 +        break;
825 +      }
826 +      break;
827 +
828 +    case G_TAUTHERMOSTAT:
829 +      switch( the_type ){
830 +        
831 +      case STRING:
832 +        the_event->err_msg =
833 +          strdup( "Global error. tauThermostat is not a double or int.\n" );
834 +        return 0;
835 +        break;
836 +        
837 +      case DOUBLE:
838 +        tau_thermostat = the_event->evt.asmt.rhs.dval;
839 +        have_tau_thermostat = 1;
840 +        return 1;
841 +        break;
842 +        
843 +      case INT:
844 +        tau_thermostat = (double)the_event->evt.asmt.rhs.ival;
845 +        have_tau_thermostat = 1;
846 +        return 1;
847 +        break;
848 +        
849 +      default:
850 +        the_event->err_msg =
851 +          strdup( "Global error. tauThermostat unrecognized.\n" );
852 +        return 0;
853 +        break;
854 +      }
855 +      break;
856 +
857 +    case G_TAUBAROSTAT:
858 +      switch( the_type ){
859 +        
860 +      case STRING:
861 +        the_event->err_msg =
862 +          strdup( "Global error. tauBarostat is not a double or int.\n" );
863 +        return 0;
864 +        break;
865 +        
866 +      case DOUBLE:
867 +        tau_barostat = the_event->evt.asmt.rhs.dval;
868 +        have_tau_barostat = 1;
869 +        return 1;
870 +        break;
871 +        
872 +      case INT:
873 +        tau_barostat = (double)the_event->evt.asmt.rhs.ival;
874 +        have_tau_barostat = 1;
875 +        return 1;
876 +        break;
877 +        
878 +      default:
879 +        the_event->err_msg =
880 +          strdup( "Global error. tauBarostat unrecognized.\n" );
881 +        return 0;
882 +        break;
883 +      }
884 +      break;
885 +
886      }
887    }
888    

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines