线性代数MATLAB仿真实验报告

合集下载

线性系统理论Matlab实践仿真报告

线性系统理论Matlab实践仿真报告

线性系统理论Matlab实验报告1、本题目是在已知状态空间描述的情况下要求设计一个状态反馈控制器,从而使得系统具有实数特征根,并要求要有一个根的模值要大于5,而特征根是正数是系统不稳定,这样的设计是无意义的,故而不妨设采用状态反馈后的两个期望特征根为-7,-9,这样满足题目中所需的要求。

(1)要对系统进行状态反馈的设计首先要判断其是否能控,即求出该系统的能控性判别矩阵,然后判断其秩,从而得出其是否可控;判断能控程序设计如下:>> A=[-0.8 0.02;-0.02 0];B=[0.05 1;0.001 0];Qc=ctrb(A,B)Qc =0.0500 1.0000 -0.0400 -0.80000.0010 0 -0.0010 -0.0200Rc=rank(Qc)Rc =2Qc =0.0500 1.0000 -0.0400 -0.80000.0010 0 -0.0010 -0.0200得出结果能控型判别矩阵的秩为2,故而该系统是完全可控的,故可以对其进行状态反馈设计。

(2)求取状态反馈器中的K,设的期望特征根为-7,-9;其设计程序如下:>> A=[-0.8 0.02;-0.02 0];B=[0.05 1;0.001 0];P=[-7 -9];k=place(A,B,P)k =1.0e+003 *-0.0200 9.00000.0072 -0.4500程序中所求出的k即为所求状态反馈控制器的状态反馈矩阵,即由该状态反馈矩阵所构成的状态反馈控制器能够满足题目要求。

2、(a)要求求该系统的能控型矩阵,并验证该系统是不能控的。

设计程序:>> A=[0 1 0 0 0;-0.1 -0.5 0 0 0;0.5 0 0 0 0;0 0 10 0 0;0.5 1 0 0 0];>> B=[0;1;0;0;0];>> C=[0 0 0 1 0];>> Qc=ctrb(A,B)Qc =0 1.0000 -0.5000 0.1500 -0.02501.0000 -0.5000 0.1500 -0.0250 -0.00250 0 0.5000 -0.2500 0.07500 0 0 5.0000 -2.50000 1.0000 0 -0.1000 0.0500>> Rc=rank(Qc)Rc =4从程序运行的结果可得,系统能控型判别矩阵的秩为4,而系统为5阶系统,故而就验证了该系统为不可控的。

MATLAB上机实验报告:MATLAB求解线性方程组和矩阵的初等计算

MATLAB上机实验报告:MATLAB求解线性方程组和矩阵的初等计算

MATLAB上机实验报告:MATLAB求解线性方程组和矩阵的初等计算MATLAB上机实验报告:MATLAB求解线性方程组和矩阵的初等计算计算机语言类课程实验报告课程名称院系学号MATLAB语言及应用电气信息工程学院实验机房计算机公修实验室三班级机器号实验学时2实验成绩专业电气工程及其自动化姓名任课教师实验日期一.实验名称:MATLAB求解线性方程组和矩阵的初等计算二.实验目的和要求1、掌握利用MATLAB程序编辑器编写应用程序的方法;2、掌握MATLAB 求解线性方程组的方法;3、掌握MATLAB进行矩阵的初等计算的方法三.实验内容教材(《MATLAB及其在理工课程中的应用指南,陈怀琛,西安电子科技大学出版社》)P93-1,2四.实验设计方案(实验步骤或开发过程)1、设a矩阵为各个方程的变量的系数,s为各个变量的列向量,b为等式右边的自然数的列向量,利用s=a\\b,即可求出该方程组的解。

2、利用转置和乘法,以及元素乘法分别算出C1,C2,C3,再通过求逆矩阵inv()这个函数求出C1,C2,C3的逆矩阵。

五.实验中存在问题及解决办法在第一题中当使用右除时,运行出现错误,只有使用左除,这与矩阵除法的定义有关。

六.实验结果1、该方程组的解为:s=[-1.4841-0.68160.5337-1.2429]2、C1=[19-8230d1=[0.00620.0400-0.010612273-0.00460.01690.0030-385429]0.0 1680.02090.0150]C2=[-1516-2436d2=1.0e+015*63-1793-105[-0.9553-0.2391-0.19970.2700226117-600.96670.24200.2021-0.2732194684-10]-0.4473-0.112 0-0.09350.1264-1.1259-0.2818-0.23530.3182]C3=[51624-26d3=不能求C3的逆矩阵-18-12-1572-2-21108-56]七.附录(源程序清单)第一题:求该方程组的解20xx.09.17clcclearalla=[34-7-12;5-742;108-5;-65-210]b=[4;-3;9;-8]s=a\ \b第二题:求出C1,C2,C3,以及它们的逆矩阵d1,d2,d320xx.09.17clcclearallA=[14813;-36-5-9;2-7-12-8]B=[543-2;6-23-8;-13-97]C1=A*B”C2=A”*BC3=A.*Bd1=inv(C1)d2=inv(C2)[m,n]=size(C3);if m==nd3=inv(C3)elsedisp不能求C3的逆矩阵end扩展阅读:袁越强MATLAB上机实验报告一平顶山学院计算机语言类课程实验报告(一)课程名称院系学号实验日期MATLAB语言及应用电气信息工程学院实验机房专业电气工程及其自动化姓名任课教师王凯实验学时23305班级机器号实验成绩二班一.实验名称:MATLAB求解线性方程组和矩阵的初等计算二.实验目的和要求1、掌握利用MATLAB程序编辑器编写应用程序的方法;2、掌握MATLAB求解线性方程组的方法;3、掌握MATLAB进行矩阵的初等计算的方法三.实验内容1、求线性方程组的解3x4y7z12w45x7y4z2w3x8z5w96x5y2z10w8481315432,B6238,求C1=A*B’;C2=A’*B;C3=A.*B,并592、设A36271281397求它们的逆阵。

用MATLAB解决线性代数问题实验报告

用MATLAB解决线性代数问题实验报告

实验三使用MATLAB解决线性代数问题学院:数计学院班级:1003班姓名:黄晓丹学号:1051020144实验目的:学习MATLAB有关线性代数运算的指令,主要学习运用MATLAB解决矩阵除法,线性方程组的通解,矩阵相似对角化问题,以及解决投入产出分析等应用问题。

实验内容:矩阵转置:A=[1 2;3 4];B=[4 3;2 1];>> A',B'ans =1 32 4ans =4 33 1矩阵加减:A-Bans=-3 -11 3矩阵乘法:A*B,A.*B(数组乘法)||比较矩阵乘法与数组乘法的区别ans=8 520 13ans=4 66 4矩阵除法:A\B,B./Aans=-6 -55 4ans=4 1.50.6667 0.25特殊矩阵生成:zeros(m,n)||生成m行n列的矩阵ones(m,n)||生成m行n列的元素全为一的矩阵eye(n)||生成n阶单位矩阵rand(m,n)||生成m行n列[0 ,1]上均匀分布随机数矩阵zeros(2,3)ans =0 0 00 0 0>> ones(3,3)ans =1 1 11 1 11 1 1>> eye(3)ans =1 0 00 1 00 0 1>> rand(2,4)ans =Columns 1 through 30.9501 0.6068 0.89130.2311 0.4860 0.7621Column 40.45650.0185矩阵处理:trace(A)||返回矩阵的迹diag(A)||返回矩阵对角线元素构成的向量tril(A)||提取矩阵的下三角部分triu(A)||提取矩阵的上三角部分flipud(A)||矩阵上下翻转fliplr(A)||矩阵左右翻转reshape(A,m,n)||将矩阵的元素重排成m行n列矩阵A=[1 2 3;4 5 6;7 8 9];>> t=trace(A),d=diag(A),u=triu(A)t =15d =159u =1 2 30 5 60 0 9 flipud(A),fliplr(A)ans =7 8 94 5 61 2 3 ans =3 2 16 5 49 8 7矩阵特征值与标准型:[V,D]=eig(A)||返回矩阵特征值与特征向量[V J]=Jordan(A)||返回矩阵的相似变换矩阵和若尔当标准型A=[1 2;3 4];>> [V,D]=eig(A)V =-0.8246 -0.41600.5658 -0.9094D =-0.3723 00 5.3723>> [V,J]=jordan(A)V =0.2389 0.76110.5222 -0.5222J =5.3723 00 -0.3723线性方程组求解A=[1 2 1;3 -2 1];B=[1;4];x=A\B x =1.2500 ||求一特解-0.1250>> A=[1 2;3 -2;1 -1];B=[1;4;2];x=A\Bx = ||求得一最小二乘近似解1.2838-0.1757:方阵的相似对角化及应用:A=[1 1/4 0;0 1/2 0;0 1/4 1];[P,T]=eig(A) P =1.0000 0 -0.40820 0 0.81650 1.0000 -0.4082T =1.0000 0 00 1.0000 00 0 0.5000求得三个特征值1,1,0.5,对应特征向量(1,0,0),(0,0,1),(-0.4028,0.8165,-0.4082),由于三个特征向量线性无关,从而A 可相似对角化,即p-1AP=T.那么A∧n=p[1 0 0;0 1 0;0 0 0]p-1,计算的P*diag([1,1,0])*inv(P)ans =1.0000 0.50000 00 0 00 0.5000 1.0000所以得到近似解。

