[MITgcm-support] double periodic problem
Martin Losch
Martin.Losch at awi.de
Sat Jun 11 01:33:51 EDT 2011
Hi Mike,
I am guessing numerical instability. You time step appears large for 5km grid spacing. If that's not the problem, can you post your entire configuration (code and input directories, maybe only a matlab file to create initial conditions)? I would like to try if I can reproduce this problem.
Martin
On Jun 10, 2011, at 9:34 AM, Michael A. Spall wrote:
> Hi All,
>
> I am trying to run an initial value problem in a doubly periodic domain.
> I provide initial temperature, velocity, and ssh fields that are in
> geostrophic balance. Most of the fields evolve very little integrating
> forward in time, as expected, but the tangential velocity near the
> boundaries, if it is nonzero, is reduced. The model feels the influence
> of the domain even though I have provided a uniform, flat bottom
> topography (no walls).
> I've attached two plots of a meridional slice for velocity, temperature,
> ssh for the initial conditions (day0.ps) and after 1 day of integration
> (day1.ps). Most of the velocity field remains nearly steady except for
> the zonal velocity near j=1 and j=100. ssh and temperature do not change
> significantly.
> I've also attached the data file and the SIZE.h. I have tried with no
> viscosity, no momentum advection, vectorInvariantMomentum=.TRUE.
> with the same result. Ideas?
>
> Thanks,
> Mike
>
> --
> ==================================================
>
> Michael A. Spall
> Senior Scientist
> Department of Physical Oceanography
> W.H.O.I. MS #21
> 360 Woods Hole Road
> Woods Hole, MA 02543
>
> mspall at whoi.edu
> http://www.whoi.edu/science/PO/people/mspall/
>
> (508) 289-3342 (office)
> (508) 457-2181 (fax)
>
> =================================================
>
> <day0.ps><day1.ps># Model parameters
> # Continuous equation parameters
> &PARM01
> tRef=14.975, 14.925, 14.875, 14.825, 14.775, 14.70, 14.60,
> 14.475, 14.325, 14.125, 13.75, 13.25, 12.75, 11.875, 10.625
> sRef=15*35.0,
> viscAz=1.E-5,
> viscAh=20.,
> # viscA4=1.e+9,
> # viscC2Smag=2.5,
> no_slip_sides=.FALSE.,
> no_slip_bottom=.FALSE.,
> # diffK4T=1.e+9,
> # diffKhT=30.,
> diffKzT=1.E-5,
> # diffK4S=1.e+9,
> # diffKhS=30.,
> diffKzS=1.E-5,
> f0=1.0e-4,
> beta=0.0E-11,
> tAlpha=0.2E-3,
> sBeta =0.8E-3,
> rigidLid=.FALSE.,
> implicitFreeSurface=.TRUE.,
> staggerTimeStep=.TRUE.,
> eosType='LINEAR',
> readBinaryPrec=64,
> hFacMin=0.1,
> bottomDragQuadratic=0.e-3,
> implicitDiffusion=.TRUE.,
> implicitViscosity=.TRUE.,
> tempAdvScheme=33,
> saltAdvScheme=33,
> useSingleCpuIO=.TRUE.,
> # vectorInvariantMomentum=.TRUE.,
> ivdc_kappa=1000.0,
> &
> # Elliptic solver parameters
> &PARM02
> cg2dMaxIters=1000,
> cg2dTargetResidual=1.E-11,
> &
> # Time stepping parameters
> &PARM03
> tauCD=0.,
> startTime=0.0,
> endTime=172800.,
> deltaT=1800.0,
> abEps=0.1,
> pChkptFreq=0.0,
> chkptFreq=3.1104e+7,
> dumpFreq=86400.,
> monitorFreq=2592000,
> cAdjFreq=0,
> forcing_In_AB=.FALSE.,
> &
> # Gridding parameters
> &PARM04
> usingCartesianGrid=.TRUE.,
> usingSphericalPolarGrid=.FALSE.,
> dXspacing=5.e+3,
> dYspacing=5.e+3,
> delZ=10, 10, 10, 10, 10, 20, 20, 30, 30, 50, 100, 100, 100, 250, 250,
> &
> &PARM05
> # bathyFile='topog.bin',
> hydrogThetaFile='Tinit.bin',
> uVelInitFile='Uinit.bin',
> vVelInitFile='Vinit.bin',
> pSurfInitFile='Pinit.bin',
> # zonalWindFile='taux.bin',
> &
> C $Header: /u/gcmpack/MITgcm/model/inc/SIZE.h,v 1.28 2009/05/17 21:15:07 jmc Exp $
> C $Name: checkpoint62q $
> C
> CBOP
> C !ROUTINE: SIZE.h
> C !INTERFACE:
> C include SIZE.h
> C !DESCRIPTION: \bv
> C *==========================================================*
> C | SIZE.h Declare size of underlying computational grid.
> C *==========================================================*
> C | The design here support a three-dimensional model grid
> C | with indices I,J and K. The three-dimensional domain
> C | is comprised of nPx*nSx blocks of size sNx along one axis
> C | nPy*nSy blocks of size sNy along another axis and one
> C | block of size Nz along the final axis.
> C | Blocks have overlap regions of size OLx and OLy along the
> C | dimensions that are subdivided.
> C *==========================================================*
> C \ev
> CEOP
> C Voodoo numbers controlling data layout.
> C sNx :: No. X points in sub-grid.
> C sNy :: No. Y points in sub-grid.
> C OLx :: Overlap extent in X.
> C OLy :: Overlat extent in Y.
> C nSx :: No. sub-grids in X.
> C nSy :: No. sub-grids in Y.
> C nPx :: No. of processes to use in X.
> C nPy :: No. of processes to use in Y.
> C Nx :: No. points in X for the total domain.
> C Ny :: No. points in Y for the total domain.
> C Nr :: No. points in Z for full process domain.
> INTEGER sNx
> INTEGER sNy
> INTEGER OLx
> INTEGER OLy
> INTEGER nSx
> INTEGER nSy
> INTEGER nPx
> INTEGER nPy
> INTEGER Nx
> INTEGER Ny
> INTEGER Nr
> PARAMETER (
> & sNx = 25,
> & sNy = 25,
> & OLx = 3,
> & OLy = 3,
> & nSx = 1,
> & nSy = 1,
> & nPx = 4,
> & nPy = 4,
> & Nx = sNx*nSx*nPx,
> & Ny = sNy*nSy*nPy,
> & Nr = 15)
>
> C MAX_OLX :: Set to the maximum overlap region size of any array
> C MAX_OLY that will be exchanged. Controls the sizing of exch
> C routine buffers.
> INTEGER MAX_OLX
> INTEGER MAX_OLY
> PARAMETER ( MAX_OLX = OLx,
> & MAX_OLY = OLy )
>
> _______________________________________________
> MITgcm-support mailing list
> MITgcm-support at mitgcm.org
> http://mitgcm.org/mailman/listinfo/mitgcm-support
More information about the MITgcm-support
mailing list