\hypertarget{group__nsslmp}{}\doxysubsection{NSSL MP Module}
\label{group__nsslmp}\index{NSSL MP Module@{NSSL MP Module}}


This module contains the front end to NSSL microphysics scheme.  


Collaboration diagram for NSSL MP Module\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{group__nsslmp}
\end{center}
\end{figure}
\doxysubsubsection*{Modules}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{group__mod__nsslmp}{NSSL 2-\/moment microphysics modules}}
\begin{DoxyCompactList}\small\item\em This module provides a 2-\/moment bulk microphysics scheme described by Mansell, Zeigler, and Bruning (2010, JAS) \end{DoxyCompactList}\end{DoxyCompactItemize}
\begin{DoxyCompactItemize}
\item 
subroutine, public \mbox{\hyperlink{group__nsslmp_gab01ad39d22dfee4beee2476feed5c7de_gab01ad39d22dfee4beee2476feed5c7de}{mp\+\_\+nssl\+::mp\+\_\+nssl\+\_\+init}} (ncol, nlev, errflg, errmsg, threads, restart, mpirank, mpiroot, con\+\_\+g, con\+\_\+rd, con\+\_\+cp, con\+\_\+rv, con\+\_\+t0c, con\+\_\+cliq, con\+\_\+csol, con\+\_\+eps, imp\+\_\+physics, imp\+\_\+physics\+\_\+nssl, nssl\+\_\+cccn, nssl\+\_\+alphah, nssl\+\_\+alphahl, nssl\+\_\+alphar, nssl\+\_\+ehw0, nssl\+\_\+ehlw0, nssl\+\_\+ccn\+\_\+on, nssl\+\_\+hail\+\_\+on, nssl\+\_\+invertccn)
\begin{DoxyCompactList}\small\item\em This subroutine is a wrapper around the \mbox{\hyperlink{group__mod__nsslmp_gabc727a241f59c3ca981182ae29b653c2_gabc727a241f59c3ca981182ae29b653c2}{nssl\+\_\+2mom\+\_\+init()}}. \end{DoxyCompactList}\end{DoxyCompactItemize}
\begin{DoxyCompactItemize}
\item 
subroutine, public \mbox{\hyperlink{group__nsslmp_gac1994df6febb0ba7ab30688eff8eb72f_gac1994df6febb0ba7ab30688eff8eb72f}{mp\+\_\+nssl\+::mp\+\_\+nssl\+\_\+run}} (ncol, nlev, con\+\_\+g, con\+\_\+rd, mpirank, spechum, cccn, cccna, qc, qr, qi, qs, qh, qhl, ccw, crw, cci, csw, chw, chl, vh, vhl, tgrs, prslk, prsl, phii, omega, dtp, prcp, rain, graupel, ice, snow, sr, refl\+\_\+10cm, do\+\_\+radar\+\_\+ref, first\+\_\+time\+\_\+step, restart, re\+\_\+cloud, re\+\_\+ice, re\+\_\+snow, re\+\_\+rain, nleffr, nieffr, nseffr, nreffr, imp\+\_\+physics, convert\+\_\+dry\+\_\+rho, imp\+\_\+physics\+\_\+nssl, nssl\+\_\+ccn\+\_\+on, nssl\+\_\+hail\+\_\+on, nssl\+\_\+invertccn, ntccn, ntccna, errflg, errmsg)
\end{DoxyCompactItemize}


\doxysubsubsection{Detailed Description}


