[MITgcm-devel] problems with pickup and CD code
Martin Losch
Martin.Losch at awi.de
Mon Aug 17 02:32:33 EDT 2009
Hi Samar,
for cd_code it should be very easy to fix, this is what did it for the
case of the pkg/seaice:
<http://dev.mitgcm.org/cgi-bin/viewcvs.cgi/MITgcm/pkg/seaice/seaice_init_varia.F.diff?r1=1.25&r2=1.26&only_with_tag=MAIN
>
you might need to include a not.useOffline, but I don't know exactly
what coe is actually excluded with this flag (probably pkg/seaice
needs this, too).
Martin
On Aug 16, 2009, at 10:45 PM, Samar Khatiwala wrote:
> Hi Jean-Michel,
>
> Thanks for looking into it. This is such a useful feature that I
> hope it gets extended to all pickups (and at least this
> particular bug with pkg cd_code gets fixed in the near future).
>
> Thanks,
>
> Samar
>
> On Aug 16, 2009, at 4:33 PM, Jean-Michel Campin wrote:
>
>> Hi Samar,
>>
>> I did take a look at this "pickupSuff" recently, and it seems
>> to me that this special case (using pickupSuff with nIter0 = 0 or
>> startTime=0) that Alistair added is only implemented for the main
>> pickup files (which is not very logical).
>> I aggree that this should be either extended to all pickups or
>> removed, and you just provide a good argument to use it.
>>
>> Cheers,
>> Jean-Michel
>>
>> On Sun, Aug 16, 2009 at 12:26:23PM -0400, Samar Khatiwala wrote:
>>> Hi,
>>>
>>> I encountered a problem while attempting to restart a run from a
>>> pickup
>>> file with nIter0=0 and pickupSuff='0000000000'.
>>> The problem is that in S/R CD_CODE_INI_VARS the following lines:
>>>
>>> IF ( nIter0.NE.0 ) THEN
>>> CALL CD_CODE_READ_PICKUP( nIter0, myThid )
>>> ENDIF
>>>
>>> prevent the pickup_cd file from being read. Is this the intended
>>> behavior?
>>>
>>> I thought the point of pickupSuff was that one could rename the
>>> iteration numbers of pickup files (e.g., when going from
>>> asynchronous to synchronous time stepping which requires changing
>>> the
>>> time step) so as to be able to do a clean restart.
>>> However, because of the above, I get different results when starting
>>> from the exact same pickup files, but with one of them
>>> renamed. (I could of course set nIter0 to something other than 0,
>>> but
>>> that would partially defeat the purpose of the flexibility
>>> that pickupSuff provides.)
>>>
>>> S/R INI_FIELDS correctly treats this situation by having the
>>> following:
>>>
>>> C Set model variables to initial/restart conditions
>>> IF ( startTime .EQ. baseTime .AND. nIter0 .EQ. 0
>>> & .AND. pickupSuff .EQ. ' ' ) THEN
>>> CALL INI_VEL( myThid )
>>>
>>> etc
>>>
>>> ELSEIF ( .NOT.useOffLine ) THEN
>>> CALL READ_PICKUP( nIter0, myThid )
>>>
>>> ENDIF
>>>
>>> Is there a reason why S/R CD_CODE_INI_VARS does not have a similar
>>> IF
>>> (... pickupSuff .NE. ' ' ...)
>>>
>>> Thanks,
>>>
>>> Samar
>>>
>>>
>>> _______________________________________________
>>> 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