计算机专业数值分析,计算机辅助数值分析

计算机辅助数值分析(Computer-aided numerical analysis,CAA) 是以电子计算机为主要工具的一种分析与设计方法。它是以计算技术、应用数学与模拟理论为基础发展起来的一门新兴学科,目前已成为计算机应用领域中一个重要分支。

中文名

计算机辅助数值分析外文名

Computer-aided numerical analysis

计算机辅助数值分析简介

编辑

语音

计算机辅助数值分析(简称CAA)与计算机辅助设计(简称CAD)是以电子计算机为主要工具的一种分析与设计方法,它是以计算技术、应用数学与模拟理论为基础发展起来的一门新兴学科,目前已成为计算机应用领域中一个重要分支。科学技术的飞速发展,使得科学理论研究、新产品开发及工程设计中所建立的数学模型越来趋复杂,对此类模型应用传统的方法进行分折与研究已日益困难,甚至完全不可能。比如,半导体集成电路的集成度近二十年中差不多每隔一至两年就会翻上一番,据统计芯片密度平均每年增加40%,电路规模之大t结构之复杂,单靠^力是无法完成设计的。在系统分析与设计中,实验的分折与计算是一种重要的手段,但对某些真实的系统进行实验既不经挤也不安全,甚至无法实现。象宇航系统、核反应堆系统等,直接实验往往很危险,费用高昂。

由于计算机的出现与迅速发展,这一状况得到了根本性的改变。利用计算机对产品的数学模型进行分析与设计,不仅极大的提高了设计速度,而且提高了产品的质量。计算机应用与系统设计,不仅能完成人工无法完成的设计,而且周期短性能佳,尤其在性能模拟上,计算机模拟充分显示了经济、安全、速度快而且非常之方便的特性。使得计算机辅助数值分析在现代科学与工程研究中已成为不可缺少的重要手段,无论是从事理论研究还是进行工程设计,掌握它都是非常有益的[1]

计算机辅助数值分析CAA的基本原理

编辑

语音

计算机辅助数值分析由实际问题简历数学模型

首先要把实际问题经过抽象简化成为确定的数学问题,也就是建立描述实际问题的数学模型.如微分方程、积分方程、线性代数方程和方程组等。

计算机辅助数值分析建立算法模型

由于计算机只能对离散型数据进行算术运算和逻辑运算,而实际数学模型中所涉及到的数学运算范围是极为广泛的,既有算术运算、代数运算,也有微分和积分运算及各种各样的函数运算等。所以实际工作中提出的各种问题,在建立了势擘模型以后一般还不能直接用计算机求解,需要先对数学棱型做一些顶处理:将连续变量离散化为数字量,将复杂的运算方程分解转化为简单的代数运算以适于计算机处理。处理以后得到的运算关系式就是数学模型对应的算法模型。目前各种函数运算、微分与积分运算都有成熟的算法可以直接应用,如果我们在实际工作中遇到的数学模型无现成的算法可用t就需要我们去建立新的算法。

计算机辅助数值分析分析误差

产生这个误差的主要原因有以下两方面。

截段误差

计算机专业数值分析,计算机辅助数值分析_第1张图片

图1对于某一问题问题的散学模型,一般是很难找到准确的散值算法模型。如图1中连续量u(r)的积分运算,求数值解只能采用近似的方法,取梯形近似或矩形近似等等。这种由于算法模型本身的近似性产生的数值解与数学模型准确解之问的误差,称为截段误差。同一散学模型往往可以用许多不同的算法求解由于不同的算法误差不一样,所以数值解的精确度也不同。比较图中给定的两种算法,明显可见梯形算法要比矩形算法精度高误差小。但另一方面,模型精度井不是唯一要考虑的因素,因为精度太高必然会占用更多的计算机内存,计算时间更长。所以算法模型的选取要根据精确度要求和计算机硬件条件综合考虑。

舍入误差

在实际计算中遇到的散可瞻位散很多,甚至是无穷小散,而计算机的计算位散是有限的,对超过位散的敦字就要进行舍人,这种舍人引起的误差称为舍人误差。目前,由于计算机的计算速度和散据处理精度已相当高,当算法运算量不大时,舍人误差很小,可以不考虑。

计算机辅助数值分析算法稳定性分析

