MATLAB 基础知识

目录

导入

1.什么是科学计算?

2.什么是MATLAB?

3.科学计算与MATLAB的关系

4.安装MATLAB

1.MATLAB数值数据

1.1数值数据类型的分类

 1.1.1整型:

1.1.2浮点型:

1.1.2复数型:

1.2数值数据的输出格式

1.3常用数学函数

 2.变量及其操作

2.1变量与赋值语句

2.2预定义变量

2.3变量的管理

——who命令:列出工作区中的变量

——whos命令:列出工作区中的变量及大小和类型

——who与whos命令展示

——save命令:创建内存变量文件

——load命令:转入内存变量文件

3.矩阵的表示

3.1矩阵的建立

3.1.1矩阵建立

3.1.2.冒号表达式

3.1.3结构矩阵和单元矩阵

3.2矩阵元素的引用

4.字符串

4.1字符串表示

4.2字符串操作

4.2.1 eval函数

 4.2.2其他函数


导入

1.什么是科学计算?

            科学计算是研究工程技术问题以及其他应用问题的近似求解方法,并在计算机上进行编程实现的一门课程,它既有数学理论上的抽象性和严谨性,又有程序设计技术上的实用性和实践性。

2.什么是MATLAB?

        MATLAB是美国MathWorks公司出品的商业数学软件,用于数据分析、无线通信、深度学习、与计算机视觉、信号处理、量化金融与风险管理、机器人,控制系统等领域。

3.科学计算与MATLAB的关系

4.安装MATLAB

        这里是某佬的安装链接:R2020a安装,按照操作来应该没问题,安装的是ployspace,matlab程序在bin文件中,注意如果忘了安装R2020a的位置或者找不到Ployspace文件夹,可以主盘的文件夹programFile中寻找一下,文件位置参考下图路径:


   

1.MATLAB数值数据


1.1数值数据类型的分类

  1. 整型
  2. 浮点型
  3. 复数型

 1.1.1整型:

        (1) 无符号整数:无符号8位整数、无符号16位整数、无符号36位整数、无符号64位整数。

        (2)带符号整数:待符号8位整数、带符号16位整数、带符号36位整数、带符号64位整数。

        (3)无符号8位整数数据范围:00000000~11111111(2^8-1)

        (4)带符号8位整数数据范围:10000000~01111111(-2^7~2^7-1)

补充:有符号整型是一般是指带有正负号的整型,无符号整型是指没有正负号的整型,也就是只包含 0 和 正数 的整数。

如下是对(3)、(4)数据范围的验证:

>>x = int8(129)
x = 
  127

>>x = uint8(129)
x =
  129

1.1.2浮点型:

        (1)与整型不同,浮点型是指可以有小数点及以后数据部分的数据。

        (2)Matlab 中提供了两种浮点数类型,单精度浮点型双精度浮点型,前者用single表示,后者用double表示。

类型函数范围字宽数据位
0~22​​ 位 → 小数部分
单精度浮点型single-3.4028e+38 ~ 3.4028e+384字节​23~30​​位 → 指数部分
​31​​位 → 符号位

         

类型函数数据范围字宽数据位
​0~51​​ 位 → 小数部分
双精度浮点型double-1.7977e+308 ~ 1.7977e+3088字节​52~62​​位 → 指数部分
​​63​​位 → 符号位

1.1.2复数型:

        (1)复数数据包括实部和虚部两个部分,实部和虚部默认为双精度型,虚部单位用i或j表示。

        (2)real函数:求复数的实部。

        (3)imag函数:求复数的虚部。

如下是(2)、(3)的试用:

>> 6+5i
ans = 
   6.0000 + 5.0000i
>>real(ans)
ans = 
    6.0000
>> 6 +8i
ans =
    6.0000 + 8.0000i
>>imag(ans)
ans =
    8

1.2数值数据的输出格式

        format命令的格式:

                                        format  格式符

>> format long
>> 50/3
ans = 
    16.666666666666668

>>format
>> 50/3
ans = 16.6667

1.3常用数学函数

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

        

