c $Header: /u/gcmpack/MITgcm/pkg/exf/exf_init.F,v 1.9 2004/07/02 00:48:23 heimbach Exp $

#include "EXF_OPTIONS.h"


      subroutine EXF_INIT( mythid )

c     ==================================================================
c     SUBROUTINE exf_init
c     ==================================================================
c
c     o This routine initialises the forcing
c
c     started: Ralf.Giering@FastOpt.de 25-Mai-20000
c     mods for pkg/seaice: menemenlis@jpl.nasa.gov 20-Dec-2002
c
c     ==================================================================
c     SUBROUTINE exf_init
c     ==================================================================

      implicit none

c     == global variables ==

#include "EEPARAMS.h"
#include "SIZE.h"
#include "cal.h"
#include "exf.h"
#include "exf_param.h"
#include "exf_fields.h"

c     == routine arguments ==

      integer mythid

c     == local variables ==

c     == end of interface ==

      call EXF_INIT_GEN (
     &     ustressconst, ustress, ustress0, ustress1, mythid )
      call EXF_INIT_GEN (
     &     vstressconst, vstress, vstress0, vstress1, mythid )

#ifdef ALLOW_ATM_WIND 
      call EXF_INIT_GEN (
     &     uwindconst, uwind, uwind0, uwind1, mythid )
      call EXF_INIT_GEN (
     &     vwindconst, vwind, vwind0, vwind1, mythid )
#endif

      call EXF_INIT_GEN (
     &     hfluxconst, hflux, hflux0, hflux1, mythid )
      call EXF_INIT_GEN (
     &     sfluxconst, sflux, sflux0, sflux1, mythid )

#ifdef ALLOW_ATM_TEMP
      call EXF_INIT_GEN (
     &     atempconst, atemp, atemp0, atemp1, mythid )
      call EXF_INIT_GEN (
     &     aqhconst, aqh, aqh0, aqh1, mythid )
      call EXF_INIT_GEN (
     &     lwfluxconst, lwflux, lwflux0, lwflux1, mythid )
      call EXF_INIT_GEN (
     &     precipconst, precip, precip0, precip1, mythid )
#endif

#if defined(ALLOW_ATM_TEMP)  defined(SHORTWAVE_HEATING)
      call EXF_INIT_GEN (
     &     swfluxconst, swflux, swflux0, swflux1, mythid )
#endif

#if defined(ALLOW_ATM_TEMP)  defined(EXF_READ_EVAP)
      call EXF_INIT_GEN (
     &     evapconst, evap, evap0, evap1, mythid )
#endif

#ifdef ALLOW_DOWNWARD_RADIATION
      call EXF_INIT_GEN (
     &     swdownconst, swdown, swdown0, swdown1, mythid )
      call EXF_INIT_GEN (
     &     lwdownconst, lwdown, lwdown0, lwdown1, mythid )
#endif

#ifdef ATMOSPHERIC_LOADING
      call EXF_INIT_GEN (
     &     apressureconst, apressure, apressure0, apressure1, mythid )
#endif

#if (defined (ALLOW_RUNOFF)  defined (ALLOW_SEAICE))
      call EXF_INIT_RUNOFF   ( mythid )
#endif

c     Initialize climatological fields
      call EXF_CLIM_INIT     ( mythid )

      end