第!"卷第!期

!(("年)月

桂林工学院学报

*+,-’./+01,2/2’2’3424,45+04567’+/+18#$%&!"’$&!.9:&!(("

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

文章编号:(!((")"((;(!

?.4/.@在有限差分法中的应用

彬,阮百尧

=)"(())

(桂林工学院资源与环境工程系,广西桂林

要:将?.4/.@应用于有限差分法的正演计算中,充分发挥了其强大而方便的功能。

通过对二维稳定电流场模型的试算表明,?.4/.@在解决实际的工程和数学问题中,与其它计算机程序设计语言6、0+-4-.’相比,具有使用更为简便、语句功能更强,用户界面良好的特点,适合于在工程计算,尤其是物探数据处理领域推广应用。关键词:?.4/.@;有限差分;正演计算;二维电场中图分类号:A;B"CB!!

文献标识码:.!

"

["]

?.4/.@概述

?.4/.@是一个为科学和工程计算而专门设计的高级交互式的软件包。它集数值分析、矩阵运算、信号处理和图形显示于一体,构成了一个方便的、界面友好的用户环境。在这个环境下,对所要求解的问题,用户只需简单的列出数学表达式,其结果便以数值或图形方式显示出来。例如,为解用矩阵D向量形式表达的形如!!E"的线性方程组,首先生成系数矩阵!和右侧的",然后简单地敲入!E!#"即可。

?.4/.@中有大量的命令和事先定义的可用函数集,也可通称为?.4/.@?文件,这就使得用它来求解问题通常比传统编程快得多;另外一点,也是它最重要的特点,易于扩展。它允许用户自行建立完成指定功能的?文件,从而构成适合于其它领域的工具箱。

?.4/.@既是一种编程环境,又是一种程序设计语言。它与其它高级程序设计语言6、0$:F:GH等一样,也有其内定的规则,但其规则更接近于数学表示,使用起来更为方便,避免了诸如6、0$:F:GH语言的许多限制,比方说,变量、矩阵无须事先定义;其次,它的语句功能之强大,是其它语言所无法比拟的,例如,一条IIF语句就可完成对指定数据的快速傅氏变换,这就相当于几十条甚至于几百条6或0$:F:GH语言语句的功能;再者,也是广大程序爱好者所梦寐以求的,?.4/.@提供了良好的用户界面,许多函数本身会自动绘制出图形,而且会自动选取坐标刻度。

!稳定电流场的边值问题

在数学上解各种物探方法的正演问题,通常需要求解相应的物理场所满足的数学物理方程。其中,

[!]

最常遇到的是下列椭圆型偏微分方程:

(""$)#$$%&"・

!

收稿日期:!(((

基金项目:教育部高等学校骨干教师资助计划资助项目(桂[!(((])"B);广西自然科学基金资助项目(桂科自(((J(!));广西培养新世纪学术和技术带头人专项资金资助项目(KK!";)作者简介:熊模拟研究。

彬("KJ)

第(*卷第(期熊彬等:"=?在有限差分法中的应用

*)1

式中:!—物理场的标量位或矢量位;!,"—表征介质性的参数;#—场源项。它们一般都是空间坐标的函数。微分算子加在标量之前表示梯度;而加在矢量之前,则表示取散度。

[!]

就是"#$%#&’方程椭圆型方程最简单的形式

((((

!$%!&’!$%!())

(*)(()

和+,-..,/方程

((((

#&,()!$%!&’!$%!()(

其中:为(已知函数。本文主要以(*)和(()为模型研究椭圆型方程边值问题的差分解法。#&,()

[0]

为了减少计算量,在解正演问题时通常把计算范围限定在一个有限的求解区内。这样,便需要

在求解区的边界上对电位函数规定某些边值条件。常见的边界条件有下列!种形式:

"第一边界条件:在一部分边界!*上给定电位值

(,!!!*$*!*)"*!)#第二边界条件:在另一部分边界!(上给定电位的外法向微商值

,!!!()((!)!+!("

$第三边界条件:在其余边界!!上给定电位及其外法向微商的线性组合值

[!$%!+’,$!!)"(,!!%!!)!

(!)

(0)

(1)

其中:,是常数;"*,"(和"!是点坐标的已知函数;!*,!(和!!之和构成求解区的全部边界!;+

为边界的外法向。

!有限差分的求解方法

[!]

有限差分法是一种网格法。其基本思想是以差商代替导数,将偏微分方程直接转化成代数方程

组,然后对其求解。这是一种离散近似的计算方法,所要寻求的不是域内的连续函数,而是域内各节点上函数的近似值。

轴行

所长,可了

(!

*$*$(!

)())())()&&&&33’’…,,,,/,1&3&/,1’/1/1/1/1!&!&

在节点(!!","),###!,"!$,这一点的电位是

$%

%"$%"%%()()(%!&",$$&,"’%!,"&$!,"&!"!,"&…$%)$%##!#!!

,###!,在节点(!’",")"’$,这一点的电位是

(&)

%!(","’%!,"

$%

$%()$($)$(%)($!,"&!,"(!,"&…$%!#!#!#

(()

当$很小时即正方形网格很多时,式(&)和(()中的三次项及三次以上的项都可忽略。

由式(&)’((),可得

%!&",%"(%!(","()!,"!$$!#

这表明,节点(!,")的平均中心差商近似等于该点的偏导数。$越小,近似的精确度就越高。

由式(&)&((),可得

$$(!,"’%!&","&%!(","($%!,"$)!#

$

())

(*)

同理可写出,通过节点(!,")且平行于)轴的直线上的任意点)的电位值%)

$($)!,"’%!,"&"&%!,"("($%!,"

!)

$

$

("+)

由式(*)和式("+)加,则有

%%$($&$)!,"’%!&","&%!,"&"&%!(","&%!,"("(,%!,"

!#!)

由式($)及式("),在节点(!,")分别有

$

$

$

("")

%%

($&$)!,"’*!,"!#!)$$($&!,"’+$)!#!)

将上述二式分别代入式("")中,便得到在节点(!,")的有限差分方程

%!,"’

"$

%!&","&%!,"&"&%!(","&%!,"("($*!,"],

%"&%!,"&"&%!(","&%!,"("],!&",

方点,方"&)"()

$$

("$)("%)

(",)("-)

%!,"’

第24卷第2期

2

熊彬等:89:;9

43C

!%!32#2

$"$

可以应用前述差分格式(45),然后具体给出求解区边界上节点电位的表达式,以构成完整的差分方程(盖板上利用第一类边界条件;其余!个边上,利用第二类边界条件,并取%2(’)63)。具体计算时笔者不采用联立求解有限差分方程组的方法,而是首先对每一节点上的电位赋以初值(零级近似),尔后,根据某个内节点相邻7个点的电位值(包括已知的边值)按差分方程直接计算出该点电位下一级的近似值,通过多次迭代,不断修正,直到相邻两级近似值的变化在允许范围之内,就可认为节点上的电位值趋于精确。根据上述算法,采用89:;9

程序框图见图7。7!!(64)+36433)("645"(=4)($6>"(=4)+46@’.0/,($-(".)

+4,($-/.60+’/,4-("."+3)+26@’.0/,($-(".)A0.064/($A0.164/("

#A066($+2,0-1.6+3)

+2,0-1.63)

’-/’

+2,0-1.6,+4,0-1?4.=+4,0-1=4.

=+4,0?4-1.=+4,0=4-1..*7)

’+1

**拉普拉斯方程

’+1’+1

???????????????用+2代替+4-以+4循环迭代计算+2???????????A0.264/533

**循环次数**盖板电位433**周边电位3

’-/’#A0664B1664B166(""#$%#&程序编制及说明

**步长**导体槽盖电位**网格横向节点数**网格纵向节点数

**用零矩阵对网格各节点电位进行初值化**对沿盖板各节点赋初值433

**对内节点赋一任意初值

**初值化结果变量

??????????????????设置零级近似值???????????????????

+4,2/($?4-2/("?4.60+’/,($?2-("?2."+3*2)

??????????????????以+4开始迭代计算+2????????????????

在有限差分法中的应用

MATLAB在有限差分法中的应用

作者:

作者单位:刊名:英文刊名:年,卷(期):被引用次数:

熊彬, 阮百尧

桂林工学院资源与环境工程系,广西桂林 541004桂林工学院学报

JOURNAL OF GUILIN INSTITUTE OF TECHNOLOGY2001,21(2)4次

参考文献(7条)

1.The MATLAB 5 Handbook 20002.罗延钟 有限差分法 1982(01)

3.姜佩仁.王新民 地学中的近代计算方法 19934.罗延钟.张桂青 电子计算机在电法勘探中的应用 19875.毕显 电磁场理论 1985

6.傅良魁 应用地球物理教程-电法 1990

7.楼顺天.于卫.闫华梁 MATLAB程序设计语言 1998

相似文献(10条)

1.期刊论文 杨天春.朱自强.周勇.YANG Tianchun.ZHU Ziqiang.ZHOU Yong Matlab环境下瑞利波有限差分正演与曲线绘制 -煤田地质与勘探2010,38(1)

以瑞利波频散方程为出发点的Abo-Zena传递矩阵等方法,只能研究层状介质中瑞利渡的传播特性,对于非层状介质,传递矩阵无能为力.因此,不得不考虑有限元、有限差分等方法.根据弹性动力学方程,采用交错网格有限差分方法对均匀弹性半空间介质进行全波场模拟,并在Matlab环境下实现编程计算,再现了瑞利波在近地表的传播状态,实现了地震剖面曲线的正振幅充填问题,从而获得了类似野外地震勘探的剖面记录.模拟结果表明,采用一阶差分格式所得到的地震记录存在较严重的数值频散,在采用有限差分法研究瑞利波"之"字形成因时,须尽量压制数值频散现象,才能获得更接近实际情况的频散曲线.

2.学位论文 熊群 有限差分光束传输法的研究 2008

随着集成光学技术的发展,诸多具有不同结构、功能各异的光波导器件应运而生。通过计算机来对光波导器件进行预设计,不但省时省力,同时能直观反映光波导器件特性。于是出现了用数值分析方法来分析光波导,光束传输法就是众多方法之一。光束传输法描述的是整个介质上的场分布,广泛地应用于无源波导器件和光纤中电磁场模式特性的分析中。现在已经出现多种光波导仿真软件可以利用光束传输法实现对各种波导进行仿真,本文从研究源代码入手,编写出二维和三维光束传输法代码,并对广角光束传输法在精度上进行改进。

文章首先介绍了光束传输法的现状及发展,比较了几种BPM算法优劣性。由于光束传输法的基础就是波动方程,对于波动方程的处理可以分为傍轴近似和广角近似两种,于是文章在麦克斯韦方程的基础上,根据慢包络近似理论,利用有限差分近似来代替偏微分方程,详细地推导了标量二维及三维有限差分光束传输法(FD-BPM)所使用的公式,并且对其建立了理论模型。在此模型的基础上,充分地运用MATLAB的矩阵运算功能,编写交替方向隐式光束传输法(ADI-BPM)程序。利用此算法完成了三维Y分支波导中的传播状况的模拟。接着采用二维和三维有限差分光束传输法分别对定向耦合器进行模拟仿真,对得到的模拟结果进行比较,发现两种算法得到的结果基本相符,验证了程序的正确性,文章中还讨论了网格点数对算法精度的影响。

另外,文章讨论了广角近似光束传输法,运用MATLAB仿真工具对广角和傍轴近似光束传输法进行仿真,发现在对大角度斜波导的光场分布进行模拟时,广角算法有较高的精度。传统的广角近似光束传输法通过解波动方程得到平方根算子,本文从平方根算子出发,重新推导了广角光束传输法计算公式,采用两种试探性展开方法对平方根算子进行处理,然后用三种算法对Y分支波导进行仿真,最后的模拟结果表明,这些方法都比同阶的传统广角光束传输法具有更高的精度,并且没有增加计算时间,对优化现有光波导仿真软件具有一定的参考价值。

3.期刊论文 史策 热传导方程有限差分法的MATLAB实现 -咸阳师范学院学报2009,24(4)

对于有界热传导齐次方程的混合问题,用分离变量法求解往往很复杂.为了更好地理解热传导方程的解,使用MATLAB软件将方程的解用图像表示出来.通过区域转换的思想,利用MATLAB编程实现一定区域内热传导方程的有限差分方法,数值表明了方法的可行性和稳定性.

4.期刊论文 谢焕田.吴艳.XIE Huan-tian.WU Yan 拉普拉斯方程有限差分法的MATLAB实现 -四川理工学院学报(自然科学版)2008,21(3)

文章基于区域转化的思想,通过MATLAB编程实现了四分之一圆域上拉普拉斯方程的有限差分方法,数值实验表明了方法的可行性和正确性.

5.期刊论文 王忆锋.唐利斌 通过有限差分和MATLAB矩阵运算直接求解一维薛定谔方程 -红外2010,31(3)

根据有限差分法原理,将求解范围划分为一系列等间距的离散节点后,一维薛定谔方程转化为可以用一个矩阵方程表示的节点线性方程组.利用MATLAB提供的矩阵左除命令,即可得到各未知节点的函数近似值.该方法概念简单,使用方便,不需要花费较多精力编程即可求解大型线性方程组.

6.期刊论文 郑书飞.蒋书运.Zheng Shufei.Jiang Shuyun 一类改进的气体静压轴承压力场分布有限差分算法 -东南大学学报(英文版)2009,25(4)

针对传统的静压气体轴承压力分布算法效率较低或收敛性较差等问题, 提出了一类改进的有限差分计算方法. 以小孔节流式的径向静压气体轴承的压力分布为对象, 采用有限差分法求解非线性雷诺气体润滑方程; 根据流量平衡原理, 提出了一种新型变步长逐步逼近迭代算法, 用于修正迭代过程中的供气口出口压力, 提高算法的效率和收敛性; 基于Matlab工具, 开发了一套通用的径向静压气体轴承的压力场分布计算软件. 算例结果表明: 所提出的改进有限差分法计算效率高, 稳定性好, 收敛快; 对于小间隙(小于2 μm)气膜, 此方法仍然有效并快速收敛.

7.期刊论文 许志强.王洪艳 连铸坯凝固过程温度模拟系统的开发和研究 -燕山大学学报2004,28(4)

建立了连铸板坯凝固过程温度场数学模型.模型中引入了连铸坯在结晶器中表面热流规律的修正方程.针对板坯形状规则的特点,采用有限差分法建

立了数学模型.在MATLAB平台下对二冷区内板坯温度场进行分析模拟,以渐变色形式模拟显示了连铸板坯任意截面温度场的等值线、二维及三维可视化显示,显示结果直观.以某钢厂铸机参数及铸坯尺寸为实例进行了模拟分析.模拟结果表明:连铸坯各测量截面的温度与实际测量温度分布相符.该模拟系统为板坯连铸生产过程工艺参数设定与优化提供了理论依据及有效的分析手段,可应用于实际预测当中.

8.期刊论文 卜毅男.傅增祥.金若鹏.姚远.BU Yi-nan.FU Zeng-xiang.JIN Ruo-peng.YAO Yuan 体外超声碎石机声场仿真 -计算机仿真2009,26(12)

体外冲击波碎石机(Extracorporeal shock wave lithotripter,ESWL)是治疗结石的主要手段,现阶段对其微观工作机理、动态声场分布等问题的研究尚处于起步阶段.通过对ESWL声场的建模及仿真可以对上述性能的研究带来很大的帮助.应用非线性传播方程建立了ESWL声场的数学模型,并通过有限差分算法结合MATLAB软件的图形模块进行了数值仿真.模型不仅考虑了非线性的影响,还引入了衍射、和热粘性吸收对声波的作用,最大限度地与实际声场所受到的各种影响保持一致.仿真很好地反映出ESWL产生的高强度超声波传播的非线性及一些与线性声波传播显著不同的特性.对形象地了解ESWL声波的传播过程和ESWL反射罩优化设计有很好的参考价值.

9.学位论文 王春好 新型动静压轴承设计和性能分析 2007

本文的出发点是提高动压轴承的承载能力和稳定性,从理论方面对普通圆柱动压滑动轴承的结构改进进行了研究。在普通动压轴承的基础上,通过在动压轴承的最大压力出口区开设一静压油腔来提高动压轴承的承载能力和稳定性。本文运用MATLAB求解普通动压轴承和新型动静压轴承进行压力分布并且通过计算和分析二者的静态特性,可以分析出新型动静压轴承的性能特点。

在对新型动静压轴承进行理论计算时,轴承内部油膜压力分布是求解的关键部分。通过求解动静压滑动轴承二维Reynolds方程,对轴承的油膜承载面进行网格离散化,采用差分法将Reynolds方程化为线性方程组,并利用超松弛迭代法对方程组进行求解得出了轴承的油膜压力分布。使用MATLAB对压力分布进行了图形仿真。通过性能计算,新型动静压轴承在承载能力和稳定性等方面得到显著提高。

本文通过对普通动压轴承和新型动静轴承进行计算和分析,进一步验证了新型动静压轴承的性能:与普通动压轴承相比,承载能力大幅度增加,油膜厚度和压力区加大,稳定性明显提高。从而为新型轴承的实际应用奠定了一定的理论基础。

在轴承设计过程中,采用MATLAB可以绘制出高质量的仿真图形,而且程序本身也比较简单易懂。为进行液体动压或动静压轴承的性能分析以及结构设计提供了一种方法。

10.会议论文 何红雨.保宗悌.陆晓 正六边形二维场域电位的有限差分算法 2004

在计算二维静态场时,由于许多实际问题的边界条件过于复杂而无法求得解析解,这时一般要借助数值法求域中的电位分布。本文以正六边形二维场域为例,建立了正三角形网格划分的有限差分法的计算模型,并通过MATLAB编程得到场域内电位分布的数值解和相应图形,对有限差分法的计算处理进行了讨论和分析。

引证文献(4条)

1.苏丕波.张小路.黄孝风 浅谈有限差分,有限单元及边界元在位场向上延拓中的应用比较[期刊论文]-内蒙古石油化工 2008(13)

2.李秀英.常迎香.褚衍东.李险峰 用Matlab求泊松方程数值解的有限元法[期刊论文]-重庆工学院学报(自然科学版) 2007(8)

3.王晓峰.刘光焰.王涛 非饱和土体降雨入渗的全过程数值模拟[期刊论文]-水文 2007(1)

4.任永红.汪进宝.贺友多.刘中兴 稀土电解槽的电场计算与槽电压分析[期刊论文]-包头钢铁学院学报 2003(4)

本文链接:http://d.g.wanfangdata.com.cn/Periodical_glgxy200102003.aspx

授权使用:湖南大学(hunandx),授权号:13c298e3-c438-4077-80d8-9da900d0ee20,下载时间:2010年7月4日

matlab不少项一阶差分,MATLAB在有限差分法中的应用相关推荐

  1. 怎么把dll库写成MATLAB接口,如何在Matlab中应用动态连接库接口技术

    1 引言 Matlab是当前应用最为广泛的数学软件,具有强大的数值计算.数据分析处理.系统 分析.图形显示甚至符号运算等功能.利用这一完整的数学平台,用户可以快速实现十分 复杂的功能,极大地提高工程分 ...

  2. matlab去除周期噪声,matlab在空域与频域中去除周期噪声、椒盐噪声的简单应用

    前言 去年图像处理的DLL,有学弟问我做的思路,便放到博客里 github地址,欢迎star 图像增强处理:设计一套空间域与频率域结合的图像增强算法,处理以下任一组图片中的带噪声图像,去除噪声,提高图 ...

  3. matlab三相异步电动机仿真,MATLAB中的三相异步电动机仿真

    目录 前言 ..................................................................1 1 异步电动机动态数学模型 ............ ...

  4. matlab的数学函数,matlab中常见数学函数的使用

    matlab中常见数学函数的使用 MATLAB 基本知识 Matlab 的内部常数 pi 圆周率 exp(1) 自然对数的底数 e i 或 j 虚数单位 Inf 或 inf 无穷大 Matlab 的常 ...

  5. 2021-03-31 Matlab simulink 模糊PID在无刷直流电机中的应用

    Matlab simulink 模糊PID在无刷直流电机中的应用 无刷直流电机的数学模型. 1.无刷直流电机数学模型 然后给出无刷直流电机的动态数学模型 看到上述这张图,不知聪明的你有没有发觉,图中采 ...

  6. matlab波的极化特性,Matlab GUI在电磁波极化特性教学中的应用

    科技创新导报 2018 NO.16Science and Technology Innovation Herald 创新教育 科技创新导报 Science and Technology Innovat ...

  7. matlab生产计划问题,用MATLAB解决综合生产计划编制过程中的优化问题

    第 18卷第 3期 2005年 6月 常 州 工 学 院 学 报 Journal of Changzhou Institute of Technology Vol. 18 No. 3 Jun. 200 ...

  8. matlab 音频编辑器,在Matlab中使用App Designer可以进行实时音频处理吗?

    我想用Matlab中的应用程序设计器编写一个简单的音频过滤应用程序.一个人应该能够加载音频文件,按播放和改变参数,如输入增益,截止频率等,而文件正在播放. 我只是不知道如何能够实时更改参数并更新相应的 ...

  9. asp.net matlab,ASP.NET与MATLAB混合编译以及数据传递【更新中】

    本帖最后由 yinbo20081314 于 2015-5-20 00:35 编辑 在VS环境的项目中,首先需要引用以下dll才能开启MATLAB混编.[引用1]MatlabApplication(Ve ...

最新文章

  1. HTML5 3D旋转图片相册
  2. C#使用BerkeleyDB操作简介
  3. php t string,PHP中出现意外的T_STRING错误
  4. 【机器学习】集成学习与模型融合方法举例
  5. How to publish more papaers?
  6. powershell 开发入门_详谈Ubuntu PowerShell(小白入门必看教程)
  7. android创建类的包名称,如何知道/配置Xamarin Android生成的程序包名...
  8. 设置开机ceph自动map rbd块设备
  9. 江淮汽车:受疫情和芯片短缺影响 Q1预亏3.07亿元
  10. [大学回忆录-思想]再谈我的专业技能
  11. 分类(Classification)
  12. 终端IO--unix环境高级编程读书笔记
  13. BGP路由反射器原理和实现(华为设备)
  14. Delphi程序开启XP的ClearType显示效果
  15. vp9 segment 详细分析
  16. mysql数据库基础语句讲解
  17. excel表格汇总数据
  18. C语言多文件编译的精神内核-讲透多文件编译攻略
  19. java购物车设计_Java简单购物车设计
  20. 递归实现指数型,排列型,组合型枚举

热门文章

  1. 硬盘分区数据恢复?这些方法助您解忧
  2. Even Loop(事件循环)
  3. pyqt5实现桌面便签及提醒——逐步更新
  4. php 代码下载_php实现文件下载代码分享
  5. 基于 V2X 的车联网安全互信体系架构分析
  6. 刷脸支付变得像扫码支付一样随处可见
  7. android studio中添加gif文件格式,Android studio 使用 ImageView 加载 gif 文件
  8. MATLAB:图像裁切(imcrop函数)
  9. 什么时候该使用SUM()函数
  10. 关于Mysql数据导出时遇到的Can't create/write to file问题