\hypertarget{namespaceuser__revise__forcing}{}\section{user\+\_\+revise\+\_\+forcing Module Reference}
\label{namespaceuser__revise__forcing}\index{user\_revise\_forcing@{user\_revise\_forcing}}


\subsection{Detailed Description}
Provides a template for users to code updating the forcing fluxes. \subsection*{Data Types}
\begin{DoxyCompactItemize}
\item 
type \mbox{\hyperlink{structuser__revise__forcing_1_1user__revise__forcing__cs}{user\+\_\+revise\+\_\+forcing\+\_\+cs}}
\begin{DoxyCompactList}\small\item\em Control structure for \mbox{\hyperlink{namespaceuser__revise__forcing}{user\+\_\+revise\+\_\+forcing}}. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Functions/\+Subroutines}
\begin{DoxyCompactItemize}
\item 
subroutine, public \mbox{\hyperlink{namespaceuser__revise__forcing_a93570fd2b435b5ec874d9a30baf0e074}{user\+\_\+alter\+\_\+forcing}} (sfc\+\_\+state, fluxes, day, G, CS)
\begin{DoxyCompactList}\small\item\em This subroutine sets the surface wind stresses. \end{DoxyCompactList}\item 
subroutine, public \mbox{\hyperlink{namespaceuser__revise__forcing_a2ad3d5246a9856b8beca995015e63887}{user\+\_\+revise\+\_\+forcing\+\_\+init}} (param\+\_\+file, CS)
\begin{DoxyCompactList}\small\item\em Initialize the \mbox{\hyperlink{namespaceuser__revise__forcing}{user\+\_\+revise\+\_\+forcing}} control structure. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Variables}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{namespaceuser__revise__forcing_aff2094ef8f4fd1b43f87894578dec4c2}\label{namespaceuser__revise__forcing_aff2094ef8f4fd1b43f87894578dec4c2}} 
character(len=40) \mbox{\hyperlink{namespaceuser__revise__forcing_aff2094ef8f4fd1b43f87894578dec4c2}{mdl}} = \char`\"{}user\+\_\+revise\+\_\+forcing\char`\"{}
\begin{DoxyCompactList}\small\item\em This module\textquotesingle{}s name. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Function/\+Subroutine Documentation}
\mbox{\Hypertarget{namespaceuser__revise__forcing_a93570fd2b435b5ec874d9a30baf0e074}\label{namespaceuser__revise__forcing_a93570fd2b435b5ec874d9a30baf0e074}} 
\index{user\_revise\_forcing@{user\_revise\_forcing}!user\_alter\_forcing@{user\_alter\_forcing}}
\index{user\_alter\_forcing@{user\_alter\_forcing}!user\_revise\_forcing@{user\_revise\_forcing}}
\subsubsection{\texorpdfstring{user\_alter\_forcing()}{user\_alter\_forcing()}}
{\footnotesize\ttfamily subroutine, public user\+\_\+revise\+\_\+forcing\+::user\+\_\+alter\+\_\+forcing (\begin{DoxyParamCaption}\item[{type(surface), intent(in)}]{sfc\+\_\+state,  }\item[{type(forcing), intent(inout)}]{fluxes,  }\item[{type(time\+\_\+type), intent(in)}]{day,  }\item[{type(ocean\+\_\+grid\+\_\+type), intent(in)}]{G,  }\item[{type(\mbox{\hyperlink{structuser__revise__forcing_1_1user__revise__forcing__cs}{user\+\_\+revise\+\_\+forcing\+\_\+cs}}), pointer}]{CS }\end{DoxyParamCaption})}



This subroutine sets the surface wind stresses. 


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


Definition at line 34 of file user\+\_\+revise\+\_\+forcing.\+F90.


