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.rhkb.cn/news/288449.html

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

相关文章

HarmonyOS 应用开发案例

本帖下方集中了HarmonyOS Next应用开发时&#xff0c;会遇到的常见应用案例。后续会持续更新大量案例&#xff0c;帮助开发者快速学习。欢迎感兴趣的同学加入Q&#xff1a;454901491 72.手写绘制及保存图片案例&#xff08;0319更新&#xff09;&#xff08;点此查看源码实现&…

Partisia Blockchain:真正做到兼顾隐私、高性能和可拓展的公链

目前&#xff0c;包括 Secret Network、Oasis Protocol 等在内的绝大多数以隐私为特性的可编程公链&#xff0c;在兼顾隐私的同时&#xff0c;在可拓展以及性能上或多或少的有所牺牲&#xff0c;即难以对诸多实际应用场景进行支撑。这归咎于链的设计以及共识机制的不合理&#…

netty构建udp服务器以及发送报文到客户端客户端详细案例

目录 一、基于netty创建udp服务端以及对应通道设置关键 二、发送数据 三、netty中的ChannelOption常用参数说明 1、ChannelOption.SO_BACKLOG 2、ChannelOption.SO_REUSEADDR 3、ChannelOption.SO_KEEPALIVE 4、ChannelOption.SO_SNDBUF和ChannelOption.SO_RCVBUF 5、Ch…

vite+vue3动态模块化导入并使用pinia

一、安装引入pinia 1.安装 pnpm install pinia # 或者使用 yarn yarn add pinia # 或者使用 npm npm install pinia 2.在main.js里引入 import { createApp } from vue import App from ./App.vue import { createPinia } from pinia createApp(App).use(createPinia()).mo…

java特殊文件——properties属性文件概述

前言&#xff1a; 整理下学习笔记&#xff0c;打好基础&#xff0c;daydayup!! properties properties是一个Map集合&#xff08;键值对合集&#xff09;&#xff0c;但是一般不当作合集。而是用来代表属性文件&#xff0c;通过Properties读写属性文件里的内容 Properties调用方…

数据库学习(四)mybatis

Mybatis Mybatis是一个基于数据持久层&#xff08;DAO层&#xff09;的一款框架&#xff0c;他能极大的简化Java中连接数据库&#xff0c;操作数据库也就是jdbc的操作。 在定义mybatis相关接口时&#xff0c;不需要定义实现类&#xff0c;因为在程序启动时&#xff0c;mybati…

程序员如何兼职赚小钱?

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

聚合支付备案新增机构名单公布,14家机构成功备案

孟凡富 3月27日&#xff0c;中国支付清算协会公布了最新一批收单外包服务机构备案机构结果&#xff0c;总备案机构为27000家&#xff0c;新增备案机构为648家&#xff0c;其中&#xff0c;新增聚合支付技术服务备案机构包括北京鑫杰华誉、深圳中峻、多点(深圳)数字科技、扬州泽…

Amazon SageMaker + Stable Diffusion 搭建文本生成图像模型

如果我们的计算机视觉系统要真正理解视觉世界&#xff0c;它们不仅必须能够识别图像&#xff0c;而且必须能够生成图像。文本到图像的 AI 模型仅根据简单的文字输入就可以生成图像。 近两年&#xff0c;以ChatGPT为代表的AIGC技术崭露头角&#xff0c;逐渐从学术研究的象牙塔迈…

静态、动态代理模式(Spring学习笔记八)

代理模式是SpringAOC的底层 代理模式分为&#xff1a;静态代理模式 动态代理模式 1、静态代理 代码步骤 接口&#xff1a; package com.li.dedmo01;public interface Rent {public void rent(); }真实角色&#xff1a; package com.li.dedmo01;public class Host imple…

没有与参数列表匹配的构造函数“cv::VideoWriter::VideoWriter”实例

今天在使用Visual Studio开发与OpenCV相关的程序时&#xff0c;遇到了这样的情况: 第一个参数的下方被打上了红波浪线&#xff0c;我本能的觉得是第一个参数出的问题&#xff0c;于是改成了这样: 红线依然存在&#xff0c;没有消失&#xff0c;把鼠标放在红线下方&#xff0c…

