24СʱÈÈÃŰæ¿éÅÅÐаñ    

²é¿´: 6800  |  »Ø¸´: 12

water217

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

[ÇóÖú] ÈçºÎÓÃCompute_Force_And_Momentº¯ÊýÇóÁ÷Ìå¶ÔÔ˶¯ÒíÐ͵ĸ©ÑöÁ¦¾Ø ÒÑÓÐ1È˲ÎÓë

ʹÓÃfluentµÄ¶¯Íø¸ñ¹¦ÄÜÄ£ÄâÁËÁ÷ÌåÈÆ¸©Ñö-Éý³ÁÕñµ´¶þάÒíÐ͵ÄÁ÷³¡ºó£¬ÏëµÃµ½×÷ÓÃÓÚÒíÐ͸©Ñö²Î¿¼ÖáÉϵĸ©ÑöÁ¦¾ØËæÊ±¼äµÄ±ä»¯¹ØÏµ£¬²ÉÓÃÁ˺¯ÊýCompute_Force_And_Moment(domain, thread, body_centroid, force, moment, FALSE);À´Çó½â£¬¿ÉÊÇËãÏÂÀ´µÄ¸©ÑöÁ¦¾ØÃ÷ÏÔÓÐÎÊÌ⣨ͼƬÖеĸ©ÑöÁ¦¾Ø¶¼ÊÇÕýÖµ£¬¿ÉÊǸ©ÑöÕñµ´ÒÔºó¹¥½ÇÓÐÕýÓиº£¬¸©ÑöÁ¦¾Ø¿Ï¶¨ÓиºÖµµÄÇé¿ö£©£¬¸ü»»Ä£Ð͸©ÑöÖáµÄ²Î¿¼Î»Öú󣬽á¹ûҲûÓÐʲô±ä»¯£¨Ò»¸ö²Î¿¼ÖáÈ¡¾àǰԵ0.3±¶µÄÏÒ³¤£¬Ò»¸öÈ¡0.6±¶µÄÏÒ³¤£¬½á¹û·åÖµ²î²»¶à£¬±ä»¯¹æÂÉ»ù±¾Ò»Ñù£©£¬ÇëÎÊCompute_Force_And_MomentĬÈϵÄÁ¦¾Ø²Î¿¼ÖáÊÇʲôλÖã¿ÎҵijÌÐòΪʲôÊä³öµÄÁ¦¾ØÏµÊýÓÐÎÊÌ⣿
Õâ¸ö³ÌÐòÀïÇóµÃµÄÁ¦¾ØÊÇÏà¶ÔÓÚ£¬´óµØ×ø±êϵ£¬»¹ÊÇËæÌå×ø±êϵ£¬Ð»Ð»
¸½³ÌÐò£º
#include "udf.h"
#include "mem.h"
#include "dynamesh_tools.h"
#include "math.h"
/************************************************************/
FILE*fp;
real current_time = 0.0000 ;
static real vel[3]={0,0,0};/* ³õʼËÙ¶È*/
static real omega[3]={0,0,0};/* ³õʼ½ÇËÙ¶È*/
static real body_centroid[3]={0,0,0};/* ³õʼÐÎÐÄλÖÃ,ÐèÒªÐÞ¸Ä*/
static real Chord=0.1,F_density=998.2,U_flow=2;
static real pi=3.1416,frequency=2.0000,Y_amplitude=0.1,w_amplitude=0.8727;
real NV_VEC( origin ),NV_VEC( force ),NV_VEC( moment );
real C_momentr;
/************************************************************/
DEFINE_CG_MOTION(hydrofoil,dt,vel,omega,time,dtime)
{
        Domain * domain ;
        Thread * thread ;
        face_t  f;
        current_time = CURRENT_TIME ;
        vel[0] = 0.0 ;
        vel[1] =2*pi*frequency*Y_amplitude*cos(2*pi*frequency*current_time+pi/2);
        vel[2] = 0.0 ;
        omega[0] = 0.0 ;
        omega[1] = 0.0 ;
        omega[2] =2*pi*frequency*w_amplitude*cos(2*pi*frequency*current_time);
        thread=DT_THREAD(dt);
        domain = THREAD_DOMAIN (thread);
/************************************************************/
                body_centroid[0]=DT_CG(dt)[0];/* »ñÈ¡ÐÎÐÄ×ø±ê*/
                body_centroid[1]=DT_CG(dt)[1];/* »ñÈ¡ÐÎÐÄ×ø±ê*/
         Compute_Force_And_Moment(domain, thread, body_centroid, force, moment, FALSE);/* ¼ÆËãË®Òí×ܵÄÊÜÁ¦Çé¿ö*/
        C_moment=moment[2]/(0.5*F_density*U_flow*U_flow*Chord*Chord);/* ¼ÆË㸩ÑöÁ¦¾ØÏµÊý*/
fp=fopen("D:\\moment_coefficient.dat", "a+";
        fprintf(fp, "%12f",C_moment);
        fprintf(fp, "\n";
        fclose(fp);
}

δÃüÃû.JPG

[ Last edited by water217 on 2013-1-24 at 17:55 ]
»Ø¸´´ËÂ¥

» ÊÕ¼±¾ÌûµÄÌÔÌûר¼­ÍƼö

CFD_study

» ²ÂÄãϲ»¶

» ±¾Ö÷ÌâÏà¹Ø¼ÛÖµÌùÍÆ¼ö£¬¶ÔÄúͬÑùÓаïÖú:

ÂÊÐÔ¶øÎª¡­¡­
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
»ØÌûÖ§³Ö ( ÏÔʾ֧³Ö¶È×î¸ßµÄǰ 50 Ãû )

dhonghui

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

"This function needs size of 3 for force and moment. It works in parallel and
the common arguments are the of the same type as your arguments.
In addition you have to pass the domain as first arg and a boolean as
last argument. This boolean has to be TRUE if you also call the function
on the host else it has to be FALSE."

Compute_Force_And_Moment (domain, tf, CG, force, moment, FALSE);

domain = THREAD_DOMAIN (DT_THREAD ((Dynamic_Thread *)dt)); - pointer on Domain
tf = Lookup_Thread(domain, ID); - pointer on the Thread in Domain

I don't know if "force" includes viscose and pressure force or only pressure force!!!
************************************************** **************
compute viscose force in UDF

you have to define in mem.h header or in local c-file this macro:

#define F_VISCOSE(f,tf) F_STORAGE_R_N3V(f,tf,SV_WALL_SHEAR)

Thread *tf = DT_THREAD(dt); /*pointer on thread*/
face_t f; /*number of faces*/

begin_f_loop(f, tf)
{
NV_VS(F_VISC, += , F_VISCOSE(f, tf), *, -1.0 * k); /* compute viscose force vector. k is a factor for depth in 2D computation and -1.0 corrects the sign of viscose force*/

}
end_f_loop(f, tf);
from http://www.cfd-online.com/Forums ... rce_and_moment.html
9Â¥2014-09-17 14:11:33
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
ÆÕͨ»ØÌû

dragonship

Ìú¸Ëľ³æ (ÕýʽдÊÖ)

Ĥ°Ý¡£ÇëÎÊÄãÕâЩÊÇ´ÓÄÄÀïѧϰµÄ£¬ÎÒÒ²ÏëŪ£¬ÒòΪ´¬²°ÊÜÁ¦ºÍ»úÒíÓкܶàÏàËÆÖ®´¦¡£ÍûÖ¸µã¡£
2Â¥2013-01-30 09:32:36
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

watcher007

гæ (ÕýʽдÊÖ)

¡ï ¡ï
xiegangmai: ½ð±Ò+2, ¹ÄÀøÌÖÂÛ½»Á÷£¡ 2013-02-11 10:09:27
Â¥Ö÷ ÄãCompute_Force_And_Moment(domain, thread, body_centroid, force, moment, FALSE)Õâ¸öÀïÃæµÄΪʲôÊÇÓÃFALSE£¬ÎÒÒ»Ö±ÓõÄÊÇTRUE£¬ÎÒ¸Õ²ÅÓÃÒ»¸ö¼òµ¥µÄËãÀýËãÁËÒ»ÏÂÕâ¸öÀïÃæµÄforceºÃÏñû´í
3Â¥2013-02-02 11:27:56
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

xhd1_moon

Òø³æ (ÕýʽдÊÖ)

²»ÊǺܶ®£¬
4Â¥2013-02-05 22:31:35
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

water217

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

ÒýÓûØÌû:
3Â¥: Originally posted by watcher007 at 2013-02-02 11:27:56
Â¥Ö÷ ÄãCompute_Force_And_Moment(domain, thread, body_centroid, force, moment, FALSE)Õâ¸öÀïÃæµÄΪʲôÊÇÓÃFALSE£¬ÎÒÒ»Ö±ÓõÄÊÇTRUE£¬ÎÒ¸Õ²ÅÓÃÒ»¸ö¼òµ¥µÄËãÀýËãÁËÒ»ÏÂÕâ¸öÀïÃæµÄforceºÃÏñû´í

ÎҼǵÃÎÒ¿ªÊ¼Óùýtrue    ºÃÏñÊdzö´íÁË    È»ºóÓÃfalse¾Íû´íÁË    ÏÖÔÚÒ²²»ÖªµÀµ±Ê±´íÎóµ½µ×ÊDz»ÊÇtrue or falseµÄÎÊÌâ¡£
ÂÊÐÔ¶øÎª¡­¡­
5Â¥2013-02-20 17:54:58
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

water217

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

water217: »ØÌûÖö¥ 2013-03-07 18:13:00
¿ªÑ§ÁË£¬Õâ¸öÎÊÌ⻹ÊÇûÓнâ¾ö£¬ÍûÓë´ó¼Ò¼ÌÐøÌ½ÌÖ
ÂÊÐÔ¶øÎª¡­¡­
6Â¥2013-02-21 09:30:32
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

universewang

½ð³æ (ÕýʽдÊÖ)

ÎÒÒ²ÊDZ»¶¯Íø¸ñ¿¨×¡µÄ¡£ÎÒ×öµÄÊÇDZͧµÄË®¶¯Á¦ÏµÊý¡£¡£¡£¿¨ËÀÒ»¸öÔÂÁË£¬£¬£¬Õâ±ÏÒµÂÛÎÄ¿ÉÔõôÕû£¡³îÈË
ÎÞËùη¾å
7Â¥2014-03-06 16:35:29
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

chongping

гæ (³õÈëÎÄ̳)

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

¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï
water217: ½ð±Ò+20, ¡ï¡ï¡ï¡ï¡ï×î¼Ñ´ð°¸, ¶¼¸øÄãÁË 2014-07-03 21:17:17
ÎÒÓÃ6DOF¼ÆËãʱ£¬ÓõÄfalseÊÇÌå×ø±êϵÉϵÄÁ¦ºÍÁ¦¾Ø¡£
¾ÝÎÒÔÚÍøÉÏ¿´µ½µÄ×ÊÁÏ£¬ËµtrueºÍfalseÊÇÂß¼­ÔËËã·û£¬true±íʾִÐиÃÓï¾ä£¬false±íʾ²»Ö´ÐС£µ«ÊÇ£¬¾­¹ý³¢ÊÔ£¬falseÒ²Ö´ÐÐÓï¾ä¡£ÇÒÁ½ÕßÊä³öµÄÁ¦ºÍÁ¦¾ØÊÇÓвîÒìµÄ
8Â¥2014-07-03 15:25:06
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

water217

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

ÒýÓûØÌû:
9Â¥: Originally posted by dhonghui at 2014-09-17 14:11:33
"This function needs size of 3 for force and moment. It works in parallel and
the common arguments are the of the same type as your arguments.
In addition you have to pass the domain as first  ...

лл£¬ÄúµÄ»Ø¸´Ì«ÓмÛÖµÁË£¬½«ÓÐÓÐÈË¿´µ½±¾Ìù±Ø½«´óÓÐÊÕ»ñ
ÂÊÐÔ¶øÎª¡­¡­
10Â¥2014-09-20 16:27:00
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
Ïà¹Ø°æ¿éÌø×ª ÎÒÒª¶©ÔÄÂ¥Ö÷ water217 µÄÖ÷Ìâ¸üÐÂ
×î¾ßÈËÆøÈÈÌûÍÆ¼ö [²é¿´È«²¿] ×÷Õß »Ø/¿´ ×îºó·¢±í
[»ù½ðÉêÇë] ͶƱ:  ÓжàÉÙÈËÊǽñÌì²éϵͳ֪µÀ½á¹ûµÄ£¿ +15 °®¿´ÊéµÄ¿ÉÀÖ 2026-08-26 17/850 2026-08-26 22:24 by xxniao123
[»ù½ðÉêÇë] ÎÒ²»Àí½â£¡ +15 Edward_pc 2026-08-26 23/1150 2026-08-26 20:34 by zzuzxg
[»ù½ðÉêÇë] ϵͳ²é²»µ½ +10 ¶­°Ëǧ 2026-08-26 10/500 2026-08-26 16:30 by Equinoxhua
[»ù½ðÉêÇë] Ôõô²é°¡ +5 huang1991js 2026-08-26 5/250 2026-08-26 16:09 by Equinoxhua
[»ù½ðÉêÇë] ·¶½øÖоÙÒ»ÎĵÄÖÐÐÄ˼Ïë +9 Ñ׻ƹóëÐ 2026-08-22 10/500 2026-08-26 15:40 by semaglutide
[»ù½ðÉêÇë] 2026Äê8ÔÂ25ÈÕ¹ú×ÔÈ»·Å°ñǰͻȻÊÕµ½ÁÐÈëÆÀÉóר¼ÒÓʼþ£¬ÓйØÏµÂ𣿠+25 ľˮ˼¶¹ 2026-08-25 28/1400 2026-08-26 14:53 by draco1987
[»ù½ðÉêÇë] Ϊʲô¹ú×ÔÈ»²»ÄÜÖ±½Ó¹«²¼ +4 bjdxyxy 2026-08-26 4/200 2026-08-26 13:12 by qingmu1201
[»ù½ðÉêÇë] ¿ÆÑй¶ùÌ«ÄÑÁË +21 ÎÒ4´ó°×²Ë 2026-08-20 22/1100 2026-08-26 11:29 by nlgza
[»ù½ðÉêÇë] ϵͳ½ø²»È¥ +4 yanglien 2026-08-26 5/250 2026-08-26 11:10 by wenfengw83
[»ù½ðÉêÇë] Ôõô¿´Çà»ùÖÐÁËûÓа¡ +4 Ò¶¾Å΢ 2026-08-26 4/200 2026-08-26 10:52 by xiacongxu
[Ö°³¡ÈËÉú] ѧÉúײ¼û¸¨µ¼Ô±ËÍÍâÂô£¬µÚ¶þÌìÈ«°à¶¼³ÁĬÁË +3 ¾¨ÓãÈÚ½ð_Õã½­_É 2026-08-22 3/150 2026-08-26 09:01 by zzuzxg
[»ù½ðÉêÇë] ¹úºÏÏÖÔڲ鲻µ½ÁËÂ𣿠+10 chengyan1220 2026-08-24 20/1000 2026-08-26 08:57 by peasantsprig
[»ù½ðÉêÇë] ijЩ»ú¹¹£¬ÒÔЧÂʵÍΪÈÙ£¬ÒÔЧÂʵÍ×÷Ϊ´æÔڸР+9 yuleib84 2026-08-25 10/500 2026-08-25 17:14 by alexon
[»ù½ðÉêÇë] ½ñÈÕ²»·Å°ñ£¿Íø´«¹ú×ÔȻԤ¼Æ 8 Ô 27 Èտɲé½á¹û +17 ҽѧÀÏÄк¢ 2026-08-20 22/1100 2026-08-25 15:36 by ҽѧÀÏÄк¢
[»ù½ðÉêÇë] ÈËÆø²»ÐÐÁË +11 fansofjerry 2026-08-21 11/550 2026-08-25 11:04 by ¹Â¶ÀµÄÓ¢ÐÛ6
[»ù½ðÉêÇë] ÎÒÃæÉÏÍêµ°ÁË +13 ÇÒÌý»¢Ð¥ 2026-08-20 14/700 2026-08-25 09:10 by mrkang
[»ù½ðÉêÇë] ½¨Òé»ù½ð·¢²¼Ìáǰ¸ø³öÃ÷È·µÄʱ¼äµã +13 kulium 2026-08-21 16/800 2026-08-24 16:27 by superceng
[»ù½ðÉêÇë] ÈÃÎÒÖÐÒ»¸öÃæÉϰɣ¡ +13 ´óƼ1987 2026-08-20 16/800 2026-08-24 10:23 by ̫ɵÁË
[»ù½ðÉêÇë] ¿´À´½ñÌì²»»á·Å°ñÁË£¿ +8 chengyan1220 2026-08-21 11/550 2026-08-21 17:52 by dcqxinyang
[»ù½ðÉêÇë] Ó¦¸ÃÊÇÏÂÖÜÈý26ÈÕ¹«²¼Á˰ɣ¿ +4 ¹þ¹þ¸ò£¿ 2026-08-21 4/200 2026-08-21 10:58 by Vivilian
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û