早教吧 育儿知识 作业答案 考试题库 百科 知识分享

这个Mathematica三维图为什么画不出来w=1403L=150a=650w1=w/2//Nr=32.2F(g)=-w1{Erf[(π^(1/2)/r)]-Erf[(π^(1/2)/r)(g-a)]}F(y)=-w1{Erf[(π^(1/2)/r)y]-Erf[(π^(1/2)/r)(y-L)]}F(g,y)=F(g)F(y)Plot3D[%,{g,-2000,20

题目详情
这个Mathematica三维图为什么画不出来
w = 1403
L = 150
a = 650
w1 = w/2 // N
r = 32.2
F(g_) = -w1{Erf[(π^(1/2)/r) ] - Erf[(π^(1/2)/r)( g - a)]}
F(y_) = -w1{Erf[(π^(1/2)/r) y] - Erf[(π^(1/2)/r)( y - L)]}
F(g,y) = F(g_) F(y_)
Plot3D[%,{g,-2000,2000},{y,-2000,2000} ]
▼优质解答
答案和解析
你的函数定义方法完全是错的……同学,基本语法要懂啊.
函数的自变量要使用方括号,圆括号在Mathematica里只表示运算的先后次序,对于你这种简单情形,简单地说,定义函数的时候,只有式子左边才要使用一条下划线(它实际上表示模式的匹配,具体你可以看看帮助);最那啥的是,你怎么定义函数全是用个大F啊?你该不会是觉得自变量不一样就不要紧了吧?形如“g_”的东西,上面说了,代表了一种模式,也就是说,它是什么字母,都是一样的;顺便使用大写字母定义函数是很不明智的.总之,你要这么改:
w = 1403
L = 150
a = 650
w1 = w/2 // N
r = 32.2
f[g_] = -w1 {Erf[(\[Pi]^(1/2)/r)] - Erf[(\[Pi]^(1/2)/r) (g - a)]}
i[y_] = -w1 {Erf[(\[Pi]^(1/2)/r) y] - Erf[(\[Pi]^(1/2)/r) (y - L)]}
h[g_, y_] = f[g] i[y]
Plot3D[%, {g, -200, 200}, {y, -200, 200}, PlotRange -> All]