±±¾©Ê¯ÓÍ»¯¹¤Ñ§Ôº2026ÄêÑо¿ÉúÕÐÉú½ÓÊÕµ÷¼Á¹«¸æ
²é¿´: 2324  |  »Ø¸´: 5

keen_xq

Ìú³æ (СÓÐÃûÆø)

[ÇóÖú] DPMºêÃüÁîBegin_particle_cell_loop(p,c,t)µÄʹÓÃÎÊÌâ ÒÑÓÐ1È˲ÎÓë

¸÷λͬѧ ÓÐûÓÐʹÓÃFluentÖÐ Õâ¸ö begin_particle_cell_loop(p,c,t)ºêÄØ£¬¸Ãºê³öÏÖÔÚDEFINE_DPM_SPRAY_COLLIDEÖУ¬¿´°ïÖúÉϵĽâÊÍ£¬¸ÃºêÓ¦¸ÃÊDZéÀúµ¥ÔªÖÐËùÓеĿÅÁ£¡£ÎÒÏëÓøúêÇó³öµ¥ÔªÖÐ ¿ÅÁ£µÄÌå»ý·ÖÊý£¬ÃüÁîÈçÏ¡£ ¸ÃÃüÁîÔÚ±àÒëÖÐûÎÊÌ⣬¼ÆËãʱ±ÀÀ£¡£ÎÒµ÷ÊÔ¹ý¶à´Î£¬×îºó·¢ÏÖ begin_particle_cell_loop(pi,c,t)²»ÄÜÔÙDEFINE_DPM_DRAGÖÐʹÓã¬Ò»µ©Ê¹Óã¬Çó½â¾Íû°ì·¨½øÐУ¬ÎÒÒ²³¢ÊÔÔÚÆäËûºê ÈçDEFINE_DPM_SCALE_UPDATA ºÍDEFINE_DPM_BODY_FORCEÖе÷Óþùʧ°Ü¡£ÓÐûÓдóţʹÓùý¸Ãºê£¬ÇóÖ¸µãÃÔ½ò£¬±»ÕÛÄ¥Á˺þÃÁË¡£


DEFINE_DPM_DRAG(particle_drag_force,Re,p)
{
        real dd,Vsum=0.0;
        cell_t c=P_CELL(p);
        Thread *t =P_CELL_THREAD(p);
        Particle *pi;
        begin_particle_cell_loop(pi,c,t)
        {
                Vsum+=M_PI*pow(P_DIAM(pi),3.0)/6.0;
        }end_particle_cell_loop(pi,c,t)

        C_UDMI(c,t,0)=Vsum/C_VOLUME(c,t);  //ÇóÌåÏà»ý·ÖÊý£»//
        if(C_UDMI(c,t,0)>1)
                C_UDMI(c,t,0)=1.0;

        if(Dragsign==1)
                dd=Cdrag_force1(p,Re);
        else if(Dragsign==2)
                dd=Cdrag_force2(p,Re);
        else if(Dragsign==3)
                dd=Cdrag_force3(p,Re);
        else if(Dragsign==4)
                dd=Cdrag_force4(p,Re);
        else
                dd=Cdrag_force5(p,Re);
        return dd*pow(1-C_UDMI(c,t,0),5.0/3.0)/pow(1-C_UDMI(c,t,0),2.0);
}
»Ø¸´´ËÂ¥

» ²ÂÄãϲ»¶

ÎðÍü³õÐÄ£¬·½µÃʼÖÕ¡£
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

liukan12

Òø³æ (СÓÐÃûÆø)

¡¾´ð°¸¡¿Ó¦Öú»ØÌû

ÄãµÄÀí½âÓÐÎóÇø ʵ¼ÊÉÏÕâ¸öºêÐèÒªÏÈÒª°ÑparticleÔÚcellÖм佨Á¢Ë÷ÒýÁбí ËùÒÔÐèÒªÏȰÑparticle·âװһϠ¾ÍÊÇ˵ Ê×ÏÈÄãÐèÒªÒ»¸öparticle bin
·ñÔòÄãÊǻᱨ´íµÄ
Æäʵһ¸öµ¥ÔªÄڵĿÅÁ£×ÜÊýÊÇÓмòµ¥µÄÇ󷨵Ä

» ±¾ÌûÒÑ»ñµÃµÄºì»¨£¨×îÐÂ10¶ä£©

