[Nek5000-users] Questions on turbChannel

nek5000-users at lists.mcs.anl.gov nek5000-users at lists.mcs.anl.gov
Wed Nov 30 08:56:39 CST 2016


Hello,

I have a few questions on the turbChannel example.

1) the ‘eddy viscosity ‘ is computed in the function eddy_visc and called in a loop over the elements of mesh 1. Inside the function eddy_visc there is the following piece of code:

     if (e.eq.nelv) then  ! planar avg and define nu_tau
     …
         ntot = nx1*ny1*nz1*nelv
         do i=1,ntot
            cdyn = 0
            if (den(i,1).gt.0) cdyn = 0.5*num(i,1)/den(i,1)
            cdyn = 0.16*0.16 ! max(cdyn,0.)   ! AS ALTERNATIVE, could clip ediff
            ediff(i,1) = param(2)+cdyn*dg2(i,1)*snrm(i,1)
         enddo
      endif

eddy that stores the eddy viscosity is updated when the last element of mesh 1 is called. Is there any reason why it should be done in this manner?

2) I am still confused over the differences between ‘ifsplit’, ‘ifexplvis’ and ‘ifstrs’. From the archive and the documentation I understand the following (please correct me if I am wrong):

  *   ‘ifexplvis’ is set to true when the user specified the viscosity coefficient in uservp. It does not required, however, the stress formation meaning the the diffusive term in the NS equations looks like \mu(x,t) \nabla^2 \vec{u}.
  *   when ‘ifsplit’ is set to true, the viscosity is split in a explicit part and an implicit part. If this correct, how and where are defined the explicit and implicit parts?
  *   ‘ifstrs’: when set to true, ‘ifexplvis’ and ‘if split’ do not have any effect.

3) could someone shed some light on the subroutine ‘set_ds_filt’ in turbChannel.usr, please? It seems to compute some sort of filter that is then used to compute M_{i,j} and L_{i,j}


Thanks,
Marco

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


More information about the Nek5000-users mailing list