Matlab基础入门

基础操作:

 matlab命令行操作:

        matlab可以使用命令行执行程序,例如下图运行后在右边工作区会产生响应的变量,如不写分号,则会直接运行。

  • clear命令:clear用于清除变量。
  • clc命令:clc用于清屏。

matlab编写脚本

        新建脚本运行matlab程序,对比命令行操作更方便,对应的脚本后缀为.m

matlab默认变量名:

ans最近一次运行结果
eps浮点数的相对误差
i,j虚数单位
Inf表示无穷大
NaN代表不定值,也就是不是数字
pi圆周率

简单的赋值判断运算:

a = 5;%定义a为5
b = 2;%定义b为2
c = a > b;%a > b返回逻辑值1,逻辑值1赋值给c
d = a~= b;%a 不等于 b返回逻辑值1,逻辑值1赋值给d

输入字符:

%input接收用户输入字符
x=input('请输入数字');
y=x*2;
y

进阶操作

向量:

创建向量:        

        在matlab中,可以将数组,向量,矩阵,理解为一个东西,具体需要解决什么问题再细分为向量或矩阵或数组,创建向量时,逗号与分号等价,分号用于换行,如下程序:

a=[1 2 3 4 5];
b = [1, 2, 3, 4, 5];%与a等价
c=[6 7 8; 9 10 11];%二维矩阵
a
b
c

还可以用另一种方式创建向量:

x = 2 : 2: 10;

这表示从2开始,步长为2,终点为10的向量。也就是x = [2, 4, 6, 8, 10]。

向量运算:

        矩阵点积运算,也就是各个元素相乘。

a=[1 2 3 4 5];
b=[6 7 8 9 10];
c=a.*b
sum(c)%c所有元素之和

向量的叉乘运算:(三维向量)

a=[1 2 3 ];
b=[6 7 8 ];
c=cross(a,b)%计算a,b的叉积

  从拉普拉斯角度计算:

 

使用拉普拉斯在第一行展开:

分支语句:

Matlab的分支结构语法为:

if  表达式执行语句
end

例1:使用if比较a,b的大小:

a = 2;
b = 1;
if a > bfprintf("a大于b");
end

例2:使用if-else语句

a = 1;
b = 2;
if a > bfprintf("a大于b");
elsefprintf("a小于b");
end

例3:使用if-elif语句

a = 1;
b = 1;
if a > bfprintf("a大于b");
elseif a == bfprintf("a等于b");
end

例4:分支嵌套语句:

a = 4;
b = 1;
if a > bfprintf("a大于b,");if rem(a,2) == 0%取余运算fprintf("a是偶数");end
end

循环结构:

for循环

for循环格式为:

for 变量 = 表达式循环体
end

通常采用这种格式for 变量 = 开始值:步长:结束值

代码如下:

for a = 1:2:10 fprintf('第 %d次循环 \n', a);
end

步长若不写,那么默认为1。

表达式为向量:

for a = [2 3 4 5 6]fprintf('第 %d次循环 \n', a);
end

while循环

while循环语句格式:

while 表达式循环体
end

例:实现1到100的累加和

i=1;
sum=0;
while(i<=100)sum=sum+i;i=i+1;
end
fprintf('1到100的累加和为: %d \n', sum);

函数:

普通函数基本结构:

function 输出形参表 = 函数名(输入形参表)函数体语句
end

编写一个函数:

新建文件命名为MyMethod.m

function y= MyMethod(x)
%   x为一个整数
if x>0y=2*x;
elseif x==0y=0;
elsey=x^2;
end
disp(y)
end

运行时在命令行输入:MyMethod(2)即可

例2匿名函数:

f = @(变量列表)表达式

close all;
clc;
b=@(x)(sin(x)+cos(x)); %创建关于x的匿名函数
c=b(pi) %带入pi
d=@(x,y)(sin(x)+cos(y)) %创建x和y的匿名函数
e=d(pi,pi) %带入pi值测试

建立矩阵函数:

ones(n)建立一个n×n的1矩阵
ones(m,n,……,p)建立一个m×n×……×p的1矩阵
ones(size(A))建立一个和矩阵A同样大小的1矩阵
zeros(n)建立一个n×n的0矩阵
zeros(m,n,……,p)建立一个m×n×……×p的0矩阵
zeros(size(A))建立一个和矩阵A同样大小的0矩阵
eye(n)建立一个n×n的单位矩阵
eye(m,n)建立一个m×n的单位矩阵
eye(size(A))建立一个和矩阵A同样大小的单位矩阵

