| 16 | |
| 17 | |
| 18 | void SimulationDataPF::init() |
| 19 | { |
| 20 | Simulation *sim = Simulation::getCurrent(); |
| 21 | const unsigned int nModels = sim->numberOfFluidModels(); |
| 22 | |
| 23 | m_old_position.resize(nModels); |
| 24 | m_num_fluid_neighbors.resize(nModels); |
| 25 | m_s.resize(nModels); |
| 26 | m_mat_diag.resize(nModels); |
| 27 | m_particleOffset.resize(nModels); |
| 28 | |
| 29 | for (unsigned int i = 0; i < nModels; i++) |
| 30 | { |
| 31 | FluidModel *fm = sim->getFluidModel(i); |
| 32 | |
| 33 | m_old_position[i].resize(fm->numParticles(), Vector3r::Zero()); |
| 34 | m_num_fluid_neighbors[i].resize(fm->numParticles(), 0); |
| 35 | m_s[i].resize(fm->numParticles(), Vector3r::Zero()); |
| 36 | m_mat_diag[i].resize(fm->numParticles(), Vector3r::Zero()); |
| 37 | |
| 38 | m_particleOffset[i] = (i==0) ? 0 : sim->getFluidModel(i - 1)->numActiveParticles() + m_particleOffset[i - 1]; |
| 39 | } |
| 40 | } |
| 41 | |
| 42 | void SimulationDataPF::cleanup() |
| 43 | { |
no test coverage detected