UDF for a horizontal temperature profile
Hello,
I'm trying to write an UDF for a temperature profile to use as an boundary condition on a horizontal wall (2D). I used the following UDF, but when I plot an xy-plot of the wall surface temperature it is just a constant. Can anybody tell me what I'm doing wrong? Kind regards, CD /* test.c UDF for specifying temperature profile boundary condition on the bottom */ #include "udf.h" DEFINE_PROFILE(test,thread,position) { real x[ND_ND]; /* this will hold the position vector */ real y; face_t f; begin_f_loop(f,thread) { F_CENTROID(x,f,thread); y=x[1]; F_PROFILE(f, thread, position) = ... */ here stands the profile function as a function of y /* } end_f_loop(f,thread) } |
Re: UDF for a horizontal temperature profile
this should be proper. dint chek it (as simulation running on my system) but thsi my understnading that temperature is varying along horizontal (along x) i guess .
#include "udf.h" DEFINE_PROFILE(test,thread,position) { real x[ND_ND]; /* this will hold the position vector */ real y; face_t f; begin_f_loop(f,thread) { F_CENTROID(x,f,thread); y=x[0]; F_PROFILE(f, thread, position) = ... */ here stands the profile function as a function of y /* } end_f_loop(f,thread) } |
Re: UDF for a horizontal temperature profile
Thank you for your time and help Rizwan!
Ted |
Re: UDF for a horizontal temperature profile
I wish you could hav told whether its working according to what u needed or not. Regards waiting for ur input.
|
Re: UDF for a horizontal temperature profile
I was using the y-coordinate of a horizontal walll instead of the x-coordinate, so logically the result of my profile function was a constant. With your correction the UDF is now working just as I hoped. Thanks again!
Greetings Ted |
hi guys
i need a udf for a work. i'll explain what i need . I want to provide a linear varying temperature boundary condition on the circular side of a cylinder . can you help me?? My idea about udf is very small. |
tempereture udf for wall BC
I am trying to write UDF for wall of vertical pipe temperature that increase with increasing depth (Z). UDF is as follow
#include "udf.h" DEFINE_PROFILE (gradient_temp,thread,nv) { face_t f; real x[ND_ND]; /*loop over each of the face of this zone*/ begin_f_loop (f,thread) { F_CENTROID(x,f,thread); F_PROFILE(F,THREAD,NV)=25.*z[0]+80 } end_f_loop (f,thread) } but fluent gets some error as below: ..\..\src\tempgrad.c(10) : error C2065: 'THREAD' : undeclared identifier ..\..\src\tempgrad.c(10) : error C2223: left of '->storage' must point to struct/union ..\..\src\tempgrad.c(10) : error C2065: 'NV' : undeclared identifier ..\..\src\tempgrad.c(10) : error C2065: 'F' : undeclared identifier ..\..\src\tempgrad.c(10) : error C2065: 'z' : undeclared identifier ..\..\src\tempgrad.c(10) : error C2109: subscript requires array or pointer type ..\..\src\tempgrad.c(11) : error C2143: syntax error : missing ';' before '}' could any one can help me what is the problem????? |
theYour problem not defined z and the wrong THREAD instead of thread C is uppercase sensitive
|
UDF for temperature variation with time and space
Respected members
I have to write a UDF for temperature variation along with time and flow domain. actually temperature is varying with time at four points in flow domain, (different relation for time and temperature at these points. for example at x=0.20m i have following code: DEFINE_PROFILE(solid_temperature,thread,position ) { face_t f; begin_f_loop(f,thread) { real t = RP_Get_Real("flow-time"); if ( t <= 100.0 ) { F_PROFILE(f,thread,position) = 379.48 + 0.0004*t; } else if (100.0 < t && t <= 180.0 ) { F_PROFILE(f,thread,position) = -8.34641*pow(10,-6)*pow(t,4.0)+ 5.49800*pow(10,-3)*pow(t,3.0)- 1.35243*pow(t,2.0)+ 1.47648*pow(10,2.0)*t - 5.51650*pow(10,3.0); } else { F_PROFILE(f,thread,position) = 727.82; } } end_f_loop(f,thread) } at x=0.40m (second point) i have following relations: if ( t <= 100.0 ) { F_PROFILE(f,thread,position) = 379.48 + 0.0004*t; } else if (100.0 < t && t <= 180.0 ) { F_PROFILE(f,thread,position) = 0.2716*t + 494.4; } else { F_PROFILE(f,thread,position) = 727.82; } } end_f_loop(f,thread) } and similarly for other 2 points can any body pl guide me how to include these points in code. i just know how to write variation of temperature with time but i could not find way to write above relations at different points. Please guide me. thanks. |
Varying temperature in vertical direction
Hi
I'm new fluent user. I want to impose a linear temperature gradient on a vertical pipe wall with temp. on top=340 and at the bottom 300. The bottom edge again is a bent pipe horizontally. On horizontal pipe the temp is 300. How can I put these as boundary conditions? Can anyone please help to apply this? Step by step instructions would be a great help. Thanks |
All times are GMT -4. The time now is 01:54. |