using LinearAlgebra using Plots function plotQ(Q::Matrix, q::Vector, xyrange::Tuple{Tuple{Number, Number}, Tuple{Number, Number}})::Plots.Plot f(x, y) = dot((1/2) * hcat(x, y) * Q, vcat(x, y)) + dot(q', vcat(x, y)) xrange = LinRange(xyrange[1][1], xyrange[2][1], 200) yrange = LinRange(xyrange[1][2], xyrange[2][2], 200) z = @. f(xrange', yrange) plt = contour(xrange, yrange, z) plt end