24小时热门版块排行榜    

查看: 1294  |  回复: 11
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

柯柯柯南

新虫 (初入文坛)

[求助] 已知一个复杂的方程式,如何得到三维图 已有1人参与

求助各位大神,已知这一方程式,可否绘制出z随x,y变化的三维图。。能否指点一二,给我发一下这个代码呢?我试了好多都出错。跪谢各位大神。
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

guo_zy_123

木虫 (正式写手)

引用回帖:
8楼: Originally posted by 柯柯柯南 at 2016-03-10 09:23:18
大神,按照你说的做法,试了一下。
提示错误
Error using plot3
Conversion to double from sym is not possible.

Error in Untitled (line 18)
plot3(x,y,z_out(2),'b.')
能帮我再看看是什么情况吗?是不 ...

在plot3的第一行加 break point
也就是算完了  z_out = roots([z3,z2,z2,z1]);这行
点开你的workspace看下z_out是不是有复数了
老古董
10楼2016-03-10 09:39:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 12 个回答

guo_zy_123

木虫 (正式写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
柯柯柯南: 金币+10, ★★★很有帮助 2016-03-05 13:46:00
CODE:
% 方程是个z的3元一次方程
% 分别结算各个系数

...                                 % d f G l H g 提前给好

z = [];
for x = 0:0.001:1
    for y = 0:0.01:1                %数据范围自己写吧
        
z3 = 1;                             %3次系数
z2 = -(d+f*x^2+(l*x^2)/2);          %2次系数
z1 = ...                            %1次系数,一坨懒得输
z0 = ...                            %常数项系数,自己输吧

z_out = roots([z3,z2,z2,z1]);

plot3(x,y,z_out(1),'ro')                %什么鬼,要画3d的,要是有个复数解你就。。。。
plot3(x,y,z_out(2),'b.')
plot3(x,y,z_out(3),'c.')

hold on
    end
end

老古董
2楼2016-02-26 19:05:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Mr__Right

专家顾问 (著名写手)

引用回帖:
2楼: Originally posted by guo_zy_123 at 2016-02-26 19:05:07
% 方程是个z的3元一次方程
% 分别结算各个系数

...                                 % d f G l H g 提前给好

z = [];
for x = 0:0.001:1
    for y = 0:0.01:1                %数据范围自己写吧
       ...

这个Matlab只能用isosurface

mathematica用ContourPlot3D

而且其中的除x,y,z之外的符号必须改成数值。

这样问的问题,看不出解决问题的诚意。
文章乃身外之物,要多考虑编辑、审稿人和读者的感受。
3楼2016-02-28 19:53:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

guo_zy_123

木虫 (正式写手)

引用回帖:
3楼: Originally posted by Mr__Right at 2016-02-28 19:53:12
这个Matlab只能用isosurface

mathematica用ContourPlot3D

而且其中的除x,y,z之外的符号必须改成数值。

这样问的问题,看不出解决问题的诚意。...

呵呵哒

发自小木虫IOS客户端
老古董
4楼2016-02-29 08:43:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见