/[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.3 by dimitri, Thu Dec 5 08:43:03 2002 UTC revision 1.13 by dimitri, Wed Mar 31 01:27:39 2004 UTC
# Line 20  Surface salinity relaxation is to the mo Line 20  Surface salinity relaxation is to the mo
20    
21  Forcing files are a 1979-1999 monthly climatology computed from the  Forcing files are a 1979-1999 monthly climatology computed from the
22  NCEP reanalysis (see pkg/seaice/SEAICE_FFIELDS.h for units and signs)  NCEP reanalysis (see pkg/seaice/SEAICE_FFIELDS.h for units and signs)
23    gairxFile      = 'u10m.labsea79'    # 10-m zonal wind    uwindFile      = 'u10m.labsea79'    # 10-m zonal wind
24    gairyFile      = 'v10m.labsea79'    # 10-m meridional wind    vwindFile      = 'v10m.labsea79'    # 10-m meridional wind
25    tairFile       = 'tair.labsea1979'  # 2-m air temperature    atempFile      = 'tair.labsea1979'  # 2-m air temperature
26    qaFile         = 'qa.labsea1979'    # 2-m specific humidity    aqhFile        = 'qa.labsea1979'    # 2-m specific humidity
27    floFile        = 'flo.labsea1979'   # longwave radiation    lwdownFile     = 'flo.labsea1979'   # downward longwave radiation
28    fshFile        = 'fsh.labsea1979'   # shortwave radiation    swdownFile     = 'fsh.labsea1979'   # downward shortwave radiation
29    rainFile       = 'prate.labsea1979' # precipitation    precipFile     = 'prate.labsea1979' # precipitation
30    evapFile       = 'evap.labsea1979'  # evaporation  
31    The experiment uses pkg/gmredi, pkg/kpp, pkg/seaice, and pkg/exf.
32    The test is a 1-cpu, 10-hour integration.   Both the atmospheric
33    state and the open-water surface fluxes are provided by pkg/exf.
34    
35    More pkg/seaice test experiments, configured for low and
36    high-resolution global cube-sphere domains are described
37    in MITgcm_contrib/high_res_cube/README_ice.
38    
39    
40  Using testscript to test sea-ice code  Using testscript to test sea-ice code
41  =====================================  =====================================
42    
43  Running the testscript experiment:  Running the testscript experiment:
44    cd verification    cd MITgcm/verification
45    ./testscript -force lab_sea    ./testreport -t lab_sea
46    
47  Note that fairly large differences in accuracy occur across different  Note that fairly large differences in accuracy occur across different
48  platforms.  For example, testscript comparisons between g77 (Linux)  platforms.  For example, testscript comparisons between g77 (Linux)
49  and f77 (SGI) generated output gives:  and f77 (SGI) generated output gives:
50    
51     T           S           U           V                  T           S           U           V
52    C D M    c        m  s        m  s        m  s        m  s  C D M    c        m  s        m  s        m  s        m  s
53    n p a R  g  m  m  e  .  m  m  e  .  m  m  e  .  m  m  e  .  n p a R  g  m  m  e  .  m  m  e  .  m  m  e  .  m  m  e  .
54    f n k u  2  i  a  a  d  i  a  a  d  i  a  a  d  i  a  a  d  f n k u  2  i  a  a  d  i  a  a  d  i  a  a  d  i  a  a  d
55    g d e n  d  n  x  n  .  n  x  n  .  n  x  n  .  n  x  n  .  g d e n  d  n  x  n  .  n  x  n  .  n  x  n  .  n  x  n  .
56    
57    Y Y Y Y  5  5  7  7  7  8 10  9  6  6  6  6  7  5  7  5  7 FAIL  lab_sea  Y Y Y Y  8 10  9 11 10  9 11 13 10  9  8  8  9  8  9  8  9 FAIL  lab_sea
58    
59    
60  Instructions for generating 1-CPU and 2-CPU executables  Instructions for generating 1-CPU and 2-CPU executables
61  =======================================================  =======================================================
62    
63  Generating 1-CPU executable:  Generating 1-CPU executable:
64    cd ../verification/lab_sea/input    cd MITgcm/verification/lab_sea
65    ln -sf ../code/SIZE.h .    mkdir build
66    ln -sf ../code/CPP_OPTIONS.h .    cd build
67    ln -sf ../code/CPP_EEOPTIONS.h .    ../../../tools/genmake2
   ../../../tools/genmake -makefile  
     ==> on alhena use:  
     ../../../tools/genmake -platform=o2k_noopt -makefile  
68    make clean    make clean
69    make depend    make depend
70    make    make
71    mv mitgcmuv mitgcmuv_1    mv mitgcmuv mitgcmuv_1
72      
73  Generating 2-CPU executable:  Generating 2-CPU executable:
74    cd ../../../verification/lab_sea/input    cd ../code
75    ln -sf ../code/SIZE_2x1.h SIZE.h    \mv SIZE.h SIZE.h_1
76    ln -sf ../code/CPP_OPTIONS.h .    \mv SIZE.h_mpi SIZE.h
77    ln -sf ../code/CPP_EEOPTIONS_MPI.h CPP_EEOPTIONS.h    ../../../tools/genmake2 -mpi
   ../../../tools/genmake -mpi -makefile  
     ==> on alhena for comparison purposes use:  
       ../../../tools/genmake -mpi -platform=o2k_noopt -makefile  
     ==> on alhena for fast execution use:  
       ../../../tools/genmake -mpi -platform=o2k -makefile  
78    make clean    make clean
79    make depend    make depend
80    make    make
# Line 85  Generating 2-CPU executable: Line 84  Generating 2-CPU executable:
84  Instructions for running Experiment 1  Instructions for running Experiment 1
85  =====================================  =====================================
86    
87  This is a 1-cpu, 10-hour integration used to make sure that all the  This is a 1-cpu, 10-hour integration used to make sure that all
88  files are available and that the model compiles and integrates.  It  the files are available and that the sea-ice model compiles and
89  is the default experiment of "verification/testscript lab_sea".  runs.  The reading of atmospheric forcing files and the computation
90    of open-water bulk fluxes are carried out within pkg/seaice.
91    
92  To run Experiment 1:  To run Experiment 1:
93    cd ../../../verification/lab_sea/input    cd ../input
94    ln -sf data.10hours data    ./mitgcmuv_1 >&! output.txt
   ln -sf data.seaice.adi data.seaice  
   mitgcmuv_1 >&! output.txt  
   mkdir exp1  
   mv *tave.0000000010.data exp1  
95    
96  Use matlab script lookat_exp1.m to compare the output  Use matlab script lookat_exp1.m to compare the output
97  of exp1 with that from release1_patch5 sea-ice code:  of exp1 with that from checkpoint51f sea-ice code:
98    cd ../../../verification/lab_sea/matlab    cd ../../../verification/lab_sea/matlab
99    matlab    matlab
100    lookat_exp1    lookat_ice
101    
102    
103  Instructions for running Experiment 2  Instructions for running Experiment 2
104  =====================================  =====================================
105    
106  This is a 1-cpu test of the LSR solver.  The solution is  This is a 2-cpu, 10-hour integration.
 compared to that of experiment 1, which used the ADI solver.  
107    
108  To run Experiment 2:  To run Experiment 2:
109    cd ../../../verification/lab_sea/input    cd ../../../verification/lab_sea/input
   ln -sf data.10hours data  
   ln -sf data.seaice.lsr data.seaice  
   mitgcmuv_1 >&! output.txt  
   mkdir exp2  
   mv *tave.0000000010.data exp2  
   
 Use 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).  
   
 To run Experiment 3:  
   cd ../../../verification/lab_sea/input  
   ln -sf data.1hour data  
   ln -sf data.seaice.testadi data.seaice  
   mitgcmuv_1 >&! output.txt  
   mkdir exp3a  
   mv *tave.0000000001.data exp3a  
   ln -sf data.seaice.testlsr data.seaice  
   mitgcmuv_1 >&! output.txt  
   mkdir exp3b  
   mv *tave.0000000001.data exp3b  
   
 Use 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 run Experiment 4:  
   cd ../../../verification/lab_sea/input  
   ln -sf data.10hours data  
   ln -sf data.seaice.adi data.seaice  
