[MITgcm-devel] seaice adjoint and EVP
Martin Losch
Martin.Losch at awi.de
Tue May 22 03:18:19 EDT 2007
Hi Jinlun,
the evp-solver is only in place for the C-grid. I don't have the time
to code the solver for the b-grid now. The b-grid code (for LSR) is
still working, but I have not kept it up to date, so there may be a
few thing different other than the different grids.
In general I though that the c-grid is perfect for evp as all the
discretizations fall in place naturally. Only for this \delta term
one needs to average from center to corner points and vice versa
(have a look at seaice_calc_strainrates and seaice_evp). However,
there may be issues with the coriolis terms (commonly a problem with
the c-grid).
Actually, Elizabeth told us that she masks ice velocities over open
water in CICE.
Now we are a little stuck, aren't we?
Martin
PS. I need to be able to reproduce these results myself (I haven't
been able to, yet), maybe I can debug the stuff this way. Via email
etc. it's quite demanding (o:
On 21 May 2007, at 19:15, Jinlun Zhang wrote:
> I wouldn't think C-grid is problematic with EVP as we have seen.
> But just to make sure, is it possible to use the original B-grid
> EVP to see if the same things occur? There was a B-grid ice model
> setup in place that may be used for doing B-grid.
> Better not zap out things over open ocean. Otherwise, discontinuity
> may occur and ocean may be screwed up.
> Jinlun
>
>>> Hi Martin,
>>>
>>>> 1. Are these figures all with with zMin = 0?
>>>
>> In this case it may be worth turning of individual terms in the
>> rhs of the momentum equations
>> 1. dphiSurf/dx and dphiSurf/dy (in seaice_dynsolver)
>> 2. surface wind stress (taux/y=0 in seaice_get_dynforcing)
>> 3. ice-ocean stress (DWATN in seaice_evp)
>> 4. Coriolis
>> 5. stressDivergence
>> 4 and 5 should be zero over open ocean anyway so I do not see how
>> these terms can lead to the stripes.
>> We should get to the bottom of what is causing these stripes.
>> that way we can probably understand the noise in the ice fields,
>> too.
>>
>>>
>>> Yes, all the figures and results under
>>> http://ecco2.jpl.nasa.gov/data1/arctic/output/tests/
>>> (except for the oldtest subdirectory) are with zMin=0.
>>>
>>>> 2. Do you have an EVP run that does not blow up at all
>>>> (regardless of noise)?
>>>
>>> I have not run any of the zMin=0/SEAICEuseFlooding=.true. tests
>>> out for very
>>> long, but I am almost certain that none of these new
>>> integrations will crash,
>>> including the SEAICE_deltaTevp=60.
>>> The crashes had to do with snow accumulation and could happen to
>>> both LSR or to
>>> EVP solutions.
>>
>> That's good news. It mean that we can (in principle) maskRHS flag
>> and not worry about the stripes.
>>
>>>
>>>> 3. What's the convergence criterion for LSR, and how many
>>>> interations do you allow/do? In other words how close is the
>>>> LSR solution to VP?
>>>
>>>
>>> LSR_ERROR = 2e-4,
>>> SOLV_MAX_ITERS=1500
>>
>> That's not very much, is it? For an accurate VP solution I would
>> put LSR_ERROR = 1e-7 to 1e-13, right?
>>
>>>
>>>> c. the same is true for the wind-ice/ocean-ice stress terms
>>>> which in involve
>>>> averaging perpendicular to the stripes (unless the turning
>>>> angle is not
>>>> equal to zero, in which case there is also averaging in the
>>>> other directions,
>>>> but you don't do that, do you?).
>>>
>>>
>>> No I use SEAICE_airTurnAngle=SEAICE_waterTurnAngle=0.
>>
>> Good.
>>
>>>
>>>> About question 3 (is it really a VP solution): Could you
>>>> diagnose SIsigI and SIsigII (snapshots!!!! I guess one is
>>>> enough) for all (or some) solutions and
>>>> plot them (plot(SIsigII(:),SIsigI(:),'x')? These should be the
>>>> principle components of sigma normalized by the strength/
>>>> pressure P.
>>>
>>>
>>> With SEAICE_dumpFreq, SIGMA1, SIGMA2, and SIGMA12 are diagnosed
>>> by default for
>>> the EVP solutions but not for LSR. Are these the same as SIsigI
>>> and SIsigII?
>>> Figure for SIGMA1, SIGMA2 for EVP solution is here:
>>> http://ecco2.jpl.nasa.gov/data1/arctic/output/tests/figs/
>>> SIGMA2232.ps
>>> Does it look as expected?
>>
>> sigma1/2/12 are not the principle stress components. I have added
>> diagnostics that are called SIsigI and SIsigII, which is what you
>> want. In principle you could computed them yourself (from snapshots):
>> SIsigI = 0.5*(sigma1 + sqrt(sigma2^2 + 4*sigma12^2)/Press
>> SIsigII = 0.5*(sigma1 - sqrt(sigma2^2 + 4*sigma12^2)/Press
>>
>> Press = max(1.e-13,Pstar * HEFF *exp( -20*(1-AREA)));
>>
>> see seaice_do_diags.F (and seaice_dynsolver.F)
>>
>>>
>>>> I am also a little concerned that the LSR and EVP solutions
>>>> look so different
>>>> in the ice-covered area, can that be attributed to that
>>>> different boundary
>>>> conditons? Can you try a run with no slip for the evp solver?
>>>
>>>
>>> Is LSR no slip by default? How do you specify no slip for evp
>>> solver?
>>
>> LSR is half slip and that's hardwired. I didn't want to bother
>> this the boundary conditions if EVP works, because it's so much
>> simpler to do that in EVP. But now I may have to reconsider this
>> decision.
>> EVP is free slip by default. SEAICE_no_slip = .true. makes it no
>> slip.
>>
>> Martin
>>
>> _______________________________________________
>> MITgcm-devel mailing list
>> MITgcm-devel at mitgcm.org
>> http://mitgcm.org/mailman/listinfo/mitgcm-devel
>
>
> --
>
> Jinlun Zhang
> Polar Science Center, Applied Physics Laboratory
> University of Washington, 1013 NE 40th St, Seattle, WA 98105-6698
>
> Phone: (206)-543-5569; Fax: (206)-616-3142
> zhang at apl.washington.edu
> http://psc.apl.washington.edu/pscweb2002/Staff/zhang/zhang.html
>
>
>
>
> _______________________________________________
> MITgcm-devel mailing list
> MITgcm-devel at mitgcm.org
> http://mitgcm.org/mailman/listinfo/mitgcm-devel
More information about the MITgcm-devel
mailing list