函数的导数

use*_*215 16 r derivative

我正在使用D来获得函数的导数.但是,R在返回导数时不会简化表达式.我需要弄清楚函数是否具有可以一般表达的导数.R中是否有某种方法可以简化表达式?

> D(expression(sqrt(1 - x^2)), 'x')
-(0.5 * (2 * x * (1 - x^2)^-0.5))
> D(D(expression(sqrt(1 - x^2)), 'x'), 'x')
-(0.5 * (2 * (1 - x^2)^-0.5 - 2 * x * (-0.5 * (2 * x * (1 - x^2)^-1.5))))
Run Code Online (Sandbox Code Playgroud)

其次,R有没有办法进行数值积分?

Geo*_*tas 14

library(Ryacas)
x <- Sym("x")
Simplify(deriv(sqrt(1 - x^2),x,2))  # return the result simplified
Run Code Online (Sandbox Code Playgroud)

expression((x^2 - 1 - x^2)/root(1 - x^2, 2)^3)
Run Code Online (Sandbox Code Playgroud)

你也可以试试

PrettyForm(Simplify(deriv(sqrt(1 - x^2),x,2)))
Run Code Online (Sandbox Code Playgroud)

这使

   2        2  
  x  - 1 - x   
---------------
              3
    /      2 \ 
Sqrt\ 1 - x  / 
Run Code Online (Sandbox Code Playgroud)

至于数值积分,试着看看有什么可用

library(sos)
findFn('{numerical+integration}')
Run Code Online (Sandbox Code Playgroud)