matlab课内实验报告(二)

matlab课内实验报告(二)

《matlab》课内实验报告姓名:徐永凯学号:2012309020107学院:理学院班级:数学121课程名称:matlab实验题目:matlab指导教师:王冠2013年09月26日一、实验目的1.掌握Matlab 的流程控制;2.了解Gauss-Seidel 迭代求解线性代数方程组和Newton 迭代求解非线性方程的算法;3.掌握Matlab 程序设计的基本过程。

二、实验内容和结果1.利用Gauss-Seidel 迭代求解线性代数方程组。

Gauss-Seidel 迭代公式b L Ux L x k k 1)(1)1(--++-=,其中L 是系数矩阵A 的下三角矩阵(含主对角线),U 是系数矩阵A 的上三角矩阵(不含主对角线)。

function [x1,i]=gs(A,b,x0)clc L=tril(A);U=triu(A)-diag(diag(A));p=-(inv(L)*U);q=(inv(L))*b;for i=1:500x1=p*x0+q;x0=x1;if norm(A*x0-b)<1e-6break ;end end2.利用Newton 迭代求解非线性方程。

Newton 迭代公式)()('11k k k k x f x f x x -+-=,其中待求解方程为0)(=x f 。

function y=Newton(f1)sysm x1f2x2f1=x1-sin(x1);f2=diff(f1,x1,1);x2=x1-f2\f1;x0=3;for i=1:500x=subs(x2,x1,x0);if (abs(x-x0))<1e-6break;endendx0=x;end三、思考及总结对迭代法有了初步的了解,感觉matlab中的函数有好多,对于函数的应用还有待加强;。

matlab线性代数实验

matlab线性代数实验

matlab线性代数实验线性代数MATLAB 实验指导书MATLAB 是Matrix Laboratory 的缩写,是⼀个集数值计算、图形处理、符号运算、⽂字处理、数学建模、实时控制、动态仿真和信号处理等功能为⼀体的数学应⽤软件,⽽且该系统的基本数据结构是矩阵,⼜具有数量巨⼤的内部函数和多个⼯具箱,使得该系统迅速普及到各个领域,尤其在⼤学校园⾥,许多学⽣借助它来学习⼤学数学和计算⽅法等课程,并⽤它做数值计算和图形处理等⼯作。

我们在这⾥介绍它的基本功能,并⽤它做与线性代数相关的数学实验。

在正确完成安装MATLAB 软件之后,直接双击系统桌⾯上的MATLAB 图标,启动MATLAB ,进⼊MATLAB 默认的⽤户主界⾯,界⾯有三个主要的窗⼝:命令窗⼝(Commend Window ), 当前⽬录窗⼝(Current Directory ),⼯作间管理窗⼝(Workspace )。

命令窗⼝是和Matlab 编译器连接的主要窗⼝,“>>”为运算提⽰符,表⽰Matlab 处于准备状态,当在提⽰符后输⼊⼀段正确的运算式时,只需按Enter 键,命令窗⼝中就会直接显⽰运算结果。

实验1 矩阵的运算,⾏列式实验名称:矩阵的运算,⾏列式实验⽬的:学习在matlab 中矩阵的输⼊⽅法以及矩阵的相关运算,⾏列式。

实验原理:介绍相关的实验命令和原理(1)⼀般矩阵的输⼊ (2)特殊矩阵的⽣成 (3)矩阵的代数运算(4)矩阵的特征参数运算 (5)数字⾏列式和符号⾏列式的计算实验命令1 矩阵的输⼊ Matlab 是以矩阵为基本变量单元的,因此矩阵的输⼊⾮常⽅便。

输⼊时,矩阵的元素⽤⽅括号括起来,⾏内元素⽤逗号分隔或空格分隔,各⾏之间⽤分号分隔或直接回车。

例1 输⼊矩阵--=654301211A ,可以在命令窗⼝中输⼊>>A=[1 1 2;-1 0 3;4 -5 6]A =1 1 2-1 0 34 -5 62 特殊矩阵的⽣成某些特殊矩阵可以直接调⽤相应的函数得到,例如:zeros(m,n) ⽣成⼀个m ⾏n 列的零矩阵ones(m,n) ⽣成⼀个m ⾏n 列元素都是1的矩阵eye(n) ⽣成⼀个n 阶的单位矩阵rand(m,n) ⽣成⼀个m ⾏n 列的随机矩阵magic(n) ⽣成⼀个n 阶魔⽅矩阵例2 随机⽣成⼀个32?的矩阵。

线性代数实验报告汇总

线性代数实验报告汇总

数学实验报告题目第一次实验题目一、实验目的1MATLAB 的矩阵初等运算;.熟悉2 .掌握求矩阵的秩、逆、化最简阶梯形的命令;3MABLAB 求解线性方程组.会用二、问题求解和程序设计流程344?221????????MATLABA1 B、,已知命令窗口中建立.,在320B???50??3A????????112?153????矩阵并对其进行以下操作:(1) A 的行列式的值计算矩阵?)?Adet((2) 分别计算下列各式:、和、、、、B?A.T112??B?BA?2A ABABAA:解(1)编写程序如下:A=[4 -2 2;-3 0 5;1 5 3];B=[1 3 4;-2 0 -3;2 -1 1];a=det(A)运行结果:a =-158(2)编写程序如下:C=2*A-BD=A*BE=A.*BF=A/BG=A\BH=A*AK=A'运行结果:C =7 -7 0-4 0 13线性代数实验报告0 11 5D =12 10 247 -14 -7-3 0 -8E =4 -6 86 0 -152 -5 3F =0 0 2.0000-2.7143 -8.0000 -8.14292.42863.0000 2.2857G =0.4873 0.4114 1.00000.3671 -0.4304 0-0.1076 0.2468 0H =24 2 4-7 31 9-8 13 36K =4 -3 1-2 0 52 5 32 MATLABrankinv 求下列矩阵的秩:中分别利用矩阵的初等变换及函数.在、函数线性代数实验报告3501??2631?????0012????(1) Rank(A)=? 2求) 求(054A?3??B1??B?????0201??4??1112????2102??解:1 编写程如下:()format rat A=[1 -6 3 2;3 -5 4 0;-1 -11 2 4];rref(A)运行结果:ans =1 0 0 -8/50 1 0 00 0 1 6/5AA3 。

线性代数Matlab数学实验

线性代数Matlab数学实验

0.1042 -0.1436 -0.0663 0.0878 0.0337 0.0411
1.1095 1.3541 3.1761 5.3951 8.3265 1.3564
4.3899 15.0714 19.5899 28.3698 37.2783 1.8128
2.1612 9.5847 11.9050 16.2275 20.7091 0.6693
b = ( 1 3 5 7 9 11) 。
1.输入矩阵 A,B,b. 2.作X12=A/ , X22=A+B , X23=A-B , X24=AB. 3.求|A|,|B|。 4.求 R(A),R(B)。 5.求X5=A-1 . 6.求矩阵方程 XA=C 的解 X6,其中 C 为 A 的第 i 行乘以列标 i 所得到的矩阵。 7.求解方程组 AX=b 的解向量 X7. 8.求 X6 的特征向量 X8,X6 的特征向量组 X 及对角阵 D。 9.求 B2(A-1)2. 10.存储工作空间变量 A,B:save’ds1.m’,A,B 三、思考与练习 1.对本实验中得到的C矩阵求CT, |C|, C-1, C的特征值及对应的特征向量。 2.创建从 2 开始,公差为 4 的等差数列的前 15 项构成的行向量。 3.将本实验中矩阵 A 与 B 的对应元素相乘、对应元素相处并观察分母为零时的结果。 4.求 b 的每个元素自身次幂所的行向量。 5.列出本实验中所有变量。 四、操作提示 1.计算过程 A=[3 4 -1 1 -9 10;6 5 0 7 4 -16;1 -4 7 -1 6 -8;2 -4 5 -6 12 -8;-3 6 -7 8 -1 1;8 -4 9 1 3 0] B=[1 2 4 6 -3 2;7 9 16 -5 8 -7;8 11 20 1 5 5;10 15 28 13 -1 9;12 19 36 25 -7 23;2 4 6 -3 0 5] b=1:2:11 X21=A' X22=A+B X23=A-B X24=A*B X31=det(A) X32=det(B) X41=rank(A) X42=rank(B) X5=inv(A) for i=1:6 C(:,i)=i*A(:,i); end C X6=C/A X7=A\b' X8=eig(X6) [X,D]=eig(X6) X9=B^2*(A^(-1))^2 存储实验1工作空间变量AB到文件ds1.mat中:save ds1 A B 2.计算结果:

matlab实验报告总结

matlab实验报告总结

matlab实验报告总结1.求一份matlab的试验报告计算方法试验报告3【实验目的】检查各种数值计算方法的长期行为【内容】给定方程组x'(t)=ay(t),y'(t)=bx(t), x(0)=0, y(0)=b的解是x-y 平面上的一个椭圆,利用你已经知道的算法,取足够小的步长,计算上述方程的轨道,看看那种算法能够保持椭圆轨道不变。

(计算的时间步长要足够多)【实验设计】用一下四种方法来计算:1. Euler法2. 梯形法3. 4阶RK法4. 多步法Adams公式【实验过程】1. Euler法具体的代码如下:clear;a=2;b=1;A=[0 a; -b0];U=[];u(:,1)=[0;b];n=1000000;h=6*pi/n;fori=1:n delta(i)=((u(1,i)/a)^2+(u(2,i)/b)^2)^0.5; u(:,i+1)=u(:,i)+h*A*u(:,i);endt=1:n+1;subplot(1, 2,1);plot(1:n,delta);gridon;subplot(1,2,2);plot(u(1,:),u(2,:));gridon;max(abs(delta-ones(1,length(delta))));结果如下:2. 梯形法具体的代码如下:clear;a=2;b=1;A=[0 a; -b 0];U=[];u(:,1)=[0;b];n=300;h=6*pi/n;for i=1:n delta(i)=((u(1,i)/a)^2+(u(2,i)/b)^2)^0.5;v1=u(:,i)+h*A*u(:,i);v2=u(:,i)+h*A*(u(:,i)+v1)/2;1u(:,i+1)=u(:,i)+h*A*(u(:,i)+v2)/2;endt=1:n+1;sub plot(1,2,1);plot(1:n,delta);gridon;subplot(1,2,2);结果如下 3. 4阶RK法clear;a=2;b=1;A=[0 a; -b 0];U=[];u(:,1)=[0;b];n=70;h=6*pi/n;for i=1:n delta(i)=((u(1,i)/a)^2+(u(2,i)/b)^2)^0.5;k1=A*u(:,i); k2=A*(u(:,i)+h/2*k2); k3=A*(u(:,i)+h*k3); k4=A*(u(:,i)+h*k3); u(:,i+1)=u(:,i)+h/6*(k1+2*k2+2*k3+k4);endt=1:n+1 ;subplot(1,2,1);plot(1:n,delta);gridon;subplot(1,2,2);结果如下:4. 多步法Adams公式clear;a=2;b=1;A=[0 a; -b 0];U=[];u(:,1)=[0;b];n=200;h=6*pi/n;u(:;2)=u(u,1)+h*A*u(:,1);u(:;3)=u(u,2)+h/2*A*(3*u(:,2)-u(:,1));u(:;4)=u(u,3)+h/12*A*(23*u(:,3)-16*u(:,2)+5*u(:, 1)); delta(1)=((u(1,1)/a)^2+(u(2,1)/b^2)^0.5 delta(2)=((u(1,2)/a)^2+(u(2,2)/b^2)^0.5delta(3)=((u(1,3)/a)^2+(u(2,3)/b^2)^0.5for i=4:n delta(i)=((u(1,i)/a)^2+(u(2,i)/b)^2)^0.5;u(:,i+1)=u(:,i)+h/24*A*(55*u(:,i)-59*u(:,i-1)+37 *u(:,i-1)+37*u(:,i-2)-9*u(:,i-3));endt=1:n+1;sub plot(1,2,1);plot(1:n,delta);gridon;subplot(1,2,2);结果如下:【实验分析】通过这几种方法对比,发现最为稳定的是多步法Adams公式和4阶RK法,其次是梯形法,而欧拉法最为不稳定。

MATLAB试验报告线性方程组求解

MATLAB试验报告线性方程组求解
6.
「-「
f3)
f0)
f2)
f-1)
x=
2
,x=
4
,x=
10
,x=
7
,x=
3
1
3
2
2
3
11
4
3
5
2
\^)
V37
R3的一组基。
生成R3,从x,x,x,x,x中找出
"-4
设A = 7
11
3 12、
-11 0.分别用poly、roots和eig计算A的特征值.
12 3,
7.判断下列矩阵是否相似(提示:用Jordan标准型)?
,
壬式。
及rref函数,计算下列线性方程组的
x-3x=0
5x+x=8b)
-x+4x=2
2 3
:1
4,%=10
27 V117
是线性相关的.
戋性无关的
生方程组的通解。
至解
=2
二10
8
来计算A-1的第三列,并将结果
通解
2x+x-3x=0
4x+5x+x=8
2x+4x+4x=8
1 1 2 3
实验序号:实验2
实验项目名称:线性方程组求解
>> x1=det(D1)/det(D);x2=det(D2)/det(D);
>> x1,x2
x1 =
-1
Байду номын сангаас>> a=[2,3,-1;5,1,4];
>> rref(a)
f2 0 0)
f2 0
A=
0 4 0

