Mathematica 中带条件的多元函数

Posted

技术标签:

【中文标题】Mathematica 中带条件的多元函数【英文标题】:Multivariate Functions with Conditions in Mathematica 【发布时间】:2013-01-12 09:13:10 【问题描述】:

我正在尝试定义一个二元函数,该函数根据是否满足条件来取值。我让它们适用于单变量案例,但我坚持使用双变量案例:

g[x_, y_] := 10 /; x < 10
g[x_, y_] := 20 /; (x >= 10 && y < 5)
g[x_, y_] := -5 /; (x >= 10 && y >= 5);

这个函数永远不会给我 -5 的值。

g[12,10] = 20?

【问题讨论】:

您的定义工作正常,马克的回答与您的没有什么不同。您之前可能对 g 有过定义,清除它会有所帮助。 是的,OP 对g 的定义工作正常。现在。奇怪的是,当我昨晚在新的 Mathematica 会话中尝试它时,定义返回 $Failed 【参考方案1】:

这对我有用:

Clear[g]
g[x_, y_] /; x < 10 := 10
g[x_, y_] /; x >= 10 \[And] y < 5 := 20
g[x_, y_] /; x >= 10 \[And] y >= 5 := -5

然后

In[73]:= g[12, 10]

Out[73]= -5

为什么这个版本有效,而您的版本无效我不确定。也许其他人会过来告诉我们

【讨论】:

谢谢马克。完美运行。

以上是关于Mathematica 中带条件的多元函数的主要内容,如果未能解决你的问题,请参考以下文章

求三道用mathematica求最值的代码~~急~~~!!!

如何用mathematica完成非线性函数的拟合

如何使用Mathematica制作隐函数的图像

函数中带有静态变量的竞争条件

一元函数和多元函数的极值得判断有啥区别与联系?

mathematica中minvalue语句能不能加参数约束条件?