[MITgcm-support] MITgcm-support Digest, Vol 244, Issue 2
赖燕红
yhlai at pku.edu.cn
Tue Oct 10 21:54:40 EDT 2023
Hi Martin,
I think your suggestions will be very helpful for me, I did not know the rbcs package before, and it seems to realize my goal.
I will try the rbcs package and ksol both, hope they can work.
Thanks you very much!
Best,
Yanhong
> -----原始邮件-----
> 发件人: mitgcm-support-request at mitgcm.org
> 发送时间: 2023-10-11 00:00:03 (星期三)
> 收件人: mitgcm-support at mitgcm.org
> 抄送:
> 主题: MITgcm-support Digest, Vol 244, Issue 2
>
> Send MITgcm-support mailing list submissions to
> mitgcm-support at mitgcm.org
>
> To subscribe or unsubscribe via the World Wide Web, visit
> http://mailman.mitgcm.org/mailman/listinfo/mitgcm-support
> or, via email, send a message with subject or body 'help' to
> mitgcm-support-request at mitgcm.org
>
> You can reach the person managing the list at
> mitgcm-support-owner at mitgcm.org
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of MITgcm-support digest..."
>
>
> Today's Topics:
>
> 1. How to reduce zonal velocity to zero in regions where
> temperature is lower than a critical value? (???)
> 2. Re: How to reduce zonal velocity to zero in regions where
> temperature is lower than a critical value? (Martin Losch)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Tue, 10 Oct 2023 10:05:31 +0800 (GMT+08:00)
> From: ??? <yhlai at pku.edu.cn>
> To: mitgcm-support at mitgcm.org
> Subject: [MITgcm-support] How to reduce zonal velocity to zero in
> regions where temperature is lower than a critical value?
> Message-ID: <21f99bbb.3a558.18b17550ad9.Coremail.yhlai at pku.edu.cn>
> Content-Type: text/plain; charset="utf-8"
>
> Hello everyone!
>
>
>
>
> I want to reduce u and v to zero in regions where the temperature is lower than 1700 K.
>
> I tried to realize this goal by adding a linear drag in model/src/apply_forcing.F,
>
> and the following codes are added in the subroutine APPLY_FORCING_U
>
>
>
>
> %%%%%%%%%%%%
>
> _RL T_sol
> _RL k_sol
>
> T_sol = 1700
> k_sol = 1/86400
>
>
>
>
> DO j=0,sNy+1
> DO i=1,sNx+1
> IF ( theta(i,j,k,bi,bj) .LE. T_sol ) THEN
> gU_arr(i,j) = gU_arr(i,j)
> & -uVel(i,j,k,bi,bj)*k_sol
> ENDIF
> ENDDO
> ENDDO
> %%%%%%%%%%%
> But these codes seems do not work, and results are the same to the case without these additional codes,
> that is to say U in regions with T<T_sol did not reduce to zero,
> Do you know what's wrong with these codes?
> Or is it possible to directly set the velocity equal to zero in regions where temperature below 1700 K ?
>
>
> Looking forward to your suggestions! Thanks in advance.
>
> Best,
>
> Yanhong
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: <http://mailman.mitgcm.org/pipermail/mitgcm-support/attachments/20231010/622bbadd/attachment-0001.html>
>
> ------------------------------
>
> Message: 2
> Date: Tue, 10 Oct 2023 09:50:13 +0200
> From: Martin Losch <Martin.Losch at awi.de>
> To: MITgcm Support <mitgcm-support at mitgcm.org>
> Subject: Re: [MITgcm-support] How to reduce zonal velocity to zero in
> regions where temperature is lower than a critical value?
> Message-ID: <7CE2EE1A-ABA6-489A-AE90-551333D1D8B9 at awi.de>
> Content-Type: text/plain; charset="utf-8"
>
> Hi Yanhong,
>
> I think that you have the right idea. Your term looks like a restoring term to zero (0 - vVel)*ksol and provided that you actually use apply_forcing_u (check if the preprocessed file appy_forcing.f contains your code still), it should work. Try with k_sol=1/deltaT (which should almost be like setting uVel to zero in the absence of other forcing) or k_sol = 1/(2*deltaT) to see if there?s any effect.
>
> A different way without editing the main code would be to use the rbcs package, where you could specify a field of ksol and add a condition in rbcs_add_tendency.F, maybe that?s a little ?safer??
>
> Martin
>
>
> > On 10. Oct 2023, at 04:05, ??? <yhlai at pku.edu.cn> wrote:
> >
> > Hello everyone!
> >
> >
> >
> > I want to reduce u and v to zero in regions where the temperature is lower than 1700 K.
> >
> > I tried to realize this goal by adding a linear drag in model/src/apply_forcing.F,
> >
> > and the following codes are added in the subroutine APPLY_FORCING_U
> >
> >
> >
> > %%%%%%%%%%%%
> >
> > _RL T_sol
> > _RL k_sol
> >
> > T_sol = 1700
> > k_sol = 1/86400
> >
> >
> >
> > DO j=0,sNy+1
> > DO i=1,sNx+1
> > IF ( theta(i,j,k,bi,bj) .LE. T_sol ) THEN
> > gU_arr(i,j) = gU_arr(i,j)
> > & -uVel(i,j,k,bi,bj)*k_sol
> > ENDIF
> > ENDDO
> > ENDDO
> > %%%%%%%%%%%
> > But these codes seems do not work, and results are the same to the case without these additional codes,
> > that is to say U in regions with T<T_sol did not reduce to zero,
> > Do you know what's wrong with these codes?
> > Or is it possible to directly set the velocity equal to zero in regions where temperature below 1700 K ?
> >
> >
> > Looking forward to your suggestions! Thanks in advance.
> >
> > Best,
> >
> > Yanhong
> > _______________________________________________
> > MITgcm-support mailing list
> > MITgcm-support at mitgcm.org
> > http://mailman.mitgcm.org/mailman/listinfo/mitgcm-support
>
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: <http://mailman.mitgcm.org/pipermail/mitgcm-support/attachments/20231010/caa74289/attachment-0001.html>
>
> ------------------------------
>
> Subject: Digest Footer
>
> _______________________________________________
> MITgcm-support mailing list
> MITgcm-support at mitgcm.org
> http://mailman.mitgcm.org/mailman/listinfo/mitgcm-support
>
>
> ------------------------------
>
> End of MITgcm-support Digest, Vol 244, Issue 2
> **********************************************
More information about the MITgcm-support
mailing list