-MATLAB 数学实验报告

-MATLAB 数学实验报告

MATLAB 数学实验报告求下列解方程组:1.(1)⎪⎪⎩⎪⎪⎨⎧=+--=-+-=++-0202432143214321xxxx x xx x xx x x(2)⎪⎪⎩⎪⎪⎨⎧=+=+-=-+0302403231321321x x x x x x x x2. ⎪⎪⎩⎪⎪⎨⎧=++=+-=-+883111023224321321321x x x x x x x x x例1. 绘制函数表达式x²-y³的二维图形。

例2. 在极坐标下绘制函数表达式1+cost的二维图形。

例3. 根据表达式x=sint、y=cost、z=t,绘制三维曲线。

实验过程记录(含基本步骤,主要程序清单及异常情况记录等):1.解:(1) >> A=[1 -1 1 1;1 -1 1 -2;1 -1 -2 1];>> format rat>> n=4;>> RA=rank(A)RA =3>> if(RA==n)else B=null(A,'r')endB =11>> syms k>> x=k*Bx =kk(2) >> A=[2 3 -1;4 -2 1;1 0 3];>> format rat>> n=3;>> RA=rank(A)RA =3>> if(RA==n) x=[0 0 0]else B=null(A,'r')endx =0 0 0 2.解:>> A=[4 2 -1;3 -1 2;11 3 8];b=[2 10 8]';B=[A b];n=3;RA=rank(A)RA =3>> RB=rank(B)RB =3>> if(RA==RB&RA==n)X=A\belse if(RA==RB&RA<n)C=A\bD=null(A,'r')endX =97/40-169/40-3/4例1.解:>> syms x y>>ezplot(x^2-y^)3) 例2. 解: >> syms t>> ezpolar(1+cos(t)) 例3. 解: >> syms t>> ezplot3(sin(t),cos(t),t,[0,6*pi])实验结果报告及实验总结:1.(1)的解为x = kk 0 0(2)的解为x = 00 02的解为X =97/40 -169/40 -3/4 例1.图形结果:xyx 2-y 3 = 0例2.图形结果:902701800r = 1+cos(t)例3.图形结果:-1xx = sin(t), y = cos(t), z = tyz实验总结:对于以上题目的解析,这是我第一次用MATLAB 进行编程来求解实际问题,虽然过程有点艰辛,但每一步都亲力亲为,这让我收获很多,通过做次实验,让我对MATLAB有了进一步的了解,了解了它的强大的功能和他如何求解实际问题,激发了我学好MATLAB的决心。

