[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