欢迎关注,本专栏主要更新MATLAB仿真、界面、基础编程、画图、算法、矩阵处理等操作,拥有丰富的实例练习代码,欢迎订阅该专栏!(等该专栏建设成熟后将开始收费,快快上车吧~~)
【MATLAB编程实战】【例题实战】绘制曲面、曲线,求解偏导,计算极值点,二重积分,曲线积分,收敛性,麦克劳林展开式
绘制Z = sqrt(x.2+y.2)的曲面
代码:
clc;
clear;
x = -5:0.1:5;
y = x;
[X,Y] = meshgrid(x,y);
Z = sqrt(X.^2+Y.^2);
mesh(X,Y,Z)
title("Z = sqrt(x.^2+y.^2)");
结果:
2.绘制曲线
代码:
clc;
clear;
a = 1;
x = -5:0.1:5;
y = x;
z = sqrt(a-x.^2-y.^2);
plot3(x,y,z);
%修改a的值;
hold on;
a = 2;
z2 = sqrt(a-x.^2-y.^2);
plot3(x,y,z2)
a = 3;
z3 = sqrt(a-x.^2-y.^2);
plot3(x,y,z3)
legend("a=1","a=2","a=3")
结果:
3.求解函数偏导
代码:
clc;
clear;
syms x y z
f = x.^2+2*y.^2+y*z;
dfdx = diff(f,x)
dfdy = diff(f,y)
结果:
4.求函数极值点
代码:
clc;
clear;
syms x y
z = x^4 - 8*x*y + 2*y^2 -3;
dzdx = diff(z,x)%4*x^3 - 8*y
dzdy = diff(z,y)%4*y - 8*x
[x1,y1] =solve(4*x^3-8*y==0,-8*x+4*y==0,x,y)
%得到驻点(-2,-4),(0,0),(2,4)
A = diff(z,x,2)%12*x^2
B = diff(diff(z,x),y)%-8
C = diff(z,y,2)%4
%根据判别式法知道(-4,-2),(2,4)是极小值
结果:
5.计算二重积分
代码:
clc;
clear;
syms x y
I = int(int(x^2+y^2,x,-2,2),y,-2,2) - int(int(x^2+y^2,x,-1,1),y,-1,1)
结果:
6.曲线积分
代码:
clc;
clear;
syms t a;
x = a*cos(t);
y = a*sin(t);
F = [x*y^2-4*y^3,x^2*y+sin(y)]
I=path_integral(F,[x,y],t,2*pi,0)
function I = path_integral(F,vars,t,a,b)
if length(F)==1
I = int(F*sqrt(sum(diff(vars,t).^2)),t,a,b);
else
F = F(:).';
vars = vars(:);
I = int(F*diff(vars,t),t,a,b);
end
end
结果:
7.函数收敛性
代码:
clc;
clear;
syms n;
s = symsum(1/n,n,1,inf)%不收敛
8.sinx麦克劳林展开式
代码:
clc;
clear;
syms x
f = sin(x)
T = taylor(f,x,0)%展开5阶
T = taylor(f,x,11)%展开10阶
结果: