I’m trying to familiarize myself with JuMP, especially in the context of using SpecialFunctions.
I’m struggling with
lgamma() specifically, so I’ve tried to implement the simple example from JuMP.jl issue #407 albeit with updated syntax:
using JuMP using Ipopt using SpecialFunctions m = Model(with_optimizer(Ipopt.Optimizer)) @variable(m, 3.0 <= x <= 4.0) @NLobjective(m, Max, lgamma(x)) optimize!(m) # expect lgamma(4.0)
Running this results in:
UndefVarError: digamma not defined
I notice that I get the same error if I do not use the
SpecialFunctions module, but in that case I haven’t been able to find from where
lgamma() is made available.
Package versions here are:
I feel that I’m missing something basic. Am I overlooking a module dependency or not understanding the functions which may be used in a nonlinear objective function? I’ve read through the nonlinear modeling documentation but I am inexperienced in this domain, so any links to relevant documentation are much appreciated.