在运用算法模型计算时,初始散据的误差和计算误差(包括截段{昊差和舍人谩差)总是存在的,所有这些误差都台在计算中传播下去,对以后的结果产生影响如果计算结果对韧始误差和计算谩差不敏感,也就是说在运算中韧始误差和计算误差不增大,那么就认为该算法是稳定的,否则就是不稳定的,只有稳定的算法才瞻给出可靠的计算结果,不稳定的算法毫无意义。

计算机辅助数值分析算法的实现

算法确定之后,根据初始条件或边界条件及算法步骤编制程序,并上机运行,通过对运行结果的分析,调整步长参数到一合理值。

MATLAB是一种面向科学与工程计算的高级语言,同时也是适用于科学和工程计算的数学软件系统。作为数值软件的MATLAB,对计算数学领域的特定问题类型,如数值线性代数、微分方程数值解、数值逼近、最优化方法、数值积分等进行求解,可以得到问题的离散解或近似的解析表达式。针对每一类问题的求解,MATLAB都能给出该类问题的各种高效算法。例如,求解非线性规划问题,MATLAB给出了单纯形搜索法、最速下降法、DFP变尺度法、BFGS拟牛顿法和最小二乘法等算法,其中既有解析算法,又有直接算法,而且与每个算法相匹配的还有一维搜索法。MATLAB具有一个阵容强大、范围广泛的基本运算体系。此外,MATLAB极其简洁的语言结构支持结构化程序设计,且具有超过任一高级语言系统的调试技术。MATLAB高度智能化的调试技术是用户开发MATLAB程序的有力工具。基于上述思想,为了把MATLAB矩阵运算的优点更好地应用于工程和教学实践中,作者在MATLAB软件环境下研制了CANAC软件包。采用CANAC软件包,利用计算机及其特有的功能不仅能准确、快速地实现数值分析与计算中所涉及到的逼近问题、线性代数问题、非线性方程及方程组的数值解法问题以及常微分方程的数值解法等,而且可把这些数值分析与计算的结果直接应用于实际应用中。相比用C、Basic或Fortran等语言研制的类似软件包,CANAC软件包的开发工作量相对小了很多,而且该软件包还具有功能强大、操作简便、形式灵活、界面美观而简洁、实用性强等优点,满足快速高效的现代生活和工作节奏。CANAC软件包的研制能使工程技术人员从繁重的手工数值计算与分析中解脱出来,把有限的时间和精力投入到更重要的工作中。基于MATLAB语言编制的CANAC软件包具有很强的推广意义和使用价值。

计算机辅助数值分析MATLAB在计算机辅助数值分析的应用

编辑

语音

MATLAB是一种面向科学与工程计算的高级语言,同时也是适用于科学和工程计算的数学软件系统。作为数值软件的MATLAB,对计算数学领域的特定问题类型,如数值线性代数、微分方程数值解、数值逼近、最优化方法、数值积分等进行求解,可以得到问题的离散解或近似的解析表达式。针对每一类问题的求解,MATLAB都能给出该类问题的各种高效算法。例如,求解非线性规划问题,MATLAB给出了单纯形搜索法、最速下降法、DFP变尺度法、BFGS拟牛顿法和最小二乘法等算法,其中既有解析算法,又有直接算法,而且与每个算法相匹配的还有一维搜索法。MATLAB具有一个阵容强大、范围广泛的基本运算体系。此外,MATLAB极其简洁的语言结构支持结构化程序设计,且具有超过任一高级语言系统的调试技术。

MATLAB高度智能化的调试技术是用户开发MATLAB程序的有力工具。基于上述思想,为了把MATLAB矩阵运算的优点更好地应用于工程和教学实践中,作者在MATLAB软件环境下研制了CANAC软件包。采用CANAC软件包,利用计算机及其特有的功能不仅能准确、快速地实现数值分析与计算中所涉及到的逼近问题、线性代数问题、非线性方程及方程组的数值解法问题以及常微分方程的数值解法等,而且可把这些数值分析与计算的结果直接应用于实际应用中。相比用C、Basic或Fortran等语言研制的类似软件包,CANAC软件包的开发工作量相对小了很多,而且该软件包还具有功能强大、操作简便、形式灵活、界面美观而简洁、实用性强等优点,满足快速高效的现代生活和工作节奏。CANAC软件包的研制能使工程技术人员从繁重的手工数值计算与分析中解脱出来,把有限的时间和精力投入到更重要的工作中。基于MATLAB语言编制的CANAC软件包具有很强的推广意义和使用价值[2]

词条图册

更多图册

参考资料

你可能感兴趣的:(计算机专业数值分析)