[MITgcm-support] TAMC bug?
Daniel Lea
daniel.lea at jhuapl.edu
Fri Aug 1 15:56:28 EDT 2003
Hi,
I've been having fun trying to adjoint a recent ECCO version of the
mitgcm. (ecco_c50_e29). I managed to solve the problem I was having but I
thought you might be interested in my travails. I got several TAMC errors,
the first time, for example:
parsing subroutine ** exf_readparms **
674192 & exf_half = 0.5 D 0 ,
^
*ERROR* : expected )
674193 & exf_one = 1.0 D 0 ,
^
*ERROR* : expected (
674194 & exf_two = 2.0 D 0
^
*ERROR* : expected (
In the file exf_constants.h these parameter definitions are as follows:
parameter(
& exf_half = 0.5 _d 0 ,
& exf_one = 1.0 _d 0 ,
& exf_two = 2.0 _d 0
& )
CPP replaces the _d with D. This compiles OK so the problem must lie
with TAMC not understanding the spaces in the parameter definition.
I modified the above to:
parameter(
& exf_half = 0.5D0 ,
& exf_one = 1.0D0 ,
& exf_two = 2.0D0
& )
I also modified all other parameter definitions in the same way which
eliminated the problem. Strangely this issue about spacing seems to be a
only a problem to TAMC within parameter statements so it could have been
worse!
It looks like there might be a policy of migrating to using the _d form
throughout the code. I would vote against this unless TAMC can understand
the resulting code.
Dan
More information about the MITgcm-support
mailing list