gpt4 book ai didi

maxima - wxMaxima:如何定义函数的反函数?

转载 作者:行者123 更新时间:2023-12-02 19:01:55 24 4
gpt4 key购买 nike

我知道我们可以使用 solve e.g.

找到函数的反函数
f(x):= a*x+b$
[invf]:solve(f=f(x),x);

但是,我一直无法弄清楚如何在新函数的定义中使用它。我尝试了一些事情,例如:

invF(f):=rhs(invf);

rhs(invf) 中的 f 未被识别为函数 invF(f) 的参数。有什么方法可以定义逆,还是可以简单地使用这个表达式并使用类似 subst 的东西来计算它?

最佳答案

:= 的右侧未被求值(甚至未被简化),因此函数体中的任何类似 rhs(invf) 的内容实际上都没有计算结果直到函数被调用。这里需要的是确保在构造函数时将结果粘贴到函数体中。

至少有两种方法可以做到这一点。更通用的方法是用define而不是:=来定义函数。然后在定义函数时评估主体。例如。 定义(invF(x), rhs(inv));

另一种只在顶层工作(即不在任何函数内部)的方法是使用所谓的引号-引号运算符,'',它具有内插的效果将某物的当前值输入到输入中,就好像它是输入的一样。例如invF(x) := ''(rhs(inv));.

Quote-quote 在表达式被解析时起作用,所以如果它出现在函数中可能会令人惊讶。例如。 y: 123; f(x) := block([y: 2*x], ''y); 然后 f(4) 返回 123,而不是 8。也就是说,我找到了引用-引用要方便且有用——只需将其限制在顶级内容即可。

关于maxima - wxMaxima:如何定义函数的反函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65442134/

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