[MITgcm-devel] horiVertRatio in forcing

Jean-Michel Campin jmc at ocean.mit.edu
Thu Dec 4 23:02:20 EST 2003


Hi,

I have a suggestion regarding horiVertRatio:

right now we have :

horiVertRatio = 1 (if r=z)
horiVertRatio = gravity*rhoConst (if r=p)

Since non-boussinesq (p-coordinate) does not need any constant (reference)
density, it's a litle curious to see rhoConst in the P-coordinate model,
although, since horiVertRatio is (almost) always used as 
horiVertRatio/rhoConst or rhoConst*recip_horiVertRatio, this is not 
a real problem.

I propose (in a first step in external_forcing_surf only) to use:

mass2rVolum :: convert mass unit (kg) to "model" volume unit ( 1/"model density")
               so that: (dx*dy*dr)_unit = mass2rVolum * dMass_unit
               mass2rVolum = 1 / rhoConst (if r=z) ; = gravity (if r=p) ; 
rVolum2mass :: convert "model" volume unit to mass unit (kg) (= "model density")
               so that: dMass_unit = rVolum2mass * (dx*dy*dr)_unit
               = rhoConst (if r=z) ; = 1/gravity (if r=p) ; 

The name for those 2 constants can change (althougth not too long
would be better). But I think it could help to clarify 
the forcing and diagnostic units.

I looked to other places where horiVertRatio is used,
and seems to be only in NonHydrostatic parts:
 ini_cg3d.F 
 cg3d.F 
 solve_for_pressure.F (NH part)
 mom_u_coriolis_nh.F 
 mom_u_metric_nh.F mom_v_metric_nh.F

I think that we can leave those S/R as they are, because
a) in z coordinate, it's easy to remember that horiVertRatio=1.
b) it does not matter too much since P-coordinate cannot
   really be used with NonHydrostatic. horiVertRatio is just there 
   to make the units right, no more.

Any comment ?

Jean-Michel



More information about the MITgcm-devel mailing list