线性代数的MATLAB软件实验报告

线性代数的MATLAB软件实验报告

线性代数的MATLAB 软件实验一、实验目的1.熟悉矩阵代数主要MATLAB 指令。

2.掌握矩阵的转置、加、减、乘、除、乘方、除法等MATLAB 运算。

3.掌握特殊矩阵的MATLAB 生成。

4.掌握MATLAB 的矩阵处理方法。

5.掌握MATLAB 的矩阵分析方法。

6.掌握矩阵的特征值与标准形的MATLAB 验算。

7.掌握线性方程组的MATLAB 求解算法。

二、实验原理1.线性方程组 【基本观点】自然科学和工程实践很多问题的解决都涉及线性代数方程组的求解和矩阵运算.一方面,许多问题的数学模型本身就是一个线性方程组,例如结构应力分析问题、电子传输网分析问题和投入产出分析问题;另一方面,有些数值计算方法导致线性方程组求解,如数据拟合,非线性方程组求解和偏微分方程组数值解等.n 个未知量m 个方程的线性方程组一般形式为⎪⎪⎩⎪⎪⎨⎧=+++=+++=+++.,,22112222212111212111m n mn m m n n n n b x a x a x a b x a x a x a b x a x a x a (3.1) 令,,,2121212222111211⎪⎪⎪⎪⎪⎭⎫ ⎝⎛=⎪⎪⎪⎪⎪⎭⎫ ⎝⎛=⎪⎪⎪⎪⎪⎭⎫⎝⎛=m n mn m m n n b b b b x x x x a a a a a aa a a A则得矩阵形式Ax=b. (3.2)若右端b=0,即Ax=0, (3.3)则称方程组为齐次的.方程组(3.1)可能有唯一解,可能有无穷多解,也可能无解,主要取决于系数矩阵A 及增广矩阵(A,b )的秩.若秩(A )=秩(A,b )=n,存在唯一解,其解理论上用Cramer 法则求出,但由于这种方法要计算n+1个n 阶行列式,计算量太大通常并不采用;若秩(A )=秩(A,b )<n,存在无穷多解,其通解可表示为对应齐次方程组(3.3)的一个基础解系与(3.2)的一个特解的叠加;若秩(A )≠秩(A,b ),则无解,这时一般寻求最小二乘近似解,即求x 使向量Ax-b 模最小.P50矩阵左除的数学思维:恒等变形Ax=b 方程两边的左边同时除以A ,得:b AAx A11=,即:b A b Ax 11-==MATLAB 的实现(左除):x=A\b 2.逆矩阵 【基本观点】方阵A 称为可逆的,如果存在方阵B ,使 AB=BA=E,这里E 表示单位阵.并称B 为A 的逆矩阵,记B=1-A .方阵A 可逆的充分必要条件是A 的行列式det A ≠0.求逆矩阵理论上的公式为*1det 1A AA =-, (3.4)这里*A 为A 的伴随矩阵.利用逆矩阵,当A 可逆时,(3.2)的解可表示为b A x 1-=.由于公式(3.4)涉及大量行列式计算,数值计算不采用.求逆矩阵的数值算法一般是基于矩阵分解的方法.3.特征值与特征向量 【基本观点】对于方阵A ,若存在数λ和非零向量x ,使,x Ax λ= (3.5) 则称λ为A 的一个特征值,x 为A 的一个对应于特征值λ的特征向量.特征值计算归结为特征多项式的求根.对于n 阶实数方阵,特征多项式在复数范围内总有n 个根。

线性代数-matlab实验报告

线性代数-matlab实验报告

用matlab解决线性代数问题学号: 82120545 , 姓名: 于珊,1 求解线性方程组实验内容: 用MATLAB求解如下线性方程组Ax = b, 其中A =5600000015600000015600000015600000015600000015600000015600000015⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦, b = [1,4,6,0,7,1,2,4] T.实验目的:1. 了解MATLAB软件, 学会MATLAB软件的一些基本操作;2. 熟悉MATLAB软件的一些数值计算功能;3. 练习编写简单的MATLAB程序。

实验原理:1. 对于满足条件系数矩阵的行列式D=︱A︱≠0的方程组Ax= b,根据克拉默(Gramer)法则,此线性方程组有唯一解:,j=1,2,…,n。

2. 当线性方程组的系数矩阵A是可逆矩阵时, 方程组Ax = b的解为X = A\B。

3. 当系数矩阵A可逆时, 对增广矩阵[A, b]进行初等行变换, 把它化为行最简形矩阵B, 则B的最后一列就是该方程组的解向量。

