artist.data_parser.calibration_data_parser
Attributes
A logger for the calibration data parser. |
Classes
Initialize the the base data parser. |
Module Contents
- artist.data_parser.calibration_data_parser.log
A logger for the calibration data parser.
- class artist.data_parser.calibration_data_parser.CalibrationDataParser(sample_limit: int | None = None)
Initialize the the base data parser.
Parameters
- sample_limitint | None
The number specifying the maximum number of samples to be loaded (default is None).
- sample_limit = None
- abstractmethod parse_data_for_reconstruction(heliostat_data_mapping: list[tuple[str, list[pathlib.Path], list[pathlib.Path]]], heliostat_group: artist.field.heliostat_group.HeliostatGroup, scenario: artist.scenario.scenario.Scenario, bitmap_resolution: torch.Tensor = torch.tensor([artist.util.index_mapping.bitmap_resolution, artist.util.index_mapping.bitmap_resolution]), device: torch.device | None = None) tuple[torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor]
Extract measured fluxes and their respective calibration properties data.
Parameters
- heliostat_data_mappinglist[tuple[str, list[pathlib.Path], list[pathlib.Path]]]
The mapping from heliostat to calibration data files.
- heliostat_groupHeliostatGroup
The heliostat group.
- scenarioScenario
The scenario.
- bitmap_resolutiontorch.Tensor
The resolution of all bitmaps during reconstruction (default is torch.tensor([256,256])). Tensor of shape [2].
- devicetorch.device | None
The device on which to perform computations or load tensors and models (default is None). If None,
ARTISTwill automatically select the most appropriate device (CUDA or CPU) based on availability and OS.
Returns
- The measured flux density distributions.
Tensor of shape [number_of_active_heliostats, bitmap_resolution_e, bitmap_resolution_u].
- torch.Tensor
The calibration focal spots. Tensor of shape [number_of_calibration_data_points, 4].
- torch.Tensor
The incident ray directions. Tensor of shape [number_of_calibration_data_points, 4].
- torch.Tensor
The motor positions. Tensor of shape [number_of_calibration_data_points, 2].
- torch.Tensor
A mask with active heliostats and their replications. Tensor of shape [number_of_heliostats].
- torch.Tensor
The target area mapping for the heliostats. Tensor of shape [number_of_active_heliostats].
- load_flux_from_png(heliostat_flux_path_mapping: list[tuple[str, list[pathlib.Path]]], heliostat_names: list[str], resolution: torch.Tensor = torch.tensor([artist.util.index_mapping.bitmap_resolution, artist.util.index_mapping.bitmap_resolution]), device: torch.device | None = None) torch.Tensor
Load flux density distributions as tensors from png images.
Note that the order of width and height are reversed in
PILandtorch.PILtakes (width, height), whiletorchtensors are [height, width].Parameters
- heliostat_flux_path_mappinglist[tuple[str, list[pathlib.Path]]]
The mapping of heliostats and their measured flux density distributions.
- heliostat_nameslist[str]
All possible heliostat names.
- resolutiontorch.Tensor
The resolution of the loaded png files (default is torch.tensor([256,256])). Tensor of shape [2].
- devicetorch.device | None
The device on which to perform computations or load tensors and models (default is None). If None,
ARTISTwill automatically select the most appropriate device (CUDA or CPU) based on availability and OS.
Returns
- torch.Tensor
The measured flux density distributions. Tensor of shape [number_of_active_heliostats, bitmap_resolution_e, bitmap_resolution_u].