# Elimination of Errors in JuMP model

**URL:** <https://discourse.julialang.org/t/elimination-of-errors-in-jump-model/45266>\
**Category:** Optimization (Mathematical)\
**Created:** [August 20, 2020, 11:45am UTC](https://discourse.julialang.org/t/elimination-of-errors-in-jump-model/45266 "2020-08-20T11:45:00Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![mamo](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mamo/32/25591_2.png) [@mamo](https://discourse.julialang.org/u/mamo)\
**Post date:** [August 20, 2020, 11:45am UTC](https://discourse.julialang.org/t/elimination-of-errors-in-jump-model/45266/1 "2020-08-20T11:45:00Z")

</div>

Give me suggestions for eliminating these errors please:

LoadError: MethodError: no method matching getindex(::Tuple{Pair{String,Tuple{String,String}},Pair{String,NTuple{11,String}},Pair{String,Tuple{String,String,String}},Pair{String,NTuple{6,String}},Pair{String,NTuple{5,String}},Pair{String,String},Pair{String,NTuple{7,String}},Pair{String,String},Pair{String,String},Pair{String,String},Pair{String,Tuple{String,String}},Pair{String,String},Pair{String,NTuple{8,String}},Pair{String,String}}, ::String)

Closest candidates are:

getindex(::Tuple, !Matched::Int64) at tuple.jl:24

getindex(::Tuple, !Matched::Real) at tuple.jl:25

getindex(::Tuple, !Matched::AbstractUnitRange{#s69} where #s69\<:Real) at range.jl:290

…

in expression starting at C:\Users\mmill\AppData\Local\JuliaPro-1.0.5-2\problem3.jl:266

(::var"#248#254")(::String, ::String) at macro.jl:152

first\_iterate(::Tuple{var"#248#254",var"#249#255",var"#250#256"}, ::Function, ::Tuple{String,String}, ::Tuple{Tuple{Array{String,1},Int64,String},Tuple{Array{String,1},Int64,String}}) at nested\_iterator.jl:57

next\_iterate(::Tuple{var"#247#253",var"#248#254",var"#249#255",var"#250#256"}, ::Function, ::Tuple{String}, ::Tuple{Tuple{Array{String,1},Int64,String}}, ::Array{String,1}, ::Tuple{String,Int64}) at nested\_iterator.jl:41

first\_iterate(::Tuple{var"#247#253",var"#248#254",var"#249#255",var"#250#256"}, ::Function, ::Tuple{String}, ::Tuple{Tuple{Array{String,1},Int64,String}}) at nested\_iterator.jl:58

next\_iterate(::Tuple{var"#246#252",var"#247#253",var"#248#254",var"#249#255",var"#250#256"}, ::Function, ::Tuple{}, ::Tuple{}, ::Array{String,1}, ::Tuple{String,Int64}) at nested\_iterator.jl:41

first\_iterate(::Tuple{var"#246#252",var"#247#253",var"#248#254",var"#249#255",var"#250#256"}, ::Function, ::Tuple{}, ::Tuple{}) at nested\_iterator.jl:58

iterate at nested\_iterator.jl:69 [inlined]

iterate at generator.jl:44 [inlined]

grow\_to!(::JuMP.Containers.NoDuplicateDict{Any,Any}, ::Base.Generator{JuMP.Containers.NestedIterator{Tuple{var"#246#252",var"#247#253",var"#248#254",var"#249#255",var"#250#256"},JuMP.Containers.var"#20#22"},JuMP.Containers.var"#30#31"{var"#245#251"}}) at dict.jl:139

dict\_with\_eltype at abstractdict.jl:549 [inlined]

JuMP.Containers.NoDuplicateDict(::Base.Generator{JuMP.Containers.NestedIterator{Tuple{var"#246#252",var"#247#253",var"#248#254",var"#249#255",var"#250#256"},JuMP.Containers.var"#20#22"},JuMP.Containers.var"#30#31"{var"#245#251"}}) at no\_duplicate\_dict.jl:39

container(::Function, ::JuMP.Containers.NestedIterator{Tuple{var"#246#252",var"#247#253",var"#248#254",var"#249#255",var"#250#256"},JuMP.Containers.var"#20#22"}, ::Type{JuMP.Containers.SparseAxisArray}) at container.jl:96

container(::Function, ::JuMP.Containers.NestedIterator{Tuple{var"#246#252",var"#247#253",var"#248#254",var"#249#255",var"#250#256"},JuMP.Containers.var"#20#22"}) at container.jl:65

top-level scope at macros.jl:79

Best,  
Marco

---

<div class="post-metadata">

**Author:** ![Henrique\_Becker](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/henrique_becker/32/15443_2.png) [@Henrique\_Becker](https://discourse.julialang.org/u/Henrique_Becker)\
**Post date:** [August 20, 2020, 12:44pm UTC](https://discourse.julialang.org/t/elimination-of-errors-in-jump-model/45266/2 "2020-08-20T12:44:21Z")

</div>

The code would help here, at least the line mentioned by the error.

1. The `MethodError` with `getindex` is probably because you are trying to index your `Tuple` with a `String` instead of a number. The message is hard do read because the type you are using is very complex.
2. You did not post the error message for the second error, just the stacktrace?

---

<div class="post-metadata">

**Author:** ![mamo](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mamo/32/25591_2.png) [@mamo](https://discourse.julialang.org/u/mamo)\
**Post date:** [August 20, 2020, 4:15pm UTC](https://discourse.julialang.org/t/elimination-of-errors-in-jump-model/45266/3 "2020-08-20T16:15:22Z")

</div>

1. Thank you Henrique. You mean on this “The sequence of values stored in a tuple can be of any type, and they are indexed by integers.”?
2. That is actually the only mistake I have.

---

<div class="post-metadata">

**Author:** ![Henrique\_Becker](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/henrique_becker/32/15443_2.png) [@Henrique\_Becker](https://discourse.julialang.org/u/Henrique_Becker)\
**Post date:** [August 20, 2020, 6:42pm UTC](https://discourse.julialang.org/t/elimination-of-errors-in-jump-model/45266/4 "2020-08-20T18:42:59Z")

</div>

1. Yes. The tuple can store a sequence of different types (often a shorter sequence than yours), and the fields are often indexed by an integer, like arrays. `getindex(a, b)` is the method called by `a[b]`, and it says you are calling it with a Tuple and a String, instead of a Tuple and an integer (or real, or range).
2. Ah, ok, I thought that after the three dots you wanted to paste a second error, but it was only the continuation of the stacktrace then.

---

<div class="post-metadata">

**Author:** ![mamo](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mamo/32/25591_2.png) [@mamo](https://discourse.julialang.org/u/mamo)\
**Post date:** [August 20, 2020, 7:06pm UTC](https://discourse.julialang.org/t/elimination-of-errors-in-jump-model/45266/5 "2020-08-20T19:06:45Z")

</div>

Excellent, much clearer now where the problem is. Thanks!
