hydesign.pv.pv_hybridization

Classes

pvp_with_degradation

PV degradation model providing the PV degradation time series throughout the lifetime of the plant

existing_pvp

PV power plant model : It computes the solar power output during the lifetime of the plant using data from the datasheet

pvp_degradation_linear

PV degradation model providing the PV degradation time series throughout the lifetime of the plant,

shadow

pv loss model due to shadows of wt

Functions

get_solar_time_series(surface_tilt, surface_azimuth, ...)

Computing the output power time series of the PV plant

get_solar_time_series_existing_pv(surface_tilt, ...[, ...])

Computing the output power time series of the existing PV plant

get_linear_solar_degradation(pv_deg_per_year, life_h)

Computes the PV degradation

Module Contents

class hydesign.pv.pv_hybridization.pvp_with_degradation(N_limit, life_y, life_h, pv_deg=[0, 25 * 1 / 100])[source]

Bases: openmdao.api.ExplicitComponent

PV degradation model providing the PV degradation time series throughout the lifetime of the plant

N_limit[source]
life_y[source]
life_h[source]
pv_deg[source]
setup()[source]

Declare inputs and outputs.

Available attributes:

name pathname comm options

compute(inputs, outputs)[source]

Compute outputs given inputs. The model is assumed to be in an unscaled state.

An inherited component may choose to either override this function or to define a compute_primal function.

Parameters:
  • inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].

  • outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].

  • discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.

  • discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.

class hydesign.pv.pv_hybridization.existing_pvp(weather_fn, N_time, latitude, longitude, altitude, inverter_eff_curve, pdc0, v_mp, i_mp, v_oc, i_sc, alpha_sc_spec, beta_voc_spec, gamma_pdc, cells_in_series, temp_ref, celltype, panel, tracking, pac0_inv, eta_max, eta_euro, modules_per_string, strings_per_inverter, number_of_inverters, soiling, shading, snow, mismatch, wiring, connections, lid, nameplate_rating, age, availability)[source]

Bases: openmdao.api.ExplicitComponent

PV power plant model : It computes the solar power output during the lifetime of the plant using data from the datasheet

Parameters:
  • N_time (Number of time-steps in weather simulation)

  • inverter_eff_curve (inverter efficiency curve that is imported.)

  • pdc0 (Module nominal power)

  • v_mp (Module maximum power voltage)

  • i_mp (Module maximum power current)

  • v_oc (Module open circuit voltage)

  • i_sc (Module short circuit current)

  • alpha_sc_spec (short circuit temperature coefficient)

  • beta_voc_spec (open circuit temperature coefficient)

  • gamma_pdc (power temperature coefficient)

  • cells_in_series (number of cells in series)

  • temp_ref (reference temperature (25°))

  • celltype (type of cell (mono/poly Si))

  • panel (type of panel (monofacial/bifacial))

  • tracking (fixed/single-axis)

  • pac0_inv (Inverter AC nominal power)

  • eta_max (maximum inverter efficiency)

  • eta_euro (european inverter efficiency)

  • modules_per_string (number of modules per string)

  • strings_per_inverter (number of strings per inverter)

  • number_of_inverters (number of inverters)

  • soiling (losses due to soiling (%))

  • shading (losses due to shading (%))

  • snow (losses due to snow (%))

  • mismatch (lossesdue to mismatch (%))

  • wiring (losses due to wiring (%))

  • connections (losses due to connections (%))

  • lid (losses due to lid (%))

  • nameplate_rating (losses due to nameplate rating (%))

  • age (losses due to age)

  • availability (losses due to availability (%))

weather_fn[source]
N_time[source]
latitude[source]
longitude[source]
altitude[source]
inverter_eff_curve[source]
pdc0[source]
v_mp[source]
i_mp[source]
i_sc[source]
v_oc[source]
alpha_sc_spec[source]
beta_voc_spec[source]
gamma_pdc[source]
cells_in_series[source]
temp_ref[source]
celltype[source]
panel[source]
tracking[source]
pac0_inv[source]
eta_max[source]
eta_euro[source]
modules_per_string[source]
strings_per_inverter[source]
number_of_inverters[source]
soiling[source]
shading[source]
snow[source]
mismatch[source]
wiring[source]
connections[source]
lid[source]
nameplate_rating[source]
age[source]
availability[source]
weather = None[source]
pvloc[source]
setup()[source]

Declare inputs and outputs.

Available attributes:

name pathname comm options

compute(inputs, outputs)[source]

Compute outputs given inputs. The model is assumed to be in an unscaled state.

An inherited component may choose to either override this function or to define a compute_primal function.

Parameters:
  • inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].

  • outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].

  • discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.

  • discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.

class hydesign.pv.pv_hybridization.pvp_degradation_linear(life_h)[source]

Bases: openmdao.api.ExplicitComponent

PV degradation model providing the PV degradation time series throughout the lifetime of the plant, considering a fixed linear degradation of the PV panels

life_h[source]
setup()[source]

Declare inputs and outputs.

Available attributes:

name pathname comm options

compute(inputs, outputs)[source]

Compute outputs given inputs. The model is assumed to be in an unscaled state.

An inherited component may choose to either override this function or to define a compute_primal function.

Parameters:
  • inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].

  • outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].

  • discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.

  • discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.

class hydesign.pv.pv_hybridization.shadow(N_time)[source]

Bases: openmdao.api.ExplicitComponent

pv loss model due to shadows of wt

N_time[source]
setup()[source]

Declare inputs and outputs.

Available attributes:

name pathname comm options

compute(inputs, outputs)[source]

Compute outputs given inputs. The model is assumed to be in an unscaled state.

An inherited component may choose to either override this function or to define a compute_primal function.

Parameters:
  • inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].

  • outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].

  • discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.

  • discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.

hydesign.pv.pv_hybridization.get_solar_time_series(surface_tilt, surface_azimuth, solar_MW, land_use_per_solar_MW, DC_AC_ratio, tracking, pvloc, weather)[source]

Computing the output power time series of the PV plant

Parameters:
  • surface_tilt (surface tilt of the PV panels)

  • surface_azimuth (azimuth of the PV panels)

  • DC_AC_ratio (DC-AC ratio of the PV converter)

  • solar_MW (AC nominal capacity of the PV power plant)

Returns:

solar_t

Return type:

PV power time series

hydesign.pv.pv_hybridization.get_solar_time_series_existing_pv(surface_tilt, surface_azimuth, land_use_per_solar_MW, DC_AC_ratio, module_parameters, inverter_parameters, losses_parameters, existing_inverter_efficiency_curve, modules_per_string, strings_per_inverter, number_of_inverters, pvloc, weather, gcr=0.2857142857142857, plot=False)[source]

Computing the output power time series of the existing PV plant

Returns:

solar_t

Return type:

PV power time series

hydesign.pv.pv_hybridization.get_linear_solar_degradation(pv_deg_per_year, life_h)[source]

Computes the PV degradation

Parameters:
  • pv_deg_per_year (fixed yearly degradation of PV panels)

  • life_h (lifetime of the plant in hours)

Returns:

SoH_pv

Return type:

degradation of the PV plant throughout the lifetime