函数名功能使用
exp( )以e为底的指数函数

>>A = exp(2)

A = 7.3891

sqrt( )求平方根

>> A = sqrt(4)

A = 2

log( )以e为底的对数函数

>> A = log(e^2)

A = 2

log10( )以10为底的对数函数

>> A = log (100)

A = 2

abs( )求绝对值

>>A = abs(-1)

A = 1

mod(m,n)求m/n的余数

>>A = mod(10,3)

A = 1

ceil( )向上取整

>> A = ceil(1.1)

A = 2

floor( )向下取整

>> A = ceil(1.8)

A = 1

round( )四舍五入

>> A = round(1.7)

A = 2

fix( )取整(删除小数位)

>> A = fix(2.2)

A = 2

rem(m,n)求m/n的余数

>>A = mod(10,3)

A = 1

sin( )正弦函数

>> A = sin(pi)

A = 1

补充: 圆周率用pi表示,三角函数有两种,就拿正弦函数来说,有sin( )和sind( ),sin( )函数传入的参数是弧度,sind()传入的参数是角度,例如:sin(pi)  =  sind(90) = 1


 2.变量及其操作

2.1变量与赋值语句

        (1)MATLAB中变量名以字母开头,后接字母、数字或下划线的字符序列,最多63个字符,区分大小写,关键字和函数名不能作为变量名。

        (2)赋值操作:变量名 = 表达式

补充:

        (1)如果没有提前定义变量的话,可以在使用时可直接进行赋值使用。

        (2)Matlab变量的特点:不需事先声明,也不需指定变量类型,Matlab自动根据所赋予变量的值或对变量所进行的操作来确定变量的类型;在赋值过程中,如果变量已经存在,Matlab会用新值代替旧值,并以新的变量类型代替旧的变量类型。

2.2预定义变量

  1. ans是默认赋值变量
  2. i和j代表虚数单位
  3. pi代表圆周率
  4. NaN代表非数

2.3变量的管理

        (1)内存变量可用来存储数据,定义内存变量时需为它取名并赋初值,内存变量建立后存储于内存中。

        (2)用于保存MATLAB工作区变量的文件叫做内存变量文件,其扩展名为.mat,也叫MAT文件。

        (3)有关命令:who命令,whos命令,save命令,load命令。

——who命令:列出工作区中的变量

——whos命令:列出工作区中的变量及大小和类型

——who与whos命令展示

——save命令:创建内存变量文件

——load命令:转入内存变量文件

如要保存mydata文件下的变量a和x,则是用save命令,要在别的文件使用保存的变量则用load命令。

>>save mydata a x
>>load mydata

3.矩阵的表示

  1. 矩阵建立
  2. 冒号表达式
  3. 结构矩阵和单元矩阵

3.1矩阵的建立

3.1.1矩阵建立

(1)直接建立:将矩阵的元素用中括号括起来,按矩阵行的顺序输入个元素,同一行的个元素之间用逗号或空格分隔,不同行的元素之间用分号分隔。

>> 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]
>> B =[7,8,9;11,12,13]
>> C = [A;B]
C = 
    1    2    3    7    8    9
    4    5    6    11    12    13

(3)可以用实部矩阵和虚部矩阵构成复数矩阵

>>A = [1,2,3;4,5,6]
>>B =[7,8,9;10,11,12]
>>C = A +i*B
C = 
    1.0000 + 7.0000i    2.0000 + 8.0000i    3.0000 + 9.0000i
    4.0000 + 10.0000i    5.0000 + 11.0000i    6.0000 + 12.0000i

3.1.2.冒号表达式

        (1)格式:: e1:e2:e3——e1:初始值;e2:步长,默认为1;e3:终止值。

>> a = 0:1:5
a = 
    0    1    2    3    4    5

>> b = 0:5
b = 
    0    1    2    3    4    5

>> c = 0:2:6
c = 
    0    2    4    6

        (2)f格式:linspace(a,b,n)——a:第一个元素;b最后元素;n元素总数,省略时自动产生100个元素。

>> a = linspace(0,pi,6)
a = 
    0    0.6283    1.2566    1.8850    2.5133    3.1416


