EnergySystemModels 20260416004__tar.gz → 20260416006__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/PKG-INFO +1 -1
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/setup.py +1 -1
- energysystemmodels-20260416006/src/ThermodynamicCycles/Combustion/NG_Boiler_Efficiency_EN1295X.py +302 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Combustion/NG_Heating_Value.py +1 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/energysystemmodels.egg-info/PKG-INFO +1 -1
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/energysystemmodels.egg-info/SOURCES.txt +1 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/LICENSE +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/README.md +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/setup.cfg +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/AirPort/AirPort.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/AirPort/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/Coil/CoolingCoil.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/Coil/CoolingCoil_Expert.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/Coil/CoolingCoil_Sensible.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/Coil/CoolingCoil_Tc.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/Coil/HeatingCoil.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/Coil/HeatingCoilNUT.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/Coil/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/Connect.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/FreshAir/AirMix.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/FreshAir/FreshAir.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/FreshAir/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/GenericAHU/AirRecoveryAHU.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/GenericAHU/AirRecyclingAHU.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/GenericAHU/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/HeatRecovery/Heat_plate_exchanger.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/HeatRecovery/Thermal_wheel_exchanger.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/HeatRecovery/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/Humidification/Humidifier.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/Humidification/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/air_humide/PsychrometricChart.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/air_humide/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/air_humide/air_humide.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/air_humide/air_humide_NB.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/CEE/CEE.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/CEE/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/Distillation/Deethanizer.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/Distillation/PengRobinson.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/Distillation/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/Distillation/diag_enthalpy_models.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/Distillation/reverse_engineer_enthalpies.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/Facture/ATR_Transport_Distribution.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/Facture/SONALGAZ_Elec.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/Facture/SONALGAZ_gaz.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/Facture/TURPE.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/Facture/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/Facture/coefficients_elec.json +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/Facture/coefficients_gaz_ATRD.json +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/Facture/coefficients_gaz_ATRT.json +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/Facture/coefficients_gaz_TICGN.json +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/Facture/coefficients_gaz_TVA.json +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/Facture/coefficients_sonalgaz_elec.json +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/Facture/coefficients_sonalgaz_gaz.json +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/Facture/df_utils.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/Facture/test.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/HeatTransfer/CompositeWall.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/HeatTransfer/ParallelepipedicBody.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/HeatTransfer/PipeInsulationAnalysis.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/HeatTransfer/PlateHeatTransfer.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/HeatTransfer/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/IPMVP/IPMVP.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/IPMVP/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/MeteoCiel/DJU_costic.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/MeteoCiel/MeteoCiel_Scraping.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/MeteoCiel/MeteoCiel_dayScraping.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/MeteoCiel/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/nodeeditor/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/nodeeditor/node_content_widget.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/nodeeditor/node_edge.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/nodeeditor/node_edge_dragging.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/nodeeditor/node_edge_validators.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/nodeeditor/node_editor_widget.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/nodeeditor/node_editor_window.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/nodeeditor/node_graphics_cutline.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/nodeeditor/node_graphics_edge.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/nodeeditor/node_graphics_edge_path.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/nodeeditor/node_graphics_node.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/nodeeditor/node_graphics_scene.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/nodeeditor/node_graphics_socket.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/nodeeditor/node_graphics_view.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/nodeeditor/node_node.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/nodeeditor/node_scene.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/nodeeditor/node_scene_clipboard.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/nodeeditor/node_scene_history.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/nodeeditor/node_serializable.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/nodeeditor/node_socket.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/nodeeditor/utils.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/setup.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/tests/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/tests/test_000_import.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/tox.ini +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/OpenWeatherMap/OpenWeatherMap_call.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/OpenWeatherMap/OpenWeatherMap_call_location.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/OpenWeatherMap/SQlite_OpenWeatherMap.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/OpenWeatherMap/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/OpenWeatherMap/config.ini +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/OpenWeatherMap/config_historical.ini +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/OpenWeatherMap/data.json +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/OpenWeatherMap/get_weather.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PV/ProductionElectriquePV.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PV/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PinchAnalysis/PinchAnalysis.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PinchAnalysis/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PinchAnalysis/functions/Two_flow_pinch_analysis.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PinchAnalysis/functions/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PinchAnalysis/functions/apply_heat_exchange_above.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PinchAnalysis/functions/apply_heat_exchange_below.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PinchAnalysis/functions/calculation_HEN.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PinchAnalysis/functions/calculation_allowed_combinations.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PinchAnalysis/functions/calculation_below_above_stream.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PinchAnalysis/functions/calculation_composite_curve.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PinchAnalysis/functions/calculation_decomposition.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PinchAnalysis/functions/calculation_graphical_HEN.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PinchAnalysis/functions/calculation_surplus_deficit.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PinchAnalysis/functions/check_additional_heat_exchanges.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PinchAnalysis/functions/draw_hen_from_df.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PinchAnalysis/functions/plotting.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/calc_conf.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/calc_drag_listbox.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/calc_node_base.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/calc_sub_window.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/calc_window.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/config.ini +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/main.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/nodes/Simple_HEX.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/nodes/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/nodes/air_input.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/nodes/air_mixer.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/nodes/air_output.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/nodes/compressor.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/nodes/compressor_m.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/nodes/condenser.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/nodes/cooling_coil.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/nodes/cooling_coil_expert.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/nodes/cooling_coil_sensible.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/nodes/desuperheater.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/nodes/evaporator.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/nodes/expansion_valve.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/nodes/heating_coil.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/nodes/humidificateur.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/nodes/input.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/nodes/operations.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/nodes/output.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/nodes/random_meteo.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/nodes/source_P_h.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/nodes/turbine.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Aeraulic/StraightPipe.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Aeraulic/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Carnot_Cycle_Analysis.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Chiller.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Combustion/Combustor_cantera.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Combustion/Gaz_Boiler.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Combustion/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Compressor/Compressor.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Compressor/Compressor_m.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Compressor/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Condenser/Condenser.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Condenser/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Connect.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Desuperheater/Desuperheater.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Desuperheater/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Evaporator/Evaporator.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Evaporator/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Expansion_Valve/Expansion_Valve.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Expansion_Valve/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/FluidPort/FluidPort.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/FluidPort/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/HEX/AirCooled_HEX.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/HEX/DTLM_HEX.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/HEX/NUT_HEX.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/HEX/Simple_HEX.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/HEX/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Hydraulic/StraightPipe.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Hydraulic/TA_Valve.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Hydraulic/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Pump/Pump.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Pump/Pump_m.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Pump/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Sink/Sink.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Sink/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Source/Source.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Source/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Tank/MixedStorage.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Tank/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Temperature_Entropy_Chart.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Turbine/Turbine.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Turbine/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/TkinterGUI/Chiller.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/TkinterGUI/__init__.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/energysystemmodels.egg-info/dependency_links.txt +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/energysystemmodels.egg-info/requires.txt +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/energysystemmodels.egg-info/top_level.txt +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/test/test_api_diagnostic.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/test/test_api_key.py +0 -0
- {energysystemmodels-20260416004 → energysystemmodels-20260416006}/test/test_compare_keys.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: energysystemmodels
|
|
3
|
-
Version:
|
|
3
|
+
Version: 20260416006
|
|
4
4
|
Summary: Energy systems models are the mathematical models that are developed in order to represent as reliably as possible various energy-related problems.
|
|
5
5
|
Author: Zoheir HADID
|
|
6
6
|
Author-email: zoheir.hadid@gmail.com
|
|
@@ -11,7 +11,7 @@ setup(
|
|
|
11
11
|
name='energysystemmodels',
|
|
12
12
|
|
|
13
13
|
|
|
14
|
-
version='
|
|
14
|
+
version='20260416006',
|
|
15
15
|
|
|
16
16
|
description='Energy systems models are the mathematical models that are developed in order to represent as reliably as possible various energy-related problems.',
|
|
17
17
|
|
energysystemmodels-20260416006/src/ThermodynamicCycles/Combustion/NG_Boiler_Efficiency_EN1295X.py
ADDED
|
@@ -0,0 +1,302 @@
|
|
|
1
|
+
import numpy as np
|
|
2
|
+
import pandas as pd
|
|
3
|
+
import re
|
|
4
|
+
from ThermodynamicCycles.Combustion.NG_Heating_Value import NG_Heating_Value
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
class NG_Boiler_Efficiency:
|
|
8
|
+
"""
|
|
9
|
+
EN12952-15 / EN12953-11 indirect method boiler efficiency calculator.
|
|
10
|
+
Computes heat losses (flue gas sensible, CO, radiation, condensation)
|
|
11
|
+
and derives LHV/HHV efficiencies for natural gas boilers.
|
|
12
|
+
"""
|
|
13
|
+
|
|
14
|
+
R = 8.314510 # J/mol/K
|
|
15
|
+
VMOL = 22.414e-3 # m3/mol at 0C, 101.325 kPa
|
|
16
|
+
T_NTP = 273.15 # K (Normal Temperature 0C)
|
|
17
|
+
P_NTP = 101.325 # kPa
|
|
18
|
+
|
|
19
|
+
# Dry air molar composition
|
|
20
|
+
DRY_AIR = {'CO2': 0.00033, 'O2': 0.20946, 'N2': 0.78102, 'Ar': 0.00919}
|
|
21
|
+
|
|
22
|
+
# Flue gas Cp in kJ/Nm3/K (mean values for typical boiler temperature range)
|
|
23
|
+
FG_CP = {'CO2': 1.7, 'H2O': 1.5, 'N2': 1.3, 'O2': 1.3, 'Ar': 0.93}
|
|
24
|
+
|
|
25
|
+
# Radiation loss constants
|
|
26
|
+
RADIATION_CONSTANT = {'water_tube': 0.0113, 'fire_tube': 0.0072}
|
|
27
|
+
|
|
28
|
+
# CO net calorific value kJ/Nm3
|
|
29
|
+
NCV_CO = 12633.0
|
|
30
|
+
|
|
31
|
+
# Latent heat of water vaporization kJ/kg at 25C
|
|
32
|
+
LATENT_HEAT_WATER = 2442.5
|
|
33
|
+
|
|
34
|
+
def __init__(
|
|
35
|
+
self,
|
|
36
|
+
gas_composition: dict,
|
|
37
|
+
ng_flow_Nm3h: float,
|
|
38
|
+
ng_temperature_C: float = 25.0,
|
|
39
|
+
ng_LHV_kWh_Nm3: float = None,
|
|
40
|
+
flue_gas_temperature_C: float = 180.0,
|
|
41
|
+
O2_measured: float = 0.035,
|
|
42
|
+
O2_basis: str = 'dry',
|
|
43
|
+
CO_ppm: float = 0.0,
|
|
44
|
+
ambient_temperature_C: float = 25.0,
|
|
45
|
+
ambient_RH: float = 0.5,
|
|
46
|
+
ambient_pressure_mbar: float = 1013.25,
|
|
47
|
+
air_temperature_C: float = None,
|
|
48
|
+
boiler_type: str = 'water_tube',
|
|
49
|
+
design_useful_heat_kW: float = 1000.0,
|
|
50
|
+
electrical_credit_kW: float = 0.0,
|
|
51
|
+
other_heat_credit_kW: float = 0.0,
|
|
52
|
+
T_ref: float = 25.0,
|
|
53
|
+
):
|
|
54
|
+
self.gas_composition = gas_composition
|
|
55
|
+
self.ng_flow = ng_flow_Nm3h
|
|
56
|
+
self.ng_temperature = ng_temperature_C
|
|
57
|
+
self.ng_LHV_kWh_Nm3_input = ng_LHV_kWh_Nm3
|
|
58
|
+
self.T_fg = flue_gas_temperature_C
|
|
59
|
+
self.O2_measured = O2_measured
|
|
60
|
+
self.O2_basis = O2_basis
|
|
61
|
+
self.CO_ppm = CO_ppm
|
|
62
|
+
self.T_amb = ambient_temperature_C
|
|
63
|
+
self.RH = ambient_RH
|
|
64
|
+
self.P_atm = ambient_pressure_mbar * 100.0 # Pa
|
|
65
|
+
self.T_air = air_temperature_C if air_temperature_C is not None else ambient_temperature_C
|
|
66
|
+
self.boiler_type = boiler_type
|
|
67
|
+
self.design_useful_heat_kW = design_useful_heat_kW
|
|
68
|
+
self.electrical_credit = electrical_credit_kW
|
|
69
|
+
self.other_heat_credit = other_heat_credit_kW
|
|
70
|
+
self.T_ref = T_ref
|
|
71
|
+
self.df = None
|
|
72
|
+
|
|
73
|
+
def calculate(self):
|
|
74
|
+
# --- 1. NG properties via NG_Heating_Value ---
|
|
75
|
+
comps = [
|
|
76
|
+
NG_Heating_Value.GasComponent(formula, x)
|
|
77
|
+
for formula, x in self.gas_composition.items()
|
|
78
|
+
]
|
|
79
|
+
ng_props = NG_Heating_Value(comps)
|
|
80
|
+
props_df = ng_props.df
|
|
81
|
+
|
|
82
|
+
def get_prop(name, unit):
|
|
83
|
+
row = props_df[(props_df['Property'] == name) & (props_df['Unit'] == unit)]
|
|
84
|
+
return row['Value'].values[0] if not row.empty else None
|
|
85
|
+
|
|
86
|
+
LHV_kWh = get_prop('LHV vol', 'kWh/Nm3') if self.ng_LHV_kWh_Nm3_input is None else self.ng_LHV_kWh_Nm3_input
|
|
87
|
+
HHV_kWh = get_prop('HHV vol', 'kWh/Nm3')
|
|
88
|
+
density = get_prop('Density real', 'kg/Nm3')
|
|
89
|
+
Cp_mass = ng_props.Cp_mix() # J/kg/K
|
|
90
|
+
|
|
91
|
+
# --- 2. NG heat power ---
|
|
92
|
+
Cp_kWh_Nm3_K = (Cp_mass * density) / 3.6e6 # J/kg/K * kg/Nm3 -> J/Nm3/K -> kWh/Nm3/K
|
|
93
|
+
sensible_heat = Cp_kWh_Nm3_K * (self.ng_temperature - self.T_ref)
|
|
94
|
+
Q_ng_LHV = (LHV_kWh + sensible_heat) * self.ng_flow # kW
|
|
95
|
+
Q_ng_HHV = (HHV_kWh + sensible_heat) * self.ng_flow # kW
|
|
96
|
+
|
|
97
|
+
# --- 3. Ambient air moisture ---
|
|
98
|
+
Psat = 610.78 * np.exp(17.2694 * self.T_amb / (self.T_amb + 237.29)) # Pa
|
|
99
|
+
Pw = self.RH * Psat
|
|
100
|
+
x_H2O_air = Pw / self.P_atm # molar fraction
|
|
101
|
+
|
|
102
|
+
# --- 4-5. Wet air composition ---
|
|
103
|
+
wet_air = {}
|
|
104
|
+
for species, xi in self.DRY_AIR.items():
|
|
105
|
+
wet_air[species] = xi * (1 - x_H2O_air)
|
|
106
|
+
wet_air['H2O'] = x_H2O_air
|
|
107
|
+
|
|
108
|
+
# --- 6. Stoichiometric combustion ---
|
|
109
|
+
stoich_O2 = 0.0 # Nm3 O2 per Nm3 fuel
|
|
110
|
+
stoich_CO2 = 0.0 # Nm3 CO2 produced per Nm3 fuel
|
|
111
|
+
stoich_H2O = 0.0 # Nm3 H2O produced per Nm3 fuel
|
|
112
|
+
stoich_N2_fuel = 0.0
|
|
113
|
+
|
|
114
|
+
for formula, x in self.gas_composition.items():
|
|
115
|
+
if formula == 'N2':
|
|
116
|
+
stoich_N2_fuel += x
|
|
117
|
+
continue
|
|
118
|
+
if formula == 'CO2':
|
|
119
|
+
stoich_CO2 += x
|
|
120
|
+
continue
|
|
121
|
+
if formula == 'H2':
|
|
122
|
+
stoich_O2 += x * 0.5
|
|
123
|
+
stoich_H2O += x * 1.0
|
|
124
|
+
continue
|
|
125
|
+
|
|
126
|
+
# Parse CnHm
|
|
127
|
+
clean = formula.replace("n-", "").replace("i-", "").replace("neo-", "")
|
|
128
|
+
matches = re.findall(r'([CHON])(\d*)', clean)
|
|
129
|
+
atoms = {elem: int(num) if num else 1 for elem, num in matches}
|
|
130
|
+
n_C = atoms.get('C', 0)
|
|
131
|
+
n_H = atoms.get('H', 0)
|
|
132
|
+
|
|
133
|
+
if n_C == 0 and n_H == 0:
|
|
134
|
+
continue
|
|
135
|
+
|
|
136
|
+
O2_needed = n_C + n_H / 4.0
|
|
137
|
+
stoich_O2 += x * O2_needed
|
|
138
|
+
stoich_CO2 += x * n_C
|
|
139
|
+
stoich_H2O += x * n_H / 2.0
|
|
140
|
+
|
|
141
|
+
# Stoichiometric air (Nm3 air / Nm3 fuel) based on O2 in dry air
|
|
142
|
+
stoich_air = stoich_O2 / self.DRY_AIR['O2']
|
|
143
|
+
|
|
144
|
+
# --- 7. Excess air from O2 measurement ---
|
|
145
|
+
O2_dry_frac = self.O2_measured
|
|
146
|
+
if self.O2_basis == 'wet':
|
|
147
|
+
# Convert wet O2 to dry O2 (approximate)
|
|
148
|
+
# Need iterative approach, but use first approximation
|
|
149
|
+
O2_dry_frac = self.O2_measured / (1 - x_H2O_air)
|
|
150
|
+
|
|
151
|
+
O2_dry_pct = O2_dry_frac * 100.0
|
|
152
|
+
O2_ref_pct = self.DRY_AIR['O2'] * 100.0
|
|
153
|
+
|
|
154
|
+
total_air_ratio = O2_ref_pct / (O2_ref_pct - O2_dry_pct)
|
|
155
|
+
total_air = stoich_air * total_air_ratio # Nm3 wet air / Nm3 fuel
|
|
156
|
+
excess_air_pct = (total_air_ratio - 1) * 100.0
|
|
157
|
+
|
|
158
|
+
# --- 8. Flue gas composition (Nm3 per Nm3 fuel) ---
|
|
159
|
+
fg = {}
|
|
160
|
+
fg['CO2'] = stoich_CO2 + total_air * wet_air.get('CO2', 0)
|
|
161
|
+
fg['H2O'] = stoich_H2O + total_air * wet_air.get('H2O', 0)
|
|
162
|
+
fg['O2'] = total_air * wet_air.get('O2', 0) - stoich_O2
|
|
163
|
+
fg['N2'] = stoich_N2_fuel + total_air * wet_air.get('N2', 0)
|
|
164
|
+
fg['Ar'] = total_air * wet_air.get('Ar', 0)
|
|
165
|
+
|
|
166
|
+
fg_total = sum(fg.values()) # Nm3 flue gas / Nm3 fuel
|
|
167
|
+
fg_dry = fg_total - fg['H2O']
|
|
168
|
+
|
|
169
|
+
# Flue gas flows
|
|
170
|
+
fg_flow = fg_total * self.ng_flow # Nm3/h
|
|
171
|
+
fg_flow_dry = fg_dry * self.ng_flow
|
|
172
|
+
|
|
173
|
+
# H2O volume fraction in flue gas
|
|
174
|
+
x_H2O_fg = fg['H2O'] / fg_total
|
|
175
|
+
|
|
176
|
+
# --- 9-10. Flue gas sensible heat loss ---
|
|
177
|
+
dT = self.T_fg - self.T_ref
|
|
178
|
+
# Weighted Cp of flue gas mixture (kJ/Nm3_mix/K)
|
|
179
|
+
Cp_fg_mix = sum(fg[sp] / fg_total * self.FG_CP.get(sp, 1.3) for sp in fg)
|
|
180
|
+
|
|
181
|
+
flue_gas_loss = fg_flow * Cp_fg_mix * dT / 3600.0 # kW
|
|
182
|
+
|
|
183
|
+
# CO loss
|
|
184
|
+
CO_loss = self.CO_ppm * 1e-6 * fg_flow_dry * self.NCV_CO / 3600.0 # kW
|
|
185
|
+
|
|
186
|
+
# Radiation loss
|
|
187
|
+
k_rad = self.RADIATION_CONSTANT.get(self.boiler_type, 0.0113)
|
|
188
|
+
radiation_loss = k_rad * self.design_useful_heat_kW ** 0.7 # kW
|
|
189
|
+
|
|
190
|
+
# --- 11. Condensation check ---
|
|
191
|
+
# Dew point from H2O partial pressure in flue gas
|
|
192
|
+
P_H2O_fg = x_H2O_fg * self.P_atm # Pa
|
|
193
|
+
# Inverse of Antoine: T_dew = 237.29 * ln(P/610.78) / (17.2694 - ln(P/610.78))
|
|
194
|
+
if P_H2O_fg > 0:
|
|
195
|
+
ln_ratio = np.log(P_H2O_fg / 610.78)
|
|
196
|
+
T_condensation = 237.29 * ln_ratio / (17.2694 - ln_ratio)
|
|
197
|
+
else:
|
|
198
|
+
T_condensation = 0.0
|
|
199
|
+
|
|
200
|
+
condensation_recovery = 0.0
|
|
201
|
+
if self.T_fg < T_condensation:
|
|
202
|
+
# Saturation pressure at flue gas temperature
|
|
203
|
+
Psat_fg = 610.78 * np.exp(17.2694 * self.T_fg / (self.T_fg + 237.29))
|
|
204
|
+
# Maximum H2O that can remain as vapor (mole fraction)
|
|
205
|
+
x_H2O_sat = Psat_fg / self.P_atm
|
|
206
|
+
# Condensed water: difference in Nm3 per Nm3 fuel
|
|
207
|
+
H2O_remaining_vapor = x_H2O_sat / (1 - x_H2O_sat) * (fg_total - fg['H2O'])
|
|
208
|
+
H2O_condensed_Nm3 = max(0, fg['H2O'] - H2O_remaining_vapor) # Nm3/Nm3_fuel
|
|
209
|
+
# Convert to kg: 1 Nm3 H2O = 18.015 / 22.414 = 0.8034 kg
|
|
210
|
+
H2O_condensed_kg_per_Nm3_fuel = H2O_condensed_Nm3 * 18.015 / 22.414
|
|
211
|
+
H2O_condensed_kg_h = H2O_condensed_kg_per_Nm3_fuel * self.ng_flow
|
|
212
|
+
|
|
213
|
+
# Latent heat recovery
|
|
214
|
+
latent_recovery = H2O_condensed_kg_h * self.LATENT_HEAT_WATER / 3600.0 # kW
|
|
215
|
+
# Sensible heat recovery from cooling condensate from T_condensation to T_fg
|
|
216
|
+
sensible_recovery = H2O_condensed_kg_h * 4.18 * (T_condensation - self.T_fg) / 3600.0 # kW
|
|
217
|
+
condensation_recovery = latent_recovery + sensible_recovery
|
|
218
|
+
|
|
219
|
+
# --- 12. Boiler efficiency (indirect method) ---
|
|
220
|
+
heat_credits = self.electrical_credit + self.other_heat_credit
|
|
221
|
+
|
|
222
|
+
# Water vapor remaining after condensation (Nm3/Nm3_fuel)
|
|
223
|
+
if self.T_fg < T_condensation:
|
|
224
|
+
H2O_vapor = H2O_remaining_vapor
|
|
225
|
+
H2O_condensed = fg['H2O'] - H2O_remaining_vapor
|
|
226
|
+
else:
|
|
227
|
+
H2O_vapor = fg['H2O']
|
|
228
|
+
H2O_condensed = 0.0
|
|
229
|
+
|
|
230
|
+
H2O_vapor_kg_h = H2O_vapor * self.ng_flow * 18.015 / 22.414
|
|
231
|
+
H2O_condensed_kg_h = H2O_condensed * self.ng_flow * 18.015 / 22.414
|
|
232
|
+
|
|
233
|
+
# Condensate loss: water leaving envelope at T_fg (sensible heat)
|
|
234
|
+
condensate_loss = H2O_condensed_kg_h * 4.18 * (self.T_fg - self.T_ref) / 3600.0 # kW
|
|
235
|
+
|
|
236
|
+
# === LHV basis ===
|
|
237
|
+
# Condensation recovery = latent + sensible heat recovered
|
|
238
|
+
total_losses_LHV = flue_gas_loss + CO_loss + radiation_loss - condensation_recovery
|
|
239
|
+
efficiency_LHV = 1.0 - total_losses_LHV / (Q_ng_LHV + heat_credits) if (Q_ng_LHV + heat_credits) > 0 else 0.0
|
|
240
|
+
|
|
241
|
+
# === HHV basis ===
|
|
242
|
+
# Flue gas loss includes latent heat of water REMAINING as vapor
|
|
243
|
+
latent_vapor = H2O_vapor_kg_h * self.LATENT_HEAT_WATER / 3600.0 # kW
|
|
244
|
+
flue_gas_loss_HHV = flue_gas_loss + latent_vapor
|
|
245
|
+
total_losses_HHV = flue_gas_loss_HHV + CO_loss + radiation_loss + condensate_loss
|
|
246
|
+
efficiency_HHV = 1.0 - total_losses_HHV / (Q_ng_HHV + heat_credits) if (Q_ng_HHV + heat_credits) > 0 else 0.0
|
|
247
|
+
|
|
248
|
+
# --- 13. Useful heat ---
|
|
249
|
+
useful_heat_LHV = efficiency_LHV * Q_ng_LHV + heat_credits
|
|
250
|
+
useful_heat_HHV = efficiency_HHV * Q_ng_HHV + heat_credits
|
|
251
|
+
|
|
252
|
+
# --- Build output DataFrame ---
|
|
253
|
+
rows = [
|
|
254
|
+
('--- INPUTS ---', ''),
|
|
255
|
+
('NG flow (Nm3/h)', round(self.ng_flow, 2)),
|
|
256
|
+
('LHV (kWh/Nm3)', round(LHV_kWh, 4)),
|
|
257
|
+
('HHV (kWh/Nm3)', round(HHV_kWh, 4)),
|
|
258
|
+
('T flue gas (C)', round(self.T_fg, 1)),
|
|
259
|
+
('O2 dry (%)', round(O2_dry_pct, 2)),
|
|
260
|
+
('Boiler type', self.boiler_type),
|
|
261
|
+
('--- COMBUSTION ---', ''),
|
|
262
|
+
('Air/fuel ratio (Nm3/Nm3)', round(total_air, 3)),
|
|
263
|
+
('Excess air (%)', round(excess_air_pct, 1)),
|
|
264
|
+
('Flue gas flow (Nm3/h)', round(fg_flow, 1)),
|
|
265
|
+
('Condensation T (C)', round(T_condensation, 1)),
|
|
266
|
+
('--- HEAT BALANCE (LHV) ---', ''),
|
|
267
|
+
('NG heat input (kW)', round(Q_ng_LHV, 1)),
|
|
268
|
+
('Flue gas loss (kW)', round(flue_gas_loss, 1)),
|
|
269
|
+
('CO loss (kW)', round(CO_loss, 2)),
|
|
270
|
+
('Radiation loss (kW)', round(radiation_loss, 2)),
|
|
271
|
+
('Condensation recovery (kW)', round(condensation_recovery, 2)),
|
|
272
|
+
('Total losses (kW)', round(total_losses_LHV, 1)),
|
|
273
|
+
('Heat credits (kW)', round(heat_credits, 1)),
|
|
274
|
+
('Useful heat (kW)', round(useful_heat_LHV, 1)),
|
|
275
|
+
('Efficiency LHV (%)', round(efficiency_LHV * 100, 2)),
|
|
276
|
+
('--- HEAT BALANCE (HHV) ---', ''),
|
|
277
|
+
('Efficiency HHV (%)', round(efficiency_HHV * 100, 2)),
|
|
278
|
+
]
|
|
279
|
+
|
|
280
|
+
self.df = pd.DataFrame(rows, columns=['Parameter', 'Value'])
|
|
281
|
+
self.df = self.df.set_index('Parameter')
|
|
282
|
+
|
|
283
|
+
# Store key results as attributes for programmatic access
|
|
284
|
+
self.LHV_kWh_Nm3 = LHV_kWh
|
|
285
|
+
self.HHV_kWh_Nm3 = HHV_kWh
|
|
286
|
+
self.Q_ng_LHV = Q_ng_LHV
|
|
287
|
+
self.Q_ng_HHV = Q_ng_HHV
|
|
288
|
+
self.efficiency_LHV = efficiency_LHV
|
|
289
|
+
self.efficiency_HHV = efficiency_HHV
|
|
290
|
+
self.useful_heat_LHV = useful_heat_LHV
|
|
291
|
+
self.useful_heat_HHV = useful_heat_HHV
|
|
292
|
+
self.excess_air_pct = excess_air_pct
|
|
293
|
+
self.air_fuel_ratio = total_air
|
|
294
|
+
self.fg_flow_Nm3h = fg_flow
|
|
295
|
+
self.T_condensation = T_condensation
|
|
296
|
+
self.condensation_recovery = condensation_recovery
|
|
297
|
+
self.flue_gas_loss = flue_gas_loss
|
|
298
|
+
self.radiation_loss = radiation_loss
|
|
299
|
+
self.CO_loss = CO_loss
|
|
300
|
+
self.total_losses_LHV = total_losses_LHV
|
|
301
|
+
|
|
302
|
+
return self.df
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: energysystemmodels
|
|
3
|
-
Version:
|
|
3
|
+
Version: 20260416006
|
|
4
4
|
Summary: Energy systems models are the mathematical models that are developed in order to represent as reliably as possible various energy-related problems.
|
|
5
5
|
Author: Zoheir HADID
|
|
6
6
|
Author-email: zoheir.hadid@gmail.com
|
|
@@ -150,6 +150,7 @@ src/ThermodynamicCycles/Aeraulic/StraightPipe.py
|
|
|
150
150
|
src/ThermodynamicCycles/Aeraulic/__init__.py
|
|
151
151
|
src/ThermodynamicCycles/Combustion/Combustor_cantera.py
|
|
152
152
|
src/ThermodynamicCycles/Combustion/Gaz_Boiler.py
|
|
153
|
+
src/ThermodynamicCycles/Combustion/NG_Boiler_Efficiency_EN1295X.py
|
|
153
154
|
src/ThermodynamicCycles/Combustion/NG_Heating_Value.py
|
|
154
155
|
src/ThermodynamicCycles/Combustion/__init__.py
|
|
155
156
|
src/ThermodynamicCycles/Compressor/Compressor.py
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/AirPort/AirPort.py
RENAMED
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/AirPort/__init__.py
RENAMED
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/Coil/CoolingCoil.py
RENAMED
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/Coil/CoolingCoil_Expert.py
RENAMED
|
File without changes
|
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/Coil/CoolingCoil_Tc.py
RENAMED
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/Coil/HeatingCoil.py
RENAMED
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/Coil/HeatingCoilNUT.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/FreshAir/AirMix.py
RENAMED
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/FreshAir/FreshAir.py
RENAMED
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/FreshAir/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/GenericAHU/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/HeatRecovery/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/Humidification/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/air_humide/__init__.py
RENAMED
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/AHU/air_humide/air_humide.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/Distillation/Deethanizer.py
RENAMED
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/Distillation/PengRobinson.py
RENAMED
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/Distillation/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/Facture/SONALGAZ_Elec.py
RENAMED
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/Facture/SONALGAZ_gaz.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/Facture/coefficients_elec.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/HeatTransfer/CompositeWall.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/HeatTransfer/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/MeteoCiel/DJU_costic.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/nodeeditor/utils.py
RENAMED
|
File without changes
|
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/NodeEditor/tests/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/OpenWeatherMap/__init__.py
RENAMED
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/OpenWeatherMap/config.ini
RENAMED
|
File without changes
|
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/OpenWeatherMap/data.json
RENAMED
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/OpenWeatherMap/get_weather.py
RENAMED
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PV/ProductionElectriquePV.py
RENAMED
|
File without changes
|
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PinchAnalysis/PinchAnalysis.py
RENAMED
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PinchAnalysis/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/__init__.py
RENAMED
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/calc_conf.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/calc_window.py
RENAMED
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/config.ini
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/nodes/input.py
RENAMED
|
File without changes
|
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/nodes/output.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/PyqtSimulator/nodes/turbine.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Chiller.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/ThermodynamicCycles/Connect.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/src/TkinterGUI/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{energysystemmodels-20260416004 → energysystemmodels-20260416006}/test/test_api_diagnostic.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|