24小时热门版块排行榜    

Znn3bq.jpeg
查看: 4603  |  回复: 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的回帖

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的回帖

xwx1990

金虫 (正式写手)

【答案】应助回帖

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

zjzhoujun

新虫 (小有名气)

想问一下,您提到的迭代三次我也遇到了,是在并行时遇到的还是串行也会出现同样的问题,请问您是怎样解决的?
6楼2016-09-28 20:54:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 学员4FH1YX 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 085600,321分求调剂 +18 大馋小子 2026-04-04 19/950 2026-04-09 10:07 by 猪会飞
[考研] 085600材料与化工专硕329 求调剂 +22 额cc 2026-04-06 23/1150 2026-04-09 09:02 by 5268321
[考研] 290求调剂085701 +20 1314捧花 2026-04-02 21/1050 2026-04-08 21:19 by cyh—315
[考研] 269求调剂 +6 啊啊我我 2026-04-07 6/300 2026-04-08 20:04 by 我减肥1
[考研] 求调剂 +9 月@163.com 2026-04-07 11/550 2026-04-08 14:48 by qlm5820
[考研] 电子信息346 +4 zuoshaodian 2026-04-08 4/200 2026-04-08 11:54 by zzucheup
[考研] 22408 266求调剂 +11 masss11222 2026-04-07 14/700 2026-04-08 11:06 by yulian1987
[考研] 0703化学调剂325分 +13 15771691647 2026-04-04 14/700 2026-04-08 10:28 by screening
[考研] 287求调剂 +10 Fnhc 2026-04-07 16/800 2026-04-08 10:07 by xingguangj
[考研] 274求调剂 +4 山阿蔓 2026-04-07 4/200 2026-04-08 09:49 by eyeliyang
[考研] 材料调剂 +13 汉123456 2026-04-07 14/700 2026-04-07 22:53 by 来看流星雨10
[考研] 调剂 +18 不逢春 2026-04-05 19/950 2026-04-07 22:04 by lijunpoly
[考研] 生物工程求调剂 +13 喜欢还是不甘心 2026-04-05 13/650 2026-04-07 16:55 by Ecowxq666!
[考研] 081700学硕,323分,一志愿中国海洋大学求调剂学校 +19 披星河 2026-04-04 19/950 2026-04-07 15:00 by 上岸快快
[考研] 华南理工0703化学,总分336求调剂 +10 手机用户 2026-04-03 11/550 2026-04-06 22:20 by michael2011
[考研] 生物学求调剂 一志愿沪9,326分 +6 刘墨墨 2026-04-06 6/300 2026-04-06 19:36 by lijunpoly
[考研] 材料调剂 +13 一样YWY 2026-04-03 14/700 2026-04-05 18:20 by 蓝云思雨
[考研] 工科277分求调剂材料 +8 上了上了上哦 2026-04-05 9/450 2026-04-05 13:05 by wwytracy
[考研] 本9一志愿2 0854低分专硕286求调剂 +9 芒种111 2026-04-04 9/450 2026-04-04 11:01 by tangruihua
[考研] 22408 266求调剂 +3 masss11222 2026-04-02 3/150 2026-04-02 18:11 by 笔落锦州
信息提示
请填处理意见