css中content:""和content:none是不是一样的

第七章UDF的编译与链接;编写好UDF件(详见第三章)后,接下来则准备编译;_第7.1节:介绍;_第7.2节:解释UDF;_第7.3节:编译UDF;7.1介绍;解释的UDF和编译的UDF其源码产生途径及编译过;另一方面,解释的UDF被编译成与体系结构无关的中;为了区别这种不同,在FLUENT中解释UDF和编;当FLUENT程序运行中链接一个已编译好的UDF;
第七章 UDF的编译与链接
编写好UDF件(详见第三章)后,接下来则准备编译(或链接)它。在7.2或7.3节中指导将用户编写好的UDF如何解释、编译成为共享目标库的UDF。
_ 第 7.1 节: 介绍
_ 第 7.2 节: 解释 UDF
_ 第 7.3 节: 编译 UDF
解释的UDF和编译的UDF其源码产生途径及编译过程产生的结果代码是不同的。编译后的UDF由C语言系统的编译器编译成本地目标码。这一过程须在FLUENT运行前完成。在FLUENT运行时会执行存放于共享库里的目标码,这一过程称为“动态装载”。
另一方面,解释的UDF被编译成与体系结构无关的中间代码或伪码。这一代码调用时是在内部模拟器或解释器上运行。与体系结构无关的代码牺牲了程序性能,但其UDF可易于共享在不同的结构体系之间,即操作系统和FLUENT版本中。如果执行速度是所关心的,UDF文件可以不用修改直接在编译模式里运行。
为了区别这种不同,在FLUENT中解释UDF和编译UDF的控制面板其形式是不同的。解释UDF的控制面板里有个“Compile按钮”,当点击“Compile按钮”时会实时编译源码。编译UDF的控制面板里有个“Open按钮”,当点击“Open按钮” 时会“打开”或连接目标代码库运行FLUENT(此时在运行FLUENT之前需要编译好目标码)。
当FLUENT程序运行中链接一个已编译好的UDF库时,和该共享库相关的东西都被存放到case文件中。因此,只要读取case文件,这个库会自动地链接到FLUENT处理过程。同样地,一个已经经过解释的UDF文件在运行时刻被编译,用户自定义的C函数的名称与内容将会被存放到用户的case文件中。只要读取这个case文件,这些函数会被自动编译。
注:已编译的UDF所用到的目标代码库必须适用于当前所使用的计算机体系结构、操作系统以及FLUENT软件的可执行版本。一旦用户的FLUENT升级、操作系统改变了或者运行在不同的类型的计算机,必须重新编译这些库。
UDF必须用DEFINE宏进行定义,DEFINE宏的定义是在udf.h文件中。因此,在用户编译UDF之前,udf.h文件必须被放到一个可被找到的路径,或者放到当前的工作目录中。
udf.h文件放置在:
path/Fluent.Inc/fluent6.+x/src/udf.h
其中path是Fluent软件的安装目录,即Fluent.Inc目录。X代表了你所安装的版本号。
通常情况下,用户不应该从安装默认目录中复制udf.h文件。编译器先在当前目录中寻找该文件,如果没找到,编译器会自动到/src目录下寻找。如果你升级了软件的版本,但是没有从你的工作目录中删除旧版本的udf.h文件,你则不能访问到该文件的最新版本。在任何情况下都不应该改变udf.h文件。
7.2 UDF解释
这一节介绍编译经过解释的UDF的步骤。一旦经过解释的UDF被编译,用户自定义的C函数的名称与内容将会被存放到case文件中。只要读取这个case文件,这些函数便会自动被编译。
编译被解释的UDF的一般程序如下:
1. 如果用户没有在网络Windows计算机上使用并行的FLUENT版本,则需要确定
UDF的C源码和case文件与当前工作目录一致。具体步骤见7.2.2节。
! 如果源码不在当前工作目录,则用户编译UDF时,用户必须在解释UDF的控制面板里输入文件的完全路径,而不是只输入文件名。
2. 在当前工作目录下运行FLUENT。
3. 读取(或建立)case文件。
4. 打开“Interpreted UDFs panel”,编译UDF(如vprofile.c)。
图7.2.1 解释的UDF的控制面板
(a) 在“Source File Name”下输入C源码的文件名(如vprofile.c)。
! 如果自定义的C源码不在工作目录中,用户必须输入完全的自定义的C函数路径。
当写入case文件时,自定义源码的名称(或源码的完全路径)会存放到case文件中。
(b) 在“CPP Command Name”指定为C的预处理程序。当然也有其它有效的ANSI C
预处理程序,包括gcc -E和cc CE。详细检查所用的计算机系统管理。
(c) 如果自定义函数局部变量数不引起栈的溢出,则保持“Stack Size”的默认
值为1000。此时,所设 “Stack Size” 的数要远远大于局部变量用的数。 (d) 选择“Display Assembly Listing”,则当函数编译汇编码的清单会出现在
窗口的控制台内。这一选项会保存于case文件,当用户接着运行FLUENT时汇编码会自动显示。
(e) 如果用户使用“Fluent Inc”提供的C预处理程序,选择“Use Contributed CPP”。
(f) 点击“Compile”编译UDF。
自定义C程序的名称和内容会存入于所写的case文件。只要编译UDF,汇编码会出现在控制窗口,所示范例如下。
(g) 编译结束点击“Close”。
! 如果在一次模拟中使用多于一个的UDF,用户需要将这些函数连接在一个C文件中,例如all.c。然后用“Interpreted UDFs”面板编译连接的文件。这些函数可以作为边界条件、源项及特性等。
7.2.2 基于Windows并行网络的目录结构
在基于Windows网络上使用并行FLUENT版本需要专门的方法组织用户文件。具体步骤如下:
1. 在“Fluent.Inc”目录下创建一个名为“udf” 的可写子目录。
2. 在udf目录下创建子目录(如Fluent.Inc\udf\myudf),将UDF的C源码存放于
这个目录下。如果在同一串下多个用户运行工作,每个用户在udf目录下创建自己的子目录(如Fluent.Inc\udf\abcudf和xyzudf)。
! 因为源码不在当前工作目录下,所以在编译UDF时必须在“Interpreted UDFs”面板中输入文件的完全路径。例如,编译example.c文件时,输入如下:
\\&fileserver&\Fluent.Inc\udf\myudf\example.c
&fileserver&应输入用户所安装FLUENT的计算机名(如myserver)。
3. 确定所建立的case文件在当前工作目录下。
7.2.3 调试解释的UDF
编译UDF时出错信息会出现在控制窗口中。用户有可能因错误滚动太快不能看到所用的出错信息。因此调试UDF时用户想关掉“Display Assembly Listing”。 如果在调试UDF的过程中一直打开“Interpreted UDFs”面板,由于在独立窗口进行编辑,编译按钮则会不断重复编译。然后,直到无出错信息调试和编译才会结束。
下面介绍一个出错例子,即在“Interpreted UDFs”控制面板中,编译被解释过的UDF时指定了错误的源文件。上面曾介绍过如果仅仅从当前工作目录下启动FLUENT,在“Interpreted UDFs”控制面板中键入用户的C源码的文件名,则case文件和C源码被指定于当前工作目录下。如果用户编译的C源码与工作目录是不同的路径,用户必须输入C源码所在的完整路径。否则会出现以下的错误信息:
gcc: vprofile.c: No such file or directory
gcc: No input files
Error: vprofile.c: line 1: syntax error.
如果编译UDF写完case文件后,接着移动C源码到不同位置,会在接着运行FLUENT的过程中产生同样的错误信息。
为了避免错误,只需要在“Interpreted UDFs”控制面板中的“Source File Name”下输入完全的路径名,然后点击“Compile”。此时写case文件会保存C源码的新路径。
7.3 编译UDF
这一节介绍如何链接编译好的UDF。这一过程需要使用C编译器。大部分UNIX的操作系统提供了C编译器。如果在PC机上运行,需要安装VC++编译器(如微软C++、v6.0或更高的版本)。一旦编译好的UDF库文件在FLUENT运行时链接到FLUENT处理过程,和共享库相关的东西会保存到case文件。因此,只要读取case文件,编译的库文件会自动链接到FLUENT处理过程。在控制窗口将会出现链接状态的报告如下:
Opening library &libp1/ultra/2d/libudf.so&...
energy_source
三亿文库包含各类专业文献、幼儿教育、小学教育、行业资料、应用写作文书、文学作品欣赏、生活休闲娱乐、高等教育、各类资格考试、Fluent_UDF_第七章_UDF的编译与链接24等内容。 
 fluent UDF第七章 编译与链... fluent UDF第八章 在FLUEN...1/2 相关文档推荐 fluent_UDF 2页 2财富值 fluent_udf 10页 免费 fluent UDF第8章 19页 2...  fluent UDF第七章 编译与链... fluent UDF第八章 在FLUEN...1/2 相关文档...fluent UDFfluent UDF隐藏&& 第二章.UDF 的 C 语言基础 第二章 本章介绍了...  Fluent UDF 第七章 UDF的编... 14页 免费如要投诉违规内容,请到百度文库投诉...解释和编译 UDF 的比较 1.7 一个 step-by-stepUDF 例子 1.1 什么是 UDF...  第八章 在 FLUENT 中激活你的 UDF 一旦你已经编译(并连接)了你的 UDF,如第...UDF 8.1 激活通用求解器 UDF 本节包括激活使用 4.2 节中宏的 UDF 的方法。...  fluent UDF第六章 工具 fluent UDF第七章 编译与链...1/2 相关文档推荐 ...name 是你所指定的 UDF 的名 字。 当你的 UDF 编译并连接时, 你的 FLUENT...  H E7 V; ?# U 6 c 选择 yes,fluent 的环境变量将会自动添加,这时再运行...第7章 UDF的编译与链接 暂无评价 14页 免费 fluent UDF第七章 编译与... ...  完美解决win7 64bit系统环境中用ANSYS12.fluent+vs2010编译UDF_IT/计算机_专业...Fluent UDF 第六章 工具 36页 5下载券 Fluent UDF 第七章 UDF的... 14页...  fluent udf编译出错解决办法_计算机软件及应用_IT/计算机_专业资料。udf无法编译,...FLUENT_UDF官方培训教程 25页 免费
