[Nek5000-users] hpts and pressure

nek5000-users at lists.mcs.anl.gov nek5000-users at lists.mcs.anl.gov
Tue Jun 14 11:18:06 CDT 2011


Hi

You are right, the pressure is not mapped automatically. This issue
was already discussed in
https://lists.mcs.anl.gov/mailman/htdig/nek5000-users/2010-May/000584.html.
At the moment there is only a trigger to map the pressure in case we
are dumping a field file

@Paul: I am not sure where we should trigger the pressure mapping but
the way it's implement now is error prone.

-Stefan

On 6/14/11, nek5000-users at lists.mcs.anl.gov
<nek5000-users at lists.mcs.anl.gov> wrote:
> Hello,
>
> It appears my hypothesis was correct.  I post the following for
> reference to any users who run into the same issue in the future (and
> I apologize in advance if this question has already been answered
> before, I didn't see anything in my search, but that doesn't mean it
> wasn't there).
>
> 1)  I included the following in the variable declarations of userchk()
>
>       common /scrcg/ pm1(lx1,ly1,lz1,lelv)  ! Mapped pressure
>       real pa(lx1,ly2,lz2), pb(lx1,ly1,lz2) ! Working arrays for mappr
>
> 2) Then, before I call hpts, I call mappr
>
>       if (mod(istep,10).eq.0) then   ! Only call this every 10th step
>          call mappr(pm1,pr,pa,pb)   ! Map pressure first
>          call hpts
>       endif
>
> For my case, I didn't want to call hpts every time step to prevent
> hpts.out from becoming too large.
>
> I haven't run this for too long, but on a preliminary basis the
> results look good.  It seems that the scrcg common block must be
> included in userchk for this to work, as pm1 isn't a part of any of
> the standard "include" files.
>
> Developers and other users, feel free to chime in if there is a more
> efficient or elegant solution to this problem.
>
> Thanks,
>
> Josh
>
> On Mon, Jun 13, 2011 at 6:42 PM,  <nek5000-users at lists.mcs.anl.gov> wrote:
>> Hi Josh,
>>
>> Yes, it seems to me that either htps() needs modification for Pn-Pn-2
>> pressure points or pr() should be mapped to pm1() before calling htps() as
>> you suggested -- something along the lines for .not.ifsplit in
>> prepot.f:219
>>
>>         if (ifsplit) then
>>            call copy(pm1,pr,ntot1)
>>         else
>>            do 1000 e=1,nelv
>>               call mxm (ixm21,nx1,pr(1,1,1,e),nx2,pa(1,1,1),nyz2)
>>               do 100 iz=1,nz2
>>                  call mxm (pa(1,1,iz),nx1,iytm21,ny2,pb(1,1,iz),ny1)
>>  100          continue
>>               call mxm (pb(1,1,1),nxy1,iztm21,nz2,pm1(1,1,1,e),nz1)
>>  1000       continue
>>         endif
>>
>> Best,
>> Aleks
>>
>>
>> ----- Original Message -----
>> From: nek5000-users at lists.mcs.anl.gov
>> To: "nek5000-users" <nek5000-users at lists.mcs.anl.gov>
>> Sent: Monday, June 13, 2011 5:29:50 PM
>> Subject: [Nek5000-users] hpts and pressure
>>
>> Hello Neks,
>>
>> I am trying to output pressure data at various points using the hpts
>> routine.
>>
>> The values that are output for the first time step look ok, but all
>> subsequent time steps seem to give garbage (i.e. the pressures given
>> in hpts.out are way different that what is given by visualizing
>> pressure in VisIt).  I know previously that this was an issue for
>> someone and it was thought that passive scalars may be messing the
>> hpts output up, but in my case I don't output temperature or pressure.
>>
>> I looked at the hpts routine and noticed that it uses pm1 when it is
>> stacking the field variables into the working array.  Since I am using
>> a Pn-Pn-2 formulation for my case, do I need to use the mappr
>> subroutine in my usrchk to map the pressure from mesh 2 to mesh 1
>> before calling hpts()?
>>
>> I'm assuming the issue arises because I am calling hpts more
>> frequently than I am outputing field files, and thus perhaps pm1 isn't
>> properly being updated (or perhaps it may have already been
>> destroyed).
>>
>> Thanks,
>>
>> --
>> Josh Camp
>>
>> "All that is necessary for the triumph of evil is that good men do
>> nothing" -- Edmund Burke
>> _______________________________________________
>> Nek5000-users mailing list
>> 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
>> https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users
>>
>
>
>
> --
> Josh Camp
>
> "All that is necessary for the triumph of evil is that good men do
> nothing" -- Edmund Burke
> _______________________________________________
> Nek5000-users mailing list
> Nek5000-users at lists.mcs.anl.gov
> https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users
>



More information about the Nek5000-users mailing list