I need to monitor scalar gradient (scalar is modelled with temperature as in examples.pdf). So I have inserted in USERCHK parameter (lt=lx1*ly1*lz1*lelt) common /ilgrad/ dtdx(lt),dtdy(lt),dtdz(lt) if ((mod(istep,iostep).eq.0).and.(istep.ge.iostep)) then call gradm1(dtdx,dtdy,dtdz,t) endif call hpts() Next there are two options to monitor a quantity 1. in .rea file like ***** HISTORY AND INTEGRAL DATA ***** 001 POINTS. Hcode, I,J,H,IEL UV PT H 3 3 1 1 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. 2. hpts.in file you can input physical coordinates of a location, but in hpts.out only the following variables # time vx vy [vz] pr T PS1 PS2 ... are being stored. So I tried to modify nek5000/branches/mvmesh/postpro.f in the following way: first I put parameter (lt=lx1*ly1*lz1*lelt) common /ilgrad/ dtdx(lt),dtdy(lt),dtdz(lt) in the beginning of subroutine hpts and later in this routine changed the code: ! pack working array nflds = 0 if(ifvo) then call copy(wrk(1,1),vx,ntot) call copy(wrk(1,2),vy,ntot) if(if3d) call copy(wrk(1,3),vz,ntot) nflds = ndim endif if(ifpo) then nflds = nflds + 1 call copy(wrk(1,nflds),pm1,ntot) endif if(ifto) then nflds = nflds + 1 call copy(wrk(1,nflds),t,ntot) endif nflds = nflds + 1 !!!!!!!!!inserted call copy(wrk(1,nflds),dtdx,ntot) !!!!!!!!!inserted nflds = nflds + 1 !!!!!!!!!inserted call copy(wrk(1,nflds),dtdy,ntot) !!!!!!!!!inserted do i = 1,ldimt if(ifpsco(i)) then nflds = nflds + 1 call copy(wrk(1,nflds),T(1,1,1,1,i+1),ntot) endif enddo It was compiled without problem, but running the program yielded no change in hpts.out, as before there are only 5 columns # time vx vy [vz] pr T Please help