From 0c47e61a34c466559c78bc0be03be5350835aed4 Mon Sep 17 00:00:00 2001 From: Mathijs Bijkerk Date: Wed, 28 Aug 2024 18:06:45 +0200 Subject: [PATCH 1/2] Improve and simplify external coupling inputs --- ...try_other_metals_external_coupling_node.ad | 1 - ...carbothermalreduction_electricity_share.ad | 10 ----- ...nium_electrolysis_bat_electricity_share.ad | 10 ----- ..._electrolysis_current_electricity_share.ad | 10 ----- ...y_aluminium_smeltoven_electricity_share.ad | 10 ----- ...metal_aluminium_external_coupling_share.ad | 10 ----- ...ing_industry_metal_aluminium_production.ad | 44 ++++++++++++++++--- ..._metal_aluminium_production_efficiency.ad} | 10 ++--- ...industry_metal_other_metals_coal_share.ad} | 0 ...try_metal_other_metals_crude_oil_share.ad} | 0 ...y_metal_other_metals_electricity_share.ad} | 0 ..._metal_other_metals_hydrogen_efficiency.ad | 9 ---- ...stry_metal_other_metals_hydrogen_share.ad} | 0 ...y_metal_other_metals_network_gas_share.ad} | 0 ...tal_other_metals_steam_hot_water_share.ad} | 0 ...ndustry_metal_other_metals_total_demand.ad | 10 ----- ...al_other_metals_useful_energetic_demand.ad | 34 ++++++++++++++ ...ry_other_metals_external_coupling_share.ad | 11 ----- ..._other_metals_process_electricity_share.ad | 11 ----- ..._metals_process_heat_useable_heat_share.ad | 11 ----- ...oupling_industry_other_food_electricity.ad | 10 ----- ...upling_industry_other_food_useable_heat.ad | 10 ----- ..._energetic_demand_excluding_electricity.ad | 14 ++++++ ...useful_energetic_demand_for_electricity.ad | 14 ++++++ ...r_non_specified_useful_energetic_demand.ad | 18 ++++++++ ...n_specified_useful_non_energetic_demand.ad | 18 ++++++++ ...emand_for_other_non_specified_energetic.ad | 11 ----- ...d_for_other_non_specified_non_energetic.ad | 11 ----- ...upling_industry_other_paper_electricity.ad | 10 ----- ...pling_industry_other_paper_useable_heat.ad | 10 ----- ..._energetic_demand_excluding_electricity.ad | 14 ++++++ ...useful_energetic_demand_for_electricity.ad | 14 ++++++ 32 files changed, 170 insertions(+), 175 deletions(-) delete mode 100644 inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_aluminium_carbothermalreduction_electricity_share.ad delete mode 100644 inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_aluminium_electrolysis_bat_electricity_share.ad delete mode 100644 inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_aluminium_electrolysis_current_electricity_share.ad delete mode 100644 inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_aluminium_smeltoven_electricity_share.ad delete mode 100644 inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_metal_aluminium_external_coupling_share.ad rename inputs/modules/external_coupling/industry_metal_aluminium/{external_coupling_industry_metal_aluminium_efficiency.ad => external_coupling_industry_metal_aluminium_production_efficiency.ad} (60%) rename inputs/modules/external_coupling/industry_metal_other/{external_coupling_industry_other_metals_coal_share.ad => external_coupling_industry_metal_other_metals_coal_share.ad} (100%) rename inputs/modules/external_coupling/industry_metal_other/{external_coupling_industry_other_metals_crude_oil_share.ad => external_coupling_industry_metal_other_metals_crude_oil_share.ad} (100%) rename inputs/modules/external_coupling/industry_metal_other/{external_coupling_industry_other_metals_electricity_share.ad => external_coupling_industry_metal_other_metals_electricity_share.ad} (100%) delete mode 100644 inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_metal_other_metals_hydrogen_efficiency.ad rename inputs/modules/external_coupling/industry_metal_other/{external_coupling_industry_other_metals_hydrogen_share.ad => external_coupling_industry_metal_other_metals_hydrogen_share.ad} (100%) rename inputs/modules/external_coupling/industry_metal_other/{external_coupling_industry_other_metals_network_gas_share.ad => external_coupling_industry_metal_other_metals_network_gas_share.ad} (100%) rename inputs/modules/external_coupling/industry_metal_other/{external_coupling_industry_other_metals_heat_useable_heat_share.ad => external_coupling_industry_metal_other_metals_steam_hot_water_share.ad} (100%) delete mode 100644 inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_metal_other_metals_total_demand.ad create mode 100644 inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_metal_other_metals_useful_energetic_demand.ad delete mode 100644 inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_other_metals_external_coupling_share.ad delete mode 100644 inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_other_metals_process_electricity_share.ad delete mode 100644 inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_other_metals_process_heat_useable_heat_share.ad delete mode 100644 inputs/modules/external_coupling/industry_other_food/external_coupling_industry_other_food_electricity.ad delete mode 100644 inputs/modules/external_coupling/industry_other_food/external_coupling_industry_other_food_useable_heat.ad create mode 100644 inputs/modules/external_coupling/industry_other_food/external_coupling_industry_other_food_useful_energetic_demand_excluding_electricity.ad create mode 100644 inputs/modules/external_coupling/industry_other_food/external_coupling_industry_other_food_useful_energetic_demand_for_electricity.ad create mode 100644 inputs/modules/external_coupling/industry_other_non_specified/external_coupling_industry_other_non_specified_useful_energetic_demand.ad create mode 100644 inputs/modules/external_coupling/industry_other_non_specified/external_coupling_industry_other_non_specified_useful_non_energetic_demand.ad delete mode 100644 inputs/modules/external_coupling/industry_other_non_specified/external_coupling_industry_useful_demand_for_other_non_specified_energetic.ad delete mode 100644 inputs/modules/external_coupling/industry_other_non_specified/external_coupling_industry_useful_demand_for_other_non_specified_non_energetic.ad delete mode 100644 inputs/modules/external_coupling/industry_other_paper/external_coupling_industry_other_paper_electricity.ad delete mode 100644 inputs/modules/external_coupling/industry_other_paper/external_coupling_industry_other_paper_useable_heat.ad create mode 100644 inputs/modules/external_coupling/industry_other_paper/external_coupling_industry_other_paper_useful_energetic_demand_excluding_electricity.ad create mode 100644 inputs/modules/external_coupling/industry_other_paper/external_coupling_industry_other_paper_useful_energetic_demand_for_electricity.ad diff --git a/graphs/energy/nodes/industry/industry_other_metals_external_coupling_node.ad b/graphs/energy/nodes/industry/industry_other_metals_external_coupling_node.ad index ef540c9ad3..a43f6fb420 100644 --- a/graphs/energy/nodes/industry/industry_other_metals_external_coupling_node.ad +++ b/graphs/energy/nodes/industry/industry_other_metals_external_coupling_node.ad @@ -4,7 +4,6 @@ # Cost attributes are taken from network gas burner, heat_output_capacity converted to typical_input_capacity - use = energetic -- output.loss = elastic - output.not_defined = 1.0 - input.electricity = 0.5 - input.useable_heat = 0.5 diff --git a/inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_aluminium_carbothermalreduction_electricity_share.ad b/inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_aluminium_carbothermalreduction_electricity_share.ad deleted file mode 100644 index 6088b5ecd8..0000000000 --- a/inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_aluminium_carbothermalreduction_electricity_share.ad +++ /dev/null @@ -1,10 +0,0 @@ -- query = UPDATE(EDGE(industry_aluminium_carbothermalreduction_electricity, industry_aluminium_production), share, DIVIDE(USER_INPUT(),100)) -- share_group = external_coupling_industry_aluminium_production_route -- priority = 0 -- max_value = 100.0 -- min_value = 0.0 -- start_value_gql = present:V(industry_aluminium_carbothermalreduction_electricity, share_of_industry_steel_production) * 100 -- step_value = 0.1 -- unit = % -- update_period = future -- coupling_groups = [external_model_industry, industry_metal_aluminium] diff --git a/inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_aluminium_electrolysis_bat_electricity_share.ad b/inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_aluminium_electrolysis_bat_electricity_share.ad deleted file mode 100644 index a5d0ff744a..0000000000 --- a/inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_aluminium_electrolysis_bat_electricity_share.ad +++ /dev/null @@ -1,10 +0,0 @@ -- query = UPDATE(EDGE(industry_aluminium_electrolysis_bat_electricity, industry_aluminium_production), share, DIVIDE(USER_INPUT(),100)) -- share_group = external_coupling_industry_aluminium_production_route -- priority = 0 -- max_value = 100.0 -- min_value = 0.0 -- start_value_gql = present:V(industry_aluminium_electrolysis_bat_electricity, share_of_industry_steel_production) * 100 -- step_value = 0.1 -- unit = % -- update_period = future -- coupling_groups = [external_model_industry, industry_metal_aluminium] diff --git a/inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_aluminium_electrolysis_current_electricity_share.ad b/inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_aluminium_electrolysis_current_electricity_share.ad deleted file mode 100644 index f937816ad8..0000000000 --- a/inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_aluminium_electrolysis_current_electricity_share.ad +++ /dev/null @@ -1,10 +0,0 @@ -- query = UPDATE(EDGE(industry_aluminium_electrolysis_current_electricity, industry_aluminium_production), share, DIVIDE(USER_INPUT(),100)) -- share_group = external_coupling_industry_aluminium_production_route -- priority = 0 -- max_value = 100.0 -- min_value = 0.0 -- start_value_gql = present:V(industry_aluminium_electrolysis_current_electricity, share_of_industry_steel_production) * 100 -- step_value = 0.1 -- unit = % -- update_period = future -- coupling_groups = [external_model_industry, industry_metal_aluminium] diff --git a/inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_aluminium_smeltoven_electricity_share.ad b/inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_aluminium_smeltoven_electricity_share.ad deleted file mode 100644 index db604fabc9..0000000000 --- a/inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_aluminium_smeltoven_electricity_share.ad +++ /dev/null @@ -1,10 +0,0 @@ -- query = UPDATE(EDGE(industry_aluminium_smeltoven_electricity, industry_aluminium_production), share, DIVIDE(USER_INPUT(),100)) -- share_group = external_coupling_industry_aluminium_production_route -- priority = 0 -- max_value = 100.0 -- min_value = 0.0 -- start_value_gql = present:V(industry_aluminium_smeltoven_electricity, share_of_industry_steel_production) * 100 -- step_value = 0.1 -- unit = % -- update_period = future -- coupling_groups = [external_model_industry, industry_metal_aluminium] diff --git a/inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_metal_aluminium_external_coupling_share.ad b/inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_metal_aluminium_external_coupling_share.ad deleted file mode 100644 index 62259e475b..0000000000 --- a/inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_metal_aluminium_external_coupling_share.ad +++ /dev/null @@ -1,10 +0,0 @@ -- query = UPDATE(EDGE(industry_aluminium_external_coupling_node, industry_aluminium_production), share, DIVIDE(USER_INPUT(),100.0)) -- share_group = external_coupling_industry_aluminium_production_route -- priority = 0 -- max_value = 100.0 -- min_value = 0.0 -- start_value_gql = present:V(industry_aluminium_external_coupling_node, share_of_industry_aluminium_production) * 100.0 -- step_value = 0.1 -- unit = % -- update_period = future -- coupling_groups = [external_model_industry, industry_metal_aluminium] diff --git a/inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_metal_aluminium_production.ad b/inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_metal_aluminium_production.ad index 731d55aeea..4de460ed82 100644 --- a/inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_metal_aluminium_production.ad +++ b/inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_metal_aluminium_production.ad @@ -1,10 +1,44 @@ -- query = UPDATE_WITH_FACTOR(V(industry_aluminium_production), preset_demand, USER_INPUT()) +# By moving demand for aluminium to the external coupling node, the demand on the +# other production processes is set to 0. + +- query = + EACH( + UPDATE( + EDGE(industry_aluminium_production,industry_aluminium_external_coupling_node), + share, + 1.0 + ), + UPDATE( + EDGE(industry_aluminium_production,industry_aluminium_electrolysis_current_electricity), + share, + 0.0 + ), + UPDATE( + EDGE(industry_aluminium_production,industry_aluminium_electrolysis_bat_electricity), + share, + 0.0 + ), + UPDATE( + EDGE(industry_aluminium_production,industry_aluminium_smeltoven_electricity), + share, + 0.0 + ), + UPDATE( + EDGE(industry_aluminium_production,industry_aluminium_carbothermalreduction_electricity), + share, + 0.0 + ), + UPDATE( + V(industry_aluminium_production), + preset_demand, + (USER_INPUT() * BILLIONS) + ) + ) - priority = 0 -- max_value = 99900.0 +- max_value = 10000.0 - min_value = 0.0 -- start_value = 100.0 +- start_value_gql = present:DIVIDE(V(industry_other_metals_production, preset_demand),BILLIONS) - step_value = 0.1 -- unit = % +- unit = MT - update_period = future -- update_type = % - coupling_groups = [external_model_industry, industry_metal_aluminium] diff --git a/inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_metal_aluminium_efficiency.ad b/inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_metal_aluminium_production_efficiency.ad similarity index 60% rename from inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_metal_aluminium_efficiency.ad rename to inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_metal_aluminium_production_efficiency.ad index 9ccf75f0bf..d46b8a58fd 100644 --- a/inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_metal_aluminium_efficiency.ad +++ b/inputs/modules/external_coupling/industry_metal_aluminium/external_coupling_industry_metal_aluminium_production_efficiency.ad @@ -1,9 +1,9 @@ -- query = UPDATE(OUTPUT_SLOTS(V(industry_aluminium_external_coupling_node), not_defined), conversion, DIVIDE(USER_INPUT(), 100.0)) +- query = UPDATE(OUTPUT_SLOTS(V(industry_aluminium_external_coupling_node), not_defined), conversion, USER_INPUT()) - priority = 0 -- max_value = 100.0 +- max_value = 1.0 - min_value = 0.0 -- start_value_gql = present:V(industry_aluminium_external_coupling_node, not_defined_output_conversion) * 100.0 -- step_value = 0.1 -- unit = % +- start_value_gql = present:V(industry_aluminium_external_coupling_node, not_defined_output_conversion) +- step_value = 0.001 +- unit = MT/PJ - update_period = future - coupling_groups = [external_model_industry, industry_metal_aluminium] diff --git a/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_other_metals_coal_share.ad b/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_metal_other_metals_coal_share.ad similarity index 100% rename from inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_other_metals_coal_share.ad rename to inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_metal_other_metals_coal_share.ad diff --git a/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_other_metals_crude_oil_share.ad b/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_metal_other_metals_crude_oil_share.ad similarity index 100% rename from inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_other_metals_crude_oil_share.ad rename to inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_metal_other_metals_crude_oil_share.ad diff --git a/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_other_metals_electricity_share.ad b/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_metal_other_metals_electricity_share.ad similarity index 100% rename from inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_other_metals_electricity_share.ad rename to inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_metal_other_metals_electricity_share.ad diff --git a/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_metal_other_metals_hydrogen_efficiency.ad b/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_metal_other_metals_hydrogen_efficiency.ad deleted file mode 100644 index 4dceb27e13..0000000000 --- a/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_metal_other_metals_hydrogen_efficiency.ad +++ /dev/null @@ -1,9 +0,0 @@ -- query = UPDATE(OUTPUT_SLOTS(V(industry_other_metals_process_hydrogen), not_defined), conversion, DIVIDE(USER_INPUT(), 100.0)) -- priority = 0 -- max_value = 100.0 -- min_value = 0.0 -- start_value_gql = present:V(industry_other_metals_process_hydrogen, not_defined_output_conversion) * 100.0 -- step_value = 1.0 -- unit = % -- update_period = future -- coupling_groups = [external_model_industry, industry_metal_other] diff --git a/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_other_metals_hydrogen_share.ad b/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_metal_other_metals_hydrogen_share.ad similarity index 100% rename from inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_other_metals_hydrogen_share.ad rename to inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_metal_other_metals_hydrogen_share.ad diff --git a/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_other_metals_network_gas_share.ad b/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_metal_other_metals_network_gas_share.ad similarity index 100% rename from inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_other_metals_network_gas_share.ad rename to inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_metal_other_metals_network_gas_share.ad diff --git a/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_other_metals_heat_useable_heat_share.ad b/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_metal_other_metals_steam_hot_water_share.ad similarity index 100% rename from inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_other_metals_heat_useable_heat_share.ad rename to inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_metal_other_metals_steam_hot_water_share.ad diff --git a/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_metal_other_metals_total_demand.ad b/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_metal_other_metals_total_demand.ad deleted file mode 100644 index e588cca215..0000000000 --- a/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_metal_other_metals_total_demand.ad +++ /dev/null @@ -1,10 +0,0 @@ -- query = UPDATE_WITH_FACTOR(V(industry_other_metals_production), preset_demand, USER_INPUT()) -- priority = 0 -- max_value = 99900.0 -- min_value = 0.0 -- start_value = 100.0 -- step_value = 0.1 -- unit = % -- update_period = future -- update_type = % -- coupling_groups = [external_model_industry, industry_metal_other] diff --git a/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_metal_other_metals_useful_energetic_demand.ad b/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_metal_other_metals_useful_energetic_demand.ad new file mode 100644 index 0000000000..ad817dee8d --- /dev/null +++ b/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_metal_other_metals_useful_energetic_demand.ad @@ -0,0 +1,34 @@ +# By moving demand for other metals to the external coupling node, the demand on the +# process nodes for useable heat and electricity is set to 0. + +- query = + EACH( + UPDATE( + EDGE(industry_other_metals_production,industry_other_metals_external_coupling_node), + share, + 1.0 + ), + UPDATE( + EDGE(industry_other_metals_production,industry_other_metals_process_heat_useable_heat), + share, + 0.0 + ), + UPDATE( + EDGE(industry_other_metals_production,industry_other_metals_process_electricity), + share, + 0.0 + ), + UPDATE( + V(industry_other_metals_production), + preset_demand, + (USER_INPUT() * BILLIONS) + ) + ) +- priority = 0 +- max_value = 10000.0 +- min_value = 0.0 +- start_value_gql = present:DIVIDE(V(industry_other_metals_production, preset_demand),BILLIONS) +- step_value = 0.1 +- unit = PJ +- update_period = future +- coupling_groups = [external_model_industry, industry_metal_other] diff --git a/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_other_metals_external_coupling_share.ad b/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_other_metals_external_coupling_share.ad deleted file mode 100644 index b1def1b323..0000000000 --- a/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_other_metals_external_coupling_share.ad +++ /dev/null @@ -1,11 +0,0 @@ -- query = - UPDATE(EDGE(industry_other_metals_production,industry_other_metals_external_coupling_node), share, DIVIDE(USER_INPUT(),100)) -- share_group = external_coupling_industry_other_metal_production_route -- priority = 0 -- max_value = 100.0 -- min_value = 0.0 -- start_value = 0.0 -- step_value = 0.1 -- unit = % -- update_period = future -- coupling_groups = [external_model_industry, industry_metal_other] \ No newline at end of file diff --git a/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_other_metals_process_electricity_share.ad b/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_other_metals_process_electricity_share.ad deleted file mode 100644 index 7d20367f32..0000000000 --- a/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_other_metals_process_electricity_share.ad +++ /dev/null @@ -1,11 +0,0 @@ -- query = - UPDATE(EDGE(industry_other_metals_production,industry_other_metals_process_electricity), share, DIVIDE(USER_INPUT(),100)) -- share_group = external_coupling_industry_other_metal_production_route -- priority = 0 -- max_value = 100.0 -- min_value = 0.0 -- start_value = 0.0 -- step_value = 0.1 -- unit = % -- update_period = future -- coupling_groups = [external_model_industry, industry_metal_other] \ No newline at end of file diff --git a/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_other_metals_process_heat_useable_heat_share.ad b/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_other_metals_process_heat_useable_heat_share.ad deleted file mode 100644 index c3e3c931ca..0000000000 --- a/inputs/modules/external_coupling/industry_metal_other/external_coupling_industry_other_metals_process_heat_useable_heat_share.ad +++ /dev/null @@ -1,11 +0,0 @@ -- query = - UPDATE(EDGE(industry_other_metals_production,industry_other_metals_process_heat_useable_heat), share, DIVIDE(USER_INPUT(),100)) -- share_group = external_coupling_industry_other_metal_production_route -- priority = 0 -- max_value = 100.0 -- min_value = 0.0 -- start_value = 0.0 -- step_value = 0.1 -- unit = % -- update_period = future -- coupling_groups = [external_model_industry, industry_metal_other] \ No newline at end of file diff --git a/inputs/modules/external_coupling/industry_other_food/external_coupling_industry_other_food_electricity.ad b/inputs/modules/external_coupling/industry_other_food/external_coupling_industry_other_food_electricity.ad deleted file mode 100644 index af3a1f44a4..0000000000 --- a/inputs/modules/external_coupling/industry_other_food/external_coupling_industry_other_food_electricity.ad +++ /dev/null @@ -1,10 +0,0 @@ -- query = UPDATE_WITH_FACTOR(V(industry_useful_demand_for_other_food_electricity), preset_demand, USER_INPUT()) -- priority = 0 -- max_value = 99900.0 -- min_value = 0.0 -- start_value = 100.0 -- step_value = 0.001 -- unit = % -- update_period = future -- update_type = % -- coupling_groups = [external_model_industry, industry_other_food] diff --git a/inputs/modules/external_coupling/industry_other_food/external_coupling_industry_other_food_useable_heat.ad b/inputs/modules/external_coupling/industry_other_food/external_coupling_industry_other_food_useable_heat.ad deleted file mode 100644 index efbb1f9232..0000000000 --- a/inputs/modules/external_coupling/industry_other_food/external_coupling_industry_other_food_useable_heat.ad +++ /dev/null @@ -1,10 +0,0 @@ -- query = UPDATE_WITH_FACTOR(V(industry_useful_demand_for_other_food_useable_heat), preset_demand, USER_INPUT()) -- priority = 0 -- max_value = 99900.0 -- min_value = 0.0 -- start_value = 100.0 -- step_value = 0.001 -- unit = % -- update_period = future -- update_type = % -- coupling_groups = [external_model_industry, industry_other_food] diff --git a/inputs/modules/external_coupling/industry_other_food/external_coupling_industry_other_food_useful_energetic_demand_excluding_electricity.ad b/inputs/modules/external_coupling/industry_other_food/external_coupling_industry_other_food_useful_energetic_demand_excluding_electricity.ad new file mode 100644 index 0000000000..0967a60ad1 --- /dev/null +++ b/inputs/modules/external_coupling/industry_other_food/external_coupling_industry_other_food_useful_energetic_demand_excluding_electricity.ad @@ -0,0 +1,14 @@ +- query = + UPDATE( + V(industry_useful_demand_for_other_food_useable_heat), + preset_demand, + (USER_INPUT() * BILLIONS) + ) +- priority = 0 +- max_value = 10000.0 +- min_value = 0.0 +- start_value_gql = present:DIVIDE(V(industry_useful_demand_for_other_food_useable_heat, preset_demand),BILLIONS) +- step_value = 0.1 +- unit = PJ +- update_period = future +- coupling_groups = [external_model_industry, industry_other_food] diff --git a/inputs/modules/external_coupling/industry_other_food/external_coupling_industry_other_food_useful_energetic_demand_for_electricity.ad b/inputs/modules/external_coupling/industry_other_food/external_coupling_industry_other_food_useful_energetic_demand_for_electricity.ad new file mode 100644 index 0000000000..7f1e865e94 --- /dev/null +++ b/inputs/modules/external_coupling/industry_other_food/external_coupling_industry_other_food_useful_energetic_demand_for_electricity.ad @@ -0,0 +1,14 @@ +- query = + UPDATE( + V(industry_useful_demand_for_other_food_electricity), + preset_demand, + (USER_INPUT() * BILLIONS) + ) +- priority = 0 +- max_value = 10000.0 +- min_value = 0.0 +- start_value_gql = present:DIVIDE(V(industry_useful_demand_for_other_food_electricity, preset_demand),BILLIONS) +- step_value = 0.1 +- unit = PJ +- update_period = future +- coupling_groups = [external_model_industry, industry_other_food] diff --git a/inputs/modules/external_coupling/industry_other_non_specified/external_coupling_industry_other_non_specified_useful_energetic_demand.ad b/inputs/modules/external_coupling/industry_other_non_specified/external_coupling_industry_other_non_specified_useful_energetic_demand.ad new file mode 100644 index 0000000000..a845a76967 --- /dev/null +++ b/inputs/modules/external_coupling/industry_other_non_specified/external_coupling_industry_other_non_specified_useful_energetic_demand.ad @@ -0,0 +1,18 @@ +- query = + present_value = QUERY_PRESENT(-> {SUM(V(Q(other_non_specified_industry_energetic_converters),preset_demand))}); + future_value = PRODUCT(USER_INPUT(),BILLIONS); + relative_value = DIVIDE(future_value,present_value); + + UPDATE_WITH_FACTOR( + V(Q(other_non_specified_industry_energetic_converters)), + preset_demand, + relative_value + ) +- priority = 1 +- max_value = 10000.0 +- min_value = 0.0 +- start_value_gql = present:DIVIDE(SUM(V(Q(other_non_specified_industry_energetic_converters),preset_demand)),BILLIONS) +- step_value = 0.1 +- unit = PJ +- update_period = future +- coupling_groups = [external_model_industry, industry_other_non_specified] diff --git a/inputs/modules/external_coupling/industry_other_non_specified/external_coupling_industry_other_non_specified_useful_non_energetic_demand.ad b/inputs/modules/external_coupling/industry_other_non_specified/external_coupling_industry_other_non_specified_useful_non_energetic_demand.ad new file mode 100644 index 0000000000..033427d4b7 --- /dev/null +++ b/inputs/modules/external_coupling/industry_other_non_specified/external_coupling_industry_other_non_specified_useful_non_energetic_demand.ad @@ -0,0 +1,18 @@ +- query = + present_value = QUERY_PRESENT(-> {SUM(V(Q(other_non_specified_industry_non_energetic_converters),preset_demand))}); + future_value = PRODUCT(USER_INPUT(),BILLIONS); + relative_value = DIVIDE(future_value,present_value); + + UPDATE_WITH_FACTOR( + V(Q(other_non_specified_industry_non_energetic_converters)), + preset_demand, + relative_value + ) +- priority = 1 +- max_value = 10000.0 +- min_value = 0.0 +- start_value_gql = present:DIVIDE(SUM(V(Q(other_non_specified_industry_non_energetic_converters),preset_demand)),BILLIONS) +- step_value = 0.1 +- unit = PJ +- update_period = future +- coupling_groups = [external_model_industry, industry_other_non_specified] diff --git a/inputs/modules/external_coupling/industry_other_non_specified/external_coupling_industry_useful_demand_for_other_non_specified_energetic.ad b/inputs/modules/external_coupling/industry_other_non_specified/external_coupling_industry_useful_demand_for_other_non_specified_energetic.ad deleted file mode 100644 index 1d42141e79..0000000000 --- a/inputs/modules/external_coupling/industry_other_non_specified/external_coupling_industry_useful_demand_for_other_non_specified_energetic.ad +++ /dev/null @@ -1,11 +0,0 @@ -- query = - UPDATE_WITH_FACTOR(V(Q(other_non_specified_industry_energetic_converters)), preset_demand, USER_INPUT()) -- priority = 0 -- max_value = 10000.0 -- min_value = 0.0 -- start_value = 100.0 -- step_value = 0.1 -- unit = % -- update_period = future -- update_type = % -- coupling_groups = [external_model_industry, industry_other_non_specified] diff --git a/inputs/modules/external_coupling/industry_other_non_specified/external_coupling_industry_useful_demand_for_other_non_specified_non_energetic.ad b/inputs/modules/external_coupling/industry_other_non_specified/external_coupling_industry_useful_demand_for_other_non_specified_non_energetic.ad deleted file mode 100644 index f759a0eeba..0000000000 --- a/inputs/modules/external_coupling/industry_other_non_specified/external_coupling_industry_useful_demand_for_other_non_specified_non_energetic.ad +++ /dev/null @@ -1,11 +0,0 @@ -- query = - UPDATE_WITH_FACTOR(V(Q(other_non_specified_industry_non_energetic_converters)), preset_demand, USER_INPUT()) -- priority = 0 -- max_value = 50000.0 -- min_value = 0.0 -- start_value = 100.0 -- step_value = 0.1 -- unit = % -- update_period = future -- update_type = % -- coupling_groups = [external_model_industry, industry_other_non_specified] diff --git a/inputs/modules/external_coupling/industry_other_paper/external_coupling_industry_other_paper_electricity.ad b/inputs/modules/external_coupling/industry_other_paper/external_coupling_industry_other_paper_electricity.ad deleted file mode 100644 index ae199edb35..0000000000 --- a/inputs/modules/external_coupling/industry_other_paper/external_coupling_industry_other_paper_electricity.ad +++ /dev/null @@ -1,10 +0,0 @@ -- query = UPDATE_WITH_FACTOR(V(industry_useful_demand_for_other_paper_electricity), preset_demand, USER_INPUT()) -- priority = 0 -- max_value = 99900.0 -- min_value = 0.0 -- start_value = 100.0 -- step_value = 0.001 -- unit = % -- update_period = future -- update_type = % -- coupling_groups = [external_model_industry, industry_other_paper] diff --git a/inputs/modules/external_coupling/industry_other_paper/external_coupling_industry_other_paper_useable_heat.ad b/inputs/modules/external_coupling/industry_other_paper/external_coupling_industry_other_paper_useable_heat.ad deleted file mode 100644 index 4c34ea38d3..0000000000 --- a/inputs/modules/external_coupling/industry_other_paper/external_coupling_industry_other_paper_useable_heat.ad +++ /dev/null @@ -1,10 +0,0 @@ -- query = UPDATE_WITH_FACTOR(V(industry_useful_demand_for_other_paper_useable_heat), preset_demand, USER_INPUT()) -- priority = 0 -- max_value = 99900.0 -- min_value = 0.0 -- start_value = 100.0 -- step_value = 0.001 -- unit = % -- update_period = future -- update_type = % -- coupling_groups = [external_model_industry, industry_other_paper] diff --git a/inputs/modules/external_coupling/industry_other_paper/external_coupling_industry_other_paper_useful_energetic_demand_excluding_electricity.ad b/inputs/modules/external_coupling/industry_other_paper/external_coupling_industry_other_paper_useful_energetic_demand_excluding_electricity.ad new file mode 100644 index 0000000000..a08e0c22da --- /dev/null +++ b/inputs/modules/external_coupling/industry_other_paper/external_coupling_industry_other_paper_useful_energetic_demand_excluding_electricity.ad @@ -0,0 +1,14 @@ +- query = + UPDATE( + V(industry_useful_demand_for_other_paper_useable_heat), + preset_demand, + (USER_INPUT() * BILLIONS) + ) +- priority = 0 +- max_value = 10000.0 +- min_value = 0.0 +- start_value_gql = present:DIVIDE(V(industry_useful_demand_for_other_paper_useable_heat, preset_demand),BILLIONS) +- step_value = 0.1 +- unit = PJ +- update_period = future +- coupling_groups = [external_model_industry, industry_other_paper] diff --git a/inputs/modules/external_coupling/industry_other_paper/external_coupling_industry_other_paper_useful_energetic_demand_for_electricity.ad b/inputs/modules/external_coupling/industry_other_paper/external_coupling_industry_other_paper_useful_energetic_demand_for_electricity.ad new file mode 100644 index 0000000000..ce50cda06c --- /dev/null +++ b/inputs/modules/external_coupling/industry_other_paper/external_coupling_industry_other_paper_useful_energetic_demand_for_electricity.ad @@ -0,0 +1,14 @@ +- query = + UPDATE( + V(industry_useful_demand_for_other_paper_electricity), + preset_demand, + (USER_INPUT() * BILLIONS) + ) +- priority = 0 +- max_value = 10000.0 +- min_value = 0.0 +- start_value_gql = present:DIVIDE(V(industry_useful_demand_for_other_paper_electricity, preset_demand),BILLIONS) +- step_value = 0.1 +- unit = PJ +- update_period = future +- coupling_groups = [external_model_industry, industry_other_paper] From 7b24b84276045518248e34a7fb5d6753760d7291 Mon Sep 17 00:00:00 2001 From: Mathijs Bijkerk Date: Thu, 29 Aug 2024 16:50:44 +0200 Subject: [PATCH 2/2] Add non energetic ammonia in fertilizer sector to external coupling --- ...ers_external_coupling_node_non_energetic@ammonia.ad | 5 +++++ ...ls_fertilizers_locally_available_ammonia@ammonia.ad | 2 ++ ...fertilizers_external_coupling_node_non_energetic.ad | 1 + ...chemical_fertilizers_non_energetic_ammonia_share.ad | 10 ++++++++++ 4 files changed, 18 insertions(+) create mode 100644 graphs/energy/edges/industry/industry_final_demand_for_chemical_fertilizers_ammonia_non_energetic-industry_chemicals_fertilizers_external_coupling_node_non_energetic@ammonia.ad create mode 100644 inputs/modules/external_coupling/industry_chemical_fertilizers/external_coupling_industry_chemical_fertilizers_non_energetic_ammonia_share.ad diff --git a/graphs/energy/edges/industry/industry_final_demand_for_chemical_fertilizers_ammonia_non_energetic-industry_chemicals_fertilizers_external_coupling_node_non_energetic@ammonia.ad b/graphs/energy/edges/industry/industry_final_demand_for_chemical_fertilizers_ammonia_non_energetic-industry_chemicals_fertilizers_external_coupling_node_non_energetic@ammonia.ad new file mode 100644 index 0000000000..9669b8357c --- /dev/null +++ b/graphs/energy/edges/industry/industry_final_demand_for_chemical_fertilizers_ammonia_non_energetic-industry_chemicals_fertilizers_external_coupling_node_non_energetic@ammonia.ad @@ -0,0 +1,5 @@ +- type = share +- reversed = false +- groups = [final_demand, chemical_industry, fertilizers_industry, aggregated_chemical_industry] + +~ parent_share = 0.0 diff --git a/graphs/energy/edges/industry/industry_final_demand_for_chemical_fertilizers_ammonia_non_energetic-industry_chemicals_fertilizers_locally_available_ammonia@ammonia.ad b/graphs/energy/edges/industry/industry_final_demand_for_chemical_fertilizers_ammonia_non_energetic-industry_chemicals_fertilizers_locally_available_ammonia@ammonia.ad index 61264ae8ff..411128f515 100644 --- a/graphs/energy/edges/industry/industry_final_demand_for_chemical_fertilizers_ammonia_non_energetic-industry_chemicals_fertilizers_locally_available_ammonia@ammonia.ad +++ b/graphs/energy/edges/industry/industry_final_demand_for_chemical_fertilizers_ammonia_non_energetic-industry_chemicals_fertilizers_locally_available_ammonia@ammonia.ad @@ -1,3 +1,5 @@ - type = share - reversed = false - groups = [final_demand, chemical_industry, fertilizers_industry, aggregated_chemical_industry] + +~ parent_share = 1.0 diff --git a/graphs/energy/nodes/industry/industry_chemicals_fertilizers_external_coupling_node_non_energetic.ad b/graphs/energy/nodes/industry/industry_chemicals_fertilizers_external_coupling_node_non_energetic.ad index 9ffe9ab3d3..87b606221f 100644 --- a/graphs/energy/nodes/industry/industry_chemicals_fertilizers_external_coupling_node_non_energetic.ad +++ b/graphs/energy/nodes/industry/industry_chemicals_fertilizers_external_coupling_node_non_energetic.ad @@ -7,3 +7,4 @@ - input.wood_pellets = 0.0 - input.crude_oil = 0.0 - input.hydrogen = 0.0 +- input.ammonia = 0.0 diff --git a/inputs/modules/external_coupling/industry_chemical_fertilizers/external_coupling_industry_chemical_fertilizers_non_energetic_ammonia_share.ad b/inputs/modules/external_coupling/industry_chemical_fertilizers/external_coupling_industry_chemical_fertilizers_non_energetic_ammonia_share.ad new file mode 100644 index 0000000000..8b830d86c6 --- /dev/null +++ b/inputs/modules/external_coupling/industry_chemical_fertilizers/external_coupling_industry_chemical_fertilizers_non_energetic_ammonia_share.ad @@ -0,0 +1,10 @@ +- query = UPDATE(INPUT_SLOTS(V(industry_chemicals_fertilizers_external_coupling_node_non_energetic),ammonia), conversion, DIVIDE(USER_INPUT(),100.0)) +- share_group = external_coupling_chemicals_fertilizers_non_energetic_input +- priority = 0 +- max_value = 100.0 +- min_value = 0.0 +- start_value_gql = present:V(industry_chemicals_fertilizers_external_coupling_node_non_energetic,ammonia_input_conversion) * 100.0 +- step_value = 0.1 +- unit = % +- update_period = future +- coupling_groups = [external_model_industry, industry_chemical_fertilizers]