[MITgcm-devel] lab_sea default adjoint verif. "broken" since April '11

Martin Losch Martin.Losch at awi.de
Thu Oct 13 11:53:15 EDT 2011


Hi Patrick,

not that I have any idea what's going on, but can you exclude that there is something wrong with the grdchk package? I have had instances (which I did not follow up on) where the cost function values differed with respect to the expected value (so FC1 was very different from FC giving a with fd-gradient, whereas FC1 and FC2 gave reasonalbe fd-gradients with good agreement with the adjoing gradient). If that is useful, I could find these examples again (they had to do with xx_shifwflux as far as I remember).

Its also interesting that these jumps in FD-gradients come in steps, the biggest being between r1.42  and r1.43, another one between r1.40 and r1.41 (where one FD-gradient goes back to normal an another jumps up) and r1.39 and r1.40;

Martin


PS. ceterum censeo that the adjoint of LSR is fishy.


On Oct 13, 2011, at 12:03 PM, Patrick Heimbach wrote:

> 
> Hi there,
> 
> recently, Jean-Michel added a test on the finite-difference gradient to the testreport. 
> Since April we had a very good example why it would have been useful, 
> but didn't notice (since the test existed yet):
> 
> Before a series of changes made to pkg/seaice
> the adjoint vs. finite-difference gradient accuracy was about 10E-4
> (revision 1.39 of output_adm.txt)
> after those changes that accuracy deteriorated to 10E+7
> (revision 1.43 of output_adm.txt)
> 
> Interestingly, what's changed was not really the adjoint,
> but the finite difference, which increased by orders of magnitude.
> Reducing epsilon, or the number of timesteps (from 4 to 2) seems to
> reduce the problem somewhat, but points to an extremely sensitive
> threshold behavior that kicks in quickly.
> A tangent linear test still shows the problem.
> Another way to remove this issue is to set new parameter SIsalFRAC = 0.
> 
> Also interesting is that output_adm.evp.txt does not show this problem.
> But a direct implication of solvers as culprits is not obvious at all.
> The results for output_adm.seaice.txt in global_ocean.cs32x15/
> seem to be better-behaved as well.
> 
> One question is whether lab_sea is notoriously ill-designed
> for the tests that we'd like to run (we've had problems in the past).
> But it still doesn't explain
> * why use of LSR vs. EVP show the drastically different behavior
>  (EVP seemingly well behaved, and LSR also badly behaved in TLM mode);
>  again, it's unlikely due to the solvers per se;
> * why the large sensitivity to SIsalFRAC;
> 
> Looking at alternatives, the obvious choice seems to be 1D_ocean_ice_column/
> But looking at output_adm.txt there shows adj. vs. f.d. gradient accuracies
> of E+0 to E+4 i.e. those results can't be taken serious either.
> 
> -Patrick
> 
> ---
> Patrick Heimbach | heimbach at mit.edu | http://www.mit.edu/~heimbach
> MIT | EAPS 54-1420 | 77 Massachusetts Ave | Cambridge MA 02139 USA
> FON +1-617-253-5259 | FAX +1-617-253-4464 | SKYPE patrick.heimbach
> 
> 
> 
> _______________________________________________
> MITgcm-devel mailing list
> MITgcm-devel at mitgcm.org
> http://mitgcm.org/mailman/listinfo/mitgcm-devel




More information about the MITgcm-devel mailing list