Back to home page

MITgcm

 
 

    


File indexing completed on 2025-12-15 06:14:26 UTC

view on githubraw file Latest commit ad59256d on 2025-12-15 00:05:36 UTC
ad59256d7d aver*0001 CBOP
                0002 C     !ROUTINE: OBSFIT.h
                0003 
                0004 C     !INTERFACE:
                0005 C     #include "OBSFIT.h"
                0006 
                0007 C     !DESCRIPTION:
                0008 C     ==================================================================
                0009 C     | Header file defining ObsFit parameters and variables
                0010 C     ==================================================================
                0011 CEOP
                0012 
                0013 C ObsFit LOGICAL parameters
                0014       LOGICAL obsfitDoNcOutput
                0015       LOGICAL obsfitDoGenGrid
                0016 
                0017       COMMON /OBSFIT_PACKAGE/
                0018      & obsfitDoNcOutput, obsfitDoGenGrid
                0019 
                0020 C ObsFit real parameters
                0021       _RL sample_timeS(NFILESMAX_OBS,NSAMP_PER_TILE_MAX,nSx,nSy)
                0022       _RL sample_timeE(NFILESMAX_OBS,NSAMP_PER_TILE_MAX,nSx,nSy)
                0023       _RL sample_lon(NFILESMAX_OBS,NSAMP_PER_TILE_MAX,nSx,nSy)
                0024       _RL sample_lat(NFILESMAX_OBS,NSAMP_PER_TILE_MAX,nSx,nSy)
                0025       _RL sample_depth(NFILESMAX_OBS,NSAMP_PER_TILE_MAX,nSx,nSy)
                0026       _RL sample_weight(NFILESMAX_OBS,NSAMP_PER_TILE_MAX,nSx,nSy)
                0027       _RL sample_modmask(nSx,nSy)
                0028       _RL obs_delT(NFILESMAX_OBS,NOBSMAX_OBS)
                0029 
                0030       COMMON /OBSFIT_R/ sample_type, sample_timeS,
                0031      & sample_timeE, sample_lon, sample_lat,
                0032      & sample_depth, sample_weight, sample_modmask,
                0033      & obs_delT
                0034 
                0035 C ObsFit integer parameters
                0036       INTEGER sample_type(NFILESMAX_OBS,NSAMP_PER_TILE_MAX,nSx,nSy)
                0037       INTEGER obs_ind_glob(NFILESMAX_OBS,NOBSMAX_OBS)
                0038       INTEGER obs_np(NFILESMAX_OBS,NOBSMAX_OBS)
                0039       INTEGER obsfitOperation(NFILESMAX_OBS)
                0040       INTEGER sample_ind_glob(NFILESMAX_OBS,NSAMP_PER_TILE_MAX,nSx,nSy)
                0041       INTEGER ObsNo(NFILESMAX_OBS)
                0042       INTEGER sampleNo(NFILESMAX_OBS,nSx,nSy)
                0043       INTEGER fidfwd_obs(NFILESMAX_OBS,nSx,nSy)
                0044       INTEGER fidadj_obs(NFILESMAX_OBS,nSx,nSy)
                0045       INTEGER fidtan_obs(NFILESMAX_OBS,nSx,nSy)
                0046       INTEGER fiddata_obs(NFILESMAX_OBS)
                0047       INTEGER fidglobal(NFILESMAX_OBS)
                0048       INTEGER fidadglobal(NFILESMAX_OBS)
                0049       INTEGER fidtanglobal(NFILESMAX_OBS)
                0050       INTEGER fidmisfit(NFILESMAX_OBS)
                0051       INTEGER obs_sample1_ind(NFILESMAX_OBS,NOBSMAX_OBS)
                0052       INTEGER obs_is_ssh(NFILESMAX_OBS)
                0053 #ifndef ALLOW_ECCO
                0054       _RL m_UE(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
                0055       _RL m_VN(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
                0056 #endif
                0057 
                0058       COMMON /OBSFIT_I/ obs_ind_glob, obs_np, obsfitOperation,
                0059      & sample_ind_glob, ObsNo, sampleNo,
                0060      & fidfwd_obs, fidadj_obs, fidtan_obs, fiddata_obs,
                0061      & fidglobal, fidadglobal, fidtanglobal, fidmisfit,
                0062      & obs_sample1_ind, obs_is_ssh
                0063 #ifndef ALLOW_ECCO
                0064      & , m_UE, m_VN
                0065 #endif
                0066 
                0067 C ObsFit character strings
                0068       CHARACTER*(8)  obsfit_nameval
                0069       CHARACTER*(12) obsfit_namemask
                0070       CHARACTER*(14) obsfit_nameuncert
                0071       CHARACTER*(8)  obsfit_nameequi
                0072 
                0073       COMMON /OBSFIT_C/ obsfit_nameval, obsfit_namemask,
                0074      & obsfit_nameuncert, obsfit_nameequi
                0075 
                0076 C Grid parameters
                0077       INTEGER sample_interp_i(NFILESMAX_OBS,NSAMP_PER_TILE_MAX,
                0078      &     NUM_INTERP_PTS_OBS,nSx,nSy)
                0079       INTEGER sample_interp_j(NFILESMAX_OBS,NSAMP_PER_TILE_MAX,
                0080      &     NUM_INTERP_PTS_OBS,nSx,nSy)
                0081       INTEGER sample_interp_k(NFILESMAX_OBS,NSAMP_PER_TILE_MAX,
                0082      &     NUM_INTERP_PTS_OBS,nSx,nSy)
                0083       _RL sample_interp_frac(NFILESMAX_OBS,NSAMP_PER_TILE_MAX,
                0084      &     NUM_INTERP_PTS_OBS,nSx,nSy)
                0085 C Generic grid
                0086       _RL sample_interp_xC11(NFILESMAX_OBS,NSAMP_PER_TILE_MAX,
                0087      &     nSx,nSy)
                0088       _RL sample_interp_yC11(NFILESMAX_OBS,NSAMP_PER_TILE_MAX,
                0089      &     nSx,nSy)
                0090       _RL sample_interp_xCNINJ(NFILESMAX_OBS,NSAMP_PER_TILE_MAX,
                0091      &     nSx,nSy)
                0092       _RL sample_interp_yCNINJ(NFILESMAX_OBS,NSAMP_PER_TILE_MAX,
                0093      &     nSx,nSy)
                0094 
                0095       COMMON /OBSFIT_GRID_I/
                0096      & sample_interp_i, sample_interp_j, sample_interp_k
                0097       COMMON /OBSFIT_GRID_R/ sample_interp_frac,
                0098      & sample_interp_xC11, sample_interp_yC11,
                0099      & sample_interp_xCNINJ, sample_interp_yCNINJ
                0100 
                0101 C ObsFit buffers
                0102       _RL obsfit_data_buff(1000)
                0103       _RL obsfit_uncert_buff(1000)
                0104       INTEGER obsfit_minind_buff
                0105       INTEGER obsfit_maxind_buff
                0106       INTEGER obsfit_curfile_buff
                0107 
                0108       COMMON /OBSFIT_BUFF_R/ obsfit_data_buff, obsfit_uncert_buff
                0109       COMMON /OBSFIT_BUFF_I/
                0110      & obsfit_minind_buff, obsfit_maxind_buff, obsfit_curfile_buff
                0111 
                0112 C Cost
                0113       _RL objf_obsfit(NFILESMAX_OBS)
                0114       _RL num_obsfit(NFILESMAX_OBS)
                0115       _RL mult_obsfit(NFILESMAX_OBS)
                0116       _RL obsfit_facmod(NFILESMAX_OBS)
                0117 
                0118       COMMON /OBSFIT_COST_R/
                0119      & objf_obsfit, num_obsfit,
                0120      & mult_obsfit, obsfit_facmod
                0121 
                0122 C Input files
                0123       CHARACTER*(MAX_LEN_FNAM) obsfitDir
                0124       CHARACTER*(MAX_LEN_FNAM) obsfitFiles(NFILESMAX_OBS)
                0125 
                0126       COMMON /OBSFIT_COST_C/
                0127      & obsfitDir, obsfitFiles
                0128 
                0129 C File reading
                0130       _RL obsfit_dummy(NFILESMAX_OBS,nSx,nSy)
                0131       _RL obsfit_globaldummy(NFILESMAX_OBS)
                0132 
                0133       COMMON /OBSFIT_CTRL_DUMMY/
                0134      & obsfit_dummy, obsfit_globaldummy
                0135 
                0136 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|