25-Sep-2008 heimbach@mit.edu, gforget@mit.edu, dmenemenlis@gmail.com, hzhang@caltech.edu # The following is a description of the CS510 # adjoint-based state estimation setup. # It is based on checkpoint61d. # A prototype setup ran successfully in a 360-proc. config. # on beagle.darwinproject.mit.edu # Stable run for 10-days. sensitivity growth for 1 month # (but not much tweaking with viscosity etc.) # # Default setup for columbia set up to use 450 processors of tile size 34x34. # 0. Set some variables set mitgcm_basedir = [ for example ~/MITgcm_c61d ] # 1. Check out clean MITgcm checkpoint from CVS cvs co -d MITgcm_c61d -r checkpoint61d MITgcm #or latest code #cvs co MITgcm_code # 2. Check out config. files for this setup: cvs co MITgcm_contrib/high_res_cube/cs510_adjoint # 3. (I prefer it that way, but a matter of taste), \cp -r MITgcm_contrib/high_res_cube/cs510_adjoint $mitgcm_basedir/verification/. # 4. Prepare build; we now need cyrus-makedepend cd $mitgcm_basedir/tools/cyrus-imapd-makedepend ./configure make # 5. Make sure to use default topology (or use different one) cd $mitgcm_basedir/verification/cs510_adjoint/code_ad/ #no more topo needed #\cp -f topol_360_85x51/* . #level options: 50 levels \cp -f SIZE.h_lev50 SIZE.h #DIVA options: no_diva \cp -f ECCO_CPPOPTIONS.h_nodiva ECCO_CPPOPTIONS.h #Or DIVA \cp -f ECCO_CPPOPTIONS.h_diva ECCO_CPPOPTIONS.h # 6. Build model cd $mitgcm_basedir/verification/cs510_adjoint/build_ad/ #DIVA options: no_diva ../../../tools/genmake2 "-of" "linux_ia64_ifort+mpi_altix_nas" \ "-makedepend" "../../../tools/cyrus-imapd-makedepend/makedepend" \ "-mods" "../code_ad" #Or DIVA #../../../tools/genmake2 -of linux_ia64_ifort+mpi_altix_nas \ # -adof ../../../tools/adjoint_options/adjoint_diva_mpi \ # -makedepend ../../../tools/cyrus-imapd-makedepend/makedepend -mods ../code_ad make depend make adtaf make -j adall # 7. Run model cd .. mkdir run cd run ln -sf ../build_ad/mitgcmuv_ad . cp -pf ../input_ad/* . #On Columbia ln -sf /nobackup2a/menemenl/cs510_ad_test/MITgcm/verification/cs510_adjoint/input_fields/* . ln -sf /nobackup2a/menemenl/forcing/cube78_forcing . #Or on Pleiades #ln -sf /nobackupp10/zhangh/cs510_ad_test/MITgcm/verification/cs510_adjoint/input_fields/* . #ln -sf /nobackupp10/zhangh/forcing/cube78_forcing . #change data*... #level 50 \cp -f data.err_lev50 data.err \cp -f data.ecco_lev50 data.ecco \cp -f data_lev50 data #change jobfile: cs510_adj_run #On Columbia qsub cs510_adj_run_Columbia #Or on Pleiades #qsub cs510_adj_run_Pleiades