matlab cond含糊,入坑MATLAB必会的吐血总结

入坑MATLAB必会的吐血总结

入坑MATLAB必会的吐血总结

本渣想回过头来整理一下MATLAB的一些基本的知识(很多东西比较琐碎,应该系统的梳理梳理),下文中没有提到的,自己用help查即可。

此文用来存个档,便于回顾。

由于matlab各版本部分语法存在差异,可能会出现bug,用help查帮助文档即可。

里面的一些内容仅供参考,知识量有限,仅供入门。

后期可能会随缘写一点matlab笔记。

如果没有装Matlab,我这里有一篇建模软件的博客:https://www.cnblogs.com/cruelty_angel/p/10563509.html

变量名:字母数字串(第一个字符必须英文字母 | 字符间无空格 | 最多19个字符);

用%注解;

检查现存于工作空间(Workspace)的变量,可键入who;

检查更加详细的信息,可键入whos;

删除工作空间里的变量clear;

一些永久常数:

基本虚数单位 i或j;

系统的浮点精确度 eps;

无限大 inf;

系统所能表示的最大/最小数值 realmax / realmin;

非数值 NaN;

圆周率 pi;

函数的输入/输出参数个数 nargin / nargout;

搜寻路径:which(空格)文件名;

基本命令:

A的转置——A’

A的行列式——det(A)

矩阵A的秩——rank(A)

A的逆矩阵——inv(A)

A的n次幂——A^n

矩阵A和B里的元素相乘——A .* B

选择A的第i行生成一个行向量——ai=A(i,:)

选择A的第j列生成一个列向量——aj=A(:,j)

生成n阶零矩阵——zeros(n)

生成n阶单位矩阵——eye(n)

两个向量的内积——a1 * a2’

其他命令:

存储工作空间变量——save 文件名 变量名

查询函数的用法——help 函数名

列出所有变量的详细资料——whos

演示程序demo——demo

特殊矩阵:

全一矩阵——y = ones(n) y = ones(m,n)

均匀分布随机矩阵——y = rand(n) y = rand(m,n)

正态分布随机矩阵——y = randn(n) y = randn(m,n)

线性等分向量——y = linspace(a,b) 默认100等分 %n等分: y = linspace(a,b,n)

对数等分向量——y = logspace(a,b) 默认50等分 %n等分:y = logspace(a,b,n)

矩阵A中元素的个数——n = numel(A)

以输入元素为对角线元素的矩阵——out = blkdiag(a,b,c…)

n阶Hadamard矩阵——H = hadamard(n)

Hankel矩阵——H = hankel© 第一列元素为c,反三角以下元素为0

n阶Hilbert矩阵——H = hilb(n) H(i,j) = 1/(i+j-1)

n阶逆Hilbert矩阵——H = invhilb(n)

n阶魔方矩阵——M = magic(n)

向量的范数——n = norm(X) 具体help查询

矩阵的范数——n = norm(A) 具体help查询

其他运算:

矩阵A的特征值——D = eig(A)

特征向量矩阵X和特征值组成的对角阵D——[X,D] = eig(A)

将非奇异矩阵A正交化为Q——Q = orth(A) (Q’ * Q = 单位矩阵)

由已定义的矩阵A,E,O,A作为矩阵的子块,生成矩阵B——B = [A,E;O,A]

矩阵A的列向量组的极大线性无关组——rref(A)

条件数——c = cond(A) 默认为2条件数 p条件数:c = cond(A,p)

数学定义为矩阵A的条件数等于A的范数与A的逆的范数的乘积,即cond(A) = ‖ A ‖·‖ A逆 ‖

LU = A——[L,U] = lu(A)

LU = PA——[L,U,P] = lu(A)

U为上三角阵,L为下三角阵或其变换形式,P为单位矩阵的行变换矩阵

①解方程组

求解方程组?????????5x1+4x3+2x4=3x1?x2+2x3+x4=14x1+x2+2x3=1x1+x2+x3+x4=0的解。

clear

format rat %format函数控制输出格式 format rat是小数去用分数输出表示

A=[5,0,4,2;1,-1,2,1;4,1,2,0;1,1,1,1];

B=[3;1;1;0];

S=length(A(:,1))

R=rank(A)

if S==R

X=A\B

else

fprintf(‘error\n’)

end

②解线性方程组

求解线性方程组:

?????????x1?2x2+3x3+x4+x5=7x1+x2?x3?x4?2x5=22x1?x2+x3?2x5=72x1+2x2+5x3?x4+x5=18

clear

A=[1,-2,3,1,1;1,1,-1,-1,-2;2,-1,1,0,-2;2,2,5,-1,1];

b=[7;2;7;18];

B=[A,b];

n=length(A(1,:))

RA=rank(A)

RB=rank(B)

if RARB

if RAn

X=A\b

else

D=rref(B)

end

else

fprintf(‘No Solution for the Equations’)

end

③解齐次线性方程组

?????????x1+x2+x3+4x4?3x5=02x1+x2+3x3+5x4?5x5=0x1?x2+3x3?2x4?x5=03x1+x2+5x3+6x4?7x5=0

clear

A=[1,1,1,4,-3;2,1,3,5,-5;1,-1,3,-2,-1;3,1,5,6,-7];

R=rank(A)

%X=rref(A)

%仅仅用rref的话,本题的秩=2<5,方程有非零解,需要自己再去做

