| 1 | dimitri | 1.1 | Instructions for setting up a cube-sphere integration | 
| 2 |  |  | with sea-ice on the cs32 grid.  Is meant to be used as | 
| 3 |  |  | a preliminary sanity check for the cs510 configuration. | 
| 4 |  |  |  | 
| 5 |  |  | ########################################################################## | 
| 6 |  |  | # getting the code from anonymous CVS server | 
| 7 |  |  |  | 
| 8 | dimitri | 1.7 | cvs co -P MITgcm_contrib/high_res_cube/README.cs32 | 
| 9 | dimitri | 1.6 | cvs co -P MITgcm_contrib/high_res_cube/code-mods | 
| 10 | dimitri | 1.7 | cvs co -P MITgcm_contrib/high_res_cube/input | 
| 11 |  |  | cvs co -P MITgcm_contrib/high_res_cube/results | 
| 12 |  |  | cvs co -P MITgcm_code | 
| 13 |  |  | cvs co -P MITgcm/verification/global_ocean.cs32x15/input | 
| 14 |  |  | cvs co -P MITgcm/verification/tutorial_held_suarez_cs/input | 
| 15 | dimitri | 1.1 |  | 
| 16 |  |  | ########################################################################## | 
| 17 |  |  | # 32*32*6*15, 1-cpu cube sphere | 
| 18 |  |  |  | 
| 19 | dimitri | 1.2 | cd MITgcm | 
| 20 |  |  | mkdir build run | 
| 21 |  |  | cd build | 
| 22 |  |  | \rm * | 
| 23 |  |  | \cp ../../MITgcm_contrib/high_res_cube/code-mods/* . | 
| 24 | dimitri | 1.1 | \rm CPP_EEOPTIONS.h | 
| 25 | dimitri | 1.2 | ../tools/genmake2 | 
| 26 |  |  | make depend | 
| 27 |  |  | make -j | 
| 28 |  |  | cd ../run | 
| 29 | dimitri | 1.1 | \rm * | 
| 30 | dimitri | 1.2 | \cp ../verification/tutorial_held_suarez_cs/input/grid* . | 
| 31 |  |  | \cp ../verification/global_ocean.cs32x15/input/lev_*_cs_15k.bin . | 
| 32 |  |  | \cp ../verification/global_ocean.cs32x15/input/bathy_Hmin50.bin . | 
| 33 |  |  | \cp ../../MITgcm_contrib/high_res_cube/input/* . | 
| 34 | dimitri | 1.1 | ../build/mitgcmuv >& output.txt | 
| 35 |  |  |  | 
| 36 | dimitri | 1.3 | emacs output.txt ../../MITgcm_contrib/high_res_cube/results/output.txt | 
| 37 | dimitri | 1.1 |  | 
| 38 | dimitri | 1.8 | to use matlab to look at the output: | 
| 39 | dimitri | 1.1 | matlab | 
| 40 |  |  | for fld={'SIuice','SIvice','SIheff','SIarea','oceQsw', ... | 
| 41 |  |  | 'surForcT','oceTAUX','oceTAUY','surForcS'} | 
| 42 |  |  | tmp=permute(readbin([fld{1} '.0000000072.data'],[32,6,32]),[1 3 2]); | 
| 43 |  |  | cx=[min(tmp(:)) max(tmp(:))]; clf, plot_cube, title(fld{1}), pause | 
| 44 |  |  | end | 
| 45 |  |  |  | 
| 46 |  |  | heff=permute(readbin(['SIheff.0000000072.data'],[32,6,32]),[1 3 2]); | 
| 47 |  |  | mask=0*heff; mask(find(heff>.001))=1; | 
| 48 |  |  | uice=mask.*permute(readbin(['SIuice.0000000072.data'],[32,6,32]),[1 3 2]); | 
| 49 |  |  | vice=mask.*permute(readbin(['SIvice.0000000072.data'],[32,6,32]),[1 3 2]); | 
| 50 |  |  | clf | 
| 51 |  |  | subplot(221), mypcolor(uice(:,:,3)'); colorbar, title('uice, tile 3') | 
| 52 |  |  | subplot(222), mypcolor(uice(:,:,6)'); colorbar, title('uice, tile 6') | 
| 53 |  |  | subplot(223), mypcolor(vice(:,:,3)'); colorbar, title('vice, tile 3') | 
| 54 |  |  | subplot(224), mypcolor(vice(:,:,6)'); colorbar, title('vice, tile 6') | 
| 55 |  |  |  | 
| 56 | dimitri | 1.2 |  | 
| 57 | dimitri | 1.1 | ########################################################################## | 
| 58 | dimitri | 1.7 | # 32*32*6*15, 176-tile, 1-cpu cube sphere experiment | 
| 59 |  |  | # example that has 16 blank tiles | 
| 60 | dimitri | 1.1 |  | 
| 61 |  |  | cd ../build | 
| 62 |  |  | \rm * | 
| 63 | dimitri | 1.2 | \cp ../../MITgcm_contrib/high_res_cube/code-mods/* . | 
| 64 | dimitri | 1.7 | \cp ../utils/exch2/code-mods/s176t_8x4/SIZE.h . | 
| 65 |  |  | ex - SIZE.h >> /dev/null <<EOF | 
| 66 |  |  | /OLx = | 
| 67 |  |  | c | 
| 68 |  |  | &           OLx =   5, | 
| 69 |  |  | . | 
| 70 |  |  | /OLy = | 
| 71 |  |  | c | 
| 72 |  |  | &           OLy =   5, | 
| 73 |  |  | . | 
| 74 |  |  | w | 
| 75 |  |  | q | 
| 76 |  |  | EOF | 
| 77 | dimitri | 1.2 | \rm CPP_EEOPTIONS.h | 
| 78 |  |  | ../tools/genmake2 | 
| 79 | dimitri | 1.1 | make depend | 
| 80 | dimitri | 1.2 | make -j | 
| 81 | dimitri | 1.8 | cd .. | 
| 82 |  |  | mv run run_orig | 
| 83 |  |  | mkdir run | 
| 84 |  |  | cd run | 
| 85 | dimitri | 1.2 | \cp ../verification/tutorial_held_suarez_cs/input/grid* . | 
| 86 |  |  | \cp ../verification/global_ocean.cs32x15/input/lev_*_cs_15k.bin . | 
| 87 |  |  | \cp ../verification/global_ocean.cs32x15/input/bathy_Hmin50.bin . | 
| 88 | dimitri | 1.7 | \cp ../utils/exch2/code-mods/data.exch2.16_blk data.exch2 | 
| 89 | dimitri | 1.2 | \cp ../../MITgcm_contrib/high_res_cube/input/* . | 
| 90 | dimitri | 1.1 | ../build/mitgcmuv >& output.txt | 
| 91 |  |  |  | 
| 92 | dimitri | 1.8 | to use matlab to compare to previous solution: | 
| 93 |  |  | matlab | 
| 94 |  |  | for f={'ETAN','oceTAUY','SIhsnow','surForcS','KPPhbl','PHIBOT', ... | 
| 95 |  |  | 'SIuice','surForcT','MXLDEPTH','SIarea','SIvice','UVEL_k1', ... | 
| 96 |  |  | 'oceQsw','SIheff','SSS','VVEL_k1','oceTAUX','SIhsalt','SST'} | 
| 97 |  |  | t1=readbin(['../run_orig/' f{1} '.0000000072.data'],[32*6 32]); | 
| 98 |  |  | t2=readbin([f{1} '.0000000072.data'],[32*6 32]); | 
| 99 |  |  | clf, subplot(311), mypcolor(t1'); thincolorbar, title(f{1}) | 
| 100 |  |  | subplot(312), mypcolor(t2'); thincolorbar | 
| 101 |  |  | subplot(313), mypcolor(t2'-t1'); thincolorbar, pause | 
| 102 |  |  | end | 
| 103 |  |  | for f={'YG','YC','XG','XC','RAZ','RAW','RAS','RAC','hFacW','hFacS', ... | 
| 104 |  |  | 'hFacC','Depth','DYG','DYC','DXG','DXC','AngleSN','AngleCS'} | 
| 105 |  |  | t1=readbin(['../run_orig/' f{1} '.data'],[32*6 32]); | 
| 106 |  |  | t2=readbin([f{1} '.data'],[32*6 32]); | 
| 107 |  |  | clf, subplot(311), mypcolor(t1'); thincolorbar, title(f{1}) | 
| 108 |  |  | subplot(312), mypcolor(t2'); thincolorbar | 
| 109 |  |  | subplot(313), mypcolor(t2'-t1'); thincolorbar, pause | 
| 110 |  |  | end | 
| 111 |  |  |  | 
| 112 | dimitri | 1.2 |  | 
| 113 | dimitri | 1.1 | ########################################################################## | 
| 114 | dimitri | 1.4 | # 32*32*6*15, 2-cpu cube sphere on the NAS altices with ifort | 
| 115 | dimitri | 1.1 |  | 
| 116 | dimitri | 1.2 | cd MITgcm | 
| 117 |  |  | mkdir build run | 
| 118 |  |  | cd build | 
| 119 |  |  | \rm * | 
| 120 |  |  | \cp ../../MITgcm_contrib/high_res_cube/code-mods/* . | 
| 121 | dimitri | 1.5 | \mv SIZE.h_mpi SIZE.h | 
| 122 | dimitri | 1.3 | ../tools/genmake2 -of ../../MITgcm_contrib/high_res_cube/code-mods/linux_ia64_ifort+mpi_altix_nas | 
| 123 | dimitri | 1.1 | make depend | 
| 124 | dimitri | 1.9 | make -j 8 | 
| 125 | dimitri | 1.2 | cd ../run | 
| 126 |  |  | \rm * | 
| 127 |  |  | \cp ../verification/tutorial_held_suarez_cs/input/grid* . | 
| 128 |  |  | \cp ../verification/global_ocean.cs32x15/input/lev_*_cs_15k.bin . | 
| 129 |  |  | \cp ../verification/global_ocean.cs32x15/input/bathy_Hmin50.bin . | 
| 130 |  |  | \cp ../../MITgcm_contrib/high_res_cube/input/* . | 
| 131 | dimitri | 1.1 | mpirun -np 2 ../build/mitgcmuv | 
| 132 | dimitri | 1.4 |  | 
| 133 |  |  |  | 
| 134 |  |  | ########################################################################## | 
| 135 |  |  | # 32*32*6*15, 2-cpu cube sphere on the JPL altices with ifort | 
| 136 |  |  |  | 
| 137 |  |  | cd MITgcm | 
| 138 |  |  | mkdir build run | 
| 139 |  |  | cd build | 
| 140 |  |  | \rm * | 
| 141 |  |  | \cp ../../MITgcm_contrib/high_res_cube/code-mods/* . | 
| 142 | dimitri | 1.5 | \mv SIZE.h_mpi SIZE.h | 
| 143 | dimitri | 1.4 | ../tools/genmake2 -of ../tools/build_options/linux_ia64_ifort+mpi_altix_jpl | 
| 144 |  |  | make depend | 
| 145 |  |  | make -j | 
| 146 |  |  | cd ../run | 
| 147 |  |  | \rm * | 
| 148 |  |  | \cp ../verification/tutorial_held_suarez_cs/input/grid* . | 
| 149 |  |  | \cp ../verification/global_ocean.cs32x15/input/lev_*_cs_15k.bin . | 
| 150 |  |  | \cp ../verification/global_ocean.cs32x15/input/bathy_Hmin50.bin . | 
| 151 |  |  | \cp ../../MITgcm_contrib/high_res_cube/input/* . | 
| 152 |  |  | mpirun -np 2 ../build/mitgcmuv |