Hi,<br><br>Is there any reason why a conjucate heat transfer case should not work with IFLOMACH turned on?<br>I did modify the uservp to set utrans = 1./temp.<br><br>Thanks,<br>Pradeep<br><br>c-----------------------------------------------------------------------<br>
����� subroutine uservp (ix,iy,iz,ieg)<br>����� include 'SIZE'<br>����� include 'TOTAL'<br>����� include 'NEKUSE'<br><br>����� if (ifield.eq.1) then<br>�������� utrans� = 1./temp<br>c�������� utrans = param(1)<br>
�������� udiff�� = param(2)<br><br>����� else<br><br>�������� utrans� = 1./temp������� ! thermal properties<br>c�������� utrans = param(7)<br>�������� udiff�� = param(8)<br><br>�������� if (ieg .gt. nelgv) then� ! properties in the solid<br>
����������� udiff�� = 0.1*param(8) ! conductivity<br>����������� utrans� = 1.0<br>�������� endif<br><br>����� endif<br><br>����� return<br>����� end<br>c-----------------------------------------------------------------------<br>
<br><div class="gmail_quote">
On Mon, Aug 23, 2010 at 4:40 PM, Pradeep Rao <span dir="ltr"><<a href="mailto:stringsofdurga@gmail.com" target="_blank">stringsofdurga@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">

Thanks Aleks,<br><br>Will give that a try.<div><div></div><div><br><br><div class="gmail_quote">On Mon, Aug 23, 2010 at 4:25 PM,  <span dir="ltr"><<a href="mailto:nek5000-users@lists.mcs.anl.gov" target="_blank">nek5000-users@lists.mcs.anl.gov</a>></span> wrote:<br>


<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">Hi Pradeep,<br>
<br>
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<br>
<br>
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.<br>
<br>
Best,<br>
Aleks<div><div></div><div><br>
<br>
<br>
On Mon, 23 Aug 2010, <a href="mailto:nek5000-users@lists.mcs.anl.gov" target="_blank">nek5000-users@lists.mcs.anl.gov</a> wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
Hi Paul,<br>
<br>
Thanks for the detailed reply. The reason I'm not solving it as a conjugate<br>
heat transfer problem, is that thermal conductivity is a function of<br>
temperature based on some curve fit equations, and I am not sure how to<br>
implement that.<br>
<br>
Thanks,<br>
Pradeep<br>
<br>
On Mon, Aug 23, 2010 at 4:04 PM, <<a href="mailto:nek5000-users@lists.mcs.anl.gov" target="_blank">nek5000-users@lists.mcs.anl.gov</a>> wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<br>
Hi Pradeep,<br>
<br>
Why not just solve the conjugate heat transfer problem directly<br>
using fluid + solid elements in nek?<br>
<br>
Also, nek supports full Robin boundary conditions if you wish<br>
to do a Newton law of cooling: �k*dT/dn . n_hat = h*(T-Tinf), where Tinf is<br>
the external temperature and h is the heat transfer coefficient, both of<br>
which can be functions of time and space.<br>
<br>
<br>
Regarding gradm1, you would call it from userchk, and store<br>
the output in arrays in a common block, e.g., as below.<br>
<br>
Paul<br>
<br>
 � � subroutine userchk<br>
 � � :<br>
 � � common /mygrad/ tx(lx1,ly1,lz1,lelt)<br>
 � �$ � � � � � � �, ty(lx1,ly1,lz1,lelt)<br>
 � �$ � � � � � � �, tz(lx1,ly1,lz1,lelt)<br>
<br>
 � � call gradm1(tx,ty,tz,t)<br>
<br>
 � � :<br>
 � � :<br>
<br>
 � � subroutine userbc (ix,iy,iz,iside,eg)<br>
 � � include 'SIZE'<br>
 � � include 'TOTAL'<br>
 � � include 'NEKUSE'<br>
<br>
 � � common /mygrad/ tx(lx1,ly1,lz1,lelt)<br>
 � �$ � � � � � � �, ty(lx1,ly1,lz1,lelt)<br>
 � �$ � � � � � � �, tz(lx1,ly1,lz1,lelt)<br>
<br>
 � � integer e,eg<br>
<br>
 � � e = gllel(eg) ! global element number to processor-local el. #<br>
