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)
|
||||
|
||||
if output != nothing
|
||||
@info "Writing solution: $output"
|
||||
open(output, "w") do file
|
||||
JSON.print(file, solution, 2)
|
||||
end
|
||||
write(solution, output)
|
||||
end
|
||||
|
||||
return solution
|
||||
|
||||
@@ -255,6 +255,12 @@ function transportation_emissions_report(solution)::DataFrame
|
||||
return df
|
||||
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) =
|
||||
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 upper_bound(v) == 1.0
|
||||
|
||||
#dest = FileFormats.Model(format = FileFormats.FORMAT_LP)
|
||||
#MOI.copy_to(dest, model.mip)
|
||||
#MOI.write_to_file(dest, "model.lp")
|
||||
# dest = FileFormats.Model(format = FileFormats.FORMAT_LP)
|
||||
# MOI.copy_to(dest, model.mip)
|
||||
# MOI.write_to_file(dest, "model.lp")
|
||||
end
|
||||
|
||||
@testset "solve (exact)" begin
|
||||
solution_filename = tempname()
|
||||
solution_filename_a = tempname()
|
||||
solution_filename_b = tempname()
|
||||
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 "Fixed operating (\$)" in keys(solution["Costs"])
|
||||
|
||||
Reference in New Issue
Block a user