| 669 | } // updateFixedLEOperators |
| 670 | |
| 671 | void |
| 672 | IBMethod::interpolateVelocity(const int u_data_idx, |
| 673 | const std::vector<Pointer<CoarsenSchedule<NDIM>>>& u_synch_scheds, |
| 674 | const std::vector<Pointer<RefineSchedule<NDIM>>>& u_ghost_fill_scheds, |
| 675 | const double data_time) |
| 676 | { |
| 677 | std::vector<Pointer<LData>>*U_data, *X_LE_data; |
| 678 | bool* X_LE_needs_ghost_fill; |
| 679 | getVelocityData(&U_data, data_time); |
| 680 | getLECouplingPositionData(&X_LE_data, &X_LE_needs_ghost_fill, data_time); |
| 681 | d_l_data_manager->interp(u_data_idx, *U_data, *X_LE_data, u_synch_scheds, u_ghost_fill_scheds, data_time); |
| 682 | resetAnchorPointValues(*U_data, |
| 683 | /*coarsest_ln*/ 0, |
| 684 | /*finest_ln*/ d_hierarchy->getFinestLevelNumber()); |
| 685 | |
| 686 | if (!IBTK::rel_equal_eps(data_time, d_half_time)) |
| 687 | { |
| 688 | std::vector<Pointer<LData>>* U_half_data; |
| 689 | getVelocityData(&U_half_data, d_half_time); |
| 690 | reinitMidpointData(d_U_current_data, d_U_new_data, *U_half_data); |
| 691 | } |
| 692 | |
| 693 | return; |
| 694 | } // interpolateVelocity |
| 695 | |
| 696 | void |
| 697 | IBMethod::interpolateLinearizedVelocity(const int u_data_idx, |
no test coverage detected