LICENSE
MANIFEST.in
README.md
pyproject.toml
setup.py
docs/index.md
docs/requirements.txt
docs/api/bridge-adapters.md
docs/api/bridge-julia-setup.md
docs/api/config-loader.md
docs/api/config-schema.md
docs/api/index.md
docs/api/io-demand.md
docs/api/io-exporter.md
docs/api/julia-api.md
docs/api/models-ev-adoption.md
docs/api/models-ev-analysis.md
docs/api/models-ev.md
docs/api/models-financial-analysis.md
docs/api/models-solar-rooftop.md
docs/api/runner.md
docs/api/sensitivity.md
docs/api/utils.md
docs/assets/esfex.png
docs/assets/studio-screenshot.png
docs/assets/css/extra.css
docs/contributing/development-setup.md
docs/contributing/julia-development.md
docs/contributing/plugin-development.md
docs/contributing/testing.md
docs/formulation/ac-power-flow.md
docs/formulation/capacity-expansion.md
docs/formulation/dc-power-flow.md
docs/formulation/electrolyzer.md
docs/formulation/ev-model.md
docs/formulation/frequency-stability.md
docs/formulation/operational-dispatch.md
docs/formulation/overview.md
docs/formulation/primary-energy.md
docs/formulation/reservoir-hydro.md
docs/formulation/risk-resilience.md
docs/formulation/rooftop-solar.md
docs/formulation/stochastic-programming.md
docs/getting-started/architecture.md
docs/getting-started/concepts.md
docs/getting-started/installation.md
docs/getting-started/quickstart.md
docs/gui/element-forms.md
docs/gui/global-settings.md
docs/gui/inter-system-links.md
docs/gui/map-editor.md
docs/gui/overview.md
docs/gui/plugins.md
docs/gui/scripting.md
docs/gui/sld-dynamic-analysis.md
docs/gui/system-management.md
docs/javascripts/mathjax.js
docs/reference/bibliography.md
docs/reference/changelog.md
docs/reference/config-reference.md
docs/reference/constraint-catalog.md
docs/reference/glossary.md
docs/reference/hdf5-output-schema.md
docs/tutorials/custom-scenarios.md
docs/tutorials/ev-integration.md
docs/tutorials/gui-workflow.md
docs/tutorials/mga.md
docs/tutorials/multi-node.md
docs/tutorials/multi-system.md
docs/tutorials/primary-energy.md
docs/tutorials/sensitivity-analysis.md
docs/tutorials/single-system.md
docs/tutorials/stochastic.md
docs/user-guide/availability-profiles.md
docs/user-guide/cli.md
docs/user-guide/configuration.md
docs/user-guide/demand-data.md
docs/user-guide/development-zones.md
docs/user-guide/master-problem.md
docs/user-guide/results-export.md
docs/user-guide/solver-guide.md
docs/workflows/demand-distribution.md
docs/workflows/ev-v2g.md
docs/workflows/financial-analysis.md
docs/workflows/grid-auto-mapping.md
docs/workflows/index.md
docs/workflows/otec.md
docs/workflows/rooftop-solar.md
docs/workflows/solar-pv.md
docs/workflows/wind.md
src/esfex/__init__.py
src/esfex/__main__.py
src/esfex/cli.py
src/esfex/logging_config.py
src/esfex/paths.py
src/esfex/runner.py
src/esfex/zones.py
src/esfex.egg-info/PKG-INFO
src/esfex.egg-info/SOURCES.txt
src/esfex.egg-info/dependency_links.txt
src/esfex.egg-info/entry_points.txt
src/esfex.egg-info/requires.txt
src/esfex.egg-info/top_level.txt
src/esfex/analysis/__init__.py
src/esfex/analysis/ac_contingency.py
src/esfex/analysis/ac_types.py
src/esfex/analysis/contingency.py
src/esfex/analysis/frequency.py
src/esfex/analysis/n1_assessment.py
src/esfex/analysis/native_ac_bridge.py
src/esfex/analysis/pandapower_bridge.py
src/esfex/analysis/snapshot_builder.py
src/esfex/bridge/__init__.py
src/esfex/bridge/adapters.py
src/esfex/bridge/converters.py
src/esfex/bridge/julia_setup.py
src/esfex/bridge/topology_audit.py
src/esfex/config/__init__.py
src/esfex/config/loader.py
src/esfex/config/schema.py
src/esfex/config/solver.py
src/esfex/icons/battery.svg
src/esfex/icons/busbar.svg
src/esfex/icons/converter.svg
src/esfex/icons/development.svg
src/esfex/icons/electrolizer.svg
src/esfex/icons/esfex.ico
src/esfex/icons/esfex.png
src/esfex/icons/esfex.svg
src/esfex/icons/frequency.svg
src/esfex/icons/fuel_entry.svg
src/esfex/icons/fuel_storage.svg
src/esfex/icons/fuel_transport.svg
src/esfex/icons/generator.svg
src/esfex/icons/icon.svg
src/esfex/icons/power_line.svg
src/esfex/icons/results.svg
src/esfex/icons/risk.svg
src/esfex/icons/run.svg
src/esfex/icons/selection.svg
src/esfex/icons/sensibility.svg
src/esfex/icons/system.svg
src/esfex/icons/trafo.svg
src/esfex/icons/validate.svg
src/esfex/io/__init__.py
src/esfex/io/demand.py
src/esfex/io/exporter.py
src/esfex/julia/Project.toml
src/esfex/julia/build_sysimage.jl
src/esfex/julia/precompile_workload.jl
src/esfex/julia/src/ESFEX.jl
src/esfex/julia/src/acopf_benchmark.jl
src/esfex/julia/src/benders.jl
src/esfex/julia/src/dcopf_benchmark.jl
src/esfex/julia/src/electrolyzer.jl
src/esfex/julia/src/master_problem.jl
src/esfex/julia/src/mga.jl
src/esfex/julia/src/power_system.jl
src/esfex/julia/src/primary_energy.jl
src/esfex/julia/src/transmission_ac.jl
src/esfex/julia/src/transmission_acopf.jl
src/esfex/julia/src/transmission_dc.jl
src/esfex/julia/src/types.jl
src/esfex/julia/test/Project.toml
src/esfex/julia/test/runtests.jl
src/esfex/models/__init__.py
src/esfex/models/adoption_models.py
src/esfex/models/climate_profiles.py
src/esfex/models/country_metadata.py
src/esfex/models/demand_dataset.py
src/esfex/models/demand_density_ml.py
src/esfex/models/demand_ml.py
src/esfex/models/demand_projection.py
src/esfex/models/demand_real_data.py
src/esfex/models/demand_tft.py
src/esfex/models/demand_training.py
src/esfex/models/demand_zonal_fetchers.py
src/esfex/models/download_cmip6.py
src/esfex/models/download_cmip6_subdaily.py
src/esfex/models/ecvi_gridded.py
src/esfex/models/ev.py
src/esfex/models/ev_adoption.py
src/esfex/models/ev_analysis.py
src/esfex/models/financial_analysis.py
src/esfex/models/hazard_assessment.py
src/esfex/models/otec_models.py
src/esfex/models/pixel_features.py
src/esfex/models/solar_pv_models.py
src/esfex/models/solar_rooftop.py
src/esfex/models/tft_inference.py
src/esfex/models/tsam.py
src/esfex/models/wind_models.py
src/esfex/models/zone_centroids.py
src/esfex/plugins/__init__.py
src/esfex/plugins/manager.py
src/esfex/plugins/protocol.py
src/esfex/plugins/availability_generator/__init__.py
src/esfex/plugins/availability_generator/cli_commands.py
src/esfex/plugins/availability_generator/generator.py
src/esfex/plugins/availability_generator/grid_builder_hook.py
src/esfex/plugins/availability_generator/gui_dialog.py
src/esfex/plugins/availability_generator/otec_cf.py
src/esfex/plugins/availability_generator/plugin.json
src/esfex/plugins/availability_generator/solar_cf.py
src/esfex/plugins/availability_generator/synthetic_cf.py
src/esfex/plugins/availability_generator/wind_cf.py
src/esfex/sensitivity/__init__.py
src/esfex/sensitivity/engine.py
src/esfex/sensitivity/lp_parser.py
src/esfex/sensitivity/worker.py
src/esfex/topology/__init__.py
src/esfex/topology/network_reducer.py
src/esfex/topology/reduction_map.py
src/esfex/topology/result_expander.py
src/esfex/topology/transformations.py
src/esfex/utils/__init__.py
src/esfex/utils/helpers.py
src/esfex/utils/paths.py
src/esfex/utils/temporal.py
src/esfex/visualization/__init__.py
src/esfex/visualization/app.py
src/esfex/visualization/i18n.py
src/esfex/visualization/main_window.py
src/esfex/visualization/map_widget.py
src/esfex/visualization/modern_widgets.py
src/esfex/visualization/preferences.py
src/esfex/visualization/pty_runner.py
src/esfex/visualization/run_output_view.py
src/esfex/visualization/scripting_api.py
src/esfex/visualization/sld_widget.py
src/esfex/visualization/splash.py
src/esfex/visualization/theme.py
src/esfex/visualization/ui_scale.py
src/esfex/visualization/bridge/__init__.py
src/esfex/visualization/bridge/channel.py
src/esfex/visualization/bridge/js_bridge.py
src/esfex/visualization/bridge/sld_bridge.py
src/esfex/visualization/data/__init__.py
src/esfex/visualization/data/auto_complete.py
src/esfex/visualization/data/connectivity_rules.py
src/esfex/visualization/data/default_colors.py
src/esfex/visualization/data/geo_asset_parser.py
src/esfex/visualization/data/geojson_importer.py
src/esfex/visualization/data/gui_model.py
src/esfex/visualization/data/serializer.py
src/esfex/visualization/data/undo.py
src/esfex/visualization/data/validation.py
src/esfex/visualization/panels/__init__.py
src/esfex/visualization/panels/_dialogs.py
src/esfex/visualization/panels/acdc_converter_form.py
src/esfex/visualization/panels/analysis_panel.py
src/esfex/visualization/panels/auto_complete_dialog.py
src/esfex/visualization/panels/battery_form.py
src/esfex/visualization/panels/bus_form.py
src/esfex/visualization/panels/collapse_button.py
src/esfex/visualization/panels/dashboard_loader.py
src/esfex/visualization/panels/dashboard_view.py
src/esfex/visualization/panels/demand_visualizer.py
src/esfex/visualization/panels/doc_viewer.py
src/esfex/visualization/panels/electrolyzer_form.py
src/esfex/visualization/panels/element_tree.py
src/esfex/visualization/panels/ev_form.py
src/esfex/visualization/panels/freq_converter_form.py
src/esfex/visualization/panels/fuel_entry_form.py
src/esfex/visualization/panels/fuel_form.py
src/esfex/visualization/panels/fuel_route_form.py
src/esfex/visualization/panels/fuel_storage_form.py
src/esfex/visualization/panels/generator_form.py
src/esfex/visualization/panels/global_settings_form.py
src/esfex/visualization/panels/inter_system_link_form.py
src/esfex/visualization/panels/investment_form.py
src/esfex/visualization/panels/line_form.py
src/esfex/visualization/panels/multi_edit.py
src/esfex/visualization/panels/node_form.py
src/esfex/visualization/panels/parse_geo_asset_dialog.py
src/esfex/visualization/panels/plugins_dialog.py
src/esfex/visualization/panels/preferences_dialog.py
src/esfex/visualization/panels/properties.py
src/esfex/visualization/panels/python_console.py
src/esfex/visualization/panels/results_cache.py
src/esfex/visualization/panels/results_charts.py
src/esfex/visualization/panels/results_charts_bokeh.py
src/esfex/visualization/panels/results_charts_plotly.py
src/esfex/visualization/panels/results_dialog.py
src/esfex/visualization/panels/results_panel.py
src/esfex/visualization/panels/rooftop_solar_form.py
src/esfex/visualization/panels/script_editor.py
src/esfex/visualization/panels/sensitivity_dialog.py
src/esfex/visualization/panels/simulation_dialog.py
src/esfex/visualization/panels/stochastic_form.py
src/esfex/visualization/panels/system_form.py
src/esfex/visualization/panels/technology_form.py
src/esfex/visualization/panels/toolbar.py
src/esfex/visualization/panels/transformer_form.py
src/esfex/visualization/panels/validation_dialog.py
src/esfex/visualization/panels/visual_style_widget.py
src/esfex/visualization/panels/word_wrap_header.py
src/esfex/visualization/panels/zone_form.py
src/esfex/visualization/resources/battery_heatmap.html
src/esfex/visualization/resources/battery_heatmap.js
src/esfex/visualization/resources/battery_operation.html
src/esfex/visualization/resources/battery_operation.js
src/esfex/visualization/resources/carbon_penalty.html
src/esfex/visualization/resources/carbon_penalty.js
src/esfex/visualization/resources/cash_flow.html
src/esfex/visualization/resources/cash_flow.js
src/esfex/visualization/resources/chart_theme.js
src/esfex/visualization/resources/country_name_iso3.json
src/esfex/visualization/resources/custom_chart.html
src/esfex/visualization/resources/custom_chart.js
src/esfex/visualization/resources/d3.v7.min.js
src/esfex/visualization/resources/dashboard.html
src/esfex/visualization/resources/dashboard.js
src/esfex/visualization/resources/electricity_cost.html
src/esfex/visualization/resources/electricity_cost.js
src/esfex/visualization/resources/elk.bundled.js
src/esfex/visualization/resources/flex_reliability.html
src/esfex/visualization/resources/flex_reliability.js
src/esfex/visualization/resources/font_scale.js
src/esfex/visualization/resources/fuel_supply.html
src/esfex/visualization/resources/fuel_supply.js
src/esfex/visualization/resources/inter_node_flows.html
src/esfex/visualization/resources/inter_node_flows.js
src/esfex/visualization/resources/leaflet.css
src/esfex/visualization/resources/leaflet.draw.css
src/esfex/visualization/resources/leaflet.draw.js
src/esfex/visualization/resources/leaflet.html
src/esfex/visualization/resources/leaflet.js
src/esfex/visualization/resources/map_controller.js
src/esfex/visualization/resources/mga_annotated_dendrogram.html
src/esfex/visualization/resources/mga_annotated_dendrogram.js
src/esfex/visualization/resources/mga_composition.html
src/esfex/visualization/resources/mga_composition.js
src/esfex/visualization/resources/mga_decision_factors.html
src/esfex/visualization/resources/mga_decision_factors.js
src/esfex/visualization/resources/mga_parcoords.html
src/esfex/visualization/resources/mga_parcoords.js
src/esfex/visualization/resources/mga_pathway.html
src/esfex/visualization/resources/mga_pathway.js
src/esfex/visualization/resources/mga_projection.html
src/esfex/visualization/resources/mga_projection.js
src/esfex/visualization/resources/mga_robustness_frontier.html
src/esfex/visualization/resources/mga_robustness_frontier.js
src/esfex/visualization/resources/mga_similarity.html
src/esfex/visualization/resources/mga_similarity.js
src/esfex/visualization/resources/mga_spatial.html
src/esfex/visualization/resources/mga_spatial.js
src/esfex/visualization/resources/mix_chart.html
src/esfex/visualization/resources/mix_chart.js
src/esfex/visualization/resources/net_load_heatmap.html
src/esfex/visualization/resources/net_load_heatmap.js
src/esfex/visualization/resources/plotly.min.js
src/esfex/visualization/resources/price_duration.html
src/esfex/visualization/resources/price_duration.js
src/esfex/visualization/resources/revenue_profitability.html
src/esfex/visualization/resources/revenue_profitability.js
src/esfex/visualization/resources/sankey.html
src/esfex/visualization/resources/sankey.js
src/esfex/visualization/resources/sld.html
src/esfex/visualization/resources/sld_controller.js
src/esfex/visualization/resources/system_metrics.html
src/esfex/visualization/resources/system_metrics.js
src/esfex/visualization/resources/tech_performance.html
src/esfex/visualization/resources/tech_performance.js
src/esfex/visualization/resources/terminal.html
src/esfex/visualization/resources/uc_commitment_heatmap.html
src/esfex/visualization/resources/uc_commitment_heatmap.js
src/esfex/visualization/resources/uc_dispatch_stack.html
src/esfex/visualization/resources/uc_dispatch_stack.js
src/esfex/visualization/resources/uc_hourly_price.html
src/esfex/visualization/resources/uc_hourly_price.js
src/esfex/visualization/resources/uc_lmp_by_node.html
src/esfex/visualization/resources/uc_lmp_by_node.js
src/esfex/visualization/resources/uc_loadshed_curtailment.html
src/esfex/visualization/resources/uc_loadshed_curtailment.js
src/esfex/visualization/resources/uc_marginal_tech.html
src/esfex/visualization/resources/uc_marginal_tech.js
src/esfex/visualization/resources/uc_netload_duration.html
src/esfex/visualization/resources/uc_netload_duration.js
src/esfex/visualization/resources/uc_price_duration.html
src/esfex/visualization/resources/uc_price_duration.js
src/esfex/visualization/resources/uc_ramp_distribution.html
src/esfex/visualization/resources/uc_ramp_distribution.js
src/esfex/visualization/resources/uc_storage_soc.html
src/esfex/visualization/resources/uc_storage_soc.js
src/esfex/visualization/resources/world_countries.geojson
src/esfex/visualization/resources/xterm-addon-fit.js
src/esfex/visualization/resources/xterm.css
src/esfex/visualization/resources/xterm.js
src/esfex/visualization/resources/images/layers-2x.png
src/esfex/visualization/resources/images/layers.png
src/esfex/visualization/resources/images/marker-icon-2x.png
src/esfex/visualization/resources/images/marker-icon.png
src/esfex/visualization/resources/images/marker-shadow.png
src/esfex/visualization/resources/images/spritesheet-2x.png
src/esfex/visualization/resources/images/spritesheet.png
src/esfex/visualization/resources/images/spritesheet.svg
src/esfex/visualization/sld/__init__.py
src/esfex/visualization/sld/graph_builder.py
src/esfex/visualization/sld/router.py
src/esfex/visualization/sld/sld_results_loader.py
src/esfex/visualization/sld/voltage_colors.py
src/esfex/visualization/translations/__init__.py
src/esfex/visualization/translations/en.json
src/esfex/visualization/translations/es.json
src/esfex/visualization/translations/ja.json
src/esfex/visualization/workflows/__init__.py
src/esfex/visualization/workflows/_qt_adapters.py
src/esfex/visualization/workflows/_wizard_utils.py
src/esfex/visualization/workflows/country_detection.py
src/esfex/visualization/workflows/data_fetchers.py
src/esfex/visualization/workflows/demand_analysis.py
src/esfex/visualization/workflows/demand_distribution_steps.py
src/esfex/visualization/workflows/demand_distribution_wizard.py
src/esfex/visualization/workflows/demand_estimation_analysis.py
src/esfex/visualization/workflows/demand_estimation_fetchers.py
src/esfex/visualization/workflows/demand_estimation_steps.py
src/esfex/visualization/workflows/demand_estimation_wizard.py
src/esfex/visualization/workflows/ev_advanced_steps.py
src/esfex/visualization/workflows/ev_fetchers.py
src/esfex/visualization/workflows/ev_steps.py
src/esfex/visualization/workflows/ev_wizard.py
src/esfex/visualization/workflows/financial_charts.py
src/esfex/visualization/workflows/financial_steps.py
src/esfex/visualization/workflows/financial_wizard.py
src/esfex/visualization/workflows/grid_mapping_builder.py
src/esfex/visualization/workflows/grid_mapping_clustering.py
src/esfex/visualization/workflows/grid_mapping_fetchers.py
src/esfex/visualization/workflows/grid_mapping_inference.py
src/esfex/visualization/workflows/grid_mapping_quality.py
src/esfex/visualization/workflows/grid_mapping_steps.py
src/esfex/visualization/workflows/grid_mapping_topology.py
src/esfex/visualization/workflows/grid_mapping_wizard.py
src/esfex/visualization/workflows/place_naming.py
src/esfex/visualization/workflows/risk_charts.py
src/esfex/visualization/workflows/risk_panels.py
src/esfex/visualization/workflows/risk_wizard.py
src/esfex/visualization/workflows/solar_adoption_steps.py
src/esfex/visualization/workflows/solar_analysis.py
src/esfex/visualization/workflows/solar_macro_fetchers.py
src/esfex/visualization/workflows/solar_pv_advanced_steps.py
src/esfex/visualization/workflows/solar_pv_analysis.py
src/esfex/visualization/workflows/solar_pv_steps.py
src/esfex/visualization/workflows/solar_pv_wizard.py
src/esfex/visualization/workflows/solar_rooftop_steps.py
src/esfex/visualization/workflows/solar_rooftop_wizard.py
src/esfex/visualization/workflows/wind_advanced_steps.py
src/esfex/visualization/workflows/wind_analysis.py
src/esfex/visualization/workflows/wind_steps.py
src/esfex/visualization/workflows/wind_wizard.py
src/esfex/visualization/workflows/otec_studio/__init__.py
src/esfex/visualization/workflows/otec_studio/cycle_panel.py
src/esfex/visualization/workflows/otec_studio/cycles.py
src/esfex/visualization/workflows/otec_studio/economics.py
src/esfex/visualization/workflows/otec_studio/economics_panel.py
src/esfex/visualization/workflows/otec_studio/engineering.py
src/esfex/visualization/workflows/otec_studio/operation.py
src/esfex/visualization/workflows/otec_studio/operation_panel.py
src/esfex/visualization/workflows/otec_studio/optimization_panel.py
src/esfex/visualization/workflows/otec_studio/optimize.py
src/esfex/visualization/workflows/otec_studio/project.py
src/esfex/visualization/workflows/otec_studio/regional.py
src/esfex/visualization/workflows/otec_studio/regional_panel.py
src/esfex/visualization/workflows/otec_studio/resource.py
src/esfex/visualization/workflows/otec_studio/resource_panel.py
src/esfex/visualization/workflows/otec_studio/uq.py
src/esfex/visualization/workflows/otec_studio/uq_panel.py
src/esfex/visualization/workflows/otec_studio/window.py
src/esfex/visualization/workflows/otec_studio/workers.py
src/esfex/visualization/workflows/otec_studio/zones.py
tests/test_adapters_helpers.py
tests/test_adoption_models_extra.py
tests/test_auto_complete.py
tests/test_availability_generator.py
tests/test_cli.py
tests/test_cli_extra.py
tests/test_connectivity_rules.py
tests/test_contingency.py
tests/test_converters.py
tests/test_country_detection.py
tests/test_country_metadata_extra.py
tests/test_demand.py
tests/test_demand_analysis.py
tests/test_demand_density_ml.py
tests/test_demand_projection_cov.py
tests/test_demand_visualizer.py
tests/test_electrolyzer_primary_energy.py
tests/test_ev.py
tests/test_ev_adoption.py
tests/test_ev_analysis.py
tests/test_ev_cov.py
tests/test_exporter.py
tests/test_financial_analysis.py
tests/test_financial_analysis_cov.py
tests/test_frequency.py
tests/test_geo_asset_parser.py
tests/test_geo_asset_parser_extra.py
tests/test_geojson_importer_extra.py
tests/test_graph_builder_cov.py
tests/test_grid_demand_forecast.py
tests/test_grid_mapping_builder_extra.py
tests/test_grid_mapping_e2e.py
tests/test_grid_mapping_inference_extra.py
tests/test_grid_mapping_quality_extra.py
tests/test_grid_mapping_topology.py
tests/test_gui_model.py
tests/test_gui_model_extra.py
tests/test_hazard_assessment_cov.py
tests/test_hazard_assessment_extra.py
tests/test_helpers.py
tests/test_i18n.py
tests/test_julia_setup.py
tests/test_loader.py
tests/test_loader_extra.py
tests/test_lp_parser.py
tests/test_manager_cov.py
tests/test_master_problem.py
tests/test_n1_assessment_extra.py
tests/test_network_reduction.py
tests/test_otec_studio.py
tests/test_pandapower_bridge.py
tests/test_place_naming.py
tests/test_plugins.py
tests/test_power_system_parity.py
tests/test_preferences.py
tests/test_router.py
tests/test_runner.py
tests/test_schema.py
tests/test_sensitivity_engine.py
tests/test_serializer.py
tests/test_serializer_cov.py
tests/test_serializer_extra.py
tests/test_sld_results_loader.py
tests/test_snapshot_builder.py
tests/test_solar_pv_models_extra.py
tests/test_solar_rooftop.py
tests/test_solar_rooftop_cov.py
tests/test_solver.py
tests/test_system_deletion.py
tests/test_temporal.py
tests/test_theme_extra.py
tests/test_topology_audit_extra.py
tests/test_undo.py
tests/test_validation.py
tests/test_validation_cov.py
tests/test_validation_extra.py
tests/test_wind_models_extra.py
tests/test_zones.py
tests/test_zones_cov.py