实验方案: 1. 在MATLAB命令窗口中输入如下命令:>> a_1=[5;1;0;0;0;0;0;0];a_2=[6;5;1;0;0;0;0;0];>> a_3=[0;6;5;1;0;0;0;0];a_4=[0;0;6;5;1;0;0;0];>> a_5=[0;0;0;6;5;1;0;0];a_6=[0;0;0;0;6;5;1;0];>> a_7=[0;0;0;0;0;6;5;1];a_8=[0;0;0;0;0;0;6;5]; %输入矩阵A>> b=[1;4;6;0;7;1;2;4];>> D=det([a_1,a_2,a_3,a_4,a_5,a_6,a_7,a_8]);>> D_1=det([b,a_2,a_3,a_4,a_5,a_6,a_7,a_8]);>> D_2=det([a_1,b,a_3,a_4,a_5,a_6,a_7,a_8]);>> D_3=det([a_1,a_2,b,a_4,a_5,a_6,a_7,a_8]);>> D_4=det([a_1,a_2,a_3,b,a_5,a_6,a_7,a_8]);>> D_5=det([a_1,a_2,a_3,a_4,b,a_6,a_7,a_8]);>> D_6=det([a_1,a_2,a_3,a_4,a_5,b,a_7,a_8]);>> D_7=det([a_1,a_2,a_3,a_4,a_5,a_6,b,a_8]);>> D_8=det([a_1,a_2,a_3,a_4,a_5,a_6,a_7,b]);>> x_1=D_1/D;x_2=D_2/D;x_3=D_3/D;x_4=D_4/D;>> x_5=D_5/D;x_6=D_6/D;x_7=D_7/D;x_8=D_8/D;>> format rat,X=[x_1,x_2,x_3,x_4,x_5,x_6,x_7,x_8]%利用克拉默法则求解方程组2. 在MATLAB命令窗口中输入如下命令:>> %把该方程组记为AX=b,则X=A\b>> A=[5,6,0,0,0,0,0,0;1,5,6,0,0,0,0,0;0,1,5,6,0,0,0,0;0,0,1,5,6,0,0,0;0,0,0,1,5,6,0,0;0,0,0,0,1,5,6,0;0,0,0,0,0,1,5,6;0,0,0,0,0,0,1,5]; %输入矩阵A>> b=[1;4;6;0;7;1;2;4]; %输入矩阵b>>format rat,X=A\b%求解方程组3. 在MATLAB命令窗口中输入如下命令:>> A=[5,6,0,0,0,0,0,0;1,5,6,0,0,0,0,0;0,1,5,6,0,0,0,0;0,0,1,5,6,0,0,0;0,0,0,1,5,6,0,0;0,0,0,0,1,5,6,0;0,0,0,0,0,1,5,6;0,0,0,0,0,0,1,5];%输入矩阵A>> b=[1;4;6;0;7;1;2;4]; %输入矩阵b>> B=[A,b];%B为增广矩阵[A,b]>> format rat>> C=rref(B); %用初等行变换把B化为行最简形>> X=C(:,9) %利用高斯消元法求解方程组实验结果:1.方法一的计算结果为:X =Columns 1 through 6-3419/592 727/146 -2543/1009 697/307 -131/89 2033/1009 Columns 7 through 8-835/659 1913/18162方法二的计算结果为:.X =-3419/592727/146-2543/1009697/307-131/892033/1009-835/6591913/18163.方法三的计算结果为:X =-797/138727/146-310/123697/307-131/89542/269-204/161138/131对实验结果的分析:上述3种方案所得的结果不完全一致, 这是因为不同的计算方法在计算机中有不同的精度,导致计算数据结果的不同。

matlab实习报告二5篇

matlab实习报告二5篇

matlab实习报告二5篇第一篇:matlab实习报告二MATLAB实习报告(2)实验二 MATLAB矩阵分析与处理王夏一、实验目的1、掌握生成特殊矩阵的方法。

2、掌握矩阵分析的方法。

3、用矩阵求逆发解线性方程组。

二、实验内容1、设有分块矩阵A=[E3×3 R3×2;O2×3 S2×2],其中E、R、O、S分别为单位矩阵、随机矩阵、零矩阵和对角阵,试通过数值计算验证A²=[E R+RS;O S²]。

程序清单:E=eye(3);R=rand(3,2);O=zeros(2,3);S=diag([4,5]);A=[E R;O S] ;A2=A^2;C=[E R+R*S;O S^2];length(find(A2==C))==25 运行结果:ans =12、产生5阶希尔伯特矩阵H和5阶帕斯卡矩阵P,且求其行列式的值Hh和Hp以及他们的条件数Th和Tp,判断哪个矩阵的性能更好,为什么?程序清单:format rat H=hilb(5);format short P=pascal(5);Hh=det(H);Hp=det(P);Th=cond(A);Tp=cond(P);运行结果:Hh =3.7493e-012 Hp =1 Th =5.5228 Tp =8.5175e+003 实验收获:会建立希尔伯特矩阵和帕斯卡矩阵,知道怎么求矩阵行列式的值以及条件数。

希尔伯特矩阵的性能更好,条件数越接近1的矩阵性能越好。

3、建立一个5×5矩阵,求它的行列式值、迹、秩和范数。

程序清单:A=[1:5;1:0.1:1.5;2 5 7 3 9;2:6;3:0.4:4.6]Ha=det(A);Ra=rank(A);Ta=trace(A);Na=norm(A);运行结果:Ha =1.4421e-031 Ra = 3 Ta =18.7000 Na =19.49664、已知向量A,求A的特征值及特征向量,并分析其数学意义。

Matlab数学实验报告二

Matlab数学实验报告二

数学软件课程设计题目线性方程组求解班级数学081姓名曹曼伦实验目的:用Matlab语言实现Gauss算法和cholesky算法(chol)以及LU分解(lu),求解一般线性方程组。

用Matlab语言实现Jacobi迭代算法、Gauss-Seidel迭代算法和逐次超松弛迭代法,求解一般的线性代数方程组问题。

实验内容:一.直接法(1)Gauss消元法:function x=DelGauss(a,b)% Gauss消去法[n,m]=size(a);nb=length(b);det=1;%存储行列式值x=zeros(n,1);for k=1:n-1for i=k+1:nif a(k,k)==0returnendm=a(i,k)/a(k,k);for j=k+1:na(i,j)=a(i,j)-m*a(k,j);endb(i)=b(i)-m*b(k);enddet=det*a(k,k);enddet=det*a(n,n);for k=n:-1:1 %回代for j=k+1:nb(k)=b(k)-a(k,j)*x(j);endx(k)=b(k)/a(k,k);endExample:>> A=[1.0170 -0.0092 0.0095;-0.0092 0.9903 0.0136;0.0095 0.0136 0.9898]; >> b=[1 0 1]';>> x=DelGauss(A,b)x =0.9739-0.00471.0010(2)对称正定矩阵之Cholesky分解法:function L=Cholesky(A)%对对称正定矩阵A进行Cholesky分解n=length(A);L=zeros(n);for k=1:ndelta=A(k,k);for j=1:k-1delta=delta-L(k,j)^2;endif delta<1e-10return;endL(k,k)=sqrt(delta);for i=k+1:nL(i,k)=A(i,k);for j=1:k-1L(i,k)=L(i,k)-L(i,j)*L(k,j);endL(i,k)=L(i,k)/L(k,k);endendfunction x=Chol_Solve(A,b)%利用对称正定矩阵之Cholesky分解求解线性方程组Ax=b n=length(b);l=Cholesky(A);x=ones(1,n);y=ones(1,n);for i=1:nz=0;for k=1:i-1z=z+l(i,k)*y(k);endy(i)=(b(i)-z)/l(i,i);endfor i=n:-1:1z=0;for k=i+1:nz=z+l(k,i)*x(k);endx(i)=(y(i)-z)/l(i,i);endExample:>> A=[1.0170 -0.0092 0.0095;-0.0092 0.9903 0.0136;0.0095 0.0136 0.9898];>> b=[1 0 1]';>> x=Chol_Solve(A,b)x =0.9739 -0.0047 1.0010(3)LU分解法:function [l,u]=lu(a)%LU分解n=length(a);l=eye(n);u=zeros(n);for i=1:nu(1,i)=a(1,i);endfor i=2:nl(i,1)=a(i,1)/u(1,1);endfor r=2:n%%%%for i=r:nuu=0;for k=1:r-1uu=uu+l(r,k)*u(k,i);endu(r,i)=a(r,i)-uu;end%%%%for i=r+1:nll=0;for k=1:r-1ll=ll+l(i,k)*u(k,r);endl(i,r)=(a(i,r)-ll)/u(r,r);end%%%%Endfunction x=lusolv(a,b)%LU分解求解线性方程组aX=b if length(a)~=length(b)error('Error in inputing!')return;endn=length(a);[l,u]=lu(a);y(1)=b(1);for i=2:nz=0;for k=1:i-1z=z+l(i,k)*y(k);endy(i)=b(i)-z;endx(n)=y(n)/u(n,n);for i=n-1:-1:1z=0;for k=i+1:nz=z+u(i,k)*x(k);endx(i)=(y(i)-z)/u(i,i);endExample:>> a=[1.0170 -0.0092 0.0095;-0.0092 0.9903 0.0136;0.0095 0.0136 0.9898]; >> b=[1 0 1]';>> x=Chol_Solve(a,b)x =0.9739 -0.0047 1.0010二.迭代法(1)Jacobi迭代法:function [x,n]=jacobi(A,b,x0,eps,varargin)if nargin==3eps= 1.0e-6;M = 200;elseif nargin<3errorreturnelseif nargin ==5M = varargin{1};D=diag(diag(A)); %求A的对角矩阵L=-tril(A,-1); %求A的下三角阵U=-triu(A,1); %求A的上三角阵B=D\(L+U);f=D\b;x=B*x0+f;n=1; %迭代次数while norm(x-x0)>=epsx0=x;x=B*x0+f;n=n+1;if(n>=M)disp('Warning: 迭代次数太多,可能不收敛!');return;endendExample:>> x0=[0;0;0]x0 =>> [x,n]=Jacobi(A,b,x0)x =0.9739-0.00471.0010n =5(2)Gauss-Seidel迭代法:function [x,n]=gauseidel(A,b,x0,eps,M) if nargin==3eps= 1.0e-6;M = 200;elseif nargin == 4M = 200;elseif nargin<3errorreturn;endD=diag(diag(A)); %求A的对角矩阵L=-tril(A,-1); %求A的下三角阵U=-triu(A,1); %求A的上三角阵f=(D-L)\b;x=G*x0+f;n=1; %迭代次数while norm(x-x0)>=epsx0=x;x=G*x0+f;n=n+1;if(n>=M)disp('Warning: 迭代次数太多,可能不收敛!');return;endendExample:>> x0=[0;0;0]x0 =>> [x,n]=gauseidel(A,b,x0)x =-0.00471.0010n =4(3)对称逐次超松驰迭代法:function [x,n]=SSOR(A,b,x0,w,eps,M) if nargin==4eps= 1.0e-6;M = 200;elseif nargin<4errorreturnelseif nargin ==5M = 200;endif(w<=0 || w>=2)error;return;endD=diag(diag(A)); %求A的对角矩阵L=-tril(A,-1); %求A的下三角阵U=-triu(A,1); %求A的上三角阵B1=inv(D-L*w)*((1-w)*D+w*U);B2=inv(D-U*w)*((1-w)*D+w*L);f1=w*inv((D-L*w))*b;f2=w*inv((D-U*w))*b;x12=B1*x0+f1;x =B2*x12+f2;n=1; %迭代次数while norm(x-x0)>=epsx0=x;x12=B1*x0+f1;x =B2*x12+f2;n=n+1;if(n>=M)disp('Warning: 迭代次数太多,可能不收敛!');return;endendExample:>> [x,n]=SSOR(A,b,x0,1)x =0.9739-0.00471.0010n =3实验结果:一.直接法(1)Gauss消元法:>> A=[1.0170 -0.0092 0.0095;-0.0092 0.9903 0.0136;0.0095 0.0136 0.9898]; >> b=[1 0 1]';>> x=DelGauss(A,b)x =0.9739-0.00471.0010(2)对称正定矩阵之Cholesky分解法:>> A=[1.0170 -0.0092 0.0095;-0.0092 0.9903 0.0136;0.0095 0.0136 0.9898];>> b=[1 0 1]';>> x=Chol_Solve(A,b)x =0.9739 -0.0047 1.0010(3)LU分解法:>> a=[1.0170 -0.0092 0.0095;-0.0092 0.9903 0.0136;0.0095 0.0136 0.9898]; >> b=[1 0 1]';>> x=Chol_Solve(a,b)x =0.9739 -0.0047 1.0010二.迭代法(1)Jacobi迭代法:>> [x,n]=Jacobi(A,b,x0)x =0.9739-0.00471.0010n =5(2)Gauss-Seidel迭代法:>> [x,n]=gauseidel(A,b,x0)x =0.9739-0.00471.0010n =4(3)对称逐次超松驰迭代法:>> [x,n]=SSOR(A,b,x0,1)x =0.9739-0.00471.0010n =3。

