solarforecastarbiter.datamodel.Site¶
-
class
solarforecastarbiter.datamodel.
Site
(name: str, latitude: float, longitude: float, elevation: float, timezone: str, site_id: str = '', provider: str = '', extra_parameters: str = '', climate_zones: Tuple[str, ...] = ())[source]¶ Class for keeping track of Site metadata.
Parameters: - name (str) – Name of the Site, e.g. Desert Rock
- latitude (float) – Latitude of the Site in decimal degrees north of the equator, e.g. 36.62373
- longitude (float) – Longitude of the Site in decimal degrees east of the prime meridian, e.g. -116.01947
- elevation (float) – Elevation of the Site in meters above mean sea level, e.g. 1007
- timezone (str) – IANA timezone of the Site, e.g. Etc/GMT+8
- site_id (str, optional) – UUID of the Site in the API
- provider (str, optional) – Provider of the Site information.
- extra_parameters (str, optional) – The extra parameters may be used by forecasters when implementing other PV models. The framework does not provide a standard set of extra parameters or require a particular format – these are up to the site owner.
- climate_zones (tuple of str, optional) – The climate zones that the site is within
-
__init__
(name: str, latitude: float, longitude: float, elevation: float, timezone: str, site_id: str = '', provider: str = '', extra_parameters: str = '', climate_zones: Tuple[str, ...] = ()) → None¶
Methods
__init__
(name, latitude, longitude, …)from_dict
(input_dict[, raise_on_extra])Construct a dataclass from the given dict, matching keys with the class fields. replace
(**kwargs)Convience wrapper for dataclasses.replace()
to create a new dataclasses from the old with the given keys replaced.to_dict
()Convert the dataclass into a dictionary suitable for uploading to the API. Attributes
climate_zones
extra_parameters
provider
site_id