pvlib.iotools.read_bsrn#

pvlib.iotools.read_bsrn(filename, logical_records=('0100',))[source]#

Read a BSRN station-to-archive file into a DataFrame.

The BSRN (Baseline Surface Radiation Network) is a world wide network of high-quality solar radiation monitoring stations as described in [1]. The function is able to parse logical records (LR) 0100, 0300, and 0500. LR0100 contains the basic measurements, which include global, diffuse, and direct irradiance, as well as downwelling long-wave radiation [2]. Future updates may include parsing of additional data and metadata.

BSRN files are freely available and can be accessed via FTP [3]. The username and password for the BSRN FTP server can be obtained for free as described in the BSRN’s Data Release Guidelines [3].

Parameters:
  • filename (str or path-like) – Name or path of a BSRN station-to-archive data file

  • logical_records (list or tuple, default: ('0100',)) – List of the logical records (LR) to parse. Options include: ‘0100’, ‘0300’, and ‘0500’.

Returns:

  • data (DataFrame) – A DataFrame with the columns as described below. For a more extensive description of the variables, consult [2]. An empty DataFrame is returned if the specified logical records were not found.

  • metadata (dict) – Dictionary containing metadata (primarily from LR0004).

Notes

The data DataFrame for LR0100 includes the following fields:

Key

Format

Description

Logical record 0100

ghi†

float

Mean global horizontal irradiance [W/m^2]

dni†

float

Mean direct normal irradiance [W/m^2]

dhi†

float

Mean diffuse horizontal irradiance [W/m^2]

lwd†

float

Mean. downward long-wave radiation [W/m^2]

temp_air

float

Air temperature [°C]

relative_humidity

float

Relative humidity [%]

pressure

float

Atmospheric pressure [hPa]

Logical record 0300

gri†

float

Mean ground-reflected irradiance [W/m^2]

lwu†

float

Mean long-wave upwelling irradiance [W/m^2]

net_radiation†

float

Mean net radiation (net radiometer) [W/m^2]

Logical record 0500

uva_global†

float

Mean UV-A global irradiance [W/m^2]

uvb_direct†

float

Mean UV-B direct irradiance [W/m^2]

uvb_global†

float

Mean UV-B global irradiance [W/m^2]

uvb_diffuse†

float

Mean UV-B diffuse irradiance [W/m^2]

uvb_reflected†

float

Mean UV-B reflected irradiance [W/m^2]

† Marked variables have corresponding columns for the standard deviation (_std), minimum (_min), and maximum (_max) calculated from the 60 samples that are average into each 1-minute measurement.

Hint

According to [2] “All time labels in the station-to-archive files denote the start of a time interval.” This corresponds to left bin edge labeling.

References