# | Line 111 | Line 111 | int main(int argc, char* argv[]){ | |
---|---|---|
111 | ||
112 | //parse md file and set up the system | |
113 | SimCreator creator; | |
114 | < | SimInfo* info = creator.createSim(mdFileName, false); |
114 | > | SimInfo* info = creator.createSim(mdFileName); |
115 | ||
116 | double maxLen; | |
117 | if (args_info.length_given) { | |
118 | maxLen = args_info.length_arg; | |
119 | } else { | |
120 | < | double rcut; |
121 | < | double rsw; |
122 | < | info->getCutoff(rcut, rsw); |
123 | < | maxLen = rcut + rsw; |
124 | < | } |
125 | < | |
120 | > | Mat3x3d hmat = info->getSnapshotManager()->getCurrentSnapshot()->getHmat(); |
121 | > | maxLen = std::min(std::min(hmat(0, 0), hmat(1, 1)), hmat(2, 2)) /2.0; |
122 | > | } |
123 | ||
124 | RadialDistrFunc* rdf; | |
125 | if (args_info.gofr_given){ | |
126 | < | GofR* r = new GofR(info, dumpFileName, sele1, sele2); |
130 | < | |
131 | < | r->setNRBins(args_info.nrbins_arg); |
132 | < | r->setLength(maxLen); |
133 | < | |
134 | < | rdf = r; |
126 | > | rdf= new GofR(info, dumpFileName, sele1, sele2, maxLen, args_info.nrbins_arg); |
127 | } else if (args_info.r_theta_given) { | |
128 | < | GofRTheta* rTheta = new GofRTheta(info, dumpFileName, sele1, sele2); |
129 | < | |
130 | < | rTheta->setNRBins(args_info.nrbins_arg); |
139 | < | rTheta->setLength(maxLen); |
140 | < | rTheta->setNAngleBins(args_info.nanglebins_arg); |
141 | < | |
142 | < | |
143 | < | rdf = rTheta; |
144 | < | } |
145 | < | else if (args_info.r_omega_given) { |
146 | < | GofROmega* rOmega = new GofROmega(info, dumpFileName, sele1, sele2); |
147 | < | |
148 | < | |
149 | < | rOmega->setNRBins(args_info.nrbins_arg); |
150 | < | rOmega->setLength(maxLen); |
151 | < | rOmega->setNAngleBins(args_info.nanglebins_arg); |
152 | < | |
153 | < | rdf = rOmega; |
128 | > | rdf = new GofRTheta(info, dumpFileName, sele1, sele2, maxLen, args_info.nrbins_arg, args_info.nanglebins_arg); |
129 | > | } else if (args_info.r_omega_given) { |
130 | > | rdf = new GofROmega(info, dumpFileName, sele1, sele2, maxLen, args_info.nrbins_arg, args_info.nanglebins_arg); |
131 | } else if (args_info.theta_omega_given) { | |
132 | < | GofAngle2* rAngle2 = new GofAngle2(info, dumpFileName, sele1, sele2); |
156 | < | rAngle2->setNAngleBins(args_info.nanglebins_arg); |
157 | < | |
158 | < | rdf = rAngle2; |
132 | > | rdf = new GofAngle2(info, dumpFileName, sele1, sele2, args_info.nanglebins_arg); |
133 | } else if (args_info.xyz_given) { | |
134 | < | |
161 | < | GofXyz* xyz = new GofXyz(info, dumpFileName, sele1, sele2); |
162 | < | |
163 | < | xyz->setNRBins(args_info.nrbins_arg); |
164 | < | xyz->setLength(maxLen); |
165 | < | |
166 | < | |
167 | < | rdf = xyz; |
134 | > | rdf= new GofXyz(info, dumpFileName, sele1, sele2, maxLen, args_info.nrbins_arg); |
135 | } | |
136 | ||
170 | – | |
137 | if (args_info.output_given) { | |
138 | rdf->setOutputName(args_info.output_arg); | |
139 | } | |
174 | – | |
140 | if (args_info.step_given) { | |
141 | rdf->setStep(args_info.step_arg); | |
142 | } |
– | Removed lines |
+ | Added lines |
< | Changed lines |
> | Changed lines |