[Nek5000-users] Questions in AXHELM and WLAPLACIAN

nek5000-users at lists.mcs.anl.gov nek5000-users at lists.mcs.anl.gov
Thu May 29 05:50:09 CDT 2014



Hi Emmanuel,

axhelm effects the weak Laplacian plus the mass matrix.

Specifically, if you wanted to solve:

(1)   -nabla . [ h1 * nabla ] u + h2 * u   =  f

with h1, h2, and f all functions of X=(x,y,z),
the discrete form would be:


(2)         A(h1) u + B(h2) u = B f

or

(3)         H u = B f

where A is the (h1-dependent stiffness matrix and
B(h2) is the h2-dependent mass matrix.

For the SEM, B is diagonal, so B(h2) = h2*B, where
we view h2 as a diagonal matrix.

In Nek5000, a matrix-vector product  w = Hu is effected via

       call axhelm (w,u,h1,h2,imesh,isd)

with w,u,h1,h2 being arrarys.   Here, imesh indicates
if you are on the fluid mesh or thermal mesh.  The fluid
mesh is a subset of the thermal mesh in the case of 
conjugate heat transfer between a fluid and a solid.
isd indicates which spatial direction is considered
in axisymmetric applications where u is a component
of a vector field.

Notice the sign of the Laplacian in Eq. (1) -- that may
help resolve your second question?  (There is a sign
change that ariss from the standard integration-by-parts
stepin the weak form.)

Paul


On Thu, 29 May 2014, nek5000-users at lists.mcs.anl.gov wrote:

> Dear nek5000 team,
>
> Could you help me with the 2 questions below? Thank you very much !
>
> 1) Concerning the routine “axhelm” in hmholtz.f. If I am right, one
> possibility of this routine can be the discretisation of the diffusion
> operator. However it is not clear to me if axhelm performs:
>
> a) vdiff  x   Laplacian(phi)
>
> or
>
> b) grad ( vdiff x grad (phi) )
>
> phi being the variable solved for (T or PS for example).
>
> So, is it actually a) or b) ?
>
>
> 2) In the routine wlaplacian in navier1.f, I am not sure to understand the
> consequence of the line:
>
> call sub2 (out,wrk,ntot)
>
> after the lines:
>
> call bcneusc(out,1) call axhelm(wrk,a,diff,h2,imesh,1)
>
> If I am right, this will change the sign in front of the diffusion operator,
> right?  Because in makeq.f, I am not sure that the line call
> add2(bq(1,1,1,1,ifield-1),w1,ntot)
>
> will actually assemble the RHS of the transport equation :  - (vtrans) x  U
> grad (phi)  +  grad ( vdiff x grad (phi) )
>
>
> Thank you for your help !
>
> Best regards, Emmanuel
>
>


More information about the Nek5000-users mailing list