非线性方程线性化

合集下载

(整理)计量经济学第四章非线性回归模型的线性化

(整理)计量经济学第四章非线性回归模型的线性化

(整理)计量经济学第四章⾮线性回归模型的线性化第四章⾮线性回归模型的线性化以上介绍了线性回归模型。

但有时候变量之间的关系是⾮线性的。

例如 y t = α 0 + α11βt x + u t y t = α 0 t x e 1α+ u t上述⾮线性回归模型是⽆法⽤最⼩⼆乘法估计参数的。

可采⽤⾮线性⽅法进⾏估计。

估计过程⾮常复杂和困难,在20世纪40年代之前⼏乎不可能实现。

计算机的出现⼤⼤⽅便了⾮线性回归模型的估计。

专⽤软件使这种计算变得⾮常容易。

但本章不是介绍这类模型的估计。

另外还有⼀类⾮线性回归模型。

其形式是⾮线性的,但可以通过适当的变换,转化为线性模型,然后利⽤线性回归模型的估计与检验⽅法进⾏处理。

称此类模型为可线性化的⾮线性模型。

下⾯介绍⼏种典型的可以线性化的⾮线性模型。

4.1 可线性化的模型⑴指数函数模型y t = t t ubx ae + (4.1)b >0 和b <0两种情形的图形分别见图4.1和4.2。

显然x t 和y t 的关系是⾮线性的。

对上式等号两侧同取⾃然对数,得Lny t = Lna + b x t + u t (4.2)令Lny t = y t *, Lna = a *, 则y t * = a * + bx t + u t (4.3) 变量y t * 和x t 已变换成为线性关系。

其中u t 表⽰随机误差项。

010203040501234XY 1图4.1 y t =tt u bx ae+, (b > 0) 图4.2 y t =t+, (b < 0)⑵对数函数模型y t = a + b Ln x t+ u t(4.4)b>0和b<0两种情形的图形分别见图4.3和4.4。

x t和y t的关系是⾮线性的。

令x t* = Lnx t, 则y t = a + b x t* + u t(4.5)变量y t和x t* 已变换成为线性关系。

图4.3 y t = a + b Lnx t + u t , (b > 0) 图4.4 y t = a + b Lnx t + u t , (b < 0)⑶幂函数模型y t= a x t b t u e(4.6) b取不同值的图形分别见图4.5和4.6。

《控制工程》传递函数

《控制工程》传递函数

1.系统由单变量非线性函数所描述
df 1 d2 f Dx + Dx 2 f ( x) f ( x0 ) + dx x 2! dx 2 0 x0 1 d3 f + 3! dx 3 D x 3 + LL f ( x0 ) +
y= f (x) y(t):输出 x(t):输入 df Dx dx x 0 df Dx dx x 0
1、机械平移系统(即m、c、k系统)
第二章 传递函数
原则:根据牛二定律列写相应的动力学方程
y(t)
质量m
m
Fm m(t ) y
y2
弹簧k
y1
k
压弹簧:Fk=k(y1-y2) 拉弹簧: Fk=k(y2-y1)
压:说明y1要大于y2,这才有压的效果 其中y1与y2之差为弹簧的净形变量
阻尼c
y1 c y2
( ( an X 0n) (t ) + an1 X 0n 1) (t ) + … + a0 X 0 (t )
X0(t)——系统输出
bm X i( m) (t ) + bm1 X i( m1) + … + b0 X i (t )
Xi(t)——系统输入
3.根据系统微分方程对系统进行分类 1)线性系统:方程只包含变量X0(t)、Xi(t)的各阶导数 a.线性定常系统:an…a0 ;bm…b0为常数 b.线性时变系统:an…a0 ;bm…b0为时间的函数
第二章 传递函数
一、定义
定义:对于单输入、单输出线性定常系统,当输入 输出的初始条件为零时,其输出量的拉氏变 换与输入量的拉氏变换之比。 设线性定常系统的微分方程为:
a n x(0n)( t ) + a n 1 x(0n 1)( t ) + L + a0 x0( t )

非线性方程线性化的两个条件

非线性方程线性化的两个条件

非线性方程线性化的两个条件
一,小偏差理论和小信号理论。

在工程实践中,控制系统都有一个额定的工作状态和工作点,当变量在工作点附近小范围的变化事,满足这个条件。

只有在这个情况下转化之后的误差才足够小。

二,在工作点附近存在各阶倒数和偏导数
一元函数,一个y对应一个x,导数只有一个。

二元函数,一个z对应一个x和一个y,那就有两个导数了,一个是z对x的导数,一个是z对y的导数,称之为偏导,即输入与输出的导数都存在。

这个是能够转化的条件。

浅谈非线性回归模型的线性化

浅谈非线性回归模型的线性化

浅谈非线性回归模型的线性化广东省惠州市惠阳区崇雅中学高中部 卢瑞勤(516213)回归分析在各个领域中都有十分重要的作用,比如:在财务中可以用回归分析进行财务预测;在医疗检验中可以用回归分析进行病理预报等等。

高中新课标教材就在《必修3》和《选修2-3》中分别增加了《线性回归》和《回归分析》的内容,介绍了求线性回归方程的方法。

但在实际问题中,变量间的关系并非总是线性关系,本文结合本人的教学实践,对教材中的这两部分内容进行适当延伸,谈谈对一些可线性化的非线性回归模型的线性化问题,供各位同行在教学时参考。

一、什么是可线性化的非线性回归模型线性回归模型的基本特征是预报变量可以表示成解释变量和一个系数相乘的和,即预报变量y 可以表示成解释变量i x (i =1,2,3,……)的如下形式:0112233y a a x a x a x =++++,其中变量ix 是以其原型(而不是以ni x 或其它)的形式出现,变量y 是各变量i x 的线性函数。

而有些回归模型不具备这个特点,但是可以通过适当的代数变换转化成这种形式,我们称这类回归模型为可线性化的回归模型。

在本文中,我们只讨论只有一个解释变量可线性化的非线性回归模型的线性化。

二、非线性回归模型的线性化的基本思路非线性回归模线性化的基本思路是:由已知数据,确定解释变量和预报变量,作出散点图,根据经验,确定回归曲线的类型,然后作适当的代数变换,若变换后散点图体现较好的线性关系,即可将其化成线性形式求解,最后还原到原来的回归曲线。

如果回归曲线可用多种形式表示,可以各自将其线性化后求解,再用相关系数2R 进行拟合效果分析,2R 越大,拟合效果越好,所求的回归方程也就越精确。

三、非线性回归模型的线性化的常用方法可线性化的非线性回归模型有以下几种常见类型:(1)双曲线型,其形式为1a b y x =+,其变换为1y y '=, 1x x'=,变换后的形式为y b ax ''=+ (2)幂函数型,其形式为by ax = ,可以变形为ln ln ln y a b x =+,作变换ln y y '= ,ln x x '= ,变换后的形式为y a bx ''=+(3)指数函数型,其形式为bxy ae = ,以变形为ln ln y a bx =+,作变换ln y y '=,ln a a '= ,变换后的形式为y a bx ''=+(4)对数函数型,其形式为ln y a b x =+,作变换ln x x '=,变换后的形式为y a bx '=+ 下面以高中新课标数学教材《选修2-3》一道习题为例加以说明【例】在某地区的一段时间内观察到的不小于某震级x 的地震个数y 数据如下表,试建立回归方程表述二者之间的关系。

非线性方程线性化

非线性方程线性化
7
1.0066 err = 0.0066 k= 5 y= 1.3270e-004 p1 = 1.0033 err = 0.0033 k= 6 y= 3.3211e-005 p1 = 1.0017 err = 0.0017 k= 7 y= 8.3074e-006 p1 = 1.0008 err = 8.3157e-004 k= 8 y= 2.0774e-006 p1 = 1.0004 err = 4.1596e-004 k= 9 y= 5.1943e-007 p1 = 1.0002 err = 2.0802e-004 k= 10 y=
3
6
function y=f(x); y=x^3-3*x+2; 再用 M-文件写一个名为 df.m 的文件定义函数的微商 df ( x) 3x 2 3 。 function y=df(x) y=3*x^2-3; 然后再 MATLAB 的命令窗口输入: newton('f','df',1.2,10^(-6),10) 结果为: p0 = 1.2000 ans = 0.1280 p1 = 1.1030 err = 0.0970 k= 1 y= 0.0329 p1 = 1.0524 err = 0.0507 k= 2 y= 0.0084 p1 = 1.0264 err = 0.0260 k= 3 y= 0.0021 p1 = 1.0133 err = 0.0131 k= 4 y= 5.2963e-004 p1 =
二:实验内容所需的基本知识
二分法的原理:
设 f ( x) 在 [a, b] 上 连 续 , 且 f (a) f (b) 0 。 则 [a, b] 为 方 程 区 间 ( 设 只 有 唯 一 根 ) 。 取中 点

牛顿拉夫逊法

牛顿拉夫逊法

并将雅可比矩阵分块,把每个2 2 阶子

如MH
ij ij
Nij H ij
Lij
Rij
N ij S ij

作为分块矩阵的
元素,则按节点号顺序而构成的分块雅
可比矩阵将和节点导纳矩阵具有同样的
稀疏结构,是一个高度稀疏的矩阵。
(4) 和节点导纳矩阵具有相同稀疏结 构的分块雅可比矩阵在位置上对称,但 由于H ij H ji , Nij N ji , M ij M ji , Lij L ji , 所以雅可比矩阵不是对称阵。
由上式根据初值 x(0) 可求得第一次迭 代的修正量
x(0) [ f (x(0) )]1 f (x(0) ) (1-25)
将 x(0) 和 x(0) 相加,得到变量的第一次 改进值 x(1) 。
因此,应用牛顿法求解的迭代格式为
f (x(k ) )x(k ) f (x(k) )
(1-26)
x(k1) x(k ) x(k )
(2)修正xi(1)= xi(0)+ △xi(0) ,算出△f,J中各元素,代入 上式方程组,解出△ xi(1) ;
直至 f (x(k) ) 1 或 x(k) 2
注意:xi的初值要选得接近其精确值,否则将不迭代。
及 2n 1个,在 PV 节点比例不大时,两 者的方程式数目基本接近 2n 1个。
(2) 雅可比矩阵的元素都是节点电压 的函数,每次迭代,雅可比矩阵都需要 重新形成。
(3) 从雅可比阵非对角元素的表示式
可见,某个非对角元素是否为零决定于
相应的节点导纳矩阵元素 Yij 是否为零。
如将修正方程式按节点号的次序排列,
线性 迭代公式:
xk
1
xk

非线性方程(组)的数值解法——牛顿法、弦切法

非线性方程(组)的数值解法——牛顿法、弦切法

需要求导数!
9
简化的Newton法
简化的 Newton 法
基本思想:用 f’(x0) 替代所有的 f’(xk)
xk 1
f ( xk ) xk f '( x0 )
线性收敛
10
Newton下山法
Newton下山法
基本思想:要求每一步迭代满足下降条件
f x k 1 f x k
非线性方程组的数值解法牛顿法弦切法非线性方程组数值解法非线性方程数值解法非线性方程的数值解法非线性方程组迭代解法非线性方程组的解法非线性方程组解法微分方程数值解法常微分方程的数值解法微分方程数值解法pdf
计算方法
第七章
非线性方程(组)的数值解法
—— Newton 法 —— 弦截法、抛物线法
1
本讲内容
13
举例
例:求 x4 - 4x2 + 4=0 的二重根 x* 2 (1) 普通 Newton 法
x2 2 1 ( x ) x 4x
(2) 改进的 Newton 法 x2 2 2 ( x) x
2x
(3) 用 Newton 法解 (x) = 0
x ( x 2 2) 3 ( x) x x2 2
f [ xk , xk 1 , xk 2 ]( x xk )( x xk1 )
xk 1 xk
2 f ( xk )
2 4 f ( xk ) f [ xk , xk 1 , xk 2 ]
f [ xk , xk1 ] f [ xk , xk1 , xk2 ]( xk xk1 )
f ( x) ( x) x f '( x )
1 '( x*) 1 m

非线性化模型的线性化方法总结

非线性化模型的线性化方法总结

非线性化模型的线性化方法总结在学习计量经济学过程中,我们所接触的经济学模型不仅仅是线性的,许多实际经济活动中的经济模型都是非线性的,例如恩格尔曲线表现为幂函数曲线形式,菲利普斯曲线表现为双曲线形式,下面介绍三种非线性模型的转化方法,分别适应于不同的模型:一、直接置换法:直接替换模型中原有的非线性变量。

适用模型如下:(1)倒数(双曲线)模型:0111u Q P ββ=++,可以用1Y Q =,1X P=来置换,变为01Y X u ββ=++(2)多项式模型:2012Y t t u βββ=+++,可以用212,X t X t ==来置换变为: 0122Y X X u βββ=+++(3)对数模型: 01ln Y X u ββ=++,将1ln X X=带入原式进行置换,得到:011Y X u ββ=++二、函数变换法:通过函数变化,如取对数、移项等方式对原模型进行变形以得到线性化模型:12(,,,)k Y f X X X u =⋅⋅⋅+(1) 幂函数模型:u Q AK L e αβ=,方程两边取对数,得到:ln ln ln ln Q A K L u αβ=+++再对上式进行置换。

(2)指数函数模型:Q uC ab e =,方程两边取对数得到:ln ln ln C a Q b u =++,再对上式进行置换。

三、级数展开法:如CES 函数112()p p u pQ A K L e δδ---=+,方程两边取对数得到:121ln ln ln()p p Q A K L u pδδ--=-++,将式中12ln()p p K L δδ--+在p=0处展开泰勒级数,取关于p 的线性项,即得到一个线性近似式,如取0阶、1阶、2阶项,可得:212121ln ln ln ln [ln()]2K Y A K L p Lδδδδ=++- (备注:无法线性化的模型一般为:12(,,,)k Y f X X X u =⋅⋅⋅+,其中12(,,,)k f X X X ⋅⋅⋅为非线性函数)。

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

x0 的选取,若 x0 偏离 x* 简单的算法,它的优点是算法简单,且总是收敛的,缺点是收敛太慢,故 一般不单独将其用于求根,只用其为根求得一个较好的近似值。迭代法是一种逐次逼近法,迭代过程是个 极限过程,在用迭代法进行实际计算是,必须按精度要求控制迭代次数。并且对于收敛的迭代过程,只要 迭代足够多次,就可以是结果达到任意的精度,但有时迭代过程收敛缓慢,从而使计算量变得很大。牛顿 法实质上是一种线性化方法,就是将非线性方程线性化,以线性方程的解逐步逼近非线性方程的解。牛顿 迭代公式的收敛速度很快,但计算实践表明,当初值不够好时,Newton 法可能发散,一般可有问题的实 际背景来预测后由对分区间法求得教的初始值。
3
%p 是不动点的近似值 %err 是误差 %p(p1,p2, … ,pn) P(1)=p0; for k=2:max1 P(k)=feval('g',P(k-1)); k,err=abs(P(k)-P(k-1)) p=P(k); if(err<tol), break;end if k==max1 disp('maximum number of iteration exceeded'); end 首先在 MATLAB 命令窗口输入 fplot('[sin(x)-x^2,0]',[-5,5]);grid 回车,可得图形
end 首先在 MATLAB 命令窗口输入 fplot('[x^3-3*x+2,0]',[-2.5,2.5]);grid; 回车,得到图形
有图形可知函数 f ( x) 与 x 轴有交点,也就是说有根,并且从图中能够大致估算到根的位置。 先用 M-文件写一个名为 f.m 的文件定义函数 f ( x) x 3x 2 。
x0
1 (a b) ,检查 f (a) 与 f ( x0 ) 是否同号,若同号,说明根 x * 与 b 之间,此时 a1 x0 , b1 b ;若异 2
*
号,说明根 x 在 a 与 x 0 之间,此时 a1 a, b1 x0 ,得新区间 [a1 , b1 ] 为原区间的一半。对 [a1 , b1 ] 进行上 述过程,取中点 x1
7
1.0066 err = 0.0066 k= 5 y= 1.3270e-004 p1 = 1.0033 err = 0.0033 k= 6 y= 3.3211e-005 p1 = 1.0017 err = 0.0017 k= 7 y= 8.3074e-006 p1 = 1.0008 err = 8.3157e-004 k= 8 y= 2.0774e-006 p1 = 1.0004 err = 4.1596e-004 k= 9 y= 5.1943e-007 p1 = 1.0002 err = 2.0802e-004 k= 10 y=
x x0
f ( x0 ) ,将此根记为原方程的近似根 x1 ,然后按上式迭代计算,使形成一种新的迭代公式: f ' ( x0 ) f ( xk ) , k 0,1,2,.... f ' ( xk )
xk 1 xk
三:实验问题、方法及步骤
1、用二分法解方程 x 3 x 1 0 在区间[1.0,1.5]上的一个根。
8
1.2987e-007 ans = 1.0002
四:计算结果的分析
通过以上三种方法计算结果,我们可以看出二分法的计算精度较差,因为它只能求得一个较好的近似 值;迭代法的计算精度相对很高,它是一种逐次逼近的方法,要想求得很精确的解,只要迭代足够多次就 可得到;牛顿法的计算精度也是很高的,但是它必须能够选一个很好的初值,因为牛顿法的收敛性依赖于 初值
* *
*
动点,求 f ( x) 的零点就等价于求 ( x) 的不动点。 任取一点 x 0 代入 ( x) 求得
x1 ( x0 )
x2 ( x1 )
一般地
又将 x1 代入 ( x) 求得 如此反复迭代下去
xk 1 ( xk )
k=0,1,2,………
( x) 称为迭代函数, x ( x) 称为迭代公式。若迭代序列 {x k } 有极限,即 lim xk x * ,则称迭代方程
1 (a1 b1 ) ,检查 f (a1 ) 与 f ( x1 ) 是否同号,如此反复二分下去,即可得出一系列有 2
根 区 间 [a, b] [a1 , b1 ] [a2 , b2 ] … [a k , bk ] … , 其中 每 个 区间都是 前 一个 区 间的 一 半, 因此
解 先按照二分法的基本原理编写二分发的 MATLAB 程序(程序命名为: HalfInterval.m) , 编程如下: function root=HalfInterval(f,a,b,eps) if(nargin==3) eps=1.0e-4 end f1=subs(sym(f),findsym(sym(f)),a); f2=subs(sym(f),findsym(sym(f)),b); if(f1==0) root=a; end if(f2==0) root=b; end if(f1*f2>0) disp('两端点函数值乘积大于 0! '); return; else root=FindRoots(f,a,b,eps); end function r=FindRoots(f,a,b,eps) f_1=subs(sym(f),findsym(sym(f)),a); f_2=subs(sym(f),findsym(sym(f)),b); mf=subs(sym(f),findsym(sym(f)),(a+b)/2); if(f_1*mf>0) t=(a+b)/2; r=FindRoots(f,t,b,eps); else if(f_1*mf==0) r=(a+b)/2; else if(abs(b-a<=eps))
3
2、用迭代法求方程 sin x x 0 的一个近似值,给定初始值 x0 0.5 ,误差界为 10 。
2
5

