找回密码
 注册
查看: 1352|回复: 0

UDF计算

[复制链接]
发表于 2018-4-4 16:31:10 | 显示全部楼层 |阅读模式
10金钱
请教一下大家,就是想输入一个x轴上的加速度随时间变化的曲线,用书上的程序计算不了,用我的程序能计算但结果不对,请问一下是为啥
/*******************************************************************/
/* UDF for specifying an x-momentum source term in a spatially     */
/* dependent porous media                                          */
/*******************************************************************/

#include "udf.h"

#define C2 100.0

DEFINE_SOURCE(xmom_source, c, t, dS, eqn)
{
  real x[ND_ND];
  real con, source;

  C_CENTROID(x, c, t);
  con = C2*0.5*C_R(c, t)*x[1];

  source = -con*fabs(C_U(c, t))*C_U(c, t);
  dS[eqn] = -2.*con*fabs(C_U(c, t));

  return source;
}
计算时就会出现这种情况

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

Node 0: Process 8516: Received signal SIGSEGV.

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

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

Node 1: Process 8972: Received signal SIGSEGV.

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

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

Node 2: Process 8036: Received signal SIGSEGV.

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

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

Node 4: Process 1380: Received signal SIGSEGV.

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

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

Node 5: Process 7764: Received signal SIGSEGV.

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

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

Node 6: Process 9360: Received signal SIGSEGV.

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

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

Node 3: Process 7944: Received signal SIGSEGV.

==============================================================================
MPI Application rank 0 exited before MPI_Finalize() with status 2
The fl process could not be started.

这是我自己的代码,能计算但感觉没起到什么效果
/******************************************************************
The acceleration in the x-axis direction changes with time
*******************************************************************/
#include "udf.h"
#define g 9.8
DEFINE_SOURCE(accelaration_source, c, t, dS, eqn)
{
  real x[ND_ND];
  real source;
  real a = RP_Get_Real ("CURRENT_TIME" );
  source = -0.125*CURRENT_TIME*g+0.5*g;
  source=x[0];
  dS[eqn] = 0.0;
  return source;
}

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表