线性代数实验报告

线性代数实验报告

线性代数实验报告
本次实验我们主要学习了线性代数的基础知识,包括向量的表示、矩阵的表示、线性方程组的求解以及线性变换的性质等方面。

在实验中,我们使用MATLAB进行计算及可视化操作。

具体来说,我们学习了以下几个方面的内容:
1. 向量的表示
向量是线性代数的基本概念之一,表示一个有向线段。

而在计算机中,可以通过向量的坐标来表示向量。

本次实验中,我们学习了如何使用MATLAB求出向量的模长、单位向量以及两个向量之间的夹角等。

矩阵是线性代数中的另一个重要概念,常用于表示线性方程组的系数矩阵。

在MATLAB 中,矩阵可以通过嵌套的向量来表示。

我们学习了如何求矩阵的行列式、逆矩阵、特征值等。

3. 线性方程组的求解
线性方程组是线性代数中的一个重要概念,其解法有很多种,包括高斯消元法、LU分解法、Jacobi迭代法等。

本次实验中,我们学习了如何使用MATLAB求解线性方程组,并对几种求解方法进行了比较和分析。

4. 线性变换的性质
线性变换是线性代数中的另一个重要概念,可以将一个向量空间变换成另一个向量空间。

在MATLAB中,可以通过矩阵乘法的方式来表示线性变换。

我们学习了线性变换的一些基本性质,如线性、保持原点等,并通过可视化的方式观察线性变换的效果。

通过本次实验,我们不仅掌握了线性代数的一些基础知识,也学会了使用MATLAB进行线性代数方面的计算和可视化操作。

这对于学习和研究线性代数都有着重要的意义。

线性代数实验报告范例

线性代数实验报告范例

