非线性方程组计算

非线性方程组计算
非线性方程组计算

在科学与工程计算中,经常遇到求解非线性方程组的问题;非线性方程组在收敛速度及收敛性比线性方程组要差,特别对于非凸的非线性方程组,其求解更是困难。下面简要介绍非线性方程组的三种解法——牛顿法、拟牛顿法、同伦算法,分析三种解法的适用性,并附Matlab 原程序。

(一)、牛顿迭代法

迭代公式为:x k+1=x k-f(x k)/f'(x k);牛顿迭代法是解非线性方程组比较经典的方法,在局部收敛点附近是平方收敛的;但其解依赖于初始解,且迭代每一步都要计算f'(x k),不仅计算量大而且有时会发生计算困难。

(二)、拟牛顿迭代法

拟牛顿法是为了解决求Jacobi矩阵时带来的困难,现已成为解决非线性方程组和最优化问题的最有效方法之一。其迭代格式为:

x(k+1)=x(k)-A k-1F(x(k))

A k+1=A k+[(y k-A k s k)(y k-A k s k)T]/[(y k-A k s k)T s k]

在一定条件下,计算H的序列是超收敛的,但稳定性较差,有时迭代效果不理想。

(三)、同伦算法

同伦算法基本思想是从容易求解的方程组开始,逐步过渡到原方程组的求解,从而得到问题的解。非线性方程组为:F(x)=0,其解为X*。

构造泛函 G:[0,1]XR n->R n

G定义为:G(λ,x)=λ F(x)+(1-λ)[F(x)-F(x(0))]=F(x)+(λ-1)F(x(0))

(其中:x(0)为任意给的初值,假定为λ函数(λ=0))

对于λ的方程G(λ,x)=0,

当λ=0时,0=G(0,x)=F(x)-F(x(0));x(0)是方程的解;

当λ=1时,0=G(1,x)=F(x);x*是方程的解,即x(1)=x*

基于这个思想我们最后可以得到如下关系式:

x'(λ)=-[J(x(λ))]-1F(x(0)) ( 0<=λ<=1,对初始值x(0) )

J为雅可比矩阵,由上面的式子,对λ在[0,1]上积分,就可得到x*=x(1)

上面的非线性方程组问题就转化为数值积分问题。

附:同伦算法的Matlab程序

%% N 为积分部数,h 为积分步长,其值视计算精度而定%% x0 为初始值,可任意给定

%% Equfun(x)为非线性方程组表达式(列向量),

%% Jacobfun(x)为雅可比矩阵

N=100;

h=1/N;

x0=[0 0 0]';

x=x0;

%format long

f=Equfun(x);

b=-h*f;

for i=1:N

A=Jacobfun(x);

k1=inv(A)*b;

A=Jacobfun(x+0.5*k1);

k2=inv(A)*b;

A=Jacobfun(x+0.5*k2);

k3=inv(A)*b;

A=Jacobfun(x+0.5*k3);

k4=inv(A)*b;

x=x+(k1+2*k2+2*k3+k4)/6;

end

disp('The Solution is:')

disp('x=');disp(x);

%%%%%%%%%%%%%%%%%%%%%%%%%

%%%下面是非线性方程组及其雅可比行列式%%%%%%%%%%%%%%%%%%%%%%%%%

function y=Equfun(x)

%nonliner functions

y=[3*x(1)-cos(x(2)*x(3))-1/2;

x(1)^2-81*(x(2)+0.1)^2+sin(x(3))+1.06;

exp(-x(1)*x(2))+20*x(3)+(10*pi-3)/3]; %%%%%%%%%%%%%%%%%%%%%%%%%

function y=Jacobfun(x)

%Jacobi function

%J=zeros(length(x));

y(1,1)=3;

y(1,2)=x(3)*sin(x(2)*x(3));

y(1,3)=x(2)*sin(x(2)*x(3));

y(2,1)=2*x(1);

y(2,2)=-162*(x(2)+0.1);

y(2,3)=cos(x(3));

y(3,1)=-x(2)*exp(-x(1)*x(2));

y(3,2)=-x(1)*exp(-x(1)*x(2));

y(3,3)=20;

第十章-偏微分方程数值解法

