[MITgcm-support] Use of BULK package (data.bkl)

Georges Djoumna gdjoumna at math.uwaterloo.ca
Tue Feb 10 12:10:54 EST 2009


Dear all,

I am trying to use the bulk package. The reference temperature is 5  
degrees .I've done to test.
1) No use of data.blk :
I've  generated wind stress and set
  zonalWindFile='ZWindStress.bin',
  meridWindFile='MWindStress.bin',
in the data file
The temperature still constant and is equal to 5 degrees which seem good.

2) Use of data.bkl with everythings turn off (as you can see in the  
fill bellow)
The wind stress are still set in the data file.
For this case, after three days the  temperature is between -1 and 4 degrees.
  Probably I am doing something wrong in the use of data.blk, I would  
like to know what.

Here is an output file

****************

(PID.TID 0000.0001) // ======================================================
(PID.TID 0000.0001) //                      MITgcm UV
(PID.TID 0000.0001) //                      =========
(PID.TID 0000.0001) // ======================================================
(PID.TID 0000.0001) // execution environment starting up...
(PID.TID 0000.0001)
(PID.TID 0000.0001) // MITgcmUV version:  checkpoint61
(PID.TID 0000.0001) // Build user:        gdjoumna
(PID.TID 0000.0001) // Build host:        winisk
(PID.TID 0000.0001) // Build date:        Tue Feb 10 10:26:09 EST 2009
(PID.TID 0000.0001)
(PID.TID 0000.0001) // =======================================================
(PID.TID 0000.0001) // Execution Environment parameter file "eedata"
(PID.TID 0000.0001) // =======================================================
(PID.TID 0000.0001) ># Example "eedata" file
(PID.TID 0000.0001) ># Lines beginning "#" are comments
(PID.TID 0000.0001) ># nTx - No. threads per process in X
(PID.TID 0000.0001) ># nTy - No. threads per process in Y
(PID.TID 0000.0001) > &EEPARMS
(PID.TID 0000.0001) > nTx=1,
(PID.TID 0000.0001) > nTy=1,
(PID.TID 0000.0001) > &
(PID.TID 0000.0001) ># Note: Some systems use & as the
(PID.TID 0000.0001) ># namelist terminator. Other systems
(PID.TID 0000.0001) ># use a / character (as shown here).
(PID.TID 0000.0001)
(PID.TID 0000.0001) // =======================================================
(PID.TID 0000.0001) // Computational Grid Specification ( see files "SIZE.h" )
(PID.TID 0000.0001) //                                  ( and "eedata"       )
(PID.TID 0000.0001) // =======================================================
(PID.TID 0000.0001)      nPx =    1 ; /* No. processes in X */
(PID.TID 0000.0001)      nPy =    1 ; /* No. processes in Y */
(PID.TID 0000.0001)      nSx =    1 ; /* No. tiles in X per process */
(PID.TID 0000.0001)      nSy =    1 ; /* No. tiles in Y per process */
(PID.TID 0000.0001)      sNx =  193 ; /* Tile size in X */
(PID.TID 0000.0001)      sNy =   87 ; /* Tile size in Y */
(PID.TID 0000.0001)      OLx =    3 ; /* Tile overlap distance in X */
(PID.TID 0000.0001)      OLy =    3 ; /* Tile overlap distance in Y */
(PID.TID 0000.0001)      nTx =    1 ; /* No. threads in X per process */
(PID.TID 0000.0001)      nTy =    1 ; /* No. threads in Y per process */
(PID.TID 0000.0001)       Nr =   53 ; /* No. levels in the vertical   */
(PID.TID 0000.0001)       nX =  193 ; /* Total domain size in X ( =  
nPx*nSx*sNx ) */
(PID.TID 0000.0001)       nY =   87 ; /* Total domain size in Y ( =  
nPy*nSy*sNy ) */
(PID.TID 0000.0001)   nTiles =    1 ; /* Total no. tiles per process (  
= nSx*nSy ) */
(PID.TID 0000.0001)   nProcs =    1 ; /* Total no. processes ( = nPx*nPy ) */
(PID.TID 0000.0001) nThreads =    1 ; /* Total no. threads per process  
( = nTx*nTy ) */
(PID.TID 0000.0001) usingMPI =    F ; /* Flag used to control whether  
MPI is in use */
(PID.TID 0000.0001)                   /*  note: To execute a program  
with MPI calls */
(PID.TID 0000.0001)                   /*  it must be launched  
appropriately e.g     */
(PID.TID 0000.0001)                   /*  "mpirun -np 64 ......"        
              */
