|
|
|
| 1 |
Test for lab_sea forward model linearity. |
Test for lab_sea forward model linearity. |
| 2 |
|
|
| 3 |
cd MITgcm/verification/lab_sea |
cd MITgcm/verification/lab_sea |
| 9 |
make |
make |
| 10 |
cd ..; mkdir run; cd run; cp ../input/* . |
cd ..; mkdir run; cd run; cp ../input/* . |
| 11 |
cp ../../../../MITgcm_contrib/lab_sea_test/* . |
cp ../../../../MITgcm_contrib/lab_sea_test/* . |
| 12 |
../build/mitgcmuv > output.txt & |
../build/mitgcmuv >! output.txt & |
| 13 |
|
|
| 14 |
cd ..; mkdir run1; cd run1; cp ../input/* . |
cd ..; mkdir run1; cd run1; cp ../input/* . |
| 15 |
cp ../../../../MITgcm_contrib/lab_sea_test/* . |
cp ../../../../MITgcm_contrib/lab_sea_test/* . |
| 16 |
mv data.exf tmp |
mv data.exf tmp |
| 17 |
sed s/tair/tair01/ tmp > data.exf |
sed s/tair/tair01/ tmp > data.exf |
| 18 |
../build/mitgcmuv > output.txt & |
../build/mitgcmuv >! output.txt & |
| 19 |
|
|
| 20 |
cd ..; mkdir run2; cd run2; cp ../input/* . |
cd ..; mkdir run2; cd run2; cp ../input/* . |
| 21 |
cp ../../../../MITgcm_contrib/lab_sea_test/* . |
cp ../../../../MITgcm_contrib/lab_sea_test/* . |
| 22 |
mv data.exf tmp |
mv data.exf tmp |
| 23 |
sed s/tair/tair02/ tmp > data.exf |
sed s/tair/tair02/ tmp > data.exf |
| 24 |
../build/mitgcmuv > output.txt & |
../build/mitgcmuv >! output.txt & |
|
|
|
|
cd ..; mkdir run3; cd run3; cp ../input/* . |
|
|
cp ../../../../MITgcm_contrib/lab_sea_test/* . |
|
|
mv data.exf tmp |
|
|
sed s/tair/tair03/ tmp > data.exf |
|
|
../build/mitgcmuv > output.txt & |
|
|
|
|
|
cd ..; mkdir run4; cd run4; cp ../input/* . |
|
|
cp ../../../../MITgcm_contrib/lab_sea_test/* . |
|
|
mv data.exf tmp |
|
|
sed s/tair/tair04/ tmp > data.exf |
|
|
../build/mitgcmuv > output.txt & |
|
|
|
|
|
cd ..; mkdir run5; cd run5; cp ../input/* . |
|
|
cp ../../../../MITgcm_contrib/lab_sea_test/* . |
|
|
mv data.exf tmp |
|
|
sed s/tair/tair05/ tmp > data.exf |
|
|
../build/mitgcmuv > output.txt & |
|
|
|
|
|
cd ..; mkdir run6; cd run6; cp ../input/* . |
|
|
cp ../../../../MITgcm_contrib/lab_sea_test/* . |
|
|
mv data.exf tmp |
|
|
sed s/tair/tair06/ tmp > data.exf |
|
|
../build/mitgcmuv > output.txt & |
|
|
|
|
|
cd ..; mkdir run7; cd run7; cp ../input/* . |
|
|
cp ../../../../MITgcm_contrib/lab_sea_test/* . |
|
|
mv data.exf tmp |
|
|
sed s/tair/tair07/ tmp > data.exf |
|
|
../build/mitgcmuv > output.txt & |
|
|
|
|
|
cd ..; mkdir run8; cd run8; cp ../input/* . |
|
|
cp ../../../../MITgcm_contrib/lab_sea_test/* . |
|
|
mv data.exf tmp |
|
|
sed s/tair/tair08/ tmp > data.exf |
|
|
../build/mitgcmuv > output.txt & |
|
|
|
|
|
cd ..; mkdir run9; cd run9; cp ../input/* . |
|
|
cp ../../../../MITgcm_contrib/lab_sea_test/* . |
|
|
mv data.exf tmp |
|
|
sed s/tair/tair09/ tmp > data.exf |
|
|
../build/mitgcmuv > output.txt & |
|
|
|
|
|
cd ..; mkdir run10; cd run10; cp ../input/* . |
|
|
cp ../../../../MITgcm_contrib/lab_sea_test/* . |
|
|
mv data.exf tmp |
|
|
sed s/tair/tair10/ tmp > data.exf |
|
|
../build/mitgcmuv > output.txt & |
|
|
|
|
|
cd ..; mkdir run11; cd run11; cp ../input/* . |
|
|
cp ../../../../MITgcm_contrib/lab_sea_test/* . |
|
|
mv data.exf tmp |
|
|
sed s/tair/tair11/ tmp > data.exf |
|
|
../build/mitgcmuv > output.txt & |
|
|
|
|
|
cd ..; mkdir run12; cd run12; cp ../input/* . |
|
|
cp ../../../../MITgcm_contrib/lab_sea_test/* . |
|
|
mv data.exf tmp |
|
|
sed s/tair/tair12/ tmp > data.exf |
|
|
../build/mitgcmuv > output.txt & |
|
|
|
|
|
cd ..; mkdir run13; cd run13; cp ../input/* . |
|
|
cp ../../../../MITgcm_contrib/lab_sea_test/* . |
|
|
mv data.exf tmp |
|
|
sed s/tair/tair13/ tmp > data.exf |
|
|
../build/mitgcmuv > output.txt & |
|
|
|
|
|
cd ..; mkdir run14; cd run14; cp ../input/* . |
|
|
cp ../../../../MITgcm_contrib/lab_sea_test/* . |
|
|
mv data.exf tmp |
|
|
sed s/tair/tair14/ tmp > data.exf |
|
|
../build/mitgcmuv > output.txt & |
|
|
|
|
|
cd ..; mkdir run15; cd run15; cp ../input/* . |
|
|
cp ../../../../MITgcm_contrib/lab_sea_test/* . |
|
|
mv data.exf tmp |
|
|
sed s/tair/tair15/ tmp > data.exf |
|
|
../build/mitgcmuv > output.txt & |
|
|
|
|
|
cd ..; mkdir run16; cd run16; cp ../input/* . |
|
|
cp ../../../../MITgcm_contrib/lab_sea_test/* . |
|
|
mv data.exf tmp |
|
|
sed s/tair/tair16/ tmp > data.exf |
|
|
../build/mitgcmuv > output.txt & |
|
|
|
|
|
cd ..; mkdir run17; cd run17; cp ../input/* . |
|
|
cp ../../../../MITgcm_contrib/lab_sea_test/* . |
|
|
mv data.exf tmp |
|
|
sed s/tair/tair17/ tmp > data.exf |
|
|
../build/mitgcmuv > output.txt & |
|
|
|
|
|
cd ..; mkdir run18; cd run18; cp ../input/* . |
|
|
cp ../../../../MITgcm_contrib/lab_sea_test/* . |
|
|
mv data.exf tmp |
|
|
sed s/tair/tair18/ tmp > data.exf |
|
|
../build/mitgcmuv > output.txt & |
|
|
|
|
|
cd ..; mkdir run19; cd run19; cp ../input/* . |
|
|
cp ../../../../MITgcm_contrib/lab_sea_test/* . |
|
|
mv data.exf tmp |
|
|
sed s/tair/tair19/ tmp > data.exf |
|
|
../build/mitgcmuv > output.txt & |
|
| 25 |
|
|
| 26 |
cd ..; mkdir run20; cd run20; cp ../input/* . |
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
| 27 |
cp ../../../../MITgcm_contrib/lab_sea_test/* . |
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
mv data.exf tmp |
|
|
sed s/tair/tair20/ tmp > data.exf |
|
|
../build/mitgcmuv > output.txt & |
|
| 28 |
|
|
| 29 |
cd .. |
cd .. |
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
|
|
|
| 30 |
matlab |
matlab |
| 31 |
|
|
| 32 |
clear all, clf reset, pn=''; nt=238; |
clear all, clf reset, pn=''; ne=5; nt=120; |
| 33 |
heff=zeros(20,16,nt,21); |
heff=zeros(20,16,nt,ne+1); |
| 34 |
area=zeros(20,16,nt,21); |
area=zeros(20,16,nt,ne+1); |
| 35 |
for e=0:20 |
for e=0:ne |
| 36 |
for t=0:nt, disp([e t]) |
for t=1:nt, disp([e t]) |
| 37 |
if e==0, fn=[pn 'run/HEFF.']; |
if e==0, fn=[pn 'run/HEFFtave.']; |
| 38 |
else fn=[pn 'run' int2str(e) '/HEFF.']; end |
else fn=[pn 'run' int2str(e) '/HEFFtave.']; end |
| 39 |
fn=[fn myint2str(t*240,10) '.data']; |
fn=[fn myint2str(t*240,10) '.data']; |
| 40 |
heff(:,:,t+1,e+1)=readbin(fn,[20 16],1); |
heff(:,:,t+1,e+1)=readbin(fn,[20 16],1); |
| 41 |
if e==0, fn=[pn 'run/AREA.']; |
if e==0, fn=[pn 'run/AREAtave.']; |
| 42 |
else fn=[pn 'run' int2str(e) '/AREA.']; end |
else fn=[pn 'run' int2str(e) '/AREAtave.']; end |
| 43 |
fn=[fn myint2str(t*240,10) '.data']; |
fn=[fn myint2str(t*240,10) '.data']; |
| 44 |
area(:,:,t+1,e+1)=readbin(fn,[20 16],1); |
area(:,:,t+1,e+1)=readbin(fn,[20 16],1); |
| 45 |
end |
end |
| 46 |
end |
end |
| 47 |
for t=1:nt |
|
| 48 |
tmp=squeeze(sum(sum(heff(:,:,t,:)))); |
tmp=squeeze(sum(sum(sum(heff)))); |
| 49 |
clf,subplot(211),plot(tmp-mean(tmp)) |
clf,subplot(211),plot(tmp-mean(tmp)) |
| 50 |
grid,title([int2str((t-1)*10) ' days']) |
grid,title([int2str((t-1)*10) ' days']) |
| 51 |
tmp=squeeze(sum(sum(area(:,:,t,:)))); |
tmp=squeeze(sum(sum(sum(area)))); |
| 52 |
|
subplot(212),plot(tmp-mean(tmp)) |
| 53 |
|
grid,title([int2str((t-1)*10) ' days']) |
| 54 |
|
tmp=squeeze(sum(sum(heff(:,:,:,1)))); |
| 55 |
|
clf,subplot(211),plot(tmp-mean(tmp)) |
| 56 |
|
grid,title([int2str((t-1)*10) ' days']) |
| 57 |
|
tmp=squeeze(sum(sum(area(:,:,:,1)))); |
| 58 |
subplot(212),plot(tmp-mean(tmp)) |
subplot(212),plot(tmp-mean(tmp)) |
| 59 |
grid,title([int2str((t-1)*10) ' days']) |
grid,title([int2str((t-1)*10) ' days']) |
|
pause, end |
|
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
|
|
|
|
repeat with daily dumps for experiments 10-15, days 6-10 |
|
|
|
|
|
cd run10; mv data tmp |
|
|
sed s/startTime=0.0,/startTime=518400.0,/ tmp > tmp2 |
|
|
sed s/endTime=1728000.,/endTime=950400.0,/ tmp2 > tmp3 |
|
|
sed s/"dumpFreq = 86400.,"/dumpFreq=3600.,/ tmp3 > data |
|
|
../build/mitgcmuv >! output.txt & |
|
|
|
|
|
cd ../run11; mv data tmp |
|
|
sed s/startTime=0.0,/startTime=518400.0,/ tmp > tmp2 |
|
|
sed s/endTime=1728000.,/endTime=950400.0,/ tmp2 > tmp3 |
|
|
sed s/"dumpFreq = 86400.,"/dumpFreq=3600.,/ tmp3 > data |
|
|
../build/mitgcmuv >! output.txt & |
|
|
|
|
|
cd ../run12; mv data tmp |
|
|
sed s/startTime=0.0,/startTime=518400.0,/ tmp > tmp2 |
|
|
sed s/endTime=1728000.,/endTime=950400.0,/ tmp2 > tmp3 |
|
|
sed s/"dumpFreq = 86400.,"/dumpFreq=3600.,/ tmp3 > data |
|
|
../build/mitgcmuv >! output.txt & |
|
|
|
|
|
cd ../run13; mv data tmp |
|
|
sed s/startTime=0.0,/startTime=518400.0,/ tmp > tmp2 |
|
|
sed s/endTime=1728000.,/endTime=950400.0,/ tmp2 > tmp3 |
|
|
sed s/"dumpFreq = 86400.,"/dumpFreq=3600.,/ tmp3 > data |
|
|
../build/mitgcmuv >! output.txt & |
|
| 60 |
|
|
| 61 |
cd ../run14; mv data tmp |
tmp1=squeeze(sum(sum(heff(:,:,:,1)))); |
| 62 |
sed s/startTime=0.0,/startTime=518400.0,/ tmp > tmp2 |
tmp2=squeeze(sum(sum(heff(:,:,:,2)))); |
| 63 |
sed s/endTime=1728000.,/endTime=950400.0,/ tmp2 > tmp3 |
tmp3=squeeze(sum(sum(heff(:,:,:,3)))); |
| 64 |
sed s/"dumpFreq = 86400.,"/dumpFreq=3600.,/ tmp3 > data |
t=1:length(tmp1); t=(t-1)*10 |
| 65 |
../build/mitgcmuv >! output.txt & |
clf,subplot(211),plot(t,tmp2-tmp1,t,tmp3-tmp1,'linewidth',2) |
| 66 |
|
|
|
cd ../run15; mv data tmp |
|
|
sed s/startTime=0.0,/startTime=518400.0,/ tmp > tmp2 |
|
|
sed s/endTime=1728000.,/endTime=950400.0,/ tmp2 > tmp3 |
|
|
sed s/"dumpFreq = 86400.,"/dumpFreq=3600.,/ tmp3 > data |
|
|
../build/mitgcmuv >! output.txt & |
|
| 67 |
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
| 68 |
|
|
|
matlab |
|
| 69 |
|
|
|
heff=zeros(20,16,121,6); |
|
|
area=zeros(20,16,121,6); |
|
|
for e=10:15, disp(e) |
|
|
for t=144:264 |
|
|
fn=['run' int2str(e) '/HEFF.']; |
|
|
fn=[fn myint2str(t,10) '.data']; |
|
|
heff(:,:,t-143,e-9)=readbin(fn,[20 16],1); |
|
|
fn=['run' int2str(e) '/AREA.']; |
|
|
fn=[fn myint2str(t,10) '.data']; |
|
|
area(:,:,t-143,e-9)=readbin(fn,[20 16],1); |
|
|
end |
|
|
end |
|
| 70 |
|
|
| 71 |
for t=144:264 |
grid,title([int2str((t-1)*10) ' days']) |
| 72 |
tmp=squeeze(sum(sum(heff(:,:,t-143,:)))); |
tmp=squeeze(sum(sum(area(:,:,:,1)))); |
| 73 |
clf,subplot(211), plot(tmp-mean(tmp)), grid, title(t/24) |
subplot(212),plot(tmp-mean(tmp)) |
| 74 |
tmp=squeeze(sum(sum(area(:,:,t-143,:)))); |
grid,title([int2str((t-1)*10) ' days']) |
|
subplot(212), plot(tmp-mean(tmp)), grid, title(t/24) |
|
|
pause, end |
|