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

matlab初学习记录

文章目录

    • 内置函数与变量
    • matlab 编辑器
    • 数组
    • 等间距向量
    • 数组函数
    • 数组索引
      • 提取多个元素
    • 对向量执行数组计算
    • 查看文档
  • 画图
    • 添加注释
  • 实践
  • 导入数据
  • 关系运算符
  • 分支
  • 恒星运动

matlab 学习看入门之旅

先计算等号右边再计算等号左边。

工作区记录等号右边的变量。

; 表示的是抑制输出。不输出结果,但是工作区还是会记录的。

上下箭头能够返回之前的命令。

Snipaste_2024-07-26_15-06-10.png

Snipaste_2024-07-26_15-07-43.png

并没有重新计算。

Snipaste_2024-07-26_15-08-16.png

matlab 区分大小写,数字不能开头当变量。

save + 文件名字,可以将工作区的变量保存到 mat 文件中

如:save datafile 就是将工作区里的变量保存到 datafile.mat 文件中

clear 将工作区清空

load + 文件名字,能将文件中的变量加载到工作区中

输入变量名称能在控制台输出变量里面的内容。

clc 清空命令行窗口

Snipaste_2024-07-26_15-15-04.png

也能够保存或加载部分变量。

内置函数与变量

matlab 里面有些内置的量。

如 pi,sin,abs,eig,等等

matlab 中有虚数。

使用 format 函数控制显示精度。

Snipaste_2024-07-26_15-19-04.png

matlab 编辑器

.mlx

仅运行节,就只有节内的值会改变。

运行就是全部了。

数组

matlab 中的变量均为数组。

空格也行,也能区分。不一定非要用逗号隔开。

分号区分一行。

数组内部也可以使用函数进行计算。

等间距向量

使用冒号运算符

1:4 就是 1,2,3,4,

x=1:0.5:5 就是从 1 开始到 5 结束,每个数间隔 0.5,这个是用于知道向量的间隔时使用的。

知道元素数目是使用 linspace(_first_,_last_,_number_of_elements_) 该函数。

x = x' 能让变量转置。

可以通过创建行向量再进行转置来建立列向量。使用圆括号来指定运算的顺序。

请注意,如果您使用 linspace: 创建向量,则不需要使用方括号 ([])。

数组函数

x = rand(2)
x =
0.8147 0.1270
0.9058 0.9134

请注意,rand(2) 命令中的 2 指定输出将为一个 2×2 的随机数矩阵。数的取值是 0 到 1

rand (x, y) 生成 x 行,y 列的数组。

zeros (x, y) 生成 x 行,y 列全零矩阵。

size (x) 能够得到 x 变量代表的矩阵的大小。

数组索引

变量名(x, y)就是从该变量代表的数组中取第 x 行第 y 列的值。注意从 1 开始索引。

: 冒号表示整个,如 A(x,:)表示第 x 行的全部值。

end 表示最后,可以放到 x 表示最后一行,也可以放到 y 表示最后一列。也可以用来计算,例如 end-1 表示倒数第二行。

可以使用变量来作为索引。

提取多个元素

冒号前面的数得小于后面的数

对于行向量或者是列向量可以给一个值,就相当于数组取数,不过索引还是从 1 开始的。

Snipaste_2024-07-26_16-07-51.png

Snipaste_2024-07-26_16-10-52.png

Snipaste_2024-07-26_16-10-57.png

对向量执行数组计算

r = v 1 + 1 就是对 v 1 中的每个元素都加了个 1

* 乘法,这是矩阵乘法,

.* 元素乘法, 对应行,对应列的元素相乘。只有一列的话就是列乘列的。

\ 除法

max()函数能确定向量的最大值。

函数是可以对整个数组中的所有值都生效的。

size() 有两个输出,x, y。

例如 [dr,dc] = size(data)

使用 max 也是一样的,只不过返回的是最大值的索引。

[vMax,ivMax] = max(v2)

波浪号字符 (~) 忽略特定输出。

查看文档

