用MATLAB求这些偏微分 急急急

用MATLAB求这些偏微分急急急急急急急
2024-11-25 14:40:55
推荐回答(1个)
回答1:

用MATLAB求定义函数L(x1,x2,lambda)的偏微分,可以这样求。

dLdx1=diff(L,x1)   %对x1求一阶偏微分

dLdx2=diff(L,x2)   %对x2求一阶偏微分

dLdlambda=diff(L,lambda)   %对λ求一阶偏微分

实现代码为

syms x1 x2 lambda

L=pi/3*(864-18*x2^2+x2^3+12*x1*x2-x1*x2^2)-lambda*(144*pi-12*pi*6*x2+pi*sqrt((12*x2-x2^2+x1^2)*(12*x2-x2^2))-450);

dLdx1=diff(L,x1)

dLdx2=diff(L,x2)

dLdlambda=diff(L,lambda)

s=vpasolve(dLdx1,dLdx2,dLdlambda);  %求x1、x2、λ值

lambda=s.lambda    %λ 值

x1=s.x1  %x1值

x2=s.x2  %x2值

运行结果

lambda =1.799208272236779626364205689662

x1 =115.00843115249022790078610975691

x2 =8.6324015741235818360256060450589