# | Line 35 | Line 35 | |
---|---|---|
35 | * | |
36 | * [1] Meineke, et al., J. Comp. Chem. 26, 252-271 (2005). | |
37 | * [2] Fennell & Gezelter, J. Chem. Phys. 124, 234104 (2006). | |
38 | < | * [3] Sun, Lin & Gezelter, J. Chem. Phys. 128, 24107 (2008). |
38 | > | * [3] Sun, Lin & Gezelter, J. Chem. Phys. 128, 234107 (2008). |
39 | * [4] Kuang & Gezelter, J. Chem. Phys. 133, 164101 (2010). | |
40 | * [5] Vardeman, Stocker & Gezelter, J. Chem. Theory Comput. 7, 834 (2011). | |
41 | */ | |
# | Line 55 | Line 55 | |
55 | #include "applications/dynamicProps/RCorrFunc.hpp" | |
56 | #include "applications/dynamicProps/VCorrFunc.hpp" | |
57 | #include "applications/dynamicProps/LegendreCorrFunc.hpp" | |
58 | + | #include "applications/dynamicProps/LegendreCorrFuncZ.hpp" |
59 | #include "applications/dynamicProps/RadialRCorrFunc.hpp" | |
60 | #include "applications/dynamicProps/ThetaCorrFunc.hpp" | |
61 | #include "applications/dynamicProps/DirectionalRCorrFunc.hpp" | |
# | Line 62 | Line 63 | |
63 | #include "applications/dynamicProps/StressCorrFunc.hpp" | |
64 | #include "applications/dynamicProps/SystemDipoleCorrFunc.hpp" | |
65 | #include "applications/dynamicProps/MomentumCorrFunc.hpp" | |
66 | + | #include "applications/dynamicProps/cOHz.hpp" |
67 | + | #include "applications/dynamicProps/BondCorrFunc.hpp" |
68 | + | #include "applications/dynamicProps/FreqFlucCorrFunc.hpp" |
69 | ||
70 | using namespace OpenMD; | |
71 | ||
# | Line 74 | Line 78 | int main(int argc, char* argv[]){ | |
78 | exit(1) ; | |
79 | } | |
80 | ||
77 | – | |
81 | //get the dumpfile name and meta-data file name | |
82 | std::string dumpFileName = args_info.input_arg; | |
83 | ||
84 | std::string sele1; | |
85 | std::string sele2; | |
86 | < | |
86 | > | |
87 | > | // check the first selection argument, or set it to the environment |
88 | > | // variable, or failing that, set it to "select all" |
89 | > | |
90 | if (args_info.sele1_given) { | |
91 | sele1 = args_info.sele1_arg; | |
92 | < | }else { |
92 | > | } else { |
93 | char* sele1Env= getenv("SELECTION1"); | |
94 | if (sele1Env) { | |
95 | sele1 = sele1Env; | |
96 | < | }else { |
97 | < | sprintf( painCave.errMsg, |
92 | < | "neither --sele1 option nor $SELECTION1 is set"); |
93 | < | painCave.severity = OPENMD_ERROR; |
94 | < | painCave.isFatal = 1; |
95 | < | simError(); |
96 | > | } else { |
97 | > | sele1 = "select all"; |
98 | } | |
99 | } | |
100 | < | |
100 | > | |
101 | > | // check the second selection argument, or set it to the environment |
102 | > | // variable, or failing that, set it to the first selection |
103 | > | |
104 | if (args_info.sele2_given) { | |
105 | sele2 = args_info.sele2_arg; | |
106 | } else { | |
107 | char* sele2Env = getenv("SELECTION2"); | |
108 | if (sele2Env) { | |
109 | sele2 = sele2Env; | |
110 | < | } else { |
110 | > | } else { |
111 | > | //If sele2 is not specified, then the default behavior |
112 | > | //should be what is already intended for sele1 |
113 | sele2 = sele1; | |
114 | } | |
115 | } | |
# | Line 137 | Line 144 | int main(int argc, char* argv[]){ | |
144 | corrFunc = new DirectionalRCorrFunc(info, dumpFileName, sele1, sele2, memSize); | |
145 | } else if (args_info.vcorr_given) { | |
146 | corrFunc = new VCorrFunc(info, dumpFileName, sele1, sele2, memSize); | |
147 | + | } else if (args_info.bondcorr_given) { |
148 | + | corrFunc = new BondCorrFunc(info, dumpFileName, sele1, memSize); |
149 | } else if (args_info.helfandEcorr_given){ | |
150 | corrFunc = new EnergyCorrFunc(info, dumpFileName, sele1, sele2, memSize); | |
151 | } else if (args_info.stresscorr_given){ | |
152 | corrFunc = new StressCorrFunc(info, dumpFileName, sele1, sele2, memSize); | |
153 | } else if (args_info.momentum_given){ | |
154 | corrFunc = new MomentumCorrFunc(info, dumpFileName, sele1, sele2, memSize); | |
155 | + | } else if (args_info.freqfluccorr_given){ |
156 | + | corrFunc = new FreqFlucCorrFunc(info, dumpFileName, sele1, sele2, memSize); |
157 | } else if (args_info.lcorr_given) { | |
158 | int order; | |
159 | if (args_info.order_given) | |
160 | order = args_info.order_arg; | |
161 | else { | |
162 | sprintf( painCave.errMsg, | |
163 | < | "--order must be set if --lcoor is set\n"); |
163 | > | "--order must be set if --lcorr is set\n"); |
164 | painCave.severity = OPENMD_ERROR; | |
165 | painCave.isFatal = 1; | |
166 | simError(); | |
167 | } | |
168 | ||
169 | corrFunc = new LegendreCorrFunc(info, dumpFileName, sele1, sele2, order, memSize); | |
170 | + | } else if (args_info.lcorrZ_given) { |
171 | + | int order; |
172 | + | if (args_info.order_given) |
173 | + | order = args_info.order_arg; |
174 | + | else { |
175 | + | sprintf( painCave.errMsg, |
176 | + | "--order must be set if --lcorrZ is set\n"); |
177 | + | painCave.severity = OPENMD_ERROR; |
178 | + | painCave.isFatal = 1; |
179 | + | simError(); |
180 | + | } |
181 | + | |
182 | + | corrFunc = new LegendreCorrFuncZ(info, dumpFileName, sele1, sele2, order, args_info.nzbins_arg, memSize); |
183 | + | |
184 | + | } else if (args_info.cohZ_given) { |
185 | + | int order; |
186 | + | if (args_info.order_given) |
187 | + | order = args_info.order_arg; |
188 | + | else { |
189 | + | sprintf( painCave.errMsg, |
190 | + | "--order must be set if --cohZ is set\n"); |
191 | + | painCave.severity = OPENMD_ERROR; |
192 | + | painCave.isFatal = 1; |
193 | + | simError(); |
194 | + | } |
195 | + | |
196 | + | corrFunc = new COHZ(info, dumpFileName, sele1, sele2, order, args_info.nzbins_arg, memSize); |
197 | + | |
198 | } | |
199 | ||
200 | + | |
201 | if (args_info.output_given) { | |
202 | corrFunc->setOutputName(args_info.output_arg); | |
203 | } |
– | Removed lines |
+ | Added lines |
< | Changed lines |
> | Changed lines |