ANSYSFluentÁ÷Ìå·ÂÕæÑо¿ÈËÔ±¡£
2Â¥2019-06-15 14:43:25
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

keen_xq

Ìú³æ (СÓÐÃûÆø)

Ĥ°Ý´óÉñ¡£ÇëÎÊ´óÉñ£¬ÄãËù˵µÄparticle binÈçºÎ´´½¨£¬»òÕßÈçºÎµÃµ½£¿ÔÚfluent UDF ÊÖ²áÖйØÓÚÕâ¸öºêÎÒÖ»·¢ÏÖÔÚDEFINE_DPM_SPRAY_COLLIDEÖдæÔÚ£¬¹ØÓÚÕâ¸öºêµÄ½éÉÜÒ²ÊÇÒ»±Ê´ø¹ý¡£´óÉñ£¬ÄãÄÜÏêϸ˵Ï£¬»òÔòÍÆ¼ö¸ö×ÊÁÏÂð£¬udfÊÖ²áÖеĽéÉܺܲ»Ïêϸ£¬Óкܶ඼ÐèÒª×Ô¼º½áºÏ³ÌÐòÍÆ³öÊÇʲôÒâ˼¡£¡£´óÉñ£¬ÎÒudfµÄÄ¿µÄÊÇÏë±éÀúÿ¸öÁ÷Ìåµ¥ÔªÖÐËùÓÐµÄÆøÅÝ£¬Í¨¹ýÀÛ¼ÓÆäÌå»ýÈ»ºóÇóµÃÆøÏàµÄÌå»ý·ÖÊý¡£´óÉñ£¬ÄãÄÜÍÆ¼öϼòµ¥µÄ·½·¨Â𣿲»Ê¤¸Ð¼¤¡£¡£»¹Óнð±Ò·îÉÏ

·¢×ÔСľ³æAndroid¿Í»§¶Ë
ÎðÍü³õÐÄ£¬·½µÃʼÖÕ¡£
3Â¥2019-06-16 00:11:52
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

keen_xq

Ìú³æ (СÓÐÃûÆø)

Ëͺ컨һ¶ä
ÒýÓûØÌû:
2Â¥: Originally posted by liukan12 at 2019-06-15 14:43:25
ÄãµÄÀí½âÓÐÎóÇø ʵ¼ÊÉÏÕâ¸öºêÐèÒªÏÈÒª°ÑparticleÔÚcellÖм佨Á¢Ë÷ÒýÁбí ËùÒÔÐèÒªÏȰÑparticle·âװһϠ¾ÍÊÇ˵ Ê×ÏÈÄãÐèÒªÒ»¸öparticle bin
·ñÔòÄãÊǻᱨ´íµÄ
Æäʵһ¸öµ¥ÔªÄڵĿÅÁ£×ÜÊýÊÇÓмòµ¥µÄÇ󷨵Ä

Ĥ°Ý´óÉñ¡£ÇëÎÊ´óÉñ£¬ÄãËù˵µÄparticle binÈçºÎ´´½¨£¬»òÕßÈçºÎµÃµ½£¿ÔÚfluent UDF ÊÖ²áÖйØÓÚÕâ¸öºêÎÒÖ»·¢ÏÖÔÚDEFINE_DPM_SPRAY_COLLIDEÖдæÔÚ£¬¹ØÓÚÕâ¸öºêµÄ½éÉÜÒ²ÊÇÒ»±Ê´ø¹ý¡£´óÉñ£¬ÄãÄÜÏêϸ˵Ï£¬»òÔòÍÆ¼ö¸ö×ÊÁÏÂð£¬udfÊÖ²áÖеĽéÉܺܲ»Ïêϸ£¬Óкܶ඼ÐèÒª×Ô¼º½áºÏ³ÌÐòÍÆ³öÊÇʲôÒâ˼¡£¡£ÎÒudfµÄÄ¿µÄÊÇÏë±éÀúÿ¸öÁ÷Ìåµ¥ÔªÖÐËùÓÐµÄÆøÅÝ£¬Í¨¹ýÀÛ¼ÓÆäÌå»ýÈ»ºóÇóµÃÆøÏàµÄÌå»ý·ÖÊý¡£´óÉñ£¬ÄãÄÜÍÆ¼öϼòµ¥µÄ·½·¨Â𣿲»Ê¤¸Ð¼¤¡£¡£»¹Óнð±Ò·îÉÏ

