[MITgcm-devel] ptracer adjoint

Matthew Mazloff mmazloff at ucsd.edu
Tue Dec 14 12:05:56 EST 2010


Hi JMC,

Sorry, was late.  OK -- I get it now.  Without giving obcs ptracer  
file the default is Neumann boundary conditions --  makes sense...

So I put in a OB ptr file and now all is good!

Thanks for the help.
-Matt


ps> I suppose one could put in a warning statement if
OB?ptrFile=' '
and
define ALLOW_COST_TRACER
as apparently these are not compatible...



On Dec 13, 2010, at 9:56 PM, Matthew Mazloff wrote:

> Hi Jean-Michel,
>
> I do not provide an OB ptracer value -- but I am using OBCS prescribe
> so I thought this would be ok.   I am not providing an obcs_file so I
> figured the prescribe values would stay 0....hmmm.....I will look into
> the code more...
>
>  I think I will try ensuring the open boundary sensitivities drop to
> zero by hardcoding the ptracer field there with:
>  pFld(I,J)=0.0
> in obcs_apply_ptracer.F
> not sure if this will work....
>
> Also I do notice quite a bit of unphysical periodicity occurring in
> the sensitivity...probably related I would think...so maybe I will try
> setting the overlap regions to pFld=0 in obcs_apply_ptracer as well...
>
> Thanks for you help!
> -Matt
>
>
>
>
> On Dec 13, 2010, at 9:29 PM, Jean-Michel Campin wrote:
>
>> Hi Matt,
>>
>> I wonder if this is not related to the default OB values
>> (i.e., in case you don't provide an OB ptracer value,
>> it takes the value next to the OB), since, in a FWD run,
>> Oliver experienced some exponential growth of tracer
>> concentration next to the OB.
>>
>> Are you in this case (default OB values) ?
>>
>> Cheers,
>> Jean-Michel
>>
>> On Mon, Dec 13, 2010 at 08:07:51PM -0800, Matthew Mazloff wrote:
>>> Hello,
>>>
>>> When the sensitivity to passive tracer concentration hits an open
>>> boundary the solution blows up -- anyone seen this before?  Any
>>> ideas?
>>>
>>> Thanks
>>> Matt
>>>
>>>
>>>
>>> On Dec 9, 2010, at 2:00 PM, Matthew Mazloff wrote:
>>>
>>>> Hello,
>>>>
>>>> I am running a passive tracer adjoint -- all is fine but 2 things I
>>>> wanted to share
>>>>
>>>> 1)  to avoid recomp had to do
>>>> login4% diff obcs_ad_check_lev1_dir.h ../../../pkg/obcs/.
>>>> 67,70d66
>>>> < #ifdef ALLOW_OBCS_PRESCRIBE
>>>> < CADJ STORE OBNptr0 = comlev1, key = ikey_dynamics
>>>> < CADJ STORE OBNptr1 = comlev1, key = ikey_dynamics
>>>> < #endif /* ALLOW_OBCS_PRESCRIBE */
>>>> 74,77d69
>>>> < #ifdef ALLOW_OBCS_PRESCRIBE
>>>> < CADJ STORE OBSptr0 = comlev1, key = ikey_dynamics
>>>> < CADJ STORE OBSptr1 = comlev1, key = ikey_dynamics
>>>> < #endif /* ALLOW_OBCS_PRESCRIBE */
>>>> 81,84d72
>>>> < #ifdef ALLOW_OBCS_PRESCRIBE
>>>> < CADJ STORE OBEptr0 = comlev1, key = ikey_dynamics
>>>> < CADJ STORE OBEptr1 = comlev1, key = ikey_dynamics
>>>> < #endif /* ALLOW_OBCS_PRESCRIBE */
>>>> 88,91d75
>>>> < #ifdef ALLOW_OBCS_PRESCRIBE
>>>> < CADJ STORE OBWptr0 = comlev1, key = ikey_dynamics
>>>> < CADJ STORE OBWptr1 = comlev1, key = ikey_dynamics
>>>> < #endif /* ALLOW_OBCS_PRESCRIBE */
>>>>
>>>>
>>>> 2) ADJptracer is not written by default.  I attempted to add it to
>>>> adcommon.h and addummy_in_stepping.F, but for whatever reason the
>>>> output written was all zeros.  So I just hardcoded
>>>>     IF ( MOD((myIter-1),432).eq.0) THEN
>>>>       WRITE(suff,'(I10.10)') myIter
>>>>      CALL WRITE_FLD_XYZ_RL(
>>>>    &       'ADJptracer.',suff, adptracer, myIter, myThid)
>>>>     ENDIF
>>>> to subroutine adthermodynamics from ad_taf_output.f
>>>> and all seems ok...
>>>>
>>>>
>>>> Thought sharing this experience may help....
>>>> -Matt
>>>>
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> MITgcm-devel mailing list
>>>> MITgcm-devel at mitgcm.org
>>>> http://mitgcm.org/mailman/listinfo/mitgcm-devel
>>>
>>>
>>> _______________________________________________
>>> MITgcm-devel mailing list
>>> MITgcm-devel at mitgcm.org
>>> http://mitgcm.org/mailman/listinfo/mitgcm-devel
>>
>> _______________________________________________
>> MITgcm-devel mailing list
>> MITgcm-devel at mitgcm.org
>> http://mitgcm.org/mailman/listinfo/mitgcm-devel
>
>
> _______________________________________________
> MITgcm-devel mailing list
> MITgcm-devel at mitgcm.org
> http://mitgcm.org/mailman/listinfo/mitgcm-devel




More information about the MITgcm-devel mailing list