openlifu.bf.focal_patterns.focal_pattern.FocalPattern

class openlifu.bf.focal_patterns.focal_pattern.FocalPattern(target_pressure: Annotated[float, OpenLIFUFieldData(name='Target pressure', description='Target pressure of the focal pattern in given units')] = 1.0, units: Annotated[str, OpenLIFUFieldData(name='Pressure units', description='Pressure units')] = 'Pa')[source]

Bases: ABC

Abstract base class for representing a focal pattern

static from_dict(d)[source]

Create a focal pattern from a dictionary

Parameters:

d – Dictionary of the focal pattern parameters

Returns:

FocalPattern object

abstractmethod get_targets(target: Point)[source]

Get the targets of the focal pattern

Parameters:

target – Target point of the focal pattern

Returns:

List of target points

abstractmethod num_foci()[source]

Get the number of foci in the focal pattern

Returns:

Number of foci

target_pressure: Annotated[float, OpenLIFUFieldData(name='Target pressure', description='Target pressure of the focal pattern in given units')] = 1.0

Target pressure of the focal pattern in given units

to_dict()[source]

Convert the focal pattern to a dictionary

Returns:

Dictionary of the focal pattern parameters

abstractmethod to_table() DataFrame[source]

Get a table of the focal pattern parameters

Returns:

Pandas DataFrame of the focal pattern parameters

units: Annotated[str, OpenLIFUFieldData(name='Pressure units', description='Pressure units')] = 'Pa'

Pressure units