(一)基本函数

函数作用举栗子
clear清除工作区中的所有变量
clc清除命令行中的所有代码
help 函数名 或 doc 函数名查找函数帮助
syms定义符号变量syms x y ;
sym('f')定义符号表达式sym('x*y^2')
pi圆周率(matlab区分大小写)π
vpa(x,k)x的数值,保留k位有效数字x=vpa(sin(1/3), 2) ⇨x=0.33
real(x)求复数x的实部x = real(1+2i) ⇨ x = 1
eval()字符串转数值x = eval('5') ⇨ x = 5
sqrt()开根号x = sqrt(4) ⇨ x = 2
exp()以自然常数e为底的指数函数x = exp(2) ⇨ y = e²
log()以e为底的对数函数x = log(exp(1)) ⇨ x = 1
log10()以10为底的对数函数x = log(10) ⇨ x = 1
abs()取绝对值x = abs(-1) ⇨ x = 1
mod(m,n)m对n取余,返回m/n的余数x = mod(3,2) ⇨ x = 1 补充说明:“clear
变量名”可清除工作区中的指定变量(如果多个变量,用空格隔开) % 例1 syms x; x1=1.5; % x1变为double型 % 例2 x1=1.5;
% x1变为double型 % 例3 syms x y; f3 = x*y^2; % 例4 f4=sym('x*y^2') % 例3<=>例4,作用相同 %
例5 f5=sym(A) % 将非符号对象(如,数字,表达式,变量等)A转换为符号对象,并存储在符号变量f5中
(二)三角函数相关

函数作用备注
sin()、cos()、tan()、cot()三角函数x=sin(deg2rad(30)) ⇨x=0.5
rad2deg()、deg2rad()弧度转角度、角度转弧度x=deg2rad(30) ⇨ x=0.5236
asin()、acos()、
atan()、acot()反三角函数,结果为弧度值x = asin(0.5) ⇨ x = 0.5236
asind()、acosd()、atand()、acotd()反三角函数,结果为角度值x = asind(0.5) ⇨ x = 30.0° 补充说明
atan(a/b):根据正切值a/b求出对应的角度,返回角度范围是[-π/2, π/2]
atan2(a,b):根据正切值a/b和点 (b, a) 所在的象限求出角度,返回角度范围是[-π, π] % 例子 theta =
rad2deg(atan(sin(deg2rad(45))/cos(deg2rad(45)))) % 结果 theta = 45 theta =
rad2deg(atan2(sin(deg2rad(45)),cos(deg2rad(45)))) % 结果 theta = 45 theta =
rad2deg(atan(sin(deg2rad(135))/cos(deg2rad(135)))) % 结果 theta = -45.0000 theta
= rad2deg(atan2(sin(deg2rad(135)),cos(deg2rad(135)))) % 结果 theta = 135
(三)向量、矩阵操作相关

函数作用备注
size(A)返回矩阵的行数和列数
size(C,1) / size(C,2)返回矩阵的行数 / 列数
length(A) 或 max(size(A))返回长度最大的维度的长度
numel(A)返回矩阵元素的总个数
sum(A)返回矩阵所有元素的和x = sum([1,2]) ⇨ x = 3
inv(A)返回矩阵A的逆
ndims(A)返回矩阵A的维度单个数值、向量和二维矩阵返回值均为2
iscolumn(x) / isrow(x)判断是否为列向量 / 行向量
isvector() / ismatrix()判断是否为向量 / 矩阵
isempty(x) / isscalar()判断是否为空向量 /单个数值
dot(a, b)向量a点乘b,点积
cross(a, b)向量a叉乘b,叉乘
repmat(A,m,n)通过将A复制m行n列,返回m*n的矩阵 A = [1] U = repmat(A,2,2) % 结果 U = [1 1 1 1]
(四)解方程、符号表达式相关

函数作用备注
simplify(f)化简公式f
collect(f)合并同类项
expand(f)展开公式
horner(f)将乘法嵌套数值计算性能较好
factor(f)因式分解
pretty(f)相对直观地显示公式复杂的公式不行
[n,d] = numden(f)通分,返回分母n,分子d通分前会先自动化简表达式
* 解三角函数方程 % 解三角函数方程 clear;clc; syms theta1 x=0;y=670;L1=260;L2=260;L3=150; %
方法一:复杂 eqn = 2*x*(L1+L3)*cos(theta1)+2*y*(L1+L3)*sin(theta1) ==
x^2+y^2+(L1+L3)^2-L2^2; theta1 = solve(eqn,theta1); theta1 = real(theta1) %
方法二:推荐,简单 eqn = 2*x*(L1+L3)*cos(theta1)+2*y*(L1+L3)*sin(theta1) ==
x^2+y^2+(L1+L3)^2-L2^2; theta1 = solve(eqn,theta1,'Real',true)
(五)画图相关
用matlab的plot()/polarplot()画图
figure()创建画布
clf()清空画布的内容
set()设置图形对象属性,如画布名字、在屏幕上的位置等
plot(X,Y)创建 Y 中数据对 X 中对应值的二维线图
plot3()绘制三维图像
xlabel()、ylabel()横轴、纵轴标签
xlim()、ylim()横轴、纵轴范围
text()标注图线名称
title()添加图题
hold on / hold off不刷新画布(在一张画布画多张图) / 刷新画布
legend()添加图例
grid on / grid off打开 / 关闭网格线
grid minor打开最小网格线
box on / box off打开 / 关闭 右、上边框线
save()保存工作区变量
saveas() / imwrite()保存图片 % 例子 clc;clear;close all; x=0:0.1:pi; y=sin(x);
z=cos(x); h1 = figure(1); % 创建画布,画布编号为1 set(h1,'name','图1'); set(h1,'pos',[350
250 850 340]); % 线宽、数据点标记形状、标记填充颜色、标记框线颜色、标记大小 p1 =
plot(x,y,x,z,'linewidth',2,'Marker','s','MarkerFaceColor','w','MarkerEdgeColor','g','MarkerSize',10);
xlabel('X');ylabel('Y'); xlim([0,pi]);ylim([-2,2]);
set(get(gca,'XLabel'),'FontSize',8); % 设置X轴数字大小 title('足端轨迹'); text(pi,0,'正弦');
text(pi/2,0,'余弦'); [a,b] = max(y); text(x(b),a,'正弦函数值最大点'); hold on; p2 =
plot(x,y+z,'r','linewidth',2,'Marker','s','MarkerFaceColor','w'); % 线颜色、线形
legend('sin x','cos
x','Fontsize',12,'Location','southeast','fontname','Times'); legend('boxoff');
% 关闭图例外框 grid on; set(gca,'GridLineStyle',':','GridColor','r','GridAlpha',1); %
':':网格线虚线;'-':网格线实线 grid minor; box off; save('a.mat','a','b')
saveas(h1,'三角函数.jpg'); % 保存图片 % clf(1); % 清空画布的内容

技术
今日推荐
下载桌面版
GitHub
百度网盘(提取码:draw)
Gitee
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:766591547
关注微信