openlifu.xdc.element.Element

class openlifu.xdc.element.Element(index: "Annotated[int, OpenLIFUFieldData('Element index', 'Element index')]" = 0, x: "Annotated[float, OpenLIFUFieldData('X position', 'X position of the element')]" = 0, y: "Annotated[float, OpenLIFUFieldData('Y position', 'Y position of the element')]" = 0, z: "Annotated[float, OpenLIFUFieldData('Z position', 'Z position of the element')]" = 0, az: "Annotated[float, OpenLIFUFieldData('Azimuth angle (rad)', 'Azimuth angle of the element')]" = 0, el: "Annotated[float, OpenLIFUFieldData('Elevation angle (rad)', 'Elevation angle of the element')]" = 0, roll: "Annotated[float, OpenLIFUFieldData('Roll angle (rad)', 'Roll angle of the element')]" = 0, w: "Annotated[float, OpenLIFUFieldData('Width', 'Width of the element in the x dimension')]" = 1, l: "Annotated[float, OpenLIFUFieldData('Length', 'Length of the element in the y dimension')]" = 1, impulse_response: "Annotated[np.ndarray, OpenLIFUFieldData('Impulse response', 'Impulse response of the element')]" = <factory>, impulse_dt: "Annotated[float, OpenLIFUFieldData('Impulse response timestep', 'Impulse response timestep')]" = 1, pin: "Annotated[int, OpenLIFUFieldData('Pin', 'Channel pin to which the element is connected')]" = -1, units: "Annotated[str, OpenLIFUFieldData('Units', 'Spatial units')]" = 'mm')[source]

Bases: object

az: Annotated[float, OpenLIFUFieldData(name='Azimuth angle (rad)', description='Azimuth angle of the element')] = 0

Azimuth angle of the element, or rotation about the y-axis (rad)

el: Annotated[float, OpenLIFUFieldData(name='Elevation angle (rad)', description='Elevation angle of the element')] = 0

Elevation angle of the element, or rotation about the x’-axis (rad)

impulse_dt: Annotated[float, OpenLIFUFieldData(name='Impulse response timestep', description='Impulse response timestep')] = 1

Impulse response timestep. If impulse_response is an array, this is the time step of the impulse response.

impulse_response: Annotated[ndarray, OpenLIFUFieldData(name='Impulse response', description='Impulse response of the element')]

Impulse response of the element, can be a single value or an array of values. If an array, impulse_dt must be set to the time step of the impulse response. Is convolved with the input signal.

index: Annotated[int, OpenLIFUFieldData(name='Element index', description='Element index')] = 0

Element index to identify the element in the array.

l: Annotated[float, OpenLIFUFieldData(name='Length', description='Length of the element in the y dimension')] = 1

Length of the element in the y dimension

pin: Annotated[int, OpenLIFUFieldData(name='Pin', description='Channel pin to which the element is connected')] = -1

Channel pin to which the element is connected. 1-(64*number of modules).

roll: Annotated[float, OpenLIFUFieldData(name='Roll angle (rad)', description='Roll angle of the element')] = 0

Roll angle of the element, or rotation about the z’’-axis (rad)

units: Annotated[str, OpenLIFUFieldData(name='Units', description='Spatial units')] = 'mm'

Spatial units of the element specification.

w: Annotated[float, OpenLIFUFieldData(name='Width', description='Width of the element in the x dimension')] = 1

Width of the element in the x dimension

x: Annotated[float, OpenLIFUFieldData(name='X position', description='X position of the element')] = 0

X position of the element.

y: Annotated[float, OpenLIFUFieldData(name='Y position', description='Y position of the element')] = 0

Y position of the element.

z: Annotated[float, OpenLIFUFieldData(name='Z position', description='Z position of the element')] = 0

Z position of the element.