66 const EBAMRCellData& a_cellData,
67 const Vector<ProblemDomain>& a_domains,
68 const int a_tanGhosts,
69 Vector<RefCountedPtr<LayoutData<std::array<FaceIterator, SpaceDim>>>>& a_faceIter);
81 const LevelData<EBCellFAB>& a_cellData,
82 const ProblemDomain& a_domain,
83 const int a_tanGhosts,
84 LayoutData<std::array<FaceIterator, SpaceDim>>& a_faceIter);
98 const EBAMRCellData& a_cellData,
99 const Vector<ProblemDomain>& a_domains,
100 Vector<RefCountedPtr<LayoutData<std::array<FaceIterator, SpaceDim>>>>& a_faceIter);
116 const EBAMRCellData& a_cellData,
117 const Vector<ProblemDomain>& a_domains,
118 const int a_tanGhosts,
119 const Interval& a_faceInterval,
120 const Interval& a_cellInterval,
122 Vector<RefCountedPtr<LayoutData<std::array<FaceIterator, SpaceDim>>>>& a_faceIter);
137 const LevelData<EBCellFAB>& a_cellData,
138 const ProblemDomain& a_domain,
139 const int a_tanGhosts,
140 const Interval& a_faceInterval,
141 const Interval& a_cellInterval,
143 LayoutData<std::array<FaceIterator, SpaceDim>>& a_faceIter);
155 const EBAMRFluxData& a_faceData,
156 const Vector<ProblemDomain>& a_domains,
157 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
169 const LevelData<EBFluxFAB>& a_fluxData,
170 const ProblemDomain& a_domain,
171 LayoutData<VoFIterator>& a_vofIter);
182 axby(LevelData<EBCellFAB>& a_lhs,
183 const LevelData<EBCellFAB>& a_x,
184 const LevelData<EBCellFAB>& a_y,
186 const Real a_b)
noexcept;
197 const std::function<Real(
const Real a_cellValue)>& a_func,
198 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter)
noexcept;
208 compute(LevelData<EBCellFAB>& a_data,
209 const std::function<Real(
const Real a_cellValue)>& a_func,
210 LayoutData<VoFIterator>& a_vofIter)
noexcept;
221 dotProduct(MFAMRCellData& a_result,
const MFAMRCellData& a_data1,
const MFAMRCellData& a_data2);
233 dotProduct(LevelData<MFCellFAB>& a_result,
const LevelData<MFCellFAB>& a_data1,
const LevelData<MFCellFAB>& a_data2);
246 const EBAMRCellData& a_data1,
247 const EBAMRCellData& a_data2,
248 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
261 const LevelData<EBCellFAB>& a_data1,
262 const LevelData<EBCellFAB>& a_data2,
263 LayoutData<VoFIterator>& a_vofIter);
277 const EBCellFAB& a_data1,
278 const EBCellFAB& a_data2,
280 VoFIterator& a_vofIter);
294 filterSmooth(EBAMRCellData& a_data,
const Real a_alpha,
const int a_stride,
const bool a_zeroEB)
noexcept;
308 filterSmooth(LevelData<EBCellFAB>& a_data,
const Real a_alpha,
const int a_stride,
const bool a_zeroEB)
noexcept;
317 incr(MFAMRCellData& a_lhs,
const MFAMRCellData& a_rhs,
const Real a_scale)
noexcept;
326 incr(LevelData<MFCellFAB>& a_lhs,
const LevelData<MFCellFAB>& a_rhs,
const Real a_scale)
noexcept;
335 incr(EBAMRCellData& a_lhs,
const EBAMRCellData& a_rhs,
const Real& a_scale)
noexcept;
344 incr(LevelData<EBCellFAB>& a_lhs,
const LevelData<EBCellFAB>& a_rhs,
const Real& a_scale)
noexcept;
353 incr(EBAMRFluxData& a_lhs,
const EBAMRFluxData& a_rhs,
const Real& a_scale);
362 incr(LevelData<EBFluxFAB>& a_lhs,
const LevelData<EBFluxFAB>& a_rhs,
const Real& a_scale);
371 incr(EBFluxFAB& a_lhs,
const EBFluxFAB& a_rhs,
const Real& a_scale);
381 incr(EBAMRIVData& a_lhs,
const EBAMRIVData& a_rhs,
const Real& a_scale);
391 incr(LevelData<BaseIVFAB<Real>>& a_lhs,
const LevelData<BaseIVFAB<Real>>& a_rhs,
const Real& a_scale);
401 incr(EBAMRIVData& a_lhs,
402 const EBAMRIVData& a_rhs,
404 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
414 incr(LevelData<BaseIVFAB<Real>>& a_lhs,
415 const LevelData<BaseIVFAB<Real>>& a_rhs,
417 LayoutData<VoFIterator>& a_vofIter);
426 incr(EBAMRIFData& a_lhs,
const EBAMRIFData& a_rhs,
const Real& a_scale);
435 incr(LevelData<DomainFluxIFFAB>& a_lhs,
const LevelData<DomainFluxIFFAB>& a_rhs,
const Real& a_scale);
446 incr(EBAMRCellData& a_lhs,
447 const EBAMRIVData& a_rhs,
449 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
460 incr(LevelData<EBCellFAB>& a_lhs,
461 const LevelData<BaseIVFAB<Real>>& a_rhs,
463 LayoutData<VoFIterator>& a_vofIter);
474 incr(EBAMRIVData& a_lhs,
475 const EBAMRCellData& a_rhs,
477 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
488 incr(LevelData<BaseIVFAB<Real>>& a_lhs,
489 const LevelData<EBCellFAB>& a_rhs,
491 LayoutData<VoFIterator>& a_vofIter);
499 copy(MFAMRCellData& a_dst,
const MFAMRCellData& a_src);
507 copy(EBAMRCellData& a_dst,
const EBAMRCellData& a_src);
515 copy(EBAMRIVData& a_dst,
const EBAMRIVData& a_src);
524 template <
typename T>
536 divide(EBAMRCellData& a_lhs,
const EBAMRCellData& a_rhs,
const int a_lhsComp,
const int a_rhsComp);
546 divide(LevelData<EBCellFAB>& a_lhs,
const LevelData<EBCellFAB>& a_rhs,
const int a_lhsComp,
const int a_rhsComp);
562 divideByScalar(LevelData<EBCellFAB>& a_lhs,
const LevelData<EBCellFAB>& a_rhs);
573 const EBAMRCellData& a_denominator,
574 const Real a_fallback,
575 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
587 const LevelData<EBCellFAB>& a_denominator,
588 const Real a_fallback,
589 LayoutData<VoFIterator>& a_vofIter);
600 const EBAMRCellData& a_denominator,
601 const EBAMRCellData& a_fallback,
602 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
614 const LevelData<EBCellFAB>& a_denominator,
615 const LevelData<EBCellFAB>& a_fallback,
616 LayoutData<VoFIterator>& a_vofIter);
626 floor(EBAMRCellData& a_lhs,
const Real a_value,
const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
636 floor(LevelData<EBCellFAB>& a_lhs,
const Real a_value, LayoutData<VoFIterator>& a_vofIter);
645 floor(EBAMRIVData& a_lhs,
const Real a_value,
const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
654 floor(LevelData<BaseIVFAB<Real>>& a_lhs,
const Real a_value, LayoutData<VoFIterator>& a_vofIter);
664 roof(EBAMRCellData& a_lhs,
const Real a_value,
const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
674 roof(LevelData<EBCellFAB>& a_lhs,
const Real a_value, LayoutData<VoFIterator>& a_vofIter);
683 roof(EBAMRIVData& a_lhs,
const Real a_value,
const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
692 roof(LevelData<BaseIVFAB<Real>>& a_lhs,
const Real a_value, LayoutData<VoFIterator>& a_vofIter);
702 max(EBAMRCellData& a_data,
703 const EBAMRCellData& a_data1,
704 const EBAMRCellData& a_data2,
705 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
715 max(LevelData<EBCellFAB>& a_data,
716 const LevelData<EBCellFAB>& a_data1,
717 const LevelData<EBCellFAB>& a_data2,
718 LayoutData<VoFIterator>& a_vofIter);
732 EBAMRCellData& a_data,
734 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
747 LevelData<EBCellFAB>& a_data,
749 LayoutData<VoFIterator>& a_vofIter);
764 EBAMRFluxData& a_data,
766 Vector<RefCountedPtr<LayoutData<std::array<FaceIterator, SpaceDim>>>>& a_faceIter)
noexcept;
780 LevelData<EBFluxFAB>& a_data,
782 LayoutData<std::array<FaceIterator, SpaceDim>>& a_faceIter)
noexcept;
792 getMaxMin(Vector<Real>& a_max, Vector<Real>& a_min, Vector<EBAMRCellData>& a_data);
806 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
816 getMaxMinNorm(Real& a_max, Real& a_min, LevelData<EBCellFAB>& data, LayoutData<VoFIterator>& a_vofIter);
830 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
840 getMaxMinNorm(Real& a_max, Real& a_min, LevelData<BaseIVFAB<Real>>& a_data, LayoutData<VoFIterator>& a_vofIter);
858 invert(EBAMRFluxData& a_data, Vector<RefCountedPtr<LayoutData<std::array<FaceIterator, SpaceDim>>>>& a_faceIter);
868 invert(LevelData<EBFluxFAB>& a_data, LayoutData<std::array<FaceIterator, SpaceDim>>& a_faceIter);
888 const LevelData<EBCellFAB>& a_lhs,
889 const LevelData<EBCellFAB>& a_regularMask,
891 LayoutData<VoFIterator>& a_vofIter);
899 kappaScale(EBAMRCellData& a_data,
const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter)
noexcept;
907 kappaScale(LevelData<EBCellFAB>& a_data, LayoutData<VoFIterator>& a_vofIter)
noexcept;
919 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIterPhase0,
920 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIterPhase1)
noexcept;
932 const RefCountedPtr<LayoutData<VoFIterator>>& a_vofIterPhase0,
933 const RefCountedPtr<LayoutData<VoFIterator>>& a_vofIterPhase1)
noexcept;
941 volumeScale(EBAMRCellData& a_data,
const Vector<Real>& a_dx);
950 multiply(EBAMRCellData& a_lhs,
const EBAMRCellData& a_rhs);
959 multiply(LevelData<EBCellFAB>& a_lhs,
const LevelData<EBCellFAB>& a_rhs);
968 multiply(EBAMRFluxData& a_lhs,
const EBAMRFluxData& a_rhs);
977 multiply(LevelData<EBFluxFAB>& a_lhs,
const LevelData<EBFluxFAB>& a_rhs);
988 const EBAMRIVData& a_rhs,
989 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
999 multiply(LevelData<BaseIVFAB<Real>>& a_lhs,
1000 const LevelData<BaseIVFAB<Real>>& a_rhs,
1001 LayoutData<VoFIterator>& a_vofIter);
1010 multiplyScalar(EBAMRCellData& a_lhs,
const EBAMRCellData& a_rhs);
1019 multiplyScalar(LevelData<EBCellFAB>& a_lhs,
const LevelData<EBCellFAB>& a_rhs);
1029 const EBAMRIVData& a_rhs,
1030 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
1040 const LevelData<BaseIVFAB<Real>>& a_rhs,
1041 LayoutData<VoFIterator>& a_vofIter);
1054 norm(
const LevelData<EBCellFAB>& a_data,
1055 const LevelData<EBCellFAB>& a_regularMask,
1057 LayoutData<VoFIterator>& a_vofIter,
1058 const int a_comp = 0);
1070 plus(EBAMRCellData& a_lhs,
const EBAMRCellData& a_rhs,
const int a_srcComp,
const int a_dstComp,
const int a_numComp);
1082 plus(LevelData<EBCellFAB>& a_lhs,
1083 const LevelData<EBCellFAB>& a_rhs,
1084 const int a_srcComp,
1085 const int a_dstComp,
1086 const int a_numComp);
1094 scale(MFAMRCellData& a_lhs,
const Real& a_scale)
noexcept;
1102 scale(LevelData<MFCellFAB>& a_lhs,
const Real& a_scale)
noexcept;
1110 scale(MFAMRFluxData& a_lhs,
const Real& a_scale);
1118 scale(LevelData<MFFluxFAB>& a_lhs,
const Real& a_scale);
1127 scale(EBAMRIVData& a_lhs,
const Real& a_scale,
const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
1135 scale(EBAMRCellData& a_lhs,
const Real a_scale)
noexcept;
1143 scale(LevelData<EBCellFAB>& a_lhs,
const Real a_scale)
noexcept;
1151 scale(EBAMRFluxData& a_lhs,
const Real a_scale);
1159 scale(LevelData<EBFluxFAB>& a_lhs,
const Real a_scale);
1168 scale(LevelData<BaseIVFAB<Real>>& a_lhs,
const Real& a_scale, LayoutData<VoFIterator>& a_vofIter);
1178 setCoveredValue(EBAMRCellData& a_lhs,
const EBAMRCellData& a_coveredMask,
const int a_comp,
const Real a_value);
1189 const LevelData<EBCellFAB>& a_coveredMask,
1191 const Real a_value);
1200 setCoveredValue(EBAMRCellData& a_lhs,
const EBAMRCellData& a_coveredMask,
const Real a_value);
1209 setCoveredValue(LevelData<EBCellFAB>& a_lhs,
const LevelData<EBCellFAB>& a_coveredMask,
const Real a_value);
1218 setCoveredValue(EBAMRFluxData& a_lhs,
const int a_comp,
const Real a_value)
noexcept;
1227 setCoveredValue(LevelData<EBFluxFAB>& a_lhs,
const int a_comp,
const Real a_value)
noexcept;
1243 setCoveredValue(LevelData<EBFluxFAB>& a_lhs,
const Real a_value)
noexcept;
1252 setInvalidValue(EBAMRCellData& a_lhs,
const Vector<int>& a_refRat,
const Real a_value);
1269 const std::function<Real(
const RealVect)>& a_function,
1270 const RealVect& a_probLo,
1271 const Vector<Real>& a_dx,
1273 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIterPhase0,
1274 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIterPhase1);
1290 setValue(LevelData<MFCellFAB>& a_lhs,
1291 const std::function<Real(
const RealVect)>& a_function,
1292 const RealVect a_probLo,
1295 const RefCountedPtr<LayoutData<VoFIterator>>& a_vofIterPhase0,
1296 const RefCountedPtr<LayoutData<VoFIterator>>& a_vofIterPhase1);
1310 const std::function<Real(
const RealVect)>& a_function,
1311 const RealVect& a_probLo,
1312 const Vector<Real>& a_dx,
1314 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
1327 setValue(LevelData<EBCellFAB>& a_lhs,
1328 const std::function<Real(
const RealVect)>& a_function,
1329 const RealVect a_probLo,
1332 LayoutData<VoFIterator>& a_vofIter);
1346 const std::function<Real(
const RealVect)>& a_function,
1347 const RealVect& a_probLo,
1348 const Vector<Real>& a_dx,
1350 Vector<RefCountedPtr<LayoutData<std::array<FaceIterator, SpaceDim>>>>& a_faceIter);
1363 setValue(LevelData<EBFluxFAB>& a_lhs,
1364 const std::function<Real(
const RealVect)>& a_function,
1365 const RealVect a_probLo,
1368 LayoutData<std::array<FaceIterator, SpaceDim>>& a_faceIter);
1382 const std::function<Real(
const RealVect)>& a_function,
1383 const RealVect& a_probLo,
1384 const Vector<Real>& a_dx,
1386 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
1399 setValue(LevelData<BaseIVFAB<Real>>& a_lhs,
1400 const std::function<Real(
const RealVect)>& a_function,
1401 const RealVect a_probLo,
1404 LayoutData<VoFIterator>& a_vofIter);
1417 const std::function<RealVect(
const RealVect)>& a_function,
1418 const RealVect& a_probLo,
1419 const Vector<Real>& a_dx,
1420 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
1432 setValue(LevelData<EBCellFAB>& a_lhs,
1433 const std::function<RealVect(
const RealVect)>& a_function,
1434 const RealVect a_probLo,
1436 LayoutData<VoFIterator>& a_vofIter);
1444 setValue(EBAMRCellData& a_data,
const Real& a_value);
1453 setValue(EBAMRCellData& a_lhs,
const Real a_value,
const int a_comp);
1462 setValue(LevelData<EBCellFAB>& a_lhs,
const Real a_value,
const int a_comp);
1470 setValue(LevelData<EBCellFAB>& a_lhs,
const Real a_value);
1478 setValue(LevelData<EBFluxFAB>& a_lhs,
const Real a_value);
1486 setValue(LevelData<BaseIVFAB<Real>>& a_lhs,
const Real a_value);
1494 setValue(EBAMRFluxData& a_data,
const Real& a_value);
1502 setValue(EBAMRIVData& a_data,
const Real& a_value);
1510 setValue(MFAMRCellData& a_lhs,
const Real& a_value)
noexcept;
1518 setValue(LevelData<MFCellFAB>& a_lhs,
const Real& a_value)
noexcept;
1526 setValue(MFAMRFluxData& a_lhs,
const Real& a_value);
1534 setValue(LevelData<MFFluxFAB>& a_lhs,
const Real& a_value);
1542 setValue(MFAMRIVData& a_lhs,
const Real& a_value);
1550 setValue(LevelData<MFBaseIVFAB>& a_lhs,
const Real& a_value);
1558 setValue(EBAMRIFData& a_lhs,
const Real a_value);
1566 setValue(LevelData<DomainFluxIFFAB>& a_lhs,
const Real a_value);
1583 squareRoot(EBAMRFluxData& a_lhs, Vector<RefCountedPtr<LayoutData<std::array<FaceIterator, SpaceDim>>>>& a_faceIter);
1593 squareRoot(LevelData<EBFluxFAB>& a_lhs, LayoutData<std::array<FaceIterator, SpaceDim>>& a_faceIter);
1607 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIterPhase0,
1608 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIterPhase1);
1622 const RefCountedPtr<LayoutData<VoFIterator>>& a_vofIterPhase0,
1623 const RefCountedPtr<LayoutData<VoFIterator>>& a_vofIterPhase1);
1635 const EBAMRCellData& a_rhs,
1636 const EBAMRCellData& a_notCovered,
1637 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
1649 const LevelData<EBCellFAB>& a_rhs,
1650 const LevelData<EBCellFAB>& a_notCovered,
1651 LayoutData<VoFIterator>& a_vofIter);
1664 const EBCellFAB& a_rhs,
1665 const EBCellFAB& a_notCovered,
1667 VoFIterator& a_vofIter);
1680 const EBAMRCellData& a_rhs,
1681 const EBAMRCellData& a_notCovered,
1682 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
1695 const LevelData<EBCellFAB>& a_rhs,
1696 const LevelData<EBCellFAB>& a_notCovered,
1697 LayoutData<VoFIterator>& a_vofIter);
1711 const EBCellFAB& a_rhs,
1712 const EBCellFAB& a_notCovered,
1714 VoFIterator& a_vofIter);
1724 computeMinValidBox(RealVect& a_lo, RealVect& a_hi,
const RealVect& a_normal,
const RealVect& a_centroid);
1734 allCornersInsideEb(
const Vector<RealVect>& a_corners,
const RealVect& a_normal,
const RealVect& a_centroid);
1743 shiftCorners(Vector<RealVect>& a_corners,
const RealVect& a_distance);