바이오 대표

[Differentiation] using Symbolics, differentiation (미분) 본문

Mathematical Optimization/Julia

[Differentiation] using Symbolics, differentiation (미분)

바이오 대표 2021. 10. 13. 16:52

Computer algebra systems 을 이용해서 굳이 머리쓰지않고 쉽게 미분을 할 수 있다.

 

< Libraries for differentiation >

  • Maple
  • Sympy (Python)
  • Mathematica
  • Maxima
  • Symbolics (Julia)

 

julia> using Symbolics

julia> f(x) = log(x) + sin(x) / x

julia> Dx(f(x))

julia>  df_sym = expand_derivatives(Dx(f(x)))

julia>  df = build_function(df_sym, x) |> eval  #builds an expression and turns it into a function

julia>  df(2.0)   # 0.06460222502000837