按照迭代法的基本原理编写迭代法的 MALAB 程序(函数名为: fixpt.m) 编程如下: function[p0,k,err,p]=fixpt(g,p0,to1,max1) %g 是给定的迭代函数 %p0 是给定的初始值 %max1 是所允许的最大迭代次数 %k 是所进行的迭代次数加 1
4
3 err = 0.1052 k= 4 err = 0.0292 k= 5 err = 0.0078 k= 6 err = 0.0021 k= 7 err = 5.7408e-004 k= 8 err = 1.5525e-004 k= 9 err = 4.1975e-005 k= 10 err = 1.1350e-005 k= 11 err = 3.0688e-006 P= 0.5000 0.9589 0.8767 0.8767 ans = 0.5000 结 果 中 列 出 了 最 后 两 次 迭 代 产 生 的 xn 和 xn xn 1 。 因 为 x10 x9 3.5003 10
有图形可知函数 f ( x) 与 x 轴有交点,也就是说有根,并且从图中能够大致估算到根的位置。 先用 M-文件写一个名为 g.m 的函数。 function y=g(x); y=sin(x)/x; 然后再 MATLAB 的命令窗口输入: fixpt('g',0.5,10^(-5),20) 结果为: k= 2 err = 0.4589 k=
非线性方程线性化
一:实验目的
1、掌握用二分法解非线性方程的方法。 2、掌握用迭代法解非线性方程的方法。 3、掌握用牛顿法解非线性方程的方法。 4、学会运用 Matlab 语言解决提供的函数求解实际问题。
二:实验内容所需的基本知识
二分法的原理:
设 f ( x) 在 [a, b] 上 连 续 , 且 f (a) f (b) 0 。 则 [a, b] 为 方 程 区 间 ( 设 只 有 唯 一 根 ) 。 取中 点
6
0.8537
0.8829
0.8751
0.8772
0.8766
0.8768
0.8767
105 。 所 以
x* x10 0.876 。
3、用牛顿法求方程 x 3x 2 的近似值,给定一个初始值 p0 1.2 ,误差界为 10 。
3 6
5

按照 Newton 法的基本原理编写 Newton 法德 MATLAB 程序(函数名为 Newton.m) 编程如下: function [p1,err,k,y,]=newton(f,df,p0,delta,max1) %f是非线性函数 %df是 f的微商 %p0是初始值 %delta是给定允许误差 %max1是迭代的最大次数 %p1是牛顿法求得的方程的近似值 %err是 p0的误差估计 %k是迭代的次数 %y=f(p1) p0,feval('f',p0) for k=1:max1 p1=p0-feval('f',p0)/feval('df',p0); err=abs(p1-p0); p0=p1; p1,err,k,y=feval('f',p1) if(err<delta)|(y==0), break,end
k
xk 1 ( xk ) ,k=0,1,2,…收敛,这时 x * 显然是 x ( x) 的不动点。
牛顿(Newton) 法:
1
将非线性方程 f ( x) 0 逐步转化为某种线性方程求解。已知 f ( x) 0 的一个近似根 x 0 ,则函数 f ( x) 在 点 x 0 附近可以用一阶泰勒公式来近似, f ( x) f ( x0 ) f ' ( x0 )( x x0 ) 0 ,若 f ' ( x0 ) 0 ,解得
相关文档
最新文档