hydesign.sf.sf

Classes

sf

Class to inherit from when all output variables are explicit.

Module Contents

class hydesign.sf.sf.sf(N_time, sf_azimuth_altitude_efficiency_table, latitude, longitude, altitude, dni)[source]

Bases: openmdao.api.ExplicitComponent

Class to inherit from when all output variables are explicit.

Parameters:

**kwargs (dict of keyword arguments) – Keyword arguments that will be mapped into the Component options.

_has_compute_partials[source]

If True, the instance overrides compute_partials.

Type:

bool

_vjp_hash[source]

Hash value for the last set of inputs to the compute_primal function.

Type:

int or None

_vjp_fun[source]

The vector-Jacobian product function.

Type:

function or None

N_time[source]
sf_azimuth_altitude_efficiency_table[source]
latitude[source]
longitude[source]
altitude[source]
dni[source]
setup()[source]

Sets up the inputs and outputs for the solar field component in OpenMDAO. Inputs are solar field area and receiver heights; outputs are maximum fluxes and AOI.

compute(inputs, outputs)[source]

Computes the solar flux based on solar position, efficiency tables, and receiver heights. Uses interpolation to calculate fluxes on cpv, cst, and H2 receivers.

Parameters:
  • inputs (dict) – Dictionary of input values including solar field area and receiver heights.

  • outputs (dict) – Dictionary to store computed maximum fluxes for cpv, cst, and H2 receivers.

calculate_flux_sf(sf_azimuth_altitude_efficiency_table, tower_height, sf_area, sun_altitude, sun_azimuth, dni)[source]

Calculate the effective solar flux for a CPV system using efficiency interpolation.

Parameters: - sf_azimuth_altitude_efficiency_table (dict): Efficiency table with azimuth, altitude, tower heights, and sf areas. - tower_height (float): The tower height to be used for interpolation. - sf_area (float): The solar field area to calculate the flux. - sun_altitude (array-like): Array of solar altitude angles. - sun_azimuth (array-like): Array of solar azimuth angles. - dni (pd.Series): Direct Normal Irradiance (DNI) values with time-based index.

Returns: - pd.Series: Effective flux values (flux_sf_t) with the same index as the dni.