<br>
 � � gtx=tx(ix,iy,iz,e)<br>
 � � gty=ty(ix,iy,iz,e)<br>
 � � gtz=tz(ix,iy,iz,e)<br>
<br>
<br>
<br>
<br>
On Mon, 23 Aug 2010, <a href="mailto:nek5000-users@lists.mcs.anl.gov" target="_blank">nek5000-users@lists.mcs.anl.gov</a> wrote:<br>
<br>
�Hi Paul,<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<br>
I am basically trying to solve a conjugate heat transfer problem in an<br>
iterative manner, for flow over an infinitely long cylinder (2D).<br>
<br>
I need to use the heat transfer at the boundary, to calculate the new<br>
temperature at the boundary for the next time step. The<br>
temperature for the next time step is solved for using this heat flux, by<br>
a<br>
function in the usr file using an FEM algorithm for the solid part<br>
(cylinder). The bc type I am using is Temperature - fortran function.<br>
<br>
Regards,<br>
Pradeep<br>
<br>
On Mon, Aug 23, 2010 at 2:50 PM, <<a href="mailto:nek5000-users@lists.mcs.anl.gov" target="_blank">nek5000-users@lists.mcs.anl.gov</a>> wrote:<br>
<br>
<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
Pradeep,<br>
<br>
if you give me some idea of the nature of your bc, I can<br>
perhaps help --- there are a large number of bc types already<br>
supported inside nek<br>
<br>
Paul<br>
<br>
<br>
<br>
On Mon, 23 Aug 2010, <a href="mailto:nek5000-users@lists.mcs.anl.gov" target="_blank">nek5000-users@lists.mcs.anl.gov</a> wrote:<br>
<br>
�Hi,<br>
<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<br>
I wanted to know if there was a way to find the temperature gradient at<br>
a<br>
point. I need that information in the userbc function.<br>
<br>
I tried using gradm1(), but I am not sure how to get the value at a<br>
given<br>
point.<br>
<br>
Thanks,<br>
Pradeep<br>
<br>
�_______________________________________________<br>
<br>
</blockquote>
Nek5000-users mailing list<br>
<a href="mailto:Nek5000-users@lists.mcs.anl.gov" target="_blank">Nek5000-users@lists.mcs.anl.gov</a><br>
<a href="https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users" target="_blank">https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users</a><br>
<br>
<br>
</blockquote>
<br>
<br>
--<br>
Pradeep C. Rao<br>
Graduate Research Assistant for FT2L (<a href="http://www1.mengr.tamu.edu/FT2L/" target="_blank">http://www1.mengr.tamu.edu/FT2L/</a>)<br>
Department of Mechanical Engineering<br>
Texas A&M University<br>
College Station, TX 77843-3123<br>
<br>
428 Engineering Physics Building<br>
(713) 210-9769<br>
<br>
�uuuu<br>
</blockquote>
c-----------------------------------------------------------------------<br>
C<br>
C �USER SPECIFIED ROUTINES:<br>
C<br>
C � � - boundary conditions<br>
C � � - initial conditions<br>
C � � - variable properties<br>
C � � - local acceleration for fluid (a)<br>
C � � - forcing function for passive scalar (q)<br>
C � � - general purpose routine for checking errors etc.<br>
C<br>
c-----------------------------------------------------------------------<br>
 � � subroutine uservp (ix,iy,iz,eg)<br>
 � � include 'SIZE'<br>
 � � include 'TOTAL'<br>
 � � include 'NEKUSE'<br>
<br>
 � � integer e,f,eg<br>
c � � e = gllel(eg)<br>
<br>
 � � udiff =0.<br>
 � � utrans=0.<br>
 � � return<br>
 � � end<br>
c-----------------------------------------------------------------------<br>
 � � subroutine userf �(ix,iy,iz,eg)<br>
 � � include 'SIZE'<br>
 � � include 'TOTAL'<br>
 � � include 'NEKUSE'<br>
<br>
 � � integer e,f,eg<br>
c � � e = gllel(eg)<br>
<br>
<br>
c � � Note: this is an acceleration term, NOT a force!<br>
c � � Thus, ffx will subsequently be multiplied by rho(x,t).<br>
<br>
<br>
 � � ffx = 0.0<br>
 � � ffy = 0.0<br>
 � � ffz = 0.0<br>
<br>
 � � return<br>
 � � end<br>
c-----------------------------------------------------------------------<br>
 � � subroutine userq �(ix,iy,iz,eg)<br>
 � � include 'SIZE'<br>
 � � include 'TOTAL'<br>
 � � include 'NEKUSE'<br>
<br>
 � � integer e,f,eg<br>
c � � e = gllel(eg)<br>
<br>
 � � qvol � = 0.0<br>
<br>
 � � return<br>
 � � end<br>
c-----------------------------------------------------------------------<br>
 � � subroutine userchk<br>
 � � include 'SIZE'<br>
 � � include 'TOTAL'<br>
 � � return<br>
 � � end<br>
c-----------------------------------------------------------------------<br>
 � � subroutine userbc (ix,iy,iz,iside,ieg)<br>
 � � include 'SIZE'<br>
 � � include 'TOTAL'<br>
 � � include 'NEKUSE'<br>
 � � ux=0.0<br>
 � � uy=0.0<br>
 � � uz=0.0<br>
 � � temp=0.0<br>
 � � return<br>
 � � end<br>
c-----------------------------------------------------------------------<br>
 � � subroutine useric (ix,iy,iz,ieg)<br>
 � � include 'SIZE'<br>
 � � include 'TOTAL'<br>
 � � include 'NEKUSE'<br>
 � � ux=0.0<br>
 � � uy=0.0<br>
 � � uz=0.0<br>
 � � temp=0<br>
 � � return<br>
 � � end<br>
c-----------------------------------------------------------------------<br>
 � � subroutine usrdat<br>
 � � include 'SIZE'<br>
 � � include 'TOTAL'<br>
c<br>
 � � return<br>
 � � end<br>
c-----------------------------------------------------------------------<br>
 � � subroutine usrdat2<br>
 � � include 'SIZE'<br>
 � � include 'TOTAL'<br>
<br>
 � � param(66) = 4. � ! These give the std nek binary i/o and are<br>
 � � param(67) = 4. � ! good default values<br>
<br>
 � � return<br>
 � � end<br>
c-----------------------------------------------------------------------<br>
 � � subroutine usrdat3<br>
 � � include 'SIZE'<br>
 � � include 'TOTAL'<br>
c<br>
 � � return<br>
 � � end<br>
c-----------------------------------------------------------------------<br>
<br>
_______________________________________________<br>
Nek5000-users mailing list<br>
<a href="mailto:Nek5000-users@lists.mcs.anl.gov" target="_blank">Nek5000-users@lists.mcs.anl.gov</a><br>
<a href="https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users" target="_blank">https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users</a><br>
<br>
</blockquote>
<br>
<br>
<br>
-- <br>
Pradeep C. Rao<br>
Graduate Research Assistant for FT2L (<a href="http://www1.mengr.tamu.edu/FT2L/" target="_blank">http://www1.mengr.tamu.edu/FT2L/</a>)<br>
Department of Mechanical Engineering<br>
Texas A&M University<br>
College Station, TX 77843-3123<br>
<br>
428 Engineering Physics Building<br>
(713) 210-9769<br>
<br>
</blockquote>
_______________________________________________<br>
Nek5000-users mailing list<br>
<a href="mailto:Nek5000-users@lists.mcs.anl.gov" target="_blank">Nek5000-users@lists.mcs.anl.gov</a><br>
<a href="https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users" target="_blank">https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users</a><br>
</div></div></blockquote></div><br><br clear="all"><br></div></div>-- <br><div><div></div><div>Pradeep C. Rao<br>Graduate Research Assistant for FT2L (<a href="http://www1.mengr.tamu.edu/FT2L/" target="_blank">http://www1.mengr.tamu.edu/FT2L/</a>)<br>

Department of Mechanical Engineering<br>
Texas A&M University<br>College Station, TX 77843-3123<br><br>428 Engineering Physics Building<br>(713) 210-9769<br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br>Pradeep C. Rao<br>Graduate Research Assistant for FT2L (<a href="http://www1.mengr.tamu.edu/FT2L/" target="_blank">http://www1.mengr.tamu.edu/FT2L/</a>)<br>Department of Mechanical Engineering<br>

Texas A&M University<br>College Station, TX 77843-3123<br><br>428 Engineering Physics Building<br>(713) 210-9769<br>