Documentation - MATLAB & Simulink - MathWorks 中国

doc 函数可以直接打开文档。

Snipaste_2024-07-26_16-36-36.png

画图

使用 plot 函数画图

plot(x,y,“r–o”)

以上命令将会绘制一条红色 (r) 虚线 (--),并使用圆圈 (o) 作为标记。您可以在线条设定的文档中了解有关可用符号的详细信息。

请注意,每个绘图命令都创建了一个单独的绘图。要在一张图上先后绘制两条线,请使用 hold on 命令保留之前的绘图,然后添加另一条线。

启用保留状态时,将继续在同一坐标区上绘图。要恢复默认绘图行为,即其中每个绘图都有自己的坐标区,请输入 hold off

当您单独绘制一个向量时,MATLAB 会使用向量值作为 y 轴数据,并将 x 轴数据的范围设置为从 1n(向量中的元素数目)。

plot 函数接受可选的附加输入,这些输入由一个属性名称和一个关联的值组成。

plot(y,“LineWidth”,5) 后面的数字是线的宽度。

以上命令将绘制一条粗线。您可以在线条属性文档中了解更多可用属性的详细信息。

MATLAB Plot Gallery - MATLAB & Simulink (mathworks.cn)

添加注释

title(“Plot Title”) 添加标题。

ylabel(“Mass (g)”) 坐标轴的说明。

legend(“Exp A”,“Exp B”) 就是左上角的东西

Snipaste_2024-07-26_17-15-42.png

Snipaste_2024-07-26_17-15-45.png

可以拼接字符串。

Snipaste_2024-07-26_17-17-23.png

Snipaste_2024-07-26_17-17-27.png

实践

usage 有什么用?

size 返回的是两个值。

Snipaste_2024-07-26_19-15-14.png

我这里只用一个值去接 size 返回的值,爆出来上面的错误。

可以使用 fft 函数来计算向量的离散傅里叶变换。

fft(y)

f 将包含从 0fs 的频率。主频位于 f 的开头位置。您可以使用 xlim 函数放大所关注的区域。

xlim () 里面放个数组,(min,max)当然数组使用方括号包裹的。

这个限制的是 x 轴的范围。

Snipaste_2024-07-26_19-24-57.png

Snipaste_2024-07-26_19-24-59.png

将鼠标移到图上是有工具显示的。

Snipaste_2024-07-26_19-28-28.png

Snipaste_2024-07-26_19-29-09.png

可以点击更新代码。

Snipaste_2024-07-26_19-29-14.png

导入数据

一个表有列有行,列有列名,我们可以通过表名. 列名获得一列的数据。

我们也可以点一个不存在的列命,这就是创建了一列。

关系运算符

相等或不相等比较的结果为 1 (true) 或 0 (false)。返回的是数值。

可以使用关系运算符将某个向量或矩阵与单个标量值进行比较。结果是与原始数组相同大小的逻辑数组。

可以使用逻辑数组作为数组索引,在这种情况下,MATLAB 会提取索引为 true 的数组元素。

创建一个名为 `v` 的变量,其中包含 `v1` 中所有小于 4 的元素。
v = v1(v1 < 4)

还有别的符号

Snipaste_2024-07-26_19-42-33.png

sampleres = sample(sample < 20 & sample > 10)

Snipaste_2024-07-26_19-44-21.png

分支

跟 python 一样。

不过 if 后面要匹配个 end

for 循环跟 foreach 一样。

最后也是要匹配个 end

如果您要对未知长度的向量执行循环,可以改用 length 函数。

恒星运动

min 函数可以带有两个输出,其中第二个输出为最小值的索引。

控件里面可以添加一些小工具。

loglog 跟 plot 差不多

https://lcms-files.mathworks.com/content/file/58a713b5-fa72-4ba7-8cba-7eb17bb7a331/addcontrol.gif?versionId=KtQYyLWOVTryBMRgPTDltGyd4z7daawj

legend(starnames)

legend 可以写一个数组的。