第十章 偏微分方程数值解法 偏微分方程问题,其求解十分困难。除少数特殊情况外,绝 大多数情况均难以求出精确解。因此,近似解法就显得更为重要。本章仅介绍求解各类典型偏微分方程定解问题的差分方法。 §1 差分方法的基本概念 1.1 几类偏微分方程的定解问题 椭圆型方程:其最典型、最简单的形式是泊松(Poisson )方程 ),(22 2 2y x f y u x u u =??+??=? 特别地,当0),(≡y x f 时,即为拉普拉斯(Laplace )方程,又 称 为调和方程 22 22=??+??=?y u x u u Poisson 方程的第一边值问题为 ?? ???Ω ?=Γ=Ω∈=??+??Γ∈),(),(),() ,(),(22 22y x y x u y x y x f y u x u y x ?

其中 Ω为以Γ为边界的有界区域,Γ为分段光滑曲线,ΓΩY 称为定解区域,),(y x f ,),(y x ?分别为Ω,Γ上的已知连 续函数。 第二类和第三类边界条件可统一表示为 ),(),(y x u u y x ?α=??? ? ??+??Γ∈n 其中n 为边界Γ的外法线方向。当0=α时为第二类边界条件, 0≠α时为第三类边界条件。 抛物型方程:其最简单的形式为一维热传导方程 2 20(0)u u a a t x ??-=>?? 方程可以有两种不同类型的定解问题: 初值问题 ?? ???+∞ <<∞-=+∞<<-∞>=??-??x x x u x t x u a t u )()0,(,00 22? 初边值问题

2 212 00,0(,0)()0(0,)(),(,)()0u u a t T x l t x u x x x l u t g t u l t g t t T ????-=<<<

c 解线性方程组的几种方法

//解线性方程组 #include #include #include //----------------------------------------------全局变量定义区 const int Number=15; //方程最大个数 double a[Number][Number],b[Number],copy_a[Number][Number],copy_b[Number]; //系数行列式 int A_y[Number]; //a[][]中随着横坐标增加列坐标的排列顺序,如a[0][0],a[1][2],a[2][1]...则A_y[]={0,2,1...}; int lenth,copy_lenth; //方程的个数 double a_sum; //计算行列式的值 char * x; //未知量a,b,c的载体 //----------------------------------------------函数声明区 void input(); //输入方程组 void print_menu(); //打印主菜单 int choose (); //输入选择 void cramer(); //Cramer算法解方程组 void gauss_row(); //Gauss列主元解方程组 void guass_all(); //Gauss全主元解方程组 void Doolittle(); //用Doolittle算法解方程组 int Doolittle_check(double a[][Number],double b[Number]); //判断是否行列式>0,若是,调整为顺序主子式全>0 void xiaoqu_u_l(); //将行列式Doolittle分解 void calculate_u_l(); //计算Doolittle结果 double & calculate_A(int n,int m); //计算行列式 double quanpailie_A(); //根据列坐标的排列计算的值,如A_y[]={0,2,1},得sum=a[0][ A_y[0] ] * a[1][ A_y[1] ] * a[2][ A_y[2] ]=a[0][0]*a[1][2]*a[2][1]; void exchange(int m,int i); //交换A_y[m],A_y[i] void exchange_lie(int j); //交换a[][j]和b[]; void exchange_hang(int m,int n); //分别交换a[][]和b[]中的m和n 两行 void gauss_row_xiaoqu(); //Gauss列主元消去法 void gauss_all_xiaoqu(); //Gauss全主元消去法 void gauss_calculate(); //根据Gauss消去法结果计算未知量的值 void exchange_a_lie(int m,int n); //交换a[][]中的m和n列 void exchange_x(int m,int n); //交换x[]中的x[m]和x[n] void recovery(); //恢复数据 //主函数 void main() { int flag=1;

(完整版)偏微分方程的MATLAB解法

引言 偏微分方程定解问题有着广泛的应用背景。人们用偏微分方程来描述、解释或者预见各种自然现象,并用于科学和工程技术的各个领域fll。然而,对于广大应用工作者来说,从偏微分方程模型出发,使用有限元法或有限差分法求解都要耗费很大的工作量,才能得到数值解。现在,MATLAB PDEToolbox已实现对于空间二维问题高速、准确的求解过程。 偏微分方程 如果一个微分方程中出现的未知函数只含一个自变量,这个方程叫做常微分方程,也简称微分方程;如果一个微分方程中出现多元函数的偏导数,或者说如果未知函数和几个变量有关,而且方程中出现未知函数对几个变量的导数,那么这种微分方程就是偏微分方程。 常用的方法有变分法和有限差分法。变分法是把定解问题转化成变分问题,再求变分问题的近似解;有限差分法是把定解问题转化成代数方程,然后用计算机进行计算;还有一种更有意义的模拟法,它用另一个物理的问题实验研究来代替所研究某个物理问题的定解。虽然物理现象本质不同,但是抽象地表示在数学上是同一个定解问题,如研究某个不规则形状的物体里的稳定温度分布问题,由于求解比较困难,可作相应的静电场或稳恒电流场实验研究,测定场中各处的电势,从而也解决了所研究的稳定温度场中的温度分布问题。 随着物理科学所研究的现象在广度和深度两方面的扩展,偏微分方程的应用范围更广泛。从数学自身的角度看,偏微分方程的求解促使数学在函数论、变分法、级数展开、常微分方程、代数、微分几何等各方面进行发展。从这个角度说,偏微分方程变成了数学的中心。

一、MATLAB方法简介及应用 1.1 MATLAB简介 MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。 1.2 Matlab主要功能 数值分析 数值和符号计算 工程与科学绘图 控制系统的设计与仿真 数字图像处理 数字信号处理 通讯系统设计与仿真 财务与金融工程 1.3 优势特点 1) 高效的数值计算及符号计算功能,能使用户从繁杂的数学运算分析中解脱出来; 2) 具有完备的图形处理功能,实现计算结果和编程的可视化; 3) 友好的用户界面及接近数学表达式的自然化语言,使学者易于学习和掌握; 4) 功能丰富的应用工具箱(如信号处理工具箱、通信工具箱等) ,

