Matlab简单学习


一、Matlab的界面认识

![matlab初始界面](https://img-blog.csdnimg.cn/direct/d1e94272a36845dbabfematlab初始界面

1.文件栏主要是对脚本文件的操作

2.变量栏主要是对工作区变量的操作,但一般用得很少,因为如果要查看变量可以直接在工作区双击即可查看

4.环境部分要注意预设和设置路径两个按钮,预设就相当于是设置,可以调节界面,字体,显示语言等;
5.设置路径是在添加第三方工具包的时候需要用到,可以理解为添加插件
6.注释:快捷键为CTRL+R
7.取消注释:快捷键为CTRL+T
8.运行节:相比于其他的IDE中需要选中某段代码才能实现运行部分代码,Matlab提供了一种高效的方式,即设置分节符%%(后面记得加个空格),则用光标选中某个节即可运行某一节代码。
9.设置断点:Matlab设置和VSC一样非常方便,只需要在代码左边点击一下出现红点即可
10.清除断点:点击断点下的那删除线格式 个三角形,就可以选择清除所有断点。



二、Matlab使用

2.1. 脚本语言

a=5+5 %加法,同理减法

b=2^3  %立方,

c=5*2 %乘法

x = 1; %分号用于不显示
y = x + 5

  • 循环结构:在MatLab中,循环不使用 { } ,而是用end表示循环的结束(不要求缩进),而且if 或while的条件不需要加 ( ) 。参考下面的例程:
/****for循环****/
for n = 1:10    //表示i从1到10逐次+1,循环十次
	x(n) = sin(n*10);
end  //终止for循环


/****while循环****/
x = 0;
sum = 0;
while x < 101
	sum = sum + x;
	x = x + 2;
end


/****if-else语句*****/
if x > 1
	f = x^2 + 1;
else if x <= 0
	f = x^3;
else
	f = 2 * x
end


/*****switch语句******/
num = input('请输入一个数');
switch num
case -1  //注意case后面没有冒号
	disp('I am a teacher.');
case 0
	disp('I am a student.');
case 1
	disp('You are a teacher.');
otherwise     //等同于C语言中的 default
	disp('You are a student.');
end

2.2. 常用(预定义)的变量

a. 预定义的变量

在这里插入图片描述

b. 运算符号

在这里插入图片描述

c. 常用数学函数总结

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

d. 逻辑运算

在这里插入图片描述

“等于”和“不等于”

== :表示等于,一个 = 表示赋值
~= :表示不等于,记住,不是感叹号哦!

在这里插入图片描述

e. 绘图操作

  1. 已知点集——plot
    在这里插入图片描述
    在这里插入图片描述
  2. 符号函数——ezplot, fplot

ezplot
fplot

在这里插入图片描述

  1. 图像处理
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    需要了解的是,在运行Matlab时跳出的fig窗口其实自带了很多编辑图像属性的功能。只需要点开图像属性
    在这里插入图片描述即可对图像标题,坐标轴标签等进行设置。

  2. 三维图形

空间曲线图 —— plot3
plot3

在这里插入图片描述


三、应用实例

3.1.基础

1)计算a*6,a=8

clear all %清空
clc % 情况工作区
a=8;
b=a*6;
b

2)用户输入获取x的值,计算y=x*3;

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

3)分支结构,比较大小

clear all
clc
a=5;
b=2;
if a>b
    fprintf("a大于b")
end

clear all
clc
a=5;
b=2;
if a>b
    fprintf("a大于b")
else
    fprintf("a不大于b")
end

clear all
clc
x=input('请输入数字:');
c=rem(x,2) %求余数的函数
if c==1
    fprintf('x为奇数')
elseif c==0
    fprintf('x为偶数')
else
    fprintf('非数字')
end

4)循环结构

遍历小于10的数,累加求和

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

for a = 1:10 
  fprintf('值a: %d \n', a);
end

5)嵌套函数

计算一元二次方程

function [x1,x2] = qiantao2(a,b,c) 
%定义函数qiantao2计算一元二次函数
d=0; %初始化
function disc 
d = sqrt(b^2 - 4*a*c); %计算d
end 
disc; %输出d
x1 = (-b + d) / (2*a);
x2 = (-b - d) / (2*a);
end 


3.2.不断学习

画出连续时间信号的波形(将其放在一个图形窗口中)

%%注意:subplot要在plot之前,不然绘图容易出错
%M (1)
t=-1.5:0.01:2.5;   %定义域范围是[-1.5,2.5]                                                  
y1=heaviside(t);  
subplot(3,1,1);%三行一列第一幅图
plot(t,y1); 
grid on    %保留网格
axis([-1.5 2.5 -0.5 1.5])  %限制x轴范围是[-1.5,2.5],y轴范围是[-0.5,1.5]
xlabel('t'); %x轴贴上标签't'
ylabel('y'); %y轴贴上标签'y'
title('u(t)');
 
%M (2)
t=-2:0.01:5;    %定义域范围是[-2, 5]
y2=10*exp(-t)-5*exp(-2*t);
subplot(3,1,2); %三行一列第二幅图
plot(t,y2);
axis auto   %自动设置坐标轴,使图像显示效果最佳(这是默认状态)
grid on    %保留网格
xlabel('t'); %x轴贴上标签't'
ylabel('y'); %y轴贴上标签'y'
title('x(t)=10e^(^-^t^)-5e^(^-^2^t^)');
 
%M (3)
t=-7:0.1:7;  %定义域范围是[-7,7]
y3=cos(t)+sin(2*pi*t);
subplot(3,1,3); %三行一列第三幅图
plot(t,y3);
axis auto
grid on   %保留网格
xlabel('t'); %x轴贴上标签't'
ylabel('y'); %y轴贴上标签'y'
title ('cos(t)+sin(2πt)');

结果

数组创立

A = [1 2 3 ; 4 5 6 ; 7 8 9];
B = [9 8 7 ; 6 5 4 ; 3 2 1];
c = A * B
d = A'  %A的转置矩阵,行变列,列变行
e = A(:)    %把矩阵竖着排列,里面是冒号
f = inv(A) %逆矩阵
A * f

E = zeros(10,5,3); %三维数组,10行5列,生成全是0
E( : , :, 1 ) = rand(10,5)
E( : , :, 2 ) = randi(5,10,5)
E( : , :, 3 ) = randn(10,5)

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

二维平面绘图

x: 在0到2π区间,以0.01递增绘点。
在这里插入图片描述

三维平面绘图

在这里插入图片描述
grid on : 在幕布后面加网格线
axis square :使图形更立体,平面变成正方形

  • 13
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值