双曲方程基于matlab的数值解法

合集下载

基于MATLAB的数值分析2PPT课件

基于MATLAB的数值分析2PPT课件
2021/3/9
【例】 clf;t=0.1:.1:3; y=exp(t.*t); semilogy(t,y) grid xlabel('t'); ylabel('exp(t.*t) ');
24
若干特殊图形
x=[1:10]; y=[5 6 3 4 8 1 10 3 5 6]; subplot(2,3,1),bar(x,y),axis([1 10 1 11]) subplot(2,3,2),hist(y,x),axis([1 10 1 4]) subplot(2,3,3),stem(x,y,'k'),axis([1 10 1 11]) subplot(2,3,4),stairs(x,y,'k'), axis([1 10 1 11]) subplot(2,3,5), x = [1 3 0.5 5];explode = [0 0 0
【例】用图形表示离散函数 y(n6)1 。
n=(0:12)'; y=1./abs(n-6); plot(n,y,'r*',…
'MarkerSize',20) grid on
2021/3/9
1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
2
4
6
8
10
12
9
坐标轴的控制
axis指令
axis([xmin xmax ymin ymax]): 设定二维图形的x和y坐标的范围;
t=(0:pi/50:2*pi)';
k=0.4:0.1:1;
Y=cos(t)*k;

matlab 双曲线型偏微分方程

matlab 双曲线型偏微分方程

matlab 双曲线型偏微分方程引言概述:双曲线型偏微分方程是数学中的重要分支之一,它在物理、工程和自然科学等领域中具有广泛的应用。

Matlab作为一种强大的数值计算工具,可以用于求解双曲线型偏微分方程。

本文将介绍Matlab在求解双曲线型偏微分方程方面的应用。

正文内容:1. 理解双曲线型偏微分方程1.1 双曲线型偏微分方程的定义1.2 双曲线型偏微分方程的特点1.3 双曲线型偏微分方程的分类2. Matlab在求解双曲线型偏微分方程中的应用2.1 利用有限差分法求解双曲线型偏微分方程2.2 利用有限元法求解双曲线型偏微分方程2.3 利用特征线法求解双曲线型偏微分方程3. Matlab的双曲线型偏微分方程求解工具箱3.1 PDE Toolbox3.2 Hyperbolic PDE Toolbox3.3 Wavelet Toolbox4. 实例分析:声波传播方程的求解4.1 声波传播方程的建立4.2 Matlab代码实现4.3 数值结果的分析和讨论5. 应用案例:电磁波传播问题的求解5.1 电磁波传播方程的建立5.2 Matlab代码实现5.3 数值结果的分析和讨论6. Matlab在双曲线型偏微分方程求解中的优势和不足6.1 优势:高效、灵活的数值计算能力6.2 不足:对于复杂问题的求解可能存在困难总结:本文介绍了Matlab在双曲线型偏微分方程求解中的应用。

通过对双曲线型偏微分方程的理解和分类,以及Matlab的求解方法和工具箱的介绍,我们可以看到Matlab在双曲线型偏微分方程求解中的重要作用。

通过实例分析和应用案例的讨论,我们可以看到Matlab在求解双曲线型偏微分方程方面的优势和不足。

在实际应用中,我们应根据具体问题选择合适的求解方法和工具,以获得准确、高效的数值计算结果。

单叶双曲面和双叶双曲面d

单叶双曲面和双叶双曲面d

求单叶双曲面和双叶双曲面、椭圆抛物面、双曲抛物面用matlab怎么画或其参数方程?2009-12-07 15:46tianzan2006|分类:数学|浏览4969次有个例子就成,选修可的实验报告。

大一高数学的不太好,现在乘机补课。

