I have Quadric Surface equation
我知道A、B、C...
如何在 matlab 中绘制方程?
最好的选择是生成函数的 3D 等高线图,其中函数值为 0 处具有单个等高线。要以合理的精度完成此操作,请在多个点 x、y、z 处计算函数 F,如下所示:
gv = linspace(-30,30,50); % adjust for appropriate domain
[xx yy zz]=meshgrid(gv, gv, gv);
F = A*xx.*xx + B*yy.*yy + C*zz.*zz+ ... etc
figure
isosurface(xx, yy, zz, F, 0)
这样做的原因是你的函数通常是多值的 - 也就是说,对于给定的 X 和 Y 值,Z 可能有两个可能的答案。通过这样做,你可以有效地绕过这个问题 - 指导 matlab将曲面放置在函数为零的任何位置。
请注意,我给出了一个任意向量gv
对于网格 - 即计算函数的点。为了获得准确且视觉上令人愉悦的结果,您可能需要在可能的解决方案范围内的每个维度中大约 50 个点(这在三个维度中可能有所不同);
例如,与
F = xx.^2 + 2*yy.^2 + 0.5*zz.^2 + .4*xx.*yy + .5*xx.*zz + .6*yy.*zz + 7*xx + 8*yy + 9*zz - 100;
你得到下图:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)