线性代数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法,其次是梯形法,而欧拉法最为不稳定。

  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
七.实验总结(包括实验分析、改进方案、心得体会、创新之处等)
指导教师签名:。

相关文档
最新文档