gpt4 book ai didi

wolfram-mathematica - 在Mathematica中约束内置函数输出的最简单方法是什么?说让罪只返回奇数?

转载 作者:行者123 更新时间:2023-12-04 04:50:32 25 4
gpt4 key购买 nike

例如,对于Mathematica中的内置函数,f最初是f [1]给出{1,2,3},但我想让Mathematica仅给出{1,3}。需要一种用于重新写入 f的简单方法。我不想定义一个新函数或完全重写f或只处理原始f的输出。我想重提f。

谢谢。 :)

最佳答案

您可以为此使用the Villegas-Gayley trick

对于Sin函数:

Unprotect[Sin];
Sin[args___]/;!TrueQ[$insideSin]:=
Block[{$insideSin=True,result},
If[OddQ[result=Sin[args]],result]
];
Protect[Sin];
{Sin[Pi],Sin[Pi/2]}

==> {Null,1}

关于wolfram-mathematica - 在Mathematica中约束内置函数输出的最简单方法是什么?说让罪只返回奇数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6073396/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com