[MITgcm-support] Coriolis terms in non-hydrostatic rotated model
Jean-Michel Campin
jmc at ocean.mit.edu
Mon Jun 12 13:09:14 EDT 2006
Hi Andrea,
The pieces of code you need are already there, to deal with
curvilinear grid, but are not "turned on" when using
spherical polar grid:
e.g., in mom_fluxform.F , you find:
> IF ( usingCurvilinearGrid ) THEN
> C- presently, non zero angleSinC array only supported with Curvilinear-Grid
> CALL MOM_V_CORIOLIS_NH(bi,bj,k,wVel,cf,myThid)
What I would recommend is:
1) define fCoriC, fCoriG & fCoriCos correctly
there is a possibility to load those fields from files, see ini_cori.F:
IF ( useConstantF ) THEN
...
ELSEIF ( useBetaPlaneF ) THEN
...
ELSEIF ( useSphereF ) THEN
...
ELSE
C Special custom form
CALL READ_REC_XY_RS( 'fCoriC.bin', fCori, 1, 0, myThid )
CALL READ_REC_XY_RS( 'fCoriG.bin', fCoriG, 1, 0, myThid )
CALL READ_REC_XY_RS( 'fCorCs.bin', fCoriCos,1, 0, myThid )
but again, not directly available with out a small modification
in the code (e.g., by setting thoses 3 flags to F).
2) load into angleCosC & angleSinC arrays the cos & sin of the angle
between the W-E direction and the X direction of the grid.
(this is done if usingCurvilinearGrid, but not with spherical polar grid)
or compute them if you know the analytic expression.
3) comment out the "IF ( usingCurvilinearGrid )" in few places, for example
where MOM_V_CORIOLIS_NH is called.
Jean-Michel
On Mon, Jun 12, 2006 at 04:48:39PM +0200, Andrea Cimatoribus wrote:
> Does anybody have an idea about this?
> Thanks
>
> Hi, I'm trying to set up a non-hydrostatic model of an elongated basin
> (Adriatic sea), using rotated bathymetry and full Coriolis (on a
> spherical polar grid).
> Since I use non-hydrostatic equations and rotated bathymetry, I must
> calculate the hor/vert terms of Coriolis acceleration using both x and
> y components of omega (in the rotated coordinates both horizontal
> components of omega are different form zero).
> I found out that the model calculates the Coriolis acceleration in the
> routines mom_u_coriolis, mom_u_coriolis_nh, mom_v_coriolis and
> quasihydrostaticterms. Can I just modify these routines, adding the
> missing terms, or do you think I am missing something?
> Thanks,
> Andrea Cimatoribus
> _______________________________________________
> MITgcm-support mailing list
> MITgcm-support at mitgcm.org
> http://mitgcm.org/mailman/listinfo/mitgcm-support
More information about the MITgcm-support
mailing list