1 #ifndef ERF_SLOW_INTEGRATION_H_
2 #define ERF_SLOW_INTEGRATION_H_
4 #include "AMReX_MultiFab.H"
5 #include "AMReX_BCRec.H"
6 #include "AMReX_YAFluxRegister.H"
7 #include "AMReX_MultiCutFab.H"
8 #include "AMReX_EBMultiFabUtil.H"
23 const amrex::Vector<amrex::BCRec>& domain_bcs_type,
24 const amrex::MultiFab& z_phys_nd,
25 amrex::Vector<amrex::MultiFab>& S_data,
26 const amrex::MultiFab&
xvel,
27 const amrex::MultiFab&
yvel,
28 const amrex::MultiFab&
zvel,
29 amrex::Vector<std::unique_ptr<amrex::MultiFab>>& Tau_lev,
30 amrex::Vector<std::unique_ptr<amrex::MultiFab>>& Tau_corr_lev,
31 amrex::MultiFab* SmnSmn,
32 amrex::MultiFab* eddyDiffs,
33 const amrex::Geometry geom,
35 std::unique_ptr<SurfaceLayer>& SurfLayer,
36 amrex::Gpu::DeviceVector<amrex::Real>& stretched_dz_d,
37 const amrex::MultiFab& detJ,
38 amrex::Vector<std::unique_ptr<amrex::MultiFab>>& mapfac,
39 const amrex::MultiFab& ax,
40 const amrex::MultiFab& ay,
41 const amrex::MultiFab& az,
45 amrex::Vector<std::unique_ptr<amrex::MultiFab>>& Tau_corr_lev);
53 amrex::Vector<amrex::MultiFab>& S_rhs,
54 amrex::Vector<amrex::MultiFab>& S_old,
55 amrex::Vector<amrex::MultiFab>& S_data,
56 const amrex::MultiFab & S_prim,
57 const amrex::MultiFab &
qt,
58 amrex::MultiFab& avg_xmom,
59 amrex::MultiFab& avg_ymom,
60 amrex::MultiFab& avg_zmom,
61 const amrex::MultiFab&
xvel,
62 const amrex::MultiFab&
yvel,
63 const amrex::MultiFab&
zvel,
64 std::unique_ptr<amrex::MultiFab>& z_t,
65 const amrex::MultiFab& cc_src,
66 const amrex::MultiFab& xmom_src,
67 const amrex::MultiFab& ymom_src,
68 const amrex::MultiFab& zmom_src,
69 const amrex::MultiFab& buoyancy,
70 const amrex::MultiFab* zmom_crse_rhs,
71 amrex::Vector<std::unique_ptr<amrex::MultiFab>>& Tau_lev,
72 amrex::Vector<std::unique_ptr<amrex::MultiFab>>& Tau_corr_lev,
73 amrex::Vector<std::unique_ptr<amrex::MultiFab>>& Tau_EB,
74 amrex::MultiFab* SmnSmn,
75 amrex::MultiFab* eddyDiffs,
76 amrex::MultiFab* Hfx1,
77 amrex::MultiFab* Hfx2,
78 amrex::MultiFab* Hfx3,
79 amrex::MultiFab* Q1fx1,
80 amrex::MultiFab* Q1fx2,
81 amrex::MultiFab* Q1fx3,
82 amrex::MultiFab* Q2fx3,
83 amrex::MultiFab* Diss,
84 amrex::MultiFab* Hfx3_EB,
85 const amrex::Geometry geom,
87 std::unique_ptr<SurfaceLayer>& SurfLayer,
88 const amrex::Gpu::DeviceVector<amrex::BCRec>& domain_bcs_type_d,
89 const amrex::Vector<amrex::BCRec>& domain_bcs_type,
90 const amrex::MultiFab& z_phys_nd,
91 const amrex::MultiFab& z_phys_cc,
92 const amrex::MultiFab& ax,
93 const amrex::MultiFab& ay,
94 const amrex::MultiFab& az,
95 const amrex::MultiFab& dJ,
96 amrex::Gpu::DeviceVector<amrex::Real>& stretched_dz_d,
97 amrex::Vector<amrex::MultiFab>& gradp,
98 amrex::Vector<std::unique_ptr<amrex::MultiFab>>& mapfac,
101 std::unique_ptr<SHOCInterface>& shoc_lev,
103 amrex::YAFluxRegister* fr_as_crse,
104 amrex::YAFluxRegister* fr_as_fine);
113 amrex::Vector<amrex::MultiFab>& S_rhs,
114 amrex::Vector<amrex::MultiFab>& S_old,
115 amrex::Vector<amrex::MultiFab>& S_new,
116 amrex::Vector<amrex::MultiFab>& S_data,
117 const amrex::MultiFab& S_prim,
118 amrex::MultiFab& avg_xmom,
119 amrex::MultiFab& avg_ymom,
120 amrex::MultiFab& avg_zmom,
121 const amrex::MultiFab&
xvel,
122 const amrex::MultiFab&
yvel,
123 const amrex::MultiFab&
zvel,
124 const amrex::MultiFab& source,
125 const amrex::MultiFab* SmnSmn,
126 const amrex::MultiFab* eddyDiffs,
127 amrex::MultiFab* Hfx1,
128 amrex::MultiFab* Hfx2,
129 amrex::MultiFab* Hfx3,
130 amrex::MultiFab* Q1fx1,
131 amrex::MultiFab* Q1fx2,
132 amrex::MultiFab* Q1fx3,
133 amrex::MultiFab* Q2fx3,
134 amrex::MultiFab* Diss,
135 const amrex::Geometry geom,
137 std::unique_ptr<SurfaceLayer>& SurfLayer,
138 const amrex::Gpu::DeviceVector<amrex::BCRec>& domain_bcs_type_d,
139 const amrex::Vector<amrex::BCRec>& domain_bcs_type,
140 std::unique_ptr<amrex::MultiFab>& z_phys_nd,
141 std::unique_ptr<amrex::MultiFab>& z_phys_cc,
142 std::unique_ptr<amrex::MultiFab>& ax,
143 std::unique_ptr<amrex::MultiFab>& ay,
144 std::unique_ptr<amrex::MultiFab>& az,
145 std::unique_ptr<amrex::MultiFab>& dJ_old,
146 amrex::MultiFab* dJ_new,
147 amrex::Gpu::DeviceVector<amrex::Real>& stretched_dz_d,
148 amrex::Vector<std::unique_ptr<amrex::MultiFab>>& mapfac,
149 amrex::EBFArrayBoxFactory
const& ebfact,
150 #
if defined(ERF_USE_NETCDF)
151 const bool& moist_zero,
157 amrex::Vector<amrex::Vector<amrex::FArrayBox>>& bdy_data_xlo,
158 amrex::Vector<amrex::Vector<amrex::FArrayBox>>& bdy_data_xhi,
159 amrex::Vector<amrex::Vector<amrex::FArrayBox>>& bdy_data_ylo,
160 amrex::Vector<amrex::Vector<amrex::FArrayBox>>& bdy_data_yhi,
163 std::unique_ptr<SHOCInterface>& shoc_lev,
165 amrex::YAFluxRegister* fr_as_crse,
166 amrex::YAFluxRegister* fr_as_fine,
167 std::unique_ptr<ReadBndryPlanes>& m_r2d);
amrex::Real Real
Definition: ERF_ShocInterface.H:19
@ qt
Definition: ERF_Kessler.H:27
@ xvel
Definition: ERF_IndexDefines.H:159
@ zvel
Definition: ERF_IndexDefines.H:161
@ yvel
Definition: ERF_IndexDefines.H:160
Definition: ERF_DataStruct.H:130