2021年常系数线性方程组基解矩阵的计算

常系数线性方程组基解矩阵的计算 欧阳光明(2021.03.07) 董治军 (巢湖学院数学系,安徽巢湖238000) 摘要:微分方程组在工程技术中的应用时非常广泛的,不少问题都归结于它的求解问题,基解矩阵的存在和具体寻求是不同的两回事,一般齐次线性微分方程组的基解矩阵是无法通过积分得到的,但当系数矩阵是常数矩阵时,可以通过方法求出基解矩阵,这时可利用矩阵指数exp A t,给出基解矩阵的一般形式,本文针对应用最广泛的常系数线性微分方程组,结合微分方程,线性代数等知识,讨论常系数齐次线性微分方程的基解矩阵的几个一般的计算方法. 关键词;常系数奇次线性微分方程组;基解矩阵;矩阵指数Calculation of Basic solution Matrix of Linear Homogeneous System with Constant Coefficients Zhijun Dong (Department of Mathematics,Chaohu CollegeAnhui,Chaohu) Abstract:Differential equations application in engineering technology is very extensive, when many problems are attributable to its solving problem, base solution matrix existence and specific seek is different things, general homogeneous linear differential equations is not the

偏微分方程数值解法

一、 问题 用有限元方法求下面方程的数值解 2 u u u f t ?-?+=? in (]0,T Ω? 0u = on []0,T ?Ω? ()00,u x u = in Ω 二、 问题分析 第一步 利用Green 公式,求出方程的变分形式 变分形式为:求()()21 00,;u L T H ∈Ω,使得 ()())(2 ,,,,u v u v u v f v t ???+??+= ???? ()10v H ?∈Ω (*) 以及 ()00,u x u =. 第二步 对空间进行离散,得出半离散格式 对区域Ω进行剖分,构造节点基函数,得出有限元子空间:()12,,,h NG V span ???=???,则(*)的Galerkin 逼近为: []0,t T ?∈,求()()1 0,h h u t x V H ∈?Ω,使得 ()()()()() () )(2 ,,,,h h h h h h h d u t v u t v u t v f v dt +??+= h h v V ?∈ (**) 以及()0,0h h u u =,0,h u 为初始条件0u 在h V 中的逼近,设0,h u 为0u 在h V 中的插值. 则0t ?≥,有()()1 N G h i i i u t t ξ? == ∑,0,h u =01 N G i i i ξ?=∑,代人(**)即可得到一常微分方程组. 第三步 进一步对时间进行离散,得到全离散的逼近格式 对 du dt 用差分格式.为此把[]0,T 等分为n 个小区间[]1,i i t t -,其长度1i i T t t t n -?=-= ,n t T =. 这样把求i t 时刻的近似记为i h u ,0 h u 是0u 的近似.这里对(**)采用向后的欧拉格式,即 ()()() () )(2 11 11 1 ,,,,i i i i h h h h h h h i h u u v u v u v f v t ++++-+??+ = ? h h v V ?∈ (***) i=0,1,2…,n-1. 0 h u =0,h u 由于向后欧拉格式为隐式格式且含有非线性项,故相邻两时间步之间采用牛顿迭代,即:

微分方程几种求解方法

第五章 控制系统仿真 §5.2 微分方程求解方法 以一个自由振动系统实例为例进行讨论。 如下图1所示弹簧-阻尼系统,参数如下: M=5 kg, b=1 N.s/m, k=2 N/m, F=1N F 图1 弹簧-阻尼系统 假设初始条件为:00=t 时,将m 拉向右方,忽略小车的摩擦阻力,m x 0)0(= s m x /0)0(=? 求系统的响应。 )用常微分方程的数值求解函数求解包括ode45、 ode23、ode113、ode15s 、ode23s 等。 wffc1.m myfun1.m 一、常微分方程的数值求解函数ode45求解 解:系统方程为 F kx x b x m =++??? 这是一个单变量二阶常微分方程。

将上式写成一个一阶方程组的形式,这是函数ode45调用规定的格式。 令: x x =)1( (位移) )1()2(? ?==x x x (速度) 上式可表示成: ??????--=??????=??? ???????)1(*4.0)2(*2.02.0)2()2()2()1(x x x x x x x && 下面就可以进行程序的编制。 %写出函数文件myfun1.m function xdot=myfun1(t,x) xdot=[x(2);0.2-0.2*x(2)-0.4*x(1)]; % 主程序wffc1.m t=[0 30]; x0=[0;0]; [tt,yy]=ode45(@myfun1,t,x0); plot(tt,yy(:,1),':b',tt,yy(:,2),'-r') hold on plot(tt,0.2-0.2*yy(:,2)-0.4*yy(:,1),'-k') legend('位移','速度',’加速度’)

Matlab线性方程组求解(Gauss消去法)

Matlab线性方程组求解 1. Gauss消元法: function x=DelGauss(a,b) % Gauss消去法 [n,m]=size(a); nb=length(b); det=1; %存储行列式值 x=zeros(n,1); for k=1:n-1 for i=k+1:n if a(k,k)==0 return end m=a(i,k)/a(k,k); for j=k+1:n a(i,j)=a(i,j)-m*a(k,j); end b(i)=b(i)-m*b(k); end det=det*a(k,k); %计算行列式 end det=det*a(n,n); for k=n:-1:1 %回代求解 for j=k+1:n b(k)=b(k)-a(k,j)*x(j); end x(k)=b(k)/a(k,k);

end Example: >> A=[1.0170 -0.0092 0.0095;-0.0092 0.9903 0.0136;0.0095 0.0136 0.9898]; >> b=[1 0 1]'; >> x=DelGauss(A,b) x = 0.9739 -0.0047 1.0010 2. 列主元Gauss消去法: function x=detGauss(a,b) % Gauss列主元消去法 [n,m]=size(a); nb=length(b); det=1; %存储行列式值 x=zeros(n,1); for k=1:n-1 amax=0; %选主元 for i=k:n if abs(a(i,k))>amax amax=abs(a(i,k));r=i; end end if amax<1e-10 return; end if r>k %交换两行 for j=k:n

总结求线性方程组的方法

总结求线性方程组的方法-标准化文件发布号:(9556-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

华北水利水电大学 总结求线性方程组的方法 课程名称:线性代数 专业班级: 成员组成: 联系方式: 2014年12月31日

摘要:线性方程组的求解是当代代数学中的一个重要组成部分。它广泛应用在数学以及其他领域。它与矩阵、线性变换、行列式、向量组的线性相关性,二次型,这些型之间有着相当密切的联系。线性方程组是线性代数中一个相当基础的内容必须要学会以及熟悉内容。本文章主要说明和讨论线性方程组的基本结构,然后应用克拉莫法则,高斯消元法来来求解。 关键词:线性方程组、高斯消元法、克拉莫法则; Summary for the method of liner equations Abstract: Solution of the system of linear equations is an important component part of algebra. It is widely used in mathematics and other areas. It and determinant, matrix, linear transformation, linear correlation vector group, quadratic form, has the close relation. System of linear equations is a very basic content in linear algebra must grasp and familiar with the content. This article mainly explain and discuss the basic structure of system of linear equations, then apply law of kramer, gauss elimination method to solve.

偏微分方程数值解法答案

1. 课本2p 有证明 2. 课本812,p p 有说明 3. 课本1520,p p 有说明 4. Rit2法,设n u 是u 的n 维子空间,12,...n ???是n u 的一组基底,n u 中的任一元素n u 可 表为1n n i i i u c ?==∑ ,则,11 11()(,)(,)(,)(,)22j n n n n n n i j i j j i j j J u a u u f u a c c c f ???=== -=-∑∑是12,...n c c c 的二次函数,(,)(,)i j j i a a ????=,令 () 0n j J u c ?=?,从而得到12,...n c c c 满足1 (,)(,),1,2...n i j i j i a c f j n ???===∑,通过解线性方程组,求的i c ,代入1 n n i i i u c ?==∑, 从而得到近似解n u 的过程称为Rit2法 简而言之,Rit2法:为得到偏微分方程的有穷维解,构造了一个近似解,1 n n i i i u c ?== ∑, 利用,11 11()(,)(,)(,)(,)22j n n n n n n i j i j j i j j J u a u u f u a c c c f ???===-=-∑∑确定i c ,求得近似解n u 的过程 Galerkin 法:为求得1 n n i i i u c ? == ∑形式的近似解,在系数i c 使n u 关于n V u ∈,满足(,)(,) n a u V f V =,对任 意 n V u ∈或(取 ,1j V j n ?=≤≤) 1 (,)(,),1,2...n i j i j i a c f j n ???===∑的情况下确定i c ,从而得到近似解1 n n i i i u c ?==∑的过程称 Galerkin 法为 Rit2-Galerkin 法方程: 1 (,)(,)n i j i j i a c f ???==∑ 5. 有限元法:将偏微分方程转化为变分形式,选定单元的形状,对求解域作剖分,进而构 造基函数或单元形状函数,形成有限元空间,将偏微分方程转化成了有限元方程,利用 有效的有限元方程的解法,给出偏微分方程近似解的过程称为有限元法。 6. 解:对求解区间进行网格剖分,节点01......i n a x x x x b =<<<<=得到相邻节点1,i i x x -

线性方程组的解法

线性方程组的解法 1 引言 在科学研究和大型工程设计中出现了越来越多的数学问题,而这些问题往往需要求数值解。在进行数值求解时,经离散后,常常归结为求解形如Ax= b的大型线性方程组。而如插值公式,拟合公式等的建立,微分方程差分格式的构造等,均可归结为求解线性方程组的问题.在工程技术的科学计算中,线性方程组的求解也是最基本的工作之一.因此,线性方程组的解法一直是科学和工程计算中研究最为普遍的问题,它在数值分析中占有极其重要的地位。20世纪50年代至70年代,由于电子计算机的发展,人们开始考虑和研究在计算机上用迭代法求线性方程组Ax =b的近似解,用某种极限过程去逐渐逼近精确解,并发展了许多非常有效的迭代方法,迭代法具有需要计算机存储单元少、程序设计简单、原始系数矩阵在计算过程中始终不变等优点。例如Jacobi方法、Gauss—Seidel 方法、SOR方法、SSOR 方法,这几种迭代方法是最常用的一阶线性定常迭代法。 2 主要算法 20世纪50年代至70年代,人们开始考虑和研究用迭代法求解线性方程组。 Ax = b (1) 的近似解,发展了许多有效的方法,其中有Jacobi方法、Gauss—Seidel方法,SOR方法、SSOR方法,这几种迭代方法均属一阶线性定常迭代法,即若系数矩阵A的一个分裂:A =M-N ;M 为可逆矩阵,线性方程组(1)化为: (M-N)X =b; →M X = NX + b; →X= M -1NX+ M-1b 得到迭代方法的一般公式: X(k+1)=HX(k)+d (2) 其中:H =MN-1,d=M-1b,对任意初始向量X(0) 一阶定常迭代法收敛的充分必要条件是: 迭代矩H的谱半径小于1,即ρ(H) < 1;又因为对于任何矩阵范数恒有ρ(H)≤‖H‖,故又可得到收敛的一个充分条件为:‖H‖< 1。 2.1 Jacobi迭代法 若D为A的对角素构成的对角矩阵,且对角线元素全不为零。系数矩阵A的一个分解:A =

偏微分方程求解方法及其比较

偏微分方程求解方法及其比较 发表时间:2008-12-11T09:32:01.530Z 来源:《科海故事博览科教创新》2008年第10期供稿作者:曹海洋吕淑娟王淑芬 [导读] 近些年来,无限维动力系统得到了很大的发展.随着对它研究的深入和计算能力的迅速提高,使得与之相关的数值研究越来越被人们关注.谱方法作为一种数值求解偏微分方程的方法,它具有无穷阶收敛性.因此,谱方法也就引起人们更多的关注. 摘要:近些年来,无限维动力系统得到了很大的发展.随着对它研究的深入和计算能力的迅速提高,使得与之相关的数值研究越来越被人们关注.谱方法作为一种数值求解偏微分方程的方法,它具有无穷阶收敛性.因此,谱方法也就引起人们更多的关注. 关键词:谱方法;偏微分;收敛;逼近; 1偏微分方程及其谱方法的介绍 偏微分方程主要借助于未知函数及其导数来刻画客观世界的物理量的一般变化规律。理论上,对偏微分方程解法的研究已经有很长的历史了。最初的研究工作主要集中在物理,力学,几何学等方面的具体问题,其经典代表是波动方程,热传导方程和位势方程(调和方程)。通过对这些问题的研究,形成了至今仍然使用的有效方法,例如,分离变量法,fourier变换法等。早期的偏微分方程研究主要集中在理论上,而在实际操作中其研究方法和研究结果都难以得到广泛的应用。求解的主要方法为:有限差分法,有限元法,谱方法。 谱方法起源于Ritz-Galerkin方法,它是以正交多项式(三角多项式,切比雪夫多项式,勒让得多项式等)作为基函数的Galerkin方法、Tau 方法或配置法,它们分别称为谱方法、Tau方法或拟谱方法(配点法),通称为谱方法。谱方法是以正交函数或固有函数为近似函数的计算方法。从函数近似角度看.谱方法可分为Fourier方法.Chebyshev或Legendre方法。前者适用于周期性问题,后两者适用于非周期性问题。而这些方法的基础就是建立空间基函数。 下面介绍几种正交多项式各种节点的取值方法及权重。 1) Chebyshev-Gauss: 2) Chebyshev-Gauss-Radau: x0 =1, 3) Chebyshev-Gauss-Lobatto: x0 =1, xN =1, 4)Legendre-Gauss: xj 是的零点且 5) Legendre-Gauss-Radau: xj 是的N+1个零点且 6) Legendre-Gauss-Lobatto: x0=-1,xN=1其它N-1个点是的零点且 下面介绍谱方法中最重要的Jacobi正交多项式其迭代公式为: 其中: Jacobi正交多项式满足正交性: 而Chebyshev多项式是令时Jacobi多项式的特殊形式,另外Legendre多项式是令时Jacobi多项式的特殊形式。 2 几种典型的谱方法 谱方法是以正交函数或固有函数为近似函数的计算方法。谱近似可以分为函数近似和方程近似两种近似方式。从函数近似角度看.谱方法可分为Fourier方法.Chebyshev或Legendre方法。前者适用于周期性问题,后两者适用于非周期性问题。从方程近似角度看,谱方法可分为在物理空间离散求解的Collocation法、在谱空间进行离散求解的Galerkin法,以及先在物理空间离散求积,再变换到谱空间求解的Pseudo-spectral法。Collocation法适用于非线性问题.Galerkin法适用于线性问题,而Pseudo-spectral法适用于展开方程时的非线性项的处理。谱方法的特点是对光滑函数指数性逼近的谱精度;以较少的网格点得到较高的精度;无相位误差;适合多尺度的波动性问题;计算精度高于其他方法。快速傅立叶变化的提出大大促进了谱方法的发展,迄今已有各种的谱方法计算格式被提出.并被应用于天文学、电磁学、地理学等各种问题的计算。 下面介绍一下应用于各个区域的几种谱方法: 1)以Fourier谱方法为例介绍谱方法解方程的主要过程 以一阶波动方程为例: 其中u(x,t)为方程的解,L是包含u和u关于空间变量的导数的算子,除了方程以有初始条件和适当的边界条件。 故可设其中为试探空间的基函数,ak(t)为展开系数,对于傅立叶谱方法中的共轭有: 其中从而利用其正交性和周期性可以减少工作量,另外再结合边界条件就可以求出来。 2) Galerkin方法是谱方法中十分经典的解偏微分方程的方法,但还有其局限性,而利用Hermite谱方法中依赖时间的权函数对经典的Galerkin方法进行拓展后的新的方法能适用范围扩大了很多。它能很好的应用在微分方程最优控制问题有限元方法的分析中,并且如果能够灵活运用利用Chebyshev方法、Galerkin方法和配置方法,则会形成更强的计算方法。如将Tau方法的思想成功地应用于奇数阶微分方程Petrov-Galerkin谱方法。 3)在无界区域上谱方法和拟谱方法发展了以Hermite函数和Laguerre函数为基函数的正交逼近和插值理论,在这些结果的基础上发展了全空间和半空间上数理方程的谱方法和拟谱方法,从而形成一种新的能更好解决误解区域问题的方法,此种方法被很好的应用于统计物理、量子力学和流体力学中。 4) 我们利用非一致带权Sobolev空间中的Jacobi多项式正交逼近和Jacobi-Gauss型插值理论,提出以Jacobi多项式为基函数的Jacobi谱方法和拟谱方法用来解决一些奇异问题和计算某些特定的无界区域问题。 5)有限谱方法是基于有限点、有限项的局域谱方法。这种方法要求近似函数应具有等同隔网格和非周期性的性质。有限谱方法分为基于非

