/[MITgcm]/MITgcm_contrib/gael/verification/README
ViewVC logotype

Diff of /MITgcm_contrib/gael/verification/README

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

revision 1.2 by heimbach, Wed Oct 10 20:44:59 2012 UTC revision 1.7 by gforget, Thu Feb 12 22:11:05 2015 UTC
# Line 1  Line 1 
1    
2  (last edit : oct. 3rd, 2012)  ( last edited : October 14th, 2014 -- author : Gael Forget )
3    
4  ---------------------------------------------------------------  ---------------------------------------------------------------
5  A) setup the experiments (incl. llc90 and cs32 core2.cnyf runs)  A) setup the experiments (incl. llc90 and cs32 core2.cnyf runs)
# Line 21  A) setup the experiments (incl. llc90 an Line 21  A) setup the experiments (incl. llc90 an
21     cvs server. If you completed step1, you indeed already are.     cvs server. If you completed step1, you indeed already are.
22     If otherwise, see http://mitgcm.org/public/source_code.html     If otherwise, see http://mitgcm.org/public/source_code.html
23  3) step2 creates a directory global_oce_tmp_download that  3) step2 creates a directory global_oce_tmp_download that
24     contains the experiments directories. Move them to     contains the experiments directories. Move them (incl.
25     MITgcm/verification and cd to that location. Once you     global_oce_input_fields) to MITgcm/verification. Once you
26     have done this succesfully you may want to remove     have done this succesfully you may want to remove the empty
27     global_oce_tmp_download. We wont need it anymore.     global_oce_tmp_download directory. We wont need it anymore.
28  4) exectute MITgcm with testreport. Two examples from one machine.  4) exectute MITgcm with testreport. Two examples from one machine.
29     To run the cs32 test on one cpu :     To run the cs32 test on one cpu :
30         ./testreport -t global_oce_cs32         ./testreport -t global_oce_cs32
31     And to run the llc90 test on 12 cpus, using mpi     And to run the llc90 test on 24 cpus, using mpi
32        ./testreport -match 6 -of=../tools/build_options/linux_amd64_gfortran -MPI 12 -command 'mpirun -np TR_NPROC ./mitgcmuv' -t global_oce_llc90        ./testreport -of=../tools/build_options/linux_amd64_gfortran -MPI 24 -command 'mpirun -np TR_NPROC ./mitgcmuv' -t 'global_oce_cs32 global_oce_llc90'
33     The optfile may be swaped for one that better suits your machine.     The optfile may be swaped for one that better suits your machine.
34  5) for llc90 experiment testreport should show something like  
35      Y Y Y Y> 6<16 16 12 12 16 16 13 11 12 11 11 11 12 13 10 11  .  . pass  global_oce_llc90  Notes: - when using mpi and netcdf, testreport expects two environment variables :
36      Y Y Y N .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..  .  . N/O   global_oce_llc90.core2           export MPI_INC_DIR=/opt/local/include
37      Y Y Y N .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..  .  . N/O   global_oce_llc90.ecco_v4           export NETCDF_ROOT=/opt/local
38      Y Y Y N .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..  .  . N/O   global_oce_llc90.ecmwf           or something similar depending on your computing environment
39     implying that the main experiment ran as expected in global_oce_llc90/run. In contrast         - whether with testreport or not mpi and netcdf libraries are a pre-requisite
40     the sub-experiments, by default, fail by omission of surface forcing fields. This  5) upon completion of the experiments, testreport should return something like
41     omission saves disk space and download time. In case you want to run the sub-experiments,      Y Y Y Y>16<16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16  .  . pass  global_oce_cs32
42     you will need to obtain additional inputs. Contact us about this if applies.      Y Y Y Y> 7<16 16 12 12 16 16 13 11 13 12 10 11 13 13 11 11  .  . FAIL  global_oce_llc90
43        Y Y Y Y>10<16 13 12 12 13 16 14 11 13 13 11 11 13 13 11 11  .  . pass  global_oce_llc90.core2
44        Y Y Y Y> 4<13 11  9  9 12 16 11  9 10 12 10 10 11 10  8 10  .  . FAIL  global_oce_llc90.ecco_v4
45        Y Y Y Y> 7<10 11 12 11 12 11 13 10 10 12 11 11 12 11 11 10  .  . FAIL  global_oce_llc90.ecmwf
46       implying that the main experiment ran as expected in global_oce_llc90/run.
47    
48  -----------------------------------------------------------------------  -----------------------------------------------------------------------
49  B) in case you want to change stuff on your end, or for troubleshooting  B) in case you want to change stuff on your end, or for troubleshooting
50  -----------------------------------------------------------------------  -----------------------------------------------------------------------
51    
 0) to run the core2, ecmwf, and ecco_v4 subexperiments you will need  
    extra stuff in global_oce_input_fields. Contact us if need be.  
   
52  1) In linking the experiments to one another we rely on 'build/genmake_local' and  1) In linking the experiments to one another we rely on 'build/genmake_local' and
53  'input*/prepare_run' which may be worth a special mention, at least to new MITgcm users.  'input*/prepare_run' which may be worth a special mention, at least to new MITgcm users.
54    
# Line 62  B) in case you want to change stuff on y Line 63  B) in case you want to change stuff on y
63         e.g. global_oce_cs32 will get shared files from global_oce_llc90. If you move         e.g. global_oce_cs32 will get shared files from global_oce_llc90. If you move
64         the directories appart, you will need to edit the paths in input*/prepare_run         the directories appart, you will need to edit the paths in input*/prepare_run
65    1.4) the logic we followed in linking exps to one another :    1.4) the logic we followed in linking exps to one another :
66             - forward subexperiments : get local namelists then run input/prepare_run             - forward subexperiments : get input.xxx/namelists then run input/prepare_run
67             - adjoint subexperiments : get input_ad.x/namelists then run corresponding forward             - adjoint subexperiments : get input_ad.xxx/namelists then run corresponding forward
68             subexperiment input.x/prepare_run (that itself ultimately runs input/prepare_run)             subexperiment input.xxx/prepare_run (that itself ultimately runs input/prepare_run)
69    
70  2) In a couple .h files (that you find in the build directory after compiling)  2) In a couple .h files (that you find in the build directory after compiling)
71     small size parameters are used as a default (to save memory of course)     small size parameters are used as a default (to save memory of course)
72     and they can become limiting in certain cases :     and they can become limiting in certain cases :
73     - you may want to integrate the model beyond a few time steps. You will need to     - you may want to integrate the model beyond a few time steps. You will need to
74       edit ecco_cost.h, increase nchklev_1, nchklev_2, nchklev_3 and recompile.       increase nchklev_1/_2/_3 in tamc.h (e.g. use the values in tamc.h_itXX) and recompile.
75     - you may want to use pkg/profiles (i.e. process insitu data via data.profiles).     - you may want to use pkg/profiles (i.e. process insitu data via data.profiles).
76       You will need to edit profiles.h to increase NOBSGLOB, and recompile.       You will need to increase NOBSGLOB in profiles.h (e.g. use profiles.h_itXX), and recompile.
77    
78  3) To run the adjoint subexperiments you need the taf/tamc software/license.  3) To run the adjoint subexperiments you need the taf/tamc software/license.
79    
   
80  ---------------------------------------------------------------  ---------------------------------------------------------------
 Cheers,  
 Gael  
81  ---------------------------------------------------------------  ---------------------------------------------------------------
82    
   
   

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

  ViewVC Help
Powered by ViewVC 1.1.22