Source code for pyuff_ustb.objects.probes.matrix_array

from pyuff_ustb.objects.probes.probe import Probe
from pyuff_ustb.objects.uff import compulsory_property, optional_property
from pyuff_ustb.readers import LazyScalar


[docs]class MatrixArray(Probe): """:class:`Uff` class to define a matrix array probe geometry. :class:`MatrixArray` contains defines an 2D array of elements with regularly spaced in both dimensions. Original authors: Alfonso Rodriguez-Molares (alfonsom@ntnu.no) """ # Compulsory properties @compulsory_property def pitch_x(self) -> float: "Distance between the elements in the azimuth direction [m]" return LazyScalar(self._reader["pitch_x"]) @compulsory_property def pitch_y(self) -> float: "Distance between the elements in the elevation direction [m]" return LazyScalar(self._reader["pitch_y"]) @compulsory_property def N_x(self) -> int: "Number of elements in the azimuth direction" return LazyScalar(self._reader["N_x"]) @compulsory_property def N_y(self) -> int: "Number of elements in the elevation direction" return LazyScalar(self._reader["N_y"]) # Optional properties @optional_property def element_width(self) -> float: "Width of the elements in the azimuth direction [m]" return LazyScalar(self._reader["element_width"]) @optional_property def element_height(self) -> float: "Height of the elements in the elevation direction [m]" return LazyScalar(self._reader["element_height"])