matlab revch,matlab学习1

2023-05-16

1.复数

6+5i

ans =

6.0000 + 5.0000i

>> 6+5j

ans =

6.0000 + 5.0000i

2.Format

数值数据输出格式

>> format long

>> 50/3

ans =

16.666666666666668

>> format(默认short)

>> 50/3

ans =

16.6667

只影响输出格式,不影响计算和存储

3.常用数学函数

调用:函数名(函数自变量的值)

>> A=[4,2;3,6]

A =

4     2

3     6

>> B=exp(A)(自然指数)

B =

54.5982    7.3891

20.0855  403.4288

三角函数:

>> sin(pi/2)(弧度)

ans =

1

>> sind(90)(角度加d)

ans =

1

abs函数:

实数的绝对值,复数的模,字符串的ASCII码值

>> abs(-4)

ans =

4

>> abs(3+4i)

ans =

5

>> abs(‘a‘)

ans =

97

取整:

fix(舍去小数),floor(向下取整),ceil(向上取整),round(四舍五入)

>> round(4.7)

ans =

5

>> floor(3.6)

ans =

3

>> fix(-3.2)

ans =

-3

>> ceil(-3.8)

ans =

-3

求余:

rem,mod

应用举例:

求三位正整数的个位数字,十位数字,百位数字

>> m=345

m =

345

>> m1=rem(m,10)

m1 =

5

>> m2=rem(fix(345/10),10)

m2 =

4

>> m3=fix(345/100)

m3 =

3

求[1,100]区间的所有素数

isprime(n):判断n是否为素数的matlab的函数

>> x=1:100;

>> k=isprime(x)

k =

1×100 logical 数组

列 1 至 31

0   1   1   0   1   0   1   0   0   0   1   0   1   0   0   0   1   0   1   0   0   0   1   0   0   0   0   0   1   0   1

列 32 至 62

0   0   0   0   0   1   0   0   0   1   0   1   0   0   0   1   0   0   0   0   0   1   0   0   0   0   0   1   0   1   0

列 63 至 93

0   0   0   0   1   0   0   0   1   0   1   0   0   0   0   0   1   0   0   0   1   0   0   0   0   0   1   0   0   0   0

列 94 至 100

0   0   0   1   0   0   0

>> k1=find(k)(k1为k向量中非0元素的序号)

k1 =

列 1 至 20

2     3     5     7    11    13    17    19    23    29    31    37    41    43    47    53    59    61    67    71

列 21 至 25

73    79    83    89    97

>> p=x(k1)

p =

列 1 至 20

2     3     5     7    11    13    17    19    23    29    31    37    41    43    47    53    59    61    67    71

列 21 至 25

73    79    83    89    97

4.变量与赋值语句

变量:

内存单元的一个抽象

有名字,通过变量名访问内存单元

字母开头,后接字母,数字,下划线

区分字母大小写

赋值:

变量=表达式

