Skip to content

Test for pull requests - #2

Open
rabatkri wants to merge 45 commits into
jschneidewind:masterfrom
water-splitting-group:Testing
Open

Test for pull requests#2
rabatkri wants to merge 45 commits into
jschneidewind:masterfrom
water-splitting-group:Testing

Conversation

@rabatkri

Copy link
Copy Markdown
  • update of PKG info
  • fixing of paths
  • NEW in PV_E_base.md file: see Photovoltaics > Power (kW)

Comment thread src/pyH2A/Plugins/Photovoltaic_Plugin.py Outdated
freitandreas and others added 28 commits December 13, 2024 12:07
calculate_osmosis_power_demand,
calculate_amount_of_PV

Added lines in
__init__
calculate_stack_replacement
calculate_yearly_h2_production,
annual_electrolyzer_operation_calculation, and
annual_electroyzer_operation_calculation_with_battery
  → relative file paths
  → added photovoltaic_plugin
- added Foreground_LCI_Database_Plugin
- added pytest
- src → pyH2A
- data → tests (removed all unnecessary files)
…ions analysis to replacement plugin, changing waterfall analysis to handle other units, deactiving multiprocessing in monte carlo
- Introduced Optimization_Analysis class for optimizing pyH2A models.
- Added discounted_cash_flow_function_1D for 1D discounted cash flow calculations.
- Enhanced input processing in process_cell to handle non-numerical values with warnings.
- Fixed typo in Monte_Carlo_Analysis documentation.
- created plugin subdirectories
- updated import_plugin and file_import in input_modification
- adjusted Markdown Input Files
- simplified tests/ directory structure
	new file:   .vscode/settings.json
	modified:   README.md
	modified:   pyH2A/Plugins/Energy/Hourly_Irradiation_Plugin.py
	modified:   pyH2A/Plugins/Energy/Photovoltaic_Plugin.py
	new file:   pyH2A/log_handler.py
	modified:   pyH2A/run_pyH2A.py
	modified:   pyproject.toml
	modified:   requirements.txt
	deleted:    setup.cfg
	renamed:    data/pyH2A_execution.py -> pyH2A/Plugins/Photovoltaic_Plugin.py
	new file:   exec.py
	modified:   pyH2A/Plugins/Background/Foreground_LCI_Database_Plugin.py
	modified:   pyH2A/Plugins/Background/Multiple_Modules_Plugin.py
	modified:   pyH2A/Plugins/Background/Production_Scaling_Plugin.py
	modified:   pyH2A/Plugins/Background/Replacement_Plugin.py
	modified:   pyH2A/Plugins/Energy/Battery_Plugin.py
	modified:   pyH2A/Plugins/Energy/Hourly_Irradiation_Plugin.py
	modified:   pyH2A/Plugins/Energy/Photovoltaic_Plugin.py
	modified:   pyH2A/Plugins/Energy/Power_Management_Plugin.py
	modified:   pyH2A/Plugins/Energy/Solar_Concentrator_Plugin.py
	modified:   pyH2A/Plugins/Finance/Capital_Cost_Plugin.py
	modified:   pyH2A/Plugins/Finance/Fixed_Operating_Cost_Plugin.py
	deleted:    pyH2A/Plugins/Photovoltaic_Plugin.py
	new file:   pyH2A/Plugins/Plugin.py
	modified:   pyH2A/log_handler.py
	modified:   pyH2A/run_pyH2A.py
	modified:   doc/pyH2A/discounted_cash_flow.rst
	modified:   doc/pyH2A/pyH2A.rst
	modified:   pyH2A/Analysis/Cost_Contributions_Analysis.py
	modified:   pyH2A/Analysis/Monte_Carlo_Analysis.py
    modified:   pyH2A/Analysis/Optimization_Analysis.py
	modified:   pyH2A/Analysis/Sensitivity_Analysis.py
    modified:   pyH2A/Analysis/Waterfall_Analysis.py
	renamed:    pyH2A/Discounted_Cash_Flow.py -> pyH2A/DiscountedCashFlow.py
	modified:   pyH2A/LCA/LCA.py
	modified:   pyH2A/Plugins/Background/ForegroundLCIDatabasePlugin.py
	modified:   pyH2A/Plugins/Background/MultipleModulesPlugin.py
	modified:   pyH2A/Plugins/Background/ProductionScalingPlugin.py
	modified:   pyH2A/Plugins/Background/ReplacementPlugin.py
	modified:   pyH2A/Plugins/Energy/BatteryPlugin.py
	modified:   pyH2A/Plugins/Energy/HourlyIrradiationPlugin.py
	modified:   pyH2A/Plugins/Energy/PhotovoltaicPlugin.py
	modified:   pyH2A/Plugins/Energy/PowerManagementPlugin.py
	modified:   pyH2A/Plugins/Energy/SolarConcentratorPlugin.py
	modified:   pyH2A/Plugins/Finance/CapitalCostPlugin.py
	modified:   pyH2A/Plugins/Finance/FixedOperatingCostPlugin.py
	modified:   pyH2A/Plugins/Finance/VariableOperatingCostPlugin.py
	deleted:    pyH2A/Plugins/Hydrogen/BatteryPlugin.py
	modified:   pyH2A/Plugins/Hydrogen/CatalystSeparationPlugin.py
	modified:   pyH2A/Plugins/Hydrogen/ElectrolyzerPlugin.py
	modified:   pyH2A/Plugins/Hydrogen/PECPlugin.py
	modified:   pyH2A/Plugins/Hydrogen/PhotocatalyticPlugin.py
	deleted:    pyH2A/Plugins/Hydrogen/PowerManagementPlugin.py
	modified:   pyH2A/Plugins/Hydrogen/ReverseOsmosisPlugin.py
	modified:   pyH2A/Plugins/Hydrogen/StoredPowerElectrolysisPlugin.py
	modified:   pyH2A/Plugins/Plugin.py
	modified:   pyH2A/Utilities/input_modification.py
	modified:   pyH2A/Utilities/plugin_input_output_processing.py
	modified:   pyH2A/run_pyH2A.py
	modified:   pyproject.toml
	modified:   pyH2A/Plugins/Hydrogen/ElectrolyzerPlugin.py
	modified:   pyH2A/Plugins/Hydrogen/ReverseOsmosisPlugin.py
	modified:   pyH2A/Plugins/Hydrogen/StoredPowerElectrolysisPlugin.py
	modified:   pyproject.toml
