296 |
C \ev |
C \ev |
297 |
CEOP |
CEOP |
298 |
|
|
|
#include "PACKAGES_CONFIG.h" |
|
|
|
|
299 |
C Macros that override/modify standard definitions |
C Macros that override/modify standard definitions |
300 |
#include "GRID_MACROS.h" |
#include "GRID_MACROS.h" |
301 |
|
|
313 |
C drF - Cell face separation along Z axis ( units of r ). |
C drF - Cell face separation along Z axis ( units of r ). |
314 |
C Rcolumn -Total thickness (in r_unit) of the fluid column |
C Rcolumn -Total thickness (in r_unit) of the fluid column |
315 |
C R_low - base of fluid in r_unit (Depth(m) / Pressure(Pa) at top Atmos.) |
C R_low - base of fluid in r_unit (Depth(m) / Pressure(Pa) at top Atmos.) |
316 |
|
C xx_r_low - in TAF-sense active replacement of R_low |
317 |
C Ro_surf- surface reference (at rest) position, r_unit. |
C Ro_surf- surface reference (at rest) position, r_unit. |
318 |
C klowC - index of the lowest "wet cell" (2D) |
C klowC - index of the lowest "wet cell" (2D) |
319 |
C hFac - Fraction of cell in vertical which is open i.e how |
C hFac - Fraction of cell in vertical which is open i.e how |
324 |
C gravitySign - indicates the direction of gravity relative to R direction |
C gravitySign - indicates the direction of gravity relative to R direction |
325 |
C (= -1 for R=Z (Z increases upward, -gravity direction ) |
C (= -1 for R=Z (Z increases upward, -gravity direction ) |
326 |
C (= +1 for R=P (P increases downward, +gravity direction) |
C (= +1 for R=P (P increases downward, +gravity direction) |
327 |
C rkFac - Vertical coordinate to vertical index orientation. |
C rkSign - Vertical coordinate to vertical index orientation. |
328 |
C ( -1 same orientation, 1 opposite orientation ) |
C ( +1 same orientation, -1 opposite orientation ) |
329 |
|
C globalArea :: Domain Integrated horizontal Area [m2] |
330 |
C maskH - cell Center full-column mask (= 2D mask) |
C maskH - cell Center full-column mask (= 2D mask) |
331 |
C maskC - cell Center land mask |
C maskC - cell Center land mask |
332 |
C maskW - West face land mask |
C maskW - West face land mask |
345 |
C recip_hFacC - Inverse of cell open-depth f[X,Y,Z] ( dimensionless ). |
C recip_hFacC - Inverse of cell open-depth f[X,Y,Z] ( dimensionless ). |
346 |
C recip_hFacW rhFacC center, rhFacW west, rhFacS south. |
C recip_hFacW rhFacC center, rhFacW west, rhFacS south. |
347 |
C recip_hFacS Note: This is precomputed here because it involves division. |
C recip_hFacS Note: This is precomputed here because it involves division. |
|
C saFac - Shallow atmosphere factor (dimensionless scale factor). |
|
348 |
C xC - X-coordinate of center of cell f[X,Y]. The units of xc, yc |
C xC - X-coordinate of center of cell f[X,Y]. The units of xc, yc |
349 |
C depend on the grid. They are not used in differencing or |
C depend on the grid. They are not used in differencing or |
350 |
C averaging but are just a convient quantity for I/O, |
C averaging but are just a convient quantity for I/O, |
351 |
C diagnostics etc.. As such xc is in m for cartesian |
C diagnostics etc.. As such xc is in m for cartesian |
352 |
C coordinates but degrees for spherical polar. |
C coordinates but degrees for spherical polar. |
353 |
C yC - Y-coordinate of center of cell f[X,Y]. |
C yC - Y-coordinate of center of cell f[X,Y]. |
354 |
C yG - Y-coordinate of corner of cell ( c-grid vorticity point) f[X,Y]. |
C yG - Y-coordinate of corner of cell ( c-grid vorticity point) f[X,Y]. |
355 |
C xC0, yC0 - West edge x coord ( metres or degrees ) |
C xC0, yC0 - West edge x coord ( metres or degrees ) |
356 |
C South edge y coord ( metres or degrees ) |
C South edge y coord ( metres or degrees ) |
357 |
C rA - R-face are f[X,Y] ( m^2 ). |
C rA - R-face are f[X,Y] ( m^2 ). |
361 |
C metric terms). |
C metric terms). |
362 |
C rC - R-coordinate of center of cell f[Z] (units of r). |
C rC - R-coordinate of center of cell f[Z] (units of r). |
363 |
C rF - R-coordinate of face of cell f[Z] (units of r). |
C rF - R-coordinate of face of cell f[Z] (units of r). |
364 |
|
C deepFacC :: deep-model grid factor (fct of vertical only) for dx,dy |
365 |
|
C deepFacF at level-center (deepFacC) and level interface (deepFacF) |
366 |
|
C deepFac2C :: deep-model grid factor (fct of vertical only) for area dx*dy |
367 |
|
C deepFac2F at level-center (deepFac2C) and level interface (deepFac2F) |
368 |
C tanPhiAtU - tan of the latitude at U point. Used for spherical polar |
C tanPhiAtU - tan of the latitude at U point. Used for spherical polar |
369 |
C metric term in U equation. |
C metric term in U equation. |
370 |
C tanPhiAtV - tan of the latitude at V point. Used for spherical polar |
C tanPhiAtV - tan of the latitude at V point. Used for spherical polar |
371 |
C metric term in V equation. |
C metric term in V equation. |
372 |
|
C angleCosC :: cosine of grid orientation angle relative to Geographic direction |
373 |
|
C at cell center: alpha=(Eastward_dir,grid_uVel_dir)=(North_d,vVel_d) |
374 |
|
C angleSinC :: sinus of grid orientation angle relative to Geographic direction |
375 |
|
C at cell center: alpha=(Eastward_dir,grid_uVel_dir)=(North_d,vVel_d) |
376 |
|
C fCori :: Coriolis parameter at grid Center point |
377 |
|
C fCoriG :: Coriolis parameter at grid Corner point |
378 |
|
C fCoriCos :: Coriolis Cos(phi) parameter at grid Center point (for NH) |
379 |
COMMON /GRID_I/ klowC |
COMMON /GRID_I/ klowC |
380 |
INTEGER klowC (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
INTEGER klowC (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
381 |
|
|
382 |
COMMON /GRID_R/ |
COMMON /GRID_R/ |
383 |
|
& cosFacU, cosFacV, sqCosFacU, sqCosFacV, |
384 |
|
& gravitySign, rkSign, globalArea, |
385 |
|
& deepFacC, deepFac2C, recip_deepFacC, recip_deepFac2C, |
386 |
|
& deepFacF, deepFac2F, recip_deepFacF, recip_deepFac2F, |
387 |
& dxC,dxF,dxG,dxV,dyC,dyF,dyG,dyU, |
& dxC,dxF,dxG,dxV,dyC,dyF,dyG,dyU, |
388 |
& R_low,Ro_surf,HFacC,HFacW,HFacS, |
& R_low,Ro_surf,hFacC,hFacW,hFacS, |
389 |
|
#ifdef ALLOW_DEPTH_CONTROL |
390 |
|
& xx_r_low, |
391 |
|
#endif /* ALLOW_DEPTH_CONTROL */ |
392 |
& recip_dxC,recip_dxF,recip_dxG,recip_dxV, |
& recip_dxC,recip_dxF,recip_dxG,recip_dxV, |
393 |
& recip_dyC,recip_dyF,recip_dyG,recip_dyU, |
& recip_dyC,recip_dyF,recip_dyG,recip_dyU, |
394 |
& recip_Rcol, |
& recip_Rcol, |
395 |
& recip_hFacC,recip_hFacW,recip_hFacS, |
& recip_hFacC,recip_hFacW,recip_hFacS, |
|
& saFac, |
|
396 |
& xC,yC,rA,rAw,rAs,rAz,xG,yG, |
& xC,yC,rA,rAw,rAs,rAz,xG,yG, |
397 |
& maskH, maskC,maskW,maskS, |
& maskH, maskC,maskW,maskS, |
398 |
& recip_rA,recip_rAw,recip_rAs,recip_rAz, |
& recip_rA,recip_rAw,recip_rAs,recip_rAz, |
399 |
& tanPhiAtU, tanPhiAtV, |
& tanPhiAtU, tanPhiAtV, angleCosC, angleSinC, |
|
& cosfacU,cosfacV,sqcosfacU,sqcosfacV, |
|
400 |
& drC,drF,recip_drC,recip_drF,rC,rF, |
& drC,drF,recip_drC,recip_drF,rC,rF, |
401 |
& gravitySign, |
& xC0, yC0, |
402 |
& rkFac, recip_rkFac, xC0, yC0 |
& fCori, fCoriG, fCoriCos |
403 |
|
_RL cosFacU(1-Oly:sNy+Oly,nSx,nSy) |
404 |
|
_RL cosFacV(1-Oly:sNy+Oly,nSx,nSy) |
405 |
|
_RL sqCosFacU(1-Oly:sNy+Oly,nSx,nSy) |
406 |
|
_RL sqCosFacV(1-Oly:sNy+Oly,nSx,nSy) |
407 |
|
_RL gravitySign |
408 |
|
_RL rkSign |
409 |
|
_RL globalArea |
410 |
|
_RL deepFacC (Nr) |
411 |
|
_RL deepFac2C(Nr) |
412 |
|
_RL deepFacF (Nr+1) |
413 |
|
_RL deepFac2F(Nr+1) |
414 |
|
_RL recip_deepFacC (Nr) |
415 |
|
_RL recip_deepFac2C(Nr) |
416 |
|
_RL recip_deepFacF (Nr+1) |
417 |
|
_RL recip_deepFac2F(Nr+1) |
418 |
_RS dxC (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
_RS dxC (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
419 |
_RS dxF (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
_RS dxF (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
420 |
_RS dxG (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
_RS dxG (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
425 |
_RS dyU (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
_RS dyU (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
426 |
_RS R_low (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
_RS R_low (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
427 |
_RS Ro_surf (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
_RS Ro_surf (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
428 |
_RS HFacC (1-OLx:sNx+OLx,1-OLy:sNy+OLy,1:Nr,nSx,nSy) |
#ifdef ALLOW_DEPTH_CONTROL |
429 |
_RS HFacW (1-OLx:sNx+OLx,1-OLy:sNy+OLy,1:Nr,nSx,nSy) |
_RL xx_r_low (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
430 |
_RS HFacS (1-OLx:sNx+OLx,1-OLy:sNy+OLy,1:Nr,nSx,nSy) |
#endif /* ALLOW_DEPTH_CONTROL */ |
431 |
|
_RS hFacC (1-OLx:sNx+OLx,1-OLy:sNy+OLy,1:Nr,nSx,nSy) |
432 |
|
_RS hFacW (1-OLx:sNx+OLx,1-OLy:sNy+OLy,1:Nr,nSx,nSy) |
433 |
|
_RS hFacS (1-OLx:sNx+OLx,1-OLy:sNy+OLy,1:Nr,nSx,nSy) |
434 |
_RS recip_dxC (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
_RS recip_dxC (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
435 |
_RS recip_dxF (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
_RS recip_dxF (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
436 |
_RS recip_dxG (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
_RS recip_dxG (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
461 |
_RS maskS (1-OLx:sNx+OLx,1-OLy:sNy+OLy,1:Nr,nSx,nSy) |
_RS maskS (1-OLx:sNx+OLx,1-OLy:sNy+OLy,1:Nr,nSx,nSy) |
462 |
_RS tanPhiAtU (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
_RS tanPhiAtU (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
463 |
_RS tanPhiAtV (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
_RS tanPhiAtV (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
464 |
_RL cosfacU(1-Oly:sNy+Oly,nSx,nSy) |
_RS angleCosC (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
465 |
_RL cosfacV(1-Oly:sNy+Oly,nSx,nSy) |
_RS angleSinC (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
|
_RL sqcosfacU(1-Oly:sNy+Oly,nSx,nSy) |
|
|
_RL sqcosfacV(1-Oly:sNy+Oly,nSx,nSy) |
|
466 |
_RS drC (1:Nr) |
_RS drC (1:Nr) |
467 |
_RS drF (1:Nr) |
_RS drF (1:Nr) |
468 |
_RS recip_drC (1:Nr) |
_RS recip_drC (1:Nr) |
469 |
_RS recip_drF (1:Nr) |
_RS recip_drF (1:Nr) |
|
_RS saFac (1:Nr) |
|
470 |
_RS rC (1:Nr) |
_RS rC (1:Nr) |
471 |
_RS rF (1:Nr+1) |
_RS rF (1:Nr+1) |
|
_RL gravitySign |
|
|
_RS rkFac |
|
|
_RS recip_rkFac |
|
472 |
_RS xC0 |
_RS xC0 |
473 |
_RS yC0 |
_RS yC0 |
474 |
|
_RS fCori(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
475 |
|
_RS fCoriG(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
476 |
|
_RS fCoriCos(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
477 |
|
|
|
#ifdef ALLOW_NONHYDROSTATIC |
|
|
COMMON /GRID_NH/ |
|
|
& recip_hFacU |
|
|
_RS recip_hFacU (1-OLx:sNx+OLx,1-OLy:sNy+OLy,1:Nr,nSx,nSy) |
|
|
#endif |
|