文档库 最新最全的文档下载
当前位置:文档库 › 用Matlab解代数方程

用Matlab解代数方程

一般的代数方程

函数solve用于求解一般代数方程的根,假定S为符号表达式,命令solve (S)求解表达式等于0的根,也可以再输入一个参数指定未知数。例:

syms a b c x

S=a*x^2+b*x+c;

solve(S)

ans=

[ 1/2/a*(-b+(b^2-4*a*c)^(1/2))]

[ 1/2/a*(-b-(b^2-4*a*c)^(1/2))]

b=solve(S,b)

b =

-(a*x^2+c)/x

线性方程组

线性方程组的求解问题可以表述为:给定两个矩阵A和B,求解满足方程AX=B或XA=B的矩阵X。方程AX=B的解用X=A\B或X=inv (A)*B表示;方程XA=B 的解用X=B/A或X=B*inv (A)表示。不过斜杠和反斜杠运算符计算更准确,占用内存更小,算得更快。

线性微分方程

函数dsolve用于线性常微分方程(组)的符号求解。在方程中用大写字母D表示一次微分,D2,D3分别表示二阶、三阶微分,符号D2y相当于y关于t的二阶导数。

函数dsolve的输出方式

格式说明

y=dsolve(‘Dyt=y0*y’) 一个方程,一个输出参数[u,v]=dsolve(‘Du=v’,’Dv=u’) 两个方程,两个输出

参数

S=dsolve(‘Df=g’,’Dg=h’,’Dh=-2*f ‘)方程组的解以S.f

S.g S.h结构数组的形式输出

例1 求 2

1u dt

du += 的通解.

解 输入命令:dsolve('Du=1+u^2','t')

果:u = tg(t-c)

例2 求微分方程的特解.

???íì===++15

)0(',0)0(029422

y y y dx

dy

dx y d 解输入命令: y=dsolve('D2y+4*Dy+29*y=0','y(0)=0,Dy(0)=15','x')

结果为: y =3e -2x sin (5x )

例3 求微分方程组的通解.

???????íì+-=+-=+-=z y x dt

dz z

y x dt

dy

z y x dt dx

244354332解输入命令:

[x,y,z]=dsolve('Dx=2*x-3*y+3*z','Dy=4*x-5*y+3*z','Dz=4*x-4*y+2*z', 't');x=simple(x) % 将x 化简y=simple(y)z=simple(z)

结果为:x = (c 1-c 2+c 3+c 2e -3t -c 3e -3t )e 2t

y = -c 1e -4t +c 2e -4t +c 2e -3t -c 3e -3t +(c 1-c 2+c 3)e 2t z = (-c 1e -4t +c 2e -4t +c 1-c 2+c 3)e 2t

非线性微分方程

注意:

1、在解n个未知函数的方程组时,x0和x均为n维向量,m-文件中的待解方程组应以x的分量形式写成.

2、使用Matlab软件求数值解时,高阶微分方程必须等价地变换成一阶微分方程组.

例4 ??

?íì===---0)0(';2)0(0)1(1000222x x x dt

dx x dt x d 解: 令y 1=x ,y 2=y 1’

则微分方程变为一阶微分方程组:

??

?íì

==--==0

)0(,2)0()1(1000''21122

1221y y y y y y y y 1、建立m-文件vdp1000.m 如下:

function dy=vdp1000(t,y)dy=zeros(2,1);dy(1)=y(2);

dy(2)=1000*(1-y(1)^2)*y(2)-y(1);

2、取t 0=0,t f =3000,输入命令:

[T,Y]=ode15s('vdp1000',[0 3000],[2 0]); plot(T,Y(:,1),'-')3、结果如图

50010001500200025003000

-2.5

-2-1.5-1-0.50

0.511.52

例5 解微分方程组.

????

ì

===-=-==1

)0(,1)0(,0)0(51.0'''3212

13312321y y y y y y y y y y y y 解

1、建立m-文件rigid.m 如下:function dy=rigid(t,y)dy=zeros(3,1);dy(1)=y(2)*y(3);dy(2)=-y(1)*y(3);

dy(3)=-0.51*y(1)*y(2);

2、取t 0=0,t f =12,输入命令:

[T,Y]=ode45('rigid',[0 12],[0 1 1]);

plot(T,Y(:,1),'-',T,Y(:,2),'*',T,Y(:,3),'+')3、结果如图

2

4

6

8

10

12

-1-0.8-0.6

-0.4-0.200.20.40.60.81图中,y 1的图形为实线,y 2的图形为“*”线,y 3的图形为“+”线.

例6 Lorenz 模型的状态

???

íì-+-=+-=+-=)

()()()()()()()()()()()(322133223221t x t x t x t x t x

t x t x t x

t x t x t x t x r s s b &&& 若令3/8,28,10===b r s 且初值为

e ===)0(,0)0()0(321x x x ,e 为一个小常数,假

设10

10

-=e

matlab解方程组

matlab解方程组 lnx表示成log(x) 而lgx表示成log10(x) 1-exp(((log(y))/x^0.5)/(x-1)) 1、解方程 最近有多人问如何用matlab解方程组的问题,其实在matlab中解方程组还是很方便的,例如,对于代数方程组Ax=b(A为系数矩阵,非奇异)的求解,MATLAB 中有两种方法: (1)x=inv(A)*b —采用求逆运算解方程组; (2)x=A\B —采用左除运算解方程组 PS:使用左除的运算效率要比求逆矩阵的效率高很多~ 例: x1+2x2=8 2x1+3x2=13 >>A=[1,2;2,3];b=[8;13]; >>x=inv(A)*b x = 2.00 3.00 >>x=A\B x = 2.00 3.00; 即二元一次方程组的解x1和x2分别是2和3。 对于同学问到的用matlab解多次的方程组,有符号解法,方法是:先解出符号解,然后用vpa(F,n)求出n位有效数字的数值解.具体步骤如下: 第一步:定义变量syms x y z ...; 第二步:求解[x,y,z,...]=solve('eqn1','eqn2',...,'eqnN','var1','var2',...'varN'); 第三步:求出n位有效数字的数值解x=vpa(x,n);y=vpa(y,n);z=vpa(z,n);...。 如:解二(多)元二(高)次方程组: x^2+3*y+1=0 y^2+4*x+1=0 解法如下: >>syms x y; >>[x,y]=solve('x^2+3*y+1=0','y^2+4*x+1=0'); >>x=vpa(x,4); >>y=vpa(y,4); 结果是:

最新薛定谔方程及其解法

关于薛定谔方程 一.定义及重要性 薛定谔方程(Schrdinger equation)是由奥地利物理学家薛定谔提 出的量子力学中的一个基本方程,也是量子力学的一个基本假定, 其正确性只能靠实验来检验。是将物质波的概念和波动方程相结合 建立的二阶偏微分方程,可描述微观粒子的运动,每个微观系统都 有一个相应的薛定谔方程式,通过解方程可得到波函数的具体形式 以及对应的能量,从而了解微观系统的性质。 薛定谔方程是量子力学最基本的方程,亦是量子力学的一个基 本假定,它的正确性只能靠实验来检验。 二.表达式 三.定态方程 ()() 2 2 2 V r E r m η ψψ + ?? -?= ?? ?? 所谓势场,就是粒子在其中会有势能的场,比如电场就是一个带电粒子的势场;所谓定态,就是假设波函数不随时间变化。 其中,E是粒子本身的能量;v(x,y,z)是描述势场的函数,假设不随时间变化。

2 2 22222 z y x ??????++=? 可化为 d 0)(222 =-+ψψv E h m dx 薛定谔方程的解法 一. 初值解法;欧拉法,龙格库塔法 二. 边值解法;差分法,打靶法,有限元法 龙格库塔法(对欧拉法的完善) 给定初值问题 ). ()()((3) ) ,(),()( ,,(2) )(),( 311212 2111021h O t y t y hk y h t f k y t f k k c k c h y y y c c a y b t a y t f dt dy i i i i i i i i =-???????++==++==?????=≤≤=++的局部截断误差使以下数值解法的值及确定常数ββα βα

薛定谔方程与提出背景

薛定谔方程 在一维空间里,一个单独粒子运动于位势中的含时薛定谔方程为 ;(1) 其中,是质量,是位置,是相依于时间的波函数,是约化普朗克常数,是位势。类似地,在三维空间里,一个单独粒子运动于位势中的含时薛定谔方程为 。(2) 假若,系统有个粒子,则波函数是定义于 -位形空间,所有可能的粒子位置空间。用方程表达, 。 其中,波函数的第个参数是第个粒子的位置。所以,第个粒子的位置是。 不含时薛定谔方程 不含时薛定谔方程不相依于时间,又称为本征能量薛定谔方程,或定态薛定谔方程。顾名思义,本征能量薛定谔方程,可以用来计算粒子的本征能量与其它相关的量子性质。 应用分离变量法,猜想的函数形式为 ; 其中,是分离常数,是对应于的函数.稍回儿,我们会察觉就是能量. 代入这猜想解,经过一番运算,含时薛定谔方程 (1) 会变为不含时薛定谔方程: 。 类似地,方程 (2) 变为

。 历史背景与发展 爱因斯坦诠释普朗克的量子为光子,光波的粒子;也就是说,光波具有粒子的性质,一种很奇奥的波粒二象性。他建议光子的能量与频率成正比。在相对论里,能量与动量之间的关系跟频率与波数之间的关系相同,所以,连带地,光子的动量与波数成正比。 1924年,路易·德布罗意提出一个惊人的假设,每一种粒子都具有波粒二象性。电子也有这种性质。电子是一种波动,是电子波。电子的能量与动量决定了它的物质波的频率与波数。1927年,克林顿·戴维和雷斯特·革末将缓慢移动的电子射击于镍晶体标靶。然后,测量反射的强度,侦测结果与X射线根据布拉格定律 (Bragg's law) 计算的衍射图案相同。戴维森-革末实验彻底的证明了德布罗意假说。 薛定谔夜以继日地思考这些先进理论,既然粒子具有波粒二象性,应该会有一个反应这特性的波动方程,能够正确地描述粒子的量子行为。于是,薛定谔试着寻找一个波动方程。哈密顿先前的研究引导著薛定谔的思路,在牛顿力学与光学之间,有一种类比,隐蔽地暗藏于一个察觉里。这察觉就是,在零波长极限,实际光学系统趋向几何光学系统;也就是说,光射线的轨道会变成明确的路径,遵守最小作用量原理。哈密顿相信,在零波长极限,波传播会变为明确的运动。可是,他并没有设计出一个方程来描述这波行为。这也是薛定谔所成就的。他很清楚,经典力学的哈密顿原理,广为学术界所知地,对应于光学的费马原理。借着哈密顿-雅可比方程,他成功地创建了薛定谔方程。薛定谔用自己设计的方程来计算氢原子的谱线,得到了与用玻尔模型计算出的能级相同的答案。 但是,薛定谔对这结果并不满足,因为,索末菲似乎已经正确地计算出氢原子光谱线精细结构常数的相对论性的修正。薛定谔试着用相对论的能量动量关系式,来寻找一个相对论性方程(现今称为克莱因-高登方程),可以描述电子在库仑位势的量子行为。薛定谔计算出这方程的定态波函数。可是,相对论性的修正与索末菲的公式有分歧。虽然如此,他认为先前非相对论性的部分,仍旧含有足够的新结果。因此,决定暂时不发表相对论性的修正,只把他的波动方程与氢原子光谱分析结果,写为一篇论文。1926年,正式发表于物理学界[2]。从此,给予了量子力学一个新的发展平台。 薛定谔方程漂亮地解释了的行为,但并没有解释的意义。薛定谔曾尝试解释代表电荷的密度,但却失败了。1926年,就在薛定谔第四篇的论文发表之后几天,马克斯·玻恩提出概率幅的概念,成功地解释了的物理意义[3]。可是,薛定谔本人一直不承认这种统计或概率的表示方法,和它所伴随的非连续性波函数坍缩。就像爱因斯坦的认为量子力学是基本为确定性理论的统计近似,薛定谔永远无法接受哥本哈根诠释。在他有生最后一年,他写给马克斯·玻恩的一封信,薛定谔清楚地表明了这看法。 含时薛定谔方程导引

实验三 定态薛定谔方程的矩阵解法

实验三 定态薛定谔方程的矩阵解法 一.实验目的 1.掌握定态薛定谔方程的矩阵解法。 2.掌握几种矩阵特征值问题数值解法的原理,会调用相应的子程序求解具体问题。 二.实验内容 1.问题描述 以/2ω/()m ω为长度单位,一维谐振子的哈密顿量为 2 202d H x dx =-+, 其本征值为21n E n =+,本证波函数为 2 /2)()n n x H x ?=-, 其中()n H x 为厄米多项式,满足递推关系 11()2()2()n n n H x xH x nH x +-=-。 用矩阵方法求 2 22d H x x dx =-++ 的本证能量和相应的波函数。 2.问题分析 H E ψψ= 0()|j j j t c ψ?∞ ==>∑ 0||i i j i j i j c E c x Ec ??∞ =+<>=∑ 11|j j j x ???-+>=>>

11||||j j j j x x ????-+<>= <>= 0010010 112111,211,11,1 n n n n n n n n n n n n E x c c x E x c c E x E x c c x E c c -------?????????????????????????=??????????????????????? ? 3.程序编写 子程序及调用方法见《FORTRAN 常用算法程序集(第二版)》第三章 徐士良,P97 4.实验要求 ◆用恰当的算法求解以上实对称三对角矩阵的特征值问题。 ◆取n=8,给出H 的全部特征值和相应的特征向量。 5.实验步骤 ● 启动软件开发环境Microsoft Developer Studio 。 ● 创建新工作区shiyan03。 ● 创建新项目xm3。 ● 创建源程序文件xm3.f90,编辑输入源程序文本。 ● 编译、构建、运行、调试程序。 6.实验结果 程序设计:

第七讲 MATLAB中求方程的近似根(解)

第七讲MATLAB中求方程的近似根(解) 教学目的:学习matlab中求根命令,了解代数方程求根求解的四种方法,即图解法、准解析法、数值方法以及迭代方法,掌握对分法、迭代法、牛顿切法线求方程近似根的基本过程;掌握求代数方程(组)的解的求解命令. 教学重点:求方程近似解的几种迭代方法,代数方程(组)的解的求解命令的使用方法.利用所学的编程知识,结合具体的实例,编制程序进行近似求根.掌握相关的代数方程(组)的求解命令及使用技巧. 教学难点:方程的近似求解和非线性方程(组)的求解. 一、问题背景和实验目的 求代数方程0 x f的根是最常见的数学问题之一(这里称为代数方程,主要是想和 (= ) 后面的微分方程区别开.为简明起见,在本实验的以下叙述中,把代数方程简称为方程),当) f为线性方程,否则称之为非线性方程.(x (= x ) f是一次多项式时,称0 当0 (x f的多样性,尚无一般的解析解法可使用,但如f是非线性方程时,由于) ) x (= 果对任意的精度要求,能求出方程的近似根,则可以认为求根的计算问题已经解决,至少能满足实际要求.同时对于多未知量非线性方程(组)而言,简单的迭代法也是可以做出来的,但在这里我们介绍相关的命令来求解,不用迭代方法求解. 通过本实验,达到下面目的: 1. 了解对分法、迭代法、牛顿切线法求方程近似根的基本过程; 2. 求代数方程(组)的解. 首先,我们先介绍几种近似求根有关的方法: 1.对分法 对分法思想:将区域不断对分,判断根在某个分段内,再对该段对分,依此类推,直到满足精度为止.对分法适用于求有根区间内的单实根或奇重实根. 设) a f ?b f,即()0 f a>,()0 f a<,()0 f b<或()0 f b>.则 ) , (< (x [b f在] a上连续,0 ( ) 根据连续函数的介值定理,在) fξ=. a内至少存在一点ξ,使()0 , (b 下面的方法可以求出该根:

薛定谔方程

第一章 薛定谔方程 §1.1.波函数及其物理意义 1. 波函数: 用波函数描述微观客体的运动状态。 例:一维自由粒子的波函数 推广 :三维自由粒子波函数 2. 波函数的强度——模的平方 3. 波函数的统计解释 用光栅衍射与电子衍射对比的方式理解波函数的统计解释。 t 时刻,出现在空间(x,y,z )点附近单位体积内的粒子数与总粒子数之比。 t 时刻,粒子出现在空间(x,y,z )点附近单位体积内的概率。 t 时刻,粒子在空间分布的概率密度 4、 波函数的归一化条件和标准条件 归一化条件 粒子在整个空间出现的概率为1 标准条件:一般情况下, 有关特殊情况波函数所满足的条件参看曾谨言教程。 对微观客体的数学描述: 脱离日常生活经验,避免借用经典语言引起的表观矛盾 §1.2. 薛定谔方程 是量子力学的基本假设之一,只能建立,不能推导,其正确性由实验检验。 1. 建立 (简单→复杂, 特殊→一般) 一维自由粒子的振幅方程 非相对论考虑 2. 一维定态薛定谔方程 2 |),,,(|t z y x ψ1d d d d d ||2===?=ψ???N N N N V V N N V V V . 是单值、有限、连续的ψ0)(2d )(d 222=ψ+ψx mE x x 0)()(2d )(d 222=ψ-+ψx U E m x x

3. 三维定态薛定谔方程 4. 一般形式薛定谔方程 5. 多粒子体系的薛定谔方程 讨论: 1、薛定谔方程也称波动方程,描述在势场U 中粒子状态随时间的变化规律。 2 、建立方程而不是推导方程,正确性由实验验证。薛定谔方程实质上是一种基本假设,不能从其他更基本原理或方程推导出来,它的正确性由它解出的结果是否符合实验来检验。 3、薛定谔方程是线性方程。是微观粒子的基本方程,相当于牛顿方程。 4、自由粒子波函数必须是复数形式,否则不满足自由粒子薛定谔方程。 5、薛定谔方程是非相对论的方程。 量子力学的中心任务就是求解薛定谔方程。 求解问题的思路: 1. 写出具体问题中势函数U (r )的形式代入方程 2. 用分离变量法求解 3. 用归一化条件和标准条件确定积分常数 4. 讨论解的物理意义, 薛定谔的另一伟大科学贡献 《What is life ?》 薛定谔(Schroding,1897-1961)奥地利人,因发现原子理论的有效的新形式一波动力学与狄拉克(Dirac,1902-1984)因创立相对论性的波动方程一狄拉克方程,共同分享了1933年度诺贝尔物理学奖 定态薛定谔方程 一.定态薛定谔方程条件:V (r,t )=V(r), 与t 无关。用分离变量法, 令Ψ=φ(r)f(t),代入薛定谔方程,得两个方程: 此称定态薛定谔方程 整个定态波函数形式: ),,,(),,,()],,,(2[),,,(2121212221t r r t r r V t r r m t r r t i i i i ψ+ψ?-=ψ??∑)t (Ef t )t (f i =?? Et i ce )t (f -=)r (E )r ()r (V )r (m ?=?+??-222Et i e )r ( -?=ψ

第二章 薛定谔方程

第二章 薛定谔方程 本章介绍:本章将系统介绍波动力学。波函数统计解释和态叠加原理是量子力学的两个基本假设。薛定谔方程是波动力学的核心。在一定的边界条件和初始条件下求解薛定谔方程,可以给出许多能与实验直接比较的结果。 §2.1 波函数的统计解释 §2.1.1 波动—粒子两重性矛盾的分析按照德布罗意的观点,和每个粒子相联系的都有一个波。怎样理解粒子性和波动性之间的联系,这是量子力学首先遇到的根本问题。 2.1.1 波动—粒子两重性矛盾的分析能否认为波是由粒子组成? 粒子的单缝和双缝实验表明,如减小入射粒子强度,让粒子近似的一个一个从粒子源射出,实验发现,虽然开始时底片上的感光点是无规则的,但只要时间足够长,感光点足够多,底片上仍然会出现衍射条纹。如果波是由粒子做成,那末,波的干涉、衍射必然依赖于粒子间的相互作用。这和上述实验结果相矛盾,实际上,单个粒子也具有波动性的。 能否认为粒子是由波组成? 比如说,电子是三维空间的物质波包,波包的大小即电子的大小,波包的速度即电子的速度,但物质波包是色散的,即使原来的物质波包很小,但经过一段时间后,也会扩散到很大的空间去,或者形象地说,随着时间的推移,粒子将越来越“胖”,这与实验相矛盾 经典物理对自然界所形成的基本物理图像中有两类物理体系: ◆一类是实物粒子 ◆另一类是相互作用场(波)经典粒子是以同时确定的坐标和动量来描述其运动状态,粒子的运动遵从经典力学规律,在运动过程中具有确定严格的轨道。粒子的能量,动量在粒子限度的空间小区域集中;当其与其它物理体系作用时,只与粒子所在处附近的粒子相互作用,并遵从能量、动量的单个交换传递过程,其经典物理过程是粒子的碰撞;“定域”是粒子运动的特征。经典波动则是以场量(振幅、相位等)来描述其运动状态,遵从经典波动方程,波的能量和动量周期性分布于波所传播的空间而不是集中在空间一点,即波的能量、动量是空间广延的。波与其他物质体系相互作用时,可同时与波所在广延空间内的所有物理体系相互作用,其能量可连续变化,波满足叠加原理,“非定域”是波动性运动的特性。◆◆在经典物理中,粒子和波各为一类宏观体系的呈现,反映着两类对象,两种物质形态,其运动特点是不相容的,即具有粒子性运动的物质不会具有波动性;反之具有波动性运动的物质不会具有粒子性。综上所述,微观粒子既不是经典的粒子又不是经典的波,或者说它既是量子概念的粒子又是量子概念的波。其量子概念中的粒子性表示他们是具有一定的能量、动量和质量等粒子的属性,但不具有确定的运动轨道,运动规律不遵从牛顿定律;其量子概念中的波动性并不是指某个实在物理量在空间的波动,而是指用波函数的模的平方表示在空间某处粒子被发现的概率。◆现在被物理学家们普遍接受的波函数解释是玻恩提出的统计解释。他认为,粒子在衍射或干涉实验中所揭示的波动性质,既可以看成是大量粒子在同一实验中的统计结果,也可以认为是单个粒子在多次相同实验中显示的统计结果。 ◆玻恩的统计解释:波函数在某一时刻在空间的强度,即其振幅绝对值的平方与在这一点找到粒子的几率成正比,和粒子联系的波是概率波 §2.1.2 波函数统计解释 波函数的的特点:1.由于 2 |),(|t r ψ给出在 t 时刻,粒子在 r 处出现的几率密度,因此原 则上可由统计平均公式:? ?>= <)(r f 。在这种意义下,波函数),(t r ψ描述了微观粒子的运

非线性薛定谔方程数值解的MATLAB仿真

[键入作者姓名] [键入文档标题] ——利用分步快速傅里叶变换对光纤中光信号的传输方程进行数值求解

1、非线性薛定谔方程 非线性薛定谔方程(nonlinear Schrodinger equation ,NLSE)是奥地利物理学家薛定谔于1926 年提出的,应用在量子力学系统中。由于量子力学主要研究粒子的动力学运动状态,所以不能运用牛顿力学公式来表示。通常在量子力学中,研究系统的状态一般通过波函数(x ,t)来表示。而对波函数的研究主要是求解非线性薛定谔方程。本文主要研究光脉冲在光纤中传输状态下的演变。 一般情况下,光脉冲信号在光纤中传输时,同时受到光纤的色散和非线性效应的影响。通过Maxwell 方程,考虑到光纤的色散和非线性效应,可以推导出光信号在光纤中的传输方程,即非线性薛定谔方程。NLSE 是非线性偏微分方程,一般很难直接求出解析解,于是通过数值方法进行求解。具体分为两大类:(1)分布有限差分法(split-step finite differencemethod ,SSFD);(2)分步傅里叶变换法(split-step Fourier transform method ,SSFT)。一般情况,在达到相同精度,由于分步傅里叶变换法采用运算速度快的快速傅里叶变换,所以相比较有限差分法运算速度快一到两个数量级。于是本文介绍分步傅里叶变换法来对光纤中光信号的传输方程,即非线性薛定谔方程进行数值求解。并通过MATLAB 软件对结果数值仿真。 非线性薛定谔方程的基本形式为: 22||t xx iu u u u =+ 其中u 是未知的复值函数. 目前,采用分步傅立叶算法(Split step Fourier Method)求解非线性薛定谔方程的数值解应用比较多。分步傅立叶方法最早是在1937年开始应用的,这种方法己经被证明是相同精度下数值求解非线性薛定愕方程最快的方法,部分原因是它采用了快速傅立叶变换算法(Fast Fourier Transform Algorithm)。基于MATLAB 科学计算软件以及MATLAB 强大的符号计算功能,完全可以实现分步傅立叶数值算法来对脉冲形状和频谱进行仿真。 一般情况下,光脉冲沿光纤传播时受到色散和非线性效应的共同作用,假设当传输距离 很小的时候,两者相互独立作用,那么,根据这种思想可建立如下分步傅立叶数值算法的数 学模型: 把待求解的非线性薛定谔方程写成以下形式: ??()U D N U z ?=+? (I ) (II )

MATLAB 微分代数方程解法Microsoft Word 文档

微分代数方程(DAE)的Matlab解法 所谓微分代数方程,是指在微分方程中,某些变量满足某些代数方程的约束。假设微分方程的更一般形式 可以写成 前面所介绍的ODEs数值解法主要针对能够转换为一阶常微分方程组的类型,故DAE就无法使用前面介绍的常微分方程解法直接求解,必须借助DAE的特殊解法。 其实对于我们使用Matlab求解DAE时,却没有太大的改变只需增加一个Mass参数即可。描述f(t,x)的方 法和普通微分方程完全一致。 注意:ode15i没法设置Mass属性,换句话说除了ode15i外其他ode计算器都可以求解DAEs问题1.当M(t,y)非奇异的时候,我们可以将微分方程等效的转换为y'=inv(M)*f(t,y),此时就是一个普通的ODE(当 然我们可以将它当成DAEs处理),对任意一个给定的初值条件都有唯一的解 2.当m(t,y)奇异时,我们叫它为DAEs(微分代数方程),DAEs问题只有在同时提供状态变量初值y0和状态变量一阶导数初值py0,且满足M(t0,y0)*yp0=f(t0,y0)时才有唯一解,假如不满足上面的方程,DAEs解算器会将提供的y0和py0作为猜测初始值,并重新计算与提供初值最近的封闭初值 3.质量矩阵可是一个常数矩阵(稀疏矩阵),也可以是一个自定义函数的输出。但是ode23s只能求解Mass 是常数的DAEs 4.对于Mass奇异的DAEs问题,特别是设置MassSingular为yes时,只能ode15s和ode23t解算器 5.对于DAE我们还有几个参数需要介绍 a.Mass:质量矩阵,不说了,这个是DAE的关键,后面看例子就明白了 b.MStateDependence:质量矩阵M(t,y)是否是y的函数,可以选择none|{weak}|strong,none表示M与 y无关,weak和strong都表示与y相关 c.MvPattern:注意这个必须是稀疏矩阵,S(i,j)=1表示M(t,y)的第i行中任意元素都与第j个状态变量yi有 关,否则为0 d.MassSingular:设置Mass矩阵是否奇异,当设置为yes时,只能使用ode15s和ode23t e.InitialSlope:状态变量的一阶导数初值yp0,和y0具有相同的size,当使用ode15s和ode23t时,该属 性默认为0 下面我们以实例说明,看下面的例子,求解该方程的数值解 【解】 真是万幸,选取状态变量和求状态变量的一阶导数等,微分方程转换工作,题目已经帮我们完成。 可是细心的网友会发现,最后一个方程不是微分方程而是一个代数方程(这就是为什叫DAE的原因),其实 我们可以将它视为对三个状态变量的约束。 (1)用矩阵形式表示出该DAEs

薛定谔方程

薛定谔方程(Schr?dinger equation)是一个由奥地利物理学家薛定谔在1926年描述量子力学中波函数的运动方程[1],被认为是量子力学的奠基理论之一。 薛定谔方程主要分为含时薛定谔方程与不含时薛定谔方程。含时薛定谔方程相依于时间,专门用来计算一个量子系统的波函数,怎样随着时间演变。不含时薛定谔方程不相依于时间,可以计算一个定态量子系统,对应于某本征能量的本征波函数。波函数又可以用来计算,在量子系统里,某个事件发生的概率幅。而概率幅的绝对值的平方,就是事件发生的概率密度。 薛定谔方程的解答,清楚地描述量子系统里,量子尺寸粒子的统计性量子行为。量子尺寸的粒子包括基本粒子,像电子、质子、正电子、等等,与一组相同或不相同的粒子,像原子核。 薛定谔方程可以转换为海森堡的矩阵力学,或费曼的路径积分表述 (path integral formulation) 。薛定谔方程是个非相对论性的方程,不能够用于相对论性理论。海森堡表述比较没有这么严重的问题;而费曼的路径积分表述则完全没有这方面的问题。 目录 [隐藏] ? 1 含时薛定谔方程 ? 2 不含时薛定谔方程 ? 3 历史背景与发展 ? 4 含时薛定谔方程导引 o 4.1 启发式导引 ? 4.1.1 假设 ? 4.1.2 波函数以复值平面波来表达波函数 o 4.2 薛定谔的导引 ? 5 特性 o 5.1 线性方程 ? 5.1.1 证明 o 5.2 实值的本征态 o 5.3 幺正性 ? 5.3.1 证明 o 5.4 完备基底 ? 6 相对论性薛定谔方程 ?7 解析方法 ?8 实例 o8.1 自由粒子 o8.2 一维谐振子 o8.3 球对称位势 ?8.3.1 角部分解答

matlab-解方程

1、解方程 最近有多人问如何用matlab解方程组的问题,其实在matlab中解方程组还是很方便的,例如,对于代数方程组Ax=b(A为系数矩阵,非奇异)的求解,MA TLAB中有两种方法: (1)x=inv(A)*b —采用求逆运算解方程组; (2)x=A —采用左除运算解方程组。 例: x1+2x2=8 2x1+3x2=13 >>A=[1,2;2,3];b=[8;13]; >>x=inv(A)*b x = 2.00 3.00 >>x=A x = 2.00 3.00; 即二元一次方程组的解x1和x2分别是2和3。 对于同学问到的用matlab解多次的方程组,有符号解法,方法是:先解出符号解,然后用vpa(F,n)求出n 位有效数字的数值解.具体步骤如下: 第一步:定义变量syms x y z ...; 第二步:求解[x,y,z,...]=solve('eqn1','eqn2',...,'eqnN','var1','var2',...'varN'); 第三步:求出n位有效数字的数值解x=vpa(x,n);y=vpa(y,n);z=vpa(z,n);...。 如:解二(多)元二(高)次方程组: x^2+3*y+1=0 y^2+4*x+1=0 解法如下: >>syms x y; >>[x,y]=solve('x^2+3*y+1=0','y^2+4*x+1=0'); >>x=vpa(x,4); >>y=vpa(y,4); 结果是: x = 1.635+3.029*i 1.635-3.029*i -.283 -2.987 y = 1.834-3.301*i 1.834+3.301*i -.3600 -3.307。 二元二次方程组,共4个实数根;

非线性薛定谔方程的孤子解和怪波解

非线性薛定谔方程的孤子解和怪波解 摘要:光纤中光波的传输模型一直是当前研究的热点理论模型之一,从非线性薛定谔方程到金格堡-朗道方程,都试图对其进行更好的阐释,其次对于非线性动力学系统中,非线性薛定谔方程的解有呈现出非常多有趣的特征,对于其中特定解的研究能够让我们了解脉冲演化的本质,所以本文主要从孤子解的传输入手,并且简单介绍了怪波解的解形式。 薛定谔方程又称薛定谔波动方程,是量子力学的一个基本方程,同时又是量子力学的基本假设之一,由奥地利物理学家薛定谔1926年在《量子化就是本征值问题》中提出的,它在量子力学中的地位非常重要,相当于牛顿定律对于经典力学一样。 随着人们对世界的不断探索,非线性现象逐渐走进人们的视野,这种现象一般大都用非线性偏微分方程的数学模型来描述,显然线性方程已经不能满足人们的需求。 1973年,Hasegawa从含有非线性项的色散方程中推导出了非线性薛定谔方程。非线性薛定谔方程(NLS)是普适性很强的一个基本方程,最简单的形式是: 其中为常数。因为这个方程在几乎所有的物理分支及其他科学领域得到了广泛的应用,如超导,光孤子在光纤中传播,光波导,等离子体中的Langnui波等,所以许多学者对此方程的研究投入了很大的热情,至今还在生机勃勃的向前发展着。 1 分步傅里叶法计算演化过程 对于处理非线性性薛定谔方程,常用的数值仿真方式为分步傅里叶方法,为了简单起见,只考虑二阶色散和自相位调制,不考虑高阶色散、自陡以及四波混频等高阶非线性效应。上述方程中做 2 β为二阶色散,γ表示Kerr效应系数,g和α分别代表光纤中的增益和损耗。对上述方程转化到频域,先不考虑增益和损耗。可以得到 2 k k k k k dA i A i a a dz βγ =?+F. 其中2 2 2 k i β β ?=Ω 令() exp k k A B i z β =?可以得到 () 2exp k k k k dB i a a i z dz γβ =-? F 以上方程可以用四阶龙格库塔直接求解,但是速度较慢,所以我们需要做差分处理。 ()() ()()() 2 exp k k k k k B z z B z i a z a z i z z γβ +?- =-? ? F 再利用() exp k k A B i z β =?可以得到 ()()()() ()()() 2 2 exp exp exp k k k k k k k k A z z A i a z a z z i z a z i a z z i z γβ γβ ?? +?=+??? ?? ?? ?? ≈????? ?? F F 然后做傅里叶反变换就可以得到最终的结果 ()()()() 2 1exp exp - k k k k a z z a z i a z z i z γβ ?? +?=????? ?? F F

薛定谔方程及其解法

关于薛定谔方程 一. 定义及重要性 薛定谔方程(Schrdinger equation )是由奥地利物理 学家薛定谔提出的量子力学中的一个基本方程,也是量子力学的一个基本假定,其正确性只能靠实验来检验。是将物质波的概念和波动方程相结合建立的二阶偏微分方程,可描述微观粒子的运动,每个微观系统都有一个相应的薛定谔方程式,通过解方程可得到波函数的具体形式以及对应的能量,从而了解微观系统的性质。 薛定谔方程是量子力学最基本的方程,亦是量子力学的一个基本假定,它的正确性只能靠实验来检验。 二. 表达式 三. 定态方程 ()()2 22V r E r m ηψψ+??-?=???? 所谓势场,就是粒子在其中会有势能的场,比如电场就是一个带电粒子的势场;所谓定态,就是假设波函数不随时间变化。 其中,E 是粒子本身的能量;v(x ,y ,z)是描述势场的函数,假设不随时间变化。

2 2 22222z y x ?? ????++=? 可化为d 0)(222=-+ψψ v E h m dx 薛定谔方程的解法 一. 初值解法;欧拉法,龙格库塔法 二. 边值解法;差分法,打靶法,有限元法 龙格库塔法(对欧拉法的完善) 给定初值问题 ).()()((3) ) ,() ,() ( ,,(2) )() ,( 3112122111021h O t y t y hk y h t f k y t f k k c k c h y y y c c a y b t a y t f dt dy i i i i i i i i =-???????++==++==????? =≤≤=++的局部截断误差使以下数值解法 的值及确定常数ββα βα

matlab实验报告--求代数方程的近似根

数学实验报告 实验序号: 第二次 日期:2012 年 5月10日 班级 0920861 小组成员姓名 徐易斌;王勇 王康 学号 30 12 33 实验名称:求代数方程的近似根 问题背景描述: 求代数方程0)(=x f 的根是最常见的数学问题之一,当)(x f 是一次多项式时,称0)(=x f 为线性方程,否则称之为非线性方程. 当0)(=x f 是非线性方程时,由于)(x f 的多样性,尚无一般的解析解法可使用,但如果对任意的精度要求,能求出方程的近似根,则可以认为求根的计算问题已经解决,至少能满足实际要求. 本实验介绍一些求方程实根的近似值的有效方法,要求在使用这些方法前先确定求根区间],[b a ,或给出某根的近似值0x .

实验目的: 1. 了解代数方程求根求解的四种方法:对分法、迭代法、牛顿切线法 2. 掌握对分法、迭代法、牛顿切线法求方程近似根的基本过程。 实验原理与数学模型: 1.对分法 对分法思想:将区域不断对分,判断根在某个分段内,再对该段对分,依此类推,直到满足精度为止.对分法适用于求有根区间内的单实根或奇重实根. 设)(x f 在],[b a 上连续,0)()(,()0f b <或()0f a <,()0f b >.则根据连续函数的介值定理,在),(b a 内至少存在一点 ξ,使()0f ξ=. 下面的方法可以求出该根: (1) 令02 a b x +=,计算0()f x ; (2) 若0()0f x =,则0x 是()0f x =的根,停止计算,输出结果0x x =. 若 0()()0f a f x ?<,则令1a a =,10b x =,若0()()0f a f x ?>,则令10a x =,1b b =;11 12 a b x +=. ……,有k a 、k b 以及相应的2 k k k a b x += . (3) 若()k f x ε≤ (ε为预先给定的精度要求),退出计算,输出结果2 k k k a b x +=; 反之,返回(1),重复(1),(2),(3). 以上方法可得到每次缩小一半的区间序列{[,]}k k a b ,在(,)k k a b 中含有方程的根. 当区间长k k b a -很小时,取其中点2 k k k a b x += 为根的近似值,显然有 1111111 ()()()2222 k k k k k k x b a b a b a ξ--+-≤-=??-==- 以上公式可用于估计对分次数k . 2. 迭代法 1) 迭代法的基本思想: 由方程()0f x =构造一个等价方程

薛定谔方程与它的基本意义

薛定谔方程 维基百科,自由的百科全书 跳转到:导航, 搜索 汉漢▼ 量子力学 不确定性原理 入门·数学表述显示▼背景 经典力学·旧量子论·干涉 哈密顿量·狄拉克符号 显示▼基本概念 量子态·波函数·态矢量 态叠加原理·波粒二象性 量子测量·不确定性原理 泡利不相容原理·量子缠结 量子脱散·量子隧穿效应 埃伦费斯特定理 显示▼实验 双缝实验·薛定谔的猫 戴维孙-革末实验 施特恩-格拉赫实验 贝尔不等式实验 波普尔实验·量子擦除器 显示▼构想

薛定谔绘景·海森堡绘景 相互作用绘景·矩阵力学 求和的历史 显示▼方程 薛定谔方程·泡利方程 克莱因-高登方程 狄拉克方程 显示▼量子力学诠释 哥本哈根诠释·Ensemble 隐变量·交易诠释 多世界诠释·一致性历史 系综诠释·量子逻辑 显示▼进阶理论 量子场论·量子引力 万有理论 显示▼科学家 普朗克、玻尔、薛定谔、海森堡 泡利、德布罗意、埃伦费斯特、玻姆 玻恩、爱因斯坦、冯?诺伊曼 费曼、狄拉克、维恩、埃弗里特 索末菲、其他 本模板:查看? 讨论? 编辑? 历史 薛定谔方程是由奥地利物理学家薛定谔提出的量子力学中的一个基本方程[1],也是量子力学的一个基本假定,其正确性只能靠实验来检验。就好像牛顿定律在经典力学的地位,薛定谔方程在量子力学里占有中心的地位。 薛定谔方程主要分为含时薛定谔方程与不含时薛定谔方程。含时薛定谔方程相依于时间,专门用来计算一个量子系统的波函数,怎样随着时间演变。不含时薛定谔方程不相依于时间,可以计算一个定态量子系统,对应于某本征能量的本征波函数。波函数又可以用来计算,在量子系统里,某个事件发生的几率幅。而几率幅的绝对值的平方,就是事件发生的几率密度。薛定谔方程的解答,清楚地描述量子系统里,量子尺寸粒子的统计性量子行为。量子尺寸的

用Matlab解代数方程

一般的代数方程 函数solve用于求解一般代数方程的根,假定S为符号表达式,命令solve (S)求解表达式等于0的根,也可以再输入一个参数指定未知数。例: syms a b c x S=a*x^2+b*x+c; solve(S) ans= [ 1/2/a*(-b+(b^2-4*a*c)^(1/2))] [ 1/2/a*(-b-(b^2-4*a*c)^(1/2))] b=solve(S,b) b = -(a*x^2+c)/x

线性方程组 线性方程组的求解问题可以表述为:给定两个矩阵A和B,求解满足方程AX=B或XA=B的矩阵X。方程AX=B的解用X=A\B或X=inv (A)*B表示;方程XA=B 的解用X=B/A或X=B*inv (A)表示。不过斜杠和反斜杠运算符计算更准确,占用内存更小,算得更快。

线性微分方程 函数dsolve用于线性常微分方程(组)的符号求解。在方程中用大写字母D表示一次微分,D2,D3分别表示二阶、三阶微分,符号D2y相当于y关于t的二阶导数。 函数dsolve的输出方式 格式说明 y=dsolve(‘Dyt=y0*y’) 一个方程,一个输出参数[u,v]=dsolve(‘Du=v’,’Dv=u’) 两个方程,两个输出 参数 S=dsolve(‘Df=g’,’Dg=h’,’Dh=-2*f ‘)方程组的解以S.f S.g S.h结构数组的形式输出

例1 求 2 1u dt du += 的通解. 解 输入命令:dsolve('Du=1+u^2','t') 结 果:u = tg(t-c) 例2 求微分方程的特解. ???íì===++15 )0(',0)0(029422 y y y dx dy dx y d 解输入命令: y=dsolve('D2y+4*Dy+29*y=0','y(0)=0,Dy(0)=15','x') 结果为: y =3e -2x sin (5x )

薛定谔方程及其解法

一. 定义及重要性 薛定谔方程(Schrdinger equation )是由奥地利物理学家薛定谔提出的量子力学中的一个基本方程,也是量子力学的一个基本假定,其正确性只能靠实验来检验。是将物质波的概念和波动方程相结合建立的二阶偏微分方程,可描述微观粒子的运动,每个微观系统都有一个相应的薛定谔方程式,通过解方程可得到波函数的具体形式以及对应的能量,从而了解微观系统的性质。 薛定谔方程是量子力学最基本的方程,亦是量子力学的一个基本假定,它的正确性只能靠实验来检验。 二. 表达式 三. 定态方程 ()()2 22V r E r m ηψψ+??-?=???? 所谓势场,就是粒子在其中会有势能的场,比如电场就是一个带电粒子的势场;所谓定态,就是假设波函数不随时间变化。 其中,E 是粒子本身的能量;v(x ,y ,z)是描述势场的函数,假设不随时间变化。 可化为 薛定谔方程的解法 一. 初值解法;欧拉法,龙格库塔法

二.边值解法;差分法,打靶法,有限元法 龙格库塔法(对欧拉法的完善) 给定初值问题 有限元方法 有限元的概念早在几个世纪前就已产生并得到了应用,例如用多边形(有限个直线单元)逼近圆来求得圆的周长,但作为一种方法而被提出,则是最近的事。有限元法最初被称为矩阵近似方法,应用于航空器的结构强度计算,并由于其方便性、实用性和有效性而引起从事力学研究的科学家的浓厚兴趣。经过短短数十年的努力,随着计算机技术的快速发展和普及,有限元方法迅速从结构工程强度分析计算扩展到几乎所有的科学技术领域,成为一种丰富多彩、应用广泛并且实用高效的数值分析方法。有限元方法与其他求解边值问题近似方法的根本区别在于它的近似性仅限于相对小的子域中。 有限元分析的基本概念是用较简单的问题代替复杂问题后再求解。它将求解域看成是由许多称为有限元的小的互连子域组成,对每一单元假定一个合适的(较简单的)近似解,然后推导求解这个域总的满足条件,从而得到问题的解。这个解不是准确解,而是近似解,因为实际问题被较简单的问题所代替。不同于求解(往往是困难的)满足整个定义域边界条件的函数的Rayleigh Ritz法,有限元法将函数定义在简单几何形状(如二维问题中的三角形或任意四边形)的单元域上(分片函数),且不考虑整个定义域的复杂边界条件,这是有限元法优于其他近似方法的原因之一。

§16.3 一维定态薛定谔方程的建立和求解举例

§16.3 一维定态薛定谔方程的建立和求解举例 (一)一维运动自由粒子的薛定谔方程 波函数随时间和空间而变化的基本方程,是薛定谔于1926年提出的,称为薛定谔波动方程,简称波动方程或薛定谔方程,它成为量子力学的基本方程. 将(16.2.14)式分别对t 和x 求导,然后从这两式消去E 、p 、和ψ,便可得到一维运动自由粒子的薛定谔方程: ψ-=?ψ?)/iE (t 即ψ=?ψ?E t i (16.3.1) ψ=?ψ ?22)/ip (x 2 ψ=ψ ?-2222p ????? ?????<<的薛定谔方程自由粒子轴运动的沿)c x (v 方程(16.3.3)中不含有能量E 和动量p ,表明此方程是不受E 和p 的数值限制的普遍方程. 请同学们自己试一试,如果上述波函数不用复数表式(16.2.14),改用类似于(16.2.1)式的余弦函数或正弦函数表式,就不会得到合乎要求的薛定谔方程(16.3.3)式?. 这薛定谔方程不是根据直接实验结果归纳而得,也不是由经典波动理论或其他理论推导出来的,它是在物质波假设的基础上,参照经典波动方程而建立起来的.薛定谔方程在微观领域中得到广泛的应用,它推导出来的结果,都与相关实验结果符合得很好,这才是薛定谔方程正确反映微观领域客观规律的最有力的证明. (二)一维运动自由粒子的定态薛定谔方程?? 上述薛定谔方程(16.3.3)是偏微分方程,从此方程可解出波函数ψ(x ,t ).在量子力学中最重要的解,是可把波函数ψ(x,t )分离成空间部分u (x )和时间部分f (t )两函数的乘积的特解,即 〔一维运动自由粒子的定态波函数〕 ψ(x,t )=u (x )f (t )(16.3.4) 将此式代入(16.3.3)式得: 22 2dx u d )t (f )m 2/(dt df )x (u i -= 两边除以ψ=uf 得: 22 2dx u d u 1)m 2/(dt df f 1i -= 此式左边是时间t 的函数,右边是坐标x 的函数.已知t 与x 是互相独立的自变量,左右两边相等,必须是两边都等于同一常量E ,即 ? 郭敦仁《量子力学初步》16—17页,人民教育出版社1978年版. ? 郭敦仁《量子力学初步》21—22页,人民教育出版社1978年版. ? 周世勋编《量子力学》32—33页,上海科学技术出版社1961年版.

非线性薛定谔方程数值解的MATLAB仿真

admin [非线性薛定谔方程数值解的MATLAB仿真]——利用分步快速傅里叶变换对光纤中光信号的传输方程进行数值求解

1、非线性薛定谔方程 非线性薛定谔方程(nonlinear Schrodinger equation ,NLSE)是奥地利物理学家薛定谔于1926 年提出的,应用在量子力学系统中。由于量子力学主要研究粒子的动力学运动状态,所以不能运用牛顿力学公式来表示。通常在量子力学中,研究系统的状态一般通过波函数(x ,t)来表示。而对波函数的研究主要是求解非线性薛定谔方程。本文主要研究光脉冲在光纤中传输状态下的演变。 一般情况下,光脉冲信号在光纤中传输时,同时受到光纤的色散和非线性效应的影响。通过Maxwell 方程,考虑到光纤的色散和非线性效应,可以推导出光信号在光纤中的传输方程,即非线性薛定谔方程。NLSE 是非线性偏微分方程,一般很难直接求出解析解,于是通过数值方法进行求解。具体分为两大类:(1)分布有限差分法(split-step finite differencemethod ,SSFD);(2)分步傅里叶变换法(split-step Fourier transform method ,SSFT)。一般情况,在达到相同精度,由于分步傅里叶变换法采用运算速度快的快速傅里叶变换,所以相比较有限差分法运算速度快一到两个数量级。于是本文介绍分步傅里叶变换法来对光纤中光信号的传输方程,即非线性薛定谔方程进行数值求解。并通过MATLAB 软件对结果数值仿真。 非线性薛定谔方程的基本形式为: 22||t xx iu u u u =+ 其中u 是未知的复值函数. 目前,采用分步傅立叶算法(Split step Fourier Method)求解非线性薛定谔方程的数值解应用比较多。分步傅立叶方法最早是在1937年开始应用的,这种方法己经被证明是相同精度下数值求解非线性薛定愕方程最快的方法,部分原因是它采用了快速傅立叶变换算法(FastFourier Transform Algorithm)。基于MATLAB 科学计算软件以及MATLAB 强大的符号计算功能,完全可以实现分步傅立叶数值算法来对脉冲形状和频谱进行仿真。 一般情况下,光脉冲沿光纤传播时受到色散和非线性效应的共同作用,假设当传输距离 很小的时候,两者相互独立作用,那么,根据这种思想可建立如下分步傅立叶数值算法的数 学模型: 把待求解的非线性薛定谔方程写成以下形式: ??()U D N U z ?=+? (I ) (II )

相关文档
相关文档 最新文档