(PID.TID 0000.0001) useCoupler=   F ; /* Flag used to control  
communications with */
(PID.TID 0000.0001)                   /*  other model components,  
through a coupler */
(PID.TID 0000.0001)
(PID.TID 0000.0001) // ======================================================
PID.TID 0000.0001) // ======================================================
(PID.TID 0000.0001) // Mapping of tiles to threads
(PID.TID 0000.0001) // ======================================================
(PID.TID 0000.0001) // -o- Thread   1, tiles (   1:   1,   1:   1)
(PID.TID 0000.0001)
(PID.TID 0000.0001) // ======================================================
(PID.TID 0000.0001) // Tile <-> Tile connectvity table
(PID.TID 0000.0001) // ======================================================
(PID.TID 0000.0001) // Tile number: 000001 (process no. = 000001)
(PID.TID 0000.0001) //        WEST: Tile = 000001, Process = 000001,  
Comm = put
(PID.TID 0000.0001) //                bi = 000001, bj = 000001
(PID.TID 0000.0001) //        EAST: Tile = 000001, Process = 000001,  
Comm = put
(PID.TID 0000.0001) //                bi = 000001, bj = 000001
(PID.TID 0000.0001) //       SOUTH: Tile = 000001, Process = 000001,  
Comm = put
(PID.TID 0000.0001) //                bi = 000001, bj = 000001
(PID.TID 0000.0001) //       NORTH: Tile = 000001, Process = 000001,  
Comm = put
(PID.TID 0000.0001) //                bi = 000001, bj = 000001
(PID.TID 0000.0001)
(PID.TID 0000.0001) // =======================================================
(PID.TID 0000.0001) // Model parameter file "data"
(PID.TID 0000.0001) // =======================================================
(PID.TID 0000.0001) ># Model parameters
(PID.TID 0000.0001) ># Continuous equation parameters
(PID.TID 0000.0001) > &PARM01
(PID.TID 0000.0001) > tRef=53*5.,
(PID.TID 0000.0001) > sRef=53*0.,
(PID.TID 0000.0001) > tempAdvScheme=33,
(PID.TID 0000.0001) > no_slip_sides=.FALSE.,
(PID.TID 0000.0001) > no_slip_bottom=.TRUE.,
(PID.TID 0000.0001) > f0=1.E-4,
(PID.TID 0000.0001) > beta=0.E-11,
(PID.TID 0000.0001) > tAlpha=2.E-4,
(PID.TID 0000.0001) > sBeta =0.,
(PID.TID 0000.0001) > gravity=9.81,
(PID.TID 0000.0001) > rhonil=1000.,
(PID.TID 0000.0001) > rigidLid=.FALSE.,
(PID.TID 0000.0001) > implicitFreeSurface=.TRUE.,
(PID.TID 0000.0001) > nonHydrostatic=.FALSE.,
(PID.TID 0000.0001) > eosType='LINEAR',
(PID.TID 0000.0001) > hFacMin=0.5,
(PID.TID 0000.0001) > bottomDragLinear=0.E-4,
(PID.TID 0000.0001) > bottomDragQuadratic=0.003,
(PID.TID 0000.0001) > staggerTimeStep=.TRUE.,
(PID.TID 0000.0001) > implicitDiffusion=.TRUE.,
(PID.TID 0000.0001) > implicitViscosity=.TRUE.,
(PID.TID 0000.0001) > usesinglecpuio=.TRUE.,
(PID.TID 0000.0001) > exactConserv=.TRUE.,
(PID.TID 0000.0001) > writeBinaryPrec=32,
(PID.TID 0000.0001) > readBinaryPrec=64,
(PID.TID 0000.0001) > viscAhGridMax=1.,
(PID.TID 0000.0001) > viscC2Smag=2.2,
(PID.TID 0000.0001) > &
(PID.TID 0000.0001) ># Elliptic solver parameters
(PID.TID 0000.0001) > &PARM02
(PID.TID 0000.0001) > cg2dMaxIters=600,
(PID.TID 0000.0001) > cg2dTargetResidual=1.E-8,
(PID.TID 0000.0001) > cg3dMaxIters=300,
(PID.TID 0000.0001) > cg3dTargetResidual=1.E-8,
(PID.TID 0000.0001) > &
(PID.TID 0000.0001) ># Time stepping parameters
(PID.TID 0000.0001) > &PARM03
(PID.TID 0000.0001) > startTime=0.,
(PID.TID 0000.0001) > endTime=599850.,
(PID.TID 0000.0001) > deltaT=150.,
(PID.TID 0000.0001) > abEps=0.1,
(PID.TID 0000.0001) > dumpFreq=3600.,
(PID.TID 0000.0001) > monitorFreq=3600.,
(PID.TID 0000.0001) > periodicExternalForcing=.TRUE.,
(PID.TID 0000.0001) > externForcingPeriod=150.,
(PID.TID 0000.0001) > externForcingCycle=599850.,
(PID.TID 0000.0001) > &
(PID.TID 0000.0001) ># Gridding parameters
(PID.TID 0000.0001) > &PARM04
(PID.TID 0000.0001) > usingCartesianGrid=.TRUE.,
(PID.TID 0000.0001) > usingSphericalPolarGrid=.FALSE.,
(PID.TID 0000.0001) > delX=193*2000,
(PID.TID 0000.0001) > delY=87*2000,
(PID.TID 0000.0001) > delZ=40*1.0,13*2.0,
(PID.TID 0000.0001) > &
(PID.TID 0000.0001) > &PARM05
(PID.TID 0000.0001) > bathyFile='Topo_2km.bin'
(PID.TID 0000.0001) > hydrogThetaFile='',
(PID.TID 0000.0001) > hydrogSaltFile=,
(PID.TID 0000.0001) > zonalWindFile='ZWindStress.bin',
(PID.TID 0000.0001) > meridWindFile='MWindStress.bin',
(PID.TID 0000.0001) >&
(PID.TID 0000.0001)
(PID.TID 0000.0001) S/R INI_PARMS ; starts to read PARM01
(PID.TID 0000.0001) S/R INI_PARMS ; read PARM01 : OK
(PID.TID 0000.0001) S/R INI_PARMS ; starts to read PARM02
(PID.TID 0000.0001) S/R INI_PARMS ; read PARM02 : OK
(PID.TID 0000.0001) S/R INI_PARMS ; starts to read PARM03
(PID.TID 0000.0001) S/R INI_PARMS ; read PARM03 : OK
(PID.TID 0000.0001) S/R INI_PARMS ; starts to read PARM04
(PID.TID 0000.0001) S/R INI_PARMS ; read PARM04 : OK
(PID.TID 0000.0001) S/R INI_PARMS ; starts to read PARM05
(PID.TID 0000.0001) S/R INI_PARMS ; read PARM05 : OK
(PID.TID 0000.0001)  PACKAGES_BOOT: opening data.pkg
(PID.TID 0000.0001)  OPEN_COPY_DATA_FILE: opening file data.pkg
(PID.TID 0000.0001) // =======================================================
(PID.TID 0000.0001) // Parameter file "data.pkg"
(PID.TID 0000.0001) // =======================================================
(PID.TID 0000.0001) ># Packages