Snipaste_2024-07-26_20-30-31.png

相关文章:

matlab初学习记录

文章目录 内置函数与变量matlab 编辑器数组等间距向量数组函数数组索引提取多个元素 对向量执行数组计算查看文档 画图添加注释 实践导入数据关系运算符分支恒星运动 matlab 学习看入门之旅 先计算等号右边再计算等号左边。 工作区记录等号右边的变量。 ; 表示的是抑制输出。…...

protobuf之Message

简介 Message是protobuf的消息抽象类&#xff0c;是其它通过protoc生成的自定义消息的基类 结构 #mermaid-svg-u5iAZNpfIH5hQrlP {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-u5iAZNpfIH5hQrlP .error-icon{fil…...

【redis-06】redis的stream流实现消息中间件

redis系列整体栏目 内容链接地址【一】redis基本数据类型和使用场景https://zhenghuisheng.blog.csdn.net/article/details/142406325【二】redis的持久化机制和原理https://zhenghuisheng.blog.csdn.net/article/details/142441756【三】redis缓存穿透、缓存击穿、缓存雪崩htt…...

二、MySQL的数据目录

文章目录 1. MySQL8的主要目录结构1.1 数据库文件的存放路径1.2 相关命令目录1.3 配置文件目录 2. 数据库和文件系统的关系2.1 查看默认数据库2.2 数据库在文件系统中的表示2.3 表在文件系统中的表示2.3.1 InnoDB存储引擎模式2.3.2 MyISAM存储引擎模式 2.4 小结 1. MySQL8的主要…...

2024.10月7~10日 进一步完善《电信资费管理系统》

一、新增的模块&#xff1a; 在原项目基础上&#xff0c;新增加了以下功能&#xff1a; 1、增加AspectJ 框架的AOP 异常记录和事务管理模块。 2、增加SpringMVC的拦截器&#xff0c;实现登录 控制页面访问权限。 3、增加 Logback日志框架&#xff0c;记录日志。 4、增加动态验…...

vue2项目的路由使用history模式,刷新会导致页面404的问题

在vue2项目中&#xff0c;如果我们使用的路由是history模式&#xff0c;刷新会导致页面404&#xff0c;解决方法很简单&#xff0c;在vue.config.js文件中的devServer下增加historyApiFallback: true; 代码如下: module.exports {devServer: {historyApiFallback: true,} }...

pytest框架之fixture测试夹具详解

前言 大家下午好呀&#xff0c;今天呢来和大家唠唠pytest中的fixtures夹具的详解&#xff0c;废话就不多说了咱们直接进入主题哈。 一、fixture的优势 ​ pytest框架的fixture测试夹具就相当于unittest框架的setup、teardown&#xff0c;但相对之下它的功能更加强大和灵活。 …...

【浏览器】如何正确使用Microsoft Edge

1、清理主页广告 如今的Microsoft Edge 浏览器 主页太乱了&#xff0c;各种广告推送&#xff0c;点右上角⚙️设置&#xff0c;把快速链接、网站导航、信息提要、背景等全部关闭。这样你就能得到一个超级清爽的主页。 网站导航       关闭 …...

打印1000年到2000年之间的闰年

我们要打印1000年到2000年之间的闰年&#xff0c;首先我们先输出1000年到2000年之间的所有的年份&#xff0c;同时我们将闰年的判断方法输入到其中 闰年需要满足下列两个条件的其中之一&#xff1a; 1.能被4整除但不能被100整除 2.能被400整除 打印1000年到2000年之间的闰年…...

nn.Identity()

在 PyTorch 中&#xff0c;nn.Identity()是一个简单的模块&#xff0c;它的作用是在模型中作为一个占位符或者不进行任何操作的层&#xff0c;直接返回输入。 一、使用方法 以下是一个简单的使用示例&#xff1a; import torch import torch.nn as nn# 创建一个 Identity 层…...

Java 快速排序

