Linux下怎么让Fluent调用gcc,c - 用于CFD求解器Fluent的UDF(C代码)writtern的段违规问题 - 堆栈内存溢出...

用户定义函数(UDF)是可以编程的函数,可以与CFD软件Fluent Solver一起动态加载以增强标准功能。 UDF是用C编程语言编写的。

以下是我的UDF的一部分:

/*Memory Allocation only at first call to the subroutine*/

if(CellAroundNodeFirstCallflag==0)

{

CellAroundNodeFirstCallflag=1;

Avg_CellAroundNode =(cell_t**)calloc((Nnum+1),sizeof(cell_t));

for(i=0;i

{

Avg_CellAroundNode[i] =(cell_t*)calloc((NCellANode+1),sizeof(cell_t));

}

}

if (Avg_CellAroundNode!=NULL)

{

Message("Check: Not Null.... \n");

}

Message("CHECK Enter... \n.");

Message("Check:Array size %d %d \n",Nnum,NCellANode);

/*Initializing the matrix*/

for(i=0;i

{

for(j=0;j

{

Message("Check:Initalizing cell: %d %d \n",i,j);

Avg_CellAroundNode[i][j]=-1;

}

}

Message("CHECK Exit....");

我在Windows 32位中使用VC ++进行上述代码编译没有任何问题。 但在Windows 64位和Linux 32/64位(使用GCC)..我收到以下错误:

==============================================================================

Stack backtrace generated for process id 10801 on signal 1 :

Please include this information with any bug report you file on this issue!

==============================================================================

Data.In is read...

Check: Not Null....

CHECK Enter...

Check:Array size 10 20

Check:Initalizing cell: 0 0

Check:Initalizing cell: 0 1

Check:Initalizing cell: 0 2

.

.

Check:Initalizing cell: 7 18

Check:Initalizing cell: 7 19

Check:Initalizing cell: 8 0

/opt/Fluent.Inc/fluent6.3.26/lnamd64/2ddp/fluent.6.3.26[0xcc0e0b]

/opt/Fluent.Inc/fluent6.3.26/lnamd64/2ddp/fluent.6.3.26[0xcc0d61]

/lib64/libpthread.so.0[0x355aa0de70]

BubUDF/lnamd64/2ddp/libudf.so(NodeAvg+0x104)[0x2ba2089bc1bd]

Error: fluent.6.3.26 received a fatal signal (SEGMENTATION VIOLATION).

你能不能帮我解决这个问题吗?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值