第二章不可计算性
- 格式:pdf
- 大小:368.30 KB
- 文档页数:20
第二章计算流体力学的基本知识流体流动现象大量存在于自然界及多种工程领域中,所有这些工程都受质量守恒、动量守恒和能量守恒等基本物理定律的支配。
这章将首先介绍流体动力学的发展和流体力学中几个重要守恒定律及其数学表达式,最后介绍几种常用的商业软件。
2.1计算流体力学简介2.1.1计算流体力学的发展流体力学的基本方程组非常复杂,在考虑粘性作用时更是如此,如果不靠计算机,就只能对比较简单的情形或简化后的欧拉方程或N-S方程进行计算。
20世纪30~40年代,对于复杂而又特别重要的流体力学问题,曾组织过人力用几个月甚至几年的时间做数值计算,比如圆锥做超声速飞行时周围的无粘流场就从1943年一直算到1947年。
数学的发展,计算机的不断进步,以及流体力学各种计算方法的发明,使许多原来无法用理论分析求解的复杂流体力学问题有了求得数值解的可能性,这又促进了流体力学计算方法的发展,并形成了"计算流体力学"。
从20世纪60年代起,在飞行器和其他涉及流体运动的课题中,经常采用电子计算机做数值模拟,这可以和物理实验相辅相成。
数值模拟和实验模拟相互配合,使科学技术的研究和工程设计的速度加快,并节省开支。
数值计算方法最近发展很快,其重要性与日俱增。
自然界存在着大量复杂的流动现象,随着人类认识的深入,人们开始利用流动规律来改造自然界。
最典型的例子是人类利用空气对运动中的机翼产生升力的机理发明了飞机。
航空技术的发展强烈推动了流体力学的迅速发展。
流体运动的规律由一组控制方程描述。
计算机没有发明前,流体力学家们在对方程经过大量简化后能够得到一些线形问题解读解。
但实际的流动问题大都是复杂的强非线形问题,无法求得精确的解读解。
计算机的出现以及计算技术的迅速发展使人们直接求解控制方程组的梦想逐步得到实现,从而催生了计算流体力学这门交叉学科。
计算流体力学是一门用数值计算方法直接求解流动主控方程(Euler或Navier-Stokes方程)以发现各种流动现象规律的学科。
第一章计算科学简介1.简述计算科学的概念⑴是描述和变换信息的算法过程。
⑵包括其理论分析、设计,效率分析、实现和应用系统的研究。
⑶计算科学的基本问题就是:什么能(有效地)自动进行,什么不能(有效地)自动进行。
2.计算科学涵盖了:计算机科学、计算机技术、计算机工程。
3.计算机科学研究的课题是:计算机程序能做什么和不能做什么(可计算性);如何使程序更高效的执行特定任务(算法和复杂性理论);程序如何存取不同类型的数据(数据结构和数据库);程序如何显得更具有智能(人工智能);人类如何与程序沟通(人机互动和人机界面)。
4.计算机技术的内容非常广泛,可粗分为:计算机系统技术;计算机器件技术;计算机部件技术;计算机组装技术等。
5.计算科学的主要内容主要分为14个领域:离散结构程序设计基础算法与复杂性体系结构操作系统网络计算程序设计语言人-机交互图形学和可视化计算智能系统信息管理软件工程社会和职业问题科学计算离散结构•主要内容:集合论、数理逻辑、近似代数、图论和组合数学等。
程序设计基础•内容包括:程序设计结构、算法、问题求解和数据结构等。
•基本问题主要包括:对给定的问题进行程序设计、编码、测试和调试。
算法与复杂性•主要包括:算法的复杂度分析、典型的算法策略、分布式算法、并行算法、可计算理论、P类和NP类问题、自动机理论、密码算法、以及几何算法等。
•基本的问题:对于给定的问题类,最好的算法是什么?算法的复杂度如何?算法的性能如何?操作系统•主要内容:操作系统的逻辑结构、并发处理、资源分配与调度、存储管理、设备管理、文件系统等。
•基本问题:在计算机系统操作的每一个级别上,可见的对象和允许进行的操作是什么?等等。
程序设计语言•主要内容:程序设计模式、虚拟机、类型系统、执行控制模型、语言翻译系统、程序设计语言的语义学、基于语言的并行构件等。
•基本问题:语言表示的虚拟机的可能组织结构是什么?语言如何定义机器?机器如何定义语言?什么样的表示法可以有效地用于描述计算机应该做什么?软件工程•主要内容:软件过程、软件需求与规格说明、软件设计、软件验证、软件演化、软件项目管理、软件开发工具与环境、基于构件的计算、形式化方法、软件可靠性、专用系统开发等。