mathematica画三维曲面
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mathematica画三维曲面相关的知识,希望对你有一定的参考价值。
mathematica5如何画二次曲面呀???说详细点
还是我自己回答好了,用ContourPLot3D[f[x,y,z]==a,x,x1,x2,y,y1,y2,z,z1,z2]就可以绘制三维隐函数了。如ContourPlot3D[
x^2 + y^2 + z^2 == 1, x, -1, 1, y, -1, 1, z, -1, 1]可以画一个球
Plot3D[f(x,y),x,x1,x2,y,y1,y2],其中f(x,y)为二元函数,x1、x2和y1、y2分别为x,y两个变量的上下限
例如你想在x[-2,2]和y[-2,2]这个区间内画x^2+y^2这个曲面
那么就应该为:
Plot3D[x^2+y^2,x,-2,2,y,-2,2]
注意单词大小写,mathematica对语法要求很严格的
Plot3D还有很多附加选项,例如Mesh,如果想把上面三维图像的网格去除掉,可以这样写
Plot3D[x^2+y^2,x,-2,2,y,-2,2,Mesh -> None]
建议楼主使用Mathematica 6以上的版本,5版本实在比较老,并多看看Documentation Center ,很有帮助的。
如果不喜欢Documentation Center英文的界面可以上网看看Mathematica的资料中心,最近汉化的很不错的:
http://reference.wolfram.com/mathematica/guide/Mathematica.html 参考技术B 我经常用的是以下函数:
Plot3D:用于显式曲线:z=f(x,y)
CountorPlot3D:用于隐函数的绘制
ParametricPlot3D:用于绘制参数曲线
具体用法的话参照Mathematica的帮助文档,其实他本身的文档就介绍得很详细了,不需要看其他书籍,不过这东西主要还是自己折腾,说不了太多,哈哈 参考技术C matlab很容易,我以前用mathematica,现在完全转到matlab了,建议用matlab,随便一个网上教程上都有
常见的使用水平集函数的零水平集表示的曲面汇总(3D)(MATLAB 画三维图)
常见的使用水平集函数的零水平集表示的曲面汇总(3D)
文章目录
感谢周同学和张师兄的公式提供。
Donut甜甜圈
水平集函数:
ϕ
(
x
,
y
,
z
)
=
(
x
2
+
y
2
−
0.6
)
2
+
z
2
−
0.09
\\phi(x, y, z)=\\left(\\sqrt{x^{2}+y^{2}}-0.6\\right)^{2}+z^{2}-0.09
ϕ(x,y,z)=(x2+y2−0.6)2+z2−0.09
c 代码:
sqrt(pow(sqrt(x*x+y*y)-1.0,2.0)+z*z)-3.0/5.0;
Atom原子
水平集函数:
ϕ
(
x
,
y
,
z
)
=
(
(
2.5
(
x
−
0.0
)
)
2
+
(
4.2
(
y
−
0.0
)
)
2
+
(
2.5
(
z
−
0.0
)
)
2
+
0.9
)
2
−
64
(
y
−
0.5
)
2
−
1.3
\\phi(x, y, z)=\\left((2.5(x-0.0))^{2}+(4.2(y-0.0))^{2}+(2.5(z-0.0))^{2}+0.9\\right)^{2}-64(y-0.5)^{2}-1.3
ϕ(x,y,z)=((2.5(x−0.0))2+(4.2(y−0.0))2+(2.5(z−0.0))2+0.9)2−64(y−0.5)2−1.3
c 代码:
pow((x*x)*(2.5E+1/4.0)+(y*y)*(4.41E+2/2.5E+1)+(z*z)*(2.5E+1/4.0)+9.0/1.0E+1,2.0)-(y*y)*6.4E+1-1.3E+1/1.0E+1;
Popcorn爆米花
水平集函数:
ϕ
(
x
,
y
,
z
)
=
x
2
+
y
2
+
z
2
−
r
0
−
∑
k
=
0
11
A
e
−
(
(
x
−
x
k
)
2
+
(
y
−
y
k
)
2
+
(
z
−
z
k
)
2
)
/
σ
2
\\phi(x, y, z)=\\sqrt{x^{2}+y^{2}+z^{2}}-r_{0}-\\sum_{k=0}^{11} A e^{-\\left(\\left(x-x_{k}\\right)^{2}+\\left(y-y_{k}\\right)^{2}+\\left(z-z_{k}\\right)^{2}\\right) / \\sigma^{2}}
ϕ(x,y,z)=x2+y2+z2−r0−k=0∑11Ae−((x−xk)2+(y−yk)2+(z−zk)2)/σ2
其中,
r 0 = 0.6 , A = 2 , σ = 0.2 r_{0}=0.6, A=2, \\sigma=0.2 r0=0.6,A=2,σ=0.2
( x k , y k , z k ) = r 0 5 ( 2 cos ( 2 k π 5 ) , 2 sin ( 2 k π 5 ) , 1 ) , 0 ≤ k ≤ 1 ( x k , y k , z k ) = r 0 5 ( 2 cos ( ( 2 ( k − 5 ) − 1 ) π 5 ) , 2 sin ( ( 2 ( k − 5 ) − 1 ) π 5 ) , − 1 ) , 5 ≤ k ≤ 9 ( x 10 , y 10 , z 10 ) = ( 0 , 0 , r 0 ) ( x 11 , y 11 , z 11 ) = ( 0 , 0 , − r 0 ) \\begin{aligned} &\\left(x_{k}, y_{k}, z_{k}\\right)=\\frac{r_{0}}{\\sqrt{5}}\\left(2 \\cos \\left(\\frac{2 k \\pi}{5}\\right), 2 \\sin \\left(\\frac{2 k \\pi}{5}\\right), 1\\right), 0 \\leq k \\leq 1 \\\\ &\\left(x_{k}, y_{k}, z_{k}\\right)=\\frac{r_{0}}{\\sqrt{5}}\\left(2 \\cos \\left(\\frac{(2(k-5)-1) \\pi}{5}\\right), 2 \\sin \\left(\\frac{(2(k-5)-1) \\pi}{5}\\right),-1\\right), 5 \\leq k \\leq 9 \\\\ &\\left(x_{10}, y_{10}, z_{10}\\right)=\\left(0,0, r_{0}\\right) \\\\ &\\left(x_{11}, y_{11}, z_{11}\\right)=\\left(0,0,-r_{0}\\right) \\end{aligned} (xk,yk,zk)=5r0(2cos(52kπ),2sin(52kπ),1),0≤k≤1(xk,yk,zk)=5r0(2cos(5(2(k−5)−1)π),2sin(5(2(k−5)−1)π),−1),5≤k≤9(x我用mathematica画三维图像,为啥输出结果是这个呢?
如何在Mathematica 软件中画出一个三维向量的3D 图像,是否用这个函数ListVectorFieldPlot3D ,怎么画的
origin三维图数据过少,曲面不圆滑,如何处理可以使曲面圆滑。拟合、差值等,不能改变原来的走势