矩阵
- 格式:doc
- 大小:51.00 KB
- 文档页数:5
高中数学矩阵知识点一、矩阵的定义矩阵是一个由数字排列成的矩形阵列,通常用大写字母表示,如A、B、C等。
在高中数学中,我们主要处理的是二维矩阵,即有行和列的矩阵。
二、矩阵的表示矩阵的元素可以用a_{ij}表示,其中i表示行号,j表示列号。
例如,矩阵A的第2行第3列的元素记作a_{23}。
三、矩阵的类型1. 零矩阵:所有元素都是0的矩阵。
2. 单位矩阵:主对角线上的元素为1,其余元素为0的方阵。
3. 对角矩阵:主对角线上的元素可以是任意数,其余位置为0的矩阵。
4. 行矩阵:行数为1的矩阵。
5. 列矩阵:列数为1的矩阵。
四、矩阵的加法和减法两个矩阵相加或相减,必须具有相同的行数和列数。
对应位置的元素相加或相减得到新的矩阵。
五、矩阵的乘法1. 两个矩阵相乘,第一个矩阵的列数必须等于第二个矩阵的行数。
2. 乘积矩阵的元素c_{ij}由第一个矩阵的第i行与第二个矩阵的第j列对应元素相乘后求和得到。
六、矩阵的转置矩阵的转置是将矩阵的行变成列,列变成行得到的新矩阵。
记作A^T。
七、行列式行列式是一个与方阵相关的标量值,它提供了矩阵是否可逆的重要信息。
行列式的值可以通过拉普拉斯展开或对角线乘积减去小对角线乘积的方法计算。
八、逆矩阵一个矩阵A的逆矩阵记作A^-1,它满足以下条件:AA^-1 = A^-1A = I,其中I是单位矩阵。
并非所有矩阵都有逆矩阵,只有可逆矩阵(或称为非奇异矩阵)才有逆矩阵。
九、矩阵的应用矩阵在现实生活中有广泛的应用,如在解决线性方程组、图像处理、金融建模、物理学中的向量分析等领域。
十、常见矩阵运算性质1. 交换律:矩阵加法不满足交换律,即A + B ≠ B + A。
2. 结合律:矩阵加法满足结合律,即(A + B) + C = A + (B + C)。
3. 分配律:矩阵乘法满足分配律,即(A + B)C = AC + BC。
4. 单位元:矩阵乘法满足单位元的存在,即IA = AI = A,其中I是单位矩阵。
矩阵知识点完整归纳矩阵是大学数学中比较重要和基础的概念之一,具有广泛的应用领域,例如线性代数、微积分、计算机科学等。
本文将全面归纳和总结矩阵的基本概念、性质以及相关应用,旨在帮助读者更好地理解和掌握矩阵知识。
一、基本概念1.矩阵的定义矩阵是由一个$m\times n$ 的矩形阵列(数组)表示的数表,其中$m$ 表示矩阵的行数,$n$ 表示矩阵的列数。
如下所示:$$A = \begin{bmatrix}a_{11} & a_{12} & \cdots & a_{1n} \\\a_{21} & a_{22} & \cdots & a_{2n} \\\\vdots & \vdots & \ddots & \vdots \\\a_{m1} & a_{m2} & \cdots & a_{mn}\end{bmatrix}$$其中,$a_{ij}$ 表示矩阵的第$i$ 行、第$j$ 列元素。
2.矩阵的分类矩阵根据其元素的性质可以分为不同类型,主要有以下几种:(1)行矩阵(行向量):只有一行的矩阵,例如$[a_1,a_2,\cdots,a_n]$。
(2)列矩阵(列向量):只有一列的矩阵,例如$\begin{bmatrix}a_1\\\ a_2\\\ \vdots\\\ a_m\end{bmatrix}$。
(3)方阵:行数等于列数的矩阵,例如$A=\begin{bmatrix}1 & 2 & 3\\\ 4 & 5 & 6\\\ 7 & 8 & 9\end{bmatrix}$。
(4)零矩阵:所有元素都为$0$ 的矩阵,例如$\begin{bmatrix}0 & 0 & 0\\\ 0 & 0 & 0\\\ 0 & 0 & 0\end{bmatrix}$。
矩阵知识点总结大学一、基本概念1.1 矩阵的定义矩阵是指一个按照矩形排列的数字元素集合。
一般地,矩阵用符号“A”、“B”、“C”等来表示,其中每个元素用小写字母加标记来表示其位置,如a_ij表示矩阵A的第i行第j列的元素。
矩阵A的元素一般用a_ij来表示,其中i表示元素所在的行数,j表示元素所在的列数。
如下所示:A = [a_11, a_12, ..., a_1n][a_21, a_22, ..., a_2n][..., ..., ..., ...][a_m1, a_m2, ..., a_mn]矩阵的大小一般用m×n来表示,其中m表示矩阵的行数,n表示矩阵的列数。
矩阵的元素一般用小写字母a、b、c、d等来表示。
1.2 特殊矩阵⑴方阵:行数和列数相等的矩阵称为方阵。
n阶方阵指的是行数和列数均为n的方阵。
⑵零矩阵:所有元素都为0的矩阵称为零矩阵,通常用0表示。
⑶单位矩阵:对角线上的元素全为1,其他元素均为0的方阵称为单位矩阵,通常用I表示。
⑷对角矩阵:除了对角线上的元素外,其他元素均为0的矩阵称为对角矩阵。
1.3 矩阵的运算规则矩阵的运算包括加法、乘法和数乘三种,具体规则如下:⑴矩阵的加法:若A、B是同型矩阵,则它们的和记为A+B,定义为A+B=[a_ij+b_ij],其中a_ij和b_ij分别是A和B对应位置的元素。
⑵矩阵的数乘:若A是一个矩阵,k是一个数,则它们的数乘记为kA,定义为kA=[ka_ij],其中a_ij是A的元素。
⑶矩阵的乘法:若A是一个m×n的矩阵,B是一个n×p的矩阵,则它们的乘积记为A·B,定义为A·B=C,其中C是一个m×p的矩阵,其中C的第i行第j列的元素c_ij等于A的第i行和B的第j列对应元素的乘积的和。
1.4 矩阵的转置若A是一个m×n的矩阵,其转置记作A^T,定义为A^T=[a_ji],其中a_ji表示A的第i 行第j列的元素。
//显示矩阵按键移位动态//
#include<reg51.h>
#define GPIO_DIG P0
#define GPIO_KEY P1
sbit LSA=P2^2;
sbit LSB=P2^3;
sbit LSC=P2^4;
unsigned char code DIG_CODE[17]={
0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07, //0、1、2、3、4、5、6、7、8、9、A、b、C、d、E、F的显示码
0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
unsigned char KeyValue;
unsigned char KeyState; //记录按键的状态,0没有,1有
unsigned char DisplayData[8];
void Delay10ms(unsigned int c); //误差0us
void KeyDown(); //检测按键函数
void DigDisplay(); //动态显示函数
void main(void)
{
KeyState=0;
while(1)
{
KeyDown();
if(KeyState==1)
{
DisplayData[7]=DisplayData[6];
DisplayData[6]=DisplayData[5];
DisplayData[5]=DisplayData[4];
DisplayData[4]=DisplayData[3];
DisplayData[3]=DisplayData[2];
DisplayData[2]=DisplayData[1];
DisplayData[1]=DisplayData[0];
DisplayData[0]=DIG_CODE[KeyValue];
KeyState=0;
}
DigDisplay();
}
}
void DigDisplay()
{
unsigned char i;
unsigned int j;
for(i=0;i<8;i++)
{
switch(i) //位选,选择点亮的数码管,
{
case(0):
LSA=0;LSB=0;LSC=0; break;//显示第0位
case(1):
LSA=1;LSB=0;LSC=0; break;//显示第1位
case(2):
LSA=0;LSB=1;LSC=0; break;//显示第2位
case(3):
LSA=1;LSB=1;LSC=0; break;//显示第3位
case(4):
LSA=0;LSB=0;LSC=1; break;//显示第4位
case(5):
LSA=1;LSB=0;LSC=1; break;//显示第5位
case(6):
LSA=0;LSB=1;LSC=1; break;//显示第6位
case(7):
LSA=1;LSB=1;LSC=1; break;//显示第7位
}
GPIO_DIG=DisplayData[i];//发送段码
j=10; //扫描间隔时间设定while(j--);
GPIO_DIG=0x00;//消隐
}
}
void KeyDown(void)
{
unsigned int a=0;
GPIO_KEY=0x0f;
if(GPIO_KEY!=0x0f)
{
Delay10ms(1);
a++;
a=0;
if(GPIO_KEY!=0x0f)
{
KeyState=1; //有按键按下
GPIO_KEY=0X0F;
switch(GPIO_KEY)
{
case(0X07): KeyValue=0;break;
case(0X0b): KeyValue=1;break;
case(0X0d): KeyValue=2;break;
case(0X0e): KeyValue=3;break;
}
GPIO_KEY=0XF0;
switch(GPIO_KEY)
{
case(0X70): KeyValue=KeyValue;break;
case(0Xb0): KeyValue=KeyValue+4;break;
case(0Xd0): KeyValue=KeyValue+8;break;
case(0Xe0): KeyValue=KeyValue+12;break;
}
while((a<50)&&(GPIO_KEY!=0xf0)) //按键松手检测{
Delay10ms(1);
a++;
}
a=0;
}
}
}
void Delay10ms(unsigned int c) //误差0us
{
unsigned char a, b;
for (;c>0;c--)
{
for (b=38;b>0;b--)
{
for (a=130;a>0;a--);
}
}
}
//* 实验名: 矩阵键盘显示试验
//* 实验说明: 静态数码管显示矩阵键盘键值//
#include<reg51.h>
//--定义使用的IO口--//
#define GPIO_DIG P0
#define GPIO_KEY P1
//--定义全局变量--//
unsigned char code DIG_CODE[17]={
0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
//0、1、2、3、4、5、6、7、8、9、A、b、C、d、E、F的显示码unsigned char KeyValue;
//用来存放读取到的键值
//--声明全局函数--//
void Delay10ms(unsigned int c); //延时10ms
void KeyDown(); //检测按键函数
void main(void)
{
while(1)
{
KeyDown();
GPIO_DIG = ~DIG_CODE[KeyValue];
}
}
void KeyDown(void)
{
char a = 0;
GPIO_KEY=0x0f;
if(GPIO_KEY!=0x0f)//读取按键是否按下
{
Delay10ms(1);//延时10ms进行消抖
if(GPIO_KEY!=0x0f)//再次检测键盘是否按下
{
//测试列
GPIO_KEY=0X0F;
switch(GPIO_KEY)
{
case(0X07): KeyValue=0;break;
case(0X0b): KeyValue=4;break;
case(0X0d): KeyValue=8;break;
case(0X0e): KeyValue=12;break;
}
//测试行
GPIO_KEY=0XF0;
switch(GPIO_KEY)
{
case(0X70): KeyValue=KeyValue+3;break;
case(0Xb0): KeyValue=KeyValue+2;break;
case(0Xd0): KeyValue=KeyValue+1;break;
case(0Xe0): KeyValue=KeyValue;break;
}
while((a<50) && (GPIO_KEY!=0xf0)) //检测按键松手检测
{
Delay10ms(1);
a++;
}
}
}
}
void Delay10ms(unsigned int c) //误差0us
{
unsigned char a, b;
//--c已经在传递过来的时候已经赋值了,所以在for语句第一句就不用赋值了--// for (;c>0;c--)
{
for (b=38;b>0;b--)
{
for (a=130;a>0;a--);
}
}
}。