| 1188 | } |
| 1189 | |
| 1190 | void |
| 1191 | Gravity::create_comp_minus_level_grad_phi(int level, |
| 1192 | MultiFab& comp_phi, |
| 1193 | const Vector<MultiFab*>& comp_gphi, |
| 1194 | MultiFab& comp_minus_level_phi, |
| 1195 | Vector<std::unique_ptr<MultiFab> >& comp_minus_level_grad_phi) |
| 1196 | { |
| 1197 | BL_PROFILE("Gravity::create_comp_minus_level_grad_phi()"); |
| 1198 | |
| 1199 | if (gravity::verbose > 1 && ParallelDescriptor::IOProcessor()) { |
| 1200 | std::cout << "\n"; |
| 1201 | std::cout << "... compute difference between level and composite solves at level " << level << "\n"; |
| 1202 | std::cout << "\n"; |
| 1203 | } |
| 1204 | |
| 1205 | comp_minus_level_phi.define(LevelData[level]->boxArray(), |
| 1206 | LevelData[level]->DistributionMap(), |
| 1207 | 1, 0); |
| 1208 | |
| 1209 | MultiFab::Copy(comp_minus_level_phi, comp_phi, 0, 0, 1, 0); |
| 1210 | comp_minus_level_phi.minus(parent->getLevel(level).get_old_data(PhiGrav_Type), 0, 1, 0); |
| 1211 | |
| 1212 | comp_minus_level_grad_phi.resize(AMREX_SPACEDIM); |
| 1213 | for (int n = 0; n < AMREX_SPACEDIM; ++n) { |
| 1214 | comp_minus_level_grad_phi[n] = std::make_unique<MultiFab>(LevelData[level]->getEdgeBoxArray(n), |
| 1215 | LevelData[level]->DistributionMap(), 1, 0); |
| 1216 | MultiFab::Copy(*comp_minus_level_grad_phi[n], *comp_gphi[n], 0, 0, 1, 0); |
| 1217 | comp_minus_level_grad_phi[n]->minus(*grad_phi_prev[level][n], 0, 1, 0); |
| 1218 | } |
| 1219 | |
| 1220 | } |
| 1221 | |
| 1222 | void |
| 1223 | Gravity::average_fine_ec_onto_crse_ec(int level, int is_new) |
no test coverage detected