公告:1)网站程序升级:Q2A升级到1.8.6,Wordpress升级到5.7.2
2)修复了头像加载慢与提交问题反应慢等问题
2021-06-16

欢迎来到 Mathematica 问答社区

提问时请贴上文本代码

语法高亮:在编辑器中点击

被禁止的话题:广告破解

请阅读:《提问的智慧》

备用域名:mma.ooo

支持LaTex数学公式
行内公式标识符:\$ 或“$\backslash ($”+“$\backslash )$”,
行间公式标识符:\$\$ 或 “$\backslash [$”+“$\backslash ]$”

社区建议QQ群:365716997

分类

0 投票
437 浏览

用ContourPlot3D绘制1/(2 + Sin[x]) + 1/(2 + Sin[2 y])的等高线图,但是当1/(2 + Sin[x]) + 1/(2 + Sin[2 y])==2时,等高线应该是一些点列,但是ContourPlot3D无法绘制出这些点,想知道怎么才能用ContourPlot3D绘出这些点...

ClearAll["Global`*"]
Solve[1/(2 + Sin[x]) + 1/(2 + Sin[2 y]) == 2, {x, y}, Reals]
(*事实上x只能取-Pi/2+2k Pi,y只能取-Pi/4+k Pi*)
Solve[{1/(2 + Sin[x]) + 1/(2 + Sin[2 y]) == 2, 0 < x < 10 Pi, 
0 < y < 10 Pi}, {x, y}, Reals];
FindSequenceFunction[x /. % // Union, k] // Expand
FindSequenceFunction[y /. %% // Union, k] // Expand
ContourPlot3D[
1/(2 + Sin[x]) + 1/(2 + Sin[2 y]) - 2 == 0, {x, 0, 10 Pi}, {y, 0, 
Pi}, {z, 0, 6}, MeshStyle -> True, Boxed -> True, 
ContourStyle -> {Opacity[0.6], Brown}, BoundaryStyle -> None]

 

分类:绘图 | 用户: mma-2-2-2 (1.3k 分)
修改于 用户:mma-2-2-2
为什么非要用ContourPlot3D?直接NSolve不行吗
因为有时并不知道等式会的解会退化为一些点

1个回答

+1 投票

ContourPlot3D貌似对于点线之类的0面积的东西,是无法绘出图像的。

放松一下方程吧,比如把“==0”改成“==-0.1”。

ContourPlot3D[
 1/(2 + Sin[x]) + 1/(2 + Sin[2 y]) - 2 == -0.1, {x, 0, 10 Pi}, {y, 0, 
  Pi}, {z, 0, 6}]

 

用户: 野鹤 (5.0k 分)
...