[MITgcm-devel] [acondron at whoi.edu: Re: advection of freshwater from ice]
Jean-Michel Campin
jmc at ocean.mit.edu
Mon Jun 11 14:05:01 EDT 2007
Hi,
I forward this since I think Alan is not on the mitgcm-devel list,
and I am not too much familiar with advect.F subroutine.
Jean-Michel
----- Forwarded message from Alan Condron <acondron at whoi.edu> -----
Date: Mon, 11 Jun 2007 12:11:38 -0400
From: Alan Condron <acondron at whoi.edu>
To: Jean-Michel Campin <jmc at ocean.mit.edu>
Subject: Re: advection of freshwater from ice
Hi Jean-Michel.
You are right. I'm using SEAICEadvScheme=2, which is not
multidimensionsal ice advection, and means the new code I entered is
never read. i'll move the code to the advect.F routine.
out of curiosity, what is the difference between the schemes? Is
SEAICEadvScheme=2 an older version, and is it 'okay' to keep using this?
Alan
Jean-Michel Campin wrote:
>Hi Alan,
>
>two things:
>- which advection scheme are you using for HEFF ? (should be
>SEAICEadvSchHeff parameter, in data.seaice, or if not in
>data.seaice, then it's SEAICEadvScheme which default is 2,
>but if you want to check, all are written in the STDOUT)
>if 33 or 77 or 1 or 20 , then it seems OK to fill the
>diagnostics after
>
>> CALL SEAICE_ADVECTION(
>> I GAD_HEFF, SEAICEadvSchHeff,
>>
>and before:
>
>> CALL SEAICE_ADVECTION(
>> I GAD_AREA, SEAICEadvSchArea,
>>
>but if you are using 2 (= default ?), then you would need
>to add stuff in the subroutine "ADVECT", that is called
>from seaice_advdiff.F:
>
>> IF ( SEAICEadvHEff ) CALL ADVECT( uc, vc, HEFF, HEFFM, myThid )
>>
>
>Cheers,
>Jean-Michel
>
>On Fri, Jun 08, 2007 at 05:28:50PM -0400, Alan Condron wrote:
>
>>Jean-Michel
>>
>>I'm having some trouble getting a new diagnsotic for the flux of
>>freshwater from ice.
>>
>>In seaice_advdiff.F I declared the new variables:
>>
>> _RL FrwIceX (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
>>C Freshwaer advection from ice (zonal)
>> _RL FrwIceY (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
>>C Freshwater advection from ice (meridional)
>>
>>then on line 245 (where we looked last week) added:
>>
>>C- store advective fluxes of freshwater from seaice: afx,afy (*rho_ice)
>>#ifdef ALLOW_DIAGNOSTICS
>> DO J=1,sNy
>> DO I=1,sNx
>> FrwIceX(I,J) = afx(I,J)*0.920 _d 0
>> FrwIceY(I,J) = afx(I,J)*0.920 _d 0
>> ENDDO
>> ENDDO
>>#endif
>>
>>and then after the same calculation, but for snow (not included yet),
>>I've added
>>
>>
>>#ifdef ALLOW_DIAGNOSTICS
>> IF ( useDiagnostics ) THEN
>> CALL DIAGNOSTICS_FILL(FrwIceX,'ADVx_ice',0,1 ,2,bi,bj,myThid)
>> CALL DIAGNOSTICS_FILL(FrwIceY,'ADVy_ice',0,1 ,2,bi,bj,myThid)
>> ENDIF
>>#endif
>>
>>
>>Finally in seaice_diagnostics_init.F I added:
>>
>> diagName = 'ADVx_ice'
>> diagTitle = 'Zonal freshwater advection from seaice'
>> diagUnits = 'm^3/s '
>> diagCode = 'SM M1 '
>> CALL DIAGNOSTICS_ADD2LIST( diagNum,
>> I diagName, diagCode, diagUnits, diagTitle, myThid )
>>
>>and similar code for ADVy_ice
>>
>>Running writes out files but all values are zero. Any ideas why?
>>
>>Alan
>>
>>ps. the wedding was excellent, and English beer is still very good!!
>>
>>
>>
>
>
----- End forwarded message -----
More information about the MITgcm-devel
mailing list