(PID.TID 0000.0001) > &PACKAGES
(PID.TID 0000.0001) ># useEXF =.TRUE.,
(PID.TID 0000.0001) >  useKPP=.TRUE.,
(PID.TID 0000.0001) ># useSHAP_FILT=.TRUE.,
(PID.TID 0000.0001) >  useBulkforce=.TRUE.,
(PID.TID 0000.0001) >#usePTRACERS=.TRUE.,
(PID.TID 0000.0001) > &
(PID.TID 0000.0001)
(PID.TID 0000.0001)  PACKAGES_BOOT: finished reading data.pkg
(PID.TID 0000.0001)  KPP_INIT: opening data.kpp
(PID.TID 0000.0001)  OPEN_COPY_DATA_FILE: opening file data.kpp
(PID.TID 0000.0001) // =======================================================
(PID.TID 0000.0001) // Parameter file "data.kpp"
(PID.TID 0000.0001) // =======================================================
(PID.TID 0000.0001) >#  
=====================================================================
(PID.TID 0000.0001) ># | Parameters for Pacanowski&Philander (1981)  
vertical mixing scheme |
(PID.TID 0000.0001) >#  
=====================================================================
(PID.TID 0000.0001) > &KPP_PARM01
(PID.TID 0000.0001) > KPPmixingMaps=.FALSE.,
(PID.TID 0000.0001) > KPPwriteState=.TRUE.,
(PID.TID 0000.0001) > kpp_dumpFreq=3600.,
(PID.TID 0000.0001) > &
(PID.TID 0000.0001)
(PID.TID 0000.0001)  KPP_INIT: finished reading data.kpp
(PID.TID 0000.0001)  OPEN_COPY_DATA_FILE: opening file data.blk
(PID.TID 0000.0001) // =======================================================
(PID.TID 0000.0001) // Parameter file "data.blk"
(PID.TID 0000.0001) // =======================================================
(PID.TID 0000.0001) > &BULKF_CONST
(PID.TID 0000.0001) > &
(PID.TID 0000.0001) >
(PID.TID 0000.0001) >&BULKF_PARM01
(PID.TID 0000.0001) > RainFile=       '',
(PID.TID 0000.0001) > SolarFile=      '',
(PID.TID 0000.0001) > AirTempFile=    '',
(PID.TID 0000.0001) > AirhumidityFile='',
(PID.TID 0000.0001) > LongwaveFile=   '',
(PID.TID 0000.0001) > UWindFile=      '',
(PID.TID 0000.0001) > VWindFile=      '',
(PID.TID 0000.0001) > WspeedFile=     '',
(PID.TID 0000.0001) > RunoffFile=     ' ',
(PID.TID 0000.0001) > QnetFile=       ' ',
(PID.TID 0000.0001) > EmPFile=        ' ',
(PID.TID 0000.0001) > CloudFile=      '',
(PID.TID 0000.0001) > &
(PID.TID 0000.0001) >
(PID.TID 0000.0001) > &BULKF_PARM02
(PID.TID 0000.0001) > #qnet_off=0.0,
(PID.TID 0000.0001) > #empmr_off=0.0,
(PID.TID 0000.0001) > #conservcycle=86400.,
(PID.TID 0000.0001) > &
(PID.TID 0000.0001)
(PID.TID 0000.0001)  BULKF_READPARMS: starts to read BULKF_CONST

(PID.TID 0000.0001)  BULKF_READPARMS: read BULKF_CONST : OK
(PID.TID 0000.0001)  BULKF_READPARMS: starts to read BULKF_PARM01
(PID.TID 0000.0001)  BULKF_READPARMS: read BULKF_PARM01 : OK
  BlkF: rhoA     =   1.30000000000000
  BlkF: rhoFW    =   1000.00000000000
  BlkF: cpAir    =   1004.00000000000
  BlkF: Lvap     =   2500000.00000000
  BlkF: Lfresh   =   334000.000000000
  BlkF: Tf0kel   =   273.160000000000
  BlkF: Rgas     =   286.857142857143
  BlkF: xkar     =  0.400000000000000
  BlkF: stefan   =  5.670000000000000E-008
  BlkF: zref     =   10.0000000000000
  BlkF: zwd      =   10.0000000000000
  BlkF: zth      =   10.0000000000000
  BlkF: cDrag_1  =  2.700000000000000E-003
  BlkF: cDrag_2  =  1.420000000000000E-004
  BlkF: cDrag_3  =  7.640000000000000E-005
  BlkF: cStantonS=  1.800000000000000E-002
  BlkF: cStantonU=  3.270000000000000E-002
  BlkF: cDalton  =  3.460000000000000E-002
  BlkF: umin     =   1.00000000000000
  BlkF: humid_fac=  0.606000000000000
  BlkF: saltQsFac=  0.980000000000000
  BlkF: gamma_blk=  1.000000000000000E-002
  BlkF: atm_emissivity  =  0.900000000000000
  BlkF: ocean_emissivity=  0.985000000000000
  BlkF: snow_emissivity =  0.980000000000000
  BlkF: ice_emissivity  =  0.980000000000000
  BlkF: ocean_albedo    =  0.100000000000000
  BlkF: FWIND0   =  0.600000000000000
  BlkF: CHS      =  8.000000000000000E-004
  BlkF: VGUST    =   5.00000000000000
  BlkF: DTHETA   =   3.00000000000000
  BlkF: dTstab   =   1.00000000000000
  BlkF: FSTAB    =  0.670000000000000
  BlkF: useFluxFormula_AIM= F
  BlkF: calcWindStress  = F
  BlkF: useQnetch       = F
  BlkF: useEmPch        = F
  BlkF: blk_nIter   =           5
  BlkF: blk_taveFreq=  0.000000000000000E+000

************************
Thanks a lot.

Georges DJOUMNA, Ph.D.
Post Doctorate Fellow
Faculty of Mathematics
Department of Applied Mathematics
University of Waterloo
Office MC 5135
Waterloo, Ontario
Canada N2L 3G1

E-mail        :  gdjoumna at math.uwaterloo.ca
Office Phone  :  1 519 888 4567 Ext 36648






More information about the MITgcm-support mailing list