[Nek5000-users] Temperature gradient at a point

nek5000-users at lists.mcs.anl.gov nek5000-users at lists.mcs.anl.gov
Thu Aug 26 15:50:08 CDT 2010


This combination should work!

Stefan

On Thu, Aug 26, 2010 at 9:18 PM, <nek5000-users at lists.mcs.anl.gov> wrote:

> Hi,
>
> Is there any reason why a conjucate heat transfer case should not work with
> IFLOMACH turned on?
> I did modify the uservp to set utrans = 1./temp.
>
> Thanks,
> Pradeep
>
> c-----------------------------------------------------------------------
>       subroutine uservp (ix,iy,iz,ieg)
>
>       include 'SIZE'
>       include 'TOTAL'
>       include 'NEKUSE'
>
>       if (ifield.eq.1) then
>          utrans  = 1./temp
> c         utrans = param(1)
>          udiff   = param(2)
>
>       else
>
>          utrans  = 1./temp        ! thermal properties
> c         utrans = param(7)
>          udiff   = param(8)
>
>          if (ieg .gt. nelgv) then  ! properties in the solid
>             udiff   = 0.1*param(8) ! conductivity
>             utrans  = 1.0
>          endif
>
>       endif
>
>       return
>       end
> c-----------------------------------------------------------------------
>
>
> On Mon, Aug 23, 2010 at 4:40 PM, Pradeep Rao <stringsofdurga at gmail.com>wrote:
>
>> Thanks Aleks,
>>
>> Will give that a try.
>>
>>
>> On Mon, Aug 23, 2010 at 4:25 PM, <nek5000-users at lists.mcs.anl.gov> wrote:
>>
>>> Hi Pradeep,
>>>
>>> Dependence of conductivity on time and space is not a problem once one
>>> uses non zero p30 in .rea that activates a call to uservp of .usr file
>>>
>>> If you also need a dependence of conductivity on temperature you may want
>>> to consider either using the values from the previous time step or doing
>>> extrapolation in time.
>>>
>>> Best,
>>> Aleks
>>>
>>>
>>>
>>> On Mon, 23 Aug 2010, nek5000-users at lists.mcs.anl.gov wrote:
>>>
>>>  Hi Paul,
>>>>
>>>> Thanks for the detailed reply. The reason I'm not solving it as a
>>>> conjugate
>>>> heat transfer problem, is that thermal conductivity is a function of
>>>> temperature based on some curve fit equations, and I am not sure how to
>>>> implement that.
>>>>
>>>> Thanks,
>>>> Pradeep
>>>>
>>>> On Mon, Aug 23, 2010 at 4:04 PM, <nek5000-users at lists.mcs.anl.gov>
>>>> wrote:
>>>>
>>>>
>>>>> Hi Pradeep,
>>>>>
>>>>> Why not just solve the conjugate heat transfer problem directly
>>>>> using fluid + solid elements in nek?
>>>>>
>>>>> Also, nek supports full Robin boundary conditions if you wish
>>>>> to do a Newton law of cooling:  k*dT/dn . n_hat = h*(T-Tinf), where
>>>>> Tinf is
>>>>> the external temperature and h is the heat transfer coefficient, both
>>>>> of
>>>>> which can be functions of time and space.
>>>>>
>>>>>
>>>>> Regarding gradm1, you would call it from userchk, and store
>>>>> the output in arrays in a common block, e.g., as below.
>>>>>
>>>>> Paul
>>>>>
>>>>>     subroutine userchk
>>>>>     :
>>>>>     common /mygrad/ tx(lx1,ly1,lz1,lelt)
>>>>>    $              , ty(lx1,ly1,lz1,lelt)
>>>>>    $              , tz(lx1,ly1,lz1,lelt)
>>>>>
>>>>>     call gradm1(tx,ty,tz,t)
>>>>>
>>>>>     :
>>>>>     :
>>>>>
>>>>>     subroutine userbc (ix,iy,iz,iside,eg)
>>>>>     include 'SIZE'
>>>>>     include 'TOTAL'
>>>>>     include 'NEKUSE'
>>>>>
>>>>>     common /mygrad/ tx(lx1,ly1,lz1,lelt)
>>>>>    $              , ty(lx1,ly1,lz1,lelt)
>>>>>    $              , tz(lx1,ly1,lz1,lelt)
>>>>>
>>>>>     integer e,eg
>>>>>
>>>>>     e = gllel(eg) ! global element number to processor-local el. #
>>>>>
>>>>>     gtx=tx(ix,iy,iz,e)
>>>>>     gty=ty(ix,iy,iz,e)
>>>>>     gtz=tz(ix,iy,iz,e)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> On Mon, 23 Aug 2010, nek5000-users at lists.mcs.anl.gov wrote:
>>>>>
>>>>>  Hi Paul,
>>>>>
>>>>>>
>>>>>> I am basically trying to solve a conjugate heat transfer problem in an
>>>>>> iterative manner, for flow over an infinitely long cylinder (2D).
>>>>>>
>>>>>> I need to use the heat transfer at the boundary, to calculate the new
>>>>>> temperature at the boundary for the next time step. The
>>>>>> temperature for the next time step is solved for using this heat flux,
>>>>>> by
>>>>>> a
>>>>>> function in the usr file using an FEM algorithm for the solid part
>>>>>> (cylinder). The bc type I am using is Temperature - fortran function.
>>>>>>
>>>>>> Regards,
>>>>>> Pradeep
>>>>>>
>>>>>> On Mon, Aug 23, 2010 at 2:50 PM, <nek5000-users at lists.mcs.anl.gov>
>>>>>> wrote:
>>>>>>
>>>>>>
>>>>>>  Pradeep,
>>>>>>>
>>>>>>> if you give me some idea of the nature of your bc, I can
>>>>>>> perhaps help --- there are a large number of bc types already
>>>>>>> supported inside nek
>>>>>>>
>>>>>>> Paul
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Mon, 23 Aug 2010, nek5000-users at lists.mcs.anl.gov wrote:
>>>>>>>
>>>>>>>  Hi,
>>>>>>>
>>>>>>>
>>>>>>>> I wanted to know if there was a way to find the temperature gradient
>>>>>>>> at
>>>>>>>> a
>>>>>>>> point. I need that information in the userbc function.
>>>>>>>>
>>>>>>>> I tried using gradm1(), but I am not sure how to get the value at a
>>>>>>>> given
>>>>>>>> point.
>>>>>>>>
>>>>>>>> Thanks,
>>>>>>>> Pradeep
>>>>>>>>
>>>>>>>>  _______________________________________________
>>>>>>>>
>>>>>>>>  Nek5000-users mailing list
>>>>>>> Nek5000-users at lists.mcs.anl.gov
>>>>>>> https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> --
>>>>>> Pradeep C. Rao
>>>>>> Graduate Research Assistant for FT2L (
>>>>>> http://www1.mengr.tamu.edu/FT2L/)
>>>>>> Department of Mechanical Engineering
>>>>>> Texas A&M University
>>>>>> College Station, TX 77843-3123
>>>>>>
>>>>>> 428 Engineering Physics Building
>>>>>> (713) 210-9769
>>>>>>
>>>>>>  uuuu
>>>>>>
>>>>>
>>>>> c-----------------------------------------------------------------------
>>>>> C
>>>>> C  USER SPECIFIED ROUTINES:
>>>>> C
>>>>> C     - boundary conditions
>>>>> C     - initial conditions
>>>>> C     - variable properties
>>>>> C     - local acceleration for fluid (a)
>>>>> C     - forcing function for passive scalar (q)
>>>>> C     - general purpose routine for checking errors etc.
>>>>> C
>>>>>
>>>>> c-----------------------------------------------------------------------
>>>>>     subroutine uservp (ix,iy,iz,eg)
>>>>>     include 'SIZE'
>>>>>     include 'TOTAL'
>>>>>     include 'NEKUSE'
>>>>>
>>>>>     integer e,f,eg
>>>>> c     e = gllel(eg)
>>>>>
>>>>>     udiff =0.
>>>>>     utrans=0.
>>>>>     return
>>>>>     end
>>>>>
>>>>> c-----------------------------------------------------------------------
>>>>>     subroutine userf  (ix,iy,iz,eg)
>>>>>     include 'SIZE'
>>>>>     include 'TOTAL'
>>>>>     include 'NEKUSE'
>>>>>
>>>>>     integer e,f,eg
>>>>> c     e = gllel(eg)
>>>>>
>>>>>
>>>>> c     Note: this is an acceleration term, NOT a force!
>>>>> c     Thus, ffx will subsequently be multiplied by rho(x,t).
>>>>>
>>>>>
>>>>>     ffx = 0.0
>>>>>     ffy = 0.0
>>>>>     ffz = 0.0
>>>>>
>>>>>     return
>>>>>     end
>>>>>
>>>>> c-----------------------------------------------------------------------
>>>>>     subroutine userq  (ix,iy,iz,eg)
>>>>>     include 'SIZE'
>>>>>     include 'TOTAL'
>>>>>     include 'NEKUSE'
>>>>>
>>>>>     integer e,f,eg
>>>>> c     e = gllel(eg)
>>>>>
>>>>>     qvol   = 0.0
>>>>>
>>>>>     return
>>>>>     end
>>>>>
>>>>> c-----------------------------------------------------------------------
>>>>>     subroutine userchk
>>>>>     include 'SIZE'
>>>>>     include 'TOTAL'
>>>>>     return
>>>>>     end
>>>>>
>>>>> c-----------------------------------------------------------------------
>>>>>     subroutine userbc (ix,iy,iz,iside,ieg)
>>>>>     include 'SIZE'
>>>>>     include 'TOTAL'
>>>>>     include 'NEKUSE'
>>>>>     ux=0.0
>>>>>     uy=0.0
>>>>>     uz=0.0
>>>>>     temp=0.0
>>>>>     return
>>>>>     end
>>>>>
>>>>> c-----------------------------------------------------------------------
>>>>>     subroutine useric (ix,iy,iz,ieg)
>>>>>     include 'SIZE'
>>>>>     include 'TOTAL'
>>>>>     include 'NEKUSE'
>>>>>     ux=0.0
>>>>>     uy=0.0
>>>>>     uz=0.0
>>>>>     temp=0
>>>>>     return
>>>>>     end
>>>>>
>>>>> c-----------------------------------------------------------------------
>>>>>     subroutine usrdat
>>>>>     include 'SIZE'
>>>>>     include 'TOTAL'
>>>>> c
>>>>>     return
>>>>>     end
>>>>>
>>>>> c-----------------------------------------------------------------------
>>>>>     subroutine usrdat2
>>>>>     include 'SIZE'
>>>>>     include 'TOTAL'
>>>>>
>>>>>     param(66) = 4.   ! These give the std nek binary i/o and are
>>>>>     param(67) = 4.   ! good default values
>>>>>
>>>>>     return
>>>>>     end
>>>>>
>>>>> c-----------------------------------------------------------------------
>>>>>     subroutine usrdat3
>>>>>     include 'SIZE'
>>>>>     include 'TOTAL'
>>>>> c
>>>>>     return
>>>>>     end
>>>>>
>>>>> c-----------------------------------------------------------------------
>>>>>
>>>>> _______________________________________________
>>>>> Nek5000-users mailing list
>>>>> Nek5000-users at lists.mcs.anl.gov
>>>>> https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> Pradeep C. Rao
>>>> Graduate Research Assistant for FT2L (http://www1.mengr.tamu.edu/FT2L/)
>>>> Department of Mechanical Engineering
>>>> Texas A&M University
>>>> College Station, TX 77843-3123
>>>>
>>>> 428 Engineering Physics Building
>>>> (713) 210-9769
>>>>
>>>>  _______________________________________________
>>> Nek5000-users mailing list
>>> Nek5000-users at lists.mcs.anl.gov
>>> https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users
>>>
>>
>>
>>
>> --
>> Pradeep C. Rao
>> Graduate Research Assistant for FT2L (http://www1.mengr.tamu.edu/FT2L/)
>> Department of Mechanical Engineering
>> Texas A&M University
>> College Station, TX 77843-3123
>>
>> 428 Engineering Physics Building
>> (713) 210-9769
>>
>
>
>
> --
> Pradeep C. Rao
> Graduate Research Assistant for FT2L (http://www1.mengr.tamu.edu/FT2L/)
> Department of Mechanical Engineering
> Texas A&M University
> College Station, TX 77843-3123
>
> 428 Engineering Physics Building
> (713) 210-9769
>
> _______________________________________________
> Nek5000-users mailing list
> Nek5000-users at lists.mcs.anl.gov
> https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/nek5000-users/attachments/20100826/7b028cdf/attachment.html>


More information about the Nek5000-users mailing list