《线性代数》实验报告学号: 姓名: 得分:实验1 化学方程式配平实验内容: 配平下列反应式FeS + KMnO 4 + H 2SO 4 —— K 2SO 4 + MnSO 4 + Fe 2(SO 4)3 + H 2O + S ↓实验目的: 1. 掌握MATLAB 中若干基本命令.2. 利用MATLAB 求解齐次线性方程组, 并应用于化学方程式的配平.实验原理: 利用线性方程组配平化学方程式是一种待定系数法. 关键是根据化学方程式两边所涉及到的各种元素的量相等的原则列出方程. 所得到的齐次线性方程组Ax = 0中所含方程的个数等于化学方程式中元素的种数s , 未知数的个数就是化学方程式中的项数n .当r(A ) = n -1时, Ax = 0的基础解系中含有1个(线性无关的)解向量. 这时在通解中取常数k 为各分量分母的最小公倍数即可.当r(A ) ≤ n -2时, Ax = 0的基础解系中含有2个以上的线性无关的解向量. 这时可以根据化学方程式中元素的化合价的上升与下降的情况, 在原线性方程组中添加新的方程.设x 1 FeS + x 2 KMnO 4 + x 3 H 2SO 4=== x 4 K 2SO 4 + x 5 MnSO 4 + x 6 Fe 2(SO 4)3 + x 7 H 2O + x 8S ↓,考察方程式两边各种元素可得1613456824252 ......F e 3 ......S 2 ......K x x x x x x x x x x x x =+=+++==23456737 ......M n 444412 ......O22 ......Hx x x x x x x x ⎧⎪⎪⎪⎪⎨⎪⎪+=+++⎪=⎪⎩, 即1613456824252345673720302004444120220x x x x x x x x x x x x x x x x x x x x -=⎧⎪+----=⎪⎪-=⎪⎨-=⎪⎪+----=⎪-=⎪⎩注意到FeS 中Fe 的化合价为+2, S 的化合价为-2, KMnO 4中Mn 的化合价为+7, 反应后它们的化合价分别变为+3, 0, +2. 因此有3x 1 - 5x 2 = 0.综上所述, 可得如下齐次线性方程组161345682425234567371220302004444120220350x x x x x x x x x x x x x x x x x x x x x x -=⎧⎪+----=⎪⎪-=⎪-=⎨⎪+----=⎪⎪-=⎪-=⎪⎩ (*)实验方案: 1. 在MATLAB 命令窗口中输入如下命令:>> A = [1,0,0,0,0,-2,0,0;1,0,1,-1,-1,-3,0,-1;0,1,0,-2,0,0,0,0;0,1,0,0,-1,0,0,0;0,4,4,-4,-4,-12,-1,0;0,0,2,0,0,0,-2,0; 3,-5,0,0,0,0,0,0];>> r = rank(A), x = null(A,’r ’); format rat, x ’实验结果: Matlab 执行上述命令后得r = 7 ans =1 3/5 12/5 3/10 3/5 1/2 12/5 1 可见上述齐次线性方程组的通解为x = k (1, 3/5, 12/5, 3/10, 3/5, 1/2, 12/5, 1)T .取k = 10得x = (10, 6, 24, 3, 6, 5, 24, 10)T . 可见配平后的化学方程式如下10 FeS + 6 KMnO 4 + 24 H 2SO 4=== 3 K 2SO 4 + 6 MnSO 4 + 5 Fe 2(SO 4)3 + 24 H 2O + 10 S ↓对实验结果的分析:上述化学方程式中左右两边的原子团(SO 4)的数目也是一致的. 这意味着原子团(SO 4)在反应前后总量未变.如果事先考察原子团(SO 4)的数目, 则可以得到x 3 = x 4 + x 5 + 3x 6, 即x 3 - x 4 - x 5 - 3x 6 = 0.将上面的方程组(*)中的最后一个方程换成x 3 - x 4 - x 5 - 3x 6 = 0可得1613456824252345673734562030200444412022030x x x x x x x x x x x x x x x x x x x x x x x x -=⎧⎪+----=⎪⎪-=⎪-=⎨⎪+----=⎪⎪-=⎪---=⎪⎩ (**)用MATLAB 求解(**)所得到的结果与上述结果完全一致.实验2 人员流动问题实验内容: 某地区甲、乙两公司经营同一业务. 经验表明甲公司的客户每年有1/3继续留作甲的客户, 而2/3转作乙的客户; 乙的客户有3/5转作甲的客户, 而2/5继续留作乙的客户, 假定客户的总量不变, 起始年甲、乙两公司拥有的客户份额分别为2/3和1/3, 求第n 年客户市场分配情况.实验目的: 1. 掌握MATLAB 中若干基本命令.2. 利用矩阵A 的相似标准形计算A n , 并应用于人员流动问题.实验原理: 设第n 年甲、乙两公司拥有的客户份额分别为x n 和y n , 记成向量n n x y ⎛⎫⎪⎝⎭. 根据已知条件可得11x y ⎛⎫⎪⎝⎭=2/31/3⎛⎫⎪⎝⎭,⎪⎪⎭⎫ ⎝⎛++11n n y x =1/33/52/32/5⎛⎫⎪⎝⎭⎪⎪⎭⎫⎝⎛n n y x .令A =1/33/52/32/5⎛⎫⎪⎝⎭, 则⎪⎪⎭⎫ ⎝⎛++11n n y x = A ⎪⎪⎭⎫ ⎝⎛n n y x = A 211n n x y --⎛⎫⎪⎝⎭= … = An 11x y ⎛⎫⎪⎝⎭.实验方案: 在MATLAB 命令窗口中输入如下命令: >> A = [1/3,3/5;2/3,2/5]; format rat >> [P,D] = eig(A) Matlab 执行后得 P =-985/1393 -5919/8848 985/1393 -3353/4511 D =-4/15 0 0 1可见P -1AP = D 为对角矩阵, 且A n = PD n P -1.为了进一步计算⎪⎪⎭⎫ ⎝⎛++11n n yx , 即P Λn P-111x y ⎛⎫⎪⎝⎭, 在Matlab 命令窗口输入以下命令>> syms n %定义符号变量>> P*[(-4/15)^n,0;0,1]*P^(-1)*[2/3;1/3]Matlab执行后得ans =[ 11/57*(-4/15)^n+9/19][ -11/57*(-4/15)^n+10/19]实验结果: 第n年甲、乙两公司拥有的客户份额分别为114 5715n-⎛⎫ ⎪⎝⎭+919和1145715n-⎛⎫- ⎪⎝⎭+1019.对实验结果的分析:当n→∞时, 1145715n-⎛⎫ ⎪⎝⎭+919→919, -1145715n-⎛⎫⎪⎝⎭+1019→1019. 这意味着, 随着n增加, 甲、乙两公司拥有的客户份额趋于稳定, 分别趋向于919和1019.。

北科大matlab第4次实验报告

北科大matlab第4次实验报告

《数学实验》报告实验名称数学实验学院自动化专业班级姓名学号2015年4月一、 【实验目的】使用MATLAB 进行线性代数相关运算及求数值积分 二、 【实验任务】1、求下列线性方程组的通解: (1)1234123123420302340x x x x x x x x x x x ++-=⎧⎪-++=⎨⎪-+-=⎩ (2)123412341234031231/2x x x x x x x x x x x x --+=⎧⎪-+-=⎨⎪--+=-⎩2、用三种方法求积分的数值解:20sin 1cos x xdx xπ+⎰3、用多种数值方法计算定积分411sin dx xπ-⎰,,观察不同方法相应的误差.三、 【实验程序】1、 (1)A = [1 1 2 -1; -1 1 3 0; 2 -3 4 -1]; rref(A)(2)A = [1 -1 -1 1 0; 1 -1 1 -1 1; 1 -1 -2 3 -1/2]; rref(A)2、建立函数文件integration.m function y = integration(x) y = x.*sin(x)./(1+cos(x).^2); 编程如下:x = 0:pi/100:pi;y = x.*sin(x)./(1+cos(x).^2); t = length(x);s1 = sum(y(1:(t-1)))*pi/100 %矩形公式7-1 s2 = sum(y(2:t))*pi/100 %矩形公式7-2 s3 = trapz(x,y) %梯形公式7-5 s4 = quad('integration',0,pi) %辛普生公式7-63、建立函数文件integration.mfunction y = integration(x) y = 1./(1-sin(x)); 编程如下:x = 0 : pi/400 : pi/4; y = 1./(1-sin(x)); t = length(x);s1 = sum(y(1 : (t - 1)))*pi/400 %矩形公式7-1 s2 = sum(y(2 : t))*pi/400 %矩形公式7-2 s3 = trapz(x,y) %梯形法7-5 s4 = quad('integration',0,pi/4) %辛普生法7-6 vpa(sqrt(2))四、 【实验结果】 1、 (1)ans =1 0 0 -14/25 0 1 0 -1/5 0 0 1 -3/25A 的秩为3,方程组有无穷多解同解方程组:⎪⎪⎪⎩⎪⎪⎪⎨⎧===425351251434241x x x x x x取1x 4=,解得方程组的基础解系为:⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡=1253512514ξ所以方程组的通解为:⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡12535125144321k x x x x ,其中k 为任意实数(2)ans =1 -1 0 0 1/2 0 0 1 0 1/2 0 0 0 1 0增广矩阵的秩为3,等于系数矩阵的秩,而小于未知量的个数4,所以方程组有无穷多解,原方程组对应的同解方程组为:⎪⎪⎪⎩⎪⎪⎪⎨⎧==+=021221431x x x x 可找到其中一个特解为:⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡=*021021η再求解对应的齐次方程组⎪⎩⎪⎨⎧===002431x x xx ,可得到一个基础解系:⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=0011ξ因此,此方程组的通解为:()R k k x x x x ∈⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡+⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡021021001143212、s1 =2.4673 s2 =2.4673 s3 =2.4673 s4 =2.4674矩形公式以及梯形法计算结果都是2.4673,辛普生法计算结果是2.46743、s1 =1.4048 s2 =1.4237s3 =1.4143s4 =1.4142ans =1.4142135623730950488016887242097矩形公式7-1计算,结果是1.4048;矩形公式7-2计算,结果是1.4237;梯形法计算,结果是1.4143;辛普生法计算结果是1.4142。

线性代数实验报告

线性代数实验报告

《线性代数》实验报告学号: 姓名: 得分:实验一 车流量统计实验内容:调查每条道路每小时的车流量实验目的: 1. 掌握MATLAB 中若干基本命令.2.利用MATLAB 求非齐次线性方程组的解,并应用于车流量统计。