%因此不必用rref,MATLAB提供了一个求矩阵令空间的函数null来方便求解

Y=null(A,‘r’)

④求非齐次线性方程组的通解

?????????x1+5x2?x3?x4=?1x1?2x2+x3+3x4=33x1+8x2?x3+x4=1x1?9x2+3x3+7x4=7

clear

A=[1,5,-1,-1;1,-2,1,3;3,8,-1,1;1,-9,3,7];

b=[-1;3;1;7];

B=[A,b];

RA=rank(A)

RB=rank(B)

Y=null(A,‘r’)

n=length(b)

if RARB

if RAn

X=A\B %方程组满秩时,求出唯一解

else

p=pinv(A)*b %在方程组不满秩时,求出特解

Y=null(A,‘r’) %求出方程组的基础解系

n1=length(Y(1,:))

k=sym([‘kI’]) %这里是ki,是为了把数组k说明成字符型变量

for i=1:n1 %求出方程的全部解

k(i)=strcat(‘k’,num2str(i))

p=p+k(i)*Y(:,i)

end

end

else

fprintf(‘No Solution for the Equations’)

end

这一块结合实例来了解相关函数。

二维图像:

95ac7e7e6ea7c7c26e514a89dfe1877e.png

%函数

function y2=draw2(x)

y2=sin(x)+x;

end

%在命令行输入

fplot(@draw2,[-5,5])

f1eb509702626b852d96a7dbf1912157.png

y3='x.^2*exp(-x.^2)';

ezplot(y3)

![在这里插入图片描述](https://img-blog.csdnimg.cn/20201029145911126.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2d1bWVuZ2h1YV9jb20x,size_16,color_FFFFFF,t_70#pic_center)

```clike

syms x

y=log10(x+sqrt(1+x.^2));

dy=diff(y,x);%求导函数,但x不能先定义为向量,所以用subs让x1作为一符号代替表达式y中的默认变量

x1=-3:0.1:3;

y1=subs(y,x1);

dy1=subs(dy,x1);

plot(x1,y1,'r',x1,dy1,'b')

入坑MATLAB必会的吐血总结相关教程

java程序员必会的经典排序算法----插入排序

java程序员必会的经典排序算法----插入排序 点击上面 免费订阅本账号! 本公众号主要推送javaweb开发相关技术,基础知识点,同时会深入剖析复杂的问题,分享一些优秀的框架,大型项目经验,当今最流行的Javaweb技术,热点科技新闻,招聘信息,生活乐趣等等。

java程序员必会的经典排序算法---选择排序

java程序员必会的经典排序算法---选择排序 点击上面 免费订阅本账号! 本公众号主要推送javaweb开发相关技术,基础知识点,同时会深入剖析复杂的问题,分享一些优秀的框架,大型项目经验,当今最流行的Javaweb技术,热点科技新闻,招聘信息,生活乐趣等等。点

制作自己的matlab图注颜色

制作自己的matlab图注颜色 Matlab 自带的colormap 类型少,很多时候不能够满足自己的图注要求。因此很多时候需要设计自己的图注颜色,便于以后调用。 1. 先按照自带的colormap颜色出一张图:colormap(summer). 图中可以看出森林覆盖率高的区域颜色是黄色,但

自动白平衡算法(matlab)

自动白平衡算法(matlab) 自动白平衡算法(matlab) clearclcim=imread('box.jfif');im1=rgb2ycbcr(im);Lu=im1(:,:,1);Cb=im1(:,:,2);Cr=im1(:,:,3);%第一块I1=im1(1:size(im,1)/2,1:size(im,2)/2,:); [x,y,~]=size(I1); [Mb1,Mr1,Db1,Dr1]=test(I1,Cb,Cr,x,

Matlab 求左右特征向量

Matlab 求左右特征向量 Matlab 求左右特征向量 例 :求下列矩阵的特征值和左右特征向量 L=[2?1?101 ?1?101]L = \left[ \begin{matrix} 2 -1 -1 \\ 0 1 -1 \\ -1 0 1 \end{matrix} \right]L=???20?1??110??1?11???? 先用默认办法求特征值和(右)特征向量 L =

常用序列的MATLAB代码(一)

常用序列的MATLAB代码(一) 1)单位冲激序列 function[x,n] = impseq(n0,ns,nf)% ns=序列的起点;nf=序列的终点;n0=序列在n0处有一个单位脉冲。% x=产生的单位采样序列;n=产生序列的位置信息n = [ns:nf];x = [(n-n0)==0]; 2)单位阶跃序列 function [x,n]

基于MATLAB下巴特沃斯IIR数字滤波器的实现

基于MATLAB下巴特沃斯IIR数字滤波器的实现 这里写目录标题 实验目的及要求 实验步骤 实验结果及分析 总结 实验目的及要求 1.学生自己运用MATLAB设计IIR数字低通滤波器。方法不限; 2.实现信号的滤波 参考巴特沃斯滤波器的实验原理《数字信号处理》第五章巴特

Delaunay三角剖分,MATLAB代码

Delaunay三角剖分,MATLAB代码 clear all;clc;close all;data = load('255440.txt');x = data(:,1);y = data(:,2);z = data(:,3);%load seamount% [x,y,z]=peaks;plot3(x,y,z);%plot(x,y,'.','markersize',10)xlabel('x'), ylabel('y')grid ontri = delaunay(

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值