| 365 | } // computeLagrangianForce |
| 366 | |
| 367 | void |
| 368 | PenaltyIBMethod::initializePatchHierarchy(Pointer<PatchHierarchy<NDIM>> hierarchy, |
| 369 | Pointer<GriddingAlgorithm<NDIM>> gridding_alg, |
| 370 | int u_data_idx, |
| 371 | const std::vector<Pointer<CoarsenSchedule<NDIM>>>& u_synch_scheds, |
| 372 | const std::vector<Pointer<RefineSchedule<NDIM>>>& u_ghost_fill_scheds, |
| 373 | int integrator_step, |
| 374 | double init_data_time, |
| 375 | bool initial_time) |
| 376 | { |
| 377 | IBMethod::initializePatchHierarchy(hierarchy, |
| 378 | gridding_alg, |
| 379 | u_data_idx, |
| 380 | u_synch_scheds, |
| 381 | u_ghost_fill_scheds, |
| 382 | integrator_step, |
| 383 | init_data_time, |
| 384 | initial_time); |
| 385 | |
| 386 | // Initialize velocity and position data objects for massive points. |
| 387 | if (initial_time) |
| 388 | { |
| 389 | const int coarsest_ln = 0; |
| 390 | const int finest_ln = d_hierarchy->getFinestLevelNumber(); |
| 391 | for (int ln = coarsest_ln; ln <= finest_ln; ++ln) |
| 392 | { |
| 393 | if (!d_l_data_manager->levelContainsLagrangianData(ln)) continue; |
| 394 | |
| 395 | Pointer<LData> X_data = d_l_data_manager->getLData(LDataManager::POSN_DATA_NAME, ln); |
| 396 | Pointer<LData> U_data = d_l_data_manager->getLData(LDataManager::VEL_DATA_NAME, ln); |
| 397 | Pointer<LData> Y_data = d_l_data_manager->createLData("Y", ln, NDIM, /*manage_data*/ true); |
| 398 | Pointer<LData> V_data = d_l_data_manager->createLData("V", ln, NDIM, /*manage_data*/ true); |
| 399 | |
| 400 | if (d_silo_writer) |
| 401 | { |
| 402 | d_silo_writer->registerVariableData("Y", Y_data, ln); |
| 403 | } |
| 404 | |
| 405 | // Set initial conditions. |
| 406 | int ierr; |
| 407 | ierr = VecCopy(X_data->getVec(), Y_data->getVec()); |
| 408 | IBTK_CHKERRQ(ierr); |
| 409 | ierr = VecCopy(U_data->getVec(), V_data->getVec()); |
| 410 | IBTK_CHKERRQ(ierr); |
| 411 | } |
| 412 | } |
| 413 | return; |
| 414 | } // initializePatchHierarchy |
| 415 | |
| 416 | void |
| 417 | PenaltyIBMethod::initializeLevelData(Pointer<BasePatchHierarchy<NDIM>> hierarchy, |
nothing calls this directly
no test coverage detected