- added exception to lca to catch missing uuids in lca files
- corrected lca exports
- extended pytests with comparing dcf snapshots
- added snapshot options to pyH2A
@freitandreas
freitandreas deleted the Testing branch April 11, 2025 09:08
- separated tests into multiple test scripts
- added how to save snaptshots in README
	modified:   pyH2A/Plugins/Energy/PhotovoltaicPlugin.py
	modified:   pyH2A/Plugins/Hydrogen/ElectrolyzerPlugin.py
	modified:   pyH2A/Plugins/Hydrogen/ReverseOsmosisPlugin.py
- added --update-snapshots flag to pytest
- new tests/ directory structure: different scenarios (pve, pec, photocatalytic), different modes (base, opt, no_conc)
- automatic plugin testing
- added more test modes to pve
- fixed bugs with distance_time analysis
- added docstrings, comments, and more spaces to test methods
	modified:   tests/.results.txt
	modified:   tests/PVE/monte_carlo/Results/PV_E_Monte_Carlo.csv
	modified:   tests/test_pyh2a_scenarios_and_plugins.py
	modified:   tests/test_utils.py
new file:   doc/analysis/ComparativeMCAnalysis.rst
deleted:    doc/analysis/Comparative_MC_Analysis.rst
new file:   doc/analysis/CostContributionsAnalysis.rst
deleted:    doc/analysis/Cost_Contributions_Analysis.rst
new file:   doc/analysis/DevelopmentDistanceTimeAnalysis.rst
deleted:    doc/analysis/Development_Distance_Time_Analysis.rst
new file:   doc/analysis/MonteCarloAnalysis.rst
deleted:    doc/analysis/Monte_Carlo_Analysis.rst
new file:   doc/analysis/SensitivityAnalysis.rst
deleted:    doc/analysis/Sensitivity_Analysis.rst
new file:   doc/analysis/WaterfallAnalysis.rst
deleted:    doc/analysis/Waterfall_Analysis.rst
modified:   doc/analysis/analysis.rst
new file:   doc/development.rst
modified:   doc/guide.rst
modified:   doc/index.rst
new file:   doc/plugins/BatteryPlugin.rst
modified:   doc/plugins/CapitalCostPlugin.rst
modified:   doc/plugins/CatalystSeparationPlugin.rst
modified:   doc/plugins/FixedOperatingCostPlugin.rst
new file:   doc/plugins/ForegroundLCIDatabasePlugin.rst
modified:   doc/plugins/HourlyIrradiationPlugin.rst
modified:   doc/plugins/MultipleModulesPlugin.rst
modified:   doc/plugins/PECPlugin.rst
modified:   doc/plugins/PhotocatalyticPlugin.rst
modified:   doc/plugins/PhotovoltaicPlugin.rst
new file:   doc/plugins/PowerManagementPlugin.rst
modified:   doc/plugins/ProductionScalingPlugin.rst
modified:   doc/plugins/ReplacementPlugin.rst
new file:   doc/plugins/ReverseOsmosisPlugin.rst
modified:   doc/plugins/SolarConcentratorPlugin.rst
modified:   doc/plugins/SolarThermalPlugin.rst
new file:   doc/plugins/StoredPowerElectrolysisPlugin.rst
modified:   doc/plugins/VariableOperatingCostPlugin.rst
modified:   doc/plugins/plugins.rst
renamed:    doc/pyH2A/discounted_cash_flow.rst -> doc/pyH2A/DiscountedCashFlow.rst
new file:   doc/tests/test_pyh2a_scenarios_and_plugins.rst
new file:   doc/tests/test_utils.rst
new file:   doc/tests/tests.rst
renamed:    pyH2A/Analysis/Comparative_MC_Analysis.py -> pyH2A/Analysis/ComparativeMCAnalysis.py
renamed:    pyH2A/Analysis/Cost_Contributions_Analysis.py -> pyH2A/Analysis/CostContributionsAnalysis.py
renamed:    pyH2A/Analysis/Development_Distance_Time_Analysis.py -> pyH2A/Analysis/DevelopmentDistanceTimeAnalysis.py
renamed:    pyH2A/Analysis/Monte_Carlo_Analysis.py -> pyH2A/Analysis/MonteCarloAnalysis.py
renamed:    pyH2A/Analysis/Optimization_Analysis.py -> pyH2A/Analysis/OptimizationAnalysis.py
renamed:    pyH2A/Analysis/Sensitivity_Analysis.py -> pyH2A/Analysis/SensitivityAnalysis.py
renamed:    pyH2A/Analysis/Waterfall_Analysis.py -> pyH2A/Analysis/WaterfallAnalysis.py
modified:   pyH2A/Example/210511_Future_PEC_Type_4.md
modified:   pyH2A/Example/210613_PV_E.md
modified:   pyH2A/Example/211109_Future_PEC_Type_1_Figure_Test.md
modified:   pyH2A/Utilities/input_modification.py
deleted:    tests/.results.txt
modified:   tests/PEC/base/pec-base.md
modified:   tests/PEC/base/pec-base_template.md
modified:   tests/PEC/no_conc/pec-no_conc.md
modified:   tests/PEC/no_conc/pec-no_conc_template.md
modified:   tests/PEC/opt/pec-opt.md
modified:   tests/PEC/opt/pec-opt_template.md
modified:   tests/PVE/base/pve-base.md
modified:   tests/PVE/base/pve-base_template.md
modified:   tests/PVE/comparative_mc/pec-monte_carlo.md
modified:   tests/PVE/comparative_mc/photocatalytic-monte_carlo.md
modified:   tests/PVE/comparative_mc/pve-comparative_mc.md
modified:   tests/PVE/comparative_mc/pve-comparative_mc_template.md
modified:   tests/PVE/comparative_mc/pve-monte_carlo.md
modified:   tests/PVE/distance_time/pve-distance_time.md
modified:   tests/PVE/distance_time/pve-distance_time_template.md
deleted:    tests/PVE/monte_carlo/Results/PV_E_Monte_Carlo.csv
modified:   tests/PVE/monte_carlo/pve-monte_carlo.md
modified:   tests/PVE/monte_carlo/pve-monte_carlo_template.md
modified:   tests/PVE/opt/pve-opt.md
modified:   tests/PVE/opt/pve-opt_template.md
modified:   tests/PVE/sensitivity/pve-sensitivity.md
modified:   tests/PVE/sensitivity/pve-sensitivity_template.md
modified:   tests/PVE/waterfall/pve-waterfall.md
modified:   tests/PVE/waterfall/pve-waterfall_template.md
modified:   tests/Photocatalytic/base/photocatalytic-base.md
modified:   tests/Photocatalytic/base/photocatalytic-base_template.md
modified:   tests/Photocatalytic/limit/photocatalytic-limit.md
modified:   tests/Photocatalytic/limit/photocatalytic-limit_template.md
renamed:    conftest.py -> tests/conftest.py
modified:   tests/test_utils.py
- cleaned up warnings in documentation and separated plugins into different subfolders
- removed all test warnings
- changed all paths to internal pyH2A notation
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants