Skip to content

Commit

Permalink
Error on complex values in NLP (#1978)
Browse files Browse the repository at this point in the history
  • Loading branch information
odow committed May 29, 2019
1 parent 2201c60 commit 45235ca
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 3 deletions.
2 changes: 1 addition & 1 deletion src/parse_nlp.jl
Expand Up @@ -167,7 +167,7 @@ function _parse_NL_expr(m, x, tapevar, parent, values)

end

function _parse_NL_expr_runtime(m::Model, x::Number, tape, parent, values)
function _parse_NL_expr_runtime(m::Model, x::Real, tape, parent, values)
push!(values, x)
push!(tape, NodeData(VALUE, length(values), parent))
nothing
Expand Down
13 changes: 11 additions & 2 deletions test/nlp.jl
Expand Up @@ -619,7 +619,7 @@
evaluator = JuMP.NLPEvaluator(model)
@test !(:Hess in MOI.features_available(evaluator))
end

@testset "Error on using AffExpr in NLexpression" begin
model = Model()
@variable(model, x)
Expand All @@ -632,7 +632,7 @@
)
@test_throws expected_exception @NLexpression(model, A)
end

@testset "Error on using QuadExpr in NLexpression" begin
model = Model()
@variable(model, x)
Expand All @@ -645,4 +645,13 @@
)
@test_throws expected_exception @NLexpression(model, A)
end
@testset "Error on complex values" begin
model = Model()
@variable(model, x)
c = sqrt(Complex(-1))
expected_exception = ErrorException(
"Unexpected object $c (of type $(typeof(c)) in nonlinear expression."
)
@test_throws expected_exception @NLobjective(model, Min, c * x)
end
end

0 comments on commit 45235ca

Please sign in to comment.