@@ -1820,13 +1820,13 @@ Returns the vector of scalar affine functions in the form of a
1820
1820
`MOI.VectorAffineFunction{T}`.
1821
1821
"""
1822
1822
function vectorize (funcs:: AbstractVector{MOI.ScalarAffineFunction{T}} ) where T
1823
- nterms = sum (func -> number_of_affine_terms (T, func), funcs)
1824
- out_dim = sum (func -> output_dim (T, func), funcs)
1823
+ nterms = mapreduce (func -> number_of_affine_terms (T, func), + , funcs, init = 0 )
1824
+ out_dim = mapreduce (func -> output_dim (T, func), + , funcs, init = 0 )
1825
1825
terms = Vector {MOI.VectorAffineTerm{T}} (undef, nterms)
1826
1826
constant = zeros (T, out_dim)
1827
1827
fill_vector (terms, T, fill_terms, number_of_affine_terms, funcs)
1828
1828
fill_vector (constant, T, fill_constant, output_dim, funcs)
1829
- return VAF (terms, constant)
1829
+ return MOI . VectorAffineFunction (terms, constant)
1830
1830
end
1831
1831
1832
1832
"""
@@ -1836,16 +1836,16 @@ Returns the vector of scalar quadratic functions in the form of a
1836
1836
`MOI.VectorQuadraticFunction{T}`.
1837
1837
"""
1838
1838
function vectorize (funcs:: AbstractVector{MOI.ScalarQuadraticFunction{T}} ) where T
1839
- num_affine_terms = sum (func -> number_of_affine_terms (T, func), funcs)
1840
- num_quadratic_terms = sum (func -> number_of_quadratic_terms (T, func), funcs)
1841
- out_dim = sum (func -> output_dim (T, func), funcs)
1839
+ num_affine_terms = mapreduce (func -> number_of_affine_terms (T, func), + , funcs, init = 0 )
1840
+ num_quadratic_terms = mapreduce (func -> number_of_quadratic_terms (T, func), + , funcs, init = 0 )
1841
+ out_dim = mapreduce (func -> output_dim (T, func), + , funcs, init = 0 )
1842
1842
affine_terms = Vector {MOI.VectorAffineTerm{T}} (undef, num_affine_terms)
1843
1843
quadratic_terms = Vector {MOI.VectorQuadraticTerm{T}} (undef, num_quadratic_terms)
1844
1844
constant = zeros (T, out_dim)
1845
1845
fill_vector (affine_terms, T, fill_terms, number_of_affine_terms, funcs)
1846
1846
fill_vector (quadratic_terms, T, fill_terms, number_of_quadratic_terms, funcs)
1847
1847
fill_vector (constant, T, fill_constant, output_dim, funcs)
1848
- return VQF (affine_terms, quadratic_terms, constant)
1848
+ return MOI . VectorQuadraticFunction (affine_terms, quadratic_terms, constant)
1849
1849
end
1850
1850
1851
1851
function promote_operation (:: typeof (vcat), :: Type{T} , :: Type{T} ...) where T
0 commit comments