向左转|向右转方式二:短信免费下载下载链接将通过短信免费下发到您的手机发送短信分享到:2009-12-07 19:43提问者采纳花画圆的程序:for i=-3:0.001:3y=-sqrt(9-i^2);plot(i,y);hold onendhold onfor i=-3:0.001:3y=sqrt(9-i^2);plot(i,y);hold onend%椭圆for i=-6:0.01:6y=-sqrt(36-i^2)/2;plot(y,i);hold onend%双曲线for i=-6:0.01:6y=-sqrt(36+i^2)/2;plot(y,i);hold onendhold onfor i=-6:0.01:6y=sqrt(36+i^2)/2;plot(y,i);hold onendhold onfor i=-6:0.01:6y=sqrt(36-i^2)/2;plot(y,i);hold onend%抛物线for i=0:0.01:6y=-sqrt(2*6*i);plot(y,i);hold onendhold onfor i=0:0.01:6y=sqrt(2*6*i);plot(y,i);hold onend其他2条回答2009-12-07 20:08hyyly520|十一级%%%%%%%%%圆%%%%%%%%%%%%%%x=-1:0.00001:1;r=1;%半径r=1y1=sqrt(r-x.^2);y2=-sqrt(r-x.^2);plot(x,y1,x,y2)%%%%%%%%%椭圆%%%%%%%%%%%%%%x=-1:0.00001:1;a=1;b=1;%椭圆半径a=1;b=1y1=sqrt(b.^2*(1-x.^2/(a.^2)));y2=-sqrt(b.^2*(1-x.^2/(a.^2)));plot(x,y1,x,y2)%%%%%%%%%抛物线%%%%%%%%%%%%%%x=1:0.00001:5;a=1;b=1;%抛物半径a=1;b=1y1=sqrt(b.^2*(x.^2/(a.^2)-1));y2=-sqrt(b.^2*(x.^2/(a.^2)-1));plot(x,y1,x,y2)%%%%%%%%%椭球面%%%%%%%%%%%%%% xa=-2:0.2:2;ya=xa;[x,y]=meshgrid(xa,ya);a=1;b=1;c=1;% 假设a=1;b=1;c=1z1=sqrt(c.^2*(1-x.^2/(a.^2)+y.^2/(b.^2)));z2=-sqrt(c.^2*(1-x.^2/(a.^2)+y.^2/(b.^2)));mesh(x,y,z1)hold on;mesh(x,y,z2)%%%%%%%%%%%单叶双曲面%%%%%%%%%%% xa=-2:0.2:2;ya=xa;[x,y]=meshgrid(xa,ya);a=1;b=1;c=1;% 假设a=1;b=1;c=1z1=sqrt(c.^2*(x.^2/(a.^2)+y.^2/(b.^2)-1));z2=-sqrt(c.^2*(x.^2/(a.^2)+y.^2/(b.^2)-1));mesh(x,y,z1)hold on;mesh(x,y,z2)%%%%%%%%%%双叶双曲面%%%%%%%%%%%%%% xa=-2:0.2:2;ya=xa;[x,y]=meshgrid(xa,ya);a=1;b=1;c=1;% 假设a=1;b=1;c=1z1=sqrt(c.^2*(x.^2/(a.^2)+y.^2/(b.^2)+1));z2=-sqrt(c.^2*(x.^2/(a.^2)+y.^2/(b.^2)+1));mesh(x,y,z1)hold on;mesh(x,y,z2)%%%%%%%%%%椭圆抛物面%%%%%%%%%%%%%% xa=-2:0.2:2;ya=xa;[x,y]=meshgrid(xa,ya);p=1;q=1;% 假设p=1;q=1z=0.5*(x.^2/p+y.^2/q);mesh(x,y,z)%%%%%%%%%%双曲抛物面%%%%%%%%%%%%% xa=-2:0.2:2;ya=xa;[x,y]=meshgrid(xa,ya);p=1;q=1;% 假设p=1;q=1z=0.5*(x.^2/p-y.^2/q);mesh(x,y,z)。

基于MATLAB对一维奇异摄动方程高精度格式的研究

基于MATLAB对一维奇异摄动方程高精度格式的研究

基于MATLAB对一维奇异摄动方程高精度格式的研究
潘轶航
【期刊名称】《现代信息科技》
【年(卷),期】2024(8)2
【摘要】为研究更加精确的求解奇异摄动方程数值解的解法,文章研究传统中心差分格式,迎风格式以及高阶精度格式这三种数值求解格式,使用MATLAB软件进行求解一维奇异摄动对流扩散方程的算例并可视化,对不同方法下求解方程的结果进行了对比和研究,通过对数值算例求解结果的分析,发现在任意网格下,当摄动参数趋于0时,高阶精度格式下解的精度和稳定性较传统的求解格式有显著提升,使在求解奇异摄动方程的方法选择上更具有针对性。

