[MITgcm-support] " how to add tide force at open boundarys"

李志远 oceanlizy at 163.com
Thu Jun 26 10:00:08 EDT 2014


From: Li zhi <oceanlizy at 163.com>
To: MITgcm-support at mitgcm.org
Subject: " how to add tide force at open boundarys"
My dear mitgcm users,
     I run a model with four open boundarys, I specified u ,v,t,s fields at each open boundary, the model run good .Then, I want to add tide force at the four open boundarys . I searched for some useful information in the previous support letters ,but I did not get some . So, can any one  give me some advice ?


 Any quick reply will be greatly appreciated !
 Li zhi



my data  and OBCS_OPTIONS.h ,data.obcs files are below:

data :

# ====================

# | Model parameters |

# ====================

#

# Continuous equation parameters

 &PARM01

 tRef = 50*20.,

 sRef = 50*34.,

 viscAz=9.E-5,

 viscAh=5E2,

# diffKhT=4.5E3,

 diffKzT=9.E-5,

# diffKhS=4.5E3,

 diffKzS=9.E-5,

# viscAhGrid=0.1,

 diffKhT=0,

 diffKhS=0,

 tempAdvScheme = 33,

 saltAdvScheme = 33,

 staggerTimeStep = .TRUE.

 rigidLid=.FALSE.,

 eosType = 'LINEAR',

 no_slip_sides=.FALSE.,

 no_slip_bottom=.TRUE.,

 bottomDragQuadratic=2.5E-3,

 implicitFreeSurface=.TRUE.,

 implicitdiffusion=.TRUE.,

 implicitviscosity=.TRUE.,

 hFacMin=.1,

 readBinaryPrec=64,

 useSingleCpuIO=.TRUE.,

 &

# Elliptic solver parameters

 &PARM02

 cg2dMaxIters=500,

 cg2dTargetResidual=1.E-13,

 &

# Time stepping parameters

 &PARM03

startTime =  0,

 endTime   =  77760000,

 deltaT = 100.,

 abEps = 0.1,

 taveFreq=   2592000.,

 monitorFreq=1.,

&

 

# Gridding parameters

 &PARM04

 usingSphericalPolarGrid=.TRUE.,

 delX=270*0.05,

 delY=368*0.05,

 ygOrigin=22.6,

 xgOrigin=117.525,

 delZ=   2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,

           3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,5,

             10,20,30,50,75,100,125,150,200,

             200,250,300,400,500,500,500,500,500,      

 &

 

# Input datasets

 &PARM05

 bathyFile=      'yswc_bathy.bin',

 hydrogThetaFile='yswc_temp.bin',

 hydrogSaltFile= 'yswc_salt.bin',

 &

obcs_options.h:

C $Header: /u/gcmpack/MITgcm/pkg/obcs/OBCS_OPTIONS.h,v 1.16 2012/11/15 15:55:42 dimitri Exp $

C $Name:  $

 

C CPP options file for OBCS package

C Use this file for selecting options within the OBCS package

 

#ifndef OBCS_OPTIONS_H

#define OBCS_OPTIONS_H

#include "PACKAGES_CONFIG.h"

#include "CPP_OPTIONS.h"

 

#ifdef ALLOW_OBCS

C Package-specific Options & Macros go here

 

C Enable individual open boundaries

#define ALLOW_OBCS_WEST

#define ALLOW_OBCS_SOUTH

#define ALLOW_OBCS_EAST

#define ALLOW_OBCS_NORTH

 

C This include hooks to the Orlanski Open Boundary Radiation code

#undef ALLOW_ORLANSKI

 

C Enable OB values to be prescribed via external fields that are read

C from a file

#define ALLOW_OBCS_PRESCRIBE

 

C Enable OB conditions following Stevens (1990)

#undef ALLOW_OBCS_STEVENS

 

C This includes hooks to sponge layer treatment of uvel, vvel

#undef ALLOW_OBCS_SPONGE

 

C Include hooks to sponge layer treatment of pkg/seaice variables

#undef ALLOW_OBCS_SEAICE_SPONGE

 

C balance barotropic velocity

#define ALLOW_OBCS_BALANCE

 

C add tidal contributions to normal OB flow

#define ALLOW_OBCS_TIDES

 

C Use older implementation of obcs in seaice-dynamics

C note: most of the "experimental" options listed below have not yet

C       been implementated in new version.

#undef OBCS_UVICE_OLD

 

#ifdef OBCS_UVICE_OLD

C     The following five CPP options are experimental and aim to deal

C     with artifacts due to the low-frequency specification of sea-ice

C     boundary conditions compared to the model forcing frequency.

C     Ice convergence at edges can cause model to blow up.  The

C     following CPP option fixes this problem at the expense of less

C     accurate boundary conditions.

#undef OBCS_SEAICE_AVOID_CONVERGENCE

 

C     Smooth the component of sea-ice velocity perpendicular to the edge.

#undef OBCS_SEAICE_SMOOTH_UVICE_PERP

 

C     Smooth the component of sea ice velocity parallel to the edge.

#undef OBCS_SEAICE_SMOOTH_UVICE_PAR

 

C     Compute rather than specify seaice velocities at the edges.

#undef OBCS_SEAICE_COMPUTE_UVICE

#endif /* OBCS_UVICE_OLD */

 

C     Smooth the tracer sea-ice variables near the edges.

#undef OBCS_SEAICE_SMOOTH_EDGE

 

#endif /* ALLOW_OBCS */

#endif /* OBCS_OPTIONS_H */

 

data.obcs :

# ***************

# Open boundaries

# ***************

 &OBCS_PARM01

 OB_Jsouth =   270*1,

 OB_Jnorth =   270*368,

 OB_Ieast  =   368*270,

 OB_Iwest  =   368*1,

 

# This flag check and equalise topography across open boundaries:

  useOBCSprescribe=.TRUE.,

  useOBCSbalance=.TRUE.,

  OBCS_balanceFacE = 0.,

  OBCS_balanceFacN = 0.5,

  OBCS_balanceFacS = 0.,

  OBCS_balanceFacW = 0.5,

 

#

 OBSsFile='hycom_2012_obcsS_s.bin',

 OBStFile='hycom_2012_obcsS_t.bin',

 OBSuFile='hycom_2012_obcsS_u.bin',

 OBSvFile='hycom_2012_obcsS_v.bin',

 OBNsFile='hycom_2012_obcsN_s.bin',

 OBNtFile='hycom_2012_obcsN_t.bin',

 OBNuFile='hycom_2012_obcsN_u.bin',

 OBNvFile='hycom_2012_obcsN_v.bin',

 OBEsFile='hycom_2012_obcsE_s.bin',

 OBEtFile='hycom_2012_obcsE_t.bin',

 OBEuFile='hycom_2012_obcsE_u.bin',

 OBEvFile='hycom_2012_obcsE_v.bin',

 OBWsFile='hycom_2012_obcsW_s.bin',

 OBWtFile='hycom_2012_obcsW_t.bin',

 OBWuFile='hycom_2012_obcsW_u.bin',

 OBWvFile='hycom_2012_obcsW_v.bin',

 &

 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mitgcm.org/pipermail/mitgcm-support/attachments/20140626/dcb471ec/attachment-0001.htm>


More information about the MITgcm-support mailing list