[38] | 1 | #!/bin/csh |
---|
| 2 | ############################################################################## |
---|
| 3 | # Script to run successive monthly (a month spans 30 deg. in Ls) |
---|
| 4 | # simulations of the LMD Mars GCM. |
---|
| 5 | # This script uses the following files: |
---|
| 6 | # - "run0": script to compute a given month |
---|
| 7 | # - "num_run": single line file containing a value, which is the value of |
---|
| 8 | # the 'initializing' month |
---|
| 9 | # - "run.def.ref": a "run.def" file, exept that variable "nday" is set to 9999 |
---|
| 10 | # - all files usually neaded to run the GCM. Note that initialization |
---|
| 11 | # datafiles "start.nc" and "startfi.nc" must be |
---|
| 12 | # "start${num_run}.nc" and "startfi${num_run}.nc" |
---|
| 13 | ############################################################################## |
---|
| 14 | # DON'T FORGET TO: |
---|
| 15 | # 1) Set the "number of simulation" to 1 in "run0" |
---|
| 16 | # 2) Copy "run.def" to "run.def.ref" and SET nday to 9999 in run.def.ref |
---|
| 17 | # 3) uncomment the various lines below (those which begin with "sed ...") |
---|
| 18 | # 4) If restarting in the middle of a year: |
---|
| 19 | # -Below, Comment all the month already computed |
---|
| 20 | # -Write "N" in file "num_run" if starting from startN.nc ! |
---|
| 21 | ############################################################################## |
---|
| 22 | |
---|
| 23 | |
---|
| 24 | # Remove old "error" file (if any) and create a brand new (blank) one |
---|
| 25 | \rm -f error; touch error |
---|
| 26 | |
---|
| 27 | # 12 martian months (=30°deg Ls) of unequal length (excentric orbit) |
---|
| 28 | sed s/9999/61/ run.def.ref >! run.def ; run0 >>& error #1 |
---|
| 29 | sed s/9999/66/ run.def.ref >! run.def ; run0 >>& error #2 |
---|
| 30 | sed s/9999/66/ run.def.ref >! run.def ; run0 >>& error #3 |
---|
| 31 | sed s/9999/65/ run.def.ref >! run.def ; run0 >>& error #4 |
---|
| 32 | sed s/9999/60/ run.def.ref >! run.def ; run0 >>& error #5 |
---|
| 33 | sed s/9999/54/ run.def.ref >! run.def ; run0 >>& error #6 |
---|
| 34 | sed s/9999/50/ run.def.ref >! run.def ; run0 >>& error #7 |
---|
| 35 | sed s/9999/46/ run.def.ref >! run.def ; run0 >>& error #8 |
---|
| 36 | sed s/9999/47/ run.def.ref >! run.def ; run0 >>& error #9 |
---|
| 37 | sed s/9999/47/ run.def.ref >! run.def ; run0 >>& error #10 |
---|
| 38 | sed s/9999/51/ run.def.ref >! run.def ; run0 >>& error #11 |
---|
| 39 | sed s/9999/56/ run.def.ref >! run.def ; run0 >>& error #12 |
---|
| 40 | # |
---|
| 41 | # 12 martian months (=30°deg Ls) of unequal length (excentric orbit) |
---|
| 42 | # sed s/9999/61/ run.def.ref >! run.def ; run0 >>& error #13 |
---|
| 43 | # sed s/9999/66/ run.def.ref >! run.def ; run0 >>& error #14 |
---|
| 44 | # sed s/9999/66/ run.def.ref >! run.def ; run0 >>& error #15 |
---|
| 45 | # sed s/9999/65/ run.def.ref >! run.def ; run0 >>& error #16 |
---|
| 46 | # sed s/9999/60/ run.def.ref >! run.def ; run0 >>& error #17 |
---|
| 47 | # sed s/9999/54/ run.def.ref >! run.def ; run0 >>& error #18 |
---|
| 48 | # sed s/9999/50/ run.def.ref >! run.def ; run0 >>& error #19 |
---|
| 49 | # sed s/9999/46/ run.def.ref >! run.def ; run0 >>& error #20 |
---|
| 50 | # sed s/9999/47/ run.def.ref >! run.def ; run0 >>& error #21 |
---|
| 51 | # sed s/9999/47/ run.def.ref >! run.def ; run0 >>& error #22 |
---|
| 52 | # sed s/9999/51/ run.def.ref >! run.def ; run0 >>& error #23 |
---|
| 53 | # sed s/9999/56/ run.def.ref >! run.def ; run0 >>& error #24 |
---|
| 54 | # |
---|
| 55 | # 12 martian months (=30°deg Ls) of unequal length (excentric orbit) |
---|
| 56 | # sed s/9999/61/ run.def.ref >! run.def ; run0 >>& error #25 |
---|
| 57 | # sed s/9999/66/ run.def.ref >! run.def ; run0 >>& error #26 |
---|
| 58 | # sed s/9999/66/ run.def.ref >! run.def ; run0 >>& error #27 |
---|
| 59 | # sed s/9999/65/ run.def.ref >! run.def ; run0 >>& error #28 |
---|
| 60 | # sed s/9999/60/ run.def.ref >! run.def ; run0 >>& error #29 |
---|
| 61 | # sed s/9999/54/ run.def.ref >! run.def ; run0 >>& error #30 |
---|
| 62 | # sed s/9999/50/ run.def.ref >! run.def ; run0 >>& error #31 |
---|
| 63 | # sed s/9999/46/ run.def.ref >! run.def ; run0 >>& error #32 |
---|
| 64 | # sed s/9999/47/ run.def.ref >! run.def ; run0 >>& error #33 |
---|
| 65 | # sed s/9999/47/ run.def.ref >! run.def ; run0 >>& error #34 |
---|
| 66 | # sed s/9999/51/ run.def.ref >! run.def ; run0 >>& error #35 |
---|
| 67 | # sed s/9999/56/ run.def.ref >! run.def ; run0 >>& error #36 |
---|
| 68 | |
---|
| 69 | # These last lines allow to reconstruct the last num_run after a model crash |
---|
| 70 | # (because after crash, num_run was set to 9999 so that no further simulation |
---|
| 71 | # Could be performed |
---|
| 72 | set number=`cat num_run` |
---|
| 73 | if ( $number == 99999) then |
---|
| 74 | set numold=`cat num_run.crash` |
---|
| 75 | echo '-----' >>& error |
---|
| 76 | echo 'Seasonal simulation aborted after starting from start'$numold >>& error |
---|
| 77 | \mv -f num_run.crash num_run |
---|
| 78 | endif |
---|