快速排序&#xff08;Quicksort&#xff09;是一种高效的排序算法&#xff0c;采用分治法&#xff08;Divide and Conquer&#xff09;的策略来把一个序列分为较小和较大的两个子序列&#xff0c;然后递归地排序两个子序列。以下是用Java实现的快速排序算法&#xff1a; publi…...

51单片机的智能衣柜【proteus仿真+程序+报告+原理图+演示视频】

1、主要功能 该系统由AT89C51/STC89C52单片机LCD1602显示模块光照传感器时钟模块温湿度传感器继电器按键、LED等模块构成。适用于智能衣柜、智能衣橱、紫外线定时消毒等相似项目。 可实现功能: 1、LCD1602实时显示北京时间、温湿度和开关门状态 2、时钟模块DS1302采集时间 …...

SAP_FI_表ACDOCA取代的表

在 SAP S/4HANA 系统中&#xff0c;ACDOCA&#xff08;通用分录表&#xff0c;Universal Journal&#xff09;引入了全新的数据结构&#xff0c;取代了原先 ERP 系统中多个财务和控制模块的表。ACDOCA 通过一个单一表格整合了财务会计&#xff08;FI&#xff09;和管理会计&…...

论文《OneLLM:One Framework to Align All Modalities with Language》

&#xff08;没有会员只有做100个节点&#xff0c;mindmaster金主爸爸可不可以给我一个会员啊啊啊啊呜呜呜~&#xff09; 欣赏论文的图和表&#xff1a; 表中作者将自己的模型那一行选择灰色作为背景&#xff0c;更加凸显自己的数据&#xff0c;另外对于最好的结果用加粗黑体…...

Ubuntu 22.04.4 LTS更换下载源

方法1&#xff1a;使用图形界面更换下载源 1. 打开软件和更新应用 2. 在Ubuntu 软件标签中&#xff0c;点击“下载自”旁边的下拉菜单&#xff0c;选择“其他” 3. 点击“选择最佳服务器”来自动选择最快的服务器 4. 选择服务器 5. 确定并关闭窗口&#xff0c;系统会提示您重新…...

html嵌入百度地图

html嵌入百度地图 key地址 https://lbsyun.baidu.com/apiconsole/key#/home &#xff0c;点进去注册应用、然后复制key换掉即可显示地图 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>百度地图搜索…...

【网络】详解TCP协议中的可靠传输

【网络】详解TCP协议中的可靠传输 一. TCP协议段格式二. 确认应答——确保可靠性的核心机制1.确保时序2.确保发送方知道数据是否被对方接收到 三. 超时重传1. 发送的数据丢包2. ACK报文丢失 一. TCP协议段格式 TCP协议段格式相比UDP要复杂很多&#xff0c;很多内容需要我们了解…...

【Python实例】Python读取并绘制nc数据

【Python实例】Python读取并绘制nc数据 准备&#xff1a;安装netCDF库等读取nc数据相关信息绘制图形利用basemap绘图 参考 准备&#xff1a;安装netCDF库等 以【1960-2020年中国1km分辨率月降水数据集】中2020年降水为例。 先在Panopoly中查看数据属性&#xff0c;如下&#…...

swift使用llama3.2-vision微调xray数据集

