[Nek5000-users] 'comp_vort3' in 2D

nek5000-users at lists.mcs.anl.gov nek5000-users at lists.mcs.anl.gov
Sun Apr 1 10:46:02 CDT 2018


Hi Saikat,


In retrospect, you can also do this directly by changing param(1) -- the density; and changing dt (if you desire to keep


    rho*(u^n - u^{n-1}) / dt


constant.


So, Nek5000 solves:


    rho ( du/dt + u.gradu) = remaining terms


You can see that modifying rho is all you need to do.


Note that "dt" is an independent parameter -- it is always set

to satisfy the governing stability criteria on the explicit treatment

of the advection term.


Give this some careful thought...


hth


Paul


________________________________
From: Nek5000-users <nek5000-users-bounces at lists.mcs.anl.gov> on behalf of nek5000-users at lists.mcs.anl.gov <nek5000-users at lists.mcs.anl.gov>
Sent: Sunday, April 1, 2018 3:18:37 AM
To: nek5000-users at lists.mcs.anl.gov
Subject: Re: [Nek5000-users] 'comp_vort3' in 2D



Hi Saikat,


Although I don't normally advocated modifying the source,  the best way in this case is probably to modify subroutine advab in navier1.f in /core.   Something like the following should work, where you supply your constant through a common block.


hth, Paul




      common /myscale_factor/  scale_nl


      NTOT1 = lx1*ly1*lz1*NELV

      CALL CONVOP  (TA1,VX)

      call cmult   (ta1,scale_nl,ntot1)

      CALL CONVOP  (TA2,VY)

      call cmult   (ta2,scale_nl,ntot1)

      CALL SUBCOL3 (BFX,BM1,TA1,NTOT1)

      CALL SUBCOL3 (BFY,BM1,TA2,NTOT1)

      IF (ldim.EQ.2) THEN

         CALL RZERO (TA3,NTOT1)

      ELSE

         CALL CONVOP  (TA3,VZ)

         call cmult   (ta3,scale_nl,ntot1)

         CALL SUBCOL3 (BFZ,BM1,TA3,NTOT1)

      ENDIF

C

________________________________
From: Nek5000-users <nek5000-users-bounces at lists.mcs.anl.gov> on behalf of nek5000-users at lists.mcs.anl.gov <nek5000-users at lists.mcs.anl.gov>
Sent: Sunday, March 25, 2018 8:47:39 AM
To: nek5000-users
Subject: Re: [Nek5000-users] 'comp_vort3' in 2D

Thanks for the clarification.

Saikat

Saikat Mukherjee,
PhD Student,
Paul Research Group - http://www.me.vt.edu/mpaul/
Engineering Science and Mechanics,
Virginia Tech.

On Sun, Mar 25, 2018 at 4:40 AM, <nek5000-users at lists.mcs.anl.gov<mailto:nek5000-users at lists.mcs.anl.gov>> wrote:
Hi,
if you look into the code you see that for 2D cases the result it stored in vort(:,1), even though it is of course the z-vorticity.

00791       if (if3d) then
00792 c        work1=dw/dy ; work2=dv/dz
00793            call dudxyz(work1,w,rym1,sym1,tym1,jacm1,1,2)
00794            call dudxyz(work2,v,rzm1,szm1,tzm1,jacm1,1,3)
00795            call sub3(vort(1,1),work1,work2,ntot)
00796 c        work1=du/dz ; work2=dw/dx
00797            call dudxyz(work1,u,rzm1,szm1,tzm1,jacm1,1,3)
00798            call dudxyz(work2,w,rxm1,sxm1,txm1,jacm1,1,1)
00799            call sub3(vort(1,2),work1,work2,ntot)
00800 c        work1=dv/dx ; work2=du/dy
00801            call dudxyz(work1,v,rxm1,sxm1,txm1,jacm1,1,1)
00802            call dudxyz(work2,u,rym1,sym1,tym1,jacm1,1,2)
00803            call sub3(vort(1,3),work1,work2,ntot)
00804       else
00805 c        work1=dv/dx ; work2=du/dy
00806            call dudxyz(work1,v,rxm1,sxm1,txm1,jacm1,1,1)
00807            call dudxyz(work2,u,rym1,sym1,tym1,jacm1,1,2)
00808            call sub3(vort,work1,work2,ntot)
00809       endif

Philipp



On 2018-03-25 00:49, nek5000-users at lists.mcs.anl.gov<mailto:nek5000-users at lists.mcs.anl.gov> wrote:
Hello neks,

I am using 'comp_vort3' for a 2D flow, with a forcing in x direction,

call comp_vort3 (vort, w1, w2, vx, vy, vz)

call outpost (vort(1,1), vort(1,2), vort(1,3), pr, t, 'vrt')


In this case, the x and y component of vorticity should be trivial, and only z component should remain. However I am getting a non-zero component of x-component, vort(1,1) while vort(1,2) and vort(1,3) are zero.

However if I add a z-direction, comp_vort3 returns a non-zero value of vort(1,3) and the x and y-components are zero, which should be the case.

So my question is, in 2D, does comp_vort3 return only one value which is in vort(1,1)? The vorticity fields in both cases look sort of similar.

Thanks,
Saikat


Saikat Mukherjee,
PhD Student,
Paul Research Group - http://www.me.vt.edu/mpaul/
Engineering Science and Mechanics,
Virginia Tech.


_______________________________________________
Nek5000-users mailing list
Nek5000-users at lists.mcs.anl.gov<mailto:Nek5000-users at lists.mcs.anl.gov>
https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users

_______________________________________________
Nek5000-users mailing list
Nek5000-users at lists.mcs.anl.gov<mailto:Nek5000-users at lists.mcs.anl.gov>
https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/nek5000-users/attachments/20180401/e1f89107/attachment.html>


More information about the Nek5000-users mailing list