| 10 |
C :: use open boundary computations following Stevens (1990) |
C :: use open boundary computations following Stevens (1990) |
| 11 |
C T/SrelaxStevens :: relaxation time scale (in seconds) for T/S-points |
C T/SrelaxStevens :: relaxation time scale (in seconds) for T/S-points |
| 12 |
C for Stevens boundary conditions |
C for Stevens boundary conditions |
| 13 |
C useStevensPhaseVel |
C useStevensPhaseVel |
| 14 |
C :: use phase velocity contribution for open boundary |
C :: use phase velocity contribution for open boundary |
| 15 |
C computations following Stevens (1990), default = true |
C computations following Stevens (1990), default = true |
| 16 |
C useStevensAdvection |
C useStevensAdvection |
| 32 |
C OBCSfixTopo :: check and adjust topography for problematic gradients |
C OBCSfixTopo :: check and adjust topography for problematic gradients |
| 33 |
C across boundaries (def=true) |
C across boundaries (def=true) |
| 34 |
C tileHasOB[N,S,E,W] :: this tile has OB at Northern/Southern/Eastern/Western edge |
C tileHasOB[N,S,E,W] :: this tile has OB at Northern/Southern/Eastern/Western edge |
| 35 |
C OB[N,S,E,W][u,v,t,s,a,h,sn,sl,uice,vice]File :: Files with boundary |
C insideOBmaskFile :: File to specify Inside OB region mask (zero beyond OB). |
| 36 |
C conditons, the letter combinations mean: |
C OB[N,S,E,W][u,v,t,s,a,h,sn,sl,uice,vice]File :: Files with boundary conditions, |
| 37 |
|
C the letter combinations mean: |
| 38 |
C N/S/E/W :: northern/southern/eastern/western boundary |
C N/S/E/W :: northern/southern/eastern/western boundary |
| 39 |
C u/v/t/s :: ocean u/v velocities, temperature/salinity |
C u/v/t/s :: ocean u/v velocities, temperature/salinity |
| 40 |
C a/h :: sea ice concentration/effective thickness |
C a/h :: sea ice concentration/effective thickness |
| 42 |
C uice/vice :: sea ice u/v drift velocities |
C uice/vice :: sea ice u/v drift velocities |
| 43 |
|
|
| 44 |
COMMON /PARM_IL_OB/ |
COMMON /PARM_IL_OB/ |
| 45 |
|
& OBCS_monSelect, |
| 46 |
& spongeThickness, |
& spongeThickness, |
| 47 |
& useOrlanskiNorth,useOrlanskiSouth, |
& useOrlanskiNorth,useOrlanskiSouth, |
| 48 |
& useOrlanskiEast,useOrlanskiWest, |
& useOrlanskiEast,useOrlanskiWest, |
| 49 |
& useStevensNorth,useStevensSouth, |
& useStevensNorth,useStevensSouth, |
| 50 |
& useStevensEast,useStevensWest, |
& useStevensEast,useStevensWest, |
| 51 |
& useStevensPhaseVel, useStevensAdvection, |
& useStevensPhaseVel, useStevensAdvection, |
| 52 |
& useOBCSsponge, useOBCSbalance, useOBCSprescribe, |
& useOBCSsponge, useOBCSbalance, useOBCSprescribe, |
| 53 |
& OBCSprintDiags, useOBCSYearlyFields, |
& OBCSprintDiags, useOBCSYearlyFields, |
| 54 |
& OBCSfixTopo |
& OBCSfixTopo |
| 55 |
|
INTEGER OBCS_monSelect |
| 56 |
INTEGER spongeThickness |
INTEGER spongeThickness |
| 57 |
LOGICAL useOrlanskiNorth |
LOGICAL useOrlanskiNorth |
| 58 |
LOGICAL useOrlanskiSouth |
LOGICAL useOrlanskiSouth |
| 71 |
LOGICAL useOBCSYearlyFields |
LOGICAL useOBCSYearlyFields |
| 72 |
LOGICAL OBCSfixTopo |
LOGICAL OBCSfixTopo |
| 73 |
|
|
| 74 |
|
C OBCS_balanceFacN/S/E/W :: weighting factor for balancing OB normal flow |
| 75 |
|
C OBCS_monitorFreq :: monitor output frequency (s) for OB statistics |
| 76 |
|
C OBCS_monSelect :: select group of variables to monitor |
| 77 |
COMMON /PARM_R_OB/ |
COMMON /PARM_R_OB/ |
| 78 |
|
& OBCS_balanceFacN, OBCS_balanceFacS, |
| 79 |
|
& OBCS_balanceFacE, OBCS_balanceFacW, |
| 80 |
|
& OBCS_monitorFreq, |
| 81 |
& Urelaxobcsinner,Urelaxobcsbound, |
& Urelaxobcsinner,Urelaxobcsbound, |
| 82 |
& Vrelaxobcsinner,Vrelaxobcsbound, |
& Vrelaxobcsinner,Vrelaxobcsbound, |
| 83 |
& TrelaxStevens, SrelaxStevens |
& TrelaxStevens, SrelaxStevens |
| 84 |
|
_RL OBCS_balanceFacN, OBCS_balanceFacS |
| 85 |
|
_RL OBCS_balanceFacE, OBCS_balanceFacW |
| 86 |
|
_RL OBCS_monitorFreq |
| 87 |
_RS Urelaxobcsinner |
_RS Urelaxobcsinner |
| 88 |
_RS Urelaxobcsbound |
_RS Urelaxobcsbound |
| 89 |
_RS Vrelaxobcsinner |
_RS Vrelaxobcsinner |
| 106 |
INTEGER OB_Iw(1-Oly:sNy+Oly,nSx,nSy) |
INTEGER OB_Iw(1-Oly:sNy+Oly,nSx,nSy) |
| 107 |
|
|
| 108 |
COMMON /OB_FILES/ |
COMMON /OB_FILES/ |
| 109 |
|
& insideOBmaskFile, |
| 110 |
& OBNetaFile,OBSetaFile,OBEetaFile,OBWetaFile, |
& OBNetaFile,OBSetaFile,OBEetaFile,OBWetaFile, |
| 111 |
& OBNwFile, OBSwFile, OBEwFile, OBWwFile, |
& OBNwFile, OBSwFile, OBEwFile, OBWwFile, |
| 112 |
& OBNuFile,OBNvFile,OBNtFile,OBNsFile,OBNaFile,OBNhFile, |
& OBNuFile,OBNvFile,OBNtFile,OBNsFile,OBNaFile,OBNhFile, |
| 118 |
& OBNuiceFile,OBSuiceFile,OBEuiceFile,OBWuiceFile, |
& OBNuiceFile,OBSuiceFile,OBEuiceFile,OBWuiceFile, |
| 119 |
& OBNviceFile,OBSviceFile,OBEviceFile,OBWviceFile |
& OBNviceFile,OBSviceFile,OBEviceFile,OBWviceFile |
| 120 |
CHARACTER*(MAX_LEN_FNAM) |
CHARACTER*(MAX_LEN_FNAM) |
| 121 |
|
& insideOBmaskFile, |
| 122 |
& OBNetaFile,OBSetaFile,OBEetaFile,OBWetaFile, |
& OBNetaFile,OBSetaFile,OBEetaFile,OBWetaFile, |
| 123 |
& OBNwFile, OBSwFile, OBEwFile, OBWwFile, |
& OBNwFile, OBSwFile, OBEwFile, OBWwFile, |
| 124 |
& OBNuFile,OBNvFile,OBNtFile,OBNsFile,OBNaFile,OBNhFile, |
& OBNuFile,OBNvFile,OBNtFile,OBNsFile,OBNaFile,OBNhFile, |
| 130 |
& OBNuiceFile,OBSuiceFile,OBEuiceFile,OBWuiceFile, |
& OBNuiceFile,OBSuiceFile,OBEuiceFile,OBWuiceFile, |
| 131 |
& OBNviceFile,OBSviceFile,OBEviceFile,OBWviceFile |
& OBNviceFile,OBSviceFile,OBEviceFile,OBWviceFile |
| 132 |
|
|
| 133 |
C-- COMMON /GRID_OB/ Open boudary related stuff |
C-- COMMON /GRID_OB/ Open boundary related stuff |
| 134 |
C OBNu is the U value imposed at the Northern OB |
C OBNu is the U value imposed at the Northern OB |
| 135 |
C OBNv is the V value imposed at the Northern OB |
C OBNv is the V value imposed at the Northern OB |
| 136 |
C OBNt is the T value imposed at the Northern OB |
C OBNt is the T value imposed at the Northern OB |
| 346 |
#endif /* ALLOW_NONHYDROSTATIC */ |
#endif /* ALLOW_NONHYDROSTATIC */ |
| 347 |
|
|
| 348 |
#ifdef NONLIN_FRSURF |
#ifdef NONLIN_FRSURF |
|
COMMON /GRID_OB_NLFS/ |
|
|
& OBNhfac0,OBShfac0,OBEhfac0,OBWhfac0 |
|
|
_RS OBNhfac0(1-Olx:sNx+Olx,nSx,nSy) |
|
|
_RS OBShfac0(1-Olx:sNx+Olx,nSx,nSy) |
|
|
_RS OBEhfac0(1-Oly:sNy+Oly,nSx,nSy) |
|
|
_RS OBWhfac0(1-Oly:sNy+Oly,nSx,nSy) |
|
| 349 |
COMMON /OB_NLFS/ |
COMMON /OB_NLFS/ |
| 350 |
& OBNeta, OBSeta, OBEeta, OBWeta |
& OBNeta, OBSeta, OBEeta, OBWeta |
| 351 |
_RL OBNeta (1-Olx:sNx+Olx,nSx,nSy) |
_RL OBNeta (1-Olx:sNx+Olx,nSx,nSy) |
| 366 |
_RL OBWeta1(1-Oly:sNy+Oly,nSx,nSy) |
_RL OBWeta1(1-Oly:sNy+Oly,nSx,nSy) |
| 367 |
#endif /* ALLOW_OBCS_PRESCRIBE */ |
#endif /* ALLOW_OBCS_PRESCRIBE */ |
| 368 |
#endif /* NONLIN_FRSURF */ |
#endif /* NONLIN_FRSURF */ |
|
|
|
|
COMMON /GG_VOLFLUX/ shiftvel |
|
|
_RL shiftvel(2) |
|
| 369 |
CMM( |
CMM( |
| 370 |
#ifdef ALLOW_OBCS_CONTROL |
#ifdef ALLOW_OBCS_CONTROL_MODES |
| 371 |
common /ih_modes/ modesv |
common /ih_modes/ modesv |
| 372 |
_RL modesv (nr,nr,nr) |
_RL modesv (nr,nr,nr) |
| 373 |
#endif |
#endif |