pylabrobot.resources.Well#

class pylabrobot.resources.Well(name: str, size_x: float, size_y: float, size_z: float, material_z_thickness: float | None = None, bottom_type: WellBottomType | str = WellBottomType.UNKNOWN, category: str = 'well', model: str | None = None, max_volume: float | None = None, compute_volume_from_height: Callable[[float], float] | None = None, compute_height_from_volume: Callable[[float], float] | None = None, cross_section_type: CrossSectionType | str = CrossSectionType.CIRCLE, height_volume_data: Dict[float, float] | None = None, no_go_zones=None)#

Bases: Container

Base class for Well resources.

Note that in regular use these will be automatically generated by the pylabrobot.resources.Plate class.

Attributes

lid

The lid seated on this resource, or None.

material_z_thickness

name

Get the name of this resource.

Methods

__init__(name, size_x, size_y, size_z[, ...])

Create a new well.

assign_child_by_anchor(resource[, ...])

Assign a child resource by aligning anchor points.

assign_child_resource(resource[, location, ...])

Assign a child resource to this resource.

at(location)

Return a copy of this resource at the given location.

center([x, y, z])

Get the center of this resource.

centers([xn, yn, zn])

Get equally spaced points in the x, y, and z directions.

check_can_drop_resource_here(resource, *[, ...])

Validate whether resource may be dropped onto this resource.

compute_height_from_volume(liquid_volume)

Compute the height of liquid in a container relative to the container's bottom from the volume of the liquid.

compute_volume_from_height(height)

Compute the volume of liquid in a container from the height of the liquid relative to the bottom of the container.

copy()

deregister_did_assign_resource_callback(callback)

Remove a callback that will be called after a resource is assigned to this resource.

deregister_did_unassign_resource_callback(...)

Remove a callback that will be called after a resource is unassigned from this resource.

deregister_state_update_callback(callback)

Remove a callback that will be called when the state of the resource changes.

deregister_will_assign_resource_callback(...)

Remove a callback that will be called before a resource is assigned to this resource.

deregister_will_unassign_resource_callback(...)

Remove a callback that will be called before a resource is unassigned from this resource.

deserialize(data[, allow_marshal])

Deserialize a resource from a dictionary.

get_absolute_location([x, y, z])

Get the absolute location of this resource, probably within the pylabrobot.resources.Deck.

get_absolute_rotation()

Get the absolute rotation of this resource.

get_absolute_size_x()

Get the absolute size in the x direction.

get_absolute_size_y()

Get the absolute size in the y direction.

get_absolute_size_z()

Get the absolute size in the z direction.

get_all_children()

Recursively get all children of this resource.

get_anchor([x, y, z])

Get a relative location within the container. (Update to Resource superclass to

get_column()

Get the column (0-indexed) of the well in the parent plate.

get_highest_known_point()

Recursively finds the highest known point in absolute space.

get_identifier()

Get the (canonical) identifier, like "A1" of the well in the parent plate.

get_lid_location(lid)

Location of lid seated centred on this resource's top face, sunk by nesting_z_height.

get_location_wrt(other[, x, y, z])

Get the location of this resource with respect to another resource.

get_resource(name)

Get a resource by name.

get_root()

Get the root of the resource tree.

get_row()

Get the row (0-indexed) of the well in the parent plate.

get_size_x()

Local size in the x direction.

get_size_y()

Local size in the y direction.

get_size_z()

Local size in the z direction.

has_lid()

is_in_subtree_of(other)

Return True if self is in the subtree rooted at other.

load_all_state(state)

Load state for this resource and all children.

load_from_json_file(json_file)

Loads resources from a JSON file.

load_state(state)

Load state for this resource only.

load_state_from_file(fn)

Load the state of this resource and all children from a JSON file.

named(name)

Return a copy of this resource with the given name.

register_did_assign_resource_callback(callback)

Add a callback that will be called after a resource is assigned to this resource.

register_did_unassign_resource_callback(callback)

Add a callback that will be called after a resource is unassigned from this resource.

register_state_update_callback(callback)

Register a callback that will be called when the state of the resource changes.

register_will_assign_resource_callback(callback)

Add a callback that will be called before a resource is assigned to this resource.

register_will_unassign_resource_callback(...)

Add a callback that will be called before a resource is unassigned from this resource.

rotate([x, y, z])

Rotate counter-clockwise by the given number of degrees.

rotated([x, y, z])

Return a copy of this resource rotated by the given number of degrees.

save(fn[, indent])

Save a resource to a JSON file.

save_state_to_file(fn[, indent])

Save the state of this resource and all children to a JSON file.

serialize()

serialize_all_state()

Serialize the state of this resource and all children.

serialize_state()

Serialize the state of this resource only.

set_liquids(liquids)

Set the liquids in the well.

set_volume(volume)

Set the volume of the well.

supports_compute_height_volume_functions()

unassign()

Unassign this resource from its parent.

unassign_child_resource(resource)

Unassign a child resource from this resource.

Parameters: