线性代数——二次型

article/2025/10/2 20:28:35

一:通过矩阵研究二次方程

二次型的定义:

把含有n个变量的二次齐次函数或方程称为二次型,例如:

f(x_{1},x_{2},...,x_{n})=a_{11}x_{1}^{2}+a_{22}x_{2}^{2}+...+a_{nn}x_{n}^{2}+2a_{12}x_{1}x_{2}+2a_{13}x_{1}x_{3}+...+2a_{n-1}x_{n-1}x_{n}

 二次型可以用矩阵来表示:

x^{2}+y^{2}-2xy=1可以表示为\begin{bmatrix} x & y \end{bmatrix}\begin{bmatrix} 1 & -1\\ -1 & 1 \end{bmatrix}\begin{bmatrix} x\\y \end{bmatrix}=1

更一般的情况:

ax^{2}+2bxy+cy^{2}=1可以表示为\begin{bmatrix} x & y \end{bmatrix}\begin{bmatrix} a & b\\ b & c \end{bmatrix}\begin{bmatrix} x\\y \end{bmatrix}=1

令:X=\begin{bmatrix} x\\y \end{bmatrix}A=\begin{bmatrix} a & b\\ b & c \end{bmatrix},则上式表示为X^{T}AX,这就是我们常见的二次型表示方式。

 

在《Linear Algebra and Its Applications》中译本《线性代数及其应用》中,二次型的定义如下:

在向量计算中常遇到的X^{T}X,求向量元素的平方和,这类平方和及其更一般形式称为二次型。

R^{n}上的一个二次型是定义在R^{n}上的函数,其在向量x处的值为:

                                                                     Q(x)=X^{T}AX

其中矩阵A是一个对称矩阵,矩阵A称为关于二次型的矩阵。

二次型是为研究二次函数或二次多项式而生,这样就能理解《线性代数及其应用》中二次型的定义,以及一些二次型的性质。

 

二:规范化

二次型或二次齐次方程有着显著的几何意义,一个二元二次函数是二维空间的一个圆,椭圆或双曲线:

x^{2}+y^{2}=1的一个圆,可以表示为\begin{bmatrix} x & y \end{bmatrix}\begin{bmatrix} 1 & 0\\ 0 & 1 \end{bmatrix}\begin{bmatrix} x\\y \end{bmatrix}=1

 

x^{2}+\frac{1}{4}y^{2}=1的椭圆可以表示为\begin{bmatrix} x & y \end{bmatrix}\begin{bmatrix} 1 & 0\\ 0 & \frac{1}{4} \end{bmatrix}\begin{bmatrix} x\\y \end{bmatrix}=1

 

一个 x^{2}-y^{2}=1的双曲线可以表示为\begin{bmatrix} x & y \end{bmatrix}\begin{bmatrix} 1 & 0\\ 0 & -1 \end{bmatrix}\begin{bmatrix} x\\y \end{bmatrix}=1

 

 这样一看,圆,椭圆,双曲线是线性关系,通过矩阵变换可以相互转化,准确说是一种仿射,它们都是圆锥体与平面的交线,所以统称为圆锥曲线。

对于一个倾斜的椭圆\frac{5}{8}x^{2}-\frac{3}{4}xy+\frac{5}{8}y^{2}=1,要将其扶正

除了通过坐标变化,解析几何的方法外,可以对 其二次型矩阵,进行特征值分解:

a = np.array([[5/8, -3/8], [-3/8, 5/8]])
eval_sigma1,evec_u = np.linalg.eigh(a)

其特征值为:\begin{bmatrix} 1 & 0\\ 0& \frac{1}{4} \end{bmatrix},而这个矩阵就是椭圆扶正后的二次型矩阵

 

 

 三:正定二次型

对于一个二次型Q

a.如果对所有的x\neq 0,有Q(x)>0,则二次型Q称为正定的

b.如果对所有的x\neq 0,有Q(x)<0,则二次型Q称为负定的

c.如果Q(x)既有正值又有负值,则二次型Q称为不定的

d.如果对所有的xQ(x)\geqslant 0,则Q称为半正定的,如果对所有的xQ(x)\leqslant 0,则Q称为半负定的

 

二次型与矩阵A的特征值的关系:

a.当且仅当矩阵A的特征值全为正数,则二次型Q为正定的

b.当且仅当矩阵A的特征值全为负数,则二次型Q为负定的

c.当且仅当矩阵A的特征值既有负数又有正数,则二次型Q为不定的

 

由于任意的二次型可以通过二次型矩阵的特征值分解(二次型的矩阵都是对称矩阵,对称矩阵都可以进行特征值分解),来扶正:

                                                             \begin{bmatrix} x_{1} & x_{2} & ... & x_{n} \end{bmatrix}\begin{bmatrix} \lambda_{1} & 0 & 0 & 0\\ 0& \lambda_{2} & 0 & 0\\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & 0 & \lambda_{n} \end{bmatrix}\begin{bmatrix} x_{1}\\ x_{2}\\ \vdots \\ x_{n} \end{bmatrix}

 所以任意的二次型可以转换为上述特征值的表示形式,以方程形式表示为:

                                                          f(x_{1},x_{2},...,x_{n})=\lambda_{1}x_{1}^{2}+\lambda_{2}x_{2}^{2}+...+\lambda_{n}x_{n}^{2}

当特征值都为正时,f(x_{1},x_{2},...,x_{n})=\lambda_{1}x_{1}^{2}+\lambda_{2}x_{2}^{2}+...+\lambda_{n}x_{n}^{2}> 0恒成立

当特征值都为负时,f(x_{1},x_{2},...,x_{n})=\lambda_{1}x_{1}^{2}+\lambda_{2}x_{2}^{2}+...+\lambda_{n}x_{n}^{2}< 0恒成立

 当特征值有正有负时,f(x_{1},x_{2},...,x_{n})的值,正负都有

这样就证明了二次型的矩阵特征值与其二次型的正定关系。

 

四:文中图片源码

文中的图片使用Python制作,代码如下:

from matplotlib.patches import Ellipse, Circle
import matplotlib.pyplot as plt
import matplotlib
import math
import numpy as npdef picture1():fig = plt.figure()ellip1 = Ellipse(xy = (0.0, 0.0), width = 2, height = 4, angle = -45, facecolor = 'yellow', alpha = 0.3)ellip2 = Ellipse(xy = (0.0, 0.0), width = 2, height = 4, angle = 0, facecolor = 'blue', alpha = 0.3)ax = fig.add_subplot(111)ax.add_patch(ellip1)ax.add_patch(ellip2)ax.spines['right'].set_color('none')  ax.spines['top'].set_color('none')  ax.spines['bottom'].set_position(('data',0))  ax.spines['left'].set_position(('data',0))  ax.xaxis.set_ticks_position('bottom')ax.yaxis.set_major_locator(matplotlib.ticker.MultipleLocator(1))plt.axis('scaled')plt.show()def Draw_Circle():x = y = np.arange(-2, 2, 0.1)x, y = np.meshgrid(x, y)fig = plt.figure()ax = fig.add_subplot(111)ax.contour(x, y, x**2 + y**2, [1], alpha = 0.3)ax.spines['right'].set_color('none')  ax.spines['top'].set_color('none')  ax.spines['bottom'].set_position(('data',0))  ax.spines['left'].set_position(('data',0))  ax.xaxis.set_ticks_position('bottom')ax.yaxis.set_major_locator(matplotlib.ticker.MultipleLocator(1))ax.xaxis.set_major_locator(matplotlib.ticker.MultipleLocator(1))plt.axis('scaled')plt.show()def Draw_ellipse():a = math.cos(-math.pi/4)b = math.sin(-math.pi/4)x = y = np.arange(-3, 3, 0.1)x, y = np.meshgrid(x, y)fig = plt.figure()ax = fig.add_subplot(111)ax.contour(x*a + y*b, x*b - y*a, x**2 + (1/4)*y**2, [1], alpha = 0.3)ax.contour(x, y, x**2 + (1/4)*y**2, [1], alpha = 0.3)#ax.contour(x, y, x**2 + y**2, [1], alpha = 0.3)#ax.contour(x, y, (5/8)*x**2 - (3/4)*x*y + (5/8)*y**2, [1], alpha = 0.3)ax.spines['right'].set_color('none')  ax.spines['top'].set_color('none')  ax.spines['bottom'].set_position(('data',0))  ax.spines['left'].set_position(('data',0))  ax.xaxis.set_ticks_position('bottom')ax.yaxis.set_major_locator(matplotlib.ticker.MultipleLocator(1))ax.xaxis.set_major_locator(matplotlib.ticker.MultipleLocator(1))plt.axis('scaled')plt.show()def Draw_hyperbola():a = [i / 100 for i in range(100, 300, 1)]b = [math.sqrt(i**2 - 1) for i in a]fig = plt.figure()ax = fig.add_subplot(111)ax.plot(a, b, color = "blue", alpha = 0.3)ax.plot(a, [-i for i in b], color = "blue", alpha = 0.3)ax.plot([-i for i in a], b, color = "blue", alpha = 0.3)ax.plot([-i for i in a], [-j for j in b], color = "blue", alpha = 0.3)ax.spines['right'].set_color('none')  ax.spines['top'].set_color('none')  ax.spines['bottom'].set_position(('data',0))  ax.spines['left'].set_position(('data',0))  ax.xaxis.set_ticks_position('bottom')ax.yaxis.set_major_locator(matplotlib.ticker.MultipleLocator(1))plt.show()if __name__ == "__main__":a = np.array([[5/8, -3/8], [-3/8, 5/8]])eval_sigma1,evec_u = np.linalg.eigh(a)print(eval_sigma1)print(evec_u)Draw_ellipse()

 


