Warning: file(datafile/online) [function.file]: failed to open stream: No such file or directory in /home/all2one/public_html/bbs/topic.php on line 200
阳光精品论坛 > 『 CFD 专栏 』 > 新版CFD-ACE的UDF编译问题——供新手参考
 
欢迎您,客人:高级登录 | 注册 | 取回密码 新贴 | 发帖 | 会员 | 搜索 | 帮助

阳光精品论坛 >> 『 CFD 专栏 』 >> 新版CFD-ACE的UDF编译问题——供新手参考本主题已阅读2523次,回复0
发表一个新主题 回复贴子
批量引用回复把本贴加入论坛收藏夹向管理员报告帖子问题
作者 | 本页主题: 新版CFD-ACE的UDF编译问题——供新手参考 上一个主题:Linux下用PBS驱动Fastran并行计算 下一个主题:多段翼模拟(fastran)  
even2004 

 
 究级天王 [荣誉]
信息:坛主标志 该用户目前离线
来自:未填 align=absmiddle
发贴:1239 贴 查找所有我发的帖子
积分:244
货币:5814 阳光币
注册时间:2008/12/31
 查看会员个人资料资料 将其加入好友列表好友 发短信息消息 引用回复这个贴子引用直接回复贴子回复

新版CFD-ACE的UDF编译问题——供新手参考


      在2006版之前,CFD-ACE的用户自定义子程序是非常容易上手的:随便用什么Fortran编译器,只要具备连接成动态链接库的功能即可,比如我用Visual Fortran 6.5做编译器,则将CFDRC_ACCESS_CALLS.F用Include语句包含进我的子程序,然后在Dos下使用 DF /free /dll  mydll.f90即可完成mydll.dll的编译连接(如果使用集成环境,则建立一个空的动态链接库工程,然后把Mydll.f90作为源文件加入工程,最好Build all即可)——另一方法是利用软件安装时在CFD-ACE-SOLVERBIN下安装的批处理程序build-userlib.bat做编译,但此时用户自定义程序不能包含CFDRC_ACCESS_CALLS.F,且扩展名必须是f,而且只有在CFD-ACE-SOLVERBIN下编译时才相对简单,反而不适合新手。
 但上述方法对2008版失效了(2007版未做测试)!无论采用上述哪种方法编译得到的DLL文件CFD-ACE都不认,关键是还没有任何出错信息(除非你的子程序错了),就只是不工作!以至于一开始我还怀疑自己的子程序出了错,直到后来才搞明白:新版CFD-ACE的用户自定义动态链接库必须用Intel Fortran编译连接!不过目前为止我还是只在Visual Studio 2005集成环境下成功完成了动态库的编译连接(方法和使用Visual Fortran集成环境差不多,只是要注意如果采用扩展名.f,则需要手动设置源代码格式为自由格式)在DOS下怎么都成功不了,包括软件提供的那个批处理程序。


修改贴子编辑 |  发表于 2009/05/04/09:40  |  1 层 

发表一个新主题 回复贴子 推荐给朋友 可打印版本 文章模式 
论坛跳转:


  快速回复  

文章内容:

HTML 代码不可用


BMB代码选项:
[img] - 开启
[flash] - 开启
[size] - 开启

上传附件[还可传0个]:
开启

最大字节: 200000 字节
最少发帖: 20 篇

标题:


  [使用 Ctrl+Enter 直接提交贴子]

你的用户名  你的密码: 忘了密码?

阳光精品论坛 >> 『 CFD 专栏 』 >> 新版CFD-ACE的UDF编译问题——供新手参考本主题已阅读2523次,回复0



本论坛言论纯属发表者个人意见,与 阳光精品论坛 立场无关 联系我们
Powered by BMForum v5.0 Skin by Bob Shen