[MITgcm-devel] Problem in some adjoint experiments after load_fields_driver.F changes
Jean-Michel Campin
jmc at mit.edu
Sun Sep 10 09:04:35 EDT 2017
Hi Patrick,
Thanks for looking at this. Very helpful.
I will check with Oliver tomorrow and with can decide what to do then.
But if you prefer to have this fixed earlier, we could add
IF ( .NOT.useEXF ) THEN
line within #ifdef ALLOW_AUTODIFF / #endif
(not pretty, but just as a temporary fix).
Cheers,
Jean-Michel
On Sun, Sep 10, 2017 at 06:04:54AM +0000, Patrick Heimbach wrote:
> Hi there,
>
> up until Revision 1.12 there was the following line in load_fields_driver.F
> IF ( .NOT.(useEXF.OR.useCheapAML) ) THEN
> ...
>
> This was reduced in Revision 1.13 (for reasons that are not clear to me) to
> IF ( .NOT.useCheapAML ) THEN
> ...
>
> If, in the latest revision one puts back in
> (where there previously was the IF ( .NOT.useCheapAML ) - statement)
> IF ( .NOT.useEXF ) THEN
> ...
> (i.e. preserve the conditional statement on useEXF)
> then that fixes the adjoint
> (I won't check in this fix now since overnight reports are running).
>
> The question remains, why the change in Revision 1.13
>
> What happens without the .NOT.useEXF statement is that
> TAF thinks that all arrays of FFIELDS.h that have been assigned via EXF
> (earlier in S/R LOAD_FIELDS_DRIVER)
> are subsequently reassigned/overwritten via call to S/R EXTERNAL_FIELDS_LOAD
> (since now S/R EXTERNAL_FIELDS_LOAD is *always* called).
> Thus, all dependencies are killed, and there are no sensitivities
> to EXF fields (you'll see that TAF isn't producing any variables
> for aduwind, advwind, adatemp, ...)
>
> p.
>
> > On Sep 9, 2017, at 9:02 AM, Jean-Michel Campin <jmc at mit.edu> wrote:
> >
> > Hi,
> >
> > Not clear why, but after this (small) modification to load_fields_driver.F
> > several AD test are now failing.
> > There are also significant changes with tangent-linear test.
> >
> > Here are the list of (adm) experiments that change:
> > After changes:
> > < Sat Sep 9 00:15:09 EDT 2017
> > < Y Y Y Y 16> 0<16 FAIL 1D_ocean_ice_column (e=0, w=3)
> > < Y Y Y Y 16> 2<16 FAIL global_ocean.cs32x15.seaice
> > < Y Y Y Y 16> 1<16 FAIL global_ocean.cs32x15.seaice_dynmix
> > < Y Y Y Y 16> 1<10 FAIL global_ocean.cs32x15.thsice
> > < Y Y Y Y 16> 0<16 FAIL global_with_exf (e=0, w=9)
> > < Y Y Y Y 16> 2<16 FAIL lab_sea (e=0, w=8)
> > < Y Y Y Y 13> 0< 6 FAIL lab_sea.noseaice
> > < Y Y Y Y 16> 5<16 FAIL lab_sea.noseaicedyn
> > < Y Y Y Y 16> 2<16 FAIL offline_exf_seaice (e=0, w=38)
> > < Y Y Y Y 16> 5<16 FAIL offline_exf_seaice.thsice
> >
> > Before:
> >> Fri Sep 8 00:15:10 EDT 2017
> >> Y Y Y Y 16>16<16 pass 1D_ocean_ice_column (e=0, w=3)
> >> Y Y Y Y 16>16<16 pass global_ocean.cs32x15.seaice
> >> Y Y Y Y 16>16<16 pass global_ocean.cs32x15.seaice_dynmix
> >> Y Y Y Y 16>16<10 pass global_ocean.cs32x15.thsice
> >> Y Y Y Y 16>16<16 pass global_with_exf (e=0, w=9)
> >> Y Y Y Y 16>16<16 pass lab_sea (e=0, w=8)
> >> Y Y Y Y 13>14< 6 pass lab_sea.noseaice
> >> Y Y Y Y 16>16<16 pass lab_sea.noseaicedyn
> >> Y Y Y Y 16>16<16 pass offline_exf_seaice (e=0, w=38)
> >> Y Y Y Y 16>16<16 pass offline_exf_seaice.thsice
> >
> > Cheers,
> > Jean-Michel
> >
> > On Fri, Sep 08, 2017 at 10:42:28AM -0400, bderembl at forge.csail.mit.edu wrote:
> >> Update of /u/gcmpack/MITgcm/model/src
> >> In directory forge:/tmp/cvs-serv23380
> >>
> >> Modified Files:
> >> load_fields_driver.F
> >> Log Message:
> >> removed IF ( .NOT.useCheapAML ) before EXTERNAL_FIELDS_LOAD. in case you need both cheapaml and SST/SSS restoring
> >>
> >> _______________________________________________
> >> MITgcm-cvs mailing list
> >> MITgcm-cvs at mitgcm.org
> >> http://mailman.mitgcm.org/mailman/listinfo/mitgcm-cvs
> > _______________________________________________
> > MITgcm-devel mailing list
> > MITgcm-devel at mitgcm.org
> > http://mailman.mitgcm.org/mailman/listinfo/mitgcm-devel
>
> _______________________________________________
> MITgcm-devel mailing list
> MITgcm-devel at mitgcm.org
> http://mailman.mitgcm.org/mailman/listinfo/mitgcm-devel
More information about the MITgcm-devel
mailing list