[MITgcm-devel] Re: downslope pkg

Martin Losch Martin.Losch at awi.de
Tue Sep 9 08:57:50 EDT 2008


Hi Jean-Michel,

I agree with everything you said. I have nothing to say in my  
defense, except that I THOUGHT that packages_readparms was called  
after ini_depths etc. I was probably not attending class when this  
change was done, me culpa. However, packages_init_fixed is still done  
after ini_masks_etc, so that's probably the reason why I put the  
depth file into PARAMS.h/ini_depths.F to avoid having two  
shelfice_ini_* files. But as you say, we can:

1. replace the code in ini_masks_etc by a subroutine  
shelfice_ini_depth_etc (or so) which
     a. reads the topography file ( code from ini_depths.F )
     b. modifies hFacC (code from ini_masks_etc.F)
I don't think that that's pretty, but the present version isn't, either.
2. move shelficeFile from PARAMS.h to SHELFICE.h and data.shelfice
3. think about replacing kTopC with kSurfC, but as far as I remember,  
it is a little tricky as kTopC=0 (dry column) corresponds to kSurfC=Nr 
+1 and there is code such as
           K         = MAX(1,kTopC(I,J,bi,bj))
but otherwise these fields are identical.

I can do this (item 3 was on my internal list anyway, but way down  
the list), but what would be good name for such as subroutine?
shelfice_ini_depths.F
shelfice_ini_hFacC.F
???

Martin
On 9 Sep 2008, at 00:12, Jean-Michel Campin wrote:

> Hi Martin,
>
> I added something similar to what you proposed, testing for kSurfC
> which does not seem so different from kTopC, apart where the column
> is empty, but is available in standard GRID.h header file.
>
> I looked briefly to the interface between shelfice pkg and the
> main code, and think that with 1 more shelfice S/R call
> from the middle of ini_mask_etc.F (where hFacC is modified by
> R_shelice), we could remove the pieces of code in ini_depth.F and in
> ini_mask_etc.F and put them in this new S/R (just need to break
> the bi,bj loops in 2 blocks, in ini_mask_etc.F);
>
> Also, why is shelfIceFile in PARAMS.h and appears in parameter file  
> "data" ?
> A more logical place would be in SHELFICE.h and data.shelfice.
> At the time when shelfice pkg was checked-in, we already have (Oct  
> 2004)
> moved packages_readparms call before ini_depth call in  
> initialise_fixed.F
>
> Cheers,
> Jean-Michel
>
> On Fri, Sep 05, 2008 at 10:41:16PM +0200, Martin Losch wrote:
>> Hi Jean-Michel,
>> the masking is absolutely necessary for the shelfice package in the
>> current implementation (who gave this package this stoopid name, some
>> German idiot!), because otherwise the model integrates some  
>> ridiculous
>> density (for Theta=Salt=0, or even worse from some other arbitrary  
>> Theta
>> and Salt) from the top for phiHyd. When useShelfice=.true. you are
>> supposed to provide a reference pressure at the bottom of the ice  
>> shelf
>> and integrating phiHyd from the very top (k=1) is not necessary.  
>> JMD95P
>> and MDJFW should work with shelfice, too, for this reason.  I  
>> don't know
>> about the downSlope package. That one was not around, when I  
>> implemented
>> shelfice.
>> Without the masking, one would have to use if statements in the ij- 
>> loops
>> for the phiHyd intergration to determine, where the real  
>> intergration of
>> phiHyd is supposed to start; not good. Alternatively, one could  
>> only mask
>> alphaRho in the ice shelf, like this:
>>         IF ( useShelfIce ) THEN
>>          DO j=jMin,jMax
>>           DO i=iMin,iMax
>>            IF ( kTopC(I,J,bi,bj) .GE. k ) alphaRho(i,j) = alphaRho
>> (i,j)*maskC(i,j,k,bi,bj)
>>           ENDDO
>>          ENDDO
>>         ENDIF
>> Do you have a better idea?
>>
>> Martin
>>
>> On 5 Sep 2008, at 18:31, Jean-Michel Campin wrote:
>>
>>> Hi Michael,
>>>
>>> I found a problem with shelfice & down_slope pkgs:
>>> looks like useShelfIce is masking the density (in CALC_PHI_HYD)
>>> so that we will have a problem when using an EOS directly function
>>> of pressure (e.g.: JMD95P). I looked to
>>> MITgcm_contrib/high_res_cube/data.hr
>>> and it's not the case (EOS=JMD95Z).
>>> Can you confirm that you are not using an EOS directly function
>>> of pressure ?
>>>
>>> Otherwise, how is the test going ?
>>>
>>> I cc this to the devel list, so that Martin will know why I will
>>> bother him to remove this masking with useShelfIce ...
>>>
>>> Cheers,
>>> Jean-Michel
>>> _______________________________________________
>>> 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