diff --git a/Source/Microphysics/ERF_EulerianMicrophysics.H b/Source/Microphysics/ERF_EulerianMicrophysics.H index edf9c34cd..38d561b71 100644 --- a/Source/Microphysics/ERF_EulerianMicrophysics.H +++ b/Source/Microphysics/ERF_EulerianMicrophysics.H @@ -71,7 +71,8 @@ public: const amrex::Real&, /*!< current time */ const SolverChoice &solverChoice, /*!< Solver choice object */ amrex::Vector>&, /*!< Dycore state variables */ - const amrex::Vector>& /*!< terrain */) override + const amrex::Vector>&, /*!< terrain */ + const amrex::GpuArray& ) override { m_moist_model[lev]->Advance(dt_advance, solverChoice); } diff --git a/Source/Microphysics/ERF_LagrangianMicrophysics.H b/Source/Microphysics/ERF_LagrangianMicrophysics.H index 8ee581abe..e6cabb332 100644 --- a/Source/Microphysics/ERF_LagrangianMicrophysics.H +++ b/Source/Microphysics/ERF_LagrangianMicrophysics.H @@ -70,10 +70,11 @@ public: const amrex::Real& time, /*!< current time */ const SolverChoice& /*solverChoice*/, /*!< Solver choice object */ amrex::Vector>& a_vars, /*!< Dycore state variables */ - const amrex::Vector>& a_z/*!< terrain */) override + const amrex::Vector>& a_z/*!< terrain */, + const amrex::GpuArray& a_phys_bc_types ) override { if (lev > 0) return; - m_moist_model->Advance(dt_advance, iter, time, a_vars, a_z); + m_moist_model->Advance(dt_advance, iter, time, a_vars, a_z, a_phys_bc_types); } /*! \brief update microphysics variables from ERF state variables */ diff --git a/Source/Microphysics/ERF_Microphysics.H b/Source/Microphysics/ERF_Microphysics.H index 084572e0f..cfca27cae 100644 --- a/Source/Microphysics/ERF_Microphysics.H +++ b/Source/Microphysics/ERF_Microphysics.H @@ -8,6 +8,7 @@ #include #include #include "ERF_DataStruct.H" +#include "ERF_IndexDefines.H" /*! \brief Base class for microphysics interface */ class Microphysics { @@ -39,7 +40,8 @@ public: const amrex::Real&, const SolverChoice&, amrex::Vector>&, - const amrex::Vector>& ) = 0; + const amrex::Vector>&, + const amrex::GpuArray& ) = 0; /*! \brief update microphysics variables from ERF state variables */ virtual void Update_Micro_Vars_Lev (const int&, amrex::MultiFab&) = 0; diff --git a/Source/Microphysics/Null/ERF_NullMoistLagrangian.H b/Source/Microphysics/Null/ERF_NullMoistLagrangian.H index f05e93006..981e02652 100644 --- a/Source/Microphysics/Null/ERF_NullMoistLagrangian.H +++ b/Source/Microphysics/Null/ERF_NullMoistLagrangian.H @@ -7,6 +7,7 @@ #ifdef ERF_USE_PARTICLES #include +#include "ERF_IndexDefines.H" #include "ERF_NullMoist.H" /* forward declaration */ @@ -53,7 +54,8 @@ public: const int&, /* iter */ const amrex::Real&, /* time */ amrex::Vector>&, /* state variables */ - const amrex::Vector>& /* terrain */) { } + const amrex::Vector>&, /* terrain */ + const amrex::GpuArray& ) { } protected: diff --git a/Source/TimeIntegration/ERF_AdvanceMicrophysics.cpp b/Source/TimeIntegration/ERF_AdvanceMicrophysics.cpp index 93b37ff3d..e764b7f43 100644 --- a/Source/TimeIntegration/ERF_AdvanceMicrophysics.cpp +++ b/Source/TimeIntegration/ERF_AdvanceMicrophysics.cpp @@ -10,7 +10,7 @@ void ERF::advance_microphysics (int lev, { if (solverChoice.moisture_type != MoistureType::None) { micro->Update_Micro_Vars_Lev(lev, cons); - micro->Advance(lev, dt_advance, iteration, time, solverChoice, vars_new, z_phys_nd); + micro->Advance(lev, dt_advance, iteration, time, solverChoice, vars_new, z_phys_nd, phys_bc_type); micro->Update_State_Vars_Lev(lev, cons); } }