AI Agent(LLM Agent)入门解读

1. 什么是AI Agent&#xff1f; AI Agent可以理解为一个智能体&#xff0c;包括感知模块、规划决策模块和行动模块&#xff0c;类似于人类的五官、大脑和肢体。它能帮助人类处理复杂的任务&#xff0c;并能根据环境反馈进行学习和调整。 五官可以理解为感知模块&#xff0c;大…

Linux相关命令(1)

1、找出文件夹下包含 “aaa” 同时不包含 “bbb”的文件&#xff0c;然后把他们重新生成一下。要求只能用一行命令。 find ./ -type f -name "*aaa*" ! -name "*bbb*" -exec touch {} \;文件系统操作命令 df&#xff1a;列出文件系统的整体磁盘使用情况 …

已注册的商标别忘了续展,新注可能难下证!

近期普推知产老杨遇到好几个网友和看过多个案例&#xff0c;以前商标名称可以申请注册下来&#xff0c;但是换字体注册不下来了&#xff0c;有的是不想续展想直接换字体申请注册&#xff0c;但是也没有下来。 这些商标名称主要是存在禁止注册或缺显&#xff0c;比如“柳林”以前…

LeetCode讲解算法2-数据结构[栈和队列](Python版)

文章目录 一、栈1.1 栈的定义1.2 栈的实现分析步骤1.3 栈的应用匹配圆括号匹配符号模2除法&#xff08;十进制转二进制&#xff09;进制转换 二、队列2.1 单向队列2.2 双端队列2.3 队列的应用验证回文串滑动窗口最大值 一、栈 1.1 栈的定义 栈是一种线性数据结构&#xff0c;栈…

【MySQL】简述SQLの通用语法及4种基本语句介绍(DDL/DML/DQL/DCL)

前言 大家好吖&#xff0c;欢迎来到 YY 滴MySQL系列 &#xff0c;热烈欢迎&#xff01; 本章主要内容面向接触过C Linux的老铁 主要内容含&#xff1a; 欢迎订阅 YY滴C专栏&#xff01;更多干货持续更新&#xff01;以下是传送门&#xff01; YY的《C》专栏YY的《C11》专栏YY的…

【那些年错过的好书】——Web前端开发实战:HTML5+CSS3+JavaScript+Vue+Bootstrap(微视频版)

喜欢前端的同学&#xff0c;可以私信我加入学习群。 点击链接&#xff0c;获取资源&#xff1a; https://lizetoolbox.top:8080/qrCode_contact 或者 http://lizetoolbox.top/qrCode_contact 正文开始 前言推荐理由书籍介绍章节介绍实书示例写在最后 前言 陌生的朋友&…

kubectl 启用shell自动补全功能

官网手册参考&#xff1a;https://kubernetes.io/zh-cn/docs/tasks/tools/install-kubectl-linux/ 系统&#xff1a;centos7 补全脚本依赖于工具 bash-completion&#xff0c; 所以要先安装它&#xff08;可以用命令 type _init_completion 检查 bash-completion 是否已安装&a…

Python爬虫之爬取网页图片

当我们想要下载网页的图片时&#xff0c;发现网页的图片太多了&#xff0c;无从下手&#xff0c;那我们写一个脚本来爬取呗。 这次的脚本是专门针对某个外国网站使用的&#xff0c;因此仅供参考思路。 在测试的过程中&#xff0c;我发现网站使用了发爬虫机制&#xff0c;具体就…

阿里云服务器优惠价格61元一年,多配置报价,来看看

2024年阿里云服务器优惠价格表&#xff0c;一张表整理阿里云服务器最新报价&#xff0c;阿里云服务器网aliyunfuwuqi.com整理云服务器ECS和轻量应用服务器详细CPU内存、公网带宽和系统盘详细配置报价单&#xff0c;大家也可以直接移步到阿里云CLUB中心查看 aliyun.club 当前最新…