From 88a040a7ee39c3a45d12876a9ac35c43502d13a2 Mon Sep 17 00:00:00 2001 From: Cory Frontin Date: Fri, 4 Aug 2023 11:29:44 -0400 Subject: [PATCH] update hopp for h2 floris --- .../05-offshore-h2/input/turbines/osw_18MW.yaml | 5 +++-- .../to_organize/H2_Analysis/hopp_for_h2_floris.py | 15 ++++++--------- 2 files changed, 9 insertions(+), 11 deletions(-) diff --git a/examples/eco/05-offshore-h2/input/turbines/osw_18MW.yaml b/examples/eco/05-offshore-h2/input/turbines/osw_18MW.yaml index d7b6fc457..77e922448 100644 --- a/examples/eco/05-offshore-h2/input/turbines/osw_18MW.yaml +++ b/examples/eco/05-offshore-h2/input/turbines/osw_18MW.yaml @@ -32,6 +32,7 @@ blade: mass: 91 # shields [2] # t (old power-fit 82.3) # old indicates copied from the 12 but not updated for 18 generic ref_density_cp_ct: 1.225 +ref_tilt_cp_ct: 5 power_thrust_table: power: - 0.000000 @@ -188,7 +189,7 @@ power_thrust_table: - 0.140806191 - 0.125653944 - 0.117536549 - - 0.109419154 + - 0.109419154 - 0.10130176 - 0.093184365 - 0.08506697 @@ -207,7 +208,7 @@ power_thrust_table: - 0.038070477 - 0.03548898 - 0.032907484 - - 0.030325987 + - 0.030325987 - 0.02774449 - 0.025162993 - 0.022581497 diff --git a/hopp/to_organize/H2_Analysis/hopp_for_h2_floris.py b/hopp/to_organize/H2_Analysis/hopp_for_h2_floris.py index 70e2f3cac..b50a079cb 100644 --- a/hopp/to_organize/H2_Analysis/hopp_for_h2_floris.py +++ b/hopp/to_organize/H2_Analysis/hopp_for_h2_floris.py @@ -9,7 +9,7 @@ def hopp_for_h2_floris(site, scenario, technologies, wind_size_mw, solar_size_mw wind_cost_kw, solar_cost_kw, storage_cost_kw, storage_cost_kwh, kw_continuous, load, custom_powercurve, - interconnection_size_mw, grid_connected_hopp, wind_om_cost_kw,solar_om_cost_kw): + interconnection_size_mw, grid_connected_hopp=True, wind_om_cost_kw=42, solar_om_cost_kw=0, turbine_parent_path=None, ppa_price=0.0): ''' Runs HOPP for H2 analysis purposes :param site: :class:`hybrid.sites.site_info.SiteInfo`, @@ -77,9 +77,6 @@ def hopp_for_h2_floris(site, scenario, technologies, wind_size_mw, solar_size_mw ''' # Create model - if not grid_connected_hopp: - interconnection_size_mw = kw_continuous / 1000 - dispatch_options = {'battery_dispatch': 'heuristic'} technologies['grid'] = {'interconnect_kw': interconnection_size_mw * 1e3} hybrid_plant = HybridSimulation(technologies, site, dispatch_options=dispatch_options) @@ -90,11 +87,13 @@ def hopp_for_h2_floris(site, scenario, technologies, wind_size_mw, solar_size_mw storage_installed_cost_mw=storage_cost_kw * 1000, storage_installed_cost_mwh=storage_cost_kwh * 1000 )) + + hybrid_plant.set_om_costs_per_kw(pv_om_per_kw=solar_om_cost_kw, wind_om_per_kw=wind_om_cost_kw, hybrid_om_per_kw=None) if solar_size_mw > 0: hybrid_plant.pv._financial_model.FinancialParameters.analysis_period = scenario['Useful Life'] hybrid_plant.pv._financial_model.FinancialParameters.debt_percent = scenario['Debt Equity'] - hybrid_plant.pv.system_capacity_kw = solar_size_mw * 1000 + # hybrid_plant.pv.system_capacity_kw = solar_size_mw * 1000 # if scenario['ITC Available']: # hybrid_plant.pv._financial_model.TaxCreditIncentives.itc_fed_percent = 26 # else: @@ -142,10 +141,8 @@ def hopp_for_h2_floris(site, scenario, technologies, wind_size_mw, solar_size_mw powercurve_data['turbine_powercurve_specification']['turbine_power_output'] - - if 'wind' in technologies: - hybrid_plant.wind.system_capacity_by_num_turbines(wind_size_mw * 1000) - hybrid_plant.ppa_price = 0.05 + hybrid_plant.wind.system_capacity_by_num_turbines(wind_size_mw * 1000) + hybrid_plant.ppa_price = ppa_price hybrid_plant.simulate(scenario['Useful Life']) # HOPP Specific Energy Metrics