·¢×ÔСľ³æAndroid¿Í»§¶Ë
ÎðÍü³õÐÄ£¬·½µÃʼÖÕ¡£
4Â¥2019-06-16 00:15:38
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

Ç®äì

гæ (³õÈëÎÄ̳)

¡¾´ð°¸¡¿Ó¦Öú»ØÌû

ÒýÓûØÌû:
4Â¥: Originally posted by keen_xq at 2019-06-16 00:15:38
Ĥ°Ý´óÉñ¡£ÇëÎÊ´óÉñ£¬ÄãËù˵µÄparticle binÈçºÎ´´½¨£¬»òÕßÈçºÎµÃµ½£¿ÔÚfluent UDF ÊÖ²áÖйØÓÚÕâ¸öºêÎÒÖ»·¢ÏÖÔÚDEFINE_DPM_SPRAY_COLLIDEÖдæÔÚ£¬¹ØÓÚÕâ¸öºêµÄ½éÉÜÒ²ÊÇÒ»±Ê´ø¹ý¡£´óÉñ£¬ÄãÄÜÏêϸ˵Ï£¬»òÔòÍÆ¼ö¸ö×ÊÁÏ ...

ÇëÎÊÂ¥Ö÷½â¾öÕâ¸öÎÊÌâÁËÂð£¬ÎÒÒ²ÊÇÏ£Íûͨ¹ýUDF»ñµÃÁ÷ÌåÓòµÄÆøÒº±È£¬½á¹û£¬³ö¸÷ÖÖÎÊÌâ
5Â¥2020-05-19 16:44:38
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

Ç®äì

гæ (³õÈëÎÄ̳)

¡¾´ð°¸¡¿Ó¦Öú»ØÌû

ÒýÓûØÌû:
5Â¥: Originally posted by Ç®äì at 2020-05-19 16:44:38
ÇëÎÊÂ¥Ö÷½â¾öÕâ¸öÎÊÌâÁËÂð£¬ÎÒÒ²ÊÇÏ£Íûͨ¹ýUDF»ñµÃÁ÷ÌåÓòµÄÆøÒº±È£¬½á¹û£¬³ö¸÷ÖÖÎÊÌâ...

There is a loop available for looping over all the particles in a cell. But it does not work if used directly. Actually the array to bin the particles in the cell is not allocated by default. It has to be done before using this loop and then it will run ok.

So, at the top of the routine, please put,

Alloc_Storage_Vars(domain, SV_DPM_PARTICLE_BIN, SV_NULL);
bin_particles_in_cells(domain);

and at the botton, free up the memory with,

Free_Storage_Vars(domain, SV_DPM_PARTICLE_BIN, SV_NULL);
I am attaching my test UDF. It worked nicely for a simple 2d case in Linux.

#include "udf.h"
#include "surf.h"

