105 |
|
|
106 |
|
currSample = sampleTime + currentSnapshot_->getTime(); |
107 |
|
currStatus = statusTime + currentSnapshot_->getTime();; |
108 |
< |
currThermal = thermalTime + + currentSnapshot_->getTime(); |
108 |
> |
currThermal = thermalTime + currentSnapshot_->getTime(); |
109 |
> |
if (needReset) { |
110 |
> |
currReset = resetTime + currentSnapshot_->getTime(); |
111 |
> |
} |
112 |
|
needPotential = false; |
113 |
|
needStress = false; |
114 |
|
|
141 |
|
needPotential = true; |
142 |
|
needStress = true; |
143 |
|
} |
141 |
– |
|
144 |
|
} |
145 |
|
|
146 |
|
void VelocityVerletIntegrator::postStep() { |
147 |
< |
|
147 |
> |
|
148 |
|
//save snapshot |
149 |
|
info_->getSnapshotManager()->advance(); |
150 |
|
|
177 |
|
needStress = false; |
178 |
|
currStatus += statusTime; |
179 |
|
} |
180 |
+ |
|
181 |
+ |
if (needReset && currentSnapshot_->getTime() >= currReset) { |
182 |
+ |
resetIntegrator(); |
183 |
+ |
currReset += resetTime; |
184 |
+ |
} |
185 |
|
|
179 |
– |
|
186 |
|
} |
187 |
|
|
188 |
|
|
221 |
|
} |
222 |
|
|
223 |
|
StatWriter* VelocityVerletIntegrator::createStatWriter() { |
224 |
+ |
|
225 |
+ |
std::string statFileFormatString = simParams->getStatFileFormat(); |
226 |
+ |
StatsBitSet mask = parseStatFileFormat(statFileFormatString); |
227 |
+ |
|
228 |
|
// if solidThermInt is true, add extra information to the statfile |
229 |
|
if (simParams->getUseSolidThermInt()){ |
220 |
– |
StatsBitSet mask; |
221 |
– |
mask.set(Stats::TIME); |
222 |
– |
mask.set(Stats::TOTAL_ENERGY); |
223 |
– |
mask.set(Stats::POTENTIAL_ENERGY); |
224 |
– |
mask.set(Stats::KINETIC_ENERGY); |
225 |
– |
mask.set(Stats::TEMPERATURE); |
226 |
– |
mask.set(Stats::PRESSURE); |
227 |
– |
mask.set(Stats::VOLUME); |
228 |
– |
mask.set(Stats::CONSERVED_QUANTITY); |
230 |
|
mask.set(Stats::VRAW); |
231 |
|
mask.set(Stats::VHARM); |
231 |
– |
return new StatWriter(info_->getStatFileName(), mask); |
232 |
|
} |
233 |
|
|
234 |
|
if (simParams->havePrintPressureTensor() && simParams->getPrintPressureTensor()){ |
235 |
– |
StatsBitSet mask; |
236 |
– |
mask.set(Stats::TIME); |
237 |
– |
mask.set(Stats::TOTAL_ENERGY); |
238 |
– |
mask.set(Stats::POTENTIAL_ENERGY); |
239 |
– |
mask.set(Stats::KINETIC_ENERGY); |
240 |
– |
mask.set(Stats::TEMPERATURE); |
241 |
– |
mask.set(Stats::PRESSURE); |
242 |
– |
mask.set(Stats::VOLUME); |
243 |
– |
mask.set(Stats::CONSERVED_QUANTITY); |
235 |
|
mask.set(Stats::PRESSURE_TENSOR_X); |
236 |
|
mask.set(Stats::PRESSURE_TENSOR_Y); |
237 |
|
mask.set(Stats::PRESSURE_TENSOR_Z); |
247 |
– |
return new StatWriter(info_->getStatFileName(), mask); |
238 |
|
} |
239 |
|
|
240 |
< |
return new StatWriter(info_->getStatFileName()); |
240 |
> |
return new StatWriter(info_->getStatFileName(), mask); |
241 |
|
} |
242 |
|
|
243 |
|
RestWriter* VelocityVerletIntegrator::createRestWriter(){ |