\doxysubsubsection{Function/\+Subroutine Documentation}
\mbox{\Hypertarget{group__nsslmp_gab01ad39d22dfee4beee2476feed5c7de_gab01ad39d22dfee4beee2476feed5c7de}\label{group__nsslmp_gab01ad39d22dfee4beee2476feed5c7de_gab01ad39d22dfee4beee2476feed5c7de}} 
\index{NSSL MP Module@{NSSL MP Module}!mp\_nssl\_init@{mp\_nssl\_init}}
\index{mp\_nssl\_init@{mp\_nssl\_init}!NSSL MP Module@{NSSL MP Module}}
\doxyparagraph{\texorpdfstring{mp\_nssl\_init()}{mp\_nssl\_init()}}
{\footnotesize\ttfamily subroutine, public mp\+\_\+nssl\+::mp\+\_\+nssl\+\_\+init (\begin{DoxyParamCaption}\item[{integer, intent(in)}]{ncol,  }\item[{integer, intent(in)}]{nlev,  }\item[{integer, intent(out)}]{errflg,  }\item[{character(len=$\ast$), intent(out)}]{errmsg,  }\item[{integer, intent(in)}]{threads,  }\item[{logical, intent(in)}]{restart,  }\item[{integer, intent(in)}]{mpirank,  }\item[{integer, intent(in)}]{mpiroot,  }\item[{real(kind\+\_\+phys), intent(in)}]{con\+\_\+g,  }\item[{real(kind\+\_\+phys), intent(in)}]{con\+\_\+rd,  }\item[{real(kind\+\_\+phys), intent(in)}]{con\+\_\+cp,  }\item[{real(kind\+\_\+phys), intent(in)}]{con\+\_\+rv,  }\item[{real(kind\+\_\+phys), intent(in)}]{con\+\_\+t0c,  }\item[{real(kind\+\_\+phys), intent(in)}]{con\+\_\+cliq,  }\item[{real(kind\+\_\+phys), intent(in)}]{con\+\_\+csol,  }\item[{real(kind\+\_\+phys), intent(in)}]{con\+\_\+eps,  }\item[{integer, intent(in)}]{imp\+\_\+physics,  }\item[{integer, intent(in)}]{imp\+\_\+physics\+\_\+nssl,  }\item[{real(kind\+\_\+phys), intent(in)}]{nssl\+\_\+cccn,  }\item[{real(kind\+\_\+phys), intent(in)}]{nssl\+\_\+alphah,  }\item[{real(kind\+\_\+phys), intent(in)}]{nssl\+\_\+alphahl,  }\item[{real(kind\+\_\+phys), intent(in)}]{nssl\+\_\+alphar,  }\item[{real(kind\+\_\+phys), intent(in)}]{nssl\+\_\+ehw0,  }\item[{real(kind\+\_\+phys), intent(in)}]{nssl\+\_\+ehlw0,  }\item[{logical, intent(in)}]{nssl\+\_\+ccn\+\_\+on,  }\item[{logical, intent(in)}]{nssl\+\_\+hail\+\_\+on,  }\item[{logical, intent(in)}]{nssl\+\_\+invertccn }\end{DoxyParamCaption})}

\hypertarget{group__nsslmp_gab01ad39d22dfee4beee2476feed5c7de_arg_table_mp_nssl_init}{}\doxysubsubsection{Argument Table}\label{group__nsslmp_gab01ad39d22dfee4beee2476feed5c7de_arg_table_mp_nssl_init}
 

References \mbox{\hyperlink{group__mod__nsslmp_gabc727a241f59c3ca981182ae29b653c2_gabc727a241f59c3ca981182ae29b653c2}{module\+\_\+mp\+\_\+nssl\+\_\+2mom\+::nssl\+\_\+2mom\+\_\+init()}}, and \mbox{\hyperlink{group__mod__nsslmp_gad4f1554e9a7b8a8f0679dbb0ca2628ef_gad4f1554e9a7b8a8f0679dbb0ca2628ef}{module\+\_\+mp\+\_\+nssl\+\_\+2mom\+::nssl\+\_\+2mom\+\_\+init\+\_\+const()}}.

