MATLAB绘制三维函数 |
目标函数:
\[ \begin{align} & z=\\ & +2.12*{{(y+10)}^{2}}/(x+y+10) \\ & +2.12*(y+10)/(x+y+10) \\ & +1.90*{{(x+10)}^{2}}/(x+y+10) \\ & +1.90*(x+10)/(x+y+10) \\ & -1.84*y-2.54*x \end{align}
\]
x1,x2取值范围:
\[\begin{align}1.5{{x}_{1}}-10\le {{x}_{2}}\le 2.17{{x}_{1}}-10\end{align}\]
运行代码:
- x1 = 0:0.1:100;
- x2 = linspace(0,100,100);
- [x1,x2] = meshgrid(x1,x2);
- z = 2.12*(x2+10).^2./(x1+x2+10)+ 2.12*(x2+10)./(x1+x2+10)+ ...
- 1.90*(x1+10).^2./(x1+x2+10)+ 1.90*(x1+10)./(x1+x2+10)-...
- 1.84*x2-2.54*x1;
- z(x2>2.17*x1-10 & x2<1.5*x1-10)= NaN;
- figure(1);
- mesh(x1,x2,z);