我希望能够在 R 中找到任意函数的反导数。
假设我已经得到f = 1/(2*x^2)并想要找到 F,顺便说一下,它很容易手工计算。
我尝试了以下方法:
f<- function (x) {1/(sqrt(x))}
F = antiD(f)
这给了我:
Error: no applicable method for 'rhs' applied to an object of class "function"
有人可以在这里推动我朝着正确的方向前进吗?
您使用的是mosaicCalc 包吗?
我认为您不能使用函数作为 antiD() 的参数。它期望一个公式:
F <- antiD( 1/sqrt(x) ~ x)
Run Code Online (Sandbox Code Playgroud)
这将为您提供一个函数 F,它带有两个参数 x 和 C(常量)。在这种情况下,它不能进行符号积分,因为它不知道如何处理 sqrt() 函数。如果您选择这样做:
F <- antiD(x^-0.5 ~ x)
Run Code Online (Sandbox Code Playgroud)
然后你会看到符号集成已经完成:
F
function (x, C = 0) {2 * x^(1/2) + C}
Run Code Online (Sandbox Code Playgroud)