DEFINE_ON_DEMAND(cell)
{

Domain *d=Get_Domain(1);
cell_t c;
int id;
Particle *p;

Thread *c_thread=Lookup_Thread(d,2); /*In my case 2 was the id of the fluid thread. Please change this number accordingly */

Alloc_Storage_Vars(d, SV_DPM_PARTICLE_BIN, SV_NULL);
bin_particles_in_cells(d);

begin_c_loop(c, c_thread)

{
/* Message("Cell_index=%dn",c);*/
begin_particle_cell_loop(p,c,c_thread)
{
id=p->part_id;
Message(" cell index=%d part_id=%d ",c,id);
}
end_particle_cell_loop(p,c,c_thread)
}

end_c_loop(c, c_thread)

Free_Storage_Vars(d, SV_DPM_PARTICLE_BIN, SV_NULL);

}
6Â¥2020-05-19 18:00:43
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
Ïà¹Ø°æ¿éÌø×ª ÎÒÒª¶©ÔÄÂ¥Ö÷ keen_xq µÄÖ÷Ìâ¸üÐÂ
×î¾ßÈËÆøÈÈÌûÍÆ¼ö [²é¿´È«²¿] ×÷Õß »Ø/¿´ ×îºó·¢±í
[¿¼ÑÐ] 294Çóµ÷¼Á +4 Grey_Ey 2026-04-01 5/250 2026-04-05 23:05 by Grey_Ey
[¿¼ÑÐ] 304Çóµ÷¼Á +7 c297914 2026-04-05 8/400 2026-04-05 22:13 by hemengdong
[¿¼ÑÐ] µ÷¼Á +3 Àî¹ã»ð 2026-04-05 3/150 2026-04-05 18:57 by À¶ÔÆË¼Óê
[¿¼ÑÐ] 0703»¯Ñ§ +12 ÄÝÄÝninicgb 2026-04-04 13/650 2026-04-05 10:46 by °¡¿¡£¡
[¿¼ÑÐ] 333Çóµ÷¼Á +12 wfh030413@ 2026-04-03 13/650 2026-04-04 21:02 by jj987
[¿¼ÑÐ] ÇóÉúÎïѧµ÷¼Á +14 15172915737 2026-04-01 14/700 2026-04-04 20:13 by babysonlkd
[¿¼ÑÐ] µ÷¼Á +4 ÊÇ¿ÉÀÖ²»ÊÇ¿ÉÀÖ 2026-04-04 4/200 2026-04-04 19:41 by ÌÆãå¶ù
[¿¼ÑÐ] 309·Ö085801Çóµ÷¼Á +11 MY_angel 2026-03-31 11/550 2026-04-04 19:11 by À¶ÔÆË¼Óê
[¿¼ÑÐ] 085701Çóµ÷¼Á +7 ¹¨ÓíÃú 2026-04-04 8/400 2026-04-04 13:49 by ССÊ÷2024
[¿¼ÑÐ] Ò»Ö¾Ô¸085404£¬×Ü·Ö291£¬Ëļ¶Òѹý£¬Çóµ÷¼Á +5 °¢¿¡°¢¿¡°¢¿¡ 2026-04-04 7/350 2026-04-04 13:23 by Á«²Ë¾ÍÊÇź°É
[¿¼ÑÐ] Çóµ÷¼Á£¬Ò»Ö¾Ô¸ÄϾ©º½¿Õº½Ìì´óѧ £¬080500²ÄÁÏ¿ÆÑ§Ó빤³Ìѧ˶ +10 @taotao 2026-04-03 10/500 2026-04-04 09:01 by T¿É¿ÉÎ÷ÀïT
[¿¼ÑÐ] ÉúÎïѧ308·ÖÇóµ÷¼Á£¨Ò»Ö¾Ô¸»ª¶«Ê¦´ó£© +7 ÏàÐűػá¹ââÍòÕ 2026-04-02 7/350 2026-04-03 16:48 by rzh123456
[¿¼ÑÐ] 313Çóµ÷¼Á +3 ¡«Î¢Î¢Á¹¡« 2026-04-03 3/150 2026-04-03 11:25 by à£à£à£0119
[¿¼ÑÐ] 279Çóµ÷¼Á +6 qazplm0852 2026-04-02 6/300 2026-04-03 10:03 by À¶ÔÆË¼Óê
[¿¼ÑÐ] 273Çóµ÷¼Á +20 ÀîÜÆÐÂ1 2026-03-31 20/1000 2026-04-03 09:58 by linyelide
[¿¼ÑÐ] Ò»Ö¾Ô¸Ö£´ó²ÄÁϹ¤³Ì290Çóµ÷¼Á +20 Youth_ 2026-03-30 20/1000 2026-04-02 14:48 by 5896
[¿¼ÑÐ] 302Çóµ÷¼ÁÒ»Ö¾Ô¸±±º½070300£¬±¾¿ÆÖ£´ó»¯Ñ§ +8 Ê¥ÈÕ¶úÂüÌõ 2026-04-01 11/550 2026-04-02 07:40 by chemdavid
[˶²©¼ÒÔ°] ²©Ò»±»ËͳöÁªÅà¸Ð¾õ²»ÊÊÓ¦Ôõô°ì +3 È«´åµÄ¹· 2026-03-31 3/150 2026-04-01 10:44 by 328838485
[¿¼ÑÐ] Çóµ÷¼Á£ºÒ»Ö¾Ô¸£ºÄϾ©´óѧ רҵ£º0705 ×Ü·Ö320 £¬±¾¿Æ985£¬ËÄÁù¼¶Òѹý +3 lfy760306 2026-03-31 3/150 2026-04-01 01:57 by Creta
[¿¼ÑÐ] 262Çóµ÷¼Á +7 ZZ..000 2026-03-30 8/400 2026-03-31 10:05 by cal0306
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û