\hypertarget{namespacebfb__surface__forcing}{}\section{bfb\+\_\+surface\+\_\+forcing Module Reference}
\label{namespacebfb__surface__forcing}\index{bfb\+\_\+surface\+\_\+forcing@{bfb\+\_\+surface\+\_\+forcing}}


\subsection{Detailed Description}
Surface forcing for the boundary-\/forced-\/basin (B\+FB) configuration. \subsection*{Data Types}
\begin{DoxyCompactItemize}
\item 
type \mbox{\hyperlink{structbfb__surface__forcing_1_1bfb__surface__forcing__cs}{bfb\+\_\+surface\+\_\+forcing\+\_\+cs}}
\begin{DoxyCompactList}\small\item\em Control structure for B\+F\+B\+\_\+surface\+\_\+forcing. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Functions/\+Subroutines}
\begin{DoxyCompactItemize}
\item 
subroutine, public \mbox{\hyperlink{namespacebfb__surface__forcing_a8d13a88059987a88f3fcb20518360369}{bfb\+\_\+buoyancy\+\_\+forcing}} (sfc\+\_\+state, fluxes, day, dt, G, US, CS)
\begin{DoxyCompactList}\small\item\em Bouyancy forcing for the boundary-\/forced-\/basin (B\+FB) configuration. \end{DoxyCompactList}\item 
subroutine, public \mbox{\hyperlink{namespacebfb__surface__forcing_aaf77fa8e36d280fa2f3033f38417d7a0}{bfb\+\_\+surface\+\_\+forcing\+\_\+init}} (Time, G, US, param\+\_\+file, diag, CS)
\begin{DoxyCompactList}\small\item\em Initialization for forcing the boundary-\/forced-\/basin (B\+FB) configuration. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Function/\+Subroutine Documentation}
\mbox{\Hypertarget{namespacebfb__surface__forcing_a8d13a88059987a88f3fcb20518360369}\label{namespacebfb__surface__forcing_a8d13a88059987a88f3fcb20518360369}} 
\index{bfb\+\_\+surface\+\_\+forcing@{bfb\+\_\+surface\+\_\+forcing}!bfb\+\_\+buoyancy\+\_\+forcing@{bfb\+\_\+buoyancy\+\_\+forcing}}
\index{bfb\+\_\+buoyancy\+\_\+forcing@{bfb\+\_\+buoyancy\+\_\+forcing}!bfb\+\_\+surface\+\_\+forcing@{bfb\+\_\+surface\+\_\+forcing}}
\subsubsection{\texorpdfstring{bfb\+\_\+buoyancy\+\_\+forcing()}{bfb\_buoyancy\_forcing()}}
{\footnotesize\ttfamily subroutine, public bfb\+\_\+surface\+\_\+forcing\+::bfb\+\_\+buoyancy\+\_\+forcing (\begin{DoxyParamCaption}\item[{type(surface), intent(inout)}]{sfc\+\_\+state,  }\item[{type(forcing), intent(inout)}]{fluxes,  }\item[{type(time\+\_\+type), intent(in)}]{day,  }\item[{real, intent(in)}]{dt,  }\item[{type(ocean\+\_\+grid\+\_\+type), intent(in)}]{G,  }\item[{type(unit\+\_\+scale\+\_\+type), intent(in)}]{US,  }\item[{type(\mbox{\hyperlink{structbfb__surface__forcing_1_1bfb__surface__forcing__cs}{bfb\+\_\+surface\+\_\+forcing\+\_\+cs}}), pointer}]{CS }\end{DoxyParamCaption})}



Bouyancy forcing for the boundary-\/forced-\/basin (B\+FB) configuration. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in,out}  & {\em sfc\+\_\+state} & A structure containing fields that describe the surface state of the ocean.\\
\hline
\mbox{\tt in,out}  & {\em fluxes} & A structure containing pointers to any possible forcing fields. Unused fields have N\+U\+LL ptrs.\\
\hline
\mbox{\tt in}  & {\em day} & Time of the fluxes.\\
\hline
\mbox{\tt in}  & {\em dt} & The amount of time over which the fluxes apply \mbox{[}s\mbox{]}\\
\hline
\mbox{\tt in}  & {\em g} & The ocean\textquotesingle{}s grid structure\\
\hline
\mbox{\tt in}  & {\em us} & A dimensional unit scaling type\\
\hline
 & {\em cs} & A pointer to the control structure returned by a previous call to B\+F\+B\+\_\+surface\+\_\+forcing\+\_\+init. \\
