Matlab旅程(完整版)

强大的科学计算和数据处理能力 :包含600 多种数学运算函数,可以方便地实现用户所 需的各种计算功能。例如 矩阵、特征向量、 傅里叶变换、线性方程求解、微分方程求解、 复数、三角函数、多维数组运算 等。矩阵的 行数、列数无需事先定义。

强大而简易的绘图功能 :能根据输入数据自 动确定坐标绘图;能规定多种坐标系;能绘

制三维坐标中的曲线和曲面;可设置不同的 颜色、线型和视角等。

功能丰富,可扩展性强 有丰富的内部函数 和工具箱。工具箱包括信号处理、图像处理、

控制系统、神经元网络、小波分析、金融等, 几乎涉及各个方面。

3 MATLAB****的工作环境


进入工作环境 :双击 MATLAB 图标。

退出工作环境 exit quit 或直接关闭。

MATLAB 有很多窗口,用来实现不同的功能, 例如 命令窗 、历史命令窗、当前目录窗、工作

空间管理窗、 图形窗 文本编辑窗 等。

  1. 是路径文件夹选择
  1. .是当前文件夹显示
  1. 是点击文件夹的某一文件,可以具体显示
  1. 命令行窗口
  1. 显示命名行窗口的变量和值
  1. 本图中被隐藏了,历史代码显示

3.1 命令窗(command window)

是对MATLAB进行操作的主要载体。默认情况下,启动MATLAB****时就打开命令窗。

MATLAB 的所有函数和命令都可以在命令 窗执行。 程序的运行结果(除图形外)都显示在命令 窗。

3.2 图形窗(figure window)

显示图形的窗口。执行绘图命令后自动弹出。

3.3 文本编辑窗(file editor)

编写和修改文件程序的窗口。

4 帮助系统


命令窗口的帮助系统。

help :查找所有命令或函数的使用方法。

形式: help +函数名

look for :在不知道某命令或函数的确切名称

时查找其功能。

形式: look for +关键字

5 代码系统总结


思维导图完整总结

%%I. 清空环境变量及命令====

clear all % 清除Workspace中的所有变量

clc % 清除Command Window中的所有命令

%%II. 变量命令规则=========

%%

%1. 变量名区分大小写

A = 2

a = 3

%%

%2. 变量名长度不超过63位

ABCDEFGHIJKLMNOPQRSTUVWXYZ123456ABCDEFGHIJKLMNOPQRSTUVWXYZ123456 = 3

%%

%=3. 变量名以字母开头,可以由字母、数字和下划线组成,但不能使用标点

% 3A = 4

% .a = 5

% /b = 5

a_2 = 3

% a.2 = 4

%%

%4. 变量名应简洁明了,通过变量名可以直观看出变量所表示的物理意义

A = rand(3,5)

rows = size(A, 1)

cols = size(A, 2)

%%III. MATLAB数据类型=============

%%

%1. 数字=

2 + 4

10 - 7

3 * 5

8 / 2

%%

%2. 字符与字符串

s = ‘a’

abs(s)

char(65)

num2str(65)

str = ‘I Love MATLAB & Machine Learning.’

length(str)

doc num2str

%%

%3. 矩阵=

A = [1 2 3; 4 5 2; 3 2 7]

B = A’%转置

C = A(😃%列向量

D = inv(A)%逆

A * D

E = zeros(10,5,3)

E(:,:,1) = rand(10,5)

E(:,:,2) = randi(5, 10,5)

E(:,:,3) = randn(10,5)

%%

%4. 元胞数组

A = cell(1, 6)

A{2} = eye(3)

A{5} = magic(5)

B = A{5}

%%

%5. 结构体

books = struct(‘name’,{{‘Machine Learning’,‘Data Mining’}},‘price’,[30 40])

books.name

books.name(1)

books.name{1}

%%IV. MATLAB矩阵操作=================

%%

%=1. 矩阵的定义与构造

A = [1 2 3 5 8 5 4 6]

B = 1:2:9

C = repmat(B, 3, 1)%复制,将B复制成3行1列

D = ones(2, 4)

%%

%2. 矩阵的四则运算=

A = [1 2 3 4; 5 6 7 8]

B = [1 1 2 2; 2 2 1 1]

C = A + B

D = A - B

E = A * B’%矩阵进行计算

F = A .* B具体数值进行计算

G = A / B % G * B = A G * B * pinv(B) = A * pinv(B) G = A * pinv(B)

H = A ./ B

%%

%3. 矩阵的下标=

A = magic(5)

B = A(2,3)

C = A(3,:)

D = A(:,4)

[m, n] = find(A > 20)

%%=V. MATLAB逻辑与流程控制=

%%

%1. if … else … end

A = rand(1,10)

limit = 0.75;

B = (A > limit); % B is a vector of logical values

if any(B)

fprintf(‘Indices of values > %4.2f: \n’, limit);

disp(find(B))%dis输出

else

disp(‘All values are below the limit.’)

end

%%

%2. for … end

k = 10;

hilbert = zeros(k,k); % Preallocate matrix

for m = 1:k

for n = 1:k

hilbert(m,n) = 1/(m+n -1);

end

end

hilbert

%%

%3. while … end

n = 1;

nFactorial = 1;

while nFactorial < 1e100

n = n + 1;

nFactorial = nFactorial * n;

end

n

factorial(69)

factorial(70)

prod(1:69)

prod(1:70)

%%

%4. switch … case … end

mynumber = input(‘Enter a number:’);

switch mynumber

case -1

disp(‘negative one’);

case 0

disp(‘zero’);

case 1

disp(‘positive one’);

otherwise

disp(‘other value’);

end

%%=VI. MATLAB脚本与函数文件===

%%

%=1. 脚本文件

myScript

%%

%2. 函数文件=

mynumber = input(‘Enter a number:’);

output = myFunction(mynumber)

%%=VII. MATLAB基本绘图操作====

%%

%1. 二维平面绘图====

x = 0:0.01:2*pi;

y = sin(x);

figure

plot(x, y)

title(‘y = sin(x)’)

xlabel(‘x’)

ylabel(‘sin(x)’)

xlim([0 2*pi])

x = 0:0.01:20;

y1 = 200exp(-0.05x).*sin(x);

y2 = 0.8exp(-0.5x).sin(10x);

figure

[AX,H1,H2] = plotyy(x,y1,x,y2,‘plot’);%两个纵坐标

set(get(AX(1),‘Ylabel’),‘String’,‘Slow Decay’)

set(get(AX(2),‘Ylabel’),‘String’,‘Fast Decay’)

xlabel(‘Time (\musec)’)

title(‘Multiple Decay Rates’)

set(H1,‘LineStyle’,‘–’)

set(H2,‘LineStyle’,‘:’)

%%

%2. 三维立体绘图=======

t = 0:pi/50:10*pi;

plot3(sin(t),cos(t),t)

xlabel(‘sin(t)’)

ylabel(‘cos(t)’)

zlabel(‘t’)

grid on

axis square

%%

%3. 图形的保存与导出

% (1) Edit → Copy Figure

% (2) Toolbar → Save

% (3) print(‘-depsc’,‘-tiff’,‘-r300’,‘picture1’)

% (4) File → Export Setup

%%VIII. MATLAB文件导入

%%

%1. mat格式

save data.mat x y1 y2

clear all

load data.mat

%%

%2. txt格式

M = importdata(‘myfile.txt’);

S = M.data;

save ‘data.txt’ S -ascii

T = load(‘data.txt’);

isequal(S, T)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值