Here is the call graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{group__nsslmp_gab01ad39d22dfee4beee2476feed5c7de_gab01ad39d22dfee4beee2476feed5c7de_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{group__nsslmp_gac1994df6febb0ba7ab30688eff8eb72f_gac1994df6febb0ba7ab30688eff8eb72f}\label{group__nsslmp_gac1994df6febb0ba7ab30688eff8eb72f_gac1994df6febb0ba7ab30688eff8eb72f}} 
\index{NSSL MP Module@{NSSL MP Module}!mp\_nssl\_run@{mp\_nssl\_run}}
\index{mp\_nssl\_run@{mp\_nssl\_run}!NSSL MP Module@{NSSL MP Module}}
\doxyparagraph{\texorpdfstring{mp\_nssl\_run()}{mp\_nssl\_run()}}
{\footnotesize\ttfamily subroutine, public mp\+\_\+nssl\+::mp\+\_\+nssl\+\_\+run (\begin{DoxyParamCaption}\item[{integer, intent(in)}]{ncol,  }\item[{integer, intent(in)}]{nlev,  }\item[{real(kind\+\_\+phys), intent(in)}]{con\+\_\+g,  }\item[{real(kind\+\_\+phys), intent(in)}]{con\+\_\+rd,  }\item[{integer, intent(in)}]{mpirank,  }\item[{real(kind\+\_\+phys), dimension(\+:,\+:), intent(inout)}]{spechum,  }\item[{real(kind\+\_\+phys), dimension(\+:,\+:), intent(inout)}]{cccn,  }\item[{real(kind\+\_\+phys), dimension(\+:,\+:), intent(inout)}]{cccna,  }\item[{real(kind\+\_\+phys), dimension (\+:,\+:), intent(inout)}]{qc,  }\item[{real(kind\+\_\+phys), dimension (\+:,\+:), intent(inout)}]{qr,  }\item[{real(kind\+\_\+phys), dimension (\+:,\+:), intent(inout)}]{qi,  }\item[{real(kind\+\_\+phys), dimension (\+:,\+:), intent(inout)}]{qs,  }\item[{real(kind\+\_\+phys), dimension (\+:,\+:), intent(inout)}]{qh,  }\item[{real(kind\+\_\+phys), dimension(\+:,\+:), intent(inout)}]{qhl,  }\item[{real(kind\+\_\+phys), dimension(\+:,\+:), intent(inout)}]{ccw,  }\item[{real(kind\+\_\+phys), dimension(\+:,\+:), intent(inout)}]{crw,  }\item[{real(kind\+\_\+phys), dimension(\+:,\+:), intent(inout)}]{cci,  }\item[{real(kind\+\_\+phys), dimension(\+:,\+:), intent(inout)}]{csw,  }\item[{real(kind\+\_\+phys), dimension(\+:,\+:), intent(inout)}]{chw,  }\item[{real(kind\+\_\+phys), dimension(\+:,\+:), intent(inout)}]{chl,  }\item[{real(kind\+\_\+phys), dimension (\+:,\+:), intent(inout)}]{vh,  }\item[{real(kind\+\_\+phys), dimension(\+:,\+:), intent(inout)}]{vhl,  }\item[{real(kind\+\_\+phys), dimension (\+:,\+:), intent(inout)}]{tgrs,  }\item[{real(kind\+\_\+phys), dimension(\+:,\+:), intent(in)}]{prslk,  }\item[{real(kind\+\_\+phys), dimension (\+:,\+:), intent(in)}]{prsl,  }\item[{real(kind\+\_\+phys), dimension (\+:,\+:), intent(in)}]{phii,  }\item[{real(kind\+\_\+phys), dimension(\+:,\+:), intent(in)}]{omega,  }\item[{real(kind\+\_\+phys), intent(in)}]{dtp,  }\item[{real(kind\+\_\+phys), dimension   (\+:), intent(out)}]{prcp,  }\item[{real(kind\+\_\+phys), dimension   (\+:), intent(out)}]{rain,  }\item[{real(kind\+\_\+phys), dimension(\+:), intent(out)}]{graupel,  }\item[{real(kind\+\_\+phys), dimension    (\+:), intent(out)}]{ice,  }\item[{real(kind\+\_\+phys), dimension   (\+:), intent(out)}]{snow,  }\item[{real(kind\+\_\+phys), dimension     (\+:), intent(out)}]{sr,  }\item[{real(kind\+\_\+phys), dimension(\+:,\+:), intent(inout)}]{refl\+\_\+10cm,  }\item[{logical, intent(in)}]{do\+\_\+radar\+\_\+ref,  }\item[{logical, intent(in)}]{first\+\_\+time\+\_\+step,  }\item[{logical, intent(in)}]{restart,  }\item[{real(kind\+\_\+phys), dimension(\+:,\+:), intent(inout)}]{re\+\_\+cloud,  }\item[{real(kind\+\_\+phys), dimension(\+:,\+:), intent(inout)}]{re\+\_\+ice,  }\item[{real(kind\+\_\+phys), dimension(\+:,\+:), intent(inout)}]{re\+\_\+snow,  }\item[{real(kind\+\_\+phys), dimension(\+:,\+:), intent(inout)}]{re\+\_\+rain,  }\item[{integer, intent(in)}]{nleffr,  }\item[{integer, intent(in)}]{nieffr,  }\item[{integer, intent(in)}]{nseffr,  }\item[{integer, intent(in)}]{nreffr,  }\item[{integer, intent(in)}]{imp\+\_\+physics,  }\item[{logical, intent(in)}]{convert\+\_\+dry\+\_\+rho,  }\item[{integer, intent(in)}]{imp\+\_\+physics\+\_\+nssl,  }\item[{logical, intent(in)}]{nssl\+\_\+ccn\+\_\+on,  }\item[{logical, intent(in)}]{nssl\+\_\+hail\+\_\+on,  }\item[{logical, intent(in)}]{nssl\+\_\+invertccn,  }\item[{integer, intent(in)}]{ntccn,  }\item[{integer, intent(in)}]{ntccna,  }\item[{integer, intent(out)}]{errflg,  }\item[{character(len=$\ast$), intent(out)}]{errmsg }\end{DoxyParamCaption})}

