<p><b>dwj07@fsu.edu</b> 2012-12-18 13:50:14 -0700 (Tue, 18 Dec 2012)</p><p><br>
        -- BRANCH COMMIT --<br>
<br>
        Adding forcing driver.<br>
</p><hr noshade><pre><font color="gray">Added: branches/ocean_projects/generic_forcing/src/core_ocean/mpas_ocn_forcing.F
===================================================================
--- branches/ocean_projects/generic_forcing/src/core_ocean/mpas_ocn_forcing.F                                (rev 0)
+++ branches/ocean_projects/generic_forcing/src/core_ocean/mpas_ocn_forcing.F        2012-12-18 20:50:14 UTC (rev 2358)
@@ -0,0 +1,131 @@
+!|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+!
+!  ocn_forcing
+!
+!&gt; \brief MPAS ocean forcing
+!&gt; \author Doug Jacobsen
+!&gt; \date   04/25/12
+!&gt; \version SVN:$Id:$
+!&gt; \details
+!&gt;  This module contains driver routines for building the forcing arrays.
+!
+!-----------------------------------------------------------------------
+
+module ocn_forcing
+
+   use mpas_grid_types
+   use mpas_configure
+   use mpas_timekeeping
+   use ocn_forcing_monthly
+   use ocn_forcing_coupled
+
+   implicit none
+   private
+   save
+
+   !--------------------------------------------------------------------
+   !
+   ! Public parameters
+   !
+   !--------------------------------------------------------------------
+
+   !--------------------------------------------------------------------
+   !
+   ! Public member functions
+   !
+   !--------------------------------------------------------------------
+
+   public :: ocn_build_forcing_arrays, &amp;
+             ocn_forcing_init
+
+   !--------------------------------------------------------------------
+   !
+   ! Private module variables
+   !
+   !--------------------------------------------------------------------
+
+!***********************************************************************
+
+contains
+
+!***********************************************************************
+!
+!  routine ocn_build_forcing_arrays
+!
+!&gt; \brief   Determines the forcing arrays.
+!&gt; \author  Doug Jacobsen
+!&gt; \date    12/13/12
+!&gt; \version SVN:$Id$
+!&gt; \details 
+!&gt;  This routine computes the forcing arrays used later in MPAS.
+!
+!-----------------------------------------------------------------------
+
+   subroutine ocn_build_forcing_arrays(timeStamp, grid, err)!{{{
+
+      !-----------------------------------------------------------------
+      !
+      ! input variables
+      !
+      !-----------------------------------------------------------------
+
+      type(MPAS_Time_type), intent(in) :: timeStamp
+
+      !-----------------------------------------------------------------
+      !
+      ! input/output variables
+      !
+      !-----------------------------------------------------------------
+
+      type (mesh_type), intent(inout) :: &amp;
+         grid          !&lt; Input: grid information
+
+
+      !-----------------------------------------------------------------
+      !
+      ! output variables
+      !
+      !-----------------------------------------------------------------
+
+      integer, intent(out) :: err !&lt; Output: Error flag
+
+      !-----------------------------------------------------------------
+      !
+      ! local variables
+      !
+      !-----------------------------------------------------------------
+
+      call ocn_build_forcing_arrays_monthly(timeStamp, grid, err)
+      call ocn_build_forcing_arrays_coupled(timeStamp, grid, err)
+
+   !--------------------------------------------------------------------
+
+   end subroutine ocn_build_forcing_arrays!}}}
+
+!***********************************************************************
+!
+!  routine ocn_forcing_init
+!
+!&gt; \brief   Initializes forcing module
+!&gt; \author  Doug Jacobsen
+!&gt; \date    12/13/12
+!&gt; \version SVN:$Id$
+!&gt; \details 
+!&gt;  This routine initializes the forcing modules.
+!
+!-----------------------------------------------------------------------
+
+   subroutine ocn_forcing_init(err)!{{{
+
+      integer, intent(out) :: err !&lt; Output: error flag
+
+      call ocn_forcing_monthly_init(err)
+
+   end subroutine ocn_forcing_init!}}}
+
+!***********************************************************************
+
+end module ocn_forcing
+
+!|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+! vim: foldmethod=marker

</font>
</pre>