随机数函数:

rand产生在0~1之间均匀分布的随机数;每调用一次给一个新的数值
rand + i*rand产生一个复数随机数
rand(n)产生一个n×n的矩阵,其元素均为0~1之间均匀分布的随机数
rand(m,n,……,p)产生一个m×n×……×p的矩阵,其元素均为0~1之间均匀分布的随机数
randn产生零均值、单位方差的正太分布随机数
randn(m,n,……,p)产生一个m×n×……×p的矩阵, 其元素均为零均值、单位方差的正太分布随机数

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/774676.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024年目前阿里云服务器一个月收费价格表多少钱?

阿里云服务器一个月多少钱&#xff1f;最便宜5元1个月。阿里云轻量应用服务器2核2G3M配置61元一年&#xff0c;折合5元一个月&#xff0c;2核4G服务器30元3个月&#xff0c;2核2G3M带宽服务器99元12个月&#xff0c;轻量应用服务器2核4G4M带宽165元12个月&#xff0c;4核16G服务…

【软考---系统架构设计师】特殊的操作系统介绍

目录 一、嵌入式系统&#xff08;EOS&#xff09; &#xff08;1&#xff09;嵌入式系统的特点 &#xff08;2&#xff09;硬件抽象层 &#xff08;3&#xff09;嵌入式系统的开发设计 二、实时操作系统&#xff08;RTOS&#xff09; &#xff08;1&#xff09;实时性能…

程序员如何兼职赚小钱?

程序员由于有技术和手艺其实兼职赚钱的路子还是挺多的&#xff0c;只要你有足够的时间。 1. 做外包 这是比较传统的方式&#xff0c;甲方在一些众包平台上发布开发任务&#xff0c;你可以抢这个任务&#xff0c;但是价格都比较便宜。 任务比较多的平台: 猪八戒、一品威客、开…

Lazada、shopee自养号测评环境搭建需要准备哪些?

在如今电商竞争日益激烈的环境下&#xff0c;卖家们深知流量对店铺转化率的至关重要性。依赖平台内部的流量已不再足够&#xff0c;越来越多的卖家开始探索其他方式来提升销售业绩和品牌知名度。其中&#xff0c;自养号测评成为了一种备受关注的策略&#xff0c;通过搭建独立运…

高效解决Visual Studio无法识别到自定义头文件

文章目录 问题解决方案 问题 说明你没有好好配置项目属性 解决方案 把头文件都集中存放到一个文件夹里 之后我会持续更新&#xff0c;如果喜欢我的文章&#xff0c;请记得一键三连哦&#xff0c;点赞关注收藏&#xff0c;你的每一个赞每一份关注每一次收藏都将是我前进路…

SSRF漏洞

SSRF漏洞 SSRF漏洞本质&#xff1a; 服务器请求伪造&#xff0c;&#xff08;SSRF第一个S是服务端的意思&#xff0c;CSRF第一个字母C是客户端的意思&#xff09;&#xff0c;由攻击者构造形成&#xff0c;服务器端发起的请求的一种安全漏洞。 SSRF攻击目标从外网无法访问的…

flask项目部署

1,那个宝塔面板会自动接管服务器那些端口是否开放&#xff0c;检测端口规则是否真的生效就用nmap &#xff08;这个时候就是flask在对应服务器虚拟环境跑起来了&#xff0c;阿里云面板那里端口也开了&#xff0c;但是公网ip就加对应端口就是访问不了&#xff0c;就是宝塔那里没…

Python编程基础 001 开篇:为什么要学习编程

Python编程基础 001 开篇:为什么要学习编程 一、什么是程序&#xff0c;什么是编程二、学习编程对青少年的价值&#xff08;一&#xff09;未来社会的需要&#xff08;二&#xff09;学习对现青少年现的现阶段的直接影响 三、学习编程从什么时候开始&#xff08;一&#xff09;…

M1 mac安装 Parallels Desktop 18 激活

