温度场有限容积法程序入门之一:综述
2013-04-24 17:21
267 查看
工程上,我们常常需要分析材料的温度场分布,编写程序是一种有效的计算方法。很多人对编程望而却步,其实相反,程序只是工具,我们是工程技术人员,有时候只关心结果,而不必精通C++亦可解决问题,未必是编程高手才能解决工程中的编程问题。
笔者在学习有限差分法过程中走了很多弯路,希望把方法写出来,希望能够让初学者入门。其次,笔者不是编程高手,也没有完全精通所有算法,属于现学现卖,也希望和大家一起进步。另外,笔者有一师兄A,写了一个2D温度场有限差分程序,但是不肯教给师弟;一次,在另外一个师兄B的计算机上有类似程序,师兄A发现后立即删除,并说别到处乱传;笔者当时很寒心,觉得这类程序其实不难,于是想自己写一个,打破实验室的技术封锁。人和人的智商不会相差一百吧,只要努力,任何问题都有可能解决。最近的日子里,笔者打算写一些粗浅的教程出来,希望使初学者理解其原理,不要把会程序的师兄当神看,你也可以的。
笔者是一个不入流不资深Flash爱好者,打算统编使用Flash的编程语言AS3(Action Script 3.0),.笔者认为AS3是最优雅的计算机语言。运行本教程的程序需要使用Adobe Flash Builder,笔者使用的是最新的版本号为4.7试用版,可以到Adobe官方网站上申请试用,开发Flash程序还有很多开发环境,此处不再列举。为什么不使用C/C++,因为作者想借用Flash的Stage 3D技术,使用该技术直接操纵显卡绘制温度场云图,而较少的CPU资源;算法是一样的,很容易翻译到C/C++
et. al.。另外如果希望将计算结果到处到常见后处理软件Tecplot中,大家可以去其官方网站申请试用。
本教程打算分为如下几个部分:
1 ,有限差分发原理及本程序结构;
2,类的概念:节点类和材料类的;
3,前处理,网格及材料;
4,温度场的显示迭代计算;
5,温度场求解结果后处理,基于Adobe Flash Stage 3D技术;
6,展望:3D,对流传热,一阶迎风格式,非线性材料,非均匀网格。
阅读基础,读者应当初步了解如下概念:
1,温度场的控制微分方程及其定解条件;
2,有限差分法,一阶导数,二阶导数的离散方法;
3,一定编程基础,了解任何一门C-Style的语言。
参考文献:
1,陶文铨:数值传热学(第2版);
2,孙颖:Flash
ActionScript3殿堂之路(含光盘1张);
3,李庆:我的Flex我精通:RIA高级开发指南(含CD-ROM光盘1张)
;
4,Adobe AS3 API 文档 http://www.adobe.com/go/as3lr
注意事项:
1,笔者的注释往往使用英文,原因:一故弄玄虚,二其它编辑器打开不至于出现乱码,三有拼写错误及时告知;
2,笔者近视,错别字可能会有;
3,程序勿用于商业价值;
4,程序解决不了你的问题,不要骂笔者,笔者不欠你什么,来去自如。
示例,我们以钢液冷却过程为例(考虑凝固潜热),计算其连续冷却过程中的温度场分布。由于对称考虑其对称性,我们仅仅计算其1/4横截面,下图是网格节点及材质(绝热、钢液、空气,初始温度分别为0,1550,30摄氏度),如下图。
下图(看不完整,可将其下载后查看)是2D温度场控制微分方程及其离散方法,全是冷冰冰的符号。本文不使用该类方法,而使用物理意义明确的有限容积法。
本程序的架构划分如下:
1,前处理:网格剖分
2,前处理:设置材料,初始条件,边界条件;
3,迭代计算;
4,后处理,计算结果可视化。
主程序如下:
今天理发了,LP要看我的尊容,无奈笔记本上没有安装摄像头软件,于是在AS3 API里面参考了flash.media.Camera类,编译,运行,得到自己靓照。
笔者在学习有限差分法过程中走了很多弯路,希望把方法写出来,希望能够让初学者入门。其次,笔者不是编程高手,也没有完全精通所有算法,属于现学现卖,也希望和大家一起进步。另外,笔者有一师兄A,写了一个2D温度场有限差分程序,但是不肯教给师弟;一次,在另外一个师兄B的计算机上有类似程序,师兄A发现后立即删除,并说别到处乱传;笔者当时很寒心,觉得这类程序其实不难,于是想自己写一个,打破实验室的技术封锁。人和人的智商不会相差一百吧,只要努力,任何问题都有可能解决。最近的日子里,笔者打算写一些粗浅的教程出来,希望使初学者理解其原理,不要把会程序的师兄当神看,你也可以的。
笔者是一个不入流不资深Flash爱好者,打算统编使用Flash的编程语言AS3(Action Script 3.0),.笔者认为AS3是最优雅的计算机语言。运行本教程的程序需要使用Adobe Flash Builder,笔者使用的是最新的版本号为4.7试用版,可以到Adobe官方网站上申请试用,开发Flash程序还有很多开发环境,此处不再列举。为什么不使用C/C++,因为作者想借用Flash的Stage 3D技术,使用该技术直接操纵显卡绘制温度场云图,而较少的CPU资源;算法是一样的,很容易翻译到C/C++
et. al.。另外如果希望将计算结果到处到常见后处理软件Tecplot中,大家可以去其官方网站申请试用。
本教程打算分为如下几个部分:
1 ,有限差分发原理及本程序结构;
2,类的概念:节点类和材料类的;
3,前处理,网格及材料;
4,温度场的显示迭代计算;
5,温度场求解结果后处理,基于Adobe Flash Stage 3D技术;
6,展望:3D,对流传热,一阶迎风格式,非线性材料,非均匀网格。
阅读基础,读者应当初步了解如下概念:
1,温度场的控制微分方程及其定解条件;
2,有限差分法,一阶导数,二阶导数的离散方法;
3,一定编程基础,了解任何一门C-Style的语言。
参考文献:
1,陶文铨:数值传热学(第2版);
2,孙颖:Flash
ActionScript3殿堂之路(含光盘1张);
3,李庆:我的Flex我精通:RIA高级开发指南(含CD-ROM光盘1张)
;
4,Adobe AS3 API 文档 http://www.adobe.com/go/as3lr
注意事项:
1,笔者的注释往往使用英文,原因:一故弄玄虚,二其它编辑器打开不至于出现乱码,三有拼写错误及时告知;
2,笔者近视,错别字可能会有;
3,程序勿用于商业价值;
4,程序解决不了你的问题,不要骂笔者,笔者不欠你什么,来去自如。
示例,我们以钢液冷却过程为例(考虑凝固潜热),计算其连续冷却过程中的温度场分布。由于对称考虑其对称性,我们仅仅计算其1/4横截面,下图是网格节点及材质(绝热、钢液、空气,初始温度分别为0,1550,30摄氏度),如下图。
下图(看不完整,可将其下载后查看)是2D温度场控制微分方程及其离散方法,全是冷冰冰的符号。本文不使用该类方法,而使用物理意义明确的有限容积法。
本程序的架构划分如下:
1,前处理:网格剖分
2,前处理:设置材料,初始条件,边界条件;
3,迭代计算;
4,后处理,计算结果可视化。
主程序如下:
solution=new TSolverMgr(); solution.SetDim(15,15,1,1); solution.SetMaterial(); solution.UpdateHeatExchangeFactor(); //solution.ExportSetting(); for(var i:uint=0;i<100;i++) { solution.Step(1); } solution.Export2Tecplot();
今天理发了,LP要看我的尊容,无奈笔记本上没有安装摄像头软件,于是在AS3 API里面参考了flash.media.Camera类,编译,运行,得到自己靓照。
相关文章推荐
- 温度场有限容积法程序入门之七:相变过程温度场的数值计算
- 温度场有限容积法程序入门之五:展望及问题
- 温度场有限容积法程序入门之六:后处理.Contour的绘制.基于Adobe Flash Stage3D技术
- 温度场有限容积法程序入门之六:后处理.isoline的绘制.基于Flash.Display.Graphics绘图API
- 温度场有限容积法程序入门之七:相变过程温度场的数值计算
- 温度场有限容积法程序入门之二:程序设计.热阻.热导.类的概念.定解条件
- 温度场有限容积法程序入门之三:2D温度场显式迭代计算(暂不考虑潜热)
- 温度场有限容积法程序入门之六:后处理.花絮.Contour Plotter and 3D Function Grapher Together - the Applet and the Souce Co
- 温度场有限容积法程序入门之四:网格剖分.边界条件设置.迭代.导出后处理数据
- 格式对流温度场有限差分(有限容积)程序入门之五:展望及问题
- 节点离散温度场有限差分(有限容积)程序入门之三:2D温度场显式迭代计算(暂不考虑潜热)
- java入门#每天一个小程序#九九乘法
- Object-C 入门 Xcode 环境详解 HelloWorld 程序
- JAVA程序编写入门
- 微信小程序新手入门
- ADS使用入门及烧写裸机程序时详细设置
- 转 Python爬虫入门一之综述
- Ant入门案例-打包Web程序并发布
- C#开发语音程序入门之语音识别
- 01_netty5入门应用-时间服务器程序代码