[Nek5000-users] Compute the derivatives

nek5000-users at lists.mcs.anl.gov nek5000-users at lists.mcs.anl.gov
Thu Jul 1 20:04:41 CDT 2010


Hi Michael,


iostep dump works only for the dump of quantities specified as T in your .rea like

  ***** OUTPUT FIELD SPECIFICATION *****
            8 SPECIFICATIONS FOLLOW
  T      COORDINATES
  T      VELOCITY
  T      PRESSURE
  T      TEMPERATURE
  F      TEMPERATURE GRADIENT
            2      PASSIVE SCALARS
 F
 F


Since userchk is called every timestep so you'll need something like


if (mod(istep,iostep).eq.0) then
...

Best,
Aleks



----- Original Message -----
From: nek5000-users at lists.mcs.anl.gov
To: nek5000-users at lists.mcs.anl.gov
Sent: Thursday, July 1, 2010 7:57:07 PM GMT -06:00 US/Canada Central
Subject: Re: [Nek5000-users] Compute the derivatives





Hi Paul and Aleks, 



I have a question regarding this. I have implemented this and it is working nicely, however it is dumping 

out a .f file every step, rather than every iotime step I have specified in the rea. 



Do you know how to fix this? 



- Michael 


----- Original Message ----- 
From: nek5000-users at lists.mcs.anl.gov 
To: nek5000-users at lists.mcs.anl.gov 
Sent: Wednesday, June 2, 2010 10:57:41 AM GMT -06:00 US/Canada Central 
Subject: Re: [Nek5000-users] Compute the derivatives 

Hi JC, 

To dump the computed derivatives into separate field files you can use in 
userchk 

ifxyo = .true. ! for cooordinates 
ifpo = .false. ! turn off pressure output 
ifto = .false. ! turn off pressure output 
call outpost(vxx,vxy,vxz,pr,t,'dvx') 
call outpost(vyx,vyy,vyz,pr,t,'dvy') 
... 

Best, 
Aleks 



On Wed, 2 Jun 2010, nek5000-users at lists.mcs.anl.gov wrote: 

> 
> dudxyz is somewhat dated and slow... 
> 
> I recommend somthing like: 
> 
> parameter (lt=lx1*ly1*lz1*lelv) 
> common /mygrad/ vxx(lt),vxy(lt),vxz(lt) 
> $ , vyx(lt),vyy(lt),vyz(lt) 
> $ , vzx(lt),vzy(lt),vzz(lt) 
> 
> call gradm1(vxx,vxy,vxz,vx) 
> call gradm1(vyx,vyy,vyz,vy) 
> call gradm1(vzx,vzy,vzz,vz) 
> 
> Note that putting these arrays into a common block, as 
> shown, is a good idea for several reasons, one of which 
> is that it guarantees that the data will be byte-aligned with the cache line. 
> On some machines (e.g., BG/P) this 
> is crucial for proper functionality - for this reason we 
> don't mix variable types in a given common block. 
> 
> If you subsequently wish to access elements of vxx etc. 
> on an element-by-element basis you can of course do something 
> like 
> 
> parameter (lt=lx1*ly1*lz1) 
> common /mygrad/ vxx(lt,lelt),vxy(lt,lelt),vxz(lt,lelt) 
> : 
> : 
> 
> Paul 
> 
> On Wed, 2 Jun 2010, nek5000-users at lists.mcs.anl.gov wrote: 
> 
>> Hi Nek's, 
>> 
>> I have a home-made global stability code, but in order to use it I first 
>> need to compute the derivatives of my base flow: dUdX, dUdY, dVdX, dVdY. 
>> How could one compute these derivatives using Nek 5k and drop them along 
>> with X Y U V in the blah.f**** file (or perhaps another .f**** file) ? I 
>> assume I have to make use of the subroutine *dudxyz 
>> (du,u,rm1,sm1,tm1,jm1,imsh,isd)*, but I'm not sure what to put as inputs. 
>> 
>> Regards, 
>> JC 
>> 
> _______________________________________________ 
> 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 

_______________________________________________
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