110    mpirun -np 2 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 by seaice_get_forcing.F for multi-year forcing.  
   
 To run Experiment 5:  
   cd ../../../verification/lab_sea/input  
   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_exp5.m to compare  
 the 2-cpu output to SMMR-SSM/I data:  
   cd ../../../verification/lab_sea/matlab  
   matlab  
   lookat_exp5  
   
 Disclaimer:  
 The comparison here is just for fun, not really supposed  
 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.  
   
 To run Experiment 6:  
   cd ../../../verification/lab_sea/input  
   ln -sf data.10hours data  
   ln -sf data.seaice.nodynamics data.seaice  
   mitgcmuv_1 >&! output.txt  
   mkdir exp6  
   mv *tave.0000000010.data exp6  
   
 Use the matlab script lookat_exp6.m to compare  
 the output of exp6 to that of exp1:  
   cd ../verification/lab_sea/matlab  
   matlab  
   lookat_exp6  
   
 Instructions for running Experiment 7  
 =====================================  
   
 This is a 2-cpu, 10-hour integration used to test  
 tile edges for sea-ice thermodynamics (no dynamics).  
 2-CPU executable from experiment 4 is required.  
   
 To run Experiment 7:  
   cd ../../../verification/lab_sea/input  
   ln -sf data.10hours data  
   ln -sf data.seaice.nodynamics data.seaice  
   mpirun -np 2 mitgcmuv_2x1  
   mkdir exp7  
   mv *tave.0000000010.data exp7  
   
 Use the matlab script lookat_exp7.m to compare  
 the output of exp7 to that of exp6:  
   cd ../verification/lab_sea/matlab  
   matlab  
   lookat_exp7  

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.13

  ViewVC Help
Powered by ViewVC 1.1.22