zoukankan      html  css  js  c++  java
  • MATLAB三维作图——隐函数

    MATLAB三维作图——隐函数

    作者:凯鲁嘎吉 - 博客园
    http://www.cnblogs.com/kailugaji/

    对于三维隐函数,没有显式表达式,无法通过Matlab现成的3-D画图函数 surf mesh画图。可以通过三种办法解决:

    1. Mupad符号引擎里提供了三维隐函数画图函数

    matlab里开启Mupad的方法是:在command window 里输入 mupad 来启动一个notebook

     

    在启动的notebook里再输入如下代码:

    plot(plot::Implicit3d(((x^2/4)+(y^2/9)+(z^2/1))^2=2*x, x = -0.5..4, y = -4..4, z = -1.5..1.5), Scaling = Constrained)

    xoy面看:

     

    yoz面看:

     

    xoy面看:

     

    ((x^2/4)+(y^2/9)+(z^2/1))^2=2*x的图像:

     

    2

    plot(plot::Implicit3d((x^2 + (9/4)*y^2 + z^2 - 1)^3 - x^2*z^3 - (9/80)*y^2*z^3, x = -1.5..1.5, y = -1.5..1.5, z = -1.5..1.5), Scaling = Constrained)

     

    2.再给一种只调用matlab的方法

    figure
    [x,y,z] = meshgrid(-0.5:0.05:4,-4:0.05:4,-1.5:0.05:1.5);
    v =((x.^2/4)+(y.^2/9)+(z.^2/1)).^2-2.*x;
    p = patch(isosurface(x,y,z,v,0),'FaceColor','r','EdgeColor','none');
    isonormals(x,y,z,v,p)
    view(3)
    camlight
    lighting gouraud
    axis equal tight
    grid on

     

    3.先求解z,在画图

    >> z=solve('((x^2/4)+(y^2/9)+(z^2/1))^2-2*x','z')
    ezmesh(z(1))

     

    作者:凯鲁嘎吉
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文链接,否则保留追究法律责任的权利。
  • 相关阅读:
    纪中培训 8月8日 day3 考试
    【置顶】博客搬迁
    图论②——??? (poj 3662)
    图论①——??? (2750: [HAOI2012]Road)
    树形dp①
    区间dp②
    区间dp①
    线性dp②
    字符串算法①——kmp
    图论——最小生成树①
  • 原文地址:https://www.cnblogs.com/kailugaji/p/6831451.html
Copyright © 2011-2022 走看看