[Mitgcm-support] Re: Top level arrays
mitgcm-support at dev.mitgcm.org
mitgcm-support at dev.mitgcm.org
Wed Jul 9 15:38:09 EDT 2003
Correct.
When including external_fields_load into the adjoint
I had to make the forcingField0/1 arrays global
because of the TAF-checkpointing.
Those are required fields since their interpolation has
to be re-computed in the reverse checkpointing loops.
These changes are a result of people refusing to use
the exf package which has all the stuff working
(0/1 fields in common, correct exchanges after
ctrl-variable perturbation, etc).
It should be very easy to modify the customized routines
by just removing the local field declarations.
I don't see where in FFIELDS.h are "odd CPP's".
Can you give an example?
Also, can you give other examples of moved declarations?
Cheers
-Patrick
Quoting Alistair Adcroft <adcroft at MIT.EDU>:
> Patrick,
>
> We've noticed that quite a few array declarations are being moved from
> their original location to other places and have odd logical CPPs around
> them. For instance the new 0/1 arrays in FFIELDS.h used to be in
> load_external_fields.F and are now in FFIELDS.h . This means that
> customized versions of load_external_fields.F no longer work because
> the storage arrays are declared twice. Why did you move them?
>
> Is it because you need these arrays at the top level for the adjoint?
>
> A.
>
More information about the MITgcm-support
mailing list