1.数据格式 [{"query": "通过这张胸部X光影像可以诊断出什么?","response": "根据X射线图像,心脏大小正常,肺部看起来很清晰。已经排除了肺炎、积液、水肿、气胸、腺病、结节或肿块的存在。该发现表明一切正常。换句话说,总体印象是胸…...

学习小课堂

1.多服务节点下Session-Cooki方案如何做&#xff1f; Session-Cookie 方案在单体环境是一个非常好的身份认证方案。但是&#xff0c;当服务器水平拓展成多节点时&#xff0c;Session-Cookie 方案就要面临挑战了。 举个例子&#xff1a;假如我们部署了两份相同的服务 A&#x…...

Leetcode 3576. Transform Array to All Equal Elements

Leetcode 3576. Transform Array to All Equal Elements 1. 解题思路2. 代码实现 题目链接&#xff1a;3576. Transform Array to All Equal Elements 1. 解题思路 这一题思路上就是分别考察一下是否能将其转化为全1或者全-1数组即可。 至于每一种情况是否可以达到&#xf…...

无法与IP建立连接,未能下载VSCode服务器

如题&#xff0c;在远程连接服务器的时候突然遇到了这个提示。 查阅了一圈&#xff0c;发现是VSCode版本自动更新惹的祸&#xff01;&#xff01;&#xff01; 在VSCode的帮助->关于这里发现前几天VSCode自动更新了&#xff0c;我的版本号变成了1.100.3 才导致了远程连接出…...

VTK如何让部分单位不可见

最近遇到一个需求&#xff0c;需要让一个vtkDataSet中的部分单元不可见&#xff0c;查阅了一些资料大概有以下几种方式 1.通过颜色映射表来进行&#xff0c;是最正规的做法 vtkNew<vtkLookupTable> lut; //值为0不显示&#xff0c;主要是最后一个参数&#xff0c;透明度…...

vue3+vite项目中使用.env文件环境变量方法

vue3vite项目中使用.env文件环境变量方法 .env文件作用命名规则常用的配置项示例使用方法注意事项在vite.config.js文件中读取环境变量方法 .env文件作用 .env 文件用于定义环境变量&#xff0c;这些变量可以在项目中通过 import.meta.env 进行访问。Vite 会自动加载这些环境变…...

大学生职业发展与就业创业指导教学评价

这里是引用 作为软工2203/2204班的学生&#xff0c;我们非常感谢您在《大学生职业发展与就业创业指导》课程中的悉心教导。这门课程对我们即将面临实习和就业的工科学生来说至关重要&#xff0c;而您认真负责的教学态度&#xff0c;让课程的每一部分都充满了实用价值。 尤其让我…...

淘宝扭蛋机小程序系统开发:打造互动性强的购物平台

淘宝扭蛋机小程序系统的开发&#xff0c;旨在打造一个互动性强的购物平台&#xff0c;让用户在购物的同时&#xff0c;能够享受到更多的乐趣和惊喜。 淘宝扭蛋机小程序系统拥有丰富的互动功能。用户可以通过虚拟摇杆操作扭蛋机&#xff0c;实现旋转、抽拉等动作&#xff0c;增…...

【安全篇】金刚不坏之身:整合 Spring Security + JWT 实现无状态认证与授权

摘要 本文是《Spring Boot 实战派》系列的第四篇。我们将直面所有 Web 应用都无法回避的核心问题&#xff1a;安全。文章将详细阐述认证&#xff08;Authentication) 与授权&#xff08;Authorization的核心概念&#xff0c;对比传统 Session-Cookie 与现代 JWT&#xff08;JS…...

java高级——高阶函数、如何定义一个函数式接口类似stream流的filter

java高级——高阶函数、stream流 前情提要文章介绍一、函数伊始1.1 合格的函数1.2 有形的函数2. 函数对象2.1 函数对象——行为参数化2.2 函数对象——延迟执行 二、 函数编程语法1. 函数对象表现形式1.1 Lambda表达式1.2 方法引用&#xff08;Math::max&#xff09; 2 函数接口…...

WebRTC调研

WebRTC是什么&#xff0c;为什么&#xff0c;如何使用 WebRTC有什么优势 WebRTC Architecture Amazon KVS WebRTC 其它厂商WebRTC 海康门禁WebRTC 海康门禁其他界面整理 威视通WebRTC 局域网 Google浏览器 Microsoft Edge 公网 RTSP RTMP NVR ONVIF SIP SRT WebRTC协…...

从零开始了解数据采集(二十八)——制造业数字孪生

近年来&#xff0c;我国的工业领域正经历一场前所未有的数字化变革&#xff0c;从“双碳目标”到工业互联网平台的推广&#xff0c;国家政策和市场需求共同推动了制造业的升级。在这场变革中&#xff0c;数字孪生技术成为备受关注的关键工具&#xff0c;它不仅让企业“看见”设…...