²é¿´: 6801  |  »Ø¸´: 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-27 02:26 by xxniao123
[»ù½ðÉêÇë] »ù½ð²»ÖУ¬¹²Ãã +5 eulota 2026-08-26 5/250 2026-08-26 23:33 by young90
[»ù½ðÉêÇë] ¿´°åÉÏÕâô¶àÖеģ¬ÓеãÏñ50ÈËȺÀï49¸öÈ˶¼ÊÇÆ­×ÓµÄÄÇÖָоõ¡­¡­ +3 a089 2026-08-26 3/150 2026-08-26 23:21 by young90
[»ù½ðÉêÇë] ÎÒ²»Àí½â£¡ +15 Edward_pc 2026-08-26 23/1150 2026-08-26 20:34 by zzuzxg
[»ù½ðÉêÇë] 2026ÄêµÄ¹ú¼ÒÉç¿Æ»ù½ðÏîĿͨѶÆÀÉóµÄйæÔòÓëж¯Ïò¡¢ÐÂÌôÕ½ +7 process2012 2026-08-23 10/500 2026-08-26 19:23 by hmhminy
[»ù½ðÉêÇë] ϵͳ²é²»µ½ +10 ¶­°Ëǧ 2026-08-26 10/500 2026-08-26 16:30 by Equinoxhua
[»ù½ðÉêÇë] ÄÄλ¸ßÈËÖÐÁË£¬°Ñ²éѯµ½µÄ½ØÍ¼Ìù³öÀ´ÈÃÎÒ¿´¿´£¬ÈÃÎÒ³¤³¤¼ûʶ +4 yuleib84 2026-08-26 5/250 2026-08-26 13:40 by yuleib84
[»ù½ðÉêÇë] Ϊʲô¹ú×ÔÈ»²»ÄÜÖ±½Ó¹«²¼ +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
[»ù½ðÉêÇë] ¹ú¼ÊºÏ×÷¿É²éÁË£¬ÖÐÁËÃæÉÏ +18 Ldrop2023 2026-08-26 18/900 2026-08-26 11:15 by cmrandy
[Ö°³¡ÈËÉú] ѧÉúײ¼û¸¨µ¼Ô±ËÍÍâÂô£¬µÚ¶þÌìÈ«°à¶¼³ÁĬÁË +3 ¾¨ÓãÈÚ½ð_Õã½­_É 2026-08-22 3/150 2026-08-26 09:01 by zzuzxg
[»ù½ðÉêÇë] ÔÚ¼á±ù»¹¸Ç×ű±º£µÄʱºò£¬ÎÒ¿´µ½ÁËÅ­·ÅµÄ÷»¨¡£ (½ð±Ò+10) +6 ziyangfang 2026-08-25 9/450 2026-08-25 20:26 by huagongfeihu
[»ù½ðÉêÇë] Ã÷ÌìÓ¦¸Ã¿É²éÁË£¡£¿ +6 chengyan1220 2026-08-23 6/300 2026-08-25 19:45 by zfd97
[»ù½ðÉêÇë] 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 ҽѧÀÏÄк¢
[½Ìʦ֮¼Ò] Ìø²ÛºóÔÚÑÐÏîÄ¿Ôõô°ì£¿ +5 ¼òµ¥»¯xn 2026-08-22 10/500 2026-08-23 12:38 by ¼òµ¥»¯xn
[»ù½ðÉêÇë] ʱ¼ä´Á½ñÌ죬20ºÅ±äÁË +5 archvillain 2026-08-20 5/250 2026-08-22 06:12 by hui_daxiao
[»ù½ðÉêÇë] ¿´À´½ñÌì²»»á·Å°ñÁË£¿ +8 chengyan1220 2026-08-21 11/550 2026-08-21 17:52 by dcqxinyang
[»ù½ðÉêÇë] ʱ¼ä´ÁÓÖ±äÁË +13 wuchongjun 2026-08-20 19/950 2026-08-21 17:21 by ×Ïɼ´¼
[»ù½ðÉêÇë] »ù½ð°¡»ù½ð +4 longfie172 2026-08-20 4/200 2026-08-21 08:58 by mark mao
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û