[MITgcm-devel] selectP_inEOS_Zc

Martin Losch Martin.Losch at awi.de
Wed Jan 17 03:51:43 EST 2018


OK, thanks,

M.

> On 17. Jan 2018, at 03:17, Jean-Michel Campin <jmc at mit.edu> wrote:
> 
> Hi Martin,
> 
> I have a modified version of ini_psurf.F that should fix this initialisation
> problem. I tested with TAF and seems OK. I will check-in this fix tomorrow.
> 
> Cheers,
> Jean-Michel
> 
> On Tue, Jan 16, 2018 at 12:14:55PM -0500, Jean-Michel Campin wrote:
>> Hi Martin,
>> 
>> Adding this in ini_linear_phisurf.F is an option, but I would prefer in ini_psurf.F
>> since it fit better in initialise_varia section (rather than in initialise_fixed).
>> 
>> An other thing I was going to check is how this goes through TAF.
>> 
>> And regarding this point:
>>> What I still do not understand: Why is the loadAnomaly in phi0Surf for selectP_inEOS_Zc=0 but not for selectP_inEOS_Zc=2?
>> It's not very clear to me what you exactly mean: with selectP_inEOS_Zc=0 the
>> pressure that enter EOS is very simple (-g*rhoConst*z) and is the same 
>> formula everywhere, i.e., inside the ice-tongue or below it or in open ocean.
>> So it does not matter (for p in EOS) if loadAnomaly is (correctly) added to phi0Surf or not.
>> But when we compute the hydrostatic pressure (for the momentum), then loadAnomaly
>> is correctly added to phi0Surf (from external_forcing_surf.F -> CALL SHELFICE_FORCING_SURF)
>> and accounted for in calc_grad_phi_hyd.F (and in diags_phi_hyd.F, relevant also 
>> for selectP_inEOS_Zc=2).
>> 
>> Cheers,
>> Jean-Michel
>> 
>> On Tue, Jan 16, 2018 at 05:39:16PM +0100, Martin Losch wrote:
>>> Hi Jean-Michel,
>>> 
>>> wouldn???t it be better to add this in ini_linear_psurf.F where phi0surf is initialized (to zero)?
>>> Just because in ini_psurf.F, there is no mention of phi0surf.
>>> 
>>> Martin
>>> 
>>> 
>>>> On 16. Jan 2018, at 09:55, Martin Losch <Martin.Losch at awi.de> wrote:
>>>> 
>>>> Hi Jean-Michel,
>>>> 
>>>> I agree that it would be best to add the shelficeLoadAnomaly to phi0surf already in ini_psurf.F 
>>>> Would you like me to do that? It???s not going to change any verification results, because we don???t use any nonlinear pressure (selectP_inEOS_Zc) with the shelfice-tests (in isomip).
>>>> 
>>>> What I still do not understand: Why is the loadAnomaly in phi0Surf for selectP_inEOS_Zc=0 but not for selectP_inEOS_Zc=2?
>>>> 
>>>> Martin
>>>> 
>>>>> On 16. Jan 2018, at 03:25, Jean-Michel Campin <jmc at mit.edu> wrote:
>>>>> 
>>>>> Hi Martin,
>>>>> 
>>>>> It seems that you found the problem with S/R INI_PRESSURE & selectP_inEOS_Zc=2,
>>>>> and I have the impression that this problem was there very early on (when 
>>>>> pkg/shelfice was added); I thought about this (e.g. in this commit message:
>>>>> http://mailman.mitgcm.org/pipermail/mitgcm-cvs/2013-April/027805.html )
>>>>> but never fixed it.
>>>>> 
>>>>> I don't think it would be nice to add a call to shelfice_forcing_surf in the
>>>>> initialisation part, but may be we could just copy the relevant part, lines 124-131
>>>>> of shelfice_forcing_surf.F at the bottom of ini_psurf.F (with proper #ifdef and
>>>>> IF ( useShelfIce ) THEN ...), which is called just before INI_PRESSURE ?
>>>>> Since there is already some pkg/cd_code pieces in ini_psurf.F, would not be
>>>>> too bad to have also few pkg/shelfice bits there.
>>>>> 
>>>>> Cheers,
>>>>> Jean-Michel
>>>>> 
>>>>> On Fri, Jan 12, 2018 at 12:27:04PM +0100, Martin Losch wrote:
>>>>>> Hi Jean-Michel,
>>>>>> 
>>>>>> I still don???t quite understand why phiHyd.00000000.t001.nc are different for different selectP_inEOS_Zc, but I think it has to do with ini_pressure.F where totPhiHyd=0 initially and phi0surf does not yet contain the contribution from SHELFICEloadAnomaly. This contribution is only added in shelfice_forcing_surf, which is called from external_forcing_surf after the initialisation (not why this contribution is actually there, when selectP_inEOS_Zc=0) . Anyway, when I include a call shelfice_forcing_surf at the beginning of ini_pressure, I get the appropriate value of totPhiHyd in the ice shelf (and not zero) already in ini_pressure (which is probably necessary to compute the correct pressure). 
>>>>>> 
>>>>>> I now think, that the different totPhiHyd???s in phiHyd.*.nc are not very relevant to the balance problem, because the diagnostics PHIHYD (which are filled in dynamics where the gradients of phi0surf matter) are actually independent of selectP_inEOS_Zc.
>>>>>> 
>>>>>> The balancing problem remains to be solved. It has very likely to do with the vertical integration of phiHyd in the code and in the ???gendata??? script.
>>>>>> 
>>>>>> Martin
>>>>>> 
>>>>>>> On 11. Jan 2018, at 19:42, Jean-Michel Campin <jmc at mit.edu> wrote:
>>>>>>> 
>>>>>>> Hi Martin,
>>>>>>> 
>>>>>>> I will take a look at this soon, and will let you know.
>>>>>>> 
>>>>>>> Cheers,
>>>>>>> Jean-Michel
>>>>>>> 
>>>>>>> On Thu, Jan 11, 2018 at 05:20:34PM +0100, Martin Losch wrote:
>>>>>>>> Hi Jean-Michel,
>>>>>>>> 
>>>>>>>> Dustin and I are trying to debug his configuration with the shelfice package. We are struggling to make the initial conditions ???balance??? (i.e. not have large initial adjustments). 
>>>>>>>> I can do it for eosType=???JMD95z???, but not for JMD95p and MDJWF. The latter two use selectP_inEOS_Zc = 2 and the former uses 0 (very simple pressure = g*rho*zc)
>>>>>>>> When I look at the results of phiHyd (i.e. totPhiHyd as stored in phiHyd.*.nc), then I see that for selectP_inEOS_Zc = 2, phiHyd = 0 within the ice shelf, but for selectP_inEOS_Zc = 0 is corresponds to the value that is prescribed in SHELFICEloadAnomalyFile. I am afraid, that as a consequence, the phiHyd at the bottom of the ice shelf is not correct for selectP_inEOS_Zc = 2 (at least it looks like that in timestep 0: there???s a lateral gradient that I want to avoid with prescribing SHELFICEloadAnomaly).
>>>>>>>> 
>>>>>>>> Can you remember, why there is this different behavior for the different selectP_inEOS_Zc?
>>>>>>>> I would expect the totPhiHyd to have the contribution of SHELFICEloadAnomalyFile (in the end it???s added as phi0surf in diags_phiHyd) in all cases.
>>>>>>>> 
>>>>>>>> Martin
>>>>>>>> 
>>>>>>>> _______________________________________________
>>>>>>>> MITgcm-devel mailing list
>>>>>>>> MITgcm-devel at mitgcm.org
>>>>>>>> http://mailman.mitgcm.org/mailman/listinfo/mitgcm-devel
>>>>>>> _______________________________________________
>>>>>>> MITgcm-devel mailing list
>>>>>>> MITgcm-devel at mitgcm.org
>>>>>>> http://mailman.mitgcm.org/mailman/listinfo/mitgcm-devel
>>>>>> 
>>>>>> _______________________________________________
>>>>>> MITgcm-devel mailing list
>>>>>> MITgcm-devel at mitgcm.org
>>>>>> http://mailman.mitgcm.org/mailman/listinfo/mitgcm-devel
>>>>> _______________________________________________
>>>>> MITgcm-devel mailing list
>>>>> MITgcm-devel at mitgcm.org
>>>>> http://mailman.mitgcm.org/mailman/listinfo/mitgcm-devel
>>>> 
>>>> _______________________________________________
>>>> MITgcm-devel mailing list
>>>> MITgcm-devel at mitgcm.org
>>>> http://mailman.mitgcm.org/mailman/listinfo/mitgcm-devel
>>> 
>>> _______________________________________________
>>> MITgcm-devel mailing list
>>> MITgcm-devel at mitgcm.org
>>> http://mailman.mitgcm.org/mailman/listinfo/mitgcm-devel
>> _______________________________________________
>> MITgcm-devel mailing list
>> MITgcm-devel at mitgcm.org
>> http://mailman.mitgcm.org/mailman/listinfo/mitgcm-devel
> _______________________________________________
> MITgcm-devel mailing list
> MITgcm-devel at mitgcm.org
> http://mailman.mitgcm.org/mailman/listinfo/mitgcm-devel



More information about the MITgcm-devel mailing list