24小时热门版块排行榜    

Znn3bq.jpeg
查看: 4601  |  回复: 5
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

chongping

新虫 (初入文坛)

[求助] 进行非稳态计算时,UDF怎样输出数据到txt文件 已有2人参与

我现在遇到了一个问题 我编译了一个函数
#include "udf.h"
#include "mem.h"
#include "dynamesh_tools.h"
real x_cg[ND_ND];
real f_glob[ND_ND];
real m_glob[ND_ND];
int i;
FILE *fp;
real time;
DEFINE_SDOF_PROPERTIES(li,prop,dt,time,dtime)
{

Thread *t;
Domain *domain=Get_Domain(1);
t=Lookup_Thread(domain,9);
time=RP_Get_Real("flow-time";

prop[SDOF_MASS]=3.89;
prop[SDOF_IXX]=0.00102;
prop[SDOF_IYY]=0.02709;
prop[SDOF_IZZ]=0.02709;
prop[SDOF_LOAD_F_X]=200;
for(i=0;i<=ND_ND;i++)
{
f_glob=0;
m_glob=0;
}
for(i=0;i<ND_ND;i++)
x_cg=DT_CG(dt);

Compute_Force_And_Moment(domain,t,x_cg,f_glob,m_glob,TRUE);
Message ("ntime=%f ,x=%.10lf ,y=%.10lf , z=%.10lf , force_x=%.1f ,force_y=%.1f ,force_z=%.1f moment_x=%f,moment_y=%f,moment_z=%f", time,x_cg[0],x_cg[1],x_cg[2],f_glob[0],f_glob[1],f_glob[2],m_glob[0],m_glob[1],m_glob[2]);
}

DEFINE_ADJUST(name,d)
{
Domain *domain;
domain=Get_Domain(1);
fp=fopen("shuju.txt","w";
for(i=0;i<ND_ND;i++)
{

fprintf(fp,"ntime=%f ,x=%.10lf ,y=%.10lf , z=%.10lf , force_x=%.1f ,force_y=%.1f ,force_z=%.1f moment_x=%f,moment_y=%f,moment_z=%f", time,x_cg[0],x_cg[1],x_cg[2],f_glob[0],f_glob[1],f_glob[2],m_glob[0],m_glob[1],m_glob[2]);
}
fclose(fp);
}
  我想输出txt文件,我创建的shuju.txt文件出现工作目录中  但是 fprintf输出的数据 只显示一次迭代结果,下一步迭代时间步时就会覆盖掉上一个时间步的计算结果  意思就是说shuju.txt始终只有一行数据   这是怎么回事 ?
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xwx1990

金虫 (正式写手)

【答案】应助回帖

每个计算节点都会调用一次程序,所以有多次输出
加宏(并行计算)
#if RP_HOST
#endif
努力工作
5楼2016-03-24 11:40:46
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 6 个回答

huaixi0418

金虫 (初入文坛)

【答案】应助回帖

感谢参与,应助指数 +1
把fopen中的w换为a

[ 发自小木虫客户端 ]
走在学术的大道上
2楼2014-06-21 12:31:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

chongping

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by huaixi0418 at 2014-06-21 12:31:23
把fopen中的w换为a

谢谢你  我试过了 是可行的  但是有一个问题我想问一下,
我的每步迭代结果都会出现三次 为什么呢  期盼解答
3楼2014-06-23 21:41:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

huaixi0418

金虫 (初入文坛)

【答案】应助回帖

引用回帖:
3楼: Originally posted by chongping at 2014-06-23 21:41:52
谢谢你  我试过了 是可行的  但是有一个问题我想问一下,
我的每步迭代结果都会出现三次 为什么呢  期盼解答...

好像是循环的问题,你把最后一个循环for(i=0;i<ND_ND;i++)删掉,直接用fprintf
走在学术的大道上
4楼2014-06-24 00:38:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 调剂 +4 osbbx 2026-04-02 4/200 2026-04-08 22:52 by may_新宇
[考研] 311求调剂 +5 surte 2026-04-08 11/550 2026-04-08 22:10 by 土木硕士招生
[考研] 085600材料与化工301分求调剂院校 +27 刺痛jk 2026-04-06 28/1400 2026-04-08 16:16 by luoyongfeng
[考研] 一志愿南京航空航天大学 材料与化工329分求调剂 +11 Mr. Z 2026-04-05 12/600 2026-04-08 16:15 by luoyongfeng
[考研] 材料专硕(0856) 339分求调剂 +16 哈哈哈鹅哈哈哈 2026-04-05 16/800 2026-04-08 16:02 by luoyongfeng
[考研] 274求调剂求调剂 +10 Jachenbingoo 2026-04-06 13/650 2026-04-08 14:25 by zhq0425
[考研] 0703总分331求调剂 +17 ZY-05 2026-04-04 21/1050 2026-04-08 10:16 by screening
[考研] 307求调剂 +14 超级伊昂大王 2026-04-06 14/700 2026-04-08 07:03 by 无际的草原
[考研] 生物医药调剂|SCI中科院三区一作+多项科研成果 +8 likangxing 2026-04-07 11/550 2026-04-08 00:02 by lys0704
[考研] 298求调剂 +4 残荷新柳 2026-04-07 4/200 2026-04-07 23:02 by lbsjt
[考研] 一志愿西南090202求调剂 +4 在线求有学上 2026-04-07 4/200 2026-04-07 19:47 by biomichael
[考研] 一志愿南科大生物学297分,求调剂推荐 +8 Y-yyusx 2026-04-06 9/450 2026-04-07 19:38 by biomichael
[考研] 专硕085403,291分,有两篇专利,一国一奖 +3 哈吉咪哈吉咪 2026-04-07 3/150 2026-04-07 18:21 by 蓝云思雨
[考研] 269电子信息求调剂,可转专业 +5 独酌wl 2026-04-06 5/250 2026-04-06 17:23 by 土木硕士招生
[考研] 085600,320分求调剂 +16 大馋小子 2026-04-04 17/850 2026-04-06 07:58 by MOF_Catal
[考研] 一志愿211,化学学硕,310分,本科重点双非,求调剂 +13 努力奋斗112 2026-04-04 13/650 2026-04-06 07:13 by jj987
[考研] 26考研调剂0710 0860 +9 补补不补 2026-04-03 14/700 2026-04-04 23:32 by 果冻大王
[考研] 334求调剂 +8 曾仰之 2026-04-03 8/400 2026-04-04 11:16 by w_xuqing
[考研] 387求调剂 +4 爱吃片豆土 2026-04-03 5/250 2026-04-04 08:10 by 岸上的一条鱼
[考研] 081200-11408-276学硕求调剂 +6 崔wj 2026-04-02 6/300 2026-04-03 10:19 by 蓝云思雨
信息提示
请填处理意见