求解偏微分方程三种数值方法

数值模拟偏微分方程的三种方法介绍 (有限差分方法、有限元方法、有限体积方法) I.三者简介 有限差分方法(Finite Difference Methods)是数值模拟偏微分方程最早采用的方法,至今仍被广泛使用。该方法包括区域剖分和差商代替导数两个步骤。首先将求解区域划分为差分网格,用有限个网格节点代替连续的求解区域。其次,利用Taylor级数展开等方法将偏微分方程中的导数项在网格节点上用函数值的差商代替进行离散,从而建立以网格节点上的值为未知量的代数方程组。该方法是一种直接将微分问题变为代数问题的近似数值解法,数学概念直观,表达简单,是发展较早且十分成熟的数值方法。 差商代替导数后的格式称为有限差分格式,从格式的精度来考虑,有一阶格式、二阶格式和高阶格式。从差分的空间离散形式来考虑,有中心格式和迎风格式。对于瞬态方程,考虑时间方向的离散,有显格式、隐格式、交替显隐格式等。目前常见的差分格式,主要是以上几种格式的组合,不同的组合构成不同的差分格式。差分方法主要适用于结构网格,网格的大小一般根据问题模型和Courant 稳定条件来决定。 有限元方法(Finite Element Methods)的基础是虚位移原理和分片多项式插值。该方法的构造过程包括以下三个步骤。首先,利用虚位移原理得到偏微分方程的弱形式,将计算区域划分为有限个互不重叠的单元(三角形、四边形、四面体、六面体等),在每个单元上选择合适的节点作为求解函数的插值点,将偏微分方程中的变量改写成由各变量或其导数的节点值与所选用的分片插值基函数组成的线性表达式,得到微分方程的离散形式。利用插值函数的局部支集性质及数值积分可以得到未知量的代数方程组。 有限元方法有较完善的理论基础,具有求解区域灵活(复杂区域)、单元类型灵活(适于结构网格和非结构网格)、程序代码通用(数值模拟软件多数基于有限元方法)等特点。有限元方法最早应用于结构力学,随着计算机的发展已经渗透到计算物理、流体力学与电磁学等各个数值模拟领域。

