CFD Online Discussion Forums

CFD Online Discussion Forums (http://www.cfd-online.com/Forums/)
-   FLUENT (http://www.cfd-online.com/Forums/fluent/)
-   -   udf for Temperature profile (http://www.cfd-online.com/Forums/fluent/49912-udf-temperature-profile.html)

Ralf November 27, 2008 09:01

udf for Temperature profile
 
Hi!

i have a solid, and i would like to define an initial temperature profile for cooling calculation in x direction (a polynom) - in y direction, the temp. should be constant.

I have created follwing UDF, but somehow, it does not work...

Maybe there is something with the units? my mesh is created in mm. the solid is 100 mm long and there should be a temp. drop at the end to 960K.

Any idea? Ralf

#include "udf.h"

DEFINE_PROFILE(start_temperature,thread,index)

{

real y[ND_ND];

real x;

face_t f;

begin_f_loop(f,thread)

{

F_CENTROID(y,f,thread);

x = y[1];

F_PROFILE(f,thread,index) = 277103.*x*x*x -64574.*x*x + 2416.*x + 1099.;

} end_f_loop(f,thread)

}

bohis November 27, 2008 13:02

Re: udf for Temperature profile
 
I guess there should be should be 0 instead of 1. I mean this: x = y[0];

Ralf Schmidt November 28, 2008 04:36

Re: udf for Temperature profile
 
yes!! that's it!! now, it works!!

thanks a lot!

For me, without c+ knowledge, it is rather difficult to understand these udf, also the udf manual is not very helpful for these problems...

Ralf

Rogerio Fernandes Brito November 28, 2008 05:31

Re: udf for Temperature profile
 
I think u must do 2 UDF´s and not only one. One for x and other for y. Then, u can input the direction of your temperature field, as u do with velocity components.

Why did u use "x = y[1];"?

Ralf November 28, 2008 07:35

Re: udf for Temperature profile
 
Hi,

the udf works for my 2d. model. Attached for completeness the udf.

T = x*x*x*277103. -x*x*64574. + x*2416. + 1099. is the polynome, that describes the Temp. distribution (x in m !!!)

Thanks you for your help!!!

Ralf

-----------------------

#include "udf.h"

DEFINE_PROFILE(start_temperature,thread,index)

{

real y[ND_ND];

real x;

cell_t c;

begin_c_loop(c,thread)

{

C_CENTROID(y,c,thread);

x = y[0];

F_PROFILE(c,thread,index) = x*x*x*277103. -x*x*64574. + x*2416. + 1099.;

}

end_c_loop(c,thread)

}

lucy December 6, 2008 02:42

ask an question about udf for Temperature profile
 
Ralf, your UDF "DEFINE_PROFILE(start_temperature,thread,index ) "for initialize temperature,not for boundary condition? lucy


All times are GMT -4. The time now is 03:25.