C $Header: /u/gcmpack/MITgcm/pkg/ctrl/CTRL_GENARR.h,v 1.18 2015/06/12 17:43:32 gforget Exp $
C $Name: $
C ==================================================================
C CTRL_GENARR.h
C ==================================================================
#if (defined (ALLOW_GENARR2D_CONTROL) defined (ALLOW_GENARR3D_CONTROL) defined (ALLOW_GENTIM2D_CONTROL))
COMMON /CONTROLFILES_CARR/
& xx_genarr2d_file,
& xx_genarr3d_file,
& xx_genarr2d_weight,
& xx_genarr3d_weight,
& xx_genarr2d_preproc, xx_genarr2d_preproc_c,
& xx_genarr3d_preproc, xx_genarr3d_preproc_c
CHARACTER*(MAX_LEN_FNAM) xx_genarr2d_file(maxCtrlArr2D)
CHARACTER*(MAX_LEN_FNAM) xx_genarr3d_file(maxCtrlArr3D)
CHARACTER*(MAX_LEN_FNAM) xx_genarr2d_weight(maxCtrlArr2D)
CHARACTER*(MAX_LEN_FNAM) xx_genarr3d_weight(maxCtrlArr3D)
CHARACTER*(MAX_LEN_FNAM)
& xx_genarr2d_preproc(maxCtrlProc,maxCtrlArr2D)
CHARACTER*(MAX_LEN_FNAM)
& xx_genarr3d_preproc(maxCtrlProc,maxCtrlArr3D)
CHARACTER*(MAX_LEN_FNAM)
& xx_genarr2d_preproc_c(maxCtrlProc,maxCtrlArr2D)
CHARACTER*(MAX_LEN_FNAM)
& xx_genarr3d_preproc_c(maxCtrlProc,maxCtrlArr3D)
COMMON /CONTROLFILES_RARR/
& genarr2dPrecond, genarr3dPrecond,
& xx_genarr2d_bounds,xx_genarr3d_bounds,
& xx_genarr2d_preproc_r,xx_genarr3d_preproc_r
_RL genarr2dPrecond(maxCtrlArr2D)
_RL genarr3dPrecond(maxCtrlArr3D)
_RL xx_genarr2d_bounds(5,maxCtrlArr2D)
_RL xx_genarr3d_bounds(5,maxCtrlArr3D)
_RL xx_genarr2d_preproc_r(maxCtrlProc,maxCtrlArr2D)
_RL xx_genarr3d_preproc_r(maxCtrlProc,maxCtrlArr3D)
COMMON /CONTROLFILES_IARR/
& xx_genarr2d_preproc_i,xx_genarr3d_preproc_i
integer xx_genarr2d_preproc_i(maxCtrlProc,maxCtrlArr2D)
integer xx_genarr3d_preproc_i(maxCtrlProc,maxCtrlArr3D)
COMMON /CONTROLFILES_CTIM/
& xx_gentim2d_file, xx_gentim2d_weight,
& xx_gentim2d_preproc, xx_gentim2d_preproc_c
CHARACTER*(MAX_LEN_FNAM) xx_gentim2d_file(maxCtrlTim2D)
CHARACTER*(MAX_LEN_FNAM) xx_gentim2d_weight(maxCtrlTim2D)
CHARACTER*(MAX_LEN_FNAM)
& xx_gentim2d_preproc(maxCtrlProc,maxCtrlTim2D)
CHARACTER*(MAX_LEN_FNAM)
& xx_gentim2d_preproc_c(maxCtrlProc,maxCtrlTim2D)
COMMON /CONTROLFILES_ITIM/
& xx_gentim2d_startdate1,
& xx_gentim2d_startdate2,
& xx_gentim2d_startdate,
& xx_gentim2d_preproc_i
INTEGER xx_gentim2d_startdate1(maxCtrlTim2D)
INTEGER xx_gentim2d_startdate2(maxCtrlTim2D)
INTEGER xx_gentim2d_startdate(4,maxCtrlTim2D)
INTEGER xx_gentim2d_preproc_i(maxCtrlProc,maxCtrlTim2D)
COMMON /CONTROLFILES_RTIM/
& xx_gentim2d_period, gentim2dPrecond,
& xx_gentim2d_preproc_r, xx_gentim2d_bounds
_RL xx_gentim2d_period(maxCtrlTim2D)
_RL gentim2dPrecond(maxCtrlTim2D)
_RL xx_gentim2d_preproc_r(maxCtrlProc,maxCtrlTim2D)
_RL xx_gentim2d_bounds(5,maxCtrlTim2D)
COMMON /CONTROLFILES_LTIM/
& xx_gentim2d_cumsum, xx_gentim2d_glosum
LOGICAL xx_gentim2d_cumsum(maxCtrlTim2D)
LOGICAL xx_gentim2d_glosum(maxCtrlTim2D)
common /controlaux_gencost_r/
& objf_gentim2d, num_gentim2d, mult_gentim2d,
#ifdef ECCO_CTRL_DEPRECATED
& objf_gentim2dm, objf_gentim2dsmoo, num_gentim2dm,
#endif /* ECCO_CTRL_DEPRECATED */
& objf_genarr2d, num_genarr2d, mult_genarr2d,
& objf_genarr3d, num_genarr3d, mult_genarr3d
_RL objf_gentim2d(nsx,nsy,maxCtrlTim2D)
_RL num_gentim2d(nsx,nsy,maxCtrlTim2D)
_RL mult_gentim2d(maxCtrlTim2D)
#ifdef ECCO_CTRL_DEPRECATED
_RL objf_gentim2dm(nsx,nsy,maxCtrlTim2D)
_RL objf_gentim2dsmoo(nsx,nsy,maxCtrlTim2D)
_RL num_gentim2dm(nsx,nsy,maxCtrlTim2D)
#endif /* ECCO_CTRL_DEPRECATED */
_RL objf_genarr2d(nsx,nsy,maxCtrlArr2D)
_RL num_genarr2d(nsx,nsy,maxCtrlArr2D)
_RL mult_genarr2d(maxCtrlArr2D)
_RL objf_genarr3d(nsx,nsy,maxCtrlArr3D)
_RL num_genarr3d(nsx,nsy,maxCtrlArr3D)
_RL mult_genarr3d(maxCtrlArr3D)
#endif
#ifdef ALLOW_GENARR2D_CONTROL
common /controlaux_genarr2d_r/
& wgenarr2d
_RL wgenarr2d(1-olx:snx+olx,1-oly:sny+oly,
& nsx,nsy,maxCtrlArr2D)
#endif
#ifdef ALLOW_GENARR3D_CONTROL
common /controlaux_genarr3d_r/
& wgenarr3d
_RL wgenarr3d(1-olx:snx+olx,1-oly:sny+oly,
& nr,nsx,nsy,maxCtrlArr3D)
#endif
#ifdef ALLOW_GENTIM2D_CONTROL
common /controlaux_gentim2d_r/
& xx_gentim2d0,
& xx_gentim2d1,
& xx_gentim2d,
& wgentim2d
_RL
& xx_gentim2d0(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy,maxCtrlTim2D)
_RL
& xx_gentim2d1(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy,maxCtrlTim2D)
_RL
& xx_gentim2d(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy,maxCtrlTim2D)
_RL
& wgentim2d(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy,maxCtrlTim2D)
#endif
CEH3 ;;; Local Variables: ***
CEH3 ;;; mode:fortran ***
CEH3 ;;; End: ***