\hline
\end{DoxyParams}


Definition at line 51 of file B\+F\+B\+\_\+surface\+\_\+forcing.\+F90.


\begin{DoxyCode}
51   \textcolor{keywordtype}{type}(surface),                \textcolor{keywordtype}{intent(inout)} :: sfc\_state\textcolor{comment}{  !< A structure containing fields that}
52 \textcolor{comment}{                                                      !! describe the surface state of the ocean.}
53   \textcolor{keywordtype}{type}(forcing),                \textcolor{keywordtype}{intent(inout)} :: fluxes\textcolor{comment}{ !< A structure containing pointers to any}
54 \textcolor{comment}{                                                      !! possible forcing fields. Unused fields}
55 \textcolor{comment}{                                                      !! have NULL ptrs.}
56   \textcolor{keywordtype}{type}(time\_type),              \textcolor{keywordtype}{intent(in)}    :: day\textcolor{comment}{  !< Time of the fluxes.}
57   \textcolor{keywordtype}{real},                         \textcolor{keywordtype}{intent(in)}    :: dt\textcolor{comment}{   !< The amount of time over which}
58 \textcolor{comment}{                                                      !! the fluxes apply [s]}
59   \textcolor{keywordtype}{type}(ocean\_grid\_type),        \textcolor{keywordtype}{intent(in)}    :: G\textcolor{comment}{    !< The ocean's grid structure}
60   \textcolor{keywordtype}{type}(unit\_scale\_type),        \textcolor{keywordtype}{intent(in)}    :: US\textcolor{comment}{   !< A dimensional unit scaling type}
61   \textcolor{keywordtype}{type}(BFB\_surface\_forcing\_CS), \textcolor{keywordtype}{pointer}       :: CS\textcolor{comment}{   !< A pointer to the control structure}
62 \textcolor{comment}{                                                      !! returned by a previous call to}
63 \textcolor{comment}{                                                      !! BFB\_surface\_forcing\_init.}
64   \textcolor{comment}{! Local variables}
65   \textcolor{keywordtype}{real} :: Temp\_restore   \textcolor{comment}{! The temperature that is being restored toward [degC].}
66   \textcolor{keywordtype}{real} :: Salin\_restore  \textcolor{comment}{! The salinity that is being restored toward [ppt].}
67   \textcolor{keywordtype}{real} :: density\_restore  \textcolor{comment}{! The potential density that is being restored}
68                          \textcolor{comment}{! toward [R ~> kg m-3].}
69   \textcolor{keywordtype}{real} :: rhoXcp           \textcolor{comment}{! Reference density times heat capacity times unit scaling}
70                            \textcolor{comment}{! factors [Q R degC-1 ~> J m-3 degC-1]}
71   \textcolor{keywordtype}{real} :: buoy\_rest\_const  \textcolor{comment}{! A constant relating density anomalies to the}
72                            \textcolor{comment}{! restoring buoyancy flux [L2 T-3 R-1 ~> m5 s-3 kg-1].}
73   \textcolor{keywordtype}{integer} :: i, j, is, ie, js, je
74   \textcolor{keywordtype}{integer} :: isd, ied, jsd, jed
75 
76   is = g%isc ; ie = g%iec ; js = g%jsc ; je = g%jec
77   isd = g%isd ; ied = g%ied ; jsd = g%jsd ; jed = g%jed
78 
79   \textcolor{comment}{! Allocate and zero out the forcing arrays, as necessary.  This portion is}
80   \textcolor{comment}{! usually not changed.}
81   \textcolor{keywordflow}{if} (cs%use\_temperature) \textcolor{keywordflow}{then}
82     \textcolor{keyword}{call }safe\_alloc\_ptr(fluxes%evap, isd, ied, jsd, jed)
83     \textcolor{keyword}{call }safe\_alloc\_ptr(fluxes%lprec, isd, ied, jsd, jed)
84     \textcolor{keyword}{call }safe\_alloc\_ptr(fluxes%fprec, isd, ied, jsd, jed)
85     \textcolor{keyword}{call }safe\_alloc\_ptr(fluxes%lrunoff, isd, ied, jsd, jed)
86     \textcolor{keyword}{call }safe\_alloc\_ptr(fluxes%frunoff, isd, ied, jsd, jed)
87     \textcolor{keyword}{call }safe\_alloc\_ptr(fluxes%vprec, isd, ied, jsd, jed)
88 
89     \textcolor{keyword}{call }safe\_alloc\_ptr(fluxes%sw, isd, ied, jsd, jed)
90     \textcolor{keyword}{call }safe\_alloc\_ptr(fluxes%lw, isd, ied, jsd, jed)
91     \textcolor{keyword}{call }safe\_alloc\_ptr(fluxes%latent, isd, ied, jsd, jed)
92     \textcolor{keyword}{call }safe\_alloc\_ptr(fluxes%sens, isd, ied, jsd, jed)
93   \textcolor{keywordflow}{else} \textcolor{comment}{! This is the buoyancy only mode.}
94     \textcolor{keyword}{call }safe\_alloc\_ptr(fluxes%buoy, isd, ied, jsd, jed)
95 \textcolor{keywordflow}{  endif}
96 
97   \textcolor{keywordflow}{if} ( cs%use\_temperature ) \textcolor{keywordflow}{then}
98     \textcolor{comment}{! Set whichever fluxes are to be used here.  Any fluxes that}
99     \textcolor{comment}{! are always zero do not need to be changed here.}
100     \textcolor{keywordflow}{do} j=js,je ; \textcolor{keywordflow}{do} i=is,ie
101       \textcolor{comment}{! Fluxes of fresh water through the surface are in units of [R Z T-1 ~> kg m-2 s-1]}
102       \textcolor{comment}{! and are positive downward - i.e. evaporation should be negative.}
103       fluxes%evap(i,j) = -0.0 * g%mask2dT(i,j)
104       fluxes%lprec(i,j) = 0.0 * g%mask2dT(i,j)
105 
106       \textcolor{comment}{! vprec will be set later, if it is needed for salinity restoring.}
107       fluxes%vprec(i,j) = 0.0
108 
109       \textcolor{comment}{! Heat fluxes are in units of [Q R Z T-1 ~> W m-2] and are positive into the ocean.}
110       fluxes%lw(i,j) = 0.0 * g%mask2dT(i,j)
111       fluxes%latent(i,j) = 0.0 * g%mask2dT(i,j)
112       fluxes%sens(i,j) = 0.0 * g%mask2dT(i,j)
113       fluxes%sw(i,j) = 0.0 * g%mask2dT(i,j)
114 \textcolor{keywordflow}{    enddo} ;\textcolor{keywordflow}{ enddo}
115   \textcolor{keywordflow}{else} \textcolor{comment}{! This is the buoyancy only mode.}
116     \textcolor{keywordflow}{do} j=js,je ; \textcolor{keywordflow}{do} i=is,ie
117       \textcolor{comment}{!   fluxes%buoy is the buoyancy flux into the ocean [L2 T-3 ~> m2 s-3].  A positive}
118       \textcolor{comment}{! buoyancy flux is of the same sign as heating the ocean.}
119       fluxes%buoy(i,j) = 0.0 * g%mask2dT(i,j)
120 \textcolor{keywordflow}{    enddo} ;\textcolor{keywordflow}{ enddo}
121 \textcolor{keywordflow}{  endif}
122 
123   \textcolor{keywordflow}{if} (cs%restorebuoy) \textcolor{keywordflow}{then}
124     \textcolor{keywordflow}{if} (cs%use\_temperature) \textcolor{keywordflow}{then}
125       \textcolor{keyword}{call }safe\_alloc\_ptr(fluxes%heat\_added, isd, ied, jsd, jed)
126       \textcolor{comment}{!   When modifying the code, comment out this error message.  It is here}
127       \textcolor{comment}{! so that the original (unmodified) version is not accidentally used.}
128       \textcolor{keyword}{call }mom\_error(fatal, \textcolor{stringliteral}{"User\_buoyancy\_surface\_forcing: "} // &
129         \textcolor{stringliteral}{"Temperature and salinity restoring used without modification."} )
130 
131       rhoxcp = cs%Rho0 * fluxes%C\_p
132       \textcolor{keywordflow}{do} j=js,je ; \textcolor{keywordflow}{do} i=is,ie
133         \textcolor{comment}{!   Set Temp\_restore and Salin\_restore to the temperature (in degC) and}
134         \textcolor{comment}{! salinity (in ppt) that are being restored toward.}
135         temp\_restore = 0.0
136         salin\_restore = 0.0
137 
138         fluxes%heat\_added(i,j) = (g%mask2dT(i,j) * (rhoxcp * cs%Flux\_const)) * &
139             (temp\_restore - sfc\_state%SST(i,j))
140         fluxes%vprec(i,j) = - (g%mask2dT(i,j) * (cs%Rho0*cs%Flux\_const)) * &
141             ((salin\_restore - sfc\_state%SSS(i,j)) / (0.5 * (salin\_restore + sfc\_state%SSS(i,j))))
142 \textcolor{keywordflow}{      enddo} ;\textcolor{keywordflow}{ enddo}
143     \textcolor{keywordflow}{else}
144       \textcolor{comment}{!   When modifying the code, comment out this error message.  It is here}
145       \textcolor{comment}{! so that the original (unmodified) version is not accidentally used.}
146       \textcolor{comment}{! call MOM\_error(FATAL, "User\_buoyancy\_surface\_forcing: " // &}
147       \textcolor{comment}{!   "Buoyancy restoring used without modification." )}
148 
149       \textcolor{comment}{! The -1 is because density has the opposite sign to buoyancy.}
150       buoy\_rest\_const = -1.0 * (cs%G\_Earth * cs%Flux\_const) / cs%Rho0
151       temp\_restore = 0.0
152       \textcolor{keywordflow}{do} j=js,je ; \textcolor{keywordflow}{do} i=is,ie
153        \textcolor{comment}{!   Set density\_restore to an expression for the surface potential}
154        \textcolor{comment}{! density [R ~> kg m-3] that is being restored toward.}
155         \textcolor{keywordflow}{if} (g%geoLatT(i,j) < cs%lfrslat) \textcolor{keywordflow}{then}
156             temp\_restore = cs%SST\_s
157         \textcolor{keywordflow}{elseif} (g%geoLatT(i,j) > cs%lfrnlat) \textcolor{keywordflow}{then}
158             temp\_restore = cs%SST\_n
159         \textcolor{keywordflow}{else}
160             temp\_restore = (cs%SST\_s - cs%SST\_n)/(cs%lfrslat - cs%lfrnlat) * &
161                     (g%geoLatT(i,j) - cs%lfrslat) + cs%SST\_s
162 \textcolor{keywordflow}{        endif}
163 
164         density\_restore = temp\_restore*cs%drho\_dt + cs%Rho0
165 
166         fluxes%buoy(i,j) = g%mask2dT(i,j) * buoy\_rest\_const * &
167                           (density\_restore - sfc\_state%sfc\_density(i,j))
168 \textcolor{keywordflow}{      enddo} ;\textcolor{keywordflow}{ enddo}
169 \textcolor{keywordflow}{    endif}
170 \textcolor{keywordflow}{  endif}                                             \textcolor{comment}{! end RESTOREBUOY}
171 
\end{DoxyCode}
\mbox{\Hypertarget{namespacebfb__surface__forcing_aaf77fa8e36d280fa2f3033f38417d7a0}\label{namespacebfb__surface__forcing_aaf77fa8e36d280fa2f3033f38417d7a0}} 
\index{bfb\+\_\+surface\+\_\+forcing@{bfb\+\_\+surface\+\_\+forcing}!bfb\+\_\+surface\+\_\+forcing\+\_\+init@{bfb\+\_\+surface\+\_\+forcing\+\_\+init}}
\index{bfb\+\_\+surface\+\_\+forcing\+\_\+init@{bfb\+\_\+surface\+\_\+forcing\+\_\+init}!bfb\+\_\+surface\+\_\+forcing@{bfb\+\_\+surface\+\_\+forcing}}
\subsubsection{\texorpdfstring{bfb\+\_\+surface\+\_\+forcing\+\_\+init()}{bfb\_surface\_forcing\_init()}}
{\footnotesize\ttfamily subroutine, public bfb\+\_\+surface\+\_\+forcing\+::bfb\+\_\+surface\+\_\+forcing\+\_\+init (\begin{DoxyParamCaption}\item[{type(time\+\_\+type), intent(in)}]{Time,  }\item[{type(ocean\+\_\+grid\+\_\+type), intent(in)}]{G,  }\item[{type(unit\+\_\+scale\+\_\+type), intent(in)}]{US,  }\item[{type(param\+\_\+file\+\_\+type), intent(in)}]{param\+\_\+file,  }\item[{type(diag\+\_\+ctrl), intent(in), target}]{diag,  }\item[{type(\mbox{\hyperlink{structbfb__surface__forcing_1_1bfb__surface__forcing__cs}{bfb\+\_\+surface\+\_\+forcing\+\_\+cs}}), pointer}]{CS }\end{DoxyParamCaption})}



Initialization for forcing the boundary-\/forced-\/basin (B\+FB) configuration. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em time} & The current model time.\\
\hline
\mbox{\tt in}  & {\em g} & The ocean\textquotesingle{}s grid structure\\
\hline
\mbox{\tt in}  & {\em us} & A dimensional unit scaling type\\
\hline
\mbox{\tt in}  & {\em param\+\_\+file} & A structure to parse for run-\/time parameters\\
\hline
\mbox{\tt in}  & {\em diag} & A structure that is used to regulate diagnostic output.\\
\hline
 & {\em cs} & A pointer to the control structure for this module \\
\hline
\end{DoxyParams}


Definition at line 176 of file B\+F\+B\+\_\+surface\+\_\+forcing.\+F90.


\begin{DoxyCode}
176   \textcolor{keywordtype}{type}(time\_type),              \textcolor{keywordtype}{intent(in)} :: Time\textcolor{comment}{ !< The current model time.}
177   \textcolor{keywordtype}{type}(ocean\_grid\_type),        \textcolor{keywordtype}{intent(in)} :: G\textcolor{comment}{    !< The ocean's grid structure}
178   \textcolor{keywordtype}{type}(unit\_scale\_type),        \textcolor{keywordtype}{intent(in)} :: US\textcolor{comment}{   !< A dimensional unit scaling type}
179   \textcolor{keywordtype}{type}(param\_file\_type),        \textcolor{keywordtype}{intent(in)} :: param\_file\textcolor{comment}{ !< A structure to parse for run-time parameters}
180   \textcolor{keywordtype}{type}(diag\_ctrl), \textcolor{keywordtype}{target},      \textcolor{keywordtype}{intent(in)} :: diag\textcolor{comment}{ !< A structure that is used to}
181 \textcolor{comment}{                                                   !! regulate diagnostic output.}
182   \textcolor{keywordtype}{type}(BFB\_surface\_forcing\_CS), \textcolor{keywordtype}{pointer}    :: CS\textcolor{comment}{   !< A pointer to the control structure for this module}
183 \textcolor{comment}{! This include declares and sets the variable "version".}
184 \textcolor{preprocessor}{#include "version\_variable.h"}
185 \textcolor{preprocessor}{}  \textcolor{keywordtype}{character(len=40)}  :: mdl = \textcolor{stringliteral}{"BFB\_surface\_forcing"} \textcolor{comment}{! This module's name.}
186 
187   \textcolor{keywordflow}{if} (\textcolor{keyword}{associated}(cs)) \textcolor{keywordflow}{then}
188     \textcolor{keyword}{call }mom\_error(warning, \textcolor{stringliteral}{"BFB\_surface\_forcing\_init called with an associated "}// &
189                              \textcolor{stringliteral}{"control structure."})
190     \textcolor{keywordflow}{return}
191 \textcolor{keywordflow}{  endif}
192   \textcolor{keyword}{allocate}(cs)
193   cs%diag => diag
194 
195   \textcolor{comment}{! Read all relevant parameters and write them to the model log.}
196   \textcolor{keyword}{call }log\_version(param\_file, mdl, version, \textcolor{stringliteral}{""})
197   \textcolor{keyword}{call }get\_param(param\_file, mdl, \textcolor{stringliteral}{"ENABLE\_THERMODYNAMICS"}, cs%use\_temperature, &
198                  \textcolor{stringliteral}{"If true, Temperature and salinity are used as state variables."}, default=.true.)
199 
200   \textcolor{keyword}{call }get\_param(param\_file, mdl, \textcolor{stringliteral}{"G\_EARTH"}, cs%G\_Earth, &
201                  \textcolor{stringliteral}{"The gravitational acceleration of the Earth."}, &
202                  units=\textcolor{stringliteral}{"m s-2"}, default = 9.80, scale=us%m\_to\_L**2*us%Z\_to\_m*us%T\_to\_s**2)
203   \textcolor{keyword}{call }get\_param(param\_file, mdl, \textcolor{stringliteral}{"RHO\_0"}, cs%Rho0, &
204                  \textcolor{stringliteral}{"The mean ocean density used with BOUSSINESQ true to "}//&
205                  \textcolor{stringliteral}{"calculate accelerations and the mass for conservation "}//&
206                  \textcolor{stringliteral}{"properties, or with BOUSSINSEQ false to convert some "}//&
207                  \textcolor{stringliteral}{"parameters from vertical units of m to kg m-2."}, &
208                  units=\textcolor{stringliteral}{"kg m-3"}, default=1035.0, scale=us%kg\_m3\_to\_R)
209   \textcolor{keyword}{call }get\_param(param\_file, mdl, \textcolor{stringliteral}{"LFR\_SLAT"}, cs%lfrslat, &
210                  \textcolor{stringliteral}{"Southern latitude where the linear forcing ramp begins."}, &
211                  units=\textcolor{stringliteral}{"degrees"}, default=20.0)
212   \textcolor{keyword}{call }get\_param(param\_file, mdl, \textcolor{stringliteral}{"LFR\_NLAT"}, cs%lfrnlat, &
213                  \textcolor{stringliteral}{"Northern latitude where the linear forcing ramp ends."}, &
214                  units=\textcolor{stringliteral}{"degrees"}, default=40.0)
215   \textcolor{keyword}{call }get\_param(param\_file, mdl, \textcolor{stringliteral}{"SST\_S"}, cs%SST\_s, &
216                  \textcolor{stringliteral}{"SST at the southern edge of the linear forcing ramp."}, &
217                  units=\textcolor{stringliteral}{"C"}, default=20.0)
218   \textcolor{keyword}{call }get\_param(param\_file, mdl, \textcolor{stringliteral}{"SST\_N"}, cs%SST\_n, &
219                  \textcolor{stringliteral}{"SST at the northern edge of the linear forcing ramp."}, &
220                  units=\textcolor{stringliteral}{"C"}, default=10.0)
221   \textcolor{keyword}{call }get\_param(param\_file, mdl, \textcolor{stringliteral}{"DRHO\_DT"}, cs%drho\_dt, &
222                  \textcolor{stringliteral}{"The rate of change of density with temperature."}, &
223                  units=\textcolor{stringliteral}{"kg m-3 K-1"}, default=-0.2, scale=us%kg\_m3\_to\_R)
224   \textcolor{keyword}{call }get\_param(param\_file, mdl, \textcolor{stringliteral}{"GUST\_CONST"}, cs%gust\_const, &
225                  \textcolor{stringliteral}{"The background gustiness in the winds."}, units=\textcolor{stringliteral}{"Pa"}, default=0.0)
226 
227   \textcolor{keyword}{call }get\_param(param\_file, mdl, \textcolor{stringliteral}{"RESTOREBUOY"}, cs%restorebuoy, &
228                  \textcolor{stringliteral}{"If true, the buoyancy fluxes drive the model back "}//&
229                  \textcolor{stringliteral}{"toward some specified surface state with a rate "}//&
230                  \textcolor{stringliteral}{"given by FLUXCONST."}, default= .false.)
231   \textcolor{keywordflow}{if} (cs%restorebuoy) \textcolor{keywordflow}{then}
232     \textcolor{keyword}{call }get\_param(param\_file, mdl, \textcolor{stringliteral}{"FLUXCONST"}, cs%Flux\_const, &
233                  \textcolor{stringliteral}{"The constant that relates the restoring surface fluxes to the relative "}//&
234                  \textcolor{stringliteral}{"surface anomalies (akin to a piston velocity).  Note the non-MKS units."}, &
235                  default=0.0, units=\textcolor{stringliteral}{"m day-1"}, scale=us%m\_to\_Z*us%T\_to\_s)
236     \textcolor{comment}{! Convert CS%Flux\_const from m day-1 to m s-1.}
237     cs%Flux\_const = cs%Flux\_const / 86400.0
238 \textcolor{keywordflow}{  endif}
239 
\end{DoxyCode}
