<EDEM CFD案例01>EDEM2018 + FLUENT19.2 Coupling Interface Compiling

EDEM的版本2018,Fluent(已经嵌入在ANSYS中,下载ansys软件只需安装Fluent)版本19.2,在使用EDEM-CFD仿真之前,它们之间的耦合代码需要进行编译。

耦合源代码文件

链接:https://pan.baidu.com/s/1kf9uRCM7qljWRb0QmG1SnA 
提取码:5tkf

1. 编译源文件介绍

耦合源代码包含内容如下图所示。

路径下有一个批处理文件Windows_coupling_compilation.cmd,打开文件看一看。

该批处理文件结构很简单,包含两部分内容:

  • 设置环境变量。主要通过tools文件夹下两个批处理文件set_edem_env_vars.cmd及tools\set_fluent_env_vars.cmd,其中前者设置EDEM环境变量,后者设置Fluent相关环境变量。

  • 调用tools文件夹下compile_lib_edem_coupling.py进行编译。

2. 环境变量设置

2.1 EDEM环境变量

用文本编辑器打开set_edem_env_vars.cmd,其中内容如下图所示。

其中第6行如下图所示,可以看到官方提供源代码中包含的EDEM版本包含2.6, 2.7, 2017.0, 2017.1, 2017.2,并不包含2018。

这里直接添加2018.

 

2.2 Fluent环境变量

用文本文件打开set_fluent_env_vars.cmd,该批处理文件用于设置Fluent相关的环境变量。

文件第6行输入Fluent版本,如下图所示,并无19.2版本。

直接添加Fluent19.2版本。

 

实际上可以直接通过环境变量来解决问题。

 

3. 编译代码

  • 启动VS2015 x64本机工具命令提示符(安装了VS2015之后就有),x64 Native Tools Command Prompt

  • 编译需要用到python指令,需要将python指令添加到path下,可以自行下载python安装;ANSYS也提供了python的一个版本,我安装在D:\Program Files\ANSYS Inc\v192\commonfiles\CPython\2_7_13\winx64\Release\python该路径下,根据安装的路径和版本不同,D:\Program Files、v192、2_7_13可能是不同的。将路径添加到path的过程可参考下面的连接,在path里面已经有很多内容,在最后面加个英文分号,然后粘贴你的路径即可。

  • 利用cd命令切换到edem_coupling_build路径下(我这里是D:\edem_coupling_build),运行命令Windows_coupling_compilation.cmd

按提示输入信息,输入的是安装EDEM和FLUENT的安装位置。

情况不妙,貌似出了错误。错误提示如下图所示。

提示找不到文件IEDEMCouplingV2_3_0.h。按道理来讲,该文件应该存在于EDEM安装目录下D:\Program Files\DEM Solutions\EDEM 2018\src\Api\Coupling中,不过打开该文件夹,如下图所示。

其中并没有IEDEMCouplingV2_3_0.h,只有一个IEDEMCoupling.h,因此需要修改。搜索编译文件夹中包含IEDEMCouplingV2_3_0.h的文件,搜索结果如下图所示。

  • 打开文件CAdaptorQuaternion.cpp,如下图所示,在第21行包含了该头文件。

修改此头文件,如下图所示。

  • 打开文件AdaptorInterface.cpp,同样的方式进行修改。修改完毕后如图所示。

重新编译试试,出现了这样的错误,提示EDEM的安装路径下C:\Program Files\DEM Solutions\EDEM 2018\src\Api\Coupling一个文件CouplingUtils.h出错。打开文件修改如下图。

再次编译,编译成功会连续出现几条这样的信息,并不出现错误信息;这下obj文件编译成功。

在D:\edem_coupling_build\edem_cfd_adaptor_build\win64下多处了5个obj文件。

然而编译并没有完成。如果不是从官网下载的源文件(其他人编译过),则会出现提示"检测到先前编译过的文件,是否全部移除的信息",等待输入,输入yes回车;编译好的文件换了一台电脑可能并不能用,移除重新编译。

回车后,就会自动调用命令运行命令python tools\compile_lib_edem_coupling.py,该命令用于编译UDF。若Python配置不成功,则会提示”python不是内部或外部命令“。

结果出来如图所示的信息。

这什么鬼,刚才明明添加了2018了呀。别急,打开tools文件夹下文件compile_lib_edem_coupling.py,定位到下图所示的192行位置,可以看到缺少2018版本信息,这里将其添加上。

这类文件存在与D:\Program Files\DEM Solutions\EDEM 2018\lib,可以看到EDEM2018应该添加信息EDEMCouplingClient4.lib。添加信息后的结果如下图所示。

  • 重新运行命令python tools\compile_lib_edem_coupling.py,结果又出错了。

一个函数错误,在文件D:\edem_coupling_build\lib_edem_coupling\src\compute_particle_forces.c的第44行与第127行中的init_tracked_particle函数有问题。打开看一看。

看第44行,这什么鬼,相同的函数,这一行的参数数量居然比上下两个参数多了一个。(表示程序猿可以拿来祭天了)。不放心的话,还是看一看init_tracked_particle函数的声明先。该函数声明位于D:\Program Files\ANSYS Inc\v190\fluent\fluent19.0.0\src\dpm\dpm_mem.h,打开看一看。在该文件的250行发现函数声明,仔细数一数参数数量,发现文件compute_particle_forces.c的第44行与第127行中的init_tracked_particle函数确实多了个参数。

这里决定将其删除。第44行删除参数后如下图所示。

127行执行相同操作。

  • 重新运行命令python tools\compile_lib_edem_coupling.py,终于有惊无险的完成了编译

编译完成后,在D:\edem_coupling_build\lib_edem_coupling\win64文件夹下会生成一系列文件,如下图所示。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值