Matlab基础入门

本文详细介绍了Matlab的基本操作,包括命令行执行、变量管理、脚本编写、简单赋值与判断、用户输入、向量与矩阵处理、向量运算、分支结构(if、else、elif)、循环(for、while)、函数定义以及随机数生成。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

基础操作:

 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 > b
    fprintf("a大于b");
end

例2:使用if-else语句

a = 1;
b = 2;
if a > b
    fprintf("a大于b");
else
    fprintf("a小于b");
end

例3:使用if-elif语句

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

例4:分支嵌套语句:

a = 4;
b = 1;
if a > b
    fprintf("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>0
    y=2*x;
elseif x==0
    y=0;
else
    y=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的矩阵, 其元素均为零均值、单位方差的正太分布随机数
目录: 第一章 简介 1.1 计算机应用与工程问题 1.2 工程问题的解决方式 第二章 MATLAB 简介 2.1 什么是MATLAB 2.2 基本功能 2.2.1 MATLAB 的视窗环境 2.2.2 简易数学 2.2.3 变数 2.2.4 其它功能 2.4 阵列与矩阵 2.4.1 简易阵列 2.4.2 建立阵列 2.4.3 阵列运算 2.4.4 特殊矩阵 2.4.5 阵列运算的特色 2.5 简易绘图 2.6 输入及输入 2.6.1 交谈式的输入 2.6.2 输出格式 2.7 如何撰写 MATLAB 程式 2.7.1 如何在自己的目录执行程式 2.8 储存及读取数据 2.9 其它绘图功能 第三章 进阶的绘图功能 3.1 绘图选项 3.1.1 横轴和纵轴的控制 3.1.2 子图 3.1.3 图形放大及缩小 3.1.4 函数分布的快速绘图 3.1.5 列印功能 3.1.6 其它的功能 3.2 三维绘图 3.1.1 三维的曲线绘图 3.1.2 曲面及等值线绘图 第四章 MATLAB函数 --- 语音讯号分析 4.1 数学函数 4.1.1 常见数学函数 4.1.2 三角和双曲线函数 4.1.3 复数 4.1.4 多项式函数 4.2 数据分析函数 4.2.1 极值、平均、总和、连乘及排序 4.2.2 变异数 4.2.3 长条分布函数 4.3 选择指令及函数 4.3.1 关系及逻辑运算 4.3.2 if-else-end 语法 4.4 范例问题:语音讯号分析 4.5 使用者自定函数 4.6 乱数 4.6.1 均匀乱数 4.6.2 常态乱数 4.7 矩阵运算函数 4.8 回圈 4.8.1 For 回圈 4.8.2 While 回圈 第五章 线性代数与矩阵 --- 蛋白质分子量分析 5.1 矩阵运算 5.1.1 基本矩阵运算元 5.1.2 矩阵多项式 5.3 矩阵函数 5.3.1 反矩阵、矩阵秩与行列式 5.3.2 特徵值与特徵向量 5.3.3 矩阵分解 第六章 解联立方程式 --- 电路分析 6.1 利用矩阵解法 6.2 范例问题:电路分析 第七章 内插及曲线拟合 --- 机械手臂路径 7.1 内插 7.1.1 一维内插 7.1.2 二维内插 7.1.3 Spline 内插 7.3 曲线契合 7.3.1 线性回归 7.3.2 多项式回归 7.3.3 多项式契合及函数计算 第八章 解方程式根 8.1 多项式的根 8.2 非线性方程式的实根 第九章 数值微分及积分 --- 管流分析 9.1 数值积分 9.1.1 梯形法 9.1.2 二次函数法 9.3 数值微分 9.3.1 差分表示法 9.3.2 差分函数 第十章 解常微分方程式 --- 发动机性能分析 10.1 微分方程式 10.2 阮奇-库达方法 10.3 范例问题:飞机发动机的加速性能分析 10.4 高阶常微分方程式 第十一章 符号运算 --- 气象气球 11.1 符号代数 11.1.1 符号表示式 11.1.2 数学式的化简 11.1.3 符号表示式的运算 11.2 解方程式 11.2.1 一般方程式 11.2.2 常微分方程式 11.3 微分与积分 11.3.1 微分 11.3.2 积分
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值