24小时热门版块排行榜    

查看: 4768  |  回复: 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的回帖

zjzhoujun

新虫 (小有名气)

想问一下,您提到的迭代三次我也遇到了,是在并行时遇到的还是串行也会出现同样的问题,请问您是怎样解决的?
6楼2016-09-28 20:54:37
已阅   回复此楼   关注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的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 应该是93bebmhtak前后十一个字符比较关键 +17 Lanmanbaby 2026-08-09 29/1450 2026-08-12 00:24 by zhanghaozhu
[基金申请] 奇怪,两个人的filecode固定段从头到尾一模一样 +7 布布和一二 2026-08-10 9/450 2026-08-11 22:12 by 医学老男孩
[基金申请] 小木虫上这么多卖论文的,真有人买论文么?感觉没必要啊 +8 Tide man 2026-08-10 9/450 2026-08-11 20:39 by beefly
[基金申请] 有时候,自然基金真的不能太认真 (我的申报经验) +3 majunge000 2026-08-11 4/200 2026-08-11 20:13 by lch2012
[基金申请] 为什么网上很多人说本周 12号出结果 +6 瞬息宇宙 2026-08-10 7/350 2026-08-11 19:25 by Tide man
[硕博家园] 读博的好处 +3 lnee 2026-08-11 3/150 2026-08-11 18:10 by 希望我好好的
[基金申请] 什么时候出结果,有咨询渠道??? +3 Tide man 2026-08-11 3/150 2026-08-11 17:54 by kudofaye
[基金申请] 听说今天filecode变了 +26 布布和一二 2026-08-06 49/2450 2026-08-11 13:18 by WH3796
[基金申请] FileCode能看出啥? +7 要乐观耀哥 2026-08-10 17/850 2026-08-11 10:50 by 要乐观耀哥
[基金申请] filecode +9 documentary 2026-08-10 9/450 2026-08-11 10:08 by wk7465
[基金申请] 基金中了 +15 laoda193707 2026-08-06 15/750 2026-08-11 00:11 by jiafei2190
[基金申请] 确定了,国自然21号放榜 +6 布布和一二 2026-08-10 7/350 2026-08-10 19:15 by 2000zf36392
[基金申请] 关于Filecode分析方法 +3 majunge000 2026-08-10 3/150 2026-08-10 15:46 by lch2012
[基金申请] 国自然结果 +4 Vierhys 2026-08-10 8/400 2026-08-10 15:06 by Vierhys
[基金申请] 据悉今年马上要出结果了 +7 瞬息宇宙 2026-08-10 8/400 2026-08-10 12:42 by Vivilian
[基金申请] 2026国自然放榜时间 +9 布布和一二 2026-08-08 9/450 2026-08-10 11:22 by xxxx2020
[基金申请] 这样的filecode谁见过 +11 布布和一二 2026-08-08 22/1100 2026-08-10 11:10 by wmfsnow
[基金申请] fileCode有新解读? +10 Tide man 2026-08-08 18/900 2026-08-09 12:55 by 仁砚薪传
[基金申请] 化学口download_prp&amp;fileCode的固定段好像这几天一直没变,有变的大神么? +3 Tide man 2026-08-07 4/200 2026-08-07 22:39 by Tide man
[基金申请] filecode +14 等待解的谜 2026-08-06 19/950 2026-08-07 12:20 by wlwhappy
信息提示
请填处理意见