当前位置: 首页 > news >正文

MATLAB基础语法知识

环境的配置等等就不写了,网上还是有很多资源可以找,而且正版的要付费,我也是看的网上的搞定的。

一,初识MATLAB

1.1 MATLAB的优势

  • 不需要过多了解各种数值计算方法的具体细节和计算公式,也不需要繁琐的底层编程。
  • 可以专注于对实际问题的分析。

1.2 MATLAB的主要功能

  • 数值计算
  • 符号计算
  • 图形绘制
  • 程序流程控制
  • 工具箱

1.3 页面介绍

二,MATLAB数据数值

2.1 分类

2.1.1 整型
  • 无符号整型:

       -无符号8位(16位,32位,64位)整数

       -无符号8位整数取值范围:00000000~11111111(0~2^{8}-1

  • 带符号整数

       -带符号8位(16位,32位,64位)整数

       -带符号8位整数取值范围:10000000~01111111(-2^{7}~2^{7}-1

  • MATLAB提供函数将数值数据转换为整型数据:

       -uint8:将数值数据转换为无符号八位整数

       -int8:将数值数据转换为带符号八位整数

2.2 浮点型

  • 浮点型数据分为双精度型和单精度型
  • 单精度型实数占4个字节;双精度型实数占8个字节,双精度型的数据精度更高
  • MATLAB中默认为双精度
  • single函数:将其他类型数值数据转换为单精度型
  • double函数:将其他类型数值数据转换为双精度型

2.3 复型

  • 包括实部和虚部两个部分,都默认为双精度型
  • 虚部用i或j表示
  • real函数:求复数的虚部
  • imag函数:求复数的实部

2.4 format格式

  • 格式:format + 格式符
  • 只影响数据输出,不影响数据的计算和存储

2.5 常用数学函数

  • 格式:函数名(函数自变量的值)
  • 函数自变量规定为矩阵变量,也可为标量,标量本身为矩阵的特例
  • 函数运算时是将函数逐项作用于矩阵的每个元素上,所以最后运算的结果是一个与自变量同型的矩阵
  • 常见函数的应用

       -三角函数有以弧度为单位的函数也有以角度为单位的函数,如果以角度为单位则在函数名后加“d”,以示区别。

       -abs函数可以求实数的绝对值,复数的模,字符串的ASCII码值

       -用于取整的函数:fix,floor,ceil,round;其中round四舍五入;ceil指向上取整,取大于等于这个数的整数;floor指向下取整,取小于等于这个数的整数;fix指舍去小数取整

       -isprime用于查找一定区间的素数

三,变量及其操作

3.1 变量的定义方式

  • 变量名以字母开头,后接字母,数字或下划线的字符序列,最多63个字符
  • 变量名区分字母大小写
  • 标准函数名以及命令名必须用小写字母
  • 格式: 变量名 = 表达式;表达式
>> x=exp(pi/2)
  • 预定义变量:由系统本身定义的变量

       -ans:默认赋值变量

       -i,j:虚数单位

       -pi:圆周率

       -NaN:非数

3.2 变量的管理

  • 内存变量删除与修改:在工作区窗口中右击某个变量,在快捷菜单中选择某个命令
  • who和whos命令:输入后显示变量各种信息
  • 内存变量文件

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

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

       -load命令:装入内存变量文件

四,矩阵的表示

4.1 矩阵的建立

  • 直接输入法:

       -用中括号括起来

       -同行元素用逗号隔开;不同行元素用分号隔开

  • 用已建好的矩阵构建更大的矩阵

       -同行用逗号隔开;不同行用分号隔开

       -还可用实部矩阵和虚部矩阵构成复数矩阵

  • 冒号表达式

       -表示一个行向量

       -格式: 初始值:步长(省略时则表示步长为一):表达式

       -linspace(a,b,n)也可产生行向量;其中a是第一个元素,b是最后一个元素,n是元素总数,默认为100。

4.2 结构矩阵和单元矩阵

  • 结构矩阵

       -不同元素间相互联系,元素下还有成员

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

  • 单元矩阵

        -各个元素即不同的数据

        -建立方式与一般矩阵相似,但是是用大括号括起来的。

4.3 矩阵的引用

  • 通过下标来引用矩阵的元素

       -如果下标超过了矩阵范围,MATLAB中矩阵会扩张

  • 通过序号来引用矩阵的元素

       -矩阵元素按列存储,元素的序号就是矩阵存储的序号

       -sub2ind函数:将矩阵中制定元素的行,列下标转换为存储的序号,调用格式为D=sun2ind(S,I,J),其中S指行数和列数组成的向量,I指转换矩阵元素的行下标,J指转换矩阵元素的列下标,D指对应序号。

       -ind2sub函数:将把矩阵元素的序号转换为对应的行下标,其调用格式为[I,J] =ind2sub(S,D),其中S指行数和列数组成的向量,D指对应序号。

  • 利用冒号表达式获取子矩阵

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

        -A(:,j):第j行的全部元素

        -A(i:i+m,k:k+m):第i~i+m行内且在第k~k+m列中的所有元素

  • end运算符

       -表示某一维的末尾元素下标

4.4 矩阵的删除

  • 利用空矩阵删除矩阵中的元素
  • 改变矩阵的形状

       -reshape(A,m,n):在矩阵总元素保持不变的前提下,将矩阵A重新排列成m*n的二维矩阵,但不改变原矩阵的元素个数和存储顺序。

4.5 特殊表示

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

五,基本运算

5.1 算术运算

5.1.1 基本运算:
  • 介绍

       -符号:+,-,*(乘),/(右除),\(左除),^(乘方)

       -都是基于矩阵进行

       -单个数据的运算是在矩阵运算中的一个特例

  • 加减运算

       -要求:两矩阵同型,则运算时两矩阵的相应元素相加减

       -若两矩阵不同型,则MATLAB将给出错误信息

       -一个标量也可以和矩阵进行加减运算,这时把标量和矩阵的每一个元素进行加减运算。

  • 乘法运算

       -要求:矩阵A的列数和矩阵B的行数相等,即A和B大小和维数相容

       -若A和B大小和维数相容,则MATLAB将给出错误信息

  • 除法运算

        -有左除和右除两种

        -假设A是非奇异矩阵,B/A等效于B*inv(A),A\B等效于inv(A)*B

  • 乘方运算

        -以A^x为例,要求A为矩阵,x为标量

5.1.2 点运算
  • 点运算符:.*,./,.\和.^
  • 指两矩阵对应元素进行相关运算,要求两矩阵同型

5.2 关系运算

5.2.1 介绍
  • 关系运算符:>,<,>=,<=,==,~=(不等于)
  • 当两个比较量是标量时,直接比较两数的大小。若关系成立,表达式结果为1,反之为0
  • 当两个比较量是两个同型的矩阵时,则比较相同位置的两个元素,如果符合比较规则则为1,反之为0。最终返回一个同型的,由1或0组成的矩阵
  • 当两个比较量是一个是矩阵,另一个是标量时,则标量和矩阵上的元素一一比较,如果符合比较规则则为1,反之为0。最终返回一个与原矩阵同型的,由1或0组成的矩阵

5.3 逻辑运算

5.3.1 介绍
  • 逻辑运算符:&(与),|(或),~(非)
  • 假定标量a和b,运算规则如下:

       -a&b  a、b全为非零是,结果为1,反之为0.

       -a|b    a、b只要有一个为非零时,运算结果为1

       -~a     当a为0时,运算结果为1;当a为非零时运算结果为0

  • 矩阵参与时,运算规则与关系运算相似。

5.3.2 运算先后顺序

在算数运算,关系运算,逻辑运算中,算数运算的优先级最高,逻辑运算的优先级最低,但逻辑非运算是单目运算,它的优先级比双目运算要高。

六,字符串处理

6.1 基本介绍

  • 字符串用单引号括起来
  • 如果字符串含单引号,该单引号字符用两个单引号表示
  • 建立多行字符串可以形成字符串矩阵(需要两个字符串长度相等)

6.2 一些常见操作

(1)字符串的执行

  • 格式:eval(s)
  • s为字符串

(2)字符串与数值间的转换

  • abs和double函数获取字符串矩阵所对应的ASCII码数值矩阵
  • char函数将ASCII码矩阵转换为字符串矩阵

(3)字符串比较

  • 方法:利用关系运算符和逻辑运算符
  • 关系运算符比较:按ASCII码值逐个比较,返回一个数值向量
  • 判断字符串是否相等的四种方法:

       -strcmp(s1,s2):比较s1和s2是否相等,如果相等,返回1,反之返回0

       -strncmp(s1,s2,n):比较s1和s2前n个字符串是否相等,如果相等,返回1,反之返回0

       -strcmpi(s1,s2):忽略字母大小写时,比较s1和s2是否相等,如果相等,返回1,反之返回0

       -strncmpi(s1,s2,n):忽略字母大小写时,比较s1和s2前n个字符串是否相等,如果相等,返回1,反之返回0

(4)替换与查找

  • 相关函数

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

       -strrep(s1,s2,s3):将字符串s1中的所有子字符串s2替换为字符串s3

相关文章:

MATLAB基础语法知识

环境的配置等等就不写了&#xff0c;网上还是有很多资源可以找&#xff0c;而且正版的要付费&#xff0c;我也是看的网上的搞定的。 一&#xff0c;初识MATLAB 1.1 MATLAB的优势 不需要过多了解各种数值计算方法的具体细节和计算公式&#xff0c;也不需要繁琐的底层编程。可…...

PopupInner源码分析 -- ant-design-vue系列

PopupInner源码分析 – ant-design-vue系列 1 综述 上一篇讲解了vc-align的工作原理&#xff0c;也就是对齐是如何完成的。这一篇主要讲述包裹 Align的组件&#xff1a;PopupInner组件是如何工作的。 PopupInner主要是对动画状态的管理&#xff0c;比如打开弹窗的时候&#…...

Maven 的 pom.xml 文件中<dependency> 元素及其各个参数的解释

在 Maven 的 pom.xml 文件中&#xff0c;<dependency> 标签用于定义项目依赖的外部库。每个 <dependency> 元素包含了一系列的子元素&#xff0c;这些子元素定义了依赖库的各种属性。下面是一个典型的 <dependency> 元素及其各个参数的解释&#xff1a; <…...

【信创】Linux终端禁用USB存储 _ 统信 _ 麒麟 _ 方德

原文链接&#xff1a;【信创】Linux终端禁用USB存储 | 统信 | 麒麟 | 方德 Hello&#xff0c;大家好啊&#xff01;今天给大家带来一篇关于在Linux终端下禁用USB存储设备的文章。禁用USB存储设备可以提高系统的安全性&#xff0c;防止未经授权的人员将数据拷贝到外部存储设备或…...

开放API接口时要注意的安全处理总结

开发API接口&#xff1a;开放给别人调用的接口。未经过安全处理的开发API接口安全弱点&#xff1a;数据窃取&#xff08;密码等信息被窃取&#xff0c;盗刷&#xff0c;敏感信息的等&#xff09;——RSA/DES加密&#xff1a; 签名机制在API接口中的应用&#xff1a;签名用于验证…...

FastGPT自定义插件的icon

最近研究FastGPT的自定义插件&#xff0c;经过好几天的折磨&#xff0c;终于实现了一个简单的发送邮件功能&#xff0c;但是呢在使用的时候发现插件的icon是默认的fastgpt的logo&#xff0c;那肯定得自定义一个啊。直接说方法&#xff1a; 1、自定义插件下面的template.json文件…...

SprinBoot+Vue旅游网站的设计与实现

目录 1 项目介绍2 项目截图3 核心代码3.1 Controller3.2 Service3.3 Dao3.4 application.yml3.5 SpringbootApplication3.5 Vue 4 数据库表设计5 文档参考6 计算机毕设选题推荐7 源码获取 1 项目介绍 博主个人介绍&#xff1a;CSDN认证博客专家&#xff0c;CSDN平台Java领域优质…...

代码随想录刷题day27丨455.分发饼干 ,376. 摆动序列 ,53. 最大子序和

代码随想录刷题day27丨455.分发饼干 ,376. 摆动序列 ,53. 最大子序和 1.贪心算法理论基础 贪心的本质是选择每一阶段的局部最优&#xff0c;从而达到全局最优。 这么说有点抽象&#xff0c;来举一个例子&#xff1a; 例如&#xff0c;有一堆钞票&#xff0c;你可以拿走十张&a…...

Detect It Easy

Detect It Easy&#xff08;简称 DIE&#xff09;项目的网址为 https://github.com/horsicq/Detect-It-Easy 下载完安装包后&#xff0c;直接双击die.exe即可进入到操作界面 工具介绍&#xff1a; 它可以用来检测程序架构和文件类型。如图所示。其中&#xff0c;「模式」说明程…...

c++开关灯

题目描述 现有 &#x1d45b;n 盏灯排成一排&#xff0c;从左到右依次编号为&#xff1a;11&#xff0c;22&#xff0c;……&#xff0c;&#x1d45b;n。然后依次执行 &#x1d45a;m 项操作。 操作分为两种&#xff1a; 指定一个区间 [&#x1d44e;,&#x1d44f;][a,b]&…...

DevOps实现CI/CD实战(六)- Jenkins集成k8s

十、 Jenkins集成k8s Jenkins在集成K8s之前&#xff0c;需要搭建k8s集群&#xff0c;具体搭建步骤&#xff0c;完整笔记 https://github.com/ITenderL/ITenderL.github.io/tree/main/docs/DevOps&#xff0c; 包括完整的DevOps的笔记。 1. 准备部署的yml文件 pipeline.yml …...

张雪峰:物联网行业迎高光时刻!如何选择?我们诚聘销售工程师!

作为一间10多年的物联网公司&#xff0c;各位求职人士可以看看我们其中一个招聘要求&#xff0c;和自己需求结合分析分析&#xff0c;希望对你们有所帮助。 【公司实力底蕴】 盈电智控物联网科技&#xff08;广东&#xff09;有限公司&#xff0c;2024年7月成立&#xff0c;是…...

利用多文件编程实现顺序表的创建,判满,插入,输出

文章目录 &#x1f34a;自我介绍&#x1f34a;利用多文件编程实现顺序表的创建&#xff0c;判满&#xff0c;插入&#xff0c;输出seqlist.cseqlist.hmain.c 你的点赞评论就是对博主最大的鼓励 当然喜欢的小伙伴可以&#xff1a;点赞关注评论收藏&#xff08;一键四连&#xff…...

百度快照劫持之JS劫持诊断与恢复一例

劫持现象&#xff1a; 百度搜索结果中&#xff0c;被劫持网站出现在搜索结果中&#xff0c; 点击进入网站&#xff0c;网站显示正常&#xff0c;数秒后网站自动跳转到彩票网站f51688.com/ff6/。但是第二次点击搜索结果&#xff0c;正常进入网站缺不会跳转到彩票网站。 初步认…...

深入探讨Go语言中的切片与数组操作

在编程世界中&#xff0c;数组一直是非常流行的数据结构&#xff0c;主要有两个原因&#xff1a;其一是简单易懂&#xff0c;其二是非常灵活&#xff0c;可以存储多种不同类型的数据。在Go语言中&#xff0c;数组的用法有其独特的特点&#xff0c;但与此同时&#xff0c;Go语言…...

【WPS Excel】复制表格时,提示“图片太大,超过部份将被截去“ 问题

WPS表格 2019版本 升级到 WPS最新版 WPS-支持多人在线协作编辑Word、Excel和PPT文档_WPS官方网站 使用最新版就能够解决这个问题&#xff0c;如果仍旧无法解决可以勾选如下配置 重启Excel解决。 请勾选&#xff1a;文件 - 选项 - 编辑 - 不提示且不压缩文件中的图像...

驱动(RK3588S)第九课时:多节点驱动与函数接口

目录 一、多节点概念1、所用到的结构体说明2、函数接口主要是read和write函数2.1、把应用层的数据拷贝给底层2.2、把应用层的数据拷贝给底层 3、应用层的read和write函数4、底层的read和write函数二、ioctl控制命令接口1、概念2、函数介绍应用层和驱动层 三、代码与现象1.编写L…...

Linux系统下配置MySQL

1. 寻找MySQL的配置文件 MySQL的配置文件通常位于以下位置&#xff1a; 在大多数Linux系统上&#xff0c;主配置文件通常位于/etc/mysql/my.cnf或/etc/my.cnf。在macOS上&#xff0c;如果你使用Homebrew安装MySQL&#xff0c;配置文件通常位于/usr/local/etc/my.cnf。在Window…...

信捷 XD PLC POU编程之FB

在使用信捷的POU方式编程&#xff0c;可以建立两种POU:FB和FC。 FB和FC这两种POU又各自可以建立梯形图语言POU和C语言POU。 函数块&#xff08;FB&#xff09;是把反复使用的部分程序块转换成一种通用部件&#xff0c;他可以在程序中反复被调用&#xff0c;不仅 提高了程序的开…...

终于有人把云计算、大数据和人工智能讲明白了!

引言 在当今数字化时代&#xff0c;云计算、大数据和人工智能成为了全球科技界的热门话题。这些技术的迅猛发展以及应用范围的不断扩大&#xff0c;正深刻地改变着我们的生活和工作方式。云计算为我们提供了有效的计算和存储能力&#xff0c;大数据则以海量的信息资源为基础&a…...

【Python】 -- 趣味代码 - 小恐龙游戏

文章目录 文章目录 00 小恐龙游戏程序设计框架代码结构和功能游戏流程总结01 小恐龙游戏程序设计02 百度网盘地址00 小恐龙游戏程序设计框架 这段代码是一个基于 Pygame 的简易跑酷游戏的完整实现,玩家控制一个角色(龙)躲避障碍物(仙人掌和乌鸦)。以下是代码的详细介绍:…...

关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案

问题描述&#xff1a;iview使用table 中type: "index",分页之后 &#xff0c;索引还是从1开始&#xff0c;试过绑定后台返回数据的id, 这种方法可行&#xff0c;就是后台返回数据的每个页面id都不完全是按照从1开始的升序&#xff0c;因此百度了下&#xff0c;找到了…...

最新SpringBoot+SpringCloud+Nacos微服务框架分享

文章目录 前言一、服务规划二、架构核心1.cloud的pom2.gateway的异常handler3.gateway的filter4、admin的pom5、admin的登录核心 三、code-helper分享总结 前言 最近有个活蛮赶的&#xff0c;根据Excel列的需求预估的工时直接打骨折&#xff0c;不要问我为什么&#xff0c;主要…...

Java - Mysql数据类型对应

Mysql数据类型java数据类型备注整型INT/INTEGERint / java.lang.Integer–BIGINTlong/java.lang.Long–––浮点型FLOATfloat/java.lang.FloatDOUBLEdouble/java.lang.Double–DECIMAL/NUMERICjava.math.BigDecimal字符串型CHARjava.lang.String固定长度字符串VARCHARjava.lang…...

Python爬虫(一):爬虫伪装

一、网站防爬机制概述 在当今互联网环境中&#xff0c;具有一定规模或盈利性质的网站几乎都实施了各种防爬措施。这些措施主要分为两大类&#xff1a; 身份验证机制&#xff1a;直接将未经授权的爬虫阻挡在外反爬技术体系&#xff1a;通过各种技术手段增加爬虫获取数据的难度…...

Device Mapper 机制

Device Mapper 机制详解 Device Mapper&#xff08;简称 DM&#xff09;是 Linux 内核中的一套通用块设备映射框架&#xff0c;为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程&#xff0c;并配以详细的…...

蓝桥杯 冶炼金属

原题目链接 &#x1f527; 冶炼金属转换率推测题解 &#x1f4dc; 原题描述 小蓝有一个神奇的炉子用于将普通金属 O O O 冶炼成为一种特殊金属 X X X。这个炉子有一个属性叫转换率 V V V&#xff0c;是一个正整数&#xff0c;表示每 V V V 个普通金属 O O O 可以冶炼出 …...

GitFlow 工作模式(详解)

今天再学项目的过程中遇到使用gitflow模式管理代码&#xff0c;因此进行学习并且发布关于gitflow的一些思考 Git与GitFlow模式 我们在写代码的时候通常会进行网上保存&#xff0c;无论是github还是gittee&#xff0c;都是一种基于git去保存代码的形式&#xff0c;这样保存代码…...

uniapp 集成腾讯云 IM 富媒体消息(地理位置/文件)

UniApp 集成腾讯云 IM 富媒体消息全攻略&#xff08;地理位置/文件&#xff09; 一、功能实现原理 腾讯云 IM 通过 消息扩展机制 支持富媒体类型&#xff0c;核心实现方式&#xff1a; 标准消息类型&#xff1a;直接使用 SDK 内置类型&#xff08;文件、图片等&#xff09;自…...

使用SSE解决获取状态不一致问题

使用SSE解决获取状态不一致问题 1. 问题描述2. SSE介绍2.1 SSE 的工作原理2.2 SSE 的事件格式规范2.3 SSE与其他技术对比2.4 SSE 的优缺点 3. 实战代码 1. 问题描述 目前做的一个功能是上传多个文件&#xff0c;这个上传文件是整体功能的一部分&#xff0c;文件在上传的过程中…...