http://chatgpt.dhexx.cn/article/nV2OhSP3.shtml

相关文章

线性代数(六)——二次型

文章目录 前言二次型是什么&#xff1f;二次型的表示合同矩阵与合同二次型正定二次型、正定矩阵二次型的题型 前言 一直对二次型和线性代数的关系不解&#xff0c;导致一系列的知识点因为没有理解而常常忘记。 在这里对二次型进行梳理&#xff0c;希望可以加深对二次型的印象。…

高等代数---二次型

高等代数—二次型 声明&#xff1a; 本篇文章内容主要对《高等代数》第三版第五章内容的总结&#xff0c;复习 基本概念&#xff1a; 二次型的矩阵&#xff1b;标准形&#xff0c;规范形 二次型及其矩阵表示 从代数的观点看,所谓化标准方程就是用变量的线性替换化简一个二次…

二次型的意义与应用

二次型在数学很多分支里都频繁出现,而且在其他学科也到处可见。比如实二次型4c似乎在非常多的应用中都出现过,比如优化、概率图论、统计、机器学习、信号处理等等。那么,二次型在你所学的领域有什么应用呢?।希望大家能列出二次型在自己领域内对应的具体问题,是如何求解的等等…

二次型矩阵

二次型的每一项都是二次的&#xff0c;如果是平方则是平方项&#xff0c;如果是两个不同的变量则为交叉项。二次型如&#xff1a; x 2 x y y 2 x^2xyy^2 x2xyy2。 二次型->矩阵表达式 例&#xff1a; x 1 2 2 x 1 x 2 x 2 2 − x 2 x 3 2 x 3 2 − 2 x 1 x 3 x_1^22x_…

二次型

二次型理论起源于解析几何中化二次曲线或 二次曲面方程为标准形问题. 这里首先介绍一些 基本概念&#xff0c;然后讨论如何利用可逆线性变换把一 个二次型化成标准形。 二次曲面 二次型及其标准形的概念 定义 含有n个变量 x 1 , x 2 , . . . , x n x_{1},x_{2},...,x_{n} x1​…

【线性代数】四、二次型

第四章 二次型 文章目录 第四章 二次型一、二次型定义二、合同变换1.线性变换2.矩阵合同标准型和规范型 3.惯性定理 三、正定二次型 一、二次型定义 如果系数aij全为实数&#xff0c;那么为实二次型。上述二次型展开式可表示用矩阵为 可以看出&#xff0c;二次型矩阵A是一个对…

二次型(Quadratic Form)

1.二次型 二次型&#xff08;quadratic form&#xff09;&#xff1a;n个变量的二次多项式称为二次型&#xff0c;即在一个多项式中&#xff0c;未知数的个数为任意多个&#xff0c;但每一项的次数都为2的多项式。 它起源于几何学中二次曲线方程和二次曲面方程化为标准形问题的…

二次型定义

二次型用矩阵表达式表示 &#xff0c; 1 平方项的系数直接做成主对角元素 2. 交叉项的系数除以2&#xff0c;放到两个对称的相应位置上。 , ,的平方项系数为 1 &#xff0c;1 &#xff0c;2放在对角线上&#xff0c;如下图红色部分&#xff1b; 交叉项部分 &#xff0c…

如何理解二次型?

通过矩阵来研究二次函数&#xff08;方程&#xff09;&#xff0c;这就是线性代数中二次型的重点。 1 二次函数&#xff08;方程&#xff09;的特点 1.1 二次函数 最简单的一元二次函数就是&#xff1a; 给它增加一次项不会改变形状&#xff1a; 增加常数项就更不用说了&…

常微分方程——非齐次线性微分方程与常数变易法

文章目录 性质性质1性质2定理 例题 性质 性质1 性质2 定理 例题

一阶线性微分方程

目录 线性方程 例题&#xff1a; 伯努利方程 例题&#xff1a; ​编辑 线性方程 我们先对齐次方程进行求解&#xff1a; 所以一阶线性微分齐次方程的公式&#xff1a; 那么对于非齐次的方程&#xff0c;我们该怎么求解呢&#xff1f; 我们可以把这里的任意数c换成一个函数&a…

计算方法(六):常微分方程初值问题的数值解法

文章目录 常微分方程初值问题的数值解法欧拉&#xff08;Euler&#xff09;方法与改进欧拉方法欧拉方法欧拉公式的局部截断误差与精度分析改进欧拉方法 龙格-库塔(Runge-Kutta)法构造原理经典龙格-库塔法步长的自动选择 收敛性与稳定性收敛性稳定性 一阶方程组与高阶方程的数值…

数学建模笔记(九):差分方程与代数方程模型

文章目录 一、概述1.引例2.定义&#xff08;函数的差分&#xff09;3.定义&#xff08;差分方程&#xff09;4.差分方程的阶5.差分方程的解6.差分方程与微分方程的联系 二、一阶常系数线性差分方程1.一阶常系数齐次线性差分方程&#xff08;一&#xff09;一般形式&#xff08;…

算法基础——1.4常数变易法

例一&#xff1a; [java] view plain copy /* * * * * * * * * * * * * * * * */ public class T1 { public static void main(String[] args) { for(int k1; k<5; k){ for(int i0; …

MT【129】常数变易法

已知数列\(\{x_n\}\)满足\[x_{n1}\left(\dfrac 2{n^2}\dfrac 3n1\right)x_nn1,n\in\mathbf N^*,\]且\(x_13\)&#xff0c;求数列\(\{x_n\}\)的通项公式&#xff0e; 解答: 根据题意&#xff0c;有\[x_{n1}\dfrac{(n1)(n2)}{n^2}x_nn1,\]于是\[\dfrac{x_{n1}}{(n1)^2(n2)}\dfrac…

常微分方程

高数中的微分方程 全微分方程&#xff08;需要积分域与路径无关&#xff09; 一阶线性常微分方程 y’p(x)yq(x) 对于一阶线性常微分方程&#xff0c;常用的方法是常数变易法&#xff1a; 对于方程&#xff1a;将y’p(x)y0中的常数变为函数求解非齐次方程 ( ∫ q ( x ) ∗ e …

常数变易法二

/*打印这个* A* ABA* ABCBA* ABCDCBA* ABCDEDCBA */// " ABCDCBA" 第3行&#xff08;下标从0开始吧&#xff01;&#xff09;for(int i0;i<4;i) System.out.print(" ");for(int i0;i<4;i) System.out.print((char)(Ai));for(in…

常数易变法

/*常数变易法* 打印金字塔* ** * ** * * ** * * * ** * * * * **/ public class A {public static void main(String[] args) {//常数变易法&#xff0c;演变过程System.out.println(" *");//第一行System.out.println(&…

个人对于常微分方程之一阶线性非齐次方程的常数变易法的见解

我们都知道&#xff0c;对常微分方程 最简单也是最本质的处理方法就是分离变量&#xff0c;使得方程可以变成的形式&#xff0c;两边再进行积分便可以得到方程的解.在常微分方程&#xff08;以下简称为方程&#xff09;中&#xff0c;有两类比较特殊的方程&#xff0c;分别是一…