表达式,(值赋给预定义变量ans

;仅赋值,不显示结果

>> x=sqrt(7)-2i;(平方根)

>> y=exp(pi/2);(自然指数函数)

>> z=(5+cosd(47))/(1+abs(x-y))

z =

1.4395

ans计算结果的默认赋值变量

pi圆周率

NaN非数

I和j虚数单位

变量的管理:

删除和修改:

工作区窗口:内存变量的管理

who和whos:

已经存在的变量清单

who只显示驻留变量名称

whos变量名,大小,所占字节数,数据类型

内存变量文件:

用文件将工作区有用的变量长久的保留下来(.mat)

save命令:创建

load命令:装入

save mydata a x(将a x变量保存到mydata.mat文件中)

load mydata

5.矩阵的表示

建立:

1.直接输入

>> A=[1,2,3;4,5,6;7,8,9]

A =

1     2     3

4     5     6

7     8     9

>> A=[1 2 3;4 5 6;7 8 9]

A =

1     2     3

4     5     6

7     8     9

中括号,逗号,空格,分好

2.利用已建立好的矩阵建立更大的矩阵

>> A=[1 2 3;4 5 6;7 8 9]

A =

1     2     3

4     5     6

7     8     9

>> B=[-1,-2,-3;-4,-5,-6;-7,-8,-9]

B =

-1    -2    -3

-4    -5    -6

-7    -8    -9

>> C=[A,B;B,A]

C =

1     2     3    -1    -2    -3

4     5     6    -4    -5    -6

7     8     9    -7    -8    -9

-1    -2    -3     1     2     3

-4    -5    -6     4     5     6

-7    -8    -9     7     8     9

复数矩阵:

实部矩阵和虚部矩阵

>> B=[1 2 3;4 5 6]

B =

1     2     3

4     5     6

>> C=[6 7 8;9 10 11]

C =

6     7     8

9    10    11

>> A=B+i*C

A =

1.0000 + 6.0000i   2.0000 + 7.0000i   3.0000 + 8.0000i

4.0000 + 9.0000i   5.0000 +10.0000i   6.0000 +11.0000i

冒号表达式:

产生行向量

e1:e2:e3(初始值,步长,终止值)

>> t=0:1:5

t =

0     1     2     3     4     5

linspace函数:

产生行向量

linspace(a,b,n)(第一个元素,第二个元素,元素总数)

>> x=linspace(0,pi,6)

x =

0    0.6283    1.2566    1.8850    2.5133    3.1416

结构矩阵:

数据类型不同而逻辑上相爱难过关的数据组成一个有机整体

结构数据类型

结构矩阵元素.成员名=表达式

单元矩阵:

单元矩阵元素用大括号括起来

矩阵元素的引用

下标引用

A(3,2)A矩阵第三行,第二列

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

A =

1     2     3

4     5     6

>> A(4,5)=10

A =

1     2     3     0     0

4     5     6     0     0

0     0     0     0     0

0     0     0     0    10

矩阵元素序号

矩阵按列存储

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

A =

1     2     3

4     5     6

>> A(3)

ans =

2

序号与下标相互转换:

sub2ind(将行列下标转换为序号),D=sub2ind(S,I,J)行数和列数组成的向量,行下标,列下标

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

A =

1     2     3

4     5     6

>> D=sub2ind(size(A),[1,2;2,2],[1,1;3,2])

D =

1     2

6     4

ind2sub([I,J]=ind2sub(S,D)

>> [I,J]=ind2sub([3,3],[1,3,5])

I =

1     3     2

J =

1     1     2

冒号表达式获得子矩阵

A(I,:)第i行全部元素

A(:,j)第j列全部元素

A(i:i+m,k:k+m)

A(i:i+m,:)

end运算符

某一维的末尾元素下标

删除矩阵元素

空矩阵

>> A=[1,2,3,0,0;7,0,9,2,6;1,4,-1,1,8]

A =

1     2     3     0     0

7     0     9     2     6

1     4    -1     1     8

>> A(:,[2,4])=[]

A =

1     3     0

7     9     6

1    -1     8

改变矩阵形状

reshape(A,m,n)

A(:):每一列元素堆起来,成为一个列向量

>> A=[-45,65,71;27,35,91]

A =

-45    65    71

27    35    91

>> B=A(:)

B =

-45

27

65

35

71

91

6.运算

算数运算

基本

四则运算:

加减:矩阵同型

乘:A列=B行

右除/,左除\:

乘方:^

(矩阵意义下

点运算

.* ./ .\ .^

对应元算进行相关运算

关系运算

  >=  ==  ~=

关系成立1,

>> 3>4

ans =  logical   0

判断A的元素是否为偶数

>> A=[24,35,13;22,63,23;39,47,80]

A =

24    35    13

22    63    23

39    47    80

>> P=rem(A,2)==0(余数

P =

3×3 logical 数组

1   0   0

1   0   0

0   0   1

逻辑运算

&与,|或,~非

算数>关系>逻辑(单目>双目)

7.字符串

单引号括起来的字符序列

字符串当作行向量

多行字符串:字符串矩阵

>> ch=[‘abcdef‘;‘123456‘]

ch =

2×6 char 数组

‘abcdef‘

‘123456‘

>> ch(2,3)

ans =

‘3‘

>> ch=[‘ABc123d4e56Fg9‘]

ch =

‘ABc123d4e56Fg9‘

>> subch=ch(1:5)(第一到第五个元素

subch =    ‘ABc12‘

>> revch=ch(end:-1:1)(倒过来排列

revch =    ‘9gF65e4d321cBA‘

>> k=find(ch>=‘a‘&ch<=‘z‘)(找到小写字母的位置

k =     3     7     9    13

>> ch(k)=ch(k)-(‘a‘-‘A‘)

ch =

‘ABC123D4E56FG9‘

eval(s)

>> t=pi;

>> m=‘[t,sin(t),cos(t)]‘;

>> y=eval(m)

y =

3.1416    0.0000   -1.0000

与数值的转换

>> s1=‘MATLAB‘;

>> a=abs(s1)(字符串对应的ASCII码

a =    77    65    84    76    65    66

>> char(a+32)(把ASCII码矩阵转换为字符串矩阵

ans =    ‘matlab‘

字符串比较

1.关系运算符

比较对应的ASCII码值,结果为数值向量1,0

>>  ‘www0‘>=‘W123‘

ans =

1×4 logical 数组

1   1   1   0

2.字符串比较函数

判断字符串是否相等

strcmp(s1,s2):是否相等

strncmp(s1,s2,n):前n个字符是否相等

strcmpi(s1,s2):忽略大小写,是否相等

strncmpi(s1,s2,n)

>> strcmp(‘www0‘,‘w123‘)

ans =  logical   0

>> strncmpi(‘Www0‘,‘w123‘,1)

ans =  logical   1

查找与替换:

findstr(s1,s2):短字符串在长字符串中的开始位置

strrep(s1,s2,s3):s1中的所有s2替换为s3

>> p=findstr(‘this is a test!‘,‘is‘)

p =     3     6

>> p=findstr(‘is‘,‘this is a test!‘)

p =     3     6

>> result=strrep(‘this is a test!‘,‘test‘,‘class‘)

result =    ‘this is a class!‘

原文:https://www.cnblogs.com/shangguanerniJune/p/11877388.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

matlab revch,matlab学习1 的相关文章

  • 检查图像中是否有太薄的区域

    我正在尝试验证雕刻机的黑白图像 更多的是剪贴画图像 不是照片 我需要考虑的主要事情之一是区域的大小 或线条的宽度 因为机器无法处理太细的线条 所以我需要找到比给定阈值更细的区域 以此图为例 竖琴的琴弦可能太细而无法雕刻 我正在阅读有关 Ma
  • 如何为已编译的 MATLAB 创建安装程序并要求用户接受我们的许可条款?

    我正在 MATLAB 中编写程序分发给 Windows 用户 我使用 MATLAB 编译器和 MATLAB r2014a 版本来创建程序 我可以使用 MATLAB 应用程序编译器创建 Windows 安装程序 并且它的工作效果可以接受 但是
  • Python 或 C 语言中的 Matlab / Octave bwdist()

    有谁知道 Matlab Octave bwdist 函数的 Python 替代品 此函数返回给定矩阵的每个单元格到最近的非零单元格的欧几里得距离 我看到了一个 Octave C 实现 一个纯 Matlab 实现 我想知道是否有人必须用 AN
  • 如何在Matlab中绘制网络?

    我有一个矩阵AMatlab中的维数mx2每行包含两个节点的标签 显示网络中的直接链接 例如 如果网络有4矩阵的节点A可能A 1 2 1 3 2 1 2 4 3 2 4 1 4 2 其中第一行表示有一个链接来自1 to 2 第二行表示有一个链
  • 如何在向量中的所有点之间绘制线?

    我有一个包含二维空间中一些点的向量 我希望 MATLAB 用从每个点到每个其他点绘制的线来绘制这些点 基本上 我想要一个所有顶点都连接的图 你能用情节来做到这一点吗 如果可以 怎么做 一种解决方案是使用该函数为每个点组合创建一组索引MESH
  • 如何使用Matlab将数据保存到Excel表格中?

    我想将数据以表格形式保存在 Excel 工作表中 它应该看起来像 Name Age R no Gpa Adnan 24 18 3 55 Ahmad 22 12 3 44 Usman 23 22 3 00 每次当我执行我的文件时类数据 m 下
  • 在 MATLAB 中模拟 C++ 模板

    我试图找出创建 C 模板或 Java 通用对象的替代方案的最佳方法 出于多种不同的原因 我过去曾多次想这样做 但现在我想做的是为几个相关的类创建 saveobj 和 loadobj 函数 我的想法是 我想要一组通用的例程来创建默认结构 然后
  • 我如何编写一个名为 dedbi 的 MATLAB 函数,它将输入 xtx 作为字符串并返回另一个字符串 xtxx 作为输出。

    dedbi 反转单词 即 a 将被 z 替换 b 将被 y 替换 c 将被 x 替换 依此类推 dedbi 将对大写字母执行相同的操作 即将字符串 A 替换为 Z 将 B 替换为 Y 将 C 替换为 X 依此类推 如果我给函数这个字符串 a
  • 如何正确从表中删除 NaN 值

    在 Matlab 中阅读 Excel 电子表格后 不幸的是 我的结果表中包含了 NaN 例如这个 Excel 表格 将产生此表 其中出现额外的 NaN 列 我尝试使用以下代码片段删除 NaN measurementCells readtab
  • MATLAB 编译器与 MATLAB 编码器

    两者有什么区别 据我了解 MATLAB Compiler将MATLAB代码包装成 exe文件 这样就可以在不安装MATLAB的情况下使用它 并且只需要MCR 除此之外 MATLAB Builder NE 还可以用于生成与 Net 框架一起使
  • 获取向量幂的有效方法

    我编写了一个代码 在数值上使用勒让德多项式直至某个高 n 阶 例如 case 8 p 6435 x 8 12012 x 6 6930 x 4 1260 x 2 35 128 return case 9 如果向量x太长这会变得很慢 我发现说之
  • matlab中更快的插值方法

    我正在使用 interp1 来插值一些数据 temp 4 30 4 rand 365 10 depth 1 10 dz 0 5 define new depth interval bthD min depth dz max depth ne
  • 如何在 MATLAB 编译的应用程序中运行外部 .m 代码? [复制]

    这个问题在这里已经有答案了 我有一个 MATLAB 项目 我使用 MCC 对其进行编译以获得单个可执行文件 然后我想知道外部程序员是否可以在 exe 中执行他的一些 m 文件 而无需重新编译整个项目 重点是提供一个应用程序 其他开发人员可以
  • Mathworks 生成 Matlab HTML 文档的方法是什么?

    我正在开发共享的 Matlab 代码 我们希望在本地网络中将生成的文档作为可搜索的 HTML 文档共享 我知道以下生成文档的方法 编写一个类似于 C 文件的转换器 这是在中完成的将 Doxygen 与 Matlab 结合使用 http ww
  • MATLAB parfor 和 C++ 类 mex 包装器(需要复制构造函数?)

    我正在尝试使用概述的方法将 C 类包装在 matlab mex 包装器中here http www mathworks com matlabcentral newsreader view thread 278243 基本上 我有一个初始化
  • MATLAB问题:在图块中引用变量的值[重复]

    这个问题在这里已经有答案了 可能的重复 matlab 绘图标题中的变量 https stackoverflow com questions 5629458 matlab variable in plot title 我想在图中引用 m 文件
  • matlab中优先级队列的实现方法

    matlab中有没有提供minpriorityqueue功能的库 import java util PriorityQueue import java util public class MyQueue Comparator
  • 计算给出数组中最小标准差的子集

    让我们有一个大小的向量N 例如 x rand N 1 我想计算长度子集的最小标准差K在向量中 When N and K很小 很容易找到最好的子集 因为我可以使用nchoosek N K 枚举所有可能的子集 但是当值N and K比我们说的要
  • 如何从 Matlab 运行 R 脚本 [重复]

    这个问题在这里已经有答案了 我有 m 文件 我想用它来运行 R 脚本 我怎样才能做到这一点 Matlab文件 caller m some matlab code need to call a R script some matlab cod
  • Matlab下降低图像质量

    问候 我正在尝试找到一种简单的方法来处理图像 以便将其质量从 8 位降低到 3 位 实现这一目标的最简单方法是什么 干杯 如果要线性缩放 只需将每个像素值除以 255 7 即 如果原始图像存储在矩阵 I 中 则让低分辨率图像 J I 255

随机推荐