M1 mac安装 Parallels Desktop 18 激活 下载安装Parallels Desktop 18.1.1 (53328) 激活1. 拷贝prl_disp_service2. 在终端打开Crack所在位置3. 输入命令&#xff0c;激活成功 下载 安装包和激活文件下载地址 链接: https://pan.baidu.com/s/1EjT7xeEDcntIIoOvvhBDfg?pwd9pue …

git下载安装教程

git下载地址 有一个镜像的网站可以提供下载&#xff1a; https://registry.npmmirror.com/binary.html?pathgit-for-windows/图太多不截了哈哈&#xff0c;一直next即可。

耳目一新的滑块版登录注册界面~

又到了毕业季&#xff0c;大家做毕设的时候总会参考已有的案例&#xff0c;不过大多产品的样式非常单一雷同。本帖博主给大家分享一个比较别树一帜的登录界面&#xff0c;如下&#xff1a; 如果没有账号&#xff0c;点击“去注册”&#xff0c;则会产生如下的效果&#xff1a; …

ElementUI中的el-table表格实现动态添加一行、删除一行、清空所有行

ElementUI中的el-table表格实现动态添加一行、删除一行、清空所有行 1、需求分析2、代码实现HTMLdatamethods 1、需求分析 ElementUI中的el-table中实现动态添加一行、删除一行、清空所有行 2、代码实现 HTML <div class"middle-wrapper"><el-buttontype…

TCP重传机制详解——02SACK

文章目录 TCP重传机制详解——02 SACKSACK是什么&#xff1f;为什么要有SACK&#xff1f;实际场景抓包具体显示信息流程 实战抓包讲解SACK关闭场景下&#xff0c;三次重复ACK后会快速重传SACK打开但是不携带SACK块信息场景下&#xff0c;三次重复ACK也不会快速重传SACK打开并且…

[c++] 自写 MyString 类

实现了 MyString 类&#xff0c;同时实现了运算符重载&#xff0c;重载的运算符包括 <、>、、!、<<、>>、[] 等。 如果一个类重载了某个运算符&#xff0c;那么对这个类的对象进行操作的时候便会使用类重载的运算符。比如下边代码 MyString 类中重载了 <、…

Flutter开发之下标

Flutter开发之下标 在iOS开发中使用下标就很方便&#xff0c;本文主要是记录一下Flutter中系统自带的下标&#xff0c;还可以通过对应的方法编写自己的下标。 在Objective-C中的下标 关键字Subscript。 NSArray - (ObjectType)objectAtIndexedSubscript:(NSUInteger)idx A…

今日讲讲路由配置

下载安装路由 1. 下载安装路由库 npm i vue-router 2. 在 src 中新建 views 文件夹&#xff0c;在其中新建页面 3. 在 src 中新建一个 router 文件夹&#xff0c;其中新建一个 index.js import { createRouter, createWebHashHistory } from vue-router; // 导入页面 imp…

Windows python多版本共享方案

1、先安装好python3.11 2、安装好python3.7 这时默认版本是python3.7&#xff0c; A、如果要切换回python3.11则修改环境变量即可 B、 如果想使用3.7&#xff0c;找到python3.7的安装路径 如果想使用3.7 C:\Users\用户\AppData\Local\Programs\Python\Python37 复制python…

零基础学python之高级编程(6)---Python中进程的Queue 和进程锁,以及进程池的创建 (包含详细注释代码)

Python中进程的Queue 和进程锁,以及进程池的创建 文章目录 Python中进程的Queue 和进程锁,以及进程池的创建前言一、进程间同步通信(Queue)二、进程锁&#xff08;Lock&#xff09;三、创建进程池Poorpool 类方法: End! 前言 大家好,上一篇文章,我们初步接触了进程的概念及其应…

【tingsboard开源平台】环境准备和安装

文章目录 环境准备:1.安装JAVA2.安装maven环境3.安装nodeJS(16.15.1)4.安装git环境5.安装npm依赖关系6.放入文件fetched7.安装IDEA 环境准备: 1.安装JAVA 以安装java11为例&#xff0c;安装tingsboard需要的jdk 下载地址&#xff1a;https://www.oracle.com/java/technologi…

Python邮件发送之yagmail

目录 一、背景 二、前提-邮件服务开通 1、启用SMTP服务 2、生成授权码 二