Package: pvlab
=================The PVLab Project=================Introduction------------PVLAB is a project devoted to the development and improvement of scientificsoftware for the measurement, calibration and modeling of the performance ofphotovoltaic devices and solar sensors. PVLAB package born from the effortsin data treatment performed during the calibration of pyranometers atthe `Laboratory of Photovoltaic Solar Energy (PVLab)`_ of the `Research Centerfor Energy, Environment and Technology (CIEMAT)`_ in Madrid, Spain.In next releases, ``pvlab`` will provide sets of tools, mainly consisting inclasses and functions, to perform the data treatment for the calibration ofpyranometers and other type of solar sensors and photovoltaic devices.Eventually, ``pvlab`` will try to widen its scope to further calibrationprocedures of solar sensors and photovoltaic devices.History-------The origin of ``pvlab`` is a python tool, named ``calibration``, which isbeing developed since 2019 in PVLab-CIEMAT for its own use. It wasoriginally designed to manage the big amount of data generated duringthe outdoor measurements, while performing the routine calibrationof pyranometers.Soon, both the *Python programming language* and the ``calibration`` toolthemselves proved to be quick and reliable methods for data treatment.Gradually, the code grew in complexity, whereas new functionalities werebeing enabled. Indeed, to the basic requirements of data *I/O* and a firstblock of core calculations, some others joined, like fine data-filtering,determination of error sources and total uncertainty, tools for generationof reports, graphics and further calibration records.Finally, when it was concluded the development of the version 2.0.0 of theapplication ``calibration``, it became clear that a formal package shouldbe released, separately from the former tool. By doing so, some of theresources created are now at disposal of the scientific community, under a3-clause BSD License.Development-----------One procedure chosen for the early development of ``pvlab`` is that,as functions and classes created for its use at the lab are being adaptedfrom their specific purpose to address more general cases, and theirrobustness and performance is considered sufficiently tested, they will beprogresively incorporated to the ``pvlab`` library.In order to clarify the features and abilities of the objects created,docstrings of relevant functions or classess contain examples, which havebeen verified with the python built-in package ``doctest``.In addition, there is a *test_[module]* ready for each one, checked by usingthe *unittest* built-in package.On the other hand, author's hope is that ``pvlab`` will eventuallyturn into a **community-developed library**, so contributions andconstructive comments are welcome. At this respect, ``pvlab`` adopts theaim of providing resources in the context of measurement, calibration,determination of uncertainty, validation techniques and potentially,many other utilities for the improvement of data treatment for solar sensorsand photovoltaic devices.In the long term, a more general purpose lies in the background, whichis the advance of data science and the development of software projects forscientific purposes, even "knocking at the doors" of data mining, machinelearning and deep learning techniques... _Research Center for Energy, Environment and Technology (CIEMAT): https://www.ciemat.es.. _Laboratory of Photovoltaic Solar Energy (PVLab): pvlab.ciemat.es