[Mitgcm-support] Re: problems upgrading to r1_p8
mitgcm-support at dev.mitgcm.org
mitgcm-support at dev.mitgcm.org
Wed Jul 9 15:55:49 EDT 2003
Chris,
The pickup isn't the problem, it's KPP. With KPP switched off the r1_p8
version runs OK.
My c40_pre9 kpp_routines.F has the mod suggested by Chris Edwards:
kbl(i) = min(kl,kmtj(i))
not
kbl(i) = kl
when I include this in r1_p8 it works OK. Perhaps this should be part of
the standard routine?
Interestingly, with KPP off there are significant differences between
the eta fields with r1_p8 and c40_pre9: up to 0.5m on the shelves, and
~0.1m in the tropics (SST is different too). Any ideas what's causing this?
Thanks, Tom.
cnh wrote:
> Tom,
>
> Off the top of my head I'm pretty certain that
> shouldn't happen - i.e.
> pickups etc... should be compatible.
>
> Hopefully one of the others will have some more insight!
>
> Chris
> Tom Haine wrote:
>
>>Hi,
>>
>>I've been running a 1deg N. Atl. model happily with c40_pre9. I thought I
>>should upgrade my code so I built a r1_p8 version. Picking up from my
>>c40_pre9 dump I can only run for a few 100 steps before the solver
>>diverges.
>>
>>Side by side comparison of the codes shows: identical input/data.* files
>>and identical output to stdout at startup (excluding a few trivial
>>differences). My code mods include: rotated spherical grid, RBCs, and
>>movie. I'm using KPP.
>>
>>Any suggestions? Detailed diagnostics below.
>>
>>Thanks, Tom.
>>
>>The solver outputs are different from the first step:
>>
>>r1_p8 (MITgcm_release1_p8/twnh/run/mitgcmuv.out):
>>
>> cg2d: Sum(rhs),rhsMax = -6.14057184440686E-09 9.40447027078642E-01
>>(PID.TID 0000.0001) cg2d_init_res =
>>1.21108678713545E-01
>>(PID.TID 0000.0001) cg2d_iters = 52
>>(PID.TID 0000.0001) cg2d_res =
>>6.31509548748506E-14
>>
>>c40_pre9 (MITgcm_c40pre9/twnh2/run/mitgcmuv.out):
>>
>> cg2d: Sum(rhs),rhsMax = -6.17300681318017E-09 9.35722761934761E-01
>>(PID.TID 0000.0001) cg2d_init_res =
>>8.29898708457235E-02
>>(PID.TID 0000.0001) cg2d_iters = 50
>>(PID.TID 0000.0001) cg2d_res =
>>9.22957373770799E-14
>>
>>MONITOR output shows identical max and mins at the first step, but
>>slightly different means and sds. After a few 10s of steps the max, min
>>speeds are different.
>>
>>Finally, r1_p8 explodes:
>>
>>(PID.TID 0000.0001) cg2d_init_res =
>>9.66464443750035E-01
>>(PID.TID 0000.0001) cg2d_iters = 49
>>(PID.TID 0000.0001) cg2d_res =
>>6.09015534503417E-14
>> cg2d: Sum(rhs),rhsMax = -5.45781517202748E-09 1.10643568700360E+00
>>(PID.TID 0000.0001) cg2d_init_res =
>>1.72170539524943E+00
>>(PID.TID 0000.0001) cg2d_iters = 49
>>(PID.TID 0000.0001) cg2d_res =
>>8.16034307437118E-14
>> cg2d: Sum(rhs),rhsMax = -1.82372121571017E-09 3.31101489078477E+00
>>(PID.TID 0000.0001) cg2d_init_res =
>>1.64995278126615E+00
>>(PID.TID 0000.0001) cg2d_iters = 49
>>(PID.TID 0000.0001) cg2d_res =
>>7.57149619083152E-14
>> cg2d: Sum(rhs),rhsMax = -9.35809749136318E-10 6.45432834545128E+00
>>(PID.TID 0000.0001) cg2d_init_res =
>>2.01011457828059E+00
>>(PID.TID 0000.0001) cg2d_iters = 49
>>(PID.TID 0000.0001) cg2d_res =
>>8.30761672148342E-14
>> cg2d: Sum(rhs),rhsMax = -2.25735723516363E-10 2.67677846388646E+01
>>(PID.TID 0000.0001) cg2d_init_res =
>>1.63509084933505E+00
>>(PID.TID 0000.0001) cg2d_iters = 49
>>(PID.TID 0000.0001) cg2d_res =
>>7.44134148753651E-14
>> cg2d: Sum(rhs),rhsMax = -2.11718107238565E-11 2.85458845271579E+02
>>(PID.TID 0000.0001) cg2d_init_res =
>>1.32604314372823E+00
>>(PID.TID 0000.0001) cg2d_iters = 48
>>(PID.TID 0000.0001) cg2d_res =
>>8.60880146965341E-14
>> cg2d: Sum(rhs),rhsMax = -1.23077366847397E-13 4.91080350803837E+04
>>(PID.TID 0000.0001) cg2d_init_res =
>>1.10846133766567E+00
>>(PID.TID 0000.0001) cg2d_iters = 50
>>(PID.TID 0000.0001) cg2d_res =
>>6.50546394178715E-14
>> cg2d: Sum(rhs),rhsMax = 5.52812183728078E-16 1.00849245459929E+14
>>(PID.TID 0000.0001) cg2d_init_res =
>>1.43461843658355E+00
>>(PID.TID 0000.0001) cg2d_iters = 52
>>(PID.TID 0000.0001) cg2d_res =
>>7.57551170873034E-14
>> cg2d: Sum(rhs),rhsMax = 7.02077927881976E-17 7.48278838805958E+50
>>(PID.TID 0000.0001) cg2d_init_res =
>>1.24921675417006E+00
>>(PID.TID 0000.0001) cg2d_iters = 51
>>(PID.TID 0000.0001) cg2d_res =
>>8.84530102944944E-14
>> cg2d: Sum(rhs),rhsMax = -1.08880737624419E-16 9.91672579756393+197
>>
>>The MONITOR values a few 10s of steps earlier look OK:
>>
>>(PID.TID 0000.0001) %MON advcfl_uvel_max =
>>1.0766191062590E-02
>>(PID.TID 0000.0001) %MON advcfl_vvel_max =
>>1.0979402537837E-02
>>(PID.TID 0000.0001) %MON advcfl_wvel_max =
>>6.1385124825574E-03
>>(PID.TID 0000.0001) %MON advcfl_W_hf_max =
>>1.1204467069580E-02
>
More information about the MITgcm-support
mailing list