解线性方程组的直接解法

解线性方程组的直接解法 一、实验目的及要求 关于线性方程组的数值解法一般分为两大类:直接法与迭代法。直接法是在没有舍入误差的情况下,通过有限步运算来求方程组解的方法。通过本次试验的学习,应该掌握各种直接法,如:高斯列主元消去法,LU分解法和平方根法等算法的基本思想和原理,了解它们各自的优缺点及适用范围。 二、相关理论知识 求解线性方程组的直接方法有以下几种: 1、利用左除运算符直接求解 线性方程组为b x\ =即可。 A Ax=,则输入b 2、列主元的高斯消元法 程序流程图: 输入系数矩阵A,向量b,输出线性方程组的解x。 根据矩阵的秩判断是否有解,若无解停止;否则,顺序进行; 对于1 p :1- =n 选择第p列中最大元,并且交换行; 消元计算; 回代求解。(此部分可以参看课本第150页相关算法) 3、利用矩阵的分解求解线性方程组 (1)LU分解 调用matlab中的函数lu即可,调用格式如下: [L,U]=lu(A) 注意:L往往不是一个下三角,但是可以经过行的变换化为单位下三角。 (2)平方根法

调用matlab 中的函数chol 即可,调用格式如下: R=chol (A ) 输出的是一个上三角矩阵R ,使得R R A T =。 三、研究、解答以下问题 问题1、先将矩阵A 进行楚列斯基分解,然后解方程组b Ax =(即利用平方根法求解线性方程组,直接调用函数): ??????? ??--------=19631699723723312312A ,?????? ? ??-=71636b 解答: 程序: A=[12 -3 2 1;-3 23 -7 -3;2 -7 99 -6;1 -3 -6 19]; R=chol(A) b=[6 3 -16 7]'; y=inv(R')*b %y=R'\b x=inv(R)*y %x=R\y 结果: R =3.4641 -0.8660 0.5774 0.2887 0 4.7170 -1.3780 -0.5830 0 0 9.8371 -0.7085 0 0 0 4.2514 y =1.7321 0.9540 -1.5945 1.3940 x =0.5463 0.2023 -0.1385 0.3279 问题 2、先将矩阵A 进行LU 分解,然后解方程组b Ax =(直接调用函数): ?????????? ??----=8162517623158765211331056897031354376231A ,????????? ? ??-=715513252b

线性方程组解题方法技巧与题型归纳

线性方程组解题方法技巧与题型归纳 题型一 线性方程组解的基本概念 【例题1】如果α1、α2是方程组 123131233231 2104 x x ax x x x ax x --=?? -=??-++=? 的两 个不同的解向量,则a 的取值如何 解: 因为α1、α2是方程组的两个不同的解向量,故方程组有无穷多解,r(A)= r(Ab)<3, 对增广矩阵进行初等行变换: 21131132031022352104002314510a a a a a a a ----???? ? ?-→-- ? ? ? ?-----???? 易见仅当a=-2时,r(A)= r(Ab)=2<3, 故知a=-2。 【例题2】设A 是秩为3的5×4矩阵, α1、α2、 α3是非齐次线性方程组Ax=b 的三个不同的解,若α1+α2+2α3=(2,0,0,0)T , 3α1+α2= (2,4,6,8)T ,求方程组Ax=b 的通解。 解:因为r(A)= 3,所以齐次线性方程组Ax=0的基础解系由4- r(A)= 1个向量构成, 又因为(α1+α2+2α3)-(3α1+α2) =2(α3-α1)=(0,-4,-6,-8)T , 是Ax=0的解, 即其基础解系可以是(0,2,3,4)T , 由A (α1+α2+2α3)=Aα1+Aα2+2Aα3=4b 知1/4

(α1+α2+2α3)是Ax=b 的一个解, 故Ax=b 的通解是 ()1,0,0,00,2,3,42T T k ?? + ??? 【例题3】已知ξ1=(-9,1,2,11)T ,ξ2=(1,- 5,13,0)T ,ξ3=(-7,-9,24,11)T 是方程组 12234411223441 234432332494x a x x a x d x b x x b x x x x c x d +++=?? +++=??+++=?的三个解,求此方程组的通解。 分析:求Ax=b 的通解关键是求Ax=0的基础解系,判断r(A)的秩。 解:A 是3×4矩阵, r(A)≤3,由于A 中第2,3两行不成比例,故r(A)≥2,又因为 η1=ξ1-ξ2=(-10,6,-11,11)T , η2=ξ2-ξ3= (8,4,-11,-11)T 是Ax=0的两个线性无关的解向量, 于是4- r(A)≥2,因此r(A)=2,所以ξ1+k 1η1+k 2η2是通解。 总结: 不要花时间去求方程组,太繁琐,由于ξ1-ξ2,ξ1-ξ3或ξ3-ξ1,ξ3-ξ2等都可以构成齐次线性方程组的基础解系,ξ1,ξ2,ξ3都是特解,此类题答案不唯一。 题型2 线性方程组求解

偏微分方程数值解法试题与答案

