|
[Sponsors] |
November 22, 2012, 05:59 |
looping over selected / marked cells
|
#1 |
Senior Member
Join Date: Mar 2010
Posts: 181
Rep Power: 17 |
Hi everyone,
just wondering if anyone can help me with this query: i would like to loop over a set of cells adjacent to a wall boundary - say the next 5 cells next to the wall, or if that is not possible, over a set of cells marked using the adaptation menu and some metric (say mesh iso-value). so far i only know about looping over the whole domain and looping over various threads, which typically only include (a single layer of) wall adjacent cells. basically, i have an expression in a UDF which i want to integrate over a finite number of cells adjacent to the wall. many thanks and best regards in advance jon Code:
/* ============================================================================ Name : entropy_generation.c Author : Jonathan Bergh Version : Copyright : Copyright J Bergh 2012 Description : Ansys Fluent UDF to calculate entropy in C, Ansi-style ============================================================================ */ #include "udf.h" #include "mem.h" DEFINE_EXECUTE_AT_END(entropy_gen) { Domain *d; Thread *t; real S_gen_tot; real S_gen_v; real S_gen_t; cell_t c; d = Get_Domain(1); thread_loop_c(t,d) { begin_c_loop(c,t) { real temperature = C_T(c,t); real c_d; real dTdx = C_T_RG(c,t)[0]; real dTdy = C_T_RG(c,t)[1]; real dTdz = C_T_RG(c,t)[2]; real dudx = C_DUDX(c,t); real dudy = C_DUDY(c,t); real dudz = C_DUDZ(c,t); real dvdx = C_DVDX(c,t); real dvdy = C_DVDY(c,t); real dvdz = C_DVDZ(c,t); real dwdx = C_DWDX(c,t); real dwdy = C_DWDY(c,t); real dwdz = C_DWDZ(c,t); real c_k_lam = C_K_L(c,t); real c_mu_lam = C_MU_L(c,t); S_gen_t = (c_k_lam/(temperature*temperature))*((dTdx)*(dTdx) + (dTdy)*(dTdy) + (dTdz)*(dTdz)); S_gen_v = (c_mu_lam/temperature)*(2*(dudx*dudx + dvdy*dvdy + dwdz*dwdz) + (dvdx+dudy)*(dvdx+dudy) + (dwdy + dvdz)*(dwdy + dvdz) + (dudz + dwdx)*(dudz + dwdx)); S_gen_tot = S_gen_t + S_gen_v; c_d = S_gen_tot / (1.010073 * (65*65*65) / 0.040 / 300); C_UDMI(c,t,0) = c_d; } end_c_loop(c,t) } } |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
[snappyHexMesh] No layers in a small gap | bobburnquist | OpenFOAM Meshing & Mesh Conversion | 6 | August 26, 2015 10:38 |
[Netgen] Import netgen mesh to OpenFOAM | hsieh | OpenFOAM Meshing & Mesh Conversion | 32 | September 13, 2011 06:50 |
[snappyHexMesh] snappyHexMesh won't work - zeros everywhere! | sc298 | OpenFOAM Meshing & Mesh Conversion | 2 | March 27, 2011 22:11 |
[snappyHexMesh] snappyHexMesh aborting | Tobi | OpenFOAM Meshing & Mesh Conversion | 0 | November 10, 2010 04:23 |
[snappyHexMesh] external flow with snappyHexMesh | chelvistero | OpenFOAM Meshing & Mesh Conversion | 11 | January 15, 2010 20:43 |