UDF Define_Init velocity profile
1 Attachment(s)
Hi everyone,
I really need your help for a scholar modeling. I want to create as an initial condition on inlet, a velocity profile quite simple : if y<2.5 then U=0, else U=2*y. The problem is that I never used C language in my life and so as a complete rookie I'm quite lost... Below you'll find what I've tried to write by copying other examples found on the net. Thanks a lot for every little help you could give me (and sorry for my english) Best Regards 
do you still need help? I can help you

It's a bit too late for my scholar deadline but nevertheless, I'm really interested to know how should I have done this ! So I welcome your help if it's still possible.

I guess the problem is due to this part:
y=F_CENTROID(y,f,t); you need to define real y[ND_ND]; then F_CENTROID(y,f,t); so your x coordinate will be y[0] and y coordinate will be y[1]  #include "udf.h" DEFINE_INIT(udfinit,d) { cell_t c; Thread *t; real x[ND_ND]; real y; /* loop over all cell threads in the domain */ thread_loop_c(t,d) { /* loop over all cells */ begin_c_loop_all (c,t) { F_CENTROID(x,c,t); y=x[1] if y>2.5 C_U(c,t)=0 else C_U(c,t)=2*y } end_c_loop_all(c,t) } } 
All times are GMT 4. The time now is 17:54. 