Skip to content

Commit f33a7c1

Browse files
BioCamclaude
andauthored
Update Corning 3603 with empirical cLLD height_volume_data (#948)
* migrate Cor_96_wellplate_360ul_Fb to height_volume_data Replace geometry-based compute functions with a pre-calculated `height_volume_data` dict derived from the tech drawing frustum (6.35→6.86 mm taper). Volumes chosen for easy pipetting; heights to be replaced with empirical LLD measurements next * on STAR testing of `height_volume_data` * Update Cor_96_wellplate_360ul_Fb with empirical cLLD height_volume_data Replace pre-calculated frustum geometry with empirical cLLD measurements for the Corning 3603 96-well plate. Dead volume comment clarified. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * Fix ruff formatting: closing brace indent and blank line Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 40c0afb commit f33a7c1

1 file changed

Lines changed: 15 additions & 17 deletions

File tree

pylabrobot/resources/corning/plates.py

Lines changed: 15 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
"""Corning plates."""
22

33
from pylabrobot.resources.height_volume_functions import (
4-
calculate_liquid_height_container_1segment_round_fbottom,
54
calculate_liquid_height_in_container_2segments_square_vbottom,
6-
calculate_liquid_volume_container_1segment_round_fbottom,
75
calculate_liquid_volume_container_2segments_square_vbottom,
86
)
97
from pylabrobot.resources.plate import Lid, Plate
@@ -16,6 +14,20 @@
1614

1715
# # # # # # # # # # Cor_96_wellplate_360ul_Fb # # # # # # # # # #
1816

17+
# Well tapers from 6.35 mm (bottom) to 6.86 mm (top) over 10.67 mm depth.
18+
_cor_96_wellplate_360ul_Fb_height_volume_data = {
19+
0.0: 0.0,
20+
0.45: 20.0, # "dead volume" to cover the full flat bottom and ensure LLD detectability
21+
1.69: 50.0,
22+
3.22: 100.0,
23+
4.72: 150.0,
24+
6.19: 200.0,
25+
7.72: 250.0,
26+
8.99: 300.0,
27+
10.62: 350.0,
28+
10.95: 360.0,
29+
}
30+
1931

2032
def Cor_96_wellplate_360ul_Fb(name: str, with_lid: bool = False) -> Plate:
2133
"""
@@ -60,8 +72,7 @@ def Cor_96_wellplate_360ul_Fb(name: str, with_lid: bool = False) -> Plate:
6072
bottom_type=WellBottomType.FLAT,
6173
cross_section_type=CrossSectionType.CIRCLE,
6274
max_volume=360,
63-
compute_volume_from_height=_compute_volume_from_height_Cor_96_wellplate_360ul_Fb,
64-
compute_height_from_volume=_compute_height_from_volume_Cor_96_wellplate_360ul_Fb,
75+
height_volume_data=_cor_96_wellplate_360ul_Fb_height_volume_data,
6576
),
6677
)
6778

@@ -81,19 +92,6 @@ def Cor_96_wellplate_360ul_Fb_Lid(name: str) -> Lid:
8192
)
8293

8394

84-
# Volume-height functions
85-
def _compute_volume_from_height_Cor_96_wellplate_360ul_Fb(h: float) -> float:
86-
return calculate_liquid_volume_container_1segment_round_fbottom(
87-
d=6.86, h_cylinder=10.67, liquid_height=h
88-
)
89-
90-
91-
def _compute_height_from_volume_Cor_96_wellplate_360ul_Fb(liquid_volume: float) -> float:
92-
return calculate_liquid_height_container_1segment_round_fbottom(
93-
d=6.86, h_cylinder=10.67, liquid_volume=liquid_volume
94-
)
95-
96-
9795
# Previous names in PLR:
9896
def Cos_96_EZWash(name: str, with_lid: bool = False) -> Plate:
9997
raise ValueError("Deprecated. You probably want to use Cor_96_wellplate_360ul_Fb instead.")

0 commit comments

Comments
 (0)