实验6二次型及其标准形

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

实验6 二次型及其标准形

一、 实验目的

学习利用Matlab 命令求二次型的秩,化二次型为标准形,判断二次型的正定性.

二、实验原理

(一)预备知识

• 线性代数中的关于二次型的知识:

1. 二次型的秩就是二次型的矩阵的秩;

2.判别二次型为正定二次型的充要条件是,它的矩阵A 的特征值全为正,或

A 的各阶主子式为正。

• 本实验所用Matlab 命令提示:

1. 二次型的矩阵为A, 因此用命令rank(A)可以求二次型的秩;

2. d = eig(A)输出方阵 A 的全部特征值组成的列向量d ;

3. 命令[P,D]=eig(A)输出的是对角线上的元素为A 的特征值的对角矩阵D ,以A

的相应的特征向量为列的矩阵P.

(二)实验举例

在Matlab 中,我们运用函数[P,D]=eig(A)求出二次型的矩阵A 的特征值矩阵X 和特征向量矩阵P ,所求的矩阵X 即为系数矩阵A 的标准形,矩阵P 即为二次型的变换矩阵.

例1 把二次型222122332343f x x x x x =+++化为标准形.

解 输入:

clear

A=[2 0 0;0 3 2;0 2 3];

syms y1 y2 y3

y=[y1;y2;y3];

[P ,D]= eig(A)

x=P*y

输出为:

P =

0 0

D =

0 0

0 0

0 0

x =

[ y2 ]

[ -1/2*2^(1/2)*y1+1/2*2^(1/2)*y3]

[ 1/2*2^(1/2)*y1+1/2*2^(1/2)*y3]

f=[y1 y2 y3]*D*y

f =y1^2+2*y2^2+5*y3^2.

由输出结果可知,线性变换x=py 化二次型为标准型22212325f y y y =++.

判别二次型为正定二次型的充要条件是,它的矩阵A 的特征值全为正,或 A 的各阶主子式为正.

例2 判断二次型222112213324824f x x x x x x x =+++-的正定性.

解1 输入:

clear

A=[2 2 1;2 8 0;1 0 -4];

D= eig(A)

输出为:

D =

由输出结果可知二次型的矩阵的特征值为,,,不全为正,所以二次型不是正定的.

解2 二次型的矩阵为221280104A ⎛⎫ ⎪= ⎪ ⎪-⎝⎭

,所以输入

c lear

A2=[2,2;2,8];

A3=[2,2,1;2,8,0;1,0,-4];

D2=det(A2)

D3=det(A3)

输出为:

D2=

12

D3=

-56

输出结果显示:二次型的3阶主子式为-56<0,所以二次型不正定.

三、实验练习

1.求二次型22221223341234222f x x x x x x x x x x =++++++的秩.

2.化二次型222123121323564610f x x x x x x x x x =++---为标准形,并求出所作的非退化的线性变换.

3.用正交变换化二次型121323222f x x x x x x =++为标准形.

4.判别二次型222123122313104224f x x x x x x x x x =+++--是否正定?

相关文档
最新文档