直接解法

Ax=l,求x。利用逆矩阵、矩阵除法、x=inv(A'A)*A'l

lind.m文件如下,

%求解线性方程组

% x1 + 2x2 + 3x3 + 9x4 = 5

%2x1 + 2x2 + 5x3 + 4x4 = 2

%3x1 + 5x2 + x3 + 5x4 = 3

%7x1 + 4x2 + 2x3 -10x4 = 8

A=[1 2 3 9;2 2 5 4;3 5 1 5;7 4 2 -10];

b=[5 2 3 8]';

x=A\b

c=inv(A)*b

d=inv(A'*A)*A'*b

输出

>> lind.m

x =

4.9227

-3.2373

-1.1680

1.1173

c =

4.9227

-3.2373

-1.1680

1.1173

d =

4.9227

-3.2373

-1.1680

1.1173

Warning: Direct access of structure fields returned by a function call (e.g.,

call to lind) is not allowed. See MATLAB 7.10 Release Notes, "Subscripting Into Function Return Values" for details.

??? Attempt to reference field of non-structure array.

求线性方程组通解

lind.m内容如下

%求解线性方程组通解

% X1 +5 *X2 -1 *X3 -1 *X4 = -1

% X1 -2 *X2 +1 *X3 +3 *X4 = 3

%3*X1 +8 *X2 -1 *X3 +1 *X4 = 1

% X1 -9 *X2 +3 *X3 +7 *X4 = 7

%系数矩阵和增广矩阵的秩都为2,说明有多组解,且基础解系4-2=2

%求基础解系用Z=null(A,'r'),可获得标准化的基础解系。特解采用广义逆函数pinv(A),

%可求得A的广义逆矩阵,采用x0=pinv(A)*b求得特解,通解为x=k1*x1+k2*x2+...+kn*xn+x0

A=[1 5 -1 -1 ;

1 -2 1 3;

3 8 -1 1;

1 -9 3 7];

b=[-1 3 1 7]';

r1=rank(A)%系数矩阵的秩

r2=rank(A,b)%增广矩阵的秩

Z=null(A,'r')%求基础解系

x0=pinv(A)*b%求得特解

%验证该解

k1=rand(1);

k2=rand(1);

x=k1*Z(:,1)+k2*Z(:,2)+x0

err=norm(A*x-b)

>> lind.m

r1 =

2

r2 =

2

Z =

-0.4286 -1.8571

0.2857 0.5714

1.0000 0

0 1.0000

x0 =

0.3785

-0.0876

0.1873

0.7530

x =

-0.1805

0.0994

0.2848

1.0315

err =

1.8971e-015

矛盾方程组最小二乘解

%矛盾方程组的最小二乘解

%原始数据表

% x 1 1 2 2 2 3 3 4 4 4 5 6

% y 14.8 15.9 20.2 20.0 18.55 22.2 20.9 21 18.3 20.7 16.1 14.75

% 分别一次

A=[ 1 1 2 2 2 3 3 4 4 4 5 6]';

t=ones(size(A));

A1=[t,A];

y= [14.8 15.9 20.2 20.0 18.55 22.2 20.9 21 18.3 20.7 16.1 14.75]';

%x=inv(A'*A)*A'*y

x1=pinv(A1)*y%线性回归方程系数

n=length(A);

rmse1=sqrt(sum((y-A1*x1).^2)/n)%均方误差

xsq=A.^2;

A2=[t,A,xsq]

x2=pinv(A2)*y%线性回归方程系数

rmse2=sqrt(sum((y-A2*x2).^2)/n)%均方误差

xmin=min(A);

xmax=max(A);

nx1=xmin:0.2:xmax;

ny1=x1(1)+x1(2)*nx1;

nx2=nx1;

ny2=x2(1)+x2(2)+x2(3)*nx2.^2;

plot(A',y,'*',nx1,ny1,'+b',nx2,ny2,'r')

输出

>> lind.m

x1 =

18.8820

-0.0861

rmse1 =

2.5105

A2 =

1 1 1

1 1 1

1 2 4

1 2 4

1 2 4

1 3 9

1 3 9

1 4 16

1 4 16

1 4 16

1 5 25

1 6 36

x2 =

10.3924

6.3994

-0.9793

rmse2 =

1.0960

MATLAB线性方程组的两种求解,matlab求解线性方程组相关推荐

  1. Matlab中的两种除法

    Matlab中的两种除法 matlab中的向量运算,试比较: >>a=[1,1,1] a = 1     1     1 >> b=[2,2,2] b = 2     2    ...

  2. 100A有源电力滤波器(APF)MATLAB仿真,两种谐波补偿模式:全阶补偿和选阶补偿

    100A有源电力滤波器(APF)MATLAB仿真,两种谐波补偿模式:全阶补偿和选阶补偿,matlab版本V2011,基于LCL滤波器的I型三电平拓扑仿真模型,三相四线制,软件锁相环,C语言编程提取谐波 ...

  3. matlab直流计算,一种基于MATLAB的直流开关振荡回路参数测量系统及计算方法与流程...

    本发明属于电力电子 技术领域: ,具体为一种基于MATLAB的直流开关振荡回路参数测量系统及计算方法. 背景技术: :近些年来,我国在高压直流输电技术的研究和应用上取得了突飞猛进的发展,目前已投运的高 ...

  4. 用Prim和Kruskal两种算法,求解最小生成树

    本文通过具体的算法模板题,给出Prim和Kruskal两种求解最小生成树求解过程和代码~ 由浅入深,通俗易懂 题目选自洛谷P3366 题目描述 如题,给出一个无向图,求出最小生成树,如果该图不连通,则 ...

  5. matlab换挡程序,一种基于MATLAB换挡过程中快速锁定分析数据的方法与流程

    本发明涉及汽车变速器数据分析,特别的,涉及一种基于matlab换挡过程中快速锁定分析数据的方法. 背景技术: 自动变速器的核心功能是能根据驾驶员意图进行自动换挡,解放驾驶员的左脚:在自动变速器的使用过 ...

  6. led的伏安特性曲线 matlab实现_一种基于MATLAB的分析避雷器伏安特性的方法与流程...

    本发明属于电力电子技术领域,涉及一种基于MATLAB的分析避雷器伏安特性的方法. 背景技术: 目前,我国±1100kV特高压直流输电工程建设正在稳步推进,特高压直流系统用金属氧化物避雷器是直流输电系统 ...

  7. Matlab应变片仿真,一种基于Matlab/Adams联合仿真的真实路谱再现系统和方法与流程...

    本发明属于汽车系统动力学仿真技术领域,特别是一种基于Matlab/Adams联合仿真的真实路谱再现系统和方法. 背景技术: 汽车系统动力学仿真技术是汽车设计制造中一项不可或缺的技术,尤其是在汽车操纵稳 ...

  8. matlab波特一致性,一种基于MATLAB的数据一致性的分析方法与流程

    本发明属于电机性能数据的处理和分析技术领域,尤其涉及一种基于 MATLAB的数据一致性的分析方法. 背景技术: MATLAB是一种基于算法开发.数据可视化.数据分析以及数值计算的计算机高级编程语言和交 ...

  9. matlab建桥梁,一种基于MATLAB的桥梁建筑模型信息化连接方法与流程

    本发明涉及桥梁工程结构仿真模拟的技术领域,尤其涉及一种基于MATLAB的桥梁建筑模型信息化连接方法. 背景技术: 建筑信息模型(Building Information Modeling,BIM)是实 ...

  10. MATLAB | 最小二乘法的两种解读

    最小二乘法 大部分的最小二乘法公式推导,都是使用的 代价函数偏导 的方式来求得的,在这里首先展示如何通过代价函数求偏导的方式得到最小二乘公式,再展示李扬老师讲解的如何由向量到子空间的距离得来最小二乘法 ...

最新文章

  1. 大厂需要这样的Java工程师
  2. mysql按逗号拼接起来_MySQL ----- 计算字段(Trim,Concat,as)(九)
  3. js循环(for/for in/forEach/map/for of)详解
  4. VS2010数据库项目不能正常工作解决方案(转)
  5. 服务器端调用智能合约,《精通以太坊:开发智能合约和去中心化应用》 ——3.4 远程调用以太坊客户端...
  6. linux pam模块 cron,Linux-PAM 1.1.2 中文文档 - 6.32. pam_tally-登录计数器(统计)模块 | Docs4dev...
  7. Django---Model操作
  8. c# 对COM+对象反射调用时地址参数处理 c# 对COM+对象反射调用时地址参数处理
  9. 1.ELF之Elf Header
  10. c++如何快速写出get set_如何快速写出一篇合格的毕业论文
  11. 【前沿方案】华为自动驾驶网络解决方案.pdf(附80页pdf下载链接)
  12. oc中该使用lock还是gcd/syncronize
  13. java2048设计说明,Html5中的本地存储设计理念
  14. kubernetes-[1]-简单介绍
  15. C语言程序员个人简历范文,程序员求职放大招!牛人用C语言写简历
  16. python find_peaks 源码理解
  17. ioncube加密与解密 php代码
  18. IgA | 对抗病原菌,帮助共生菌定植的“重要开关”
  19. 通信工程和计算机考研哪个好,通信工程考研还是就业
  20. SQL count详细用法

热门文章

  1. 英特尔cpu发布时间表_2014英特尔处理器发布时间表
  2. c语言中正确的常量表达式,C语言常量变量表达式
  3. HDU 4568 Hunter
  4. iShare·AD小技巧--如何设置镂空的字体
  5. 聊天机器人与自动问答技术
  6. 回溯法、动态规划法——牛妹的蛋糕
  7. WGS84转GCj02
  8. 你不知道的“虚假需求”
  9. 联想台式计算机 不启动u盘,联想台式机u盘启动不了怎么办
  10. 联想台式计算机 不启动u盘,联想电脑没有u盘启动项怎么回事_联想电脑bios没有U盘启动项如何处理-系统城...