网站域名怎么做,网络营销与直播电商专业学什么就业方向是什么,大连知名的seo外包,在线设计平台代理第一部分#xff1a;基础知识常用命令#xff1a;clc %清除命令行窗口
clear %清空工作区数据
cd %显示或改变工作目录
clf %清除图形窗口
help %打开帮助文档
save %保存内存变量到指定文件
hold %保持图形
close %关闭当前图窗
quit %退出变量#x…第一部分基础知识常用命令clc %清除命令行窗口
clear %清空工作区数据
cd %显示或改变工作目录
clf %清除图形窗口
help %打开帮助文档
save %保存内存变量到指定文件
hold %保持图形
close %关闭当前图窗
quit %退出变量变量名必须以字母开头之 后可以是任意的字母、数字或 下划线 变量名区分字母的大小写变量名不超过31个字符。 常量ans %默认变量
pi %圆周率
inf %无穷大
exp(1) %自然底数e
eps %浮点运算的相对精度数据类型%%数字
1,2,3;%%向量
a[2 4 6 8];
x1:2:10;
xlinspace(1,10,10);%%矩阵
a[2 4;6 8];%%字符串
hello world运算符 %算数加
- %算数减
* %算数乘
.* %点乘
^ %算数乘方
/ %算数右除%矩阵转置%等于常用函数abs %模
sqrt %平方根
exp %e指数
sin %正弦函数第二部分基础运算变量赋值%数值
a3;%向量
b[1 2 3];
c[1,2,3];
dlinspace(1,3,3);
e1:1:3;%矩阵
f[1,2,3;4,5,6];%字符串
ghello world;数学运算逻辑计算注释%后面的是注释CTRLR快捷键注释CTRLT快捷键取消注释第三部分程序基础程序设计程序结构循环结构for循环for 变量表达式可执行语句1
end2. while 循环while 表达式可执行语句1
end分支结构if 表达式语句1
else语句2
end第四部分函数句柄直接通过符号定义fun1(参数1参数2...)函数表达式
myfun1fun1(变量1变量2)%example1
fun1(x,y)(x.^2y.^2)
myfun1fun1(2,3)%example2
x1:1:10;
ylinspace(10,20,10);%10 11 12 13 14 15 16 17 18 19
fun2(x,y)(x.^2y.^2)
myfun2fun2(x,y)M文件定义和调用函数%example
function[输出形参表output1,output2,...,outputn]函数名(输入形参表input1,...,inputn)注释说明部分函数体代码部分
endmyfun1fun1(x,y);function f1fun1(x1,y1) %%一般这个定义函数部分都会放在这个程序的最下面f1x1.^2y1.^2;
end第五部分画图基础基础命令figure创建一个图形窗口close all关闭打开的matlab文件hold on保持当前轴及图形不变grid on显示当前坐标区的主网格线plot(x,y)创建x-y的二维线图polarplot(theta,rho)在极坐标中绘图plot3(x,y,z)plot(x,y)的三维拓展plot(x1,y1;x2,y2...)绘制多条曲线%example
clc;%%清除命令行窗口
clf;%%清除图形窗口
clear;%%清除工作区数据
close;%%清除打开的matlab文件
%创建x,y变量
xlinspace(-pi,pi);
ycos(x);
plot(x,y);
figure
polarplot(x,y)美化线条plot(x,y,s) s为单引号标记的字符串用来设 置所画数据点的类型、大小、颜色 以及数据点之间连线的属性。rred-实线o圆圈ggreen--虚线加号bblue:点线*星号kblack-.点划线.点LineWidth线宽%example
clc;%%清除命令行窗口
clf;%%清除图形窗口
clear;%%清除工作区数据
close;%%清除打开的matlab文件
% xlinspace(-pi,pi);
% ycos(x);
% plot(x,y);
% figure
% polarplot(x,y)
clc;
clf;
clear;
close;
xlinspace(-pi,pi);
ycos(x);
%%plot(x,y,r-o,LineWidth0.5);
plot(x,y,r-o,LineWidth,0.5);坐标轴设置xlabel/ylabel坐标轴标签xlim/ylim坐标轴范围调整Axes 属性官网中的Axes属性文档%example1
%绘图
clc;%%清除命令行窗口
clf;%%清除图形窗口
clear;%%清除工作区数据
close;%%清除打开的matlab文件
xlinspace(-pi,pi);
ycos(x);
%%plot(x,y,r-o,LineWidth0.5);
plot(x,y,r-o,LineWidth,0.5);
%修改Axes属性
axgca;%%获取图形信息
ax.FontSize12;%%字体大小
ax.TickDirout;%% 刻度线方向
ax.TickLength[0.02 0.02];%%刻度线长度
ax.YLim[-2 2];%%刻度范围%example2
%绘图
clc;%%清除命令行窗口
clf;%%清除图形窗口
clear;%%清除工作区数据
close;%%清除打开的matlab文件
xlinspace(-pi,pi);
ycos(x);
%%plot(x,y,r-o,LineWidth2);
plot(x,y,r-o,LineWidth,2);
%坐标轴
xlabel(x,FontSize,18,FontWeight,bold);
ylabel(y,FontSize,18,FontWeight,bold);
%set实现图形对象属性
set(gca,Fontsize,18,Fontweight,bold,Position,[0.1 0.16 0.71 0.8]);
set(gca,LineWidth,3,Tickdir,in,TickLength,[0.0215,0.015],YMinorTick,off,XMinorTick,off);
%坐标轴范围
xlim([-pi pi]);
ylim([-1 1]);对数坐标轴半对数坐标系semilogx(x,y)x轴以10为基数的对数刻度semilogy(x,y)y轴以10为基数的对数刻度双对数坐标系loglog(x,y)x,y轴以10为基数的对数刻度%example
clc;%%清除命令行窗口
clf;%%清除图形窗口
clear;%%清除工作区数据
close;%%清除打开的matlab文件
x0:1:1000;
y0:10:1e4;
subplot(2,2,1);
semilogy(x,y);
subplot(2,2,2);
semilogx(x,y);
subplot(2,2,[3,4]);
loglog(x,y)一图多线hold onplot(x1,y1,x2,y2,x3,y3...)%example
%绘图
clc;%%清除命令行窗口
clf;%%清除图形窗口
clear;%%清除工作区数据
close;%%清除打开的matlab文件
x1linspace(-pi,pi);
y1cos(x1);
%%plot(x,y,r-o,LineWidth2);
plot(x1,y1,r-o,LineWidth,2);
%坐标轴
xlabel(x,FontSize,18,FontWeight,bold);
ylabel(y,FontSize,18,FontWeight,bold);
%set实现图形对象属性
set(gca,Fontsize,18,Fontweight,bold,Position,[0.1 0.16 0.71 0.8]);
set(gca,LineWidth,3,Tickdir,in,TickLength,[0.0215,0.015],YMinorTick,off,XMinorTick,off);
%坐标轴范围
xlim([-pi pi]);
ylim([-1 1]);hold on;%%保持图像不变x2linspace(-pi,pi);
y2sin(x2);
%%plot(x,y,b--*,LineWidth2);
plot(x2,y2,b--*,LineWidth,2);
%坐标轴
xlabel(x,FontSize,18,FontWeight,bold);
ylabel(y,FontSize,18,FontWeight,bold);
%set实现图形对象属性
set(gca,Fontsize,18,Fontweight,bold,Position,[0.1 0.16 0.71 0.8]);
set(gca,LineWidth,3,Tickdir,in,TickLength,[0.0215,0.015],YMinorTick,off,XMinorTick,off);
%坐标轴范围
xlim([-pi pi]);
ylim([-1 1]);
legend(cosx,sinx)%%多线条最好有图例说明一下%该代码生成的图形和上图一样最大的不同在于双线条的画法不同
%绘图
clc;%%清除命令行窗口
clf;%%清除图形窗口
clear;%%清除工作区数据
close;%%清除打开的matlab文件
x1linspace(-pi,pi);
y1cos(x1);
x2linspace(-pi,pi);
y2sin(x2);
plot(x1,y1,r-o,x2,y2,b--*,LineWidth2);
%坐标轴
xlabel(x,FontSize,18,FontWeight,bold);
ylabel(y,FontSize,18,FontWeight,bold);
%set实现图形对象属性
set(gca,Fontsize,18,Fontweight,bold,Position,[0.1 0.16 0.71 0.8]);
set(gca,LineWidth,3,Tickdir,in,TickLength,[0.0215,0.015],YMinorTick,off,XMinorTick,off);
%坐标轴范围
xlim([-pi pi]);
ylim([-1 1]);
legend(cosx,sinx)%%多线条最好有图例说明一下双纵坐标轴yyaxis left yyaxis right%example
%绘图
clc;%%清除命令行窗口
clf;%%清除图形窗口
clear;%%清除工作区数据
close;%%清除打开的matlab文件
x1linspace(-pi,pi);
y1cos(x1);
colororder({b,r});%设置坐标轴颜色
yyaxis left;
%%plot(x,y,r-o,LineWidth2);
plot(x1,y1,r-o,LineWidth,2);
%坐标轴
xlabel(x,FontSize,18,FontWeight,bold);
ylabel(y,FontSize,18,FontWeight,bold);
%set实现图形对象属性
set(gca,Fontsize,18,Fontweight,bold,Position,[0.1 0.16 0.71 0.8]);
set(gca,LineWidth,3,Tickdir,in,TickLength,[0.0215,0.015],YMinorTick,off,XMinorTick,off);
%坐标轴范围
xlim([-pi pi]);
ylim([-1 1]);hold on;%%保持图像不变yyaxis right;
x2linspace(-pi,pi);
y2sin(x2);
%%plot(x,y,b--*,LineWidth2);
plot(x2,y2,b--*,LineWidth,2);
%坐标轴
xlabel(x,FontSize,18,FontWeight,bold);
ylabel(y,FontSize,18,FontWeight,bold);
%set实现图形对象属性
set(gca,Fontsize,18,Fontweight,bold,Position,[0.1 0.16 0.71 0.8]);
set(gca,LineWidth,3,Tickdir,in,TickLength,[0.0215,0.015],YMinorTick,off,XMinorTick,off);
%坐标轴范围
xlim([-pi pi]);
ylim([-1 1]);
legend(cosx,sinx)%%多线条最好有图例说明一下
多图形显示常用subplot(m,n,number)将当前窗口分割成mxn个视图区域 number表示第几分块%example
%绘图
clc;%%清除命令行窗口
clf;%%清除图形窗口
clear;%%清除工作区数据
close;%%清除打开的matlab文件
xlinspace(-pi,pi);
y1cos(x);
y2sin(x);subplot(1,2,1)
%%plot(x,y,r-o,LineWidth2);
plot(x,y1,r-o,LineWidth,2);subplot(1,2,2)
%%plot(x,y,b--*,LineWidth2);
plot(x,y2,b--*,LineWidth,2);不常用tiledlayout(m,n) 将当前窗口分割成mxn个视图区域 nexttile 创建一个坐标区对象再将其放 入当前图形窗口中的分块图布局 的下一个空图块中 %绘图
clc;%%清除命令行窗口
clf;%%清除图形窗口
clear;%%清除工作区数据
close;%%清除打开的matlab文件
xlinspace(-pi,pi);
y1cos(x);
y2sin(x);figure;
tiledlayout(2,2);%%%在当前窗口布局为2*2的视图区域
nexttile%在第一个图块中创建一个坐标区对象
%%plot(x,y,r-o,LineWidth2);
plot(x,y1,r-o,LineWidth,2);
nexttile%在第二个图块中创建一个坐标区对象
%%plot(x,y,b--*,LineWidth2);
plot(x,y2,b--*,LineWidth,2);
nexttile([1 2])创建第三给图块占据1行2列的坐标区
plot(x,y1,x,y2)第六部分特殊图形伪彩图二元函数zf(x,y)imagesc(x,y,Z)pcolor(x,y,Z)%imagesc
%绘图
clc;%%清除命令行窗口
clf;%%清除图形窗口
clear;%%清除工作区数据
close;%%清除打开的matlab文件
xlinspace(-4,4,100);%%定义俩个相同的向量x,y
yx;[X,Y]meshgrid(x,y);%%%基于向量下x,y创建二维网格数据矩阵XY
ZX.*exp(-X.^2-Y.^2);%%%使用函数表达式定义矩阵z
imagesc(x,y,Z)
xlabel(x);
ylabel(y);
colormap jet %%%设置当前颜色图
colorbar(FontSize,12);%%%显示色阶的颜色栏
clim([-1,1]);%%颜色栏的取值范围ccolorbar;
c.Label.StringZ;%%给颜色栏添加文字标注
c.Label.FontSize12;%pcolor
%绘图
clc;%%清除命令行窗口
clf;%%清除图形窗口
clear;%%清除工作区数据
close;%%清除打开的matlab文件
xlinspace(-4,4,100);%%定义俩个相同的向量x,y
yx;[X,Y]meshgrid(x,y);%%%基于向量下x,y创建二维网格数据矩阵XY
ZX.*exp(-X.^2-Y.^2);%%%使用函数表达式定义矩阵z
pcolor(x,y,Z)
xlabel(x);
ylabel(y);
colormap jet %%%设置当前颜色图
colorbar(FontSize,12);%%%显示色阶的颜色栏
clim([-1,1]);%%颜色栏的取值范围ccolorbar;
c.Label.StringZ;%%给颜色栏添加文字标注
c.Label.FontSize12;统计图形bar(x,y)竖直条形图pie(x,y)饼图barh(x,y)水平条形图histogram柱状图area(x,y)面积图%绘图
clc;%%清除命令行窗口
clf;%%清除图形窗口
clear;%%清除工作区数据
close;%%清除打开的matlab文件
yrandn(20,1); %%创建正态分布的随机数矩阵y
tiledlayout(2,2);
%%%bar函数绘制条形图
nexttile;
bar(y,1,r);%%1表示条形图的宽度r表示颜色
title(条形图);
%%%area函数绘制面积图
nexttile;
area(y,LineStyle,:);%%设置线宽和线型
title(面积图);
%%%pie函数绘制饼图
nexttile;
pie(y);
title(饼图);
%%%histogram函数绘制柱状图
nexttile;
histogram(y,10,FaceColor,r);%%数字10指定bin数目
title(柱状图);离散数据图形 errorbar(x,y,err)误差棒图stem(x,y)火柴杆图stairs(x,y)阶梯图%绘图
clc;%%清除命令行窗口
clf;%%清除图形窗口
clear;%%清除工作区数据
close;%%清除打开的matlab文件
x[93.3 93.1 94.7 90.1 95.6 90.0 94.7];
y[85.6 94.9 96.2 95.1 95.8 96.3 94.1];
eabs(x-y);
tiledlayout(2,2);
nexttile;
errorbar(y,e);
title(误差棒图);
x-2:0.1:2;
yexp(x);
zexp(-x);
nexttile;
stem(x,y);
title(二维火柴图);
nexttile;
stem3(x,y,z);
title(三维火柴图);
nexttile;
stairs(x,y);
title(阶梯图);向量图形 compass(U,V)罗盘图feather(U,V)羽毛图quiver(U,V)箭头图/矢量图%绘图
clc;%%清除命令行窗口
clf;%%清除图形窗口
clear;%%清除工作区数据
close;%%清除打开的matlab文件
xlinspace(-4,4,50);%%定义俩个相同的向量x,y
yx;[X,Y]meshgrid(x,y);%%%基于向量下x,y创建二维网格数据矩阵XY
ZX.*exp(-X.^2-Y.^2);%%%使用函数表达式定义矩阵z
[U,V]gradient(Z,2,2);
contour(X,Y,Z);
hold on;
quiver(X,Y,U,V);
axis image
xlim([-2 2]);
ylim([-2 2]);%绘图
clc;%%清除命令行窗口
clf;%%清除图形窗口
clear;%%清除工作区数据
close;%%清除打开的matlab文件
x-pi:pi/10:pi;%%定义俩个相同的向量x,y
ysin(x);
subplot(1,2,1);
compass(x,y);
title(罗盘图);
subplot(1,2,2);
feather(x,y);
title(羽毛图)三维绘图plot3(x,y,z)plot的三维拓展mesh(X,Y,Z)绘制三维网格图surf(X,Y,Z)绘制三维曲面图contour(X,Y,Z)绘制二维等值线contourf(X,Y,Z)绘制二维等值线%绘图
clc;%%清除命令行窗口
clf;%%清除图形窗口
clear;%%清除工作区数据
close;%%清除打开的matlab文件
xlinspace(-4,4,50);%%定义俩个相同的向量x,y
yx;[X,Y]meshgrid(x,y);%%%基于向量下x,y创建二维网格数据矩阵XY
ZX.*exp(-X.^2-Y.^2);%%%使用函数表达式定义矩阵z
[U,V]gradient(Z,2,2);%%%设置矩阵梯度tiledlayout(3,2)
nexttile
mesh(X,Y,Z);
title(网格图);
xlim([-2 2]);
ylim([-2 2]);nexttile
surf(X,Y,Z);
title(曲面图);
xlim([-2 2]);
ylim([-2 2]);nexttile
contour(X,Y,Z,20);
title(二维等值线图);
xlim([-2 2]);
ylim([-2 2]);nexttile
contourf(X,Y,Z,20);
title(填充二维等值线图);
xlim([-2 2]);
ylim([-2 2]);nexttile
quiver(X,Y,U,V);
title(梯度图);
xlim([-2 2]);
ylim([-2 2]);nexttile
streamslice(X,Y,U,V);
title(密度梯度流线图);
xlim([-2 2]);
ylim([-2 2]);第七部分方程求解代数方程求解poly2sym使用系数向量表示输出结果为字符roots求多项式的根fzero(fun,x0) 函数找到x0附近函数fun(x)的零点%poly2sym 使用系数向量表示poly2sym输出结果为字符
clc;%%清除命令行窗口
clf;%%清除图形窗口
clear;%%清除工作区数据
close;%%清除打开的matlab文件
p1[1 2 3];
p2[2 3 1];
p3[1 1 2 3 4 5];
poly2sym(p1)
poly2sym(p2)
poly2sym(p3)%roots求解多项式的根
clc;%%清除命令行窗口
clf;%%清除图形窗口
clear;%%清除工作区数据
close;%%清除打开的matlab文件
p1[1 2 3];
p2[2 3 1];
p3[1 1 2 3 4 5];
r1roots(p1);
r2roots(p2);
r3roots(p3);%fzero函数找到x0附近函数fun(x)的零点
clc;%%清除命令行窗口
clf;%%清除图形窗口
clear;%%清除工作区数据
close;%%清除打开的matlab文件
myfun(x,a)cos(a*x);
a2;
fun(x)myfun(x,a);
x0fzero(fun,0.1);
xfzero(fun,0.1);常微分方程求解龙格-库塔方法(Runge-Kutta) 基本求解器选择 ode45 适用于大多数 ODE 问题一般情况下应作为您的首选求解器。但对于精 度要求更宽松或更严格的问题而言ode23、ode78、ode89 和 ode113 可能比 ode45 更加高效。 非刚性求解器 刚性求解器 ode45四阶、五阶R-K函数求解非线性微分方程的中阶方法 ode15s求解刚性微分方程和 DAE 变阶方法精度较低 ode23二阶、三阶R-K函数 求解非线性微分方程的低阶方法 ode23s求解刚性微分方程 低阶方法速度较快 ode78求解非刚性微分方程 - 高阶方法 ode23t求解中等难度的刚性问题 ode89求解非刚性微分方程 - 高阶方法 oder23tb求解难度较大的问题 ode113求解非刚性微分方程 - 变阶方法 例如利用R-K方法求解微分方程dy/dt2t,其中0t5,y(0)0。%绘图
clc;%%清除命令行窗口
clf;%%清除图形窗口
clear;%%清除工作区数据
close;%%清除打开的matlab文件
tspan[0 5];%积分区间定义
y00;%初始条件
[t,y]ode45((t,y)2*t,tspan,y0);%%%计算微分方程在指定积分区间的积分
plot(t,y,-o);
xlabel(t);
ylabel(y);
利用R-K方法求解微分方程,其中.当将方程转换成一阶常微分方程和%绘图
clc;%%清除命令行窗口
clf;%%清除图形窗口
clear;%%清除工作区数据
close;%%清除打开的matlab文件
tspan[0,20];
mu1;
y0[2 0];
[t,y]ode45((t,y)fun(t,y),tspan,y0);
plot(t,y(:,1),ro-,t,y(:,2),k:p,LineWidth,2);
function dydtfun(~,y)dydtzeros(2,1); dydt(1)y(2);dydt(2)(1-y(1).^2).*y(2)-y(1);
end数值积分数值积分官网int(f)求函数f的原函数 int(f,a,b)求函数f在[a b]上的定积分 (解析解) integral(f,a,b)求函数f在[a b]上的定积分 (数值解) integra2l(f,xmin,xmax,ymin,ymax)求函数f的二重积分 trapz求离散数据的数值积分 clc;%%清除命令行窗口
clf;%%清除图形窗口
clear;%%清除工作区数据
close;%%清除打开的matlab文件
%普通数值积分
fun1(x)exp(-x.^2).*log(x).^2;
q1integral(fun1,0,Inf)
%参数化函数数值积分
fun2 (x,c) 1./(x.^3-2*x-c);
q2 integral((x) fun2(x,5),0,2)
%积分限为奇异点的数值积分
fun3 (x)log(x);
q3 integral(fun3,0,1,RelTol,0,AbsTol,1e-12)
%复函数的围道积分
fun4 (z) 1./(2*z-1);
q4 integral(fun4,0,0,Waypoints,[11i,1-1i])第八部分数据拟合安装数据拟合器---Curve Fitting Toolbox polyfit(x,y,n) 用二乘法对已知数据x,y进行拟合以 求得n阶多项式系数向量 linefit(x,y) 最小二乘法直线拟合