openlifu.xdc.element.Element

class openlifu.xdc.element.Element(index: "Annotated[int, OpenLIFUFieldData('Element index', 'Element index')]" = 0, position: "Annotated[np.ndarray, OpenLIFUFieldData('Position', 'Position of the element in 3D space')]" = <factory>, orientation: "Annotated[np.ndarray, OpenLIFUFieldData('Orientation', 'Orientation of the element in 3D space')]" = <factory>, size: "Annotated[np.ndarray, OpenLIFUFieldData('Size', 'Size of the element in 2D')]" = <factory>, sensitivity: "Annotated[float | None, OpenLIFUFieldData('Sensitivity', 'Sensitivity of the element (Pa/V)')]" = None, impulse_response: "Annotated[np.ndarray | None, OpenLIFUFieldData('Impulse response', 'Impulse response of the element')]" = None, impulse_dt: "Annotated[float | None, OpenLIFUFieldData('Impulse response timestep', 'Impulse response timestep')]" = None, 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

impulse_dt: Annotated[float | None, OpenLIFUFieldData('Impulse response timestep', 'Impulse response timestep')] = None

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

impulse_response: Annotated[np.ndarray | None, OpenLIFUFieldData('Impulse response', 'Impulse response of the element')] = None

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('Element index', 'Element index')] = 0

Element index to identify the element in the array.

orientation: Annotated[np.ndarray, OpenLIFUFieldData('Orientation', 'Orientation of the element in 3D space')]

Orientation of the element in 3D space as a numpy array around the [y, x’, z’’] axes [az, el, roll] in radians.

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

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

position: Annotated[np.ndarray, OpenLIFUFieldData('Position', 'Position of the element in 3D space')]

Position of the element in 3D space as a numpy array [x, y, z].

sensitivity: Annotated[float | None, OpenLIFUFieldData('Sensitivity', 'Sensitivity of the element (Pa/V)')] = None

Sensitivity of the element (Pa/V)

size: Annotated[np.ndarray, OpenLIFUFieldData('Size', 'Size of the element in 2D')]

Size of the element in 2D as a numpy array [width, length].

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

Spatial units of the element specification.