3.1.3结构矩阵和单元矩阵

        (1)结构矩阵:由结构数据构成的矩阵就是结构矩阵,结构矩阵里的每一个元素就是结构矩阵数据类型,格式为: 结构矩阵元素.成员名 =表达式

>>a(1).x1 = 10;a(1).x2 ='zhang';a(1).x3 = [1,2,3]
>>a(2).x1 = 11;a(2).x2 ='guan';a(2).x3 = [4,5,6]

        (2)单元矩阵:和建立矩阵相似,唯一不同使用大括号括起来。

>>a ={10,'guan',[1,2,3];12,'zhang',[4,5,6];14,'liu',[7,8,9]}
a = 
    [10]    'guan'    [1x1 double]
    [12]    'zhang'   [1x1 double]
    [14]    'liu'     [1x1 double]

3.2矩阵元素的引用

        (1)通过下标引用矩阵元素,例如A(m,n)表示矩阵A第2行2列的元素,如果给出的行或列下标大于原来矩阵的行数和列数,则自动扩展,并将没有赋值的元素置零。

>>A = [1 2 3;4 5 6]
A(2,3) = 
        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

        (2)通过序号引用元素:在MATLAB中,矩阵元素按列存储,即首先存储矩阵第一列元素,然后存储第二列元素,.....,一直到矩阵的最后一列元素,矩阵元素的序号就是矩阵元素在内存中的排列顺序。

>> A =[1 2 3; 4 5 6]
A  = 
    1    2    3
    4    5    6
>>A(3)
ans =
     2

        (3)利用冒号表达式获得子矩阵,子矩阵是指由矩阵中的一部分元素构成的矩阵。

A(i,:)                                

第i行全部元素

A(:,j)

第j列的全部元素

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

第i~i+m行内且在第k~k+m列中的所有元素

A(i:i+m,:)

第i~i+m行的全部元素

        (4)A(:) ——将矩阵A的每一列元素堆叠起来,成为一个列向量

>> A = [1,2,3;4,5,6]
>> B = A(:)
B = 
    1
    2 
    3
    4    
    5
    6

    (5)end运算符:表示某一维的末尾元素下标

>> A =[1,2,3;4,5,6;,7,8,9]
>> A(end,:)
ans = 
        7    8    9
>>A(2,4:end)
ans = 
    4    5    6

4.字符串

4.1字符串表示

        字符串是用单引号括起来字符序列,若字符串中的字符含有单引号,则该单引号字符,要用两个单引号来表示。

>> x = ‘i like dogs’
ans = 
    i like dogs


>>ch = ‘I’’m a student’
ans =
    I’m a student

4.2字符串操作

4.2.1 eval函数

        eval(expression) 计算 expression 中的 MATLAB代码。

>>x = pi
>> ch = ‘sinx’
>> a = eval(ch)
a = 
    1

 4.2.2其他函数

        如查找字符,比较字符串,字符串转大小写或数字等函数,和其他变成语言的语法类似,查阅即用。

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
掌握了Matlab编程的基础知识和高级技巧,可以帮助您在各个领域应用Matlab解决实际问题。 在Matlab中,有一些常用的函数和命令可以帮助您进行字符串比较和处理。例如,strncmpi函数可以在忽略字母大小写的前提下比较字符串的前n个字符是否相等,strcmpi函数可以忽略字母大小写比较两个字符串是否相等。 此外,Matlab还提供了load命令,可以用来加载内存变量文件,将文件中的内容存入当前工程中。可以使用save命令将变量存入文件,下次可以使用load命令将文件中的内容加载到当前工程中。 以上是关于Matlab基础知识的简要介绍。如果您想进一步学习,可以深入研究Matlab的高级主题,如图像处理、信号处理和机器学习等,以提高您在实际问题中使用Matlab的能力。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Matlab入门指南:从零开始掌握Matlab编程.md](https://download.csdn.net/download/pleaseprintf/88230149)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [matlab---基础知识](https://blog.csdn.net/weixin_62436283/article/details/122540161)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值