x 1 ?若步长趋于零时,差分方程的截断误差 R m 0,则差分方程的解 U i m 趋近于微分方 程的解U m ?此结论 ________ (错或对); 1 2.一 阶 Sobolev 空间 H ( ) f (x,y) f , f x , f y L ?() 关于内积(f,g )1 _____________________________________ 是Hilbert 空间; 3 ?对非线性(变系数)差分格式,常用 ____________ 系数法讨论差分格式的 ________ 稳定性; 4?写出y x 3在区间[1,2]上的两个一阶广义导数: ______________________________________ _____ ____ ______________ _ ____ ________ ; 5 ?隐式差分格式关于初值是无条件稳定的 ?此结论 ________ (错或对)。 (13分)设有椭圆型方程边值问题 0.1作正方形网格剖分 。 (1) 用五点菱形差分格式将微分方程在内点离散化; (2) 用截断误差为 O (h 2)的差分法将第三边界条件离散化; (3) 整理后的差分方程组为 U C 三.(12)给定初值问题 u x,0 x 1 取时间步长 0.1,空间步长h 0.2。试合理选用一阶偏心差分格式(最简显格式) 2 u ~2 x 2 u ~2 y 0 x 0.3 0.2 x 0.3 2y 1, — u n 2x y 0.2

并以此格式求出解函数u(x,t)在x 0.2,t 0.2处的近似值。 x

1.所选用的差分格式是: 2 .计算所求近似值: 1 a k 1 四.(12分)试讨论差分方程 u l 1 k k k 1 u | r u | 1 u | , r h a 1 h 逼近微分方程 u a u 0 t x 的截断误差阶R 。 思路一:将r 带入到原式,展开后可得格式是在点( l+1/2,k+1/2 )展开的。 思路二:差分格式的用到的四个点刚好是矩形区域的四个顶点,可由此构造中心点的差分格 式。 2 —2 ,考虑 Du Fort-Frankel 格式 X 试论证该格式是否总满足稳定性的 Von-Neumann 条件? 六. (12分)(1 )由Green 第一公式推导 Green 第二公式: (2) 对双调和方程边值问题 n 2 选择函数集合(空间)为: 推导相应的双线性泛函和线性泛函: A (u,v ) F (v ) 相应的虚功问题为: 极小位能问题为 七. ( 12分)设有常微分方程边值问题 y y f (x ) , a x b y a 1, y b 1 五.(12分) 对抛物型方程 U |k1 U |k 2 |k 1 (U |k1 U |k1) U |k 1 ) 2 (u)vdxdy G (u) u vdxdy :[v v u ]ds n f (x,y) (x,y) g 1(x , y), g 2(x, y) (x,y),

线性方程组的解法及其应用

线性方程组的解法及其应用 The solution of linear equation and its application 专业:测控技术与仪器 班级: 2010-1班 作者:刘颖 学号: 20100310110105

摘要 线性方程组是线性代数的一个重要组成部分,也在现实生产生活中有着广泛的运用,在电子工程、软件开发、人员管理、交通运输等领域都起着重要的作用。在一些学科领域的研究中,线性方程组也有着不可撼动的辅助性作用,在实验和调查后期利用线性方程组对大量的数据进行处理是很方便简捷的选择。本文主要围绕如何解线性方程组来进行讲解,对于不同类型的线性方程组的不同方法,并简述线性方程组的一些实际应用。 关键词: 齐次线性方程组,非齐次线性方程组,克莱姆法则,消元法,矩阵,矩阵的秩,特解,通解。

Abstract Linear equations linear algebra is one of the important component parts, and in real life has extensive production use,and it plays an important role in electronic engineering, software development, personnel management, transportation, etc. In some discipline study, it also has the reigns of linear equations of the auxiliary function.In experiment and survey using the linear equations of the late on the data processing is very convenient simple choice. This article, focusing on how to solve linear equations to explain, for different types of linear equations of different methods, and briefly introduces some of the practical application of linear equations. Keywords: Homogeneous linear equations, Non homogeneous linear equation,Clem’s law,Elimination method,Matrix,Rank of matrix,Special solution,General solution.

线性方程组的求解方法与应用

湖北民族学院理学院2016届 本科毕业论文(设计) 线性方程组的求解方法及应用 学生姓名:付世辉学号: 0 专业:数学与应用数学指导老师:刘先平 答辩时间:装订时间:

A Graduation Thesis (Project) Submitted to School of Science, Hubei University for Nationalities In Partial Fulfillment of the Requiring for BS Degree In the Year of 2016 The calculation method and application of the system of linear equations Student Name: Fu Shihui Student No.: 0 Specialty:Mathematics And Applied Mathematics Supervisor: Liu Xianping Date of Thesis Defense:Date of Bookbinding:

摘要 线性方程组在数学领域中的应用非常广泛,是线性代数的主要内容之一. 矩阵及其基本理论是学习线性代数的一种基本工具,矩阵的初等变换则是线性方程组求解的工具. 线性方程组常用的求解方法有一般消元法、克拉默法则、LU分解法等一系列方法,根据问题的不同,我们在求解的过程中选择的方法也就多种多样. 这些方法可以很好地解决线性方程组的求解问题,在求解过程中,向量和矩阵起着一个不可或缺的作用. 在线性方程组的应用方面,除了跟数学理论知识有着密不可分的联系,还和我们的实际生活联系的极其紧密. 关键词:线性方程组,矩阵,初等变换,克拉默法则,LU分解法

相关文档
最新文档