] activate nb-environs/SMD_env ] instantiate ] up using Logging # Testing Topological components of the schema gl = global_logger() global_logger(ConsoleLogger(gl.stream, Logging.Error)); tsteps = 2 include("SIIP-Design-Demo/demo-preload.jl"); sys5b_th sys5b_th.generators sys5b_th.buses[1] sys5b_th.branches[1] display(TypeTree(PSI.AbstractRenewableFormulation,init_expand = 2,scopesep="\n")) ED = PSI.EconomicDispatch(sys5b_th, PSI.CopperPlatePowerModel; optimizer = GLPK_optimizer); UC = PSI.UnitCommitment(sys5b_th, PSI.CopperPlatePowerModel; optimizer = GLPK_optimizer); ED.devices[:ThermalGenerators] ED.canonical_model.constraints[:thermal_active_range]["Alta",1] keys(ED.canonical_model.constraints) UC.devices[:ThermalGenerators] display(UC.canonical_model.constraints[:thermal_active_range_ub]["Alta",1]) display(UC.canonical_model.constraints[:thermal_active_range_lb]["Alta",1]) keys(UC.canonical_model.constraints) ED.devices[:ThermalGenerators] = PSI.DeviceModel(PSY.ThermalGen, PSI.ThermalRampLimited) PSI.build_op_model!(ED); ED.canonical_model.constraints[:ramp_thermal_up][:,2] EDPF = PSI.EconomicDispatch(sys5b_th, PSI.StandardPTDFForm ; optimizer = GLPK_optimizer, PTDF = PTDF); display(ED.transmission) ED.canonical_model.constraints[:CopperPlateBalance][1] display(EDPF.transmission) display(EDPF.canonical_model.constraints[:network_flow]["1",1]) display(EDPF.canonical_model.constraints[:nodal_balance]["nodeA",1]) ED_AC= PSI.EconomicDispatch(sys5b_th, PM.StandardACPForm ; optimizer = ipopt_optimizer); ED_AC.canonical_model.expressions[:var_active] ED_AC.canonical_model.expressions[:var_reactive] display(ED.devices) display(ED.branches) display(ED.transmission) display(ED.services) EDPF.canonical_model.expressions[:var_active] ED.canonical_model.constraints res = solve_op_model!(UC, optimizer = GLPK_optimizer); res.optimizer_log