Matlab 版 (精华区)
发信人: ramjet (拖拖拉拉), 信区: Matlab
标 题: [合集]求助,k1*x+k2*y+k3*z=0,怎么画图表示?
发信站: 哈工大紫丁香 (2001年08月14日18:08:08 星期二), 站内信件
────────────────────────────────────────
cxs (冬日暖阳) 于 2001年08月10日15:35:55 星期五 说道:
用哪个命令?
我的表达式:
670.102*Zp*Xp^2-147.627*Xp^2-773.694*Zp^2*Xp+
403.245*Zp*Xp*Yp
+3226.63*Zp*Xp-731.408*Yp*Xp+1280.90*Xp-
31.3506*Zp^3+643.470*Zp^2*Yp+925.565*Zp^2-
3743.82*Zp-710.993*Zp*Yp-693.073*Zp*Yp^2+8374.19+
1620.34*Yp-722.143*Yp^2=0。
怎么画呀?谢谢
────────────────────────────────────────
Christy (苦恼@杜撰论文的人生) 于 2001年08月11日01:08:09 星期六 说道:
一个比较直观但幼稚的方法。
figure;
for xp=a:s1:b
for yp=c:s2:d
for zp=e:s3:f
if abs(F(xp,yp,zp)-tol)==0
plot3(xp,yp,zp);
hold on;
end
end
end
end
%where a,b,c,d,e and f are the lower and upper limits you need
%for three variables; s1,s2 and s3 are the step lenghts,
%respectively. tol is a tolerance and F(.) is your function.
呵呵,太幼稚了,偶实在是记不起更好的方法。你或许可以在
SIMULINK下试试。
────────────────────────────────────────
ramjet (>>>))))))))))))(o>) 于 2001年08月11日06:49:20 星期六 说道:
可以把这个方程写成z(x,y)函数的形式,然后参考mesh命令的例子。
────────────────────────────────────────
Christy (苦恼@杜撰论文的人生) 于 2001年08月11日08:48:22 星期六 说道:
能改写就特容易了,可是大多数非线形方程无法改写,比如这个。
当然,你要是用一定的坐标变换也可以,不过原函数的特性就
很难再看出来了。
────────────────────────────────────────
bage (欧是铁八哥) 于 2001年08月11日09:00:49 星期六 说道:
ezplot()只能处理二元函数,ezplot3()能处理3元函数,
但是只能处理参数方程,hehe......
看来这个问题没有单个命令能够解决的。
────────────────────────────────────────
Christy (苦恼@杜撰论文的人生) 于 2001年08月11日09:27:02 星期六 说道:
所以还是用偶的笨办法吧,hoho。。。
────────────────────────────────────────
bage (欧是铁八哥) 于 2001年08月11日10:39:33 星期六 说道:
哪个方法太慢了,三重循环,机器配置不好的估计能弄死机,hoho......
把循环改成向量吧,
────────────────────────────────────────
Christy (苦恼@杜撰论文的人生) 于 2001年08月11日21:55:59 星期六 说道:
没事,偶用P166试了.不过用向量是好主意. Clever!
────────────────────────────────────────
bage (欧是铁八哥) 于 2001年08月12日07:12:29 星期天 说道:
厉害,我记得当时我做毕业设计的时候,要做数值计算
本来要算50K个数据,结果用p166挂了一个晚上第二天
一看才算了800个,当时我就ft了。
────────────────────────────────────────
Christy (苦恼@杜撰论文的人生) 于 2001年08月12日08:23:49 星期天 说道:
哈哈哈,后来呢?
────────────────────────────────────────
bage (欧是铁八哥) 于 2001年08月12日10:41:33 星期天 说道:
后来就强行推出,修改了一些地方,数据采集稀疏一些,
减少到20K,才勉勉强强算了出来,hoho
────────────────────────────────────────
bage (欧是铁八哥) 于 2001年08月12日10:57:50 星期天 说道:
循环改成向量最简单的例子
for n=1:10
x(n)=sin(n*pi/10)
end
可以改为
n=1:10;
x=sin(n*pi/10);
数小的时候看不出来什么优点,但是如果把10换乘10^5
肯定很明显。
────────────────────────────────────────
Christy (苦恼@杜撰论文的人生) 于 2001年08月13日05:16:23 星期一 说道:
nod.//
尤其象偶要做二维图象变换的算法,还不是滤波器.
其实偶以前也ft过,经历和你差不多.减少数据点
之后差一点把工作点给漏了.
────────────────────────────────────────
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:2.409毫秒