实验原理:(1)要调查每小时每条道路上车的流量,就得考察每个交叉路口车的流进流出的量,且一定满足每个交叉路口车的流入总量等于车的流出总量,进而列出等式,联立成方程组:180+220=x 1+x 7 x1+0+0+0+0+0+x7+0+0+0+0+0=400 x 1+x 9=300+x 2 x1-x2+0+0+0+0+0+0+x9+0+0+0=300 x 2+100=300+x 11 0+x2+0+0+0+0+0+0+0+0-x11+0=200 x 7+x 3=350+x 8 0+0+x3+0+0+0+x7-x8+0+0+0+0=350 x 4+x 10=x 9+x 3 整理得: 0+0+x3-x4+0+0+0+0+0+0+x11-x12=0 500+x 11=x 4+x 12 0+0+0+x4+0+0+0+0+0+0-x11+x12=500 x 8+x 5=160+150 0+0+0+0+x5+0+0+x8+0+0+0+0=310 400+x 6=x 5+x 10 0+0+0+0+x5-x6+0+0+0+x10+0+0=400 150+x 12=290+x 6 0+0+0+0+0+x6+0+0+0+0+0-x5=-140(2)计算系数矩阵的秩r(A),12-r(A)即是自变量的个数,即是所要增加的车流量统计的道路的条数,根据自变量确定因变量的值,故因变量的数据就没必要统计。

实验方案:在MATLAB 命令窗口下输入如下命令:A=[1,0,0,0,0,0,1,0,0,0,0,0;1,-1,0,0,0,0,0,0,1,0,0,0;0,1,0,0,0,0,0,0,0,0,-1,0;0,0,1,0,0,0,1,-1,0,0,0,0;0,0,1,-1,0,0,0,0,0,0,1,-1;0,0,0,1,0,0,0,0,0,0,-1,1;0,0,0,0,1,0,0,1,0,0,0,0;0,0,0,,0,1,-1,0,0,0,1,0,0;0,0,0,220300100180350160150 400 290300500150x 1x 2x 3 x 9x 4x 5 x 6x 7x 80,0,1,0,0,0,0,0,-1];b=transpose([400,300,200,350,0,500,310,400,140]);rank(A)rank([A,b])format ratrref([A,b])实验结果:ans =9ans =9ans =1 0 0 0 0 0 0 0 0 1 0 -1 7800 1 0 0 0 0 0 0 0 0 -1 0 2000 0 1 0 0 0 0 0 0 0 0 0 5000 0 0 1 0 0 0 0 0 0 -1 1 5000 0 0 0 1 0 0 0 0 1 0 -1 5400 0 0 0 0 1 0 0 0 0 0 -1 1400 0 0 0 0 0 1 0 0 -1 0 1 -3800 0 0 0 0 0 0 1 0 -1 0 1 -2300 0 0 0 0 0 0 0 1 -1 -1 1 -280由输出的结果可知rank(A)=rank([A,b]),故此非齐次线性方程组有解。

线性代数实验报告

线性代数实验报告

线性代数实验报告班级学号得分2013年12月24日数学实验报告题目一、 实验目的1.熟悉MATLAB 的矩阵初等运算;2.掌握求矩阵的秩、逆、化最简阶梯形的命令; 3.会用MABLAB 求解线性方程组二、 实验问题1. 已知⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡--=351503224A ,⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡---=112302431B ,在MATLAB 命令窗口中建立A 、B 矩阵并对其进行以下操作:(1) 计算矩阵A 的行列式的值det()?A =(2) 分别计算下列各式:B A -2 、 B A *和B A *.、 1-AB 、 B A 1-、 2A 、 T A2. 在MATLAB 中分别利用矩阵的初等变换及函数rank 、函数inv 求下列矩阵的秩和逆:(1) ⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡----=4211104532361A 求 Rank(A)=? (2)3501120010201202B ⎡⎤⎢⎥⎢⎥=⎢⎥⎢⎥⎣⎦求?1=-B 3. 在MATLAB 中判断下列向量组是否线性相关,并找出向量组中的一个最大线性无关组:()11,1,3,2α'=,()21,1,1,3α'=--,()35,2,8,9α'=-,()41,3,1,7α'=-4、在MATLAB 中判断下列方程组解的情况,若有多个解,写出通解:(1)⎪⎪⎩⎪⎪⎨⎧=+--=-++=+--=-+-061230273020244321432143214321x x x x x x x x x x x x x x x x (2) ⎪⎪⎩⎪⎪⎨⎧-=+-=-+-=+-=++69413283542432321321321321x x x x x x x x x x x x 5、化方阵222254245A -⎛⎫⎪=- ⎪ ⎪--⎝⎭为对角阵.6、求一个正交变换,将二次型222123121323553266f x x x x x x x x x =++-+-化为标准型。

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

合肥学院
2018—2019学年第2学期
线性代数及应用 (模块)
实验报告
实验名称:线性代数MATLAB实验
实验类别:综合性 设计性□验证性 专业班级: 17通信工程(2)班
实验时间: 9-12周
组别:第组人数 3人
指导教师:牛欣成绩:
完成时间: 2019年 5 月9日
一. 小组成员
姓名学号具体分工
汪蔚蔚(组长) 1705022025 A报告最后的整合,编写,案例四的计算与应用
以及案例一的计算与证明
陶乐 1 1705022009 C案例二,化学方程式配平问题
程赢妹1505022036 A案例三,应用题灰度值的计算问题
二. 实验目的
1、案例一利用MATLAB进行线性代数计算,求出矩阵B
2、案例二利用MATLAB计算出每一个网格数据的值,然后每一个网格数据的值乘以256以后进行归一化处理,根据每个网格中的灰度值,绘制出灰度图像。

3、案例三利用MATLAB完成对化学方程式进行配平的应用
4、案例四利用MATLAB求极大线性无关组,并表示出其余向量
三. 实验内容
1、案例一:
0,1,0
,=1,0,0,
0,0,0
A B AB BA A B
⎡⎤
⎢⎥
=⎢⎥
⎢⎥
⎣⎦
已知矩阵和矩阵满足乘法交换律,即且求矩阵。

2、案例二
配平下列化学方程式:
3、案例三:
3*32
0.81.21.70.20.3
0.6021.61.20.6.
1MATLAB
2256MATLAB
给定一个图像的个方向上的灰度叠加值:沿左上方到右
下方的灰度叠加值依次为,,,,;沿右上方到左下
方的灰度叠加值依次为,。

,,,
)建立可以确定网络数据的线性方程组,并用求解
)将网络数据乘以,再取整,用绘制该灰度图像
>> X1=B\C1
X1 =
3.0000
1.0000
-0.0000
>> X2=B\C2
X2 =
-0.5000
1.0000
2.5000
六.实验结果
1、实验一结果
我们本来设
,,
=,,
,,
a b c
B d e f
g h i
⎡⎤
⎢⎥
⎢⎥
⎢⎥
⎣⎦最终得到d=b, e=a, f=c=h=g=0,i=i,即矩阵
,,0
=,,0
0,0,
a b
B d e
i
⎡⎤
⎢⎥
⎢⎥
⎢⎥
⎣⎦,其中a=e,b=d.因此B是一个对称矩阵。

2、实验二结果
3、实验三结果
灰度值图像:
数学编译器
4、实验四结果
通过题目我们可以的到一个由a1,a2,a4组成的极大线性无关组(a1,a3,a4; a1,a2,a5; a1,a3,a5也可构成极大线性无关组)
通过极大线性无关组来表示其余向量a3,a5,我们可以得到解向量X1=[3.0000,1.0000, 0.0000]T, X2=[-0.5000,1.0000, 2.5000]T. 即a3=3a1+a2; a5=-0.5a1+a2+2.5a4
七.实验总结(包括实验分析、改进方案、心得体会、创新之处等)
指导教师签名:。

相关文档
最新文档