基于CrankNicolson格式的输运方程的数值求解方法
在Crank-Nicolson格式下解对流扩散问题的移动网格方法
j +
( ( M
1 j 一M (j ) u_
j1) 1 J N , - ).
(0 1)
其 中 和 分别表 示 旧 网格 点和 新 网格点 , △∈= 1Ⅳ 是 Q / 。中的 网格步 长.这 样 我们可 以得到物理区域的一个新的网格分布. 设初始网格移动 步后得到的网格由 { ) 表示.由
△ + Ax + ̄ 7 一( “,1 c ) . y u+ ( )+ 一(nJ c )
.
(9 1)
由插 值公 式 (9, 1)网格移 动 +1步时 的数值 解 可 由下式 求得
一 一
( ) 一( ) ) ( ,
(0 2)
其 中
=
( z
结合 () 即得 到逼近 模型 方程 () 5式 1 的差 分格 式.
由 ( 和 () 3 ) 4 式,我们可将 () 5 式化简为
c k Lk J + /“+ )
一
J k + B k k+ k + J J J 1.
=
其 中
+ / 12
, =
一
0
¨ 厂 2
’
“ d (,) =
≈
≈
=
((, ~c )z , ) 一 z) 札zt ( 札 ( t ( () ) )1 d
((,) c))z n t一(,。d u (,) 一( ) 一(札 , t d (uj c + c)) (8 1)
.
这 里我 们 忽略 了高 阶项 , ( ,指 ( ) 第 J个单元界 面 的值 .方 程 (8 也 能被 写 为 c) c 在 “ 1)
() 8
的 离散形 式求 得.式 中 >0是一 个 常数 ,在数 值 实验 时 的选取 将影 响数 值解 的精度 为 了方便 迭代法 的 实现 ,我们 引入 一个 人工 的小 时 间参数 亍 求 解方 程 ,
SaintVenant方程组CrankNicolson格式离散与学习控制建模word精品文档5页
SaintVenant方程组CrankNicolson格式离散与学习控制建模1引言现代渠道系统一般由明渠渠段构成[1],1871年圣?维南(Saint Venant)得到圣维南非恒定流偏微分方程(SaintVenant方程)奠定了明渠非恒定流的理论基础,之后很长时间虽很多学者试图改进SaintVenant 方程(圣维南方程),许多专家学者仍多以圣维南方程组进行渠道运行自动控制建模[2].圣维南方程组属于一阶拟线性双曲型偏微分方程,目前为止还无法求得其精确解析解,在实际中对方程组的处理常采用数值解的方法将方程组进行离散化,把微分方程连续的定解域离散到定解域中的一些网格结点,得到一组代数方程[2-4].本文主要内容是探究如何用CrankNicolson(CN)格式离散圣维南方程组,从而得到基于迭代学习控制的数学模型.圣维南方程组的离散方法有有限元法、有限差分法、特征线法等[2].有限差分法中的CN格式为显式-隐式混合格式,结合显式和隐式格式的优点,具有无条件稳定,精度高于相应的显式和隐式格式等特点[5].文献[6]中对热传导方程的离散采用的是CN格式离散的方法.文献[7]中作者分析了显式、隐式和CN三种差分格式对土壤温度日变化的模拟能力,对比结果表明CN方案比隐式方案计算误差小,且绝对稳定.文献[8]中运用CN格式方法对耦合非线性偏微分系统进行了处理.还有一些文献也用到了CN方案,如[9-10].虽然CN格式离散用于偏微分系统已多见报道,但CN格式在具有耦合特性的圣维南方程组渠道系统上的应用尚未见报道.明渠渠道系统的控制方法基于迭代学习控制.迭代学习控制适用于具有重复运动性质的被控系统,其目标是实现有限区间上的完全跟踪.通过输出信号与给定期望的偏差,修正不理想的控制信号进行下一次迭代,直到对系统进行完全跟踪[11].明渠渠道系统常用于农田灌溉以及调水工程,其输水过程呈现出时间上的周期性、过程上的重复性.例如一片农田一年中某段时期每年的需水量大致是接近的,每年的需水量具有周期性.在农田灌溉领域迭代学习控制已有应用.文献[12]基于迭代学习控制方法控制一个周期性的分布参数系统,通过对中心支轴喷雾灌溉设备的控制,达到农田的最优灌溉.综上所述,本文采用CN格式对圣维南方程组进行离散化,并建立基于迭代学习控制方法的渠道系统数学模型.2系统描述文献[13]考虑渠道上下游为常水位水库的缓坡单渠渠道.节制闸门的开启会引起渠道水流流态变化,此时为渐变非恒定流用以水位Y(x,t)、流量Q(x,t)为变量的圣维南方程组来描述,水位和流量是关于空间和时间的变量.此方程是非?性双曲型偏微分方程:3学习控制建模文献[16]中,作者将热流方程在时间上进行前向差分,在空间上进行有限差分,由此离散化后得到的方程形如(19a)式偏差分的矩阵形式,随后对得到的线性方程组进行迭代解,用数值解的方法进行求解.本文对于C-N离散化后的渠道系统基于迭代学习控制方法进行控制.现在假设用i 表示N个时间步长,闸门控制渠道水的流量,利用前一次操作时测得的流量和水深与期望流量和水深的误差信息来修正闸门的下一次调控,如此反复调控闸门直到水渠水的流量与水深完全跟踪上期望值.试验中研究的控制系统由于每次试验重复运行时所表示的函数关系不变,是可重复的,因此我们用整数k表示每次试验重复操作的次数,其中k=0,1,2,3….当第k次试验满足f(ek(i))[6]CICHY B,GALKOWSKI K,ROGERS E.Iterative learning control for spatiotemporal dynamics using CrankNicholson discretization. Multidimens[J]. Syst. Signal Process,2012,23(1/2):185-208.[7]郑辉,刘树华.数值差分格式及各点设置对土壤温度模拟结果的影响[J].地球物理学报, 2012,55(8):2514-2522.[8]VEMULA R,CHAMKHA A,MALLESH M P.Nanofluid flow past an impulsively started vertical plate with variable surface temperature [J]. International Journal of Numerical Methods for Heat and Fluid Flow, 2016, 26(1):328-347.[9]SACHIN S. WANI,SARITA H. THAKAR.CrankNicolson Type Method for Burgers Equation [J]. International Journal of Applied Physics and Mathematics, 2013, 3(5): 324-328.[10]ZHAO X,SUN Z Zpact CrankNicolson schemes for a class of fractional control Cattaneo equation in inhomogeneous medium [J].Sciput.62 (2015),747-771.[11]谢胜利,田森平,谢振东.迭代学习控制的理论与应用[M].北京:科学出版社, 2005.[12]MOORE K L,CHEN Y Q. “Iterative learning approach to adiffusion problem in an irrigation application,” in Proceedings of the 2006 IEEE International Conference on Mechatronics and Automation, 2006[C]:1329-1334.[13]方神光,李玉?s,吴保生.大型输水明渠运行控制模式研究[J].水科学进展,2008,19(1):68-71.[14]LITRICO X,FROMION V.Modeling and control of hydrosystems[M].London: Springer, 2009 .[15]LITRICO X.FROMION V.Frequency modeling of open channel flow [J].Hydraul Eng, 2004,130 (8): 806-815.[16]RABENSTEIN R,STEFFEN P.Implicit Discretization of Linear Partial Differential Equations and Repetitive Processes[J].International Workshop on Multidimensional, 2009,106 (2):1-7.第36卷第1期2017年3月计算技术与自动化Computing Technology and AutomationVol36,No1Mar. 2 0 1 7第36卷第1期2017年3月计算技术与自动化Computing Technology and AutomationVol36,No1Mar. 2 0 1 7希望以上资料对你有所帮助,附励志名言3条:1、理想的路总是为有信心的人预备着。
BBMB方程的Crank-Nicolson差分格式的一种迭代算法
BBMB方程的Crank-Nicolson差分格式的一种迭代算法马维元【摘要】对于BBMB方程的Crank-Nicolson差分格式提出了一种迭代算法,然后利用离散能量法证明了迭代算法收敛到差分格式。
最后,通过数值实验说明了该迭代算法无论是在计算时间上还是在计算误差上都优于Newton迭代法。
%An iterative algorithm is proposed for Crank-Nicolson difference scheme to solve BBMB equation. That the iterative algorithm converges to Crank-Nicolson scheme is proved by the means of discrete energy method. Numerical experiments validate that the iterative algorithm is superior to Newton method both in CPU time and compute error.【期刊名称】《河北科技师范学院学报》【年(卷),期】2012(026)002【总页数】4页(P12-15)【关键词】BBMB方程;迭代算法;收敛;数值试验【作者】马维元【作者单位】西北民族大学数学与计算机科学学院,甘肃兰州 730030【正文语种】中文【中图分类】O241.82Benjamin-Bona-Mahony-Burgers(BBMB)方程主要是为了描述小振幅的长波在非线性耗散媒介中的传播而建立的数学模型,在物理中有着重要的意义,对其进行了大量的研究[1-8],其初边值问题具体如下:其中α,β,γ,T >0。
K.Omrani等[8]提出了BBMB方程的一种Crank-Nicolson差分格式,但是其求解是通过经典的解非线性方程组的Newton迭代法进行的。
Burgers方程的两种Crank-Nicolson差分格式
Burgers方程的两种Crank-Nicolson差分格式CHEN Lian;GUO Yuanhui;ZOU Yetong【摘要】建立Burgers方程的两种Crank-Nicolson差分格式.格式一是对由Hopf-Cole变换线性化后的Burgers方程建立C-N格式,再由Hopf-Cole变换求得原Burgers的数值解.格式二是对Burgers方程的非线性项用泰勒公式逼近,建立C-N格式.理论分析,两种差分格式在时间和空间方向均为二阶收敛.通过数值算例,差分格式二比差分格式一的绝对误差略小.【期刊名称】《西华师范大学学报(自然科学版)》【年(卷),期】2019(040)002【总页数】5页(P149-153)【关键词】Burgers方程;Hopf-Cole变换;Crank-Nicolson格式;泰勒公式;有限差分法【作者】CHEN Lian;GUO Yuanhui;ZOU Yetong【作者单位】;;【正文语种】中文【中图分类】O241Burgers方程是一个重要的非线性发展方程模型,它兼有波动方程和热传导方程的特性,也是流体动力学Navier-Stokes方程中忽略压力项后的简单数学模型方程。
Burgers方程模型在众多研究领域有着重要的地位和作用,如流体力学、量子场论、非线性声学、气体动力学和通信技术等领域。
要得到Burgers方程的精确解很困难,因此有效的Burgers方程数值解法受到广泛关注。
用有限差分方法研究Burgers方程主要分两种方式:一是源项f=0时,通常用Hopf-Cole变换将非线性Burgers方程转化为线性的热方程,再建立差分格式求解。
如文献[1-4],Kadalbajoo等人均是先对非线性Burgers方程作线性化处理。
二是源项f≠0时,不宜对Burgers方程使用Hopf-Cole变换,而是对方程采用其他的离散格式。
田强等构造了一种指数型差分格式[5],谢焕田对Burgers方程建立了全离散两层加权中心差分格式[6]。
可转债的定价模型及数值解法
0
引言
可转换公司债券 ( 简称可转债 ) 是指发行人依照法定程
V>K(t)S(t) ;LV=0
若持有人终止持有 , 而选择转股 , 则
V=K(t)S(t) ;LV≥0
表述为线性互补问题 (Linear Complementary Problem) 为
≥ ≥ ≥ ≥ ≥ ≥ ≥ ≥ ≥
序发行 、 在一定时间内依据约定的条件可以转换成股份的公 司债券 。 可转债是普通公司债券和认股权证的组合 , 兼具债 权 和 股 权 双 重 属 性 ,是 国 际 资 本 市 场 上 世 纪 七 、八 十 年 代 兴 起的一种混合金融产品 (Hybrid Bonds) 。 我国在 1992 年首 次试点 ( 宝安转券 ) , 截止目前 , 已经发行约 50 多只可转债 , 且有十多家公司拟发行可转债 。 因此 , 对我国可转债的定价 研究具有重要的理论和现实意义 。 本文在不考虑信用风险和 回售条款条件下 , 给出简化后的 Ayache Forsyth and Vetzal 模 型 ( 简 称 为 AFV 模 型 ) 。 以 海 化 转 债 ( 转 债 代 码 :125822) 为 例 , 用 Monte-Carlo 方 法 模 拟 股 价 运 动 , 通 过 Crank-
n V -Vj σ2 2 Vj+1 -2Vj +Vj-1 V -V - j - Sj -rSj j+1 j-1 +rVj =0 2 2 △t n 2 △Sj +△Sj+1 △Sj +△Sj+1 2 2 n+1 n n+1 n+1 n+1 n
利率条款 : 年利率依次为 1.5% 、1.8% 、2.1% 、2.4% 、2.7% ;
可编程图形处理器加速无条件稳定的Crank–NicolsonFDTD分析三维微波电路
可编程图形处理器加速无条件稳定的Crank–Nicolson FDTD分析三维微波电路徐侃1陈如山1杜磊1朱剑1杨阳2(南京理工大学通信工程系,南京 210094)1 (南京航空航天大学信息科学与技术学院,南京 210094)2*******************摘要:本文使用图形处理器(GPU)加速无条件稳定的Crank–Nicolson时域有限差分方法(CN-FDTD)中的迭代计算。
在CN-FDTD 仿真中,稳定的双共轭梯度法(Bi-CGSTAB)作为求解器用于求解每个时间步所产生的线性系统。
提出了一种基于GPU的双共轭梯度法,在迭代过程中,稀疏矩阵矢量乘和向量操作都被GPU的多个处理器并行处理。
由于GPU具有强大的并行处理能力,使用基于GPU的双共轭梯度法,CN-FDTD仿真所需的时间可以大大降低。
借助NVIDIA公司提供的统一计算设备架构(CUDA)编程模型,实现了该基于GPU的双共轭梯度求解器。
最后用GPU加速的CN-FDTD方法分析了若干微波电路,其数值结果表明了GPU加速处理的有效性。
关键词:图形处理器;CN-FDTD;稳定的双共轭梯度法;CUDAGPU Accelerated Unconditionally Stable Crank–Nicolson FDTD Method for Analyzing Three-Dimensional Microwave CircuitsK. Xu1, R. S. Chen1, L. Du1, J. Zhu1, Y. Y ang2(Department of Communication Engineering, Nanjing University of Science and Technology of China,Nanjing 210094)1(College of Information Science & Technology, Nanjing University of Aeronautics and Astronautics of China, Nanjing210094)2Abstract: The programmable Graphics Processing Unit (GPU) is employed to accelerate the iteration calculation in the unconditionally stable Crank–Nicolson fiinite-difference time-domain (CN-FDTD) method. In order to solve the linear system generated by the CN-FDTD at each time step, the Bi-Conjugate Gradient Stabilized method (Bi-CGSTAB) is used. Furthermore, both the Sparse Matrix-V ector Product (SMVP) and vector operations in the iteration are performed by multiple processors of the GPU, therefore a GPU-based solver called GPU-BI-CGSTAB is developed and plenty of simulation time can be saved in the CN-FDTD simulation because of parallel computing capability of modern GPUs. Using the Compute Unified Device Architecture (CUDA) developed by NVIDIA as the application programming interface (API), a GPU can easily be programmed to accelerate the simulation. Finally, several microwave circuits are analyzed with GPU enhanced CN-FDTD method to demonstrate the accuracy and effectiveness of our proposed method.Keywords: GPUs; CN-FDTD; BICGSTAB; CUDA1 引言传统的时域有限差分方法(Finite-Difference Time-Domain, FDTD)在已经广泛应用于对现代微波以及毫米波平面电路的分析。
夸克 gluon等离子的输运系数计算
夸克 gluon等离子的输运系数计算夸克和胶子是构成强相互作用力的基本粒子。
它们在夸克胶子等离子中的输运系数对于研究强相互作用现象具有重要意义。
本文将根据夸克和胶子的性质和输运方程,介绍如何计算夸克 gluon等离子的输运系数。
一、夸克的输运系数计算夸克是构成质子和中子等强子的基本粒子,其输运系数的计算可以采用经典输运理论中的碰撞积分方法。
假设夸克在夸克胶子等离子中的输运过程主要由弹性碰撞所主导,那么可以利用玻尔兹曼方程和碰撞积分来计算夸克的输运系数。
具体计算步骤如下:1. 建立夸克的输运方程:根据输运方程中的对称性原理和洛伦兹协变性原理,可以得到夸克的输运方程。
2. 确定碰撞积分表达式:利用碰撞积分的方法,可以求解夸克碰撞的截面积分。
根据夸克之间的相互作用力和散射角度,可以得到碰撞积分表达式。
3. 计算输运系数:通过对碰撞积分表达式进行计算,可以获得夸克的输运系数。
夸克在等离子体中的输运系数可以描述其扩散和导热等输运过程。
二、胶子的输运系数计算胶子是强相互作用力的传递粒子,也是夸克胶子等离子的重要组成部分。
胶子的输运系数是研究夸克胶子等离子性质的重要指标。
胶子的输运系数计算主要基于色玻尔兹曼方程。
具体计算步骤如下:1. 建立胶子的输运方程:利用色玻尔兹曼方程,可以建立胶子的输运方程。
考虑到胶子之间的相互作用和散射过程,可以得到胶子的输运方程。
2. 导出碰撞积分表达式:根据胶子之间的相互作用力和碰撞角度,可以导出胶子的碰撞积分表达式。
3. 计算输运系数:通过对胶子的碰撞积分进行计算,可以得到胶子的输运系数。
胶子的输运系数可以反映其在等离子体中的传播和扩散特性。
总结:夸克和胶子的输运系数计算是研究强相互作用力和夸克胶子等离子性质的重要方面。
通过基于碰撞积分和色玻尔兹曼方程的方法,可以获得夸克和胶子的输运系数。
这些输运系数对于深入理解强相互作用的本质和探索夸克胶子等离子的性质具有重要意义。
该文简洁地介绍了夸克和胶子的输运系数计算的基本理论和方法,并没有使用小标题或者分小节的方式,以保持文章的流畅性和整洁美观。
求解一维热传导方程Crank-Nicolson差分法
内部的结点则被称为内部结点。
所以不难看出差分方法的本质原理就是利用网格的结点的差商来代替微商,
从而求出微分方程解的近似值,故这一方法又被称为网格法。而为了方便起见,
我们可以将网格点( , )简记为(, )。
接下来我们在点(, )处列出部分常用的公式:
2
( 2 )
(,)
=
Keywords: One-dimensional heat conduction equation, first boundary value,
six-point format, stability, convergence
2
苏州大学本科生毕业设计(论文)
1 前言
偏微分方程指的是包括未知函数的偏导数或者偏微分的方程。这类方程在诸
目录
摘要
1
1. 前言
3
2. Crank-Nicolson 差分法
4
2.1) 差分法定义
4
2.2) 差分格式的建立
4
2.3) Crank-Nicolson 差分格式(六点格式)
7
2.4) Crank-Nicolson 差分格式的向量表示
9
2.5) Crank-Nicolson 差分格式的稳定性
11
2.6) Crank-Nicolson 差分格式的收敛性
多领域内被广泛应用,其中在数学和物理以及工程技术中最为广泛,所以我们也
在习惯上将这类微分方程称之为数学物理方程。
偏微分方程本质上是研究一个方程或者方程组的解的存在性和解的唯一性
(或自由度)的各种性质的方法。其中解的存在性是指存在某个解满足某些补充
条件;而解的唯一性则是研究有多少个解能够满足这些特定的条件。通常,我们
crank-nicolson格式
crank-nicolson格式
§§ 1020
Crank-Nicolson 格式是一种解决求解常微分方程的数值解法,它通过结合前一个时间步骤的隐式欧拉方程和下一个时间步骤的显式欧拉方程的综合而构造的。
它采用双线性插值,把梯度函数求在中间时间步骤,而将函数值用前一个和后一个时间步骤的函数值平均来估计。
Crank-Nicolson 格式在解决时变问题时,可以接近完美地模拟函数的行为,而且它运算用时较短,更加精确和通用。
它的局限性主要在于它的计算[复杂性]。
Crank-Nicolson 格式使用了两个时间步骤,将参数因子从1改变成1/2,以节省计算量,但同时增加了计算量,因为会变为二次方程,需要求解对称矩阵。
此外,由于 Crank-Nicolson 格式是一种有限差分数值方法,其精度与时间步长成正比,当时间步长减小时,计算量会大大增加,此时它的性能会大打折扣。
在实际应用中,Crank-Nicolson 格式可用于解决许多热传播问题、经济模型和流体力学模型等。
它也被广泛用于金融领域,如货币市场模型中,用来模拟未来收益率行为,确定未来收益率,以及进行不同风险资产组合管理。
一维非稳态导热CRANK-NICOLSON解法
一维非稳态导热CRANK-NICOLSON解法题目:数值计算一维非稳态导热,长度1米的不锈钢棒原来温度都是0度,一端温度突然变为300度,并保存不变,采用CRANK-NICOLSON 方法数值计算不锈钢内温度分布随时间的变化。
解法:一维导热微分方程边界条件为u(0,t)=0;u(a0,t)=300初值u(x,0)=0;主程序clcclearuX=1; %不锈钢长1米uT=2000; %时长2000秒M=10; %空间轴等分区间数N=1000; %时间轴等分区间数rou=8030; %不锈钢密度cp=502.48; %不锈钢热容kk=16.27; %不锈钢导热率D=kk/rou/cp; %扩散系数phi=inline('0'); %初值psi1=inline('0'); %左边界psi2=inline('300'); %右边界%计算步长dx=uX/M;%x的步长dt=uT/N;%t的步长x=(0:M)*dx;r=D*dt/dx/dx;%步长比Diag=zeros(1,M-1);%矩阵的对角线元素Low=zeros(1,M-2);%矩阵的下对角线元素Up=zeros(1,M-2);%矩阵的上对角线元素for i=1:M-2Diag(i)=1+r;Low(i)=-r/2;Up(i)=-r/2;endDiag(M-1)=1+r;%计算初值和边值U=zeros(M+1,N+1);for i=1:M+1U(i,1)=phi(x(i));endfor j=1:N+1U(1,j)=psi1(t(j));U(M+1,j)=psi2(t(j));endB=zeros(M-1,M-1);for i=1:M-2B(i,i)=1-r;B(i,i+1)=r/2;B(i+1,i)=r/2;endB(M-1,M-1)=1-r;%逐层求解,需要使用追赶法(调用函数EqtsForwardAndBackward)for j=1:Nb1=zeros(M-1,1);b1(1)=r*(U(1,j+1)+U(1,j))/2;b1(M-1)=r*(U(M+1,j+1)+U(M+1,j))/2;b=B*U(2:M,j)+b1;U(2:M,j+1)=zhuiganfa(Low,Diag,Up,b);endU=U';%作出图形xlabel('空间变量x')ylabel('时间变量t')shading interp程序用到了追赶法子程序,代码如下function x=zhuiganfa(L,D,U,b)%追赶法求解三对角线性方程组Ax=b%检查参数的输入是否正确n=length(D);m=length(b);n1=length(L);n2=length(U);if n-n1 ~= 1 || n-n2 ~= 1 || n ~= mdisp('输入参数有误!')x=' ';return;end%追的过程for i=2:nL(i-1)=L(i-1)/D(i-1);D(i)=D(i)-L(i-1)*U(i-1);endx=zeros(n,1);x(1)=b(1);for i=2:nx(i)=b(i)-L(i-1)*x(i-1);end%赶的过程x(n)=x(n)/D(n);for i=n-1:-1:1x(i)=(x(i)-U(i)*x(i+1))/D(i);endreturn;运行主程序,最终得到如图所示结果。
一维非定常对流扩散方程非均匀网格上的高精度紧致差分格式
一维非定常对流扩散方程非均匀网格上的高精度紧致差分格式黄雪芳;郭锐;葛永斌【摘要】A high accuracy compact finite difference scheme with non-uniform grids is pro-posed to solve unsteady convection diffusion equations, which are used to describe boundary layer problems or locally large gradient problems, etc. The new method starts from the dis-cretization of the steady convection diffusion equation. Firstly, the spatial derivatives are discretized by using the Taylor series expansion on non-uniform grids. Then, the second order backward Eulerian difference formula is used to discretize the temporal derivative term. The three-level full implicit compact difference scheme on non-uniform grids for solving the one-dimensional unsteady convection diffusion equation is derived. The new scheme has the second order accuracy in time and the third to fourth order accuracy in space and is unconditionally stable. Finally, some numerical experiments are conducted to demonstrate the high accuracy and the advantages in solving boundary layer problems or locally large gradient problems.%本文在非均匀网格上给出了求解非定常对流扩散方程的一种高精度紧致差分格式,特别适合边界层和大梯度等问题的求解。
基于Crank Nicolson格式的输运方程的数值求解方法
基于Crank Nicolson格式的输运方程的数值求解方法作者:魏丙涛来源:《赤峰学院学报·自然科学版》 2013年第3期魏丙涛(文山学院数理系,云南文山 663000)摘要:本文将介绍一种求解输运方程的数值方法Crank-Nicolson格式,通过数值求解的方法得到方程的数值解并与该方程的解析解对比,给出数值解法的稳定性以及数值方法精度.关键词:加权隐格式;输运方程;数值方法中图分类号:0175.2文献标识码:A文章编号:1673-260X(2013)02-0012-02输运方程是数学物理方程中比较重要的方程之一,能够描述一些输运的物理过程,比如:制作半导体器件就常用到扩散法,把含有所需杂质的物质涂敷在硅片表面,把硅片放在扩散炉里,杂质就向硅片里面扩散,扩散运动的方向基本上是垂直于硅片表面而指向硅片深处[1],这种只沿某一方向进行的扩散就可以用一个一维的输运方程来描述这一物理过程.输运方程的解法很多,一般的输运方程是可以用解析的解法求解的,对于复杂的方程、边界条件及初始条件,解析解就变的比较困难了,于是需要寻求数值解法.对于偏微分方程,数值解法一般采用有限差分法,在此介绍一种基于Crank-Nicolson格式的差分方法的数值求解.本文第一部分将对Crank-Nicolson格式做个简单的介绍,第二部分将给出数值结果,第三部分则是本文的结论.1 Crank-Nicolson格式简介考虑如下的定解问题:上述方程是一个输运方程,该方程的最基本差分格式为向前差分和向后差分格式,向前差分格式可以写为[2]:在(4)式的等式左右两边同乘θ,在(3)式的两边同乘(1-θ),并将两式相加得到[4]:上式为加权隐格式的差分格式,在上面的式子中,θ表示时间步长,h表示空间步长,θ是一个大于0小于1的数,当θ=0时上式成为向前差分格式,当θ=1时上式变成向后差分格式.这个格式一般称作Crank-Nicolson格式,这个差分格式是无条件稳定的,这会给数值解法带来很多方便.2 数值结果定解问题(1)能够给出解析解,在此取a=1,其解析解为:图1给出了t=0.5定解问题的数值解,图2给出了t=0.5时的解析解的函数图像,图3给出了t=0.5两种解法之间的比较,图4给出了函数值u随时间t及坐标x变化的函数关系图.从图中可以出,数值解与解析解之间的误差很小,数值解也是稳定的,并且Crank-Nicolson格式是绝对稳定的,这对于数值解是很有用的.3 结论与讨论通过上面的计算可知,Crank-Nicolson格式是一个觉得稳定的格式,并且这种算法的精度比较高,在实际的数值求解过程中非常有用.这个差分格式适用于输运方程的数值求解中,虽然有很多输运方程很容易得到解析解,但数值解法在很多时候很多方面是具有优越性和适用价值的.参考文献:〔1〕梁昆淼.数学物理方法[M].北京:高等教育出版社,1998.〔2〕Ames W F. Numerical Metheds for Partial Differential Equations. 2nd ed. New York: Academic Press, 1977.〔3〕徐长发,李红.偏微分方程数值解法[M].武汉:华中科技大学出版社,2000.〔4〕陆金甫,关治.偏微分方程数值解法[M].北京:清华大学出版社,2004.。
Matlab:CrankNicolson方法求解线性抛物方程
博客园 用户登录 代码改变世界 密码登录 短信登录 忘记登录用户名 忘记密码 记住我 登录 第三方登录/注册 没有账户, 立即注册
Matlab: CrankNicolson方法求解线性抛物方程
1 tic; 2 clear 3 clc 4 M=[10,20,40,80,160,320,640];%x的步数 5 K=M; %时间t的步数 6 for p=1:length(M) 7 hx=1/M(p); 8 ht=1/K(p); 9 r=ht/hx^2; %网格比 10 x=0:hx:1; 11 t=0:ht:1; 12 numerical=zeros(M(p)+1,K(p)+1); 13 numerical(:,1)=exp(x); %初始值 14 numerical(1,:)=exp(t); %边值 15 numerical(M(p)+1,:)=exp(t+1); %边值 16 a=-r/2*ones(M(p)-2,1);b=(1+r)*ones(M(p)-1,1);c=-r/2*ones(M(p)-2,1); 17 fun1=inline('exp(x+t)','x','t'); 18 for i=1:length(x) 19 for j=1:length(t) 20 Accurate(i,j)=fun1(x(i),t(j)); 21 end 22 end 23 d=r/2*ones(M(p)-2,1);e=(1-r)*ones(M(p)-1,1);f=r/2*ones(M(p)-2,1); 24 B=diag(d,-1)+diag(e,0)+diag(f,1); 25 fun2=inline('0','x','t'); 26 for i=1:M(p)-1 27 for k=1:K(p) 28 f(i,k)=ht*fun2(x(i+1),t(k)+ht/2); 29 end 30 end 31 for k=1:K(p) 32 f(1,k)=r/2*(numerical(1,k+1)+numerical(1,k)); 33 f(M(p)-1,k)=r/2*(numerical(M(p)+1,k+1)+numerical(M(p)+1,k)); 34 end 35 for k=1:K(p) 36 right_vector=f(:,k)+B*numerical(2:M(p),k); 37 numerical(2:M(p),k+1)=chase(a,b,c,right_vector); 38 end 39 error=numerical(2:M(p),2:K(p))'-Accurate(2:M(p),2:K(p))'; 40 error_inf(p)=max(max(error)); 41 figure(p) 42 [X,Y]=meshgrid(x,t); 43 subplot(1,3,1) 44 mesh(X,Y,Accurate'); 45 xlabel('x'),ylabel('t');zlabel('Accurate'); 46 title('the image of Accurate result'); 47 grid on 48 subplot(1,3,2) 49 mesh(X,Y,numerical'); 50 xlabel('x'),ylabel('t');zlabel('numerical'); 51 title('the image of numerical result'); 52 grid on 53 subplot(1,3,3) 54 mesh(X,Y,numerical'-Accurate'); 55 xlabel('x'),ylabel('t');zlabel('error'); 56 title('the image of error result'); 57 grid on 58 end 59 for k=2:length(M) 60 H=error_inf(p-1)/error_inf(p); 61 E_inf(k-1)=log2(H); 62 end 63 figure(length(M)+1) 64 plot(1:length(M)-1,E_inf,'-r v'); 65 ylabel('误差阶数'); 66 title('Crank nicolson 误差阶数'); 67 grid on 68 toc;
对流扩散方程有限差分方法
对流扩散方程有限差分方法求解对流扩散方程的差分格式有很多种,在本节中将介绍以下3种有限差分格式:中心差分格式、Samarskii 格式、Crank-Nicolson 型隐式差分格式。
3.1 中心差分格式时间导数用向前差商、空间导数用中心差商来逼近,那么就得到了(1)式的中心差分格式]6[21111122h u u u vhu u au u nj n j n j nj n j n jn j -+-+++-=-+-τ(3)若令 haτλ=,2h vτμ=,则(3)式可改写为)2()(2111111nj n j n j n j n j n j n ju u u u u u u -+-+++-+--=μλ (4)从上式我们看到,在新的时间层1+n 上只包含了一个未知量1+n j u ,它可以由时间层n 上的值n j u 1-,n j u ,n j u 1+直接计算出来。
因此,中心差分格式是求解对流扩散方程的显示格式。
假定),(t x u 是定解问题的充分光滑的解,将1+n j u ,n j u 1+,n j u 1-分别在),(n j t x 处进行Taylor 展开:)(),(),(211ττO t u t x u t x u u njn j n j n j+⎥⎦⎤⎢⎣⎡∂∂+==++)(2),(),(322211h O x u h x u h t x u t x u u nj nj n j n j n j +⎥⎦⎤⎢⎣⎡∂∂+⎥⎦⎤⎢⎣⎡∂∂+==++)(2),(),(322211h O x u h x u h t x u t x u u njnj n j n j n j +⎥⎦⎤⎢⎣⎡∂∂+⎥⎦⎤⎢⎣⎡∂∂-==--代入(4)式,有 21111122),(hu u u vhu u au u t x T nj n j n j nj n j n jn j n j -+-+++---+-=τ)()()(2222h O v x u v h O a x u a O t u nj nj nj ⋅-⎥⎦⎤⎢⎣⎡∂∂-⋅+⎥⎦⎤⎢⎣⎡∂∂++⎥⎦⎤⎢⎣⎡∂∂=τ )()()(222h O v a O x u v x u a t u njnj nj ⋅-++⎥⎦⎤⎢⎣⎡∂∂-⎥⎦⎤⎢⎣⎡∂∂+⎥⎦⎤⎢⎣⎡∂∂=τ)(2h O +=τ显然,当0→τ,0→h 时,0),(→n j t x T ,即中心差分格式与定解问题是相容的。
crank-nicolsen格式
主题:Crane-Nicolson格式在数值计算中的应用一、介绍Crane-Nicolson格式是一种常见的数值计算方法,广泛应用于求解偏微分方程及其他数学问题。
本文将介绍Crane-Nicolson格式的原理和应用领域,以及该方法在实际工程中的应用情况。
二、Crane-Nicolson格式原理1. 定义:Crane-Nicolson格式是一种隐式数值方法,用于求解常微分方程或者偏微分方程的时间离散项。
2. 原理:其原理是将时间区间离散化,并采用隐式格式进行求解。
通过将当前时间步和下一时间步的数值进行平均,达到更高的数值精度和数值稳定性。
三、Crane-Nicolson格式的应用领域1. 偏微分方程求解:Crane-Nicolson格式广泛应用于求解热传导方程、扩散方程等偏微分方程,能够提供更为精确和稳定的数值解。
2. 数学物理问题:在数学物理问题中,Crane-Nicolson格式也被广泛应用,如求解波动方程、对流扩散方程等。
3. 工程领域:在工程领域,Crane-Nicolson格式常用于模拟材料热传导、流体扩散等问题,为工程设计和分析提供重要的数值计算支持。
四、Crane-Nicolson格式在实际工程中的应用情况1. 热传导模拟:在工程设计中,为了预测材料在不同温度下的性能表现,常常需要进行热传导模拟。
Crane-Nicolson格式能够提供更为精确和稳定的数值解,帮助工程师更好地理解材料的热传导特性。
2. 流体动力学模拟:在航空航天、汽车工程等领域,流体动力学模拟是非常重要的工程分析手段。
Crane-Nicolson格式在求解对流扩散方程时能够提供更为准确的数值解,有助于工程师优化流体动力学设计。
3. 地下水模拟:地下水模拟是环境工程和地质工程领域的重要任务。
Crane-Nicolson格式在求解地下水流动和溶质输运方程时,能够提供更为可靠的数值模拟结果,为地下水资源管理和环境保护提供支持。
crank nicolson差分格式
Crank-Nicolson差分格式1. 简介Crank-Nicolson差分格式是一种常用的数值方法,用于求解偏微分方程中的时间部分。
它是一个隐式格式,具有较好的稳定性和精度。
本文将详细介绍Crank-Nicolson差分格式的原理、应用和优缺点。
2. 原理Crank-Nicolson差分格式基于时间离散化,将时间域划分为多个小步长。
假设我们要求解一个二阶偏微分方程:∂u ∂t =D∂2u∂x2其中,u是待求解的函数,D是常数。
将时间离散化为n+1个点,即t0,t1,t2,...,t n,其中t0<t1<...<t n。
对于每个时间点t i,我们可以使用中心差分近似来表示导数:u i j+1−u i jΔt =Du i+1j+1−2u i j+1+u i−1j+1(Δx)2+Du i+1j−2u i j+u i−1j(Δx)2其中,u i j表示在空间点x i和时间点t j的解。
将上式进行整理,得到Crank-Nicolson离散格式:−DΔt2(Δx)2u i+1j+1+(1+DΔt(Δx)2)u i j+1−DΔt2(Δx)2u i−1j+1=DΔt2(Δx)2u i+1j+(1−DΔt(Δx)2)u i j+DΔt2(Δx)2u i−1j这是一个线性方程组,可以通过迭代求解得到解。
3. 应用Crank-Nicolson差分格式广泛应用于各种偏微分方程的数值求解中,特别是热传导方程和扩散方程。
它具有以下优点: - 稳定性好:Crank-Nicolson差分格式是一个隐式方法,对于稳定性要求较高的问题特别有效。
- 精度高:与显式方法相比,Crank-Nicolson差分格式具有二阶精度,可以获得更准确的数值解。
- 收敛速度快:由于其隐式特性,Crank-Nicolson差分格式的收敛速度通常比显式方法快。
4. 优缺点Crank-Nicolson差分格式有以下优点: - 稳定性好:由于是一个隐式方法,对于稳定性要求较高的问题特别有效。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
输运方程是数学物理方程中比较重要的方程之一,能够描述一些输运的物理过程,比如:制作半导体器件就常用到扩散法,把含有所需杂质的物质涂敷在硅片表面,把硅片放在扩散炉里,杂质就向硅片里面扩散,扩散运动的方向基本上是垂直于硅片表面而指向硅片深处[1],这种只沿某一方向进行的扩散就可以用一个一维的输运方程来描述这一物理过程.输运方程的解法很多,一般的输运方程是可以用解析的解法求解的,对于复杂的方程、边界条件及初始条件,解析解就变的比较困难了,于是需要寻求数值解法.对于偏微分方程,数值解法一般采用有限差分法,在此介绍一种基于Crank-Nicolson格式的差分方法的数值求解.
本文第一部分将对Crank-Nicolson格式做个简单的介绍,第二部分将给出数值结果,第三部分则是本文的结论.1
Crank-Nicolson 格式简介考虑如下的定解问题:
鄣u-鄣2u=0
0≤x≤5,t>0
u(x,0)=sinπx0≤x≤5,u(0,t)=u(5,t)=0
t≥0鄣
鄣鄣鄣鄣鄣鄣鄣鄣鄣鄣鄣鄣
.
(1)
上述方程是一个输运方程,该方程的最基本差分格式为向前差分和向后差分格式,向前差分格式可以写为[2]:
ujn+1
-uj
n
τ-auj+1n
-2ujn
-uj-1n
h2=0(2)
可以将这个差分格式改写为:ujn
-un-1jn-auj+1n-1-2ujn-1-uj-1
n-1
=0
(3)
向后差分的的格式可以写为[3]:ujn
-un-1j
n
τ-auj+1n-2ujn-u
j-1n
h
2=0
(4)
在(4)式的等式左右两边同乘θ,在(3)式的两边同乘(1-θ),并将两式相加得到[4]:ujn
-un-1j
n
τ
-aθuj+1n-2ujn+uj-1nh2+(1-θ)uj+1
n-1-2ujn-1+uj-1n-1
h2
鄣
鄣
=0(5)上式为加权隐格式的差分格式,在上面的式子中,λ表示时间步长,h表示空间步长,θ是一个大于0小于1的数,当θ=0时上式成为向前差分格式,当θ=1时上式变成向后差分格式.
有一种特殊情况是当θ=12
时,等式(5)变为:
(ujn+1-ujn)-aτ2h
2[(uj+1n+1-2ujn+1+uj-1n+1)+(uj+1n-2ujn+uj-1n
)]=0(6)
这个格式一般称作Crank-Nicolson格式,这个差分格式是无条件稳定的,这会给数值解法带来很多方便.2
数值结果
定解问题(1)能够给出解析解,在此取a=1,其解析解为:
u(x,t)=e
-π2
t
sinπx(7
)
图1t=0.5时Crank-Nicolson格式下的数值解
Vol.29No.2
Feb.2013
赤峰学院学报(自然科学版)JournalofChifengUniversity(NaturalScienceEdition)第29卷第2期(上)
2013年2月基于Crank-Nicolson格式的输运方程的数值求解方法
魏丙涛
(文山学院
数理系,云南文山
663000)
摘要:本文将介绍一种求解输运方程的数值方法Crank-Nicolson格式,通过数值求解的方法得到方程的数值解并与该方程的解析解对比,给出数值解法的稳定性以及数值方法精度.
关键词:加权隐格式;输运方程;数值方法中图分类号:0175.2
文献标识码:A
文章编号:1673-260X(2013)02-0012-02
12--
图2t=0.5
时定解问题的解析解的函数图像
图3t=0.5时Crank-Nicolson格式的数值解与解析解之间的差别,虚线是解析解的函数图像,实线为Crank-Nicolson
格式下的数值解
图4
函数值u随时间t及坐标x变化的函数关系图
图1给出了t=0.5定解问题的数值解,图2给出了t=0.5时的解析解的函数图像,图3给出了t=0.5两种解法之间的比较,图4给出了函数值u随时间t及坐标x变化的函数关系图.从图中可以出,数值解与解析解之间的误差很小,数值解也是稳定的,并且Crank-Nicolson格式是绝对稳定的,这
对于数值解是很有用的.3
结论与讨论
通过上面的计算可知,Crank-Nicolson格式是一个觉得稳定的格式,并且这种算法的精度比较高,在实际的数值求解过程中非常有用.这个差分格式适用于输运方程的数值求解中,虽然有很多输运方程很容易得到解析解,但数值解法在很多时候很多方面是具有优越性和适用价值的.——————————————————
—参考文献:
〔1〕梁昆淼.数学物理方法[M].北京:高等教育出版社,1998.〔2〕Ames W F.Numerical Metheds for Partial Differential
Equations.2nd ed.New York:Academic Press,1977.
〔3〕徐长发,李红.偏微分方程数值解法[M].武汉:华中科技大
学出版社,2000.
〔4〕陆金甫,关治.偏微分方程数值解法[M].北京:清华大学出
版社,2004.
13--。