\begin{DoxyCode}{0}
\DoxyCodeLine{34   \textcolor{keywordtype}{type}(surface),            \textcolor{keywordtype}{intent(in)}    :: sfc\_state\textcolor{comment}{  !< A structure containing fields that}}
\DoxyCodeLine{35 \textcolor{comment}{                                                    !! describe the surface state of the ocean.}}
\DoxyCodeLine{36   \textcolor{keywordtype}{type}(forcing),            \textcolor{keywordtype}{intent(inout)} :: fluxes\textcolor{comment}{ !< A structure containing pointers to any}}
\DoxyCodeLine{37 \textcolor{comment}{                                                    !! possible forcing fields. Unused fields}}
\DoxyCodeLine{38 \textcolor{comment}{                                                    !! have NULL ptrs.}}
\DoxyCodeLine{39   \textcolor{keywordtype}{type}(time\_type),          \textcolor{keywordtype}{intent(in)}    :: day\textcolor{comment}{    !< Time of the fluxes.}}
\DoxyCodeLine{40   \textcolor{keywordtype}{type}(ocean\_grid\_type),    \textcolor{keywordtype}{intent(in)}    :: G\textcolor{comment}{      !< The ocean's grid structure.}}
\DoxyCodeLine{41   \textcolor{keywordtype}{type}(user\_revise\_forcing\_CS), \textcolor{keywordtype}{pointer}   :: CS\textcolor{comment}{     !< A pointer to the control structure}}
\DoxyCodeLine{42 \textcolor{comment}{                                                    !! returned by a previous call to}}
\DoxyCodeLine{43 \textcolor{comment}{                                                    !! surface\_forcing\_init.}}
\DoxyCodeLine{44 }

\end{DoxyCode}
\mbox{\Hypertarget{namespaceuser__revise__forcing_a2ad3d5246a9856b8beca995015e63887}\label{namespaceuser__revise__forcing_a2ad3d5246a9856b8beca995015e63887}} 
\index{user\_revise\_forcing@{user\_revise\_forcing}!user\_revise\_forcing\_init@{user\_revise\_forcing\_init}}
\index{user\_revise\_forcing\_init@{user\_revise\_forcing\_init}!user\_revise\_forcing@{user\_revise\_forcing}}
\subsubsection{\texorpdfstring{user\_revise\_forcing\_init()}{user\_revise\_forcing\_init()}}
{\footnotesize\ttfamily subroutine, public user\+\_\+revise\+\_\+forcing\+::user\+\_\+revise\+\_\+forcing\+\_\+init (\begin{DoxyParamCaption}\item[{type(param\+\_\+file\+\_\+type), intent(in)}]{param\+\_\+file,  }\item[{type(\mbox{\hyperlink{structuser__revise__forcing_1_1user__revise__forcing__cs}{user\+\_\+revise\+\_\+forcing\+\_\+cs}}), pointer}]{CS }\end{DoxyParamCaption})}



Initialize the \mbox{\hyperlink{namespaceuser__revise__forcing}{user\+\_\+revise\+\_\+forcing}} control structure. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em param\+\_\+file} & A structure indicating the open file to parse for model parameter values. \\
\hline
 & {\em cs} & A pointer to the control structure returned by a previous call to surface\+\_\+forcing\+\_\+init. \\
\hline
\end{DoxyParams}


Definition at line 49 of file user\+\_\+revise\+\_\+forcing.\+F90.


\begin{DoxyCode}{0}
\DoxyCodeLine{49   \textcolor{keywordtype}{type}(param\_file\_type), \textcolor{keywordtype}{intent(in)} :: param\_file\textcolor{comment}{   !< A structure indicating the open file to}}
\DoxyCodeLine{50 \textcolor{comment}{                                                    !! parse for model parameter values.}}
\DoxyCodeLine{51   \textcolor{keywordtype}{type}(user\_revise\_forcing\_CS), \textcolor{keywordtype}{pointer}   :: CS\textcolor{comment}{     !< A pointer to the control structure}}
\DoxyCodeLine{52 \textcolor{comment}{                                                    !! returned by a previous call to}}
\DoxyCodeLine{53 \textcolor{comment}{                                                    !! surface\_forcing\_init.}}
\DoxyCodeLine{54 }
\DoxyCodeLine{55   \textcolor{keyword}{call }log\_version(param\_file, mdl, version)}
\DoxyCodeLine{56 }

\end{DoxyCode}
