Skip to content

Commit

Permalink
Adding Diagnose to Microphysics (erf-model#1310)
Browse files Browse the repository at this point in the history
* Changes to EOS.H with moisture

* Change all functions in EOS.H to work with moisture

* Adding qp for buoyancy type 1

* Updating docs for buoyancy term

* Updating docs for buoyancy term

* Update docs for buoyancy

* Avoiding extra divide

* Update buoyancy docs

* Some corrections to buoyancy docs

* Some corrections to Docs in buoyancy

* Correcting docs issue

* Correcting docs

* adding Kessler microphysics docs

* adding Kessler microphysics docs

* adding Kessler microphysics docs

* adding Kessler microphysics docs

* Adding diagnose to microphysics

* Adding diagnose to microphysics

---------

Co-authored-by: Mahesh Natarajan <[email protected]>
Co-authored-by: Ann Almgren <[email protected]>
  • Loading branch information
3 people authored Nov 22, 2023
1 parent c78ccdb commit 02c7bfe
Show file tree
Hide file tree
Showing 4 changed files with 33 additions and 0 deletions.
23 changes: 23 additions & 0 deletions Docs/sphinx_doc/theory/Microphysics.rst
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,29 @@

.. _Microphysics:

Kessler Microphysics model
===========================
Governing equations for the microphysical quantities for Kessler microphysics from `gabervsek2012dry`_ are

.. math::
\frac{\partial q_v}{\partial t} = -C_c + E_c + E_r
.. math::
\frac{\partial q_c}{\partial t} = C_c - E_c - (A_c + K_c)
.. math::
\frac{\partial q_p}{\partial t} = \frac{1}{\overline{\rho}}\frac{\partial}{\partial z}(\overline{\rho}Vq_p) + (A_c + K_c) - E_r
.. math::
\frac{\partial q_t}{\partial t} = \frac{\partial q_v}{\partial t} + \frac{\partial q_c}{\partial t}
= E_r - (A_c + K_c)
where :math:`C_c` is the rate of condensation of water vapor to cloud water, :math:`E_c` is the rate of evaporation of cloud water to water vapor,
:math:`A_c` is the autoconversion of cloud water to rain, :math:`K_c` is the accretion of cloud water to rain drops, :math:`E_r` is the evaporation of
rain to water vapor and :math:`F_r` is the sedimentation of rain. The parametrization used is given in `klemp1978simulation`_, and is given
below. Note that in all the equations, :math:`p` is specified in millibars and :math:`\overline{\rho}` is specified in g cm :math:`^{-3}`.

.. _`gabervsek2012dry`: https://journals.ametsoc.org/view/journals/mwre/140/10/mwr-d-11-00144.1.xml
.. _`klemp1978simulation`: https://journals.ametsoc.org/view/journals/atsc/35/6/1520-0469_1978_035_1070_tsotdc_2_0_co_2.xml


Single Moment Microphysics Model
===================================
The conversion rates among the moist hydrometeors are parameterized assuming that
Expand Down
6 changes: 6 additions & 0 deletions Source/Microphysics/Microphysics.H
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,12 @@ public:
m_moist_model->Advance();
}

void
Diagnose ( )
{
m_moist_model->Diagnose();
}

void
Update (amrex::MultiFab& cons_in,
amrex::MultiFab& qmoist)
Expand Down
3 changes: 3 additions & 0 deletions Source/Microphysics/Null/NullMoist.H
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,9 @@ class NullMoist {
virtual void
Advance ( ) { };

virtual void
Diagnose ( ) { };

virtual void
Update (amrex::MultiFab& /*cons_in*/,
amrex::MultiFab& /*qmoist*/) { };
Expand Down
1 change: 1 addition & 0 deletions Source/TimeIntegration/ERF_advance_microphysics.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ void ERF::advance_microphysics (int lev,
Geom(lev),
dt_advance);
micro.Advance();
micro.Diagnose();
micro.Update(cons, qmoist[lev]);
}
#endif

0 comments on commit 02c7bfe

Please sign in to comment.