pylabrobot.liquid_handling.liquid_handler.LiquidHandler.aspirate

pylabrobot.liquid_handling.liquid_handler.LiquidHandler.aspirate#

async LiquidHandler.aspirate(resources: Container | Sequence[Container], vols: List[float] | float, use_channels: List[int] | None = None, flow_rates: float | List[float | None] | None = None, offsets: Coordinate | None | Sequence[Coordinate | None] = None, liquid_height: float | None | List[float | None] = None, blow_out_air_volume: float | None | List[float | None] = None, **backend_kwargs)#

Aspirate liquid from the specified wells.

Examples

Aspirate a constant amount of liquid from the first column:

>>> lh.aspirate(plate["A1:H1"], 50)

Aspirate an linearly increasing amount of liquid from the first column:

>>> lh.aspirate(plate["A1:H1"], range(0, 500, 50))

Aspirate arbitrary amounts of liquid from the first column:

>>> lh.aspirate(plate["A1:H1"], [0, 40, 10, 50, 100, 200, 300, 400])

Aspirate liquid from wells in different plates:

>>> lh.aspirate(plate["A1"] + plate2["A1"] + plate3["A1"], 50)

Aspirating with a 10mm z-offset:

>>> lh.aspirate(plate["A1"], vols=50, offsets=[Coordinate(0, 0, 10)])

Aspirate from a blue bucket (big container), with the first 4 channels (which will be spaced equally apart):

>>> lh.aspirate(blue_bucket, vols=50, use_channels=[0, 1, 2, 3])
Parameters:
  • resources (Container | Sequence[Container]) – A list of wells to aspirate liquid from. Can be a single resource, or a list of resources. If a single resource is specified, all channels will aspirate from the same resource.

  • vols (List[float] | float) – A list of volumes to aspirate, one for each channel. If vols is a single number, then all channels will aspirate that volume.

  • use_channels (List[int] | None) – List of channels to use. Index from front to back. If None, the first len(wells) channels will be used.

  • flow_rates (float | List[float | None] | None) – the aspiration speed. In ul/s. If None, the backend default will be used.

  • offsets (Coordinate | None | Sequence[Coordinate | None]) – List of offsets for each channel, a translation that will be applied to the aspiration location. If None, no offset will be applied.

  • liquid_height (float | None | List[float | None]) – The height of the liquid in the well wrt the bottom, in mm.

  • blow_out_air_volume (float | None | List[float | None]) – The volume of air to aspirate after the liquid, in ul. If None, the backend default will be used.

  • backend_kwargs – Additional keyword arguments for the backend, optional.

Raises: