/[MITgcm]/MITgcm/verification/lab_sea/README
ViewVC logotype

Diff of /MITgcm/verification/lab_sea/README

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.2 by heimbach, Tue Nov 12 20:54:28 2002 UTC revision 1.4.2.3 by dimitri, Wed Apr 30 08:23:08 2003 UTC
# Line 3  Example: Labrador Sea Region with Sea-Ic Line 3  Example: Labrador Sea Region with Sea-Ic
3    
4  This example sets up a small (20x16x23) Labrador Sea experiment  This example sets up a small (20x16x23) Labrador Sea experiment
5  coupled to a dynamic thermodynamic sea-ice model.  coupled to a dynamic thermodynamic sea-ice model.
6  A brief description of the sea-ice model is in "doc/seaice.ps".  A brief description of the sea-ice model is in "seaice.ps".
7    
8    This experiment is a 1-cpu, 10-hour integration used to test
9    CPP option SEAICE_EXTERNAL_FORCING.  Atmospheric state is read-in
10    using pkg/exf, rather than pkg/seaice routines.  This experiment
11    uses pkg/gmredi, pkg/kpp, pkg/seaice, and pkg/exf.
12    
13  The domain of integration spans 280E to 320E and 46N to 78N.  The domain of integration spans 280E to 320E and 46N to 78N.
14  Horizontal grid spacing is 2 degrees.  Horizontal grid spacing is 2 degrees.
# Line 20  Surface salinity relaxation is to the mo Line 25  Surface salinity relaxation is to the mo
25    
26  Forcing files are a 1979-1999 monthly climatology computed from the  Forcing files are a 1979-1999 monthly climatology computed from the
27  NCEP reanalysis (see pkg/seaice/SEAICE_FFIELDS.h for units and signs)  NCEP reanalysis (see pkg/seaice/SEAICE_FFIELDS.h for units and signs)
28    gairxFile      = 'u10m.labsea79'    # 10-m zonal wind    uwindFile      = 'u10m.labsea79'    # 10-m zonal wind
29    gairyFile      = 'v10m.labsea79'    # 10-m meridional wind    vwindFile      = 'v10m.labsea79'    # 10-m meridional wind
30    tairFile       = 'tair.labsea1979'  # 2-m air temperature    atempFile      = 'tair.labsea1979'  # 2-m air temperature
31    qaFile         = 'qa.labsea1979'    # 2-m specific humidity    aqhFile        = 'qa.labsea1979'    # 2-m specific humidity
32    floFile        = 'flo.labsea1979'   # longwave radiation    lwdownFile     = 'flo.labsea1979'   # downward longwave radiation
33    fshFile        = 'fsh.labsea1979'   # shortwave radiation    swdownFile     = 'fsh.labsea1979'   # downward shortwave radiation
34    rainFile       = 'prate.labsea1979' # precipitation    precipFile     = 'prate.labsea1979' # precipitation
35    evapFile       = 'evap.labsea1979'  # evaporation    evapFile       = 'evap.labsea1979'  # evaporation
36    
37    
38  Instructions for running Experiment 1  Instructions for running default Experiment
39  =====================================  ===========================================
   
 This is a 1-cpu, 10-hour integration used to make sure that all the  
 files are available and that the model compiles and integrates.  
40    
41  To configure and compile the code:  Compiling the code:
42    cd MITgcmUV    cd verification/lab_sea/input
43    mkdir bin exe    ln -sf ../code/*.h .
44    cd bin    ../../../tools/genmake -makefile
   ln -sf ../verification/lab_sea/code/SIZE.h .  
   ln -sf ../verification/lab_sea/code/CPP_OPTIONS.h .  
   ln -sf ../verification/lab_sea/code/CPP_EEOPTIONS.h .  
   ../tools/genmake -makefile  
45    make depend    make depend
46    make    make
47    
48  To run:  Running the code:
49    cd ../exe    ./mitgcmuv >&! output.txt
   cp ../verification/lab_sea/input/* .  
   ln -sf data.10hours data  
   ln -sf data.seaice.adi data.seaice  
   mv mitgcmuv mitgcmuv1  
   mitgcmuv1 >&! output.txt  
   mkdir exp1  
   mv *tave.0000000010.data exp1  
50    
51  There is comparison output in:  There is comparison output in:
52    diff output.txt ../verification/lab_sea/results/output.txt | more    diff output.txt ../results/output.txt | more
   
 Use the matlab script lookat_exp1.m to compare the output  
 of exp1 with that from release1_beta1 sea-ice code:  
   cd ../verification/lab_sea/matlab  
   matlab  
   lookat_exp1  
   
 Instructions for running Experiment 2  
 =====================================  
   
 This is a 1-cpu test of the LSR solver.  The solution is  
 compared to that of experiment 1, which used the ADI solver.  
 1-CPU executable from experiment 1 is required.  
   
 To run:  
   cd ../exe  
   cp ../verification/lab_sea/input/* .  
   ln -sf data.10hours data  
   ln -sf data.seaice.lsr data.seaice  
   mitgcmuv1 >&! output.txt  
   mkdir exp2  
   mv *tave.0000000010.data exp2  
   
 Use the matlab script lookat_exp2.m to compare  
 the output of exp2 to that of exp1:  
   cd ../verification/lab_sea/matlab  
   matlab  
   lookat_exp2  
   
 Instructions for running Experiment 3  
 =====================================  
   
 This is a test of periodic boundary conditions for LSR  
 and ADI solvers.  The domain has a flat bottom and  
 is periodic both in the x and the y directions.  
 All forcing files are null or constant  
 (u10m = v10m = 5 m/s).  
   
 1-CPU executable from experiment 1 is required.  
   
 To run:  
   cd ../exe  
   cp ../verification/lab_sea/input/* .  
   ln -sf data.1hour data  
   ln -sf data.seaice.testadi data.seaice  
   mitgcmuv1 >&! output.txt  
   mkdir exp3a  
   mv *tave.0000000001.data exp3a  
   ln -sf data.seaice.testlsr data.seaice  
   mitgcmuv1 >&! output.txt  
   mkdir exp3b  
   mv *tave.0000000001.data exp3b  
   
 Use the matlab script lookat_exp3.m to compare  
 the output of exp2 to that of exp1:  
   cd ../verification/lab_sea/matlab  
   matlab  
   lookat_exp3  
   
 If the dynamic ice solvers are correct, they should converge to a  
 constant solution.  The tests above show that both the ADI and the LSR  
 solver are unable to handle periodic domains and therefore that they  
 cannot be "correctly" parallelized.  
   
 Instructions for running Experiment 4  
 =====================================  
   
 This is a 2-cpu, 10-hour integration used to test  
 tile edges for sea-ice dynamic solvers.  
   
 To configure and compile the code:  
   cd ../bin  
   rm -rf *.f  
   rm -rf *.o  
   ln -sf ../verification/lab_sea/code/SIZE_2x1.h SIZE.h  
   ln -sf ../verification/lab_sea/code/CPP_OPTIONS.h .  
   ln -sf ../verification/lab_sea/code/CPP_EEOPTIONS_MPI.h CPP_EEOPTIONS.h  
   ../tools/genmake -mpi -makefile  
      ( on alhena use: ../tools/genmake -mpi -platform=o2k -makefile )  
   make depend  
   make  
   
 To run:  
   cd ../exe  
   cp ../verification/lab_sea/input/* .  
   ln -sf data.10hours data  
   ln -sf data.seaice.adi data.seaice  
   mv mitgcmuv mitgcmuv_2x1  
   mpirun -np 2 mitgcmuv_2x1  
   mkdir exp4  
   mv *tave.0000000010.data exp4  
   
 Use the matlab script lookat_exp4.m to compare  
 the 2-cpu output to that of exp1:  
   cd ../verification/lab_sea/matlab  
   matlab  
   lookat_exp4  
   
 The inaccuracy at the tile boundary can be decreased by increasing  
 NPSEUDO in data.seaice at the expense of computation time.  
 Also as sea-ice ages (thickens) the difference at the tiles becomes  
 increasingly small.  For solver pkg/seaice/adi.F a value of NPSEUDO=10  
 appears adequate for forward integrations but cannot be used for sea-ice  
 adjoint model.  Work is underway to fix this problem.  
   
   
 Instructions for running Experiment 5  
 =====================================  
   
 This is a 2-cpu, 2-year, test integration.  It illustrates  
 convention used for forcing data files by seaice_get_forcing.F.  
   
 To run:  
   cd ../exe  
   cp ../verification/lab_sea/input/* .  
   cp eedata_mpi eedata  
   ln -sf data.2years data  
   ln -sf data.seaice.adi data.seaice  
   ln -sf evap.labsea1979  evap.labsea1980    
   ln -sf flo.labsea1979   flo.labsea1980    
   ln -sf fsh.labsea1979   fsh.labsea1980    
   ln -sf prate.labsea1979 prate.labsea1980  
   ln -sf qa.labsea1979    qa.labsea1980      
   ln -sf tair.labsea1979  tair.labsea1980    
   ln -sf u10m.labsea79    u10m.labsea80      
   ln -sf v10m.labsea79    v10m.labsea80      
   mpirun -np 2 mitgcmuv_2x1  
   
 Use the matlab script lookat_exp3.m to compare  
 the 2-cpu output to SMMR-SSM/I data:  
   cd ../verification/lab_sea/matlab  
   matlab  
   lookat_exp5  
53    
54  Disclaimer:  Matlab comparison script:
55  The comparison here is just for fun, not really supposed    cd ../../../verification/lab_sea/matlab
 to look anything like the data.  
 Otherwise it would put a lot of people out of business :-)  
   
 Instructions for running Experiment 6  
 =====================================  
   
 This is a 1-cpu test of sea-ice thermodynamics (no dynamics).  
 The solution is compared to that of experiment 1.  
 1-CPU executable from experiment 1 is required.  
   
 To run:  
   cd ../exe  
   cp ../verification/lab_sea/input/* .  
   ln -sf data.10hours data  
   ln -sf data.seaice.nodynamics data.seaice  
   mitgcmuv1 >&! output.txt  
   mkdir exp6  
   mv *tave.0000000010.data exp6  
   
 Use the matlab script lookat_exp6.m to compare  
 the output of exp2 to that of exp1:  
   cd ../verification/lab_sea/matlab  
56    matlab    matlab
57    lookat_exp6    lookat_exp

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.4.2.3

  ViewVC Help
Powered by ViewVC 1.1.22