<div dir="ltr">Hi,<div><br></div><div>You can make it much simpler! Simply do for instance:</div><div><br></div><div>real work1(lx1,ly1,lz1,lelt), work2(lx1,ly1,lz1,lelt), work3(lx1,ly1,lz1,lelt)</div><div><br></div><div>... compute your dtdx dtdy dtdz</div>
<div><br></div><div>call opcopy(work1,work2,work3,vx,vy,vz) ! Save vx vy vz for later</div><div>call opcopy(vx,vy,vz,dtdx,dtdy,dtdz) ! Save dtdx into vx for the hpts output</div><div>call hpts</div><div>call opcopy(vx,vy,vz,work1,work2,work3) ! Restore vx vy vz</div>
<div><br></div><div>That should do the trick I guess.</div><div><br></div><div>Cheers,</div><div>JC</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">2014-06-15 9:07 GMT+02:00 <span dir="ltr"><<a href="mailto:nek5000-users@lists.mcs.anl.gov" target="_blank">nek5000-users@lists.mcs.anl.gov</a>></span>:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
I need to monitor scalar gradient (scalar is modelled with temperature as in examples.pdf).<br>
So I have inserted in USERCHK<br>
parameter (lt=lx1*ly1*lz1*lelt)<br>
common /ilgrad/ dtdx(lt),dtdy(lt),dtdz(lt)<br>
if ((mod(istep,iostep).eq.0).and.<u></u>(istep.ge.iostep)) then<br>
call gradm1(dtdx,dtdy,dtdz,t)<br>
endif<br>
call hpts()<br>
<br>
Next there are two options to monitor a quantity<br>
1. in .rea file like<br>
***** HISTORY AND INTEGRAL DATA *****<br>
001 POINTS. Hcode, I,J,H,IEL<br>
UV PT H 3 3 1 1<br>
<br>
But I dont know how to tell it that I want instead of UV, and also I don't know how to calculate number of element IEL from physical location.<br>
<br>
2. <a href="http://hpts.in" target="_blank">hpts.in</a> file<br>
you can input physical coordinates of a location, but in hpts.out only the following variables # time vx vy [vz] pr T PS1 PS2 ...<br>
are being stored.<br>
<br>
So I tried to modify nek5000/branches/mvmesh/<u></u>postpro.f in the following way:<br>
first I put parameter (lt=lx1*ly1*lz1*lelt)<br>
common /ilgrad/ dtdx(lt),dtdy(lt),dtdz(lt)<br>
in the beginning of subroutine hpts<br>
<br>
and later in this routine changed the code:<br>
<br>
<br>
! pack working array<br>
nflds = 0<br>
if(ifvo) then<br>
call copy(wrk(1,1),vx,ntot)<br>
call copy(wrk(1,2),vy,ntot)<br>
if(if3d) call copy(wrk(1,3),vz,ntot)<br>
nflds = ndim<br>
endif<br>
if(ifpo) then<br>
nflds = nflds + 1<br>
call copy(wrk(1,nflds),pm1,ntot)<br>
endif<br>
if(ifto) then<br>
nflds = nflds + 1<br>
call copy(wrk(1,nflds),t,ntot)<br>
endif<br>
nflds = nflds + 1 !!!!!!!!!inserted<br>
call copy(wrk(1,nflds),dtdx,ntot) !!!!!!!!!inserted<br>
nflds = nflds + 1 !!!!!!!!!inserted<br>
call copy(wrk(1,nflds),dtdy,ntot) !!!!!!!!!inserted<br>
do i = 1,ldimt<br>
if(ifpsco(i)) then<br>
nflds = nflds + 1<br>
call copy(wrk(1,nflds),T(1,1,1,1,i+<u></u>1),ntot)<br>
endif<br>
enddo<br>
It was compiled without problem, but running the program yielded no change in hpts.out,<br>
as before there are only 5 columns<br>
# time vx vy [vz] pr T <br>
Please help<br>
<br>
<br>
______________________________<u></u>_________________<br>
Nek5000-users mailing list<br>
<a href="mailto:Nek5000-users@lists.mcs.anl.gov" target="_blank">Nek5000-users@lists.mcs.anl.<u></u>gov</a><br>
<a href="https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users" target="_blank">https://lists.mcs.anl.gov/<u></u>mailman/listinfo/nek5000-users</a><br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div dir="ltr">Jean-Christophe Loiseau<br><a href="https://sites.google.com/site/loiseaujc/" target="_blank">Homepage</a><br></div>
</div>