\hypertarget{group__nsslmp_gac1994df6febb0ba7ab30688eff8eb72f_gen_nssl}{}\doxysubsubsection{NSSL MP General Algorithm\+: interface to driver}\label{group__nsslmp_gac1994df6febb0ba7ab30688eff8eb72f_gen_nssl}
\hypertarget{group__nsslmp_gac1994df6febb0ba7ab30688eff8eb72f_arg_table_mp_nssl_run}{}\doxysubsubsection{Argument Table}\label{group__nsslmp_gac1994df6febb0ba7ab30688eff8eb72f_arg_table_mp_nssl_run}
 
\begin{DoxyItemize}
\item Convert specific humidity/moist mixing ratios to dry mixing ratios
\item Density of air in kg m-\/3
\item Convert omega in Pa s-\/1 to vertical velocity w in m s-\/1
\item Layer thickness in m from geopotential in m2 s-\/2
\item Convert dry mixing ratios to specific humidity/moist mixing ratios
\item Convert rainfall deltas from mm to m (on physics timestep); add to inout variables
\end{DoxyItemize}

References \mbox{\hyperlink{group__mod__nsslmp_ga58002862f8b4adfd1329ee40abd421ba_ga58002862f8b4adfd1329ee40abd421ba}{module\+\_\+mp\+\_\+nssl\+\_\+2mom\+::calcnfromq()}}, and \mbox{\hyperlink{group__mod__nsslmp_ga1cdd63eaa05871a9305db455dc5ffcab_ga1cdd63eaa05871a9305db455dc5ffcab}{module\+\_\+mp\+\_\+nssl\+\_\+2mom\+::nssl\+\_\+2mom\+\_\+driver()}}.

Here is the call graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{group__nsslmp_gac1994df6febb0ba7ab30688eff8eb72f_gac1994df6febb0ba7ab30688eff8eb72f_cgraph}
\end{center}
\end{figure}