【总页数】7页(P102-107)
【作者】潘轶航
【作者单位】北方民族大学数学与信息科学学院
【正文语种】中文
【中图分类】TP391;O241.82
【相关文献】
1.对流扩散方程QUICK格式的数值摄动高精度重构格式
2.自适应迎风格式求解奇异摄动两点边值问题的高精度算法(一)
3.自适应迎风格式求解奇异摄动两点边值问题的高精度算法(二)
4.具有零阶退化方程的二阶双曲型方程奇异摄动问题的一致差分格式
5.二阶线性守恒型常微分方程奇异摄动问题的高精度差分格式
因版权原因,仅展示原文概要,查看原文内容请购买。

实验二_基于Matlab的微分方程数值解法

实验二_基于Matlab的微分方程数值解法

实验二微分方程数值解法一.实验原理及实验内容:对微分方程描述的控制系统,利用欧拉法、二阶龙格-库塔法、四阶龙格-库塔法分别编写M文件,进行数值计算和作图。

1.分别用欧拉法、二阶龙格-库塔法、四阶龙格-库塔法求下面系统的输出响应y(t)在0≤t≤1上,h=0.1时的数值解。

'2,(0)1=-=y y y要求保留4位小数,并将三种方法的结果与真解2=进行比较。

()ty t e-2.若为如2y y y==何编程计算?',(0)1二.实验仪器:计算机Matlab软件三.实验数据记录:程序一:disp('欧拉算法');y=1;h=0.1;for i=0:0.1:1disp(y);y=y+h*(-2*y);enddisp('欧拉算法');ydisp('精确解');yy=exp(-2*t)h=0.1;disp('函数的2阶数值解为');disp('y=');y=1;for t=0:h:1;disp(y);k1=-2*y;k2=-2*(y+k1*h);y(i+1)=y(i)+(k1+k2)*h*1/2;endh=0.1;disp('函数的4阶数值解为');disp('y=');y=1;for t=0:h:1;disp(y);k1=-2*y;k2=-2*(y+k1*h*1/2);k3=-2*(y+k2*h*1/2);k4=-2*(y+k3*h);y=y+h*1/6*(k1+2*k2+2*k3+k4); end>>程序2:t=0:0.1:1;n=length(t);y(1)=1;h=0.1;for i=1:n-1y(i+1)=y(i)+h*(y(i)*y(i)); enddisp('欧拉算法');ydisp('精确解');yy=exp(-2*t)h=0.1;disp('函数的2阶数值解为');disp('y=');y=1;for t=0:h:1;disp(y);k1=y*y;k2=(y+k1*h)^2;y=y+(k1+k2)*h*1/2;endh=0.1;disp('函数的4阶数值解为');disp('y=');y=1;disp(y);k1=y*y;k2=(y+k1*h*1/2)^2;k3=(y+k2*h*1/2)^2;k4=(y+k3*h)^2;y=y+h*1/6*(k1+2*k2+2*k3+k4); end。

基于MATLAB语言的非线性系统相空间分析

基于MATLAB语言的非线性系统相空间分析

基于MATLAB语言的非线性系统相空间分析一、简述非线性系统相空间分析是研究非线性系统的动力学行为和稳定性的一种方法。

在MATLAB语言中,我们可以通过构建合适的数学模型来描述非线性系统,并利用其强大的数值计算和绘图功能进行相空间分析。

本文将介绍如何使用MATLAB语言对非线性系统进行相空间分析的基本步骤和技巧,包括:建立非线性系统方程、求解方程组、绘制相空间轨迹图等。

通过这些内容的学习,读者可以掌握MATLAB 在非线性系统相空间分析中的应用方法,为进一步深入研究非线性系统提供基础支持。

1. 非线性系统的概念和特点非线性系统是指其行为不能通过线性组合得到的系统,在自然科学、工程技术和社会科学等领域中,非线性系统无处不在,例如:自然生态系统、经济市场、生物医学过程等。

非线性系统的特点是它的输出不仅仅取决于输入,还受到内部状态的影响,这种影响通常是复杂的、难以预测的。

非线性系统的相空间分析是一种处理非线性系统的方法,在MATLAB语言中,我们可以通过使用各种工具箱进行相空间分析,包括解常微分方程(ODE)、解偏微分方程(PDE)以及求解复杂动力学系统等。

首先我们需要理解非线性系统的数学模型,这通常通过将系统的动态方程表示为微分方程来完成。

