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);
298 filterSmooth(EBAMRCellData& a_data,
const Real a_alpha,
const int a_stride,
const bool a_zeroEB)
noexcept;
316 filterSmooth(LevelData<EBCellFAB>& a_data,
const Real a_alpha,
const int a_stride,
const bool a_zeroEB)
noexcept;
325 incr(MFAMRCellData& a_lhs,
const MFAMRCellData& a_rhs,
const Real a_scale)
noexcept;
334 incr(LevelData<MFCellFAB>& a_lhs,
const LevelData<MFCellFAB>& a_rhs,
const Real a_scale)
noexcept;
343 incr(EBAMRCellData& a_lhs,
const EBAMRCellData& a_rhs,
const Real& a_scale)
noexcept;
352 incr(LevelData<EBCellFAB>& a_lhs,
const LevelData<EBCellFAB>& a_rhs,
const Real& a_scale)
noexcept;
361 incr(EBAMRFluxData& a_lhs,
const EBAMRFluxData& a_rhs,
const Real& a_scale);
370 incr(LevelData<EBFluxFAB>& a_lhs,
const LevelData<EBFluxFAB>& a_rhs,
const Real& a_scale);
379 incr(EBFluxFAB& a_lhs,
const EBFluxFAB& a_rhs,
const Real& a_scale);
389 incr(EBAMRIVData& a_lhs,
const EBAMRIVData& a_rhs,
const Real& a_scale);
399 incr(LevelData<BaseIVFAB<Real>>& a_lhs,
const LevelData<BaseIVFAB<Real>>& a_rhs,
const Real& a_scale);
409 incr(EBAMRIVData& a_lhs,
410 const EBAMRIVData& a_rhs,
412 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
422 incr(LevelData<BaseIVFAB<Real>>& a_lhs,
423 const LevelData<BaseIVFAB<Real>>& a_rhs,
425 LayoutData<VoFIterator>& a_vofIter);
434 incr(EBAMRIFData& a_lhs,
const EBAMRIFData& a_rhs,
const Real& a_scale);
443 incr(LevelData<DomainFluxIFFAB>& a_lhs,
const LevelData<DomainFluxIFFAB>& a_rhs,
const Real& a_scale);
454 incr(EBAMRCellData& a_lhs,
455 const EBAMRIVData& a_rhs,
457 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
468 incr(LevelData<EBCellFAB>& a_lhs,
469 const LevelData<BaseIVFAB<Real>>& a_rhs,
471 LayoutData<VoFIterator>& a_vofIter);
482 incr(EBAMRIVData& a_lhs,
483 const EBAMRCellData& a_rhs,
485 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
496 incr(LevelData<BaseIVFAB<Real>>& a_lhs,
497 const LevelData<EBCellFAB>& a_rhs,
499 LayoutData<VoFIterator>& a_vofIter);
507 copy(MFAMRCellData& a_dst,
const MFAMRCellData& a_src);
515 copy(EBAMRCellData& a_dst,
const EBAMRCellData& a_src);
523 copy(EBAMRIVData& a_dst,
const EBAMRIVData& a_src);
532 template <
typename T>
544 divide(EBAMRCellData& a_lhs,
const EBAMRCellData& a_rhs,
const int a_lhsComp,
const int a_rhsComp);
554 divide(LevelData<EBCellFAB>& a_lhs,
const LevelData<EBCellFAB>& a_rhs,
const int a_lhsComp,
const int a_rhsComp);
570 divideByScalar(LevelData<EBCellFAB>& a_lhs,
const LevelData<EBCellFAB>& a_rhs);
581 const EBAMRCellData& a_denominator,
582 const Real a_fallback,
583 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
595 const LevelData<EBCellFAB>& a_denominator,
596 const Real a_fallback,
597 LayoutData<VoFIterator>& a_vofIter);
608 const EBAMRCellData& a_denominator,
609 const EBAMRCellData& a_fallback,
610 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
622 const LevelData<EBCellFAB>& a_denominator,
623 const LevelData<EBCellFAB>& a_fallback,
624 LayoutData<VoFIterator>& a_vofIter);
634 floor(EBAMRCellData& a_lhs,
const Real a_value,
const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
644 floor(LevelData<EBCellFAB>& a_lhs,
const Real a_value, LayoutData<VoFIterator>& a_vofIter);
653 floor(EBAMRIVData& a_lhs,
const Real a_value,
const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
662 floor(LevelData<BaseIVFAB<Real>>& a_lhs,
const Real a_value, LayoutData<VoFIterator>& a_vofIter);
672 roof(EBAMRCellData& a_lhs,
const Real a_value,
const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
682 roof(LevelData<EBCellFAB>& a_lhs,
const Real a_value, LayoutData<VoFIterator>& a_vofIter);
691 roof(EBAMRIVData& a_lhs,
const Real a_value,
const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
700 roof(LevelData<BaseIVFAB<Real>>& a_lhs,
const Real a_value, LayoutData<VoFIterator>& a_vofIter);
710 max(EBAMRCellData& a_data,
711 const EBAMRCellData& a_data1,
712 const EBAMRCellData& a_data2,
713 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
723 max(LevelData<EBCellFAB>& a_data,
724 const LevelData<EBCellFAB>& a_data1,
725 const LevelData<EBCellFAB>& a_data2,
726 LayoutData<VoFIterator>& a_vofIter);
740 EBAMRCellData& a_data,
742 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
755 LevelData<EBCellFAB>& a_data,
757 LayoutData<VoFIterator>& a_vofIter);
772 EBAMRFluxData& a_data,
774 Vector<RefCountedPtr<LayoutData<std::array<FaceIterator, SpaceDim>>>>& a_faceIter)
noexcept;
788 LevelData<EBFluxFAB>& a_data,
790 LayoutData<std::array<FaceIterator, SpaceDim>>& a_faceIter)
noexcept;
800 getMaxMin(Vector<Real>& a_max, Vector<Real>& a_min, Vector<EBAMRCellData>& a_data);
814 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
824 getMaxMinNorm(Real& a_max, Real& a_min, LevelData<EBCellFAB>& data, LayoutData<VoFIterator>& a_vofIter);
838 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
848 getMaxMinNorm(Real& a_max, Real& a_min, LevelData<BaseIVFAB<Real>>& a_data, LayoutData<VoFIterator>& a_vofIter);
866 invert(EBAMRFluxData& a_data, Vector<RefCountedPtr<LayoutData<std::array<FaceIterator, SpaceDim>>>>& a_faceIter);
876 invert(LevelData<EBFluxFAB>& a_data, LayoutData<std::array<FaceIterator, SpaceDim>>& a_faceIter);
896 const LevelData<EBCellFAB>& a_lhs,
897 const LevelData<EBCellFAB>& a_regularMask,
899 LayoutData<VoFIterator>& a_vofIter);
907 kappaScale(EBAMRCellData& a_data,
const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter)
noexcept;
915 kappaScale(LevelData<EBCellFAB>& a_data, LayoutData<VoFIterator>& a_vofIter)
noexcept;
927 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIterPhase0,
928 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIterPhase1)
noexcept;
940 const RefCountedPtr<LayoutData<VoFIterator>>& a_vofIterPhase0,
941 const RefCountedPtr<LayoutData<VoFIterator>>& a_vofIterPhase1)
noexcept;
949 volumeScale(EBAMRCellData& a_data,
const Vector<Real>& a_dx);
958 multiply(EBAMRCellData& a_lhs,
const EBAMRCellData& a_rhs);
967 multiply(LevelData<EBCellFAB>& a_lhs,
const LevelData<EBCellFAB>& a_rhs);
976 multiply(EBAMRFluxData& a_lhs,
const EBAMRFluxData& a_rhs);
985 multiply(LevelData<EBFluxFAB>& a_lhs,
const LevelData<EBFluxFAB>& a_rhs);
996 const EBAMRIVData& a_rhs,
997 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
1007 multiply(LevelData<BaseIVFAB<Real>>& a_lhs,
1008 const LevelData<BaseIVFAB<Real>>& a_rhs,
1009 LayoutData<VoFIterator>& a_vofIter);
1018 multiplyScalar(EBAMRCellData& a_lhs,
const EBAMRCellData& a_rhs);
1027 multiplyScalar(LevelData<EBCellFAB>& a_lhs,
const LevelData<EBCellFAB>& a_rhs);
1037 const EBAMRIVData& a_rhs,
1038 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
1048 const LevelData<BaseIVFAB<Real>>& a_rhs,
1049 LayoutData<VoFIterator>& a_vofIter);
1062 norm(
const LevelData<EBCellFAB>& a_data,
1063 const LevelData<EBCellFAB>& a_regularMask,
1065 LayoutData<VoFIterator>& a_vofIter,
1066 const int a_comp = 0);
1078 plus(EBAMRCellData& a_lhs,
const EBAMRCellData& a_rhs,
const int a_srcComp,
const int a_dstComp,
const int a_numComp);
1090 plus(LevelData<EBCellFAB>& a_lhs,
1091 const LevelData<EBCellFAB>& a_rhs,
1092 const int a_srcComp,
1093 const int a_dstComp,
1094 const int a_numComp);
1102 scale(MFAMRCellData& a_lhs,
const Real& a_scale)
noexcept;
1110 scale(LevelData<MFCellFAB>& a_lhs,
const Real& a_scale)
noexcept;
1118 scale(MFAMRFluxData& a_lhs,
const Real& a_scale);
1126 scale(LevelData<MFFluxFAB>& a_lhs,
const Real& a_scale);
1135 scale(EBAMRIVData& a_lhs,
const Real& a_scale,
const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
1143 scale(EBAMRCellData& a_lhs,
const Real a_scale)
noexcept;
1151 scale(LevelData<EBCellFAB>& a_lhs,
const Real a_scale)
noexcept;
1159 scale(EBAMRFluxData& a_lhs,
const Real a_scale);
1167 scale(LevelData<EBFluxFAB>& a_lhs,
const Real a_scale);
1176 scale(LevelData<BaseIVFAB<Real>>& a_lhs,
const Real& a_scale, LayoutData<VoFIterator>& a_vofIter);
1186 setCoveredValue(EBAMRCellData& a_lhs,
const EBAMRCellData& a_coveredMask,
const int a_comp,
const Real a_value);
1197 const LevelData<EBCellFAB>& a_coveredMask,
1199 const Real a_value);
1208 setCoveredValue(EBAMRCellData& a_lhs,
const EBAMRCellData& a_coveredMask,
const Real a_value);
1217 setCoveredValue(LevelData<EBCellFAB>& a_lhs,
const LevelData<EBCellFAB>& a_coveredMask,
const Real a_value);
1226 setCoveredValue(EBAMRFluxData& a_lhs,
const int a_comp,
const Real a_value)
noexcept;
1235 setCoveredValue(LevelData<EBFluxFAB>& a_lhs,
const int a_comp,
const Real a_value)
noexcept;
1251 setCoveredValue(LevelData<EBFluxFAB>& a_lhs,
const Real a_value)
noexcept;
1260 setInvalidValue(EBAMRCellData& a_lhs,
const Vector<int>& a_refRat,
const Real a_value);
1277 const std::function<Real(
const RealVect)>& a_function,
1278 const RealVect& a_probLo,
1279 const Vector<Real>& a_dx,
1281 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIterPhase0,
1282 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIterPhase1);
1298 setValue(LevelData<MFCellFAB>& a_lhs,
1299 const std::function<Real(
const RealVect)>& a_function,
1300 const RealVect a_probLo,
1303 const RefCountedPtr<LayoutData<VoFIterator>>& a_vofIterPhase0,
1304 const RefCountedPtr<LayoutData<VoFIterator>>& a_vofIterPhase1);
1318 const std::function<Real(
const RealVect)>& a_function,
1319 const RealVect& a_probLo,
1320 const Vector<Real>& a_dx,
1322 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
1335 setValue(LevelData<EBCellFAB>& a_lhs,
1336 const std::function<Real(
const RealVect)>& a_function,
1337 const RealVect a_probLo,
1340 LayoutData<VoFIterator>& a_vofIter);
1354 const std::function<Real(
const RealVect)>& a_function,
1355 const RealVect& a_probLo,
1356 const Vector<Real>& a_dx,
1358 Vector<RefCountedPtr<LayoutData<std::array<FaceIterator, SpaceDim>>>>& a_faceIter);
1371 setValue(LevelData<EBFluxFAB>& a_lhs,
1372 const std::function<Real(
const RealVect)>& a_function,
1373 const RealVect a_probLo,
1376 LayoutData<std::array<FaceIterator, SpaceDim>>& a_faceIter);
1390 const std::function<Real(
const RealVect)>& a_function,
1391 const RealVect& a_probLo,
1392 const Vector<Real>& a_dx,
1394 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
1407 setValue(LevelData<BaseIVFAB<Real>>& a_lhs,
1408 const std::function<Real(
const RealVect)>& a_function,
1409 const RealVect a_probLo,
1412 LayoutData<VoFIterator>& a_vofIter);
1425 const std::function<RealVect(
const RealVect)>& a_function,
1426 const RealVect& a_probLo,
1427 const Vector<Real>& a_dx,
1428 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
1440 setValue(LevelData<EBCellFAB>& a_lhs,
1441 const std::function<RealVect(
const RealVect)>& a_function,
1442 const RealVect a_probLo,
1444 LayoutData<VoFIterator>& a_vofIter);
1452 setValue(EBAMRCellData& a_data,
const Real& a_value);
1461 setValue(EBAMRCellData& a_lhs,
const Real a_value,
const int a_comp);
1470 setValue(LevelData<EBCellFAB>& a_lhs,
const Real a_value,
const int a_comp);
1478 setValue(LevelData<EBCellFAB>& a_lhs,
const Real a_value);
1486 setValue(LevelData<EBFluxFAB>& a_lhs,
const Real a_value);
1494 setValue(LevelData<BaseIVFAB<Real>>& a_lhs,
const Real a_value);
1502 setValue(EBAMRFluxData& a_data,
const Real& a_value);
1510 setValue(EBAMRIVData& a_data,
const Real& a_value);
1518 setValue(MFAMRCellData& a_lhs,
const Real& a_value)
noexcept;
1526 setValue(LevelData<MFCellFAB>& a_lhs,
const Real& a_value)
noexcept;
1534 setValue(MFAMRFluxData& a_lhs,
const Real& a_value);
1542 setValue(LevelData<MFFluxFAB>& a_lhs,
const Real& a_value);
1550 setValue(MFAMRIVData& a_lhs,
const Real& a_value);
1558 setValue(LevelData<MFBaseIVFAB>& a_lhs,
const Real& a_value);
1566 setValue(EBAMRIFData& a_lhs,
const Real a_value);
1574 setValue(LevelData<DomainFluxIFFAB>& a_lhs,
const Real a_value);
1591 squareRoot(EBAMRFluxData& a_lhs, Vector<RefCountedPtr<LayoutData<std::array<FaceIterator, SpaceDim>>>>& a_faceIter);
1601 squareRoot(LevelData<EBFluxFAB>& a_lhs, LayoutData<std::array<FaceIterator, SpaceDim>>& a_faceIter);
1615 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIterPhase0,
1616 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIterPhase1);
1630 const RefCountedPtr<LayoutData<VoFIterator>>& a_vofIterPhase0,
1631 const RefCountedPtr<LayoutData<VoFIterator>>& a_vofIterPhase1);
1643 const EBAMRCellData& a_rhs,
1644 const EBAMRCellData& a_notCovered,
1645 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
1657 const LevelData<EBCellFAB>& a_rhs,
1658 const LevelData<EBCellFAB>& a_notCovered,
1659 LayoutData<VoFIterator>& a_vofIter);
1672 const EBCellFAB& a_rhs,
1673 const EBCellFAB& a_notCovered,
1675 VoFIterator& a_vofIter);
1688 const EBAMRCellData& a_rhs,
1689 const EBAMRCellData& a_notCovered,
1690 const Vector<RefCountedPtr<LayoutData<VoFIterator>>>& a_vofIter);
1703 const LevelData<EBCellFAB>& a_rhs,
1704 const LevelData<EBCellFAB>& a_notCovered,
1705 LayoutData<VoFIterator>& a_vofIter);
1719 const EBCellFAB& a_rhs,
1720 const EBCellFAB& a_notCovered,
1722 VoFIterator& a_vofIter);
1732 computeMinValidBox(RealVect& a_lo, RealVect& a_hi,
const RealVect& a_normal,
const RealVect& a_centroid);
1742 allCornersInsideEb(
const Vector<RealVect>& a_corners,
const RealVect& a_normal,
const RealVect& a_centroid);
1751 shiftCorners(Vector<RealVect>& a_corners,
const RealVect& a_distance);