[MITgcm-devel] seaice lsr

Martin Losch Martin.Losch at awi.de
Tue Sep 25 11:17:37 EDT 2007


sorry: too fast, if you for some reason you don't want this change, I  
can still implement it with a CPP-flag (eg. SEAICE_VECTORIZE_LSR).

Martin

On 25 Sep 2007, at 17:14, Martin Losch wrote:

> Hi there,
>
> I have found that the LSR solver is a little inconsistent (which  
> causes it to produce a slight assymetry with a symmetric domain and  
> forcing):
> the following lines:
>>           URT(I,J)=FXY(I,J,bi,bj)+AA3
>>      &          +UVRT1(I,J,bi,bj)*uIce(I,J-1,1,bi,bj)
>>      &          +UVRT2(I,J,bi,bj)*uIce(I,J+1,1,bi,bj)
> (and the corresponding ones for the vice equation) within a J-loop  
> cause URT to be computed from the updated uIce(I,J-1,1,bi,bj) and  
> the not yet updated uIce(I,J+1,1,bi,bj) (=uIce(I,J+1,3,bi,bj) at  
> this time). One could replace these lines by:
>>           URT(I,J)=FXY(I,J,bi,bj)+AA3
>>      &          +UVRT1(I,J,bi,bj)*uIce(I,J-1,3,bi,bj)
>>      &          +UVRT2(I,J,bi,bj)*uIce(I,J+1,3,bi,bj)
> which changes the results (lab_sea fails with cg2d=10), but then  
> the solution is symmetric, when it should be. Also this formulation  
> removes a dependency from the j-loop which impairs vectorization.  
> Can I change that?
>
> Martin
>
> _______________________________________________
> MITgcm-devel mailing list
> MITgcm-devel at mitgcm.org
> http://mitgcm.org/mailman/listinfo/mitgcm-devel




More information about the MITgcm-devel mailing list