UDF——提取指定线上随时间变化的物理量
Fluent版本:Fluent 19.0
Visual Studio版本:Visual Studio 2013
有时候我们想要实现一些功能,比如:我们在使用Fluent进行瞬态计算的时候,想要获取某条线上的物理量随时间的变化,如果我们直接用UDF去输出当然是可以的,但是实现起来难度比较大,而CFD-Post实现这些功能相对比较容易,难道要我们保留所有的结果,最后再在CFD-Post里面慢慢处理?当然有其他的解决办法,我们可以使用Python编写一个模块,用来调用CFD-Post获取该条线段上的物理量并且导出为文件,最后删除cas和dat文件以节省存储空间。我们从UDF当中指定每个时间步调用该Python模块一次,从而实现指定功能。
Python模块的代码如下(存为名为:“Data.py”文件):
需在VS当中编译该UDF,可参考我前面的:
《在Visual Studio中直接编译Fluent的UDF的总结(串行)》
《在Visual Studio中直接编译Fluent的UDF的总结(并行)》
在VS当中需要添加python的库和包含python的头文件
首先需要安装Python,我安装的是anaconda2(可到清华大学开源软件镜像站下载,链接:https:// mirrors.tuna.tsinghua.edu.cn/anaconda/archive/)
然后我们在ansys19_3ddp_host项目当(文件:源.cpp)中编写如下代码:
在ansys19_3ddp_node项目当(文件:源.cpp)中编写如下代码:
至于CFD-Post的session文件,自己在CFD-Post当中事先录制一个即可,这里就不多讲了。
算例来源于:https://confluence.cornell.edu/display/SIMULATION/FLUENT+-+Laminar+Pipe+Flow
我们每次取管道中心轴线的速度,取10个点
时间步长:0.001,时间步:10步
注意:
需要设置自动保存,务必按照下图设置
最后结果:
至于为什么我设置的10个时间步数据却只保存了9个?是因为最后保存结果以后计算终止,没有再调用DEFINE_EXECUTE_AT_END宏了,我们可以在DEFINE_ON_DEMAND再调用一次前面的Python模块从手动完成全部的数据。
完整VS项目文件和Fluent算例文件:
链接: https://pan.baidu.com/s/1SOEk_arrI1zX2LVfsjW7mQ 提取码: kmxw
UDF——提取指定线上随时间变化的物理量的更多相关文章
- 【转载】ansys中压力随时间变化的表格加载方法
原文地址:http://wenku.baidu.com/link?url=w9k94Upqbok0SUNU3L7LOLRDLUtP7W_KyQWK68ajK_nEbO00mO6hzbuBQ01rS07 ...
- HDU 1180 诡异的楼梯【BFS/楼梯随时间变化】
诡异的楼梯 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others) Total Submis ...
- MFiX中DEM颗粒信息随时间变化
之前在"DEM轨迹后处理"这篇文章中的第二种方法中介绍过一种方法,但是那种方法只适用于反应器内颗粒数量一定,没有新进入的颗粒的情况.后来在MFiX论坛询问了一下,解决了这个问题.具 ...
- 如何有效的跟踪线上 MySQL 实例表和权限的变更
介绍 从系统管理员或 DBA 的角度来讲, 总期望将线上的各种变更限制在一个可控的范围内, 减少一些不确定的因素. 这样做有几点好处: . 记录线上的库表变更; . 对线上的库表变更有全局的了解; . ...
- Fluent——UDF监测指定点的物理量
Fluent版本:19.0 Fluent当中提供了监测某一点物理量随迭代次数或者随时间变化的功能,下面我们就介绍如何在UDF当中实现相同的功能,并且UDF更加灵活,通过UDF的方式我们在知道某点运动规 ...
- Springcloud及Git线上配置详解
SpringCloud 这个阶段该如何学? 三层架构 + MVC 框架: Spring IOC AOP SpringBoot,新一代的JavaEE开发标准,自动装配 模块化~ all in one,代 ...
- 转载:APP的上线和推广——线上推广渠道
本文版权归个人所有,如需转载请注明出处http://www.cnblogs.com/PengLee/p/4637080.html 目录 应用商店 互联网开放平台 软件下载中心 媒体社交平台 刷榜推广 ...
- TFS线上生成环境发布历程
继前文 TFS在项目中Devops落地进程(上) TFS在项目中DevOps落地进程(下) 自从之前将开发环境使用TFS进行了自动化之后,就享受在此成果中,其他后续进度就停顿了好一段时间. 毕竟在我们 ...
- 记一次线上事故的JVM内存学习
今天线上的hadoop集群崩溃了,现象是namenode一直在GC,长时间无法正常服务.最后运维大神各种倒腾内存,GC稳定后,服务正常.虽说全程在打酱油,但是也跟着学习不少的东西. 第一个问题:为什么 ...
随机推荐
- Jmeter websocket插件安装与使用
Jmeter websocket插件安装与使用 Apache JMeter是Apache组织开发的基于Java的压力测试工具.用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试 ...
- Vue学习之路由vue-router小结(九)
一.路由: 1.后端路由: 对于普通网站,所有的超链接都是URL地址,所有的URL地址都对应服务器上对应的资源: 2.前端路由: 对于单页面应用程序来说,主要通过URL中的hash(#号)来实现不同页 ...
- layui 表格中实现照片预览,点击查看原图
人员表格中实现照片预览,并且可点击放大.查看原图 <table id="dutyInfoTable" class="layui-hide">< ...
- 英语SouthRedAgate南红玛瑙
南红玛瑙(SouthRedAgate)是玛瑙的一个种类,古称”赤玉”,质地细腻油润,是中国独有的品种.由于产量稀少,老南红玛瑙价格急剧上升.南红玛瑙曾被古人用之入药,养心养血. 现在的南红玛瑙已经和和 ...
- YUV视频格式详解(翻译自微软文档)
原文: https://docs.microsoft.com/en-us/previous-versions/aa904813(v=vs.80) YUV视频格式详解(翻译自微软文档)https://b ...
- Scrapy爬虫提高效率
如何提高scrapy的爬取效率 增加并发: 默认scrapy开启的并发线程为32个,可以适当进行增加.在settings配置文件中修改CONCURRENT_REQUESTS = 100值为100,并发 ...
- Httpd服务入门知识-Httpd服务常见配置案例之基于用户账号实现访问控制
Httpd服务入门知识-Httpd服务常见配置案例之基于用户账号实现访问控制 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.基于用户的访问控制概述 认证质询: WWW-Auth ...
- JVM的底层实现原理
JVM是Java程序运行的环境,但是他同时也是一个操作系统的一个应用程序的一个进程,因此JVM也有他自己的运行生命周期,也有自己的代码和数据空间. JDK JDK在Java的整个体系中充当一个生产加工 ...
- Linux不管上一条命令成功还是失败都执行下一个命令的方法
转载请注明来源https://www.cnblogs.com/sogeisetsu/p/11407830.html Linux不管上一条命令成功还是失败都执行下一个命令的方法 Linux不管上一条命令 ...
- xadmin引入django-debug-toolbar调试工具
一.安装: pip install django-debug-toolbar 安装django-debug-toolbar库 https://github.com/jazzband/django-de ...