声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1016|回复: 2

[综合讨论] 哪位能帮忙看看这个函数怎么画?

[复制链接]
发表于 2008-4-4 09:18 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
想绘制一个分段函数的三维图象,这个函数是关于y轴对称的
我不会画三维的,只好画了个2维的,其描述如下:
f=f2(-x)   (-0.0025<x<=R0)
f=f1(-x)   (-R0<x<-0.0013)
f=0         (-0.0013=<x<=0.0013)
f=f1(x)    (0.0013<x<R0)
f=f2(x)    (R0=<x=<0.0025)
(R0为一常数)
其三维图象就是把2维的绕y轴旋转所得
以下是我写的绘制2维图象的代码:
R0=0.00186725213937;
R1=0.0013;
R2=0.0025;
um=2.2075;
um1=(R2.^2-R0.^2)/2-R0.^2*log(R2/R0);
um2=R0.^2*log(R0/R1)-(R0.^2-R1.^2)/2;
um1;
um2;
r=0.0013:0.000001:R0;
u1=um*(R0.^2*log(r/R1)-(r.^2-R1.^2)/2)/(R1.^2+R2.^2-2*R0.^2)*4;
v=R0:0.000001:0.0025;
u2=um*((R2.^2-v.^2)/2-R0.^2*log(R2./v))/(R1.^2+R2.^2-2*R0.^2)*4;
s=-R0:0.000001:-0.0013;
u3=um*(R0.^2*log(-s/R1)-((-s).^2-R1.^2)/2)/(R1.^2+R2.^2-2*R0.^2)*4;
t=-0.0025:0.000001:-R0;
u4=um*((R2.^2-(-t).^2)/2-R0.^2*log(R2./(-t)))/(R1.^2+R2.^2-2*R0.^2)*4
plot(r,u1,'b',v,u2,'b',s,u3,'b',t,u4,'b');

哪位大侠能教教我怎么画这个函数的三维图形呗,谢谢了!
(谢谢sigma665昨天的回复,但我太笨了,没理解)

该函数的2维图象

该函数的2维图象
回复
分享到:

使用道具 举报

发表于 2008-4-4 09:44 | 显示全部楼层
你的是旋转面
首先要知道方程才行
已知某段曲线饶某轴旋转得到方程查看高数

matlab里有没有直接的命令将2维曲线旋转得到曲面我就不知道了
 楼主| 发表于 2008-4-4 10:16 | 显示全部楼层

回复 2楼 的帖子

先谢谢你啊!
方程我在2维图象的代码里已经写了:
u1=------------------------
u2=------------------------
u3=------------------------
u4=------------------------
其实u1和u2就够了,u3和u4是其绕y轴旋转所得的
我一开始的思路是能不能像2维图象那样按照分段函数画
在2维里可以与用x=-1:0.5:0,y=0:0.5:1来区分不同函数解析式的作用域
可在3维图象里不知怎样用meshgrid来完成相同的功能,而且我这个函数
在3维空间是按照环形区域(f=0那部分函数作用域为原点为圆心,0.0013为半径的园)来划分分段函数的定义域的。
也想能不能用cylinder函数来做,但看了help没太弄懂,也没画出来
向大家求助了!
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-14 02:47 , Processed in 0.067104 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表