Matlab 使用经验分享(常用函数介绍;矩阵常见计算)
Matlab 使用经验分享
大家好!最近有很多朋友询问我关于 Matlab 的使用,于是我决定写一篇博客来分享一下我的经验。对于数学和编程爱好者来说,Matlab 是一个非常有用的工具。我自己在数学实验和数学建模竞赛中也经常使用它。那么,为什么 Matlab 这么受欢迎呢?
Matlab 的起源
MATLAB 是美国MathWorks 公司自20 世纪 80 年代中期推出的数学软件, 优秀的数值 计算能力和卓越的数据可视化能力使其很快在数学软件中脱颖而出。
为什么选择 Matlab?
由于 Maltab 编程方便,有大量内部函数和工具箱可以使用,作图也十分方便,因此在 数学实验和数学建模竞赛中,我们就常使用 Matlab 作为我们的编程工具。
一些常用函数介绍
- 三角函数
- sin: --正弦
- sinh: 双曲正弦
- asin: -反正弦
- cosh: 双曲余弦
- acos: -反余弦
- atanh: --反双曲正切
- 指数函数与对数函数
- exp: -指数
- log: --e 为底的对数
- log10: 常用对数
- sqrt: --平方根
- 与复数有关的函数
- abs: -模或绝对值
- angle: 幅角
- conj: 复共轭
- imag: 虚部
- real: --实部
- 舍入函数及其它数值函数
- fix: – 向 0 舍入
- floor: 向负无穷舍入
- ceil: – 向正无穷舍入
- sign(x): -符号函数
- min(x): 向量 x 的元素的最小值
- max(x): 向量 x 的元素的最大值
- mean(x): 向量 x 的元素的平均值
- median(x): 向量 x 的元素的中位数
- std(x): 向量 x 的元素的标准差
- diff(x): 向量 x 的相邻元素的差
- sort(x): 对向量 x 的元素进行排序
- length(x): 向量 x 的元素个数
- norm(x): 向量 x 的 Euclidean 长度
- sum(x): 向量 x 的元素总和
- prod(x): 向量 x 的元素连乘积
- cumsum(x): 向量 x 的累计元素总和
矩阵常见计算
矩阵输入
矩阵输入最简单的方法是把矩阵的元素直接排列在方括号中。每行内的元素间用空格或逗号隔开,行与行之间用分号隔开。例如:
A=[1,4,7;3,6,9;6,7,4]
矩阵的转置
矩阵的转置用符号´来表示。例如:
A=[1,4,7;3,6,9;6,7,4];
B=A´
矩阵的加减
矩阵的加减使用的是”+”和”-“运算符。进行矩阵加减运算必须是同型矩阵。例如:
A=[1,3,6;4,5,7;7,8,9];
B=[3,5,7;2,4,6;1,3,9];
C=A+B
以下是关于矩阵与标量进行加减运算的内容:
矩阵可以与一个数进行加减运算,运算法则是对应每个元素加减同一个数。例如:
Z=C-1
结果为:
Z =
3
5
…
矩阵乘法
矩阵乘法用符号*表示。要求前一矩阵的列数与后一矩阵的行数相同。例如:
A=[1,4,7;2,5,8];
B=[4,5,9;1,7,8;3,2,1];
C=A*B
在 Matlab 中,还可以进行矩阵与数的乘法。其规则是矩阵的每个元素与该数相乘。例如:
A=[1,5,8;2,6,9];
B=3*A
结果为:
B =
3 15 24
6 18 27
矩阵的行列式
求方阵 A 的行列式,用 det(A) 表示。例如:
A=[1,3,6;2,5,8;3,9,11];
Z=det(A)
矩阵求逆
非奇异矩阵 ( A ) 的求逆用 inv(A) 表示。例如:
A=[1,3,6;2,5,8;3,9,11];
Z=inv(A)
结果为:
Z =
-2.4286 3.0000 -0.8571
0.2857 -1.0000 0.5714
…
以下是关于如何验证矩阵的逆以及如何使用逆矩阵来解方程组的内容:
要验证矩阵的逆是否正确,可以计算 ( C = A \times Z )。例如:
C =1.0000 0 -0.00000 1.0000 -0.0000...
利用逆矩阵可以解方程组。例如:
AX=b
其中:
A=[1,3,6;…
以下是关于如何使用矩阵来解方程组和函数拟合的内容:
例如,给定以下方程组:
A=[1,3,6;2,5,8;3,9,11];
b=[3,6,7]';
X=inv(A)*b
结果为:
X =
4.7143
-1.1429
0.2857
或者,使用 X=A\b 也可以求解。此外,X=A\b 还可以求解矛盾方程组。
函数拟合
假设因变量 y 与自变量 x 之间存在以下关系:
y = a + b * exp(-x)
观测数据为:
| x | 0.0 | 0.3 | 0.8 | 1.1 | 1.6 | 2.3 |
| y | 0.82| 0.72| 0.63| 0.60| 0.55| 0.5 |
基于这些数据,我们可以建立矛盾方程组 AX=y,其中X=[a,b] ′
以下是关于如何使用 m 文件进行函数拟合的内容:
我们可以创建以下 m 文件来进行拟合:
t=[0.0, 0.3, 0.8, 1.1, 1.6, 2.3]‘;
y=[0.82, 0.72, 0.63, 0.60, 0.55, 0.5]’;
A=[ones(size(t)),exp(-t)];
X=inv(A’*A)*A’*y;
或者
X=A\y;
计算结果为:
X = 0.4760 0.3413
即:a=0.4760,b=0.3413。
函数拟合为:y=0.476+0.3413×e^x 。
我们可以使用图形来表示结果。

以下是 M 文件的内容:
M 文件如下
t=[0.0 0.3 0.8 1.1 1.6 2.3]’
y=[0.82 0.72 0.63 0.60 0.55 0.5]’
A=[ones(size(t)),exp(-t)]
x=inv(A’*A)*A’y
n=500
tt=zeros(n,1);
yy=zeros(n,1);
dt=2.3/n;
for i=1:n
tt(i)=idt;
yy(i)=x(1)+x(2)*exp(-tt(i));
end
plot(t,y,‘*b’,tt,yy,‘r’)
b—表示蓝色,代表原数据
r-----表示红色,代表拟合曲线
矩阵特征值
如果 A 为方阵,满足 AX=λX 的 λ 称为 A 的特征值,X 称为 A 的特征向量。计算 A 的特征值用 eig(A)表示。
例如:
A=[1 3 6; 2 5 8; 3 6 8];
Z=eig(A)
结果为:
Z =
15.2382
-1.3365
0.0982
如要同时求出特征向量,采用表达式 [X,V]=eig(A)。
结果为:
X = -0.4135 -0.6094
-0.6765
V =
15.2382
0
0
需要直接看PDF文件,直接在博主主页的资源里免费下载,因为博主写的时候可能个别的会有缺漏,需要看原文档的直接下载即可。
相关文章:
Matlab 使用经验分享(常用函数介绍;矩阵常见计算)
Matlab 使用经验分享 大家好!最近有很多朋友询问我关于 Matlab 的使用,于是我决定写一篇博客来分享一下我的经验。对于数学和编程爱好者来说,Matlab 是一个非常有用的工具。我自己在数学实验和数学建模竞赛中也经常使用它。那么,…...
软件工程(十七) 行为型设计模式(三)
1、观察者模式 简要说明 定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并自动更新 速记关键字 联动,广播消息 类图如下 基于上面的类图,我们来实现一个监听器。类图中的Subject对应我们的被观察对象接口(IObservable),…...
在抖音中使用语聚AI,实现自动回复用户视频评论、私信问答
您可以通过集简云数据流程,将语聚AI助手集成到抖音视频评论、抖音私信,实现自动回复用户视频评论、私信问答,大大提升账号互动与运营效率。 效果如下: 自动化流程: ● 抖音普通号评论对接语聚AI(点击可一…...
pyqt5-快捷键QShortcut
import sys from PyQt5.QtWidgets import * from PyQt5.QtCore import * from PyQt5.QtGui import *""" 下面示例揭示了,当关键字绑定的控件出现的时候,快捷键才管用, 绑定的控件没有出现的时候快捷键无效 """…...
匿名函数( lambda 表达式)
在 C 中,匿名函数也被称为 lambda 表达式。C11 引入了 lambda 表达式,使得在需要函数对象(函数符)的地方可以使用匿名函数来代替。 lambda 表达式的基本语法如下: [capture list] (parameter list) -> return typ…...
基于SSM的汽车维修管理系统——LW模板
摘要 随着人们生活水平的不断提高,私家车的数量正在逐年攀升。这带动了汽车维修行业的发展。越来越多的汽车维修厂如雨后春笋般涌现。同时,维修厂的业务操作产生了庞大的数据,这给汽车维修厂工作人员的数据管理提出了新的要求,他们…...
Ceph的纠删码特性 EC(Erasure Code)代码流程
从GitHub上Clone Ceph项目,我是基于(ceph version 12.2.11 luminous 版本)的代码来分析的 一、EC(Erasure Code)是什么? Ceph的纠删码特性EC:将写入的数据分成N份原始数据,通过这N份原始数据计算出M份效验…...
盘点那些国际知名黑客(上篇)
电影中的黑客仅靠一部电脑就可以窃取别人的信息,利用自己高超的技术让公司甚至国家都胆战心惊。“黑客”原指热心于计算机技术、水平高超的电脑高手,但逐渐区分为黑帽、白帽、灰帽。这些术语源自美国流行文化的老式西部电影,其中主角戴白色或…...
机器学习基础12-Pipeline实现自动化流程处理(基于印第安糖尿病Pima 数据集)
有一些标准的流程可以实现对机器学习问题的自动化处理,在 scikitlearn 中通过Pipeline来定义和自动化运行这些流程。本节就将介绍如何通过Pipeline实现自动化流程处理。 如何通过Pipeline来最小化数据缺失。如何构建数据准备和生成模型的Pipeline。如何构建特征选择…...
Ansible学习笔记15
1、roles:(难点) roles介绍: roles(角色):就是通过分别将variables,tasks及handlers等放置于单独的目录中,并可以便捷地调用他们的一种机制。 假设我们要写一个playbo…...
圆圈加数字的css
方式一 .circle { width: 50px; height: 50px; border-radius: 50%; background-color: #f00; color: #fff; text-align: center; line-height: 50px; } .circle::before { content: attr(data-number); display: block; } <div class"circle" data-number"…...
YOLOV5/YOLOV7/YOLOV8改进:用于低分辨率图像和小物体的新 CNN 模块SPD-Conv
1.该文章属于YOLOV5/YOLOV7/YOLOV8改进专栏,包含大量的改进方式,主要以2023年的最新文章和2022年的文章提出改进方式。 2.提供更加详细的改进方法,如将注意力机制添加到网络的不同位置,便于做实验,也可以当做论文的创新点。 3.涨点效果:SPD-Conv提升小目标识别,实现有效…...
Docker数据管理(数据卷与数据卷容器)
目录 一、数据卷(Data Volumes) 1、概述 2、原理 3、作用 4、示例:宿主机目录 /var/test 挂载同步到容器中的 /data1 二、数据卷容器(DataVolumes Containers) 1、概述 2、作用 3、示例:创建并使用…...
大量TCP连接滞留TIME_WAIT、SYN_SENT、CLOSE_WAIT状态的分析
文章目录 一、统计各类状态的tcp连接数量二、TIME_WAIT应用服务器上,来自反向代理的连接反向代理上,访问应用服务的连接反向代理上,来自用户的连接 三、SYN_SENT反向代理上,访问位于防火墙另一侧的目标反向代理上,访问…...
kotlin怎么定义类
在Kotlin中,你可以使用class关键字来定义一个类。以下是一个简单的例子: class MyClass {// class body} 这个例子定义了一个名为MyClass的类。你可以在类体中定义属性和方法。 如果你想定义一个带有属性的类,你可以这样做: cla…...
如何查看数据集下载后保存的绝对路径?
1.问题 当我们下载torchvision.datasets里面的数据集时,有时候会遇到找不到数据集保存路径的问题。 2.解决 引入os库 import os调用如下方法 os.path.abspath(数据集对象.root)以下面代码为例 import os import torchvision.datasets as datasets# 指定数据集…...
使用php实现微信登录其实并不难,可以简单地分为三步进行
使用php实现微信登录其实并不难,可以简单地分为三步进行。 第一步:用户同意授权,获取code //微信登录public function wxlogin(){$appid "";$secret "";$str"http://***.***.com/getToken";$redirect_uriu…...
【LeetCode-中等题】24. 两两交换链表中的节点
文章目录 题目方法一:递归方法二:三指针迭代 题目 方法一:递归 图解: 详细版 public ListNode swapPairs(ListNode head) {/*递归法:宗旨就是紧紧抓住原来的函数究竟返回的是什么?作用是什么即可其余的细枝末节不要细究,编译器…...
5.10 汇编语言:汇编过程与结构
过程的实现离不开堆栈的应用,堆栈是一种后进先出(LIFO)的数据结构,最后压入栈的值总是最先被弹出,而新数值在执行压栈时总是被压入到栈的最顶端,栈主要功能是暂时存放数据和地址,通常用来保护断点和现场。 栈是由CPU管…...
【每日一题Day304】LC1267统计参与通信的服务器 | 哈希表
统计参与通信的服务器【LC1267】 这里有一幅服务器分布图,服务器的位置标识在 m * n 的整数矩阵网格 grid 中,1 表示单元格上有服务器,0 表示没有。 如果两台服务器位于同一行或者同一列,我们就认为它们之间可以进行通信。 请你统…...
【Axure高保真原型】引导弹窗
今天和大家中分享引导弹窗的原型模板,载入页面后,会显示引导弹窗,适用于引导用户使用页面,点击完成后,会显示下一个引导弹窗,直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…...
C++实现分布式网络通信框架RPC(3)--rpc调用端
目录 一、前言 二、UserServiceRpc_Stub 三、 CallMethod方法的重写 头文件 实现 四、rpc调用端的调用 实现 五、 google::protobuf::RpcController *controller 头文件 实现 六、总结 一、前言 在前边的文章中,我们已经大致实现了rpc服务端的各项功能代…...
DeepSeek 赋能智慧能源:微电网优化调度的智能革新路径
目录 一、智慧能源微电网优化调度概述1.1 智慧能源微电网概念1.2 优化调度的重要性1.3 目前面临的挑战 二、DeepSeek 技术探秘2.1 DeepSeek 技术原理2.2 DeepSeek 独特优势2.3 DeepSeek 在 AI 领域地位 三、DeepSeek 在微电网优化调度中的应用剖析3.1 数据处理与分析3.2 预测与…...
基于Flask实现的医疗保险欺诈识别监测模型
基于Flask实现的医疗保险欺诈识别监测模型 项目截图 项目简介 社会医疗保险是国家通过立法形式强制实施,由雇主和个人按一定比例缴纳保险费,建立社会医疗保险基金,支付雇员医疗费用的一种医疗保险制度, 它是促进社会文明和进步的…...
React19源码系列之 事件插件系统
事件类别 事件类型 定义 文档 Event Event 接口表示在 EventTarget 上出现的事件。 Event - Web API | MDN UIEvent UIEvent 接口表示简单的用户界面事件。 UIEvent - Web API | MDN KeyboardEvent KeyboardEvent 对象描述了用户与键盘的交互。 KeyboardEvent - Web…...
【android bluetooth 框架分析 04】【bt-framework 层详解 1】【BluetoothProperties介绍】
1. BluetoothProperties介绍 libsysprop/srcs/android/sysprop/BluetoothProperties.sysprop BluetoothProperties.sysprop 是 Android AOSP 中的一种 系统属性定义文件(System Property Definition File),用于声明和管理 Bluetooth 模块相…...
MySQL 8.0 OCP 英文题库解析(十三)
Oracle 为庆祝 MySQL 30 周年,截止到 2025.07.31 之前。所有人均可以免费考取原价245美元的MySQL OCP 认证。 从今天开始,将英文题库免费公布出来,并进行解析,帮助大家在一个月之内轻松通过OCP认证。 本期公布试题111~120 试题1…...
Java面试专项一-准备篇
一、企业简历筛选规则 一般企业的简历筛选流程:首先由HR先筛选一部分简历后,在将简历给到对应的项目负责人后再进行下一步的操作。 HR如何筛选简历 例如:Boss直聘(招聘方平台) 直接按照条件进行筛选 例如:…...
如何在网页里填写 PDF 表格?
有时候,你可能希望用户能在你的网站上填写 PDF 表单。然而,这件事并不简单,因为 PDF 并不是一种原生的网页格式。虽然浏览器可以显示 PDF 文件,但原生并不支持编辑或填写它们。更糟的是,如果你想收集表单数据ÿ…...
Redis的发布订阅模式与专业的 MQ(如 Kafka, RabbitMQ)相比,优缺点是什么?适用于哪些场景?
Redis 的发布订阅(Pub/Sub)模式与专业的 MQ(Message Queue)如 Kafka、RabbitMQ 进行比较,核心的权衡点在于:简单与速度 vs. 可靠与功能。 下面我们详细展开对比。 Redis Pub/Sub 的核心特点 它是一个发后…...
