mirror of
https://github.com/ANL-CEEESA/RELOG.git
synced 2025-12-05 23:38:52 -06:00
Re-add RELOG.write function
This commit is contained in:
@@ -280,10 +280,7 @@ function solve(instance::Instance;
|
|||||||
solution = get_solution(model, marginal_costs=marginal_costs)
|
solution = get_solution(model, marginal_costs=marginal_costs)
|
||||||
|
|
||||||
if output != nothing
|
if output != nothing
|
||||||
@info "Writing solution: $output"
|
write(solution, output)
|
||||||
open(output, "w") do file
|
|
||||||
JSON.print(file, solution, 2)
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
return solution
|
return solution
|
||||||
|
|||||||
@@ -255,6 +255,12 @@ function transportation_emissions_report(solution)::DataFrame
|
|||||||
return df
|
return df
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function write(solution::AbstractDict, filename::AbstractString)
|
||||||
|
@info "Writing solution: $filename"
|
||||||
|
open(filename, "w") do file
|
||||||
|
JSON.print(file, solution, 2)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
write_plants_report(solution, filename) =
|
write_plants_report(solution, filename) =
|
||||||
CSV.write(filename, plants_report(solution))
|
CSV.write(filename, plants_report(solution))
|
||||||
|
|||||||
@@ -36,15 +36,21 @@ using RELOG, Cbc, JuMP, Printf, JSON, MathOptInterface.FileFormats
|
|||||||
@test lower_bound(v) == 0.0
|
@test lower_bound(v) == 0.0
|
||||||
@test upper_bound(v) == 1.0
|
@test upper_bound(v) == 1.0
|
||||||
|
|
||||||
#dest = FileFormats.Model(format = FileFormats.FORMAT_LP)
|
# dest = FileFormats.Model(format = FileFormats.FORMAT_LP)
|
||||||
#MOI.copy_to(dest, model.mip)
|
# MOI.copy_to(dest, model.mip)
|
||||||
#MOI.write_to_file(dest, "model.lp")
|
# MOI.write_to_file(dest, "model.lp")
|
||||||
end
|
end
|
||||||
|
|
||||||
@testset "solve (exact)" begin
|
@testset "solve (exact)" begin
|
||||||
solution_filename = tempname()
|
solution_filename_a = tempname()
|
||||||
|
solution_filename_b = tempname()
|
||||||
solution = RELOG.solve("$(pwd())/../instances/s1.json",
|
solution = RELOG.solve("$(pwd())/../instances/s1.json",
|
||||||
output=solution_filename)
|
output=solution_filename_a)
|
||||||
|
|
||||||
|
@test isfile(solution_filename_a)
|
||||||
|
|
||||||
|
RELOG.write(solution, solution_filename_b)
|
||||||
|
@test isfile(solution_filename_b)
|
||||||
|
|
||||||
@test "Costs" in keys(solution)
|
@test "Costs" in keys(solution)
|
||||||
@test "Fixed operating (\$)" in keys(solution["Costs"])
|
@test "Fixed operating (\$)" in keys(solution["Costs"])
|
||||||
|
|||||||
Reference in New Issue
Block a user