然后我们可以使用MATLAB的ODE 求解器来求解这些方程,得到系统的相空间轨迹。

此外我们还可以使用MATLAB的PDE工具箱来求解偏微分方程,得到系统的相空间曲面。

除了基本的数值方法外,MATLAB还提供了多种高级功能,如优化工具箱、控制工具箱等,这些都可以用于非线性系统的分析和设计。

例如我们可以使用优化工具箱来寻找最优的控制策略,或者使用控制工具箱来设计自适应控制器。

MATLAB为非线性系统的相空间分析提供了强大的支持,无论是对于理论研究还是实际应用都具有很高的价值。

2. 相空间分析的基本概念和方法相空间分析是一种研究非线性系统动态行为的方法,它通过将系统的微分方程组表示为相空间中的轨迹方程来描述系统的演化过程。

双曲方程基于matlab的数值解法

双曲方程基于matlab的数值解法

双曲型方程基于MATLAB 的数值解法(数学1201,陈晓云,41262022)一:一阶双曲型微分方程的初边值问题0,01,0 1.(,0)cos(),0 1.(0,)(1,)cos(),0 1.u u x t t xu x x x u t u t t t ππ∂∂-=≤≤≤≤∂∂=≤≤=-=≤≤ 精确解为 ()t x cos +π二:数值解法思想和步骤 2.1:网格剖分为了用差分方法求解上述问题,将求解区域{}(,)|01,01x t x t Ω=≤≤≤≤作剖分。

将空间区间[0,1]作m 等分,将时间[0,1]区间作n 等分,并记1/,1/,,0,,0j k h m n x jh j m t k k n ττ===≤≤=≤≤。

分别称h 和τ为空间和时间步长。

用两簇平行直线,0,,0j k x x j m t t k n =≤≤=≤≤将Ω分割成矩形网格。

2.2:差分格式的建立0u ut x∂∂-=∂∂ 2.2.1:Lax-Friedrichs 方法对时间、空间采用中心差分使得2h11111)(21u u xu u u u u tukj kj kj k j kjk j-+-++-=+=-=∂∂∂∂ττ则由上式得到Lax-Friedrichs 格式111111()202k k k k k j j j j j u u u u u hτ+-+-+-+-+=截断误差为()[]k k kj h j j R u L u Lu =-111111()22k k k k k k k j j j j j j ju u u u u u u h t xτ+-+-+-+-∂∂=+-+∂∂232223(),(0,0)26kkjj u u h O h j m k n t xττ∂∂=-=+≤≤≤≤∂∂ 所以Lax-Friedrichs 格式的截断误差的阶式2()O h τ+ 令/s h τ=:则可得差分格式为111111(),(0,0)222k k k kk j j j j j s s u u u u u j m k n +--++=-+++≤≤≤≤ 0cos()(0)j j u x j m π=≤≤0cos(),cos(),(0)k kk m k u t u t k n ππ==-≤≤其传播因子为: ()()()e e Gh i h i s h i h i σσσστσ---=-+e e 221, 化简可得:()()()()()hs G h is h G στσσστσsin 11,sin cos ,222--=-= 所以当1s ≤时,()1,≤τσG ,格式稳定。

双曲型偏微分方程数值求解方法研究

双曲型偏微分方程数值求解方法研究

双曲型偏微分方程数值求解方法研究双曲型偏微分方程在物理学、工程学、数学等领域都有广泛应用,其数值求解方法的研究一直是人们关注的热点之一。

本文将从数学基础、数值求解方法等多个方面进行探究。

一、数学基础双曲型偏微分方程最基本的形式为:$$\frac{\partial^2u}{\partial t^2}-\frac{\partial^2u}{\partialx^2}=0\tag{1}$$其中,$u(x,t)$为未知函数,$t>0$为时间,$x$为空间坐标。

该方程描述了波动、电磁场传播等现象。

对于双曲型偏微分方程,其初值问题的形式为:$$u(x,0)=f(x),\ \frac{\partial u}{\partial t}(x,0)=g(x)\tag{2}$$初值问题的解存在唯一性,同时还有能量守恒等性质。

二、数值求解方法双曲型偏微分方程的数值求解方法包括有限差分法、有限元法、谱方法等。

1. 有限差分法有限差分法是一种被广泛采用的数值求解方法,其原理是将连续的求解区域离散化成有限个点,之后通过有限差分公式求出该点的近似解。

对于双曲型偏微分方程,可以使用中心差分公式进行离散化,即$$\frac{u_{i,j+1}-2u_{i,j}+u_{i,j-1}}{\Delta t^2}-\frac{u_{i+1,j}-2u_{i,j}+u_{i-1,j}}{\Delta x^2}=0\tag{3}$$其中,$u_{i,j}$表示在坐标$(i,j)$处的近似解。

2. 有限元法有限元法是一种更加广泛的数值求解方法,其原理是将求解区域划分为一系列小块,通过对每个小块内的方程进行求解,得到整个求解区域的近似解。

对于双曲型偏微分方程,可以采用时间-空间分离技术,先将时间离散化后,再对空间进行离散化,通过有限元法求解离散化后的方程。

3. 谱方法谱方法是一种基于函数逼近的数值求解方法,其原理是通过一组基函数对未知函数进行逼近,然后通过数值解法求解得到基函数系数,从而得到函数的近似解。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

双曲型方程基于MATLAB 的数值解法(数学1201,陈晓云,41262022)一:一阶双曲型微分方程的初边值问题0,01,0 1.(,0)cos(),0 1.(0,)(1,)cos(),0 1.u u x t t xu x x x u t u t t t ππ∂∂-=≤≤≤≤∂∂=≤≤=-=≤≤ 精确解为 ()t x cos +π二:数值解法思想和步骤 2.1:网格剖分为了用差分方法求解上述问题,将求解区域{}(,)|01,01x t x t Ω=≤≤≤≤作剖分。

将空间区间[0,1]作m 等分,将时间[0,1]区间作n 等分,并记1/,1/,,0,,0j k h m n x jh j m t k k n ττ===≤≤=≤≤。

分别称h 和τ为空间和时间步长。

用两簇平行直线,0,,0j k x x j m t t k n =≤≤=≤≤将Ω分割成矩形网格。

2.2:差分格式的建立0u ut x∂∂-=∂∂ 2.2.1:Lax-Friedrichs 方法对时间、空间采用中心差分使得2h11111)(21u u xu u u u u tukj kj kj k j kjk j-+-++-=+=-=∂∂∂∂ττ则由上式得到Lax-Friedrichs 格式111111()202k k k k k j j j j j u u u u u hτ+-+-+-+-+=截断误差为()[]k k kj h j j R u L u Lu =-111111()22k k k k k k k j j j j j j ju u u u u u u h t xτ+-+-+-+-∂∂=+-+∂∂232223(),(0,0)26kkjj u u h O h j m k n t xττ∂∂=-=+≤≤≤≤∂∂ 所以Lax-Friedrichs 格式的截断误差的阶式2()O h τ+ 令/s h τ=:则可得差分格式为111111(),(0,0)222k k k kk j j j j j s s u u u u u j m k n +--++=-+++≤≤≤≤ 0cos()(0)j j u x j m π=≤≤0cos(),cos(),(0)k kk m k u t u t k n ππ==-≤≤其传播因子为: ()()()e e Gh i h i s h i h i σσσστσ---=-+e e 221, 化简可得:()()()()()hs G h is h G στσσστσsin 11,sin cos ,222--=-= 所以当1s ≤时,()1,≤τσG ,格式稳定。

* 2.2.2:LaxWendroff 方法用牛顿二次插值公式可以得到LaxWendroff 的差分格式,在此不详细分析,它的截断误差为()h 22+Oτ,是二阶精度;当2s ≤时,()1,≤τσG ,格式稳定。

在这里主要用它与上面一阶精度的Lax-Friedrichs 方法进行简单对比。

2.3差分格式的求解因为1s ≤时格式稳定,不妨取1/90h 1/100==τ ,则s=0.9差分格式111111(),(0,0)222k k k k k j j j j j s s u u u u u j m k n +--++=-+++≤≤≤≤ 写成如下矩阵形式:1011121211110000022221100022221100000022220000000000000k k k k k k m m k m k m s s u u s s u u u us s u u +++---⎛⎫-+ ⎪⎛⎫⎛⎫ ⎪ ⎪ ⎪ ⎪-+ ⎪ ⎪ ⎪⎪ ⎪ ⎪= ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪-+ ⎪ ⎪ ⎪ ⎪⎪ ⎪ ⎪⎝⎭⎝⎭ ⎪ ⎪⎝⎭则需要通过对k 时间层进行矩阵作用求出k+1时间层。

对上面的矩阵形式通过matlab 编出如附录的程序求出数值解、真实解和误差。

2.5 算法以及结果function [P U E x t]=PDEHyperbolic(uX,uT,M,N,C,type)format long%一阶双曲型方程的差分格式%[P U E x t]=PDEHyperbolic(uX,uT,M,N,C,phi,psi1,psi2,type) %方程:u_t+C*u_x=0 0 <= t <= uT, 0 <= x <= uX %初值条件:u(x,0)=phi(x) %输出参数:U -解矩阵 % x -横坐标 % t -纵坐标,时间% 输入参数:uX -变量x 的上界 % uT -变量t 的上界 % M -变量x 的等分区间数 % N -变量t 的等分区间数 % C -系数% phi -初值条件函数,定义为内联函数 % psi1,psi2 -边值条件函数,定义为内联函数 % type -差分格式,从下列值中选取% -type='LaxFriedrichs',采用Lax-Friedrichs 差分格式求解 % -type='LaxWendroff',采用Lax-Wendroff 差分格式求解h=uX/M;%变量x的步长k=uT/N;%变量t的步长r=k/h;%步长比x=(0:M)*h; t=(0:N)*k;U=zeros(M+1,N+1);%初值条件for i=1:M+1U(i,1)=cos(pi*x(i));P(i,1)=cos(pi*x(i));E(i,1)=0;end%边值条件for j=1:N+1U(1,j)=cos(pi*t(j));E(1,j)=0;P(1,j)=cos(pi*t(j));U(M+1,j)=-cos(pi*t(j));P(M+1,j)=-cos(pi*t(j));E(M+1,j)=0;endswitch typecase'LaxFriedrichs'if abs(C*r)>1disp('|C*r|>1,Lax-Friedrichs差分格式不稳定!')end%逐层求解for j=1:Nfor i=2:MU(i,j+1)=(U(i+1,j)+U(i-1,j))/2-C*r*(U(i+1,j)-U(i-1,j))/2;P(i,j+1)=cos(pi*(x(i)+t(j+1)));E(i,j+1)=abs(U(i,j+1)-cos(pi*(x(i)+t(j+1))));endend%Lax-Wendroff差分格式case'LaxWendroff'if abs(C*r)>1disp('|C*r|>1,Lax-Wendroff差分格式不稳定!')end%逐层求解for j=1:Nfor i=2:MU(i,j+1)=U(i,j)-C*r*(U(i+1,j)-U(i-1,j))/2+C^2*r^2*(U(i+1,j)-2*U(i,j)+U(i-1,j))/2;P(i,j+1)=cos(pi*(x(i)+t(j+1)));E(i,j+1)=abs(U(i,j+1)-cos(pi*(x(i)+t(j+1))));endendotherwisedisp('差分格式类型输入有误!')return;endU=U';P=P';E=E';%作出图形精确解mesh(x,t,P);title('一阶双曲型方程的精确解图像');xlabel('空间变量x'); ylabel('时间变量t'); zlabel('一阶双曲型方程的解P')%作出图形数值解mesh(x,t,U);title([type '格式求解一阶双曲型方程的解的图像']);xlabel('空间变量 x'); ylabel('时间变量 t'); zlabel('一阶双曲型方程的解 U')return;命令窗口输入:>>uX=1;uT=1;M=90;N=100;C=-1;phi=inline('cos(pi*x)');psi1=inline('cos(pi*t)');psi2=inline('-c os(pi*t)');type='LaxFriedrichs'或type='LaxWendroff';>>[P U E x t]=PDEHyperbolic(uX,uT,M,N,C,type)从matlab的数值解法结果中抽出一部分数据进行比较表1LaxFriedrichs表2LaxWendroff格式备注:本来100≤≤0≤≤,,但是由于matlab中下标必须从大于0开始,j90k所以在程序中101≤≤≤,91k1≤1j图像分析:结果分析:从表1和表2可以看出LaxFriedrichs格式和LaxWendroff格式的真值得误差都比较小,而LaxWendroff格式虽然精度比LaxFriedrichs的精度高,但是在网格点划分比较细的情况下,二者的差别不大。

从三个图像的结果看出,二者都拟合的相当好,并且结果都稳定。

相关文档
最新文档