Fluent udf 第7章 UDF的... 14页 1下载...  如下: 接着就是编译了,不用打开 case 的,直接就可以 define …. 如果出现...Fluent UDF 第七章 UDF的... 14页 5下载券
第8章在FLUENT中激活你的.....Fluent6.3 怎么编写file
全部答案(共1个回答)
,但是具体的怎么编我还不知道
fluent流场模拟边界条件设置 http://emuch.net/html/5075.html
1.进入profile里 2.拉动页面,拉下到 EXPERIENCE那 3.点击即可更改
方法一:打开Fluent软件,在file里选择hardcopy,进入对话框后,去掉Reverse foregroung/background,然后点击Previ...
没有gambit! P.S. 你的支持是我坚持的动力!点下好评吧,亲!!!
直接建立就可以的啊
大家还关注
确定举报此问题
举报原因(必选):
广告或垃圾信息
激进时政或意识形态话题
不雅词句或人身攻击
侵犯他人隐私
其它违法和不良信息
报告,这不是个问题
报告原因(必选):
这不是个问题
这个问题分类似乎错了
这个不是我熟悉的地区请问C里边有real这个类型吗?【c语言吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:529,724贴子:
请问C里边有real这个类型吗?收藏
如上图,这是别人写的fluent(一款计算流体力学的软件)的udf(用户自定义函数),里边有real类型,请问real类型是c语言自己有的类型吗?还是real是"udf.h"里边定义的类型?我自己试着如下图定义了个real,不能用,报错,好像是说此没有此定义的类型图片来自:
神牛摄影器材--为专业摄影者打造,你值得拥有!
udf.h里面的
c里面有float, double, 有些编译器还支持long double,但是real不是c原生类型,可能是typedef出来的
不是原生的
登录百度帐号推荐应用
为兴趣而生,贴吧更懂你。或大家能谈谈fluent和CFX有什么区别?各自的优缺点是什么?哪个在模拟燃烧方面更有优势呢?
【转自网络】各有优缺点,cfx的优点是物理模型丰富,功能强大,基于有限元的有限体积离散方法,精度比较高,但是计算速度慢;fluent物理模型比较缺乏,很多问 题没有对应的模型,比如多相流中每相不能是多组分,对于湿空气和其他流体组成的多相流就不能算了。而且fluent的前处理器格式封闭,只能适合于 fluent,cfx的前处理器icem输出格式丰富。fluent较容易上手,所以新手选择的入门很快,从功能看,flunet几乎覆盖了流体相关的所有行业,从用户看,国内市场做得不错。#=G不过,二次开发用c语言使很多cfd的高手感觉不爽,我就是这样(不是高手)。cfx主要针对不可压流和低马赫数流,个人感觉求解器的精度高些,二次开发用fortran语言我也很喜欢,但嫁给ansys后前处理变化大(icemcfd),老用户要从头学,我想等它的升级相对稳定了再继续用。
算法不一样,模型不一样。CFX在旋转机械上比fluent算得更好,但是在燃烧方面,还是fluent更好点。CFX算得步数比较少,听说500以内不能收敛就很难收敛了,fluent计算的步数可以上万。CFX最大的缺点就是人工粘性太大,这点和fluent无法相比。
在设置边界条件时,感觉用FLUENT中的C语言很方便很灵活,不知道CFX有没有这么灵活。比如说,边界条件是温度和坐标的函数,Fluent可以通过特定的宏读入温度和坐标,然后进行简单的语句编程就可以了。不知CFX做的怎么样?望高手指点一下,据说CFX的流固耦合做的不错,想换软件。
fluent覆盖的领域多,市场做的好。CFX的优点在于做旋转机械比较好。用fluent做旋转机械太麻烦了。不过个人认为CFX慢慢被Numeca甩远了,看好Numeca的发展。
单纯做燃烧的话,还是选fluent吧。不过也看你对那个软件掌握的好。
建议用FLUENT,李鹏飞博士经常在CAE培训中心做燃烧方面的培训
其实涉及CFD分析的内容,Fluent和CFX都可以做,只不过实现形式不一样而已,当然CFX在航空航天领域以及旋转机械行业有着绝对的优势,自己感觉燃烧方面两者应该功能差不多

我要回帖

更多关于 cssdisplay为none 的文章

 

随机推荐