From 895957d9cae55c46e756dc31e720a9079653998c Mon Sep 17 00:00:00 2001 From: Gonza10V Date: Thu, 25 Apr 2024 10:40:09 -0400 Subject: [PATCH 001/100] libre scripts --- scripts/run_Chemical_Transformation_libre.py | 310 +++++++++++++++++++ scripts/run_Loop_assembly_libre.py | 4 +- scripts/run_Plate_samples_libre.py | 165 ++++++++++ 3 files changed, 477 insertions(+), 2 deletions(-) create mode 100644 scripts/run_Chemical_Transformation_libre.py create mode 100644 scripts/run_Plate_samples_libre.py diff --git a/scripts/run_Chemical_Transformation_libre.py b/scripts/run_Chemical_Transformation_libre.py new file mode 100644 index 0000000..2d13931 --- /dev/null +++ b/scripts/run_Chemical_Transformation_libre.py @@ -0,0 +1,310 @@ +from opentrons import protocol_api +from typing import List, Dict + +thermo_wells = [ +'A1','A2','A3','A4','A5','A6','A7','A8','A9','A10','A11','A12', +'B1','B2','B3','B4','B5','B6','B7','B8','B9','B10','B11','B12', +'C1','C2','C3','C4','C5','C6','C7','C8','C9','C10','C11','C12', +'D1','D2','D3','D4','D5','D6','D7','D8','D9','D10','D11','D12', +'E1','E2','E3','E4','E5','E6','E7','E8','E9','E10','E11','E12', +'F1','F2','F3','F4','F5','F6','F7','F8','F9','F10','F11','F12', +'G1','G2','G3','G4','G5','G6','G7','G8','G9','G10','G11','G12', +'H1','H2','H3','H4','H5','H6','H7','H8','H9','H10','H11','H12' +] + +temp_wells = [ +'A1','A2','A3','A4','A5','A6', +'B1','B2','B3','B4','B5','B6', +'C1','C2','C3','C4','C5','C6', +'D1','D2','D3','D4','D5','D6' +] + +def liquid_transfer(pipette, volume, source, destination, asp_rate:float=0.5, disp_rate:float=1.0, blow_out:bool=True, touch_tip:bool=False, mix_before:float=0.0, mix_after:float=0.0, mix_reps:int=3, new_tip:bool=True, drop_tip:bool=True): + if new_tip: + pipette.pick_up_tip() + if mix_before > 0: + pipette.mix(mix_reps, mix_before, source) + pipette.aspirate(volume, source, rate=asp_rate) + pipette.dispense(volume, destination, rate=disp_rate) + if mix_after > 0: + pipette.mix(mix_reps, mix_after, destination) + if blow_out: + pipette.blow_out() + if touch_tip: + pipette.touch_tip() + if drop_tip: + pipette.drop_tip() + +class Transformation(): + ''' + Creates a protocol for automated transformation. + + Attributes + ---------- + volume_dna : float + The volume DNA in microliters. By default, 2 microliters. We suggest 2 microliters for extracted plasmid and 5 microliters for PCR products. + volume_competent_cells : float + The volume of the competent cells in microliters. By default, 50 microliters. + volume_recovery_media : float + The volume of recovery media in microliters. By default, 100 microliters. + replicates : int + The number of replicates of the assembly reaction. By default, 2. + thermocycler_starting_well : int + The starting well of the thermocycler module. By default, 0. + thermocycler_labware : str + The labware type of the thermocycler module. By default, 'nest_96_wellplate_100ul_pcr_full_skirt'. + thermocycler_slots : list + The slots of the thermocycler module. By default, [7, 8, 10, 11]. + temperature_module_labware : str + The labware type of the temperature module. By default, 'opentrons_24_aluminumblock_nest_1.5ml_snapcap'. + temperature_module_slot : int + The slot of the temperature module. By default, 1. + tiprack_labware : str + The labware type of the tiprack. By default, 'opentrons_96_tiprack_20ul'. + tiprack_slot : int + The slot of the tiprack. By default, 9. + pipette_type : str + The type of pipette. By default, 'p20_single_gen2'. + pipette_mount : str + The mount of the pipette. By default, 'left'. + aspiration_rate : float + The rate of aspiration in microliters per second. By default, 0.5 microliters per second. + dispense_rate : float + The rate of dispense in microliters per second. By default, 1 microliter per second. + ''' + def __init__(self, + list_of_dnas:List = [], # TODO:add SBOL version + competent_cells: str = None, # TODO: add SBOL version + replicates:int=2, + thermocycler_starting_well:int = 0, + thermocycler_labware:str = 'nest_96_wellplate_100ul_pcr_full_skirt', + temperature_module_labware:str = 'opentrons_24_aluminumblock_nest_1.5ml_snapcap', + temperature_module_position:int = 1, + + tiprack_p20_labware:str = 'opentrons_96_tiprack_20ul', + tiprack_p20_osition:int = 9, + tiprack_p300_labware:str = 'opentrons_96_tiprack_300ul', + tiprack_p300_osition:int = 6, + pipette_p20:str = 'p20_single_gen2', + pipette_p300:str = 'p300_single_gen2', + pipette_p20_position:str = 'left', + pipette_p300_position:str = 'right', + aspiration_rate:float=0.5, + dispense_rate:float=1,): + + self.list_of_dnas = list_of_dnas + self.competent_cells = competent_cells + self.replicates = replicates + self.thermocycler_starting_well = thermocycler_starting_well + self.thermocycler_labware = thermocycler_labware + self.temperature_module_labware = temperature_module_labware + self.temperature_module_position = temperature_module_position + self.tiprack_p20_labware = tiprack_p20_labware + self.tiprack_p20_position = tiprack_p20_osition + self.tiprack_p300_labware = tiprack_p300_labware + self.tiprack_p300_position = tiprack_p300_osition + self.pipette_p20 = pipette_p20 + self.pipette_p300 = pipette_p300 + self.pipette_p20_position = pipette_p20_position + self.pipette_p300_position = pipette_p300_position + self.aspiration_rate = aspiration_rate + self.dispense_rate = dispense_rate + +class Chemical_transformation(Transformation): + ''' + Creates a protocol for automated transformation. + + Attributes + ---------- + volume_dna : float + The volume DNA in microliters. By default, 2 microliters. We suggest 2 microliters for extracted plasmid and 5 microliters for PCR products. + volume_competent_cells : float + The volume of the competent cells in microliters. By default, 50 microliters. + volume_recovery_media : float + The volume of recovery media in microliters. By default, 100 microliters. + replicates : int + The number of replicates of the assembly reaction. By default, 2. + thermocycler_starting_well : int + The starting well of the thermocycler module. By default, 0. + thermocycler_labware : str + The labware type of the thermocycler module. By default, 'nest_96_wellplate_100ul_pcr_full_skirt'. + thermocycler_slots : list + The slots of the thermocycler module. By default, [7, 8, 10, 11]. + temperature_module_labware : str + The labware type of the temperature module. By default, 'opentrons_24_aluminumblock_nest_1.5ml_snapcap'. + temperature_module_slot : int + The slot of the temperature module. By default, 1. + tiprack_labware : str + The labware type of the tiprack. By default, 'opentrons_96_tiprack_20ul'. + tiprack_slot : int + The slot of the tiprack. By default, 9. + pipette_type : str + The type of pipette. By default, 'p20_single_gen2'. + pipette_mount : str + The mount of the pipette. By default, 'left'. + aspiration_rate : float + The rate of aspiration in microliters per second. By default, 0.5 microliters per second. + dispense_rate : float + The rate of dispense in microliters per second. By default, 1 microliter per second. + ''' + def __init__(self, + volume_dna:float = 2, + volume_competent_cell_to_add:float = 20, + volume_competent_cell_per_tube:float =100, + volume_recovery_media_to_add:float = 60, + volume_recovery_media_per_tube:float = 1200, #add a bit more to pick it properly + cold_incubation1:Dict = {'temperature': 4, 'hold_time_minutes': 30}, + heat_shock:Dict = {'temperature': 42, 'hold_time_minutes': 1}, + cold_incubation2:Dict = {'temperature': 4, 'hold_time_minutes': 2}, + recovery_incubation:Dict = {'temperature': 37, 'hold_time_minutes': 60}, + *args, **kwargs): + super().__init__(*args, **kwargs) + + self.volume_dna = volume_dna + self.volume_competent_cell_to_add = volume_competent_cell_to_add + self.volume_competent_cell_per_tube = volume_competent_cell_per_tube + self.volume_recovery_media = volume_recovery_media_to_add + self.volume_recovery_media_per_tube = volume_recovery_media_per_tube + self.cold_incubation1 = cold_incubation1 + self.heat_shock = heat_shock + self.cold_incubation2 = cold_incubation2 + self.recovery_incubation = recovery_incubation + self.dict_of_parts_in_temp_mod_position = {} + self.dict_of_parts_in_thermocycler = {} + + metadata = { + 'protocolName': 'PUDU Transformation', + 'author': 'Gonzalo Vidal ', + 'description': 'Automated transformation protocol', + 'apiLevel': '2.13'} + + def run(self, protocol: protocol_api.ProtocolContext): + + #Labware + #Load the magnetic module + tem_mod = protocol.load_module('temperature module', f'{self.temperature_module_position}') + tem_mod_block = tem_mod.load_labware(self.temperature_module_labware) + #Load the thermocycler module, its default location is on slots 7, 8, 10 and 11 + thermocycler_mod = protocol.load_module('thermocycler module') + thermocycler_mod_plate = thermocycler_mod.load_labware(self.thermocycler_labware) + #Load the tiprack + tiprack_p20 = protocol.load_labware(self.tiprack_p20_labware, f'{self.tiprack_p20_position}') + tiprack_p300 = protocol.load_labware(self.tiprack_p300_labware, f'{self.tiprack_p300_position}') + #Load the pipette + pipette_p20 = protocol.load_instrument(self.pipette_p20, self.pipette_p20_position, tip_racks=[tiprack_p20]) + pipette_p300 = protocol.load_instrument(self.pipette_p300, self.pipette_p300_position, tip_racks=[tiprack_p300]) + + #Load the reagents + #Check number of compenent cells and DNAs + total_transformations = len(self.list_of_dnas)*self.replicates + transformations_per_tube = int(self.volume_competent_cell_per_tube//self.volume_competent_cell_to_add) + number_of_tubes_with_competent_cells_needed = int(total_transformations//transformations_per_tube+1) #TODO: make an int, maybe use sail + #Check number of tubes with media + transformations_per_media_tube = int(self.volume_recovery_media_per_tube//self.volume_recovery_media) + number_of_tubes_with_media_needed = int(total_transformations//transformations_per_media_tube+1) #TODO: make an int, maybe use sail + if len(self.list_of_dnas)+number_of_tubes_with_competent_cells_needed+number_of_tubes_with_media_needed > 24: + raise ValueError(f'The number of reagents is more than 24. There are {len(self.list_of_dnas)} DNAs, {number_of_tubes_with_competent_cells_needed} tubes with competent cells and {number_of_tubes_with_media_needed} tubes with media. Please change the protocol and try again.') + temp_wells_counter = 0 + for dna in self.list_of_dnas: + self.dict_of_parts_in_temp_mod_position[dna] = temp_wells[temp_wells_counter] + temp_wells_counter += 1 + for i in range(number_of_tubes_with_competent_cells_needed): + self.dict_of_parts_in_temp_mod_position[f'Competent_cells_tube_{i}'] = temp_wells[temp_wells_counter] + temp_wells_counter += 1 + for i in range(number_of_tubes_with_media_needed): + self.dict_of_parts_in_temp_mod_position[f'Media_tube_{i}'] = temp_wells[temp_wells_counter] + temp_wells_counter += 1 + #Set Temperature and Thermocycler module to 4 + tem_mod.set_temperature(4) + thermocycler_mod.open_lid() + thermocycler_mod.set_block_temperature(4) + #Load cells into the thermocycler + if self.volume_competent_cell_to_add > 20: + pipette = pipette_p300 + else: + pipette = pipette_p20 + current_thermocycler_well_comp = self.thermocycler_starting_well + transformation_well = 1 + #for r in range(self.replicates): + for i in range(number_of_tubes_with_competent_cells_needed): + for j in range(transformations_per_tube): + part_ubication_in_thermocyler = thermocycler_mod_plate[thermo_wells[current_thermocycler_well_comp]] + liquid_transfer(pipette, self.volume_competent_cell_to_add, tem_mod_block[self.dict_of_parts_in_temp_mod_position[f'Competent_cells_tube_{i}']], part_ubication_in_thermocyler, self.aspiration_rate, self.dispense_rate, mix_before=self.volume_competent_cell_to_add -5) + if j == 0: + self.dict_of_parts_in_thermocycler[f'Competent_cells_tube_{i}'] = [thermo_wells[current_thermocycler_well_comp]] + else: + self.dict_of_parts_in_thermocycler[f'Competent_cells_tube_{i}'].append(thermo_wells[current_thermocycler_well_comp]) + current_thermocycler_well_comp+=1 + if transformation_well == total_transformations: + break + transformation_well+=1 + + #Load DNA into the thermocycler and mix + if self.volume_dna > 20: + pipette = pipette_p300 + else: + pipette = pipette_p20 + current_thermocycler_well_dna = self.thermocycler_starting_well + for r in range(self.replicates): + for dna in self.list_of_dnas: + part_ubication_in_thermocyler = thermocycler_mod_plate[thermo_wells[current_thermocycler_well_dna]] + liquid_transfer(pipette, self.volume_dna, tem_mod_block[self.dict_of_parts_in_temp_mod_position[dna]], part_ubication_in_thermocyler, self.aspiration_rate, self.dispense_rate, mix_before=self.volume_dna) + if r == 0: + self.dict_of_parts_in_thermocycler[dna] = [thermo_wells[current_thermocycler_well_dna]] + else: + self.dict_of_parts_in_thermocycler[dna].append(thermo_wells[current_thermocycler_well_dna]) + current_thermocycler_well_dna+=1 + + #Cold incubation + thermocycler_mod.close_lid() + profile = [ + self.cold_incubation1, #1st cold incubation (long) + self.heat_shock, #Heatshock + self.cold_incubation2] #2nd cold incubation (short) + thermocycler_mod.execute_profile(steps=profile, repetitions=1, block_max_volume=30) + #Load LB and recovery incubation + thermocycler_mod.open_lid() + #TODO: check if there is the need for more than one tube + if self.volume_recovery_media > 20: + pipette = pipette_p300 + else: + pipette = pipette_p20 + current_thermocycler_well_media = self.thermocycler_starting_well + transformation_well = 1 + for i in range(number_of_tubes_with_media_needed): + for j in range(transformations_per_media_tube): + part_ubication_in_thermocyler = thermocycler_mod_plate[thermo_wells[current_thermocycler_well_media]] + liquid_transfer(pipette, self.volume_recovery_media, tem_mod_block[self.dict_of_parts_in_temp_mod_position[f'Media_tube_{i}']], part_ubication_in_thermocyler, self.aspiration_rate, self.dispense_rate, mix_after=self.volume_recovery_media -5) + if j == 0: + self.dict_of_parts_in_thermocycler[f'Media_tube_{i}'] = [thermo_wells[current_thermocycler_well_media]] + else: + self.dict_of_parts_in_thermocycler[f'Media_tube_{i}'].append(thermo_wells[current_thermocycler_well_media]) + current_thermocycler_well_media+=1 + if transformation_well == total_transformations: + break + transformation_well+=1 + thermocycler_mod.close_lid() + recovery = [ + self.recovery_incubation] + thermocycler_mod.execute_profile(steps=recovery, repetitions=1, block_max_volume=30) + + #output + print('Strain and media tube in temp_mod') + print(self.dict_of_parts_in_temp_mod_position) + print('Genetically modified organisms in thermocycler') + print(self.dict_of_parts_in_thermocycler) + #Optionally plate + #END + +# metadata +metadata = { +'protocolName': 'PUDU Transformation', +'author': 'Gonzalo Vidal ', +'description': 'Automated transformation protocol', +'apiLevel': '2.13'} + +def run(protocol= protocol_api.ProtocolContext): + + pudu_transformation = Chemical_transformation(list_of_dnas=['GVD0011','GVD0013','GVD0015', 'GVD0016', 'GVD0019', 'GVD0020'], competent_cells = 'DH5alpha') + pudu_transformation.run(protocol) +#After simulation look at the beginning of the output to see the position of input reagents and outputs. \ No newline at end of file diff --git a/scripts/run_Loop_assembly_libre.py b/scripts/run_Loop_assembly_libre.py index 17a0d3d..fe2750c 100644 --- a/scripts/run_Loop_assembly_libre.py +++ b/scripts/run_Loop_assembly_libre.py @@ -271,7 +271,7 @@ def run(self, protocol: protocol_api.ProtocolContext): profile = [ {'temperature': 42, 'hold_time_minutes': 2}, {'temperature': 16, 'hold_time_minutes': 5}] - thermocycler_mod.execute_profile(steps=profile, repetitions=25, block_max_volume=30) + thermocycler_mod.execute_profile(steps=profile, repetitions=75, block_max_volume=30) denaturation = [ {'temperature': 60, 'hold_time_minutes': 10}, @@ -287,7 +287,7 @@ def run(self, protocol: protocol_api.ProtocolContext): print(self.dict_of_parts_in_thermocycler) # assembly -assembly_Odd_1 = {"promoter":["GVP0010", "GVP0011", "GVP0014"], "rbs":["B0033","B0034"], "cds":"sfGFP", "terminator":"B0015", "receiver":"Odd_1"} +assembly_Odd_1 = {"promoter":["GVP0008", "GVP0010", "GVP0012", "GVP0013", "GVP0016", "GVP0017"], "rbs":"B0034", "cds":"sfGFP", "terminator":"B0015", "receiver":"Odd_1"} #assembly_Even_2 = {"c4_receptor":"GD0001", "c4_buff_gfp":"GD0002", "spacer1":"20ins1", "spacer2":"Even_2", "receiver":"Even_2"} assemblies = [assembly_Odd_1] diff --git a/scripts/run_Plate_samples_libre.py b/scripts/run_Plate_samples_libre.py new file mode 100644 index 0000000..768316c --- /dev/null +++ b/scripts/run_Plate_samples_libre.py @@ -0,0 +1,165 @@ +from opentrons import protocol_api +from typing import List, Union + +thermo_wells = [ +'A1','A2','A3','A4','A5','A6','A7','A8','A9','A10','A11','A12', +'B1','B2','B3','B4','B5','B6','B7','B8','B9','B10','B11','B12', +'C1','C2','C3','C4','C5','C6','C7','C8','C9','C10','C11','C12', +'D1','D2','D3','D4','D5','D6','D7','D8','D9','D10','D11','D12', +'E1','E2','E3','E4','E5','E6','E7','E8','E9','E10','E11','E12', +'F1','F2','F3','F4','F5','F6','F7','F8','F9','F10','F11','F12', +'G1','G2','G3','G4','G5','G6','G7','G8','G9','G10','G11','G12', +'H1','H2','H3','H4','H5','H6','H7','H8','H9','H10','H11','H12' +] + +temp_wells = [ +'A1','A2','A3','A4','A5','A6', +'B1','B2','B3','B4','B5','B6', +'C1','C2','C3','C4','C5','C6', +'D1','D2','D3','D4','D5','D6' +] + + +def liquid_transfer(pipette, volume, source, destination, asp_rate:float=0.5, disp_rate:float=1.0, blow_out:bool=True, touch_tip:bool=False, mix_before:float=0.0, mix_after:float=0.0, mix_reps:int=3, new_tip:bool=True, drop_tip:bool=True): + if new_tip: + pipette.pick_up_tip() + if mix_before > 0: + pipette.mix(mix_reps, mix_before, source) + pipette.aspirate(volume, source, rate=asp_rate) + pipette.dispense(volume, destination, rate=disp_rate) + if mix_after > 0: + pipette.mix(mix_reps, mix_after, destination) + if blow_out: + pipette.blow_out() + if touch_tip: + pipette.touch_tip() + if drop_tip: + pipette.drop_tip() + +#Define slots, to allocate 4 samples in each slot, lasts slots allocate in the border where border effects apply +slot_1 = ['A2', 'B2', 'C2', 'D2'] +slot_2 = ['A3', 'B3', 'C3', 'D3'] +slot_3 = ['A4', 'B4', 'C4', 'D4'] +slot_4 = ['A5', 'B5', 'C5', 'D5'] +slot_5 = ['A6', 'B6', 'C6', 'D6'] +slot_6 = ['A7', 'B7', 'C7', 'D7'] +slot_7 = ['A8', 'B8', 'C8', 'D8'] +slot_8 = ['A9', 'B9', 'C9', 'D9'] +slot_9 = ['A10', 'B10', 'C10', 'D10'] +slot_10 = ['A11', 'B11', 'C11', 'D11'] +slot_11 = ['E2', 'F2', 'G2', 'H2'] +slot_12 = ['E3', 'F3', 'G3', 'H3'] +slot_13 = ['E4', 'F4', 'G4', 'H4'] +slot_14 = ['E5', 'F5', 'G5', 'H5'] +slot_15 = ['E6', 'F6', 'G6', 'H6'] +slot_16 = ['E7', 'F7', 'G7', 'H7'] +slot_17 = ['E8', 'F8', 'G8', 'H8'] +slot_18 = ['E9', 'F9', 'G9', 'H9'] +slot_19 = ['E10', 'F10', 'G10', 'H10'] +slot_20 = ['E11', 'F11', 'G11', 'H11'] +slot_21 = ['A1', 'B1', 'C1', 'D1'] +slot_22 = ['E1', 'F1', 'G1', 'H1'] +slot_23 = ['A12', 'B12', 'C12', 'D12'] +slot_24 = ['E12', 'F12', 'G12', 'H12'] + +slots = [slot_1, slot_2, slot_3, slot_4, slot_5, slot_6, slot_7, slot_8, slot_9, slot_10, slot_11, slot_12, slot_13, slot_14, slot_15, slot_16, slot_17, slot_18, slot_19, slot_20, slot_21, slot_22, slot_23, slot_24] + + + +class Test_setup(): + ''' + Creates a protocol for the automated setting of a 96 well plate with a gradient of inducer. + + ''' + def __init__(self, + test_labware:str = 'corning_96_wellplate_360ul_flat', + test_position:int = 7, + aspiration_rate:float=0.5, + dispense_rate:float=1,): + + self.test_labware = test_labware + self.test_position = test_position + self.aspiration_rate = aspiration_rate + self.dispense_rate = dispense_rate + +class Plate_samples(Test_setup): + ''' + Creates a protocol for the automated setting of a 96 well plate from samples. Each sample is distributed in 4 wells of the plate. + ''' + def __init__(self,samples:List, + sample_tube_volume:float = 1200, + sample_well_volume:float = 200, + tube_rack_labware:str = 'opentrons_24_aluminumblock_nest_1.5ml_snapcap', + tube_rack_position:int = 4, + tiprack_labware:str='opentrons_96_tiprack_300ul', + tiprack_position:int=9, + pipette:str='p300_single_gen2', + pipette_position:str='right', + use_temperature_module:bool = False, + starting_slot:int = 1, + *args, **kwargs): + super().__init__(*args, **kwargs) + + self.samples = samples + self.sample_tube_volume = sample_tube_volume + self.sample_well_volume = sample_well_volume + self.tube_rack_labware = tube_rack_labware + self.tube_rack_position = tube_rack_position + self.tiprack_labware = tiprack_labware + self.tiprack_position = tiprack_position + self.pipette = pipette + self.pipette_position = pipette_position + self.use_temperature_module = use_temperature_module + self.dict_of_samples_in_plate = {} + self.dict_of_samples_in_temp_mod_position = {} + self.starting_slot = starting_slot + + if len(self.samples) > 24: + raise ValueError(f'Number of samples cant be greater than 24, you have {len(self.samples)}') + + def run(self, protocol: protocol_api.ProtocolContext): + + #Labware + tiprack = protocol.load_labware(self.tiprack_labware, f'{self.tiprack_position}') + pipette = protocol.load_instrument(self.pipette, self.pipette_position, tip_racks=[tiprack]) + plate = protocol.load_labware(self.test_labware, self.test_position) + + if self.use_temperature_module: + temperature_module = protocol.load_module('Temperature Module', self.tube_rack_position) + tube_rack = temperature_module.load_labware(self.tube_rack_labware) + else: + tube_rack = protocol.load_labware(self.tube_rack_labware, self.tube_rack_position) + + #Protocol + + #Load samples + temp_wells_counter = 0 + slot_counter = self.starting_slot-1 + for sample in self.samples: + self.dict_of_samples_in_temp_mod_position[sample] = temp_wells[temp_wells_counter] + pipette.pick_up_tip() + for position in slots[slot_counter]: + liquid_transfer(pipette, self.sample_well_volume, tube_rack[self.dict_of_samples_in_temp_mod_position[sample]], plate[position], self.aspiration_rate, self.dispense_rate, mix_before=self.sample_well_volume, mix_after=self.sample_well_volume/2, new_tip=False, drop_tip=False) + pipette.drop_tip() + self.dict_of_samples_in_plate[sample] = slots[slot_counter] + temp_wells_counter += 1 + slot_counter += 1 + + #output + print('Samples in tube rack') + print(self.dict_of_samples_in_temp_mod_position) + print('Samples in plate') + print(self.dict_of_samples_in_plate) + #END + +# metadata +metadata = { +'protocolName': 'PUDU Plate Setup', +'author': 'Gonzalo Vidal ', +'description': 'Automated 96 well plate setup protocol', +'apiLevel': '2.13'} + +def run(protocol= protocol_api.ProtocolContext): + + pudu_plate_samples = Plate_samples(samples=['s1', 's2','s3', 's4', 's5', 's6'], starting_slot=13) + pudu_plate_samples.run(protocol) \ No newline at end of file From 53b05cc01b1cffa72608b8416616460ed3a6bd4a Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Tue, 7 Jan 2025 10:37:33 -0700 Subject: [PATCH 002/100] adding dark mode logo --- images/PUDU_Logo_dark.png | Bin 0 -> 1096056 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 images/PUDU_Logo_dark.png diff --git a/images/PUDU_Logo_dark.png b/images/PUDU_Logo_dark.png new file mode 100644 index 0000000000000000000000000000000000000000..56f3c0cb9bf40d38810ab123bc2c0a5bdee591b8 GIT binary patch literal 1096056 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 lbUgDkNoe?IHB`-TvUF`H=_oeBhf@a#`*Z8&yQu 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

9MWVQPigD4LcreG%8t%=vmE@*i>Z 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 Date: Tue, 7 Jan 2025 10:40:14 -0700 Subject: [PATCH 003/100] Update README.md with new logo --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index d5c25d6..5f7d02d 100644 --- a/README.md +++ b/README.md @@ -2,8 +2,8 @@ Welcome to the PUDU (Protocol Unified Design Unit) repository, our Python package for liquid handling robot control on Synthetic Biology workflows. -PUDU logo -PUDU night logo +PUDU logo +PUDU night logo ## *The art of automated liquid handling* From 792f1ebb6d1777540e5e776d46a0839c0714fa2c Mon Sep 17 00:00:00 2001 From: Gonza10V Date: Thu, 15 May 2025 12:02:03 -0600 Subject: [PATCH 004/100] new sbol2assembly function and script --- scripts/run_sbol2assembly_libre.py | 261 +++++++++++++++++++++++++++++ src/pudu/assembly.py | 132 ++++++++++++++- 2 files changed, 392 insertions(+), 1 deletion(-) create mode 100644 scripts/run_sbol2assembly_libre.py diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py new file mode 100644 index 0000000..cb63bb9 --- /dev/null +++ b/scripts/run_sbol2assembly_libre.py @@ -0,0 +1,261 @@ +from opentrons import protocol_api +from typing import List, Dict, Union +from fnmatch import fnmatch +from itertools import product + +# utils + + +plate_96_wells = [ +'A1','A2','A3','A4','A5','A6','A7','A8','A9','A10','A11','A12', +'B1','B2','B3','B4','B5','B6','B7','B8','B9','B10','B11','B12', +'C1','C2','C3','C4','C5','C6','C7','C8','C9','C10','C11','C12', +'D1','D2','D3','D4','D5','D6','D7','D8','D9','D10','D11','D12', +'E1','E2','E3','E4','E5','E6','E7','E8','E9','E10','E11','E12', +'F1','F2','F3','F4','F5','F6','F7','F8','F9','F10','F11','F12', +'G1','G2','G3','G4','G5','G6','G7','G8','G9','G10','G11','G12', +'H1','H2','H3','H4','H5','H6','H7','H8','H9','H10','H11','H12' +] + +thermo_wells = plate_96_wells + +def liquid_transfer(pipette, volume, source, destination, asp_rate:float=0.5, disp_rate:float=1.0, blow_out:bool=True, touch_tip:bool=False, mix_before:float=0.0, mix_after:float=0.0, mix_reps:int=3, new_tip:bool=True, drop_tip:bool=True): + if new_tip: + pipette.pick_up_tip() + if mix_before > 0: + pipette.mix(mix_reps, mix_before, source) + pipette.aspirate(volume, source, rate=asp_rate) + pipette.dispense(volume, destination, rate=disp_rate) + if mix_after > 0: + pipette.mix(mix_reps, mix_after, destination) + if blow_out: + pipette.blow_out() + if touch_tip: + pipette.touch_tip() + if drop_tip: + pipette.drop_tip() + +temp_wells = [ +'A1','A2','A3','A4','A5','A6', +'B1','B2','B3','B4','B5','B6', +'C1','C2','C3','C4','C5','C6', +'D1','D2','D3','D4','D5','D6' +] + +class DNA_assembly(): + ''' + Creates a protocol for automated DNA assembly. + + Attributes + ---------- + volume_total_reaction : float + The total volume of the reaction mix in microliters. By default, 20 microliters. + volume_part : float + The volume of each part in microliters. By default, 2 microliters. + volume_restriction_enzyme : float + The volume of the restriction enzyme in microliters. By default, 2 microliters. + volume_t4_dna_ligase : float + The volume of T4 DNA Ligase in microliters. By default, 4 microliters. + volume_t4_dna_ligase_buffer : float + The volume of T4 DNA Ligase Buffer in microliters. By default, 2 microliters. + replicates : int + The number of replicates of the assembly reaction. By default, 2. + thermocycler_starting_well : int + The starting well of the thermocycler module. By default, 0. + thermocycler_labware : str + The labware type of the thermocycler module. By default, 'nest_96_wellplate_100ul_pcr_full_skirt'. + thermocycler_slots : list + The slots of the thermocycler module. By default, [7, 8, 10, 11]. + temperature_module_labware : str + The labware type of the temperature module. By default, 'opentrons_24_aluminumblock_nest_1.5ml_snapcap'. + temperature_module_slot : int + The slot of the temperature module. By default, 1. + tiprack_labware : str + The labware type of the tiprack. By default, 'opentrons_96_tiprack_20ul'. + tiprack_slot : int + The slot of the tiprack. By default, 9. + pipette_type : str + The type of pipette. By default, 'p20_single_gen2'. + pipette_mount : str + The mount of the pipette. By default, 'left'. + aspiration_rate : float + The rate of aspiration in microliters per second. By default, 0.5 microliters per second. + dispense_rate : float + The rate of dispense in microliters per second. By default, 1 microliter per second. + ''' + def __init__(self, + volume_total_reaction:float = 20, + volume_part:float = 2, + volume_restriction_enzyme:float = 2, + volume_t4_dna_ligase:float = 4, + volume_t4_dna_ligase_buffer:float = 2, + replicates:int=1, + thermocycler_starting_well:int = 0, + thermocycler_labware:str = 'nest_96_wellplate_100ul_pcr_full_skirt', + temperature_module_labware:str = 'opentrons_24_aluminumblock_nest_1.5ml_snapcap', + temperature_module_position:int = 1, + tiprack_labware:str = 'opentrons_96_tiprack_20ul', + tiprack_position:int = 9, + pipette:str = 'p20_single_gen2', + pipette_position:str = 'left', + aspiration_rate:float=0.5, + dispense_rate:float=1,): + + self.volume_total_reaction = volume_total_reaction + self.volume_part = volume_part + self.volume_restriction_enzyme = volume_restriction_enzyme + self.volume_t4_dna_ligase = volume_t4_dna_ligase + self.volume_t4_dna_ligase_buffer = volume_t4_dna_ligase_buffer + self.replicates = replicates + self.thermocycler_starting_well = thermocycler_starting_well + self.thermocycler_labware = thermocycler_labware + self.temperature_module_labware = temperature_module_labware + self.temperature_module_position = temperature_module_position + self.tiprack_labware = tiprack_labware + self.tiprack_position = tiprack_position + self.pipette = pipette + self.pipette_position = pipette_position + self.aspiration_rate = aspiration_rate + self.dispense_rate = dispense_rate + +class sbol2assembly(DNA_assembly): + ''' + Creates a protocol from a dictionaty for the automated assembly. + + ''' + def __init__(self, assemblies:List[Dict], + *args, **kwargs): + super().__init__(*args, **kwargs) + + self.assemblies = assemblies + self.dict_of_parts_in_temp_mod_position = {} + self.dict_of_parts_in_thermocycler = {} + self.assembly_plan = None + self.parts_set = set() + self.backbone_set = set() + self.restriction_enzyme = assembly["RestrictionEnzyme"] #TODO generalize for multiple restriction enzymes + self.combined_set = set() + self.has_odd = False + self.has_even = False + self.odd_combinations = [] + self.even_combinations = [] + + # add parts to a set + for assembly in self.assemblies: + #part parts + for part in assembly["PartsList"]: + self.parts_set.add(part) + #backbone parts + self.backbone_set.add(assembly["Backbone"]) + #1 enzyme + #TODO: add here to generalize restriction enzymes #self.restriction_enzyme_set.add(assembly["RestrictionEnzyme"]) + + self.combined_set = self.parts_set.union(self.backbone_set) + + max_parts = 19 #TODO check if this olds, 20 + if len(self.combined_set) > max_parts: + raise ValueError(f'This protocol only supports assemblies with up to {max_parts} parts. Number of parts in the protocol is {len(self.parts_set)}. Printing parts set:{self.parts_set}') + thermocyler_available_wells = 96 - self.thermocycler_starting_well + thermocycler_wells_needed = (len(self.odd_combinations) + len(self.even_combinations))*self.replicates + if thermocycler_wells_needed > thermocyler_available_wells: + raise ValueError(f'According to your setup this protocol only supports assemblies with up to {thermocyler_available_wells} combinations. Number of combinations in the protocol is {thermocycler_wells_needed}.') + + def run(self, protocol: protocol_api.ProtocolContext): + #Labware + #Load temperature module + tem_mod = protocol.load_module('temperature module', f'{self.temperature_module_position}') #CV: Previously was '3', but the cord was not long enough + tem_mod_block = tem_mod.load_labware(self.temperature_module_labware) + #Load the thermocycler module, its default location is on slots 7, 8, 10 and 11 + thermocycler_mod = protocol.load_module('thermocycler module') + thermocycler_mod_plate = thermocycler_mod.load_labware(self.thermocycler_labware) + #Load the tiprack + tiprack = protocol.load_labware(self.tiprack_labware, f'{self.tiprack_position}') + #Load the pipette + pipette = protocol.load_instrument(self.pipette, self.pipette_position, tip_racks=[tiprack]) + #Fixed volumes + volume_reagents = self.volume_restriction_enzyme + self.volume_t4_dna_ligase + self.volume_t4_dna_ligase_buffer + #Load the reagents + dd_h2o = tem_mod_block['A1'] + self.dict_of_parts_in_temp_mod_position['dd_h2o'] = temp_wells[0] + t4_dna_ligase = tem_mod_block['A2'] + self.dict_of_parts_in_temp_mod_position['t4_dna_ligase'] = temp_wells[1] + t4_dna_ligase_buffer = tem_mod_block['A3'] + self.dict_of_parts_in_temp_mod_position['t4_dna_ligase_buffer'] = temp_wells[2] + temp_wells_counter = 3 + restriction_enzyme_tube = tem_mod_block[temp_wells[temp_wells_counter]] + self.dict_of_parts_in_temp_mod_position[self.restriction_enzyme] = temp_wells[temp_wells_counter] + temp_wells_counter += 1 + #Load the parts + for part in self.combined_set: + self.dict_of_parts_in_temp_mod_position[part] = temp_wells[temp_wells_counter] + temp_wells_counter += 1 + #Setup + #Set the temperature of the temperature module and the thermocycler to 4°C + tem_mod.set_temperature(4) + thermocycler_mod.open_lid() + thermocycler_mod.set_block_temperature(4) + #can be done with multichannel pipette? + current_thermocycler_well = self.thermocycler_starting_well + #build combinations + for assembly in self.assemblies: + for r in range(self.replicates): + volume_dd_h2o = self.volume_total_reaction - (volume_reagents + self.volume_part*len(assembly["PartsList"])) + liquid_transfer(pipette, volume_dd_h2o, dd_h2o, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate) + liquid_transfer(pipette, self.volume_t4_dna_ligase_buffer, t4_dna_ligase_buffer, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_t4_dna_ligase_buffer) + liquid_transfer(pipette, self.volume_t4_dna_ligase, t4_dna_ligase, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_t4_dna_ligase) + liquid_transfer(pipette, self.volume_restriction_enzyme, restriction_enzyme_tube, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_restriction_enzyme) + #pippeting backbone + liquid_transfer(pipette, self.volume_part, tem_mod_block[self.dict_of_parts_in_temp_mod_position[assembly["Backbone"]]], thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_part) + #pippeting parts + for part in assembly["PartsList"]: + if type(part) == str: + part_name=part + else: raise ValueError(f'Part {part} is not a string nor sbol2.Component') #TODO: improve this check + #part_ubication_in_thermocyler = thermocycler_mod_plate[thermo_wells[current_thermocycler_well]] + liquid_transfer(pipette, self.volume_part, tem_mod_block[self.dict_of_parts_in_temp_mod_position[part_name]], thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_part) + self.dict_of_parts_in_thermocycler[assembly] = thermo_wells[current_thermocycler_well] + current_thermocycler_well+=1 + + protocol.comment('Take out the reagents since the temperature module will be turn off') + #We close the thermocycler lid and wait for the temperature to reach 42°C + thermocycler_mod.close_lid() + #The thermocycler's lid temperature is set with the following command + thermocycler_mod.set_lid_temperature(42) + tem_mod.deactivate() + #Cycles were made following https://pubs.acs.org/doi/10.1021/sb500366v + profile = [ + {'temperature': 42, 'hold_time_minutes': 2}, + {'temperature': 16, 'hold_time_minutes': 5}] + thermocycler_mod.execute_profile(steps=profile, repetitions=25, block_max_volume=30) + + denaturation = [ + {'temperature': 60, 'hold_time_minutes': 10}, + {'temperature': 80, 'hold_time_minutes': 10}] + thermocycler_mod.execute_profile(steps=denaturation, repetitions=1, block_max_volume=30) + thermocycler_mod.set_block_temperature(4) + #END + + #output + print('Parts and reagents in temp_module') + print(self.dict_of_parts_in_temp_mod_position) + print('Assembled parts in thermocycler_module') + print(self.dict_of_parts_in_thermocycler) +# assembly +assembly_sbol2_uris = [{ 'Backbone' : 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/ComponentDefinition_dvk_backbone_core/1', +'PartsList' : ['https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/J23100/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/E0040m_gfp/1', +'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0032/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0015/1'], +'RestrictionEnzyme' : 'https://charmme.synbiohub.org/user/Gonza10V/ligationtestforreal/ComponentDefinition_BsaI/1' +}] + +# metadata +metadata = { +'protocolName': 'PUDU Loop assembly', +'author': 'Gonzalo Vidal ', +'description': 'Automated DNA assembly Loop protocol', +'apiLevel': '2.13'} + +def run(protocol= protocol_api.ProtocolContext): + + pudu_loop_assembly = sbol2assembly(assemblies=assembly_sbol2_uris) + pudu_loop_assembly.run(protocol) + diff --git a/src/pudu/assembly.py b/src/pudu/assembly.py index 718dc23..ba5f86f 100644 --- a/src/pudu/assembly.py +++ b/src/pudu/assembly.py @@ -372,4 +372,134 @@ def run(self, protocol: protocol_api.ProtocolContext): assembly_Odd_1 = {"promoter":["j23101", "j23100"], "rbs":"B0034", "cds":"GFP", "terminator":"B0015", "receiver":"Odd_1"} assembly_Even_2 = {"c4_receptor":"GD0001", "c4_buff_gfp":"GD0002", "spacer1":"20ins1", "spacer2":"Even_2", "receiver":"Even_2"} -assemblies = [assembly_Odd_1, assembly_Even_2] \ No newline at end of file +assemblies = [assembly_Odd_1, assembly_Even_2] + + # Lists to store different components +assembly_sbol2_uris = [{ 'Backbone' : 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/ComponentDefinition_dvk_backbone_core/1', +'PartsList' : ['https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/J23100/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/E0040m_gfp/1', +'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0032/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0015/1'], +'RestrictionEnzyme' : 'https://charmme.synbiohub.org/user/Gonza10V/ligationtestforreal/ComponentDefinition_BsaI/1' +}] + +class sbol2assembly(DNA_assembly): + ''' + Creates a protocol from a dictionaty for the automated assembly. + + ''' + def __init__(self, assemblies:List[Dict], + *args, **kwargs): + super().__init__(*args, **kwargs) + + self.assemblies = assemblies + self.dict_of_parts_in_temp_mod_position = {} + self.dict_of_parts_in_thermocycler = {} + self.assembly_plan = None + self.parts_set = set() + self.backbone_set = set() + self.restriction_enzyme = assembly["RestrictionEnzyme"] #TODO generalize for multiple restriction enzymes + self.combined_set = set() + self.has_odd = False + self.has_even = False + self.odd_combinations = [] + self.even_combinations = [] + + # add parts to a set + for assembly in self.assemblies: + #part parts + for part in assembly["PartsList"]: + self.parts_set.add(part) + #backbone parts + self.backbone_set.add(assembly["Backbone"]) + #1 enzyme + #TODO: add here to generalize restriction enzymes #self.restriction_enzyme_set.add(assembly["RestrictionEnzyme"]) + + self.combined_set = self.parts_set.union(self.backbone_set) + + max_parts = 19 #TODO check if this olds, 20 + if len(self.combined_set) > max_parts: + raise ValueError(f'This protocol only supports assemblies with up to {max_parts} parts. Number of parts in the protocol is {len(self.parts_set)}. Printing parts set:{self.parts_set}') + thermocyler_available_wells = 96 - self.thermocycler_starting_well + thermocycler_wells_needed = (len(self.odd_combinations) + len(self.even_combinations))*self.replicates + if thermocycler_wells_needed > thermocyler_available_wells: + raise ValueError(f'According to your setup this protocol only supports assemblies with up to {thermocyler_available_wells} combinations. Number of combinations in the protocol is {thermocycler_wells_needed}.') + + def run(self, protocol: protocol_api.ProtocolContext): + #Labware + #Load temperature module + tem_mod = protocol.load_module('temperature module', f'{self.temperature_module_position}') #CV: Previously was '3', but the cord was not long enough + tem_mod_block = tem_mod.load_labware(self.temperature_module_labware) + #Load the thermocycler module, its default location is on slots 7, 8, 10 and 11 + thermocycler_mod = protocol.load_module('thermocycler module') + thermocycler_mod_plate = thermocycler_mod.load_labware(self.thermocycler_labware) + #Load the tiprack + tiprack = protocol.load_labware(self.tiprack_labware, f'{self.tiprack_position}') + #Load the pipette + pipette = protocol.load_instrument(self.pipette, self.pipette_position, tip_racks=[tiprack]) + #Fixed volumes + volume_reagents = self.volume_restriction_enzyme + self.volume_t4_dna_ligase + self.volume_t4_dna_ligase_buffer + #Load the reagents + dd_h2o = tem_mod_block['A1'] + self.dict_of_parts_in_temp_mod_position['dd_h2o'] = temp_wells[0] + t4_dna_ligase = tem_mod_block['A2'] + self.dict_of_parts_in_temp_mod_position['t4_dna_ligase'] = temp_wells[1] + t4_dna_ligase_buffer = tem_mod_block['A3'] + self.dict_of_parts_in_temp_mod_position['t4_dna_ligase_buffer'] = temp_wells[2] + temp_wells_counter = 3 + restriction_enzyme_tube = tem_mod_block[temp_wells[temp_wells_counter]] + self.dict_of_parts_in_temp_mod_position[self.restriction_enzyme] = temp_wells[temp_wells_counter] + temp_wells_counter += 1 + #Load the parts + for part in self.combined_set: + self.dict_of_parts_in_temp_mod_position[part] = temp_wells[temp_wells_counter] + temp_wells_counter += 1 + #Setup + #Set the temperature of the temperature module and the thermocycler to 4°C + tem_mod.set_temperature(4) + thermocycler_mod.open_lid() + thermocycler_mod.set_block_temperature(4) + #can be done with multichannel pipette? + current_thermocycler_well = self.thermocycler_starting_well + #build combinations + for assembly in self.assemblies: + for r in range(self.replicates): + volume_dd_h2o = self.volume_total_reaction - (volume_reagents + self.volume_part*len(assembly["PartsList"])) + liquid_transfer(pipette, volume_dd_h2o, dd_h2o, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate) + liquid_transfer(pipette, self.volume_t4_dna_ligase_buffer, t4_dna_ligase_buffer, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_t4_dna_ligase_buffer) + liquid_transfer(pipette, self.volume_t4_dna_ligase, t4_dna_ligase, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_t4_dna_ligase) + liquid_transfer(pipette, self.volume_restriction_enzyme, restriction_enzyme_tube, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_restriction_enzyme) + #pippeting backbone + liquid_transfer(pipette, self.volume_part, tem_mod_block[self.dict_of_parts_in_temp_mod_position[assembly["Backbone"]]], thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_part) + #pippeting parts + for part in assembly["PartsList"]: + if type(part) == str: + part_name=part + else: raise ValueError(f'Part {part} is not a string nor sbol2.Component') #TODO: improve this check + #part_ubication_in_thermocyler = thermocycler_mod_plate[thermo_wells[current_thermocycler_well]] + liquid_transfer(pipette, self.volume_part, tem_mod_block[self.dict_of_parts_in_temp_mod_position[part_name]], thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_part) + self.dict_of_parts_in_thermocycler[assembly] = thermo_wells[current_thermocycler_well] + current_thermocycler_well+=1 + + protocol.comment('Take out the reagents since the temperature module will be turn off') + #We close the thermocycler lid and wait for the temperature to reach 42°C + thermocycler_mod.close_lid() + #The thermocycler's lid temperature is set with the following command + thermocycler_mod.set_lid_temperature(42) + tem_mod.deactivate() + #Cycles were made following https://pubs.acs.org/doi/10.1021/sb500366v + profile = [ + {'temperature': 42, 'hold_time_minutes': 2}, + {'temperature': 16, 'hold_time_minutes': 5}] + thermocycler_mod.execute_profile(steps=profile, repetitions=25, block_max_volume=30) + + denaturation = [ + {'temperature': 60, 'hold_time_minutes': 10}, + {'temperature': 80, 'hold_time_minutes': 10}] + thermocycler_mod.execute_profile(steps=denaturation, repetitions=1, block_max_volume=30) + thermocycler_mod.set_block_temperature(4) + #END + + #output + print('Parts and reagents in temp_module') + print(self.dict_of_parts_in_temp_mod_position) + print('Assembled parts in thermocycler_module') + print(self.dict_of_parts_in_thermocycler) \ No newline at end of file From 6287ae48faaa09e8fc4d6e44509ff6c688b8d277 Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Mon, 19 May 2025 14:27:13 -0600 Subject: [PATCH 005/100] Update assembly.py Updated the assemblies loop to have less code, condensed and redid how we added to the sets --- src/pudu/assembly.py | 499 ++++++++++++++++++++++++++----------------- 1 file changed, 298 insertions(+), 201 deletions(-) diff --git a/src/pudu/assembly.py b/src/pudu/assembly.py index ba5f86f..532ecaf 100644 --- a/src/pudu/assembly.py +++ b/src/pudu/assembly.py @@ -1,8 +1,10 @@ from opentrons import protocol_api +import sbol3 from pudu.utils import thermo_wells, temp_wells, liquid_transfer from typing import List, Dict, Union from fnmatch import fnmatch from itertools import product +import xlsxwriter class DNA_assembly(): @@ -80,16 +82,198 @@ def __init__(self, self.pipette_position = pipette_position self.aspiration_rate = aspiration_rate self.dispense_rate = dispense_rate - #END - + +class Protocol_from_sbol2(DNA_assembly): + ''' + Creates a protocol for the automated assembly of a SBOL Composite. + + Attributes + ---------- + + + assembly_dict : Dict {parts: [list of parts], backbone: backbone uri, restriction_enzyme: re uri} + dictionary containing information about parts, backbone and restriction enzyme to be used in the assembly. + volume_total_reaction : float + The total volume of the reaction mix in microliters. By default, 20 microliters. + volume_part : float + The volume of each part in microliters. By default, 2 microliters. + volume_restriction_enzyme : float + The volume of the restriction enzyme in microliters. By default, 2 microliters. + volume_t4_dna_ligase : float + The volume of T4 DNA Ligase in microliters. By default, 4 microliters. + volume_t4_dna_ligase_buffer : float + The volume of T4 DNA Ligase Buffer in microliters. By default, 2 microliters. + replicates : int + The number of replicates of the assembly reaction. By default, 2. + aspiration_rate : float + The rate of aspiration in microliters per second. By default, 0.5 microliters per second. + thermocycler_starting_well : int + The starting well of the thermocycler module. By default, 0. + thermocycler_labware : str + The labware type of the thermocycler module. By default, 'nest_96_wellplate_100ul_pcr_full_skirt'. + thermocycler_slots : list + The slots of the thermocycler module. By default, [7, 8, 10, 11]. + temperature_module_labware : str + The labware type of the temperature module. By default, 'opentrons_24_aluminumblock_nest_1.5ml_snapcap'. + temperature_module_slot : int + The slot of the temperature module. By default, 1. + tiprack_labware : str + The labware type of the tiprack. By default, 'opentrons_96_tiprack_20ul'. + tiprack_slot : int + The slot of the tiprack. By default, 9. + pipette_type : str + The type of pipette. By default, 'p20_single_gen2'. + pipette_mount : str + The mount of the pipette. By default, 'left'. + ''' + def __init__(self, assembly_plan:sbol3.Component, + *args, **kwargs): + super().__init__(*args, **kwargs) + self.assembly_plan = assembly_plan + self.dict_of_parts_in_temp_mod_position = {} + self.dict_of_parts_in_thermocycler = {} + self.sbol_output = [] + + metadata = { + 'protocolName': 'Automated Golden Gate from SBOL', + 'author': 'Gonzalo Vidal ', + 'description': 'Protocol to perform a Golden Gate assembly from SBOL', + 'apiLevel': '2.13'} + + def run(self, protocol: protocol_api.ProtocolContext): + #Labware + #Load the magnetic module + tem_mod = protocol.load_module('temperature module', f'{self.temperature_module_position}') #CV: Previously was '3', but the cord was not long enough + tem_mod_block = tem_mod.load_labware(self.temperature_module_labware) + #Load the thermocycler module, its default location is on slots 7, 8, 10 and 11 + thermocycler_mod = protocol.load_module('thermocycler module') + thermocycler_mod_plate = thermocycler_mod.load_labware(self.thermocycler_labware) + #Load the tiprack + tiprack = protocol.load_labware(self.tiprack_labware, f'{self.tiprack_position}') + #Load the pipette + pipette = protocol.load_instrument(self.pipette, self.pipette_position, tip_racks=[tiprack]) + #Fixed volumes + #State volumes. They can be a function of [DNA], the minimun value is 1 uL + #Parts should be diluted to the necessary concentration to aspirate 1 or 2 uL + volume_reagents =self.volume_restriction_enzyme + self.volume_t4_dna_ligase + self.volume_t4_dna_ligase_buffer + + #Load the reagents + restriction_enzyme = tem_mod_block['A1'] + self.dict_of_parts_in_temp_mod_position['restriction_enzyme'] = temp_wells[0] + t4_dna_ligase = tem_mod_block['A2'] + self.dict_of_parts_in_temp_mod_position['t4_dna_ligase'] = temp_wells[1] + t4_dna_ligase_buffer = tem_mod_block['A3'] + self.dict_of_parts_in_temp_mod_position['t4_dna_ligase_buffer'] = temp_wells[2] + dd_h2o = tem_mod_block['A4'] + self.dict_of_parts_in_temp_mod_position['dd_h2o'] = temp_wells[3] + temp_wells_counter = 4 + #Setup + #Set the temperature of the temperature module and the thermocycler to 4°C + tem_mod.set_temperature(4) + thermocycler_mod.open_lid() + thermocycler_mod.set_block_temperature(4) + + #creating set of parts to be used in the assembly + assemblies_component_set = set() + for composite in self.assembly_plan.composites: + composite_component = [top_level for top_level in composite if type(top_level)==sbol3.Component][0] + for part_extract_sc in composite_component.features: + #get parts + part = part_extract_sc.instance_of.lookup() + if not part: + raise ValueError(f'Part in backbone not found from part extract {part_extract_sc.identity}') + assemblies_component_set.add(part) + + #load parts from set in the temperature module + if len(assemblies_component_set) > 20: + raise ValueError('Number of parts in the assembly plan is greater than 20. This protocol only supports assemblies with up to 20 parts') + for part_component in assemblies_component_set: + self.dict_of_parts_in_temp_mod_position[part_component] = temp_wells[temp_wells_counter] + temp_wells_counter += 1 + #load parts and reagents in the thermocycler + current_thermocycler_well = self.thermocycler_starting_well + for composite in self.assembly_plan.composites: + composite_component = [top_level for top_level in composite if type(top_level)==sbol3.Component][0] + #load reagents in the thermocycler + volume_parts = len(composite_component.features) * self.volume_part + volume_dd_h2o = self.volume_total_reaction - (volume_reagents + volume_parts) + if volume_dd_h2o < 1 and volume_dd_h2o!=0 : + raise ValueError('The volume of dd_h2o is not enough to perform the experiment') + liquid_transfer(pipette, volume_dd_h2o, dd_h2o, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate) + liquid_transfer(pipette, self.volume_t4_dna_ligase_buffer, t4_dna_ligase_buffer, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_t4_dna_ligase_buffer) + liquid_transfer(pipette, self.volume_t4_dna_ligase, t4_dna_ligase, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_t4_dna_ligase) + liquid_transfer(pipette, self.volume_restriction_enzyme, restriction_enzyme, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_restriction_enzyme) + #TODO: multiple restriction enzymes + for r in range(self.replicates): + for part_extract_sc in composite_component.features: + #get parts + part_component = part_extract_sc.instance_of.lookup() + part_name = part_component.name + assembled_dna = sbol3.Implementation(identity=f'assembled_dna_{part_name}_{r}', built=part, description=f'Thermocycler well {thermo_wells[current_thermocycler_well]}') + self.sbol_output.append(assembled_dna) + part_ubication_in_thermocyler = thermocycler_mod_plate[thermo_wells[current_thermocycler_well]] + liquid_transfer(pipette, self.volume_part, tem_mod_block[self.dict_of_parts_in_temp_mod_position[part_component]], part_ubication_in_thermocyler, self.aspiration_rate, self.dispense_rate, mix_before=self.volume_part) + if r == 0: + self.dict_of_parts_in_thermocycler[composite_component] = [thermo_wells[current_thermocycler_well]] + else: + self.dict_of_parts_in_thermocycler[composite_component].append(thermo_wells[current_thermocycler_well]) + current_thermocycler_well+=1 + + protocol.comment('Take out the reagents since the temperature module will be turn off') + #We close the thermocycler lid and wait for the temperature to reach 42°C + thermocycler_mod.close_lid() + #The thermocycler's lid temperature is set with the following command + thermocycler_mod.set_lid_temperature(42) + tem_mod.deactivate() + #Cycles were made following https://pubs.acs.org/doi/10.1021/sb500366v + profile = [ + {'temperature': 42, 'hold_time_minutes': 2}, + {'temperature': 16, 'hold_time_minutes': 5}] + thermocycler_mod.execute_profile(steps=profile, repetitions=25, block_max_volume=30) + + denaturation = [ + {'temperature': 60, 'hold_time_minutes': 10}, + {'temperature': 80, 'hold_time_minutes': 10}] + thermocycler_mod.execute_profile(steps=denaturation, repetitions=1, block_max_volume=30) + thermocycler_mod.set_block_temperature(4) + #END + + def get_xlsx_output(self, name:str): + workbook = xlsxwriter.Workbook(f'{name}.xlsx') + worksheet = workbook.add_worksheet() + row_num = 0 + col_num = 0 + worksheet.write(row_num, col_num, 'Parts in temp_module') + row_num += 2 + for key, value in self.dict_of_parts_in_temp_mod_position.items(): + if type(key)==sbol3.Component: + key=key.name + worksheet.write(row_num, col_num, key) + worksheet.write(row_num+1, col_num, value) + col_num += 1 + col_num = 0 + row_num += 4 + worksheet.write(row_num, col_num, 'Parts in thermocycler_module') + row_num += 2 + for key, value in self.dict_of_parts_in_thermocycler.items(): + if type(key)==sbol3.Component: + key=key.identity + worksheet.write(row_num, col_num, key) + worksheet.write_column(row_num+1, col_num, value) + col_num += 1 + workbook.close() + self.xlsx_output = workbook + return self.xlsx_output + #END + class Domestication(DNA_assembly): ''' Creates a protocol for automated domestication, assembly of parts into universal acceptor backbone. ''' - def __init__(self, parts:Union[List,Dict], acceptor_backbone:str, + def __init__(self, parts:Union[List,Dict], acceptor_backbone:Union[str, sbol3.Component], *args, **kwargs): super().__init__(*args, **kwargs) @@ -97,8 +281,8 @@ def __init__(self, parts:Union[List,Dict], acceptor_backbone:str, self.acceptor_backbone = acceptor_backbone self.dict_of_parts_in_temp_mod_position = {} self.dict_of_parts_in_thermocycler = {} - #self.sbol_output = [] - #self.xlsx_output = None + self.sbol_output = [] + self.xlsx_output = None if len(parts) > 19: raise ValueError(f'This protocol only supports assemblies with up to 20 parts. Number of parts in the protocol is {len(parts)}') @@ -157,10 +341,17 @@ def run(self, protocol: protocol_api.ProtocolContext): i = self.thermocycler_starting_well for part in self.parts: if type(part) == str: - part_name=part + part_name=part + elif type(part) == sbol3.Component: + part_name=part.name else: raise ValueError(f'Part {part} is not a string or an sbol3.Component') self.dict_of_parts_in_temp_mod_position[part_name] = temp_wells[temp_wells_counter] for r in range(self.replicates): + #Add sbol implementation + if type(part) == sbol3.Component: + #create assembled_dna Implementation that points to the part + assembled_dna = sbol3.Implementation(f'assembled_dna_{part_name}_{r}', part, description=f'Thermocycler well {thermo_wells[i]}') + self.sbol_output.append(assembled_dna) part_ubication_in_thermocyler = thermocycler_mod_plate[thermo_wells[i]] if r == 0: self.dict_of_parts_in_thermocycler[part_name] = [thermo_wells[i]] @@ -187,15 +378,31 @@ def run(self, protocol: protocol_api.ProtocolContext): {'temperature': 80, 'hold_time_minutes': 10}] thermocycler_mod.execute_profile(steps=denaturation, repetitions=1, block_max_volume=30) thermocycler_mod.set_block_temperature(4) - - #output - print('Parts and reagents in temp_module') - print(self.dict_of_parts_in_temp_mod_position) - print('Domesticated parts in thermocycler_module') - print(self.dict_of_parts_in_thermocycler) #END - + def get_xlsx_output(self, name:str): + workbook = xlsxwriter.Workbook(f'{name}.xlsx') + worksheet = workbook.add_worksheet() + row_num = 0 + col_num = 0 + worksheet.write(row_num, col_num, 'Parts in temp_module') + row_num += 2 + for key, value in self.dict_of_parts_in_temp_mod_position.items(): + worksheet.write(row_num, col_num, key) + worksheet.write(row_num+1, col_num, value) + col_num += 1 + col_num = 0 + row_num += 4 + worksheet.write(row_num, col_num, 'Parts in thermocycler_module') + row_num += 2 + for key, value in self.dict_of_parts_in_thermocycler.items(): + worksheet.write(row_num, col_num, key) + worksheet.write_column(row_num+1, col_num, value) + col_num += 1 + workbook.close() + self.xlsx_output = workbook + return self.xlsx_output + #END class Loop_assembly(DNA_assembly): ''' @@ -210,6 +417,7 @@ def __init__(self, assemblies:List[Dict], self.dict_of_parts_in_temp_mod_position = {} self.dict_of_parts_in_thermocycler = {} self.assembly_plan = None + self.sbol_output = [] self.pattern_odd = 'Odd*' self.pattern_even = 'Even*' self.parts_set = set() @@ -217,38 +425,29 @@ def __init__(self, assemblies:List[Dict], self.has_even = False self.odd_combinations = [] self.even_combinations = [] - + # add parts to a set for assembly in self.assemblies: list_of_list_of_parts_per_role = [] - if fnmatch(assembly['receiver'], self.pattern_odd): + receiver = assembly['receiver'] + + if fnmatch(receiver, self.pattern_odd): self.has_odd = True - for role in assembly: - parts = assembly[role] - if type(parts) is str: - parts_per_role = [parts] - else: - parts_per_role = parts - for part in parts_per_role: - self.parts_set.add(part) - list_of_list_of_parts_per_role.append(parts_per_role) - list_of_combinations_per_assembly = list(product(*list_of_list_of_parts_per_role)) - for combination in list_of_combinations_per_assembly: - self.odd_combinations.append(combination) - if fnmatch(assembly['receiver'], self.pattern_even): - self.has_even = True - for role in assembly: - parts = assembly[role] - if type(parts) is str: - parts_per_role = [parts] - else: - parts_per_role = parts - for part in parts_per_role: - self.parts_set.add(part) - list_of_list_of_parts_per_role.append(parts_per_role) - list_of_combinations_per_assembly = list(product(*list_of_list_of_parts_per_role)) - for combination in list_of_combinations_per_assembly: - self.even_combinations.append(combination) + combinations_list = self.odd_combinations + elif fnmatch(receiver, self.pattern_even): + self.has_even = True + combinations_list = self.even_combinations + else: + continue # Skip assemblies that don't match + + for role, parts in assembly.items(): + if role == 'receiver': + continue # Skip receiver key + parts_per_role = [parts] if isinstance(parts, str) else parts + self.parts_set.update(parts_per_role) + list_of_list_of_parts_per_role.append(parts_per_role) + + combinations_list.extend(product(*list_of_list_of_parts_per_role)) if self.has_odd and self.has_even: max_parts = 18 @@ -263,6 +462,12 @@ def __init__(self, assemblies:List[Dict], if thermocycler_wells_needed > thermocyler_available_wells: raise ValueError(f'According to your setup this protocol only supports assemblies with up to {thermocyler_available_wells} combinations. Number of combinations in the protocol is {thermocycler_wells_needed}.') + metadata = { + 'protocolName': 'Automated Loop assembly', + 'author': 'Gonzalo Vidal ', + 'description': 'Protocol to perform Loop assembly', + 'apiLevel': '2.13'} + def run(self, protocol: protocol_api.ProtocolContext): #Labware #Load temperature module @@ -279,19 +484,14 @@ def run(self, protocol: protocol_api.ProtocolContext): volume_reagents = self.volume_restriction_enzyme + self.volume_t4_dna_ligase + self.volume_t4_dna_ligase_buffer #Load the reagents dd_h2o = tem_mod_block['A1'] - self.dict_of_parts_in_temp_mod_position['dd_h2o'] = temp_wells[0] t4_dna_ligase = tem_mod_block['A2'] - self.dict_of_parts_in_temp_mod_position['t4_dna_ligase'] = temp_wells[1] t4_dna_ligase_buffer = tem_mod_block['A3'] - self.dict_of_parts_in_temp_mod_position['t4_dna_ligase_buffer'] = temp_wells[2] temp_wells_counter = 3 if self.has_odd: restriction_enzyme_bsai = tem_mod_block[temp_wells[temp_wells_counter]] - self.dict_of_parts_in_temp_mod_position['BsaI'] = temp_wells[temp_wells_counter] temp_wells_counter += 1 if self.has_even: restriction_enzyme_sapi = tem_mod_block[temp_wells[temp_wells_counter]] - self.dict_of_parts_in_temp_mod_position['SapI'] = temp_wells[temp_wells_counter] temp_wells_counter += 1 #Load the parts for part in self.parts_set: @@ -313,15 +513,22 @@ def run(self, protocol: protocol_api.ProtocolContext): liquid_transfer(pipette, self.volume_t4_dna_ligase, t4_dna_ligase, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_t4_dna_ligase) liquid_transfer(pipette, self.volume_restriction_enzyme, restriction_enzyme_bsai, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_restriction_enzyme) #pippeting parts - for r in range(self.replicates): - for part in odd_combination: - if type(part) == str: - part_name=part - else: raise ValueError(f'Part {part} is not a string nor sbol3.Component') + for part in odd_combination: + if type(part) == str: + part_name=part + elif type(part) == sbol3.Component: + part_name=part.name + else: raise ValueError(f'Part {part} is not a string nor sbol3.Component') + for r in range(self.replicates): + #Add sbol implementation + if type(part) == sbol3.Component: + #create assembled_dna Implementation that points to the part + assembled_dna = sbol3.Implementation(f'assembled_dna_{part_name}_{r}', part, description=f'Thermocycler well {thermo_wells[current_thermocycler_well]}') + self.sbol_output.append(assembled_dna) #part_ubication_in_thermocyler = thermocycler_mod_plate[thermo_wells[current_thermocycler_well]] liquid_transfer(pipette, self.volume_part, tem_mod_block[self.dict_of_parts_in_temp_mod_position[part_name]], thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_part) - self.dict_of_parts_in_thermocycler[odd_combination] = thermo_wells[current_thermocycler_well] - current_thermocycler_well+=1 + current_thermocycler_well+=1 + temp_wells_counter += 1 for even_combination in self.even_combinations: #pippeting reagents @@ -331,14 +538,21 @@ def run(self, protocol: protocol_api.ProtocolContext): liquid_transfer(pipette, self.volume_t4_dna_ligase, t4_dna_ligase, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_t4_dna_ligase) liquid_transfer(pipette, self.volume_restriction_enzyme, restriction_enzyme_sapi, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_restriction_enzyme) #pippeting parts - for r in range(self.replicates): - for part in even_combination: - if type(part) == str: - part_name=part - else: raise ValueError(f'Part {part} is not a string nor sbol3.Component') + for part in even_combination: + if type(part) == str: + part_name=part + elif type(part) == sbol3.Component: + part_name=part.name + else: raise ValueError(f'Part {part} is not a string nor sbol3.Component') + for r in range(self.replicates): + #Add sbol implementation + if type(part) == sbol3.Component: + #create assembled_dna Implementation that points to the part + assembled_dna = sbol3.Implementation(f'assembled_dna_{part_name}_{r}', part, description=f'Thermocycler well {thermo_wells[current_thermocycler_well]}') + self.sbol_output.append(assembled_dna) liquid_transfer(pipette, self.volume_part, tem_mod_block[self.dict_of_parts_in_temp_mod_position[part_name]], thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_part) - self.dict_of_parts_in_thermocycler[even_combination] = thermo_wells[current_thermocycler_well] - current_thermocycler_well+=1 + current_thermocycler_well+=1 + temp_wells_counter += 1 protocol.comment('Take out the reagents since the temperature module will be turn off') #We close the thermocycler lid and wait for the temperature to reach 42°C @@ -359,147 +573,30 @@ def run(self, protocol: protocol_api.ProtocolContext): thermocycler_mod.set_block_temperature(4) #END - #output - print('Parts and reagents in temp_module') - print(self.dict_of_parts_in_temp_mod_position) - print('Assembled parts in thermocycler_module') - print(self.dict_of_parts_in_thermocycler) - -# assembly -assembly_Odd_1 = {"promoter":["GVP0010", "GVP0011", "GVP0014"], "rbs":["B0033","B0034"], "cds":"sfGFP", "terminator":"B0015", "receiver":"Odd_1"} -#assembly_Even_2 = {"c4_receptor":"GD0001", "c4_buff_gfp":"GD0002", "spacer1":"20ins1", "spacer2":"Even_2", "receiver":"Even_2"} -assemblies = [assembly_Odd_1] + def get_xlsx_output(self, name:str): + workbook = xlsxwriter.Workbook(f'{name}.xlsx') + worksheet = workbook.add_worksheet() + row_num = 0 + col_num = 0 + worksheet.write(row_num, col_num, 'Parts in temp_module') + row_num += 2 + for key, value in self.dict_of_parts_in_temp_mod_position.items(): + worksheet.write(row_num, col_num, key) + worksheet.write(row_num+1, col_num, value) + col_num += 1 + col_num = 0 + row_num += 4 + worksheet.write(row_num, col_num, 'Parts in thermocycler_module') + row_num += 2 + for key, value in self.dict_of_parts_in_thermocycler.items(): + worksheet.write(row_num, col_num, key) + worksheet.write_column(row_num+1, col_num, value) + col_num += 1 + workbook.close() + self.xlsx_output = workbook + return self.xlsx_output + #END assembly_Odd_1 = {"promoter":["j23101", "j23100"], "rbs":"B0034", "cds":"GFP", "terminator":"B0015", "receiver":"Odd_1"} -assembly_Even_2 = {"c4_receptor":"GD0001", "c4_buff_gfp":"GD0002", "spacer1":"20ins1", "spacer2":"Even_2", "receiver":"Even_2"} +assembly_Even_2 = {"promoter":["j23101", "j23100"], "rbs":"B0034", "cds":"GFP", "terminator":"B0015", "receiver":"Even_2"} assemblies = [assembly_Odd_1, assembly_Even_2] - - # Lists to store different components -assembly_sbol2_uris = [{ 'Backbone' : 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/ComponentDefinition_dvk_backbone_core/1', -'PartsList' : ['https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/J23100/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/E0040m_gfp/1', -'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0032/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0015/1'], -'RestrictionEnzyme' : 'https://charmme.synbiohub.org/user/Gonza10V/ligationtestforreal/ComponentDefinition_BsaI/1' -}] - -class sbol2assembly(DNA_assembly): - ''' - Creates a protocol from a dictionaty for the automated assembly. - - ''' - def __init__(self, assemblies:List[Dict], - *args, **kwargs): - super().__init__(*args, **kwargs) - - self.assemblies = assemblies - self.dict_of_parts_in_temp_mod_position = {} - self.dict_of_parts_in_thermocycler = {} - self.assembly_plan = None - self.parts_set = set() - self.backbone_set = set() - self.restriction_enzyme = assembly["RestrictionEnzyme"] #TODO generalize for multiple restriction enzymes - self.combined_set = set() - self.has_odd = False - self.has_even = False - self.odd_combinations = [] - self.even_combinations = [] - - # add parts to a set - for assembly in self.assemblies: - #part parts - for part in assembly["PartsList"]: - self.parts_set.add(part) - #backbone parts - self.backbone_set.add(assembly["Backbone"]) - #1 enzyme - #TODO: add here to generalize restriction enzymes #self.restriction_enzyme_set.add(assembly["RestrictionEnzyme"]) - - self.combined_set = self.parts_set.union(self.backbone_set) - - max_parts = 19 #TODO check if this olds, 20 - if len(self.combined_set) > max_parts: - raise ValueError(f'This protocol only supports assemblies with up to {max_parts} parts. Number of parts in the protocol is {len(self.parts_set)}. Printing parts set:{self.parts_set}') - thermocyler_available_wells = 96 - self.thermocycler_starting_well - thermocycler_wells_needed = (len(self.odd_combinations) + len(self.even_combinations))*self.replicates - if thermocycler_wells_needed > thermocyler_available_wells: - raise ValueError(f'According to your setup this protocol only supports assemblies with up to {thermocyler_available_wells} combinations. Number of combinations in the protocol is {thermocycler_wells_needed}.') - - def run(self, protocol: protocol_api.ProtocolContext): - #Labware - #Load temperature module - tem_mod = protocol.load_module('temperature module', f'{self.temperature_module_position}') #CV: Previously was '3', but the cord was not long enough - tem_mod_block = tem_mod.load_labware(self.temperature_module_labware) - #Load the thermocycler module, its default location is on slots 7, 8, 10 and 11 - thermocycler_mod = protocol.load_module('thermocycler module') - thermocycler_mod_plate = thermocycler_mod.load_labware(self.thermocycler_labware) - #Load the tiprack - tiprack = protocol.load_labware(self.tiprack_labware, f'{self.tiprack_position}') - #Load the pipette - pipette = protocol.load_instrument(self.pipette, self.pipette_position, tip_racks=[tiprack]) - #Fixed volumes - volume_reagents = self.volume_restriction_enzyme + self.volume_t4_dna_ligase + self.volume_t4_dna_ligase_buffer - #Load the reagents - dd_h2o = tem_mod_block['A1'] - self.dict_of_parts_in_temp_mod_position['dd_h2o'] = temp_wells[0] - t4_dna_ligase = tem_mod_block['A2'] - self.dict_of_parts_in_temp_mod_position['t4_dna_ligase'] = temp_wells[1] - t4_dna_ligase_buffer = tem_mod_block['A3'] - self.dict_of_parts_in_temp_mod_position['t4_dna_ligase_buffer'] = temp_wells[2] - temp_wells_counter = 3 - restriction_enzyme_tube = tem_mod_block[temp_wells[temp_wells_counter]] - self.dict_of_parts_in_temp_mod_position[self.restriction_enzyme] = temp_wells[temp_wells_counter] - temp_wells_counter += 1 - #Load the parts - for part in self.combined_set: - self.dict_of_parts_in_temp_mod_position[part] = temp_wells[temp_wells_counter] - temp_wells_counter += 1 - #Setup - #Set the temperature of the temperature module and the thermocycler to 4°C - tem_mod.set_temperature(4) - thermocycler_mod.open_lid() - thermocycler_mod.set_block_temperature(4) - #can be done with multichannel pipette? - current_thermocycler_well = self.thermocycler_starting_well - #build combinations - for assembly in self.assemblies: - for r in range(self.replicates): - volume_dd_h2o = self.volume_total_reaction - (volume_reagents + self.volume_part*len(assembly["PartsList"])) - liquid_transfer(pipette, volume_dd_h2o, dd_h2o, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate) - liquid_transfer(pipette, self.volume_t4_dna_ligase_buffer, t4_dna_ligase_buffer, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_t4_dna_ligase_buffer) - liquid_transfer(pipette, self.volume_t4_dna_ligase, t4_dna_ligase, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_t4_dna_ligase) - liquid_transfer(pipette, self.volume_restriction_enzyme, restriction_enzyme_tube, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_restriction_enzyme) - #pippeting backbone - liquid_transfer(pipette, self.volume_part, tem_mod_block[self.dict_of_parts_in_temp_mod_position[assembly["Backbone"]]], thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_part) - #pippeting parts - for part in assembly["PartsList"]: - if type(part) == str: - part_name=part - else: raise ValueError(f'Part {part} is not a string nor sbol2.Component') #TODO: improve this check - #part_ubication_in_thermocyler = thermocycler_mod_plate[thermo_wells[current_thermocycler_well]] - liquid_transfer(pipette, self.volume_part, tem_mod_block[self.dict_of_parts_in_temp_mod_position[part_name]], thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_part) - self.dict_of_parts_in_thermocycler[assembly] = thermo_wells[current_thermocycler_well] - current_thermocycler_well+=1 - - protocol.comment('Take out the reagents since the temperature module will be turn off') - #We close the thermocycler lid and wait for the temperature to reach 42°C - thermocycler_mod.close_lid() - #The thermocycler's lid temperature is set with the following command - thermocycler_mod.set_lid_temperature(42) - tem_mod.deactivate() - #Cycles were made following https://pubs.acs.org/doi/10.1021/sb500366v - profile = [ - {'temperature': 42, 'hold_time_minutes': 2}, - {'temperature': 16, 'hold_time_minutes': 5}] - thermocycler_mod.execute_profile(steps=profile, repetitions=25, block_max_volume=30) - - denaturation = [ - {'temperature': 60, 'hold_time_minutes': 10}, - {'temperature': 80, 'hold_time_minutes': 10}] - thermocycler_mod.execute_profile(steps=denaturation, repetitions=1, block_max_volume=30) - thermocycler_mod.set_block_temperature(4) - #END - - #output - print('Parts and reagents in temp_module') - print(self.dict_of_parts_in_temp_mod_position) - print('Assembled parts in thermocycler_module') - print(self.dict_of_parts_in_thermocycler) \ No newline at end of file From 6c668310241c40cc2c49d386a4718c70f9e0e55a Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Tue, 20 May 2025 11:41:16 -0600 Subject: [PATCH 006/100] LukeChangetoPUDU --- scripts/run_sbol2assembly_libre.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py index cb63bb9..41e3244 100644 --- a/scripts/run_sbol2assembly_libre.py +++ b/scripts/run_sbol2assembly_libre.py @@ -239,7 +239,8 @@ def run(self, protocol: protocol_api.ProtocolContext): print('Parts and reagents in temp_module') print(self.dict_of_parts_in_temp_mod_position) print('Assembled parts in thermocycler_module') - print(self.dict_of_parts_in_thermocycler) + print(self.dict_of_parts_in_thermocycler) + # assembly assembly_sbol2_uris = [{ 'Backbone' : 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/ComponentDefinition_dvk_backbone_core/1', 'PartsList' : ['https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/J23100/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/E0040m_gfp/1', From b42071c0d29e8f77e26b871a616f1758bcf8514e Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Wed, 21 May 2025 08:58:15 -0600 Subject: [PATCH 007/100] Update run_sbol2assembly_libre.py Luke Dysart Update to bug with assembly after attempted push --- scripts/run_sbol2assembly_libre.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py index 41e3244..9b7937e 100644 --- a/scripts/run_sbol2assembly_libre.py +++ b/scripts/run_sbol2assembly_libre.py @@ -133,7 +133,7 @@ def __init__(self, assemblies:List[Dict], self.assembly_plan = None self.parts_set = set() self.backbone_set = set() - self.restriction_enzyme = assembly["RestrictionEnzyme"] #TODO generalize for multiple restriction enzymes + self.restriction_enzyme = "" #empty string to prevent early call of assembly self.combined_set = set() self.has_odd = False self.has_even = False @@ -148,7 +148,7 @@ def __init__(self, assemblies:List[Dict], #backbone parts self.backbone_set.add(assembly["Backbone"]) #1 enzyme - #TODO: add here to generalize restriction enzymes #self.restriction_enzyme_set.add(assembly["RestrictionEnzyme"]) + self.restriction_enzyme = assembly["RestrictionEnzyme"] self.combined_set = self.parts_set.union(self.backbone_set) From ed63cbf227860d127dd4be516e8791f168c0a0c4 Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Wed, 21 May 2025 09:20:48 -0600 Subject: [PATCH 008/100] Update run_sbol2assembly_libre.py Luke update to run_sbol2 assembly, working on push in git --- scripts/run_sbol2assembly_libre.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py index 9b7937e..cebccef 100644 --- a/scripts/run_sbol2assembly_libre.py +++ b/scripts/run_sbol2assembly_libre.py @@ -213,7 +213,8 @@ def run(self, protocol: protocol_api.ProtocolContext): else: raise ValueError(f'Part {part} is not a string nor sbol2.Component') #TODO: improve this check #part_ubication_in_thermocyler = thermocycler_mod_plate[thermo_wells[current_thermocycler_well]] liquid_transfer(pipette, self.volume_part, tem_mod_block[self.dict_of_parts_in_temp_mod_position[part_name]], thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_part) - self.dict_of_parts_in_thermocycler[assembly] = thermo_wells[current_thermocycler_well] + #This line under this comment was written to get it to run, not run correctly + self.dict_of_parts_in_thermocycler[current_thermocycler_well] = thermo_wells[current_thermocycler_well] current_thermocycler_well+=1 protocol.comment('Take out the reagents since the temperature module will be turn off') From f1ab491c3bee2468b97d5dbdca957a2afc32f44d Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Wed, 21 May 2025 10:29:53 -0600 Subject: [PATCH 009/100] practice push --- scripts/run_sbol2assembly_libre.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py index cebccef..a26faea 100644 --- a/scripts/run_sbol2assembly_libre.py +++ b/scripts/run_sbol2assembly_libre.py @@ -3,6 +3,8 @@ from fnmatch import fnmatch from itertools import product +#comment to practice push + # utils From f572676c9b0cd1c18c21d05336cb132139037317 Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Wed, 21 May 2025 11:10:09 -0600 Subject: [PATCH 010/100] practice push --- scripts/run_sbol2assembly_libre.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py index a26faea..152a144 100644 --- a/scripts/run_sbol2assembly_libre.py +++ b/scripts/run_sbol2assembly_libre.py @@ -3,11 +3,9 @@ from fnmatch import fnmatch from itertools import product -#comment to practice push - # utils - +#96 well List plate_96_wells = [ 'A1','A2','A3','A4','A5','A6','A7','A8','A9','A10','A11','A12', 'B1','B2','B3','B4','B5','B6','B7','B8','B9','B10','B11','B12', @@ -19,8 +17,10 @@ 'H1','H2','H3','H4','H5','H6','H7','H8','H9','H10','H11','H12' ] +#filler variable equal to well List thermo_wells = plate_96_wells +#Function to transfer Liquid def liquid_transfer(pipette, volume, source, destination, asp_rate:float=0.5, disp_rate:float=1.0, blow_out:bool=True, touch_tip:bool=False, mix_before:float=0.0, mix_after:float=0.0, mix_reps:int=3, new_tip:bool=True, drop_tip:bool=True): if new_tip: pipette.pick_up_tip() @@ -37,6 +37,7 @@ def liquid_transfer(pipette, volume, source, destination, asp_rate:float=0.5, di if drop_tip: pipette.drop_tip() +#new List for temporary wells temp_wells = [ 'A1','A2','A3','A4','A5','A6', 'B1','B2','B3','B4','B5','B6', @@ -44,6 +45,7 @@ def liquid_transfer(pipette, volume, source, destination, asp_rate:float=0.5, di 'D1','D2','D3','D4','D5','D6' ] +#class DNA Assembly class DNA_assembly(): ''' Creates a protocol for automated DNA assembly. @@ -85,6 +87,7 @@ class DNA_assembly(): dispense_rate : float The rate of dispense in microliters per second. By default, 1 microliter per second. ''' + #self attributes def __init__(self, volume_total_reaction:float = 20, volume_part:float = 2, From 5b7eaec10a4ddb0cff5839c2239e4a93321cf465 Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Wed, 21 May 2025 11:41:56 -0600 Subject: [PATCH 011/100] practice push --- scripts/run_sbol2assembly_libre.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py index 152a144..4b97d4e 100644 --- a/scripts/run_sbol2assembly_libre.py +++ b/scripts/run_sbol2assembly_libre.py @@ -125,7 +125,7 @@ def __init__(self, class sbol2assembly(DNA_assembly): ''' - Creates a protocol from a dictionaty for the automated assembly. + Creates a protocol from a dictionary for the automated assembly. ''' def __init__(self, assemblies:List[Dict], @@ -153,6 +153,7 @@ def __init__(self, assemblies:List[Dict], #backbone parts self.backbone_set.add(assembly["Backbone"]) #1 enzyme + #only takes the last restriction enzyme in the last dictionary self.restriction_enzyme = assembly["RestrictionEnzyme"] self.combined_set = self.parts_set.union(self.backbone_set) From 06e89046d95c4f73ccc525a8120d53aa8290d0f9 Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Wed, 21 May 2025 11:43:09 -0600 Subject: [PATCH 012/100] found error that needs to be addressed with enzyme --- scripts/run_sbol2assembly_libre.py | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py index 4b97d4e..9de5404 100644 --- a/scripts/run_sbol2assembly_libre.py +++ b/scripts/run_sbol2assembly_libre.py @@ -153,6 +153,7 @@ def __init__(self, assemblies:List[Dict], #backbone parts self.backbone_set.add(assembly["Backbone"]) #1 enzyme + #most likely a later error caused here #only takes the last restriction enzyme in the last dictionary self.restriction_enzyme = assembly["RestrictionEnzyme"] From 7aad891f60dc4d0250c0c9ce72e272e3dd29e293 Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Thu, 22 May 2025 11:06:26 -0600 Subject: [PATCH 013/100] adding xlsx output to sbol2assembly --- scripts/run_sbol2assembly_libre.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py index 9de5404..64f0252 100644 --- a/scripts/run_sbol2assembly_libre.py +++ b/scripts/run_sbol2assembly_libre.py @@ -243,6 +243,29 @@ def run(self, protocol: protocol_api.ProtocolContext): thermocycler_mod.set_block_temperature(4) #END + def get_xlsx_output(self, name:str): + workbook = xlsxwriter.Workbook(f'{name}.xlsx') + worksheet = workbook.add_worksheet() + row_num = 0 + col_num = 0 + worksheet.write(row_num, col_num, 'Parts in temp_module') + row_num += 2 + for key, value in self.dict_of_parts_in_temp_mod_position.items(): + worksheet.write(row_num, col_num, key) + worksheet.write(row_num+1, col_num, value) + col_num += 1 + col_num = 0 + row_num += 4 + worksheet.write(row_num, col_num, 'Parts in thermocycler_module') + row_num += 2 + for key, value in self.dict_of_parts_in_thermocycler.items(): + worksheet.write(row_num, col_num, key) + worksheet.write_column(row_num+1, col_num, value) + col_num += 1 + workbook.close() + self.xlsx_output = workbook + return self.xlsx_output + #output print('Parts and reagents in temp_module') print(self.dict_of_parts_in_temp_mod_position) From 4fa7dc74337a1a511bd0b604cdf6d6790cabedbd Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Thu, 22 May 2025 11:11:40 -0600 Subject: [PATCH 014/100] adds a file creation call --- scripts/run_sbol2assembly_libre.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py index 64f0252..954e89f 100644 --- a/scripts/run_sbol2assembly_libre.py +++ b/scripts/run_sbol2assembly_libre.py @@ -288,6 +288,7 @@ def get_xlsx_output(self, name:str): def run(protocol= protocol_api.ProtocolContext): - pudu_loop_assembly = sbol2assembly(assemblies=assembly_sbol2_uris) - pudu_loop_assembly.run(protocol) + pudu_sbol2_assembly = sbol2assembly(assemblies=assembly_sbol2_uris) + pudu_sbol2_assembly.run(protocol) + pudu_sbol2_assembly.get_xlsx_output("SBOL_xlsx") From a920d87b96530d6554928c0b20ea497aafcf9801 Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Thu, 22 May 2025 11:13:28 -0600 Subject: [PATCH 015/100] fixes indentation error --- scripts/run_sbol2assembly_libre.py | 54 +++++++++++++++--------------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py index 954e89f..e71dedb 100644 --- a/scripts/run_sbol2assembly_libre.py +++ b/scripts/run_sbol2assembly_libre.py @@ -243,34 +243,34 @@ def run(self, protocol: protocol_api.ProtocolContext): thermocycler_mod.set_block_temperature(4) #END - def get_xlsx_output(self, name:str): - workbook = xlsxwriter.Workbook(f'{name}.xlsx') - worksheet = workbook.add_worksheet() - row_num = 0 - col_num = 0 - worksheet.write(row_num, col_num, 'Parts in temp_module') - row_num += 2 - for key, value in self.dict_of_parts_in_temp_mod_position.items(): - worksheet.write(row_num, col_num, key) - worksheet.write(row_num+1, col_num, value) - col_num += 1 - col_num = 0 - row_num += 4 - worksheet.write(row_num, col_num, 'Parts in thermocycler_module') - row_num += 2 - for key, value in self.dict_of_parts_in_thermocycler.items(): - worksheet.write(row_num, col_num, key) - worksheet.write_column(row_num+1, col_num, value) - col_num += 1 - workbook.close() - self.xlsx_output = workbook - return self.xlsx_output + def get_xlsx_output(self, name:str): + workbook = xlsxwriter.Workbook(f'{name}.xlsx') + worksheet = workbook.add_worksheet() + row_num = 0 + col_num = 0 + worksheet.write(row_num, col_num, 'Parts in temp_module') + row_num += 2 + for key, value in self.dict_of_parts_in_temp_mod_position.items(): + worksheet.write(row_num, col_num, key) + worksheet.write(row_num+1, col_num, value) + col_num += 1 + col_num = 0 + row_num += 4 + worksheet.write(row_num, col_num, 'Parts in thermocycler_module') + row_num += 2 + for key, value in self.dict_of_parts_in_thermocycler.items(): + worksheet.write(row_num, col_num, key) + worksheet.write_column(row_num+1, col_num, value) + col_num += 1 + workbook.close() + self.xlsx_output = workbook + return self.xlsx_output - #output - print('Parts and reagents in temp_module') - print(self.dict_of_parts_in_temp_mod_position) - print('Assembled parts in thermocycler_module') - print(self.dict_of_parts_in_thermocycler) + #output + print('Parts and reagents in temp_module') + print(self.dict_of_parts_in_temp_mod_position) + print('Assembled parts in thermocycler_module') + print(self.dict_of_parts_in_thermocycler) # assembly assembly_sbol2_uris = [{ 'Backbone' : 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/ComponentDefinition_dvk_backbone_core/1', From e280cc66ab71aea638b5ae060606bf008d8d6a2d Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Thu, 22 May 2025 11:20:02 -0600 Subject: [PATCH 016/100] fixes minor bugs --- scripts/run_sbol2assembly_libre.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py index e71dedb..0b5b2a6 100644 --- a/scripts/run_sbol2assembly_libre.py +++ b/scripts/run_sbol2assembly_libre.py @@ -2,6 +2,7 @@ from typing import List, Dict, Union from fnmatch import fnmatch from itertools import product +import xlsxwriter # utils @@ -266,11 +267,12 @@ def get_xlsx_output(self, name:str): self.xlsx_output = workbook return self.xlsx_output + #Make a print function for later #output - print('Parts and reagents in temp_module') - print(self.dict_of_parts_in_temp_mod_position) - print('Assembled parts in thermocycler_module') - print(self.dict_of_parts_in_thermocycler) + #print('Parts and reagents in temp_module') + #print(self.dict_of_parts_in_temp_mod_position) + #print('Assembled parts in thermocycler_module') + #print(self.dict_of_parts_in_thermocycler) # assembly assembly_sbol2_uris = [{ 'Backbone' : 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/ComponentDefinition_dvk_backbone_core/1', From 63ccdae07a204380a666d98a9a7a5cde9d88f8ce Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Thu, 22 May 2025 11:35:22 -0600 Subject: [PATCH 017/100] fixes minor bugs --- scripts/SBOL_xlsx.xlsx | Bin 0 -> 6286 bytes scripts/run_sbol2assembly_libre.py | 10 +++++++--- 2 files changed, 7 insertions(+), 3 deletions(-) create mode 100644 scripts/SBOL_xlsx.xlsx diff --git a/scripts/SBOL_xlsx.xlsx b/scripts/SBOL_xlsx.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..0609d9ffb4b5009f1bf153631217c69f52221b08 GIT binary patch literal 6286 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 literal 0 HcmV?d00001 diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py index 0b5b2a6..339c8c0 100644 --- a/scripts/run_sbol2assembly_libre.py +++ b/scripts/run_sbol2assembly_libre.py @@ -222,8 +222,9 @@ def run(self, protocol: protocol_api.ProtocolContext): #part_ubication_in_thermocyler = thermocycler_mod_plate[thermo_wells[current_thermocycler_well]] liquid_transfer(pipette, self.volume_part, tem_mod_block[self.dict_of_parts_in_temp_mod_position[part_name]], thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_part) #This line under this comment was written to get it to run, not run correctly - self.dict_of_parts_in_thermocycler[current_thermocycler_well] = thermo_wells[current_thermocycler_well] - current_thermocycler_well+=1 + #need products uri + self.dict_of_parts_in_thermocycler[assembly["Product"]] = thermo_wells[current_thermocycler_well] + current_thermocycler_well+=1 protocol.comment('Take out the reagents since the temperature module will be turn off') #We close the thermocycler lid and wait for the temperature to reach 42°C @@ -278,9 +279,12 @@ def get_xlsx_output(self, name:str): assembly_sbol2_uris = [{ 'Backbone' : 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/ComponentDefinition_dvk_backbone_core/1', 'PartsList' : ['https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/J23100/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/E0040m_gfp/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0032/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0015/1'], -'RestrictionEnzyme' : 'https://charmme.synbiohub.org/user/Gonza10V/ligationtestforreal/ComponentDefinition_BsaI/1' +'RestrictionEnzyme' : 'https://charmme.synbiohub.org/user/Gonza10V/ligationtestforreal/ComponentDefinition_BsaI/1', +'Product' : 'https://charmme.synbiohub.org/public/CIDARMoCloKit/cre_CRE/1' }] +#Todo find product uri + # metadata metadata = { 'protocolName': 'PUDU Loop assembly', From b611f491d28cced713819a62765a4261ea46b9b1 Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Thu, 22 May 2025 11:45:58 -0600 Subject: [PATCH 018/100] fixes minor bugs --- scripts/SBOL_xlsx2.xlsx | Bin 0 -> 6327 bytes scripts/run_sbol2assembly_libre.py | 8 +++++++- 2 files changed, 7 insertions(+), 1 deletion(-) create mode 100644 scripts/SBOL_xlsx2.xlsx diff --git a/scripts/SBOL_xlsx2.xlsx b/scripts/SBOL_xlsx2.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..7d058e5dd3f80434aaaceb47a9942fbf89a9033b GIT binary patch literal 6327 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 Ug&L|q&2R$12&!;~DSm$a4~mt`-~a#s literal 0 HcmV?d00001 diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py index 339c8c0..3e376a1 100644 --- a/scripts/run_sbol2assembly_libre.py +++ b/scripts/run_sbol2assembly_libre.py @@ -146,6 +146,8 @@ def __init__(self, assemblies:List[Dict], self.odd_combinations = [] self.even_combinations = [] + #create a way to deal with multiple restriction Enzymes(will be a set) + # add parts to a set for assembly in self.assemblies: #part parts @@ -283,6 +285,10 @@ def get_xlsx_output(self, name:str): 'Product' : 'https://charmme.synbiohub.org/public/CIDARMoCloKit/cre_CRE/1' }] +#create a recursive function based on the how many times +#def assemblyRecursion(, duplicate dictionaries, amount): +# append() + #Todo find product uri # metadata @@ -296,5 +302,5 @@ def run(protocol= protocol_api.ProtocolContext): pudu_sbol2_assembly = sbol2assembly(assemblies=assembly_sbol2_uris) pudu_sbol2_assembly.run(protocol) - pudu_sbol2_assembly.get_xlsx_output("SBOL_xlsx") + pudu_sbol2_assembly.get_xlsx_output("SBOL_xlsx2") From d28f37582f347ac8a933575ff5685fe2d977e910 Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Wed, 4 Jun 2025 09:48:53 -0600 Subject: [PATCH 019/100] added xml to dictionary code --- src/pudu/utils.py | 64 ++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 63 insertions(+), 1 deletion(-) diff --git a/src/pudu/utils.py b/src/pudu/utils.py index 2e490cb..611c976 100644 --- a/src/pudu/utils.py +++ b/src/pudu/utils.py @@ -110,4 +110,66 @@ def liquid_transfer(pipette, volume, source, destination, asp_rate:float=0.5, di 'G1':(7,1), 'G2':(7,2), 'G3':(7,3), 'G4':(7,4), 'G5':(7,5), 'G6':(7,6), 'G7':(7,7), 'G8':(7,8), 'G9':(7,9), 'G10':(7,10), 'G11':(7,11), 'G12':(7,12), 'H1':(8,1), 'H2':(8,2), 'H3':(8,3), 'H4':(8,4), 'H5':(8,5), 'H6':(8,6), 'H7':(8,7), 'H8':(8,8), 'H9':(8,9), 'H10':(8,10), 'H11':(8,11), 'H12':(8,12)} -row_letter_to_number = {'A':1, 'B':2, 'C':3, 'D':4, 'E':5, 'F':6, 'G':7, 'H':8} \ No newline at end of file +row_letter_to_number = {'A':1, 'B':2, 'C':3, 'D':4, 'E':5, 'F':6, 'G':7, 'H':8} + + +#This needs +def dictionaryCreator(file): + #given code from website + doc = sb2.Document() + doc.read(file) + #Loops through commponetDefinition + #for DNA + # Lists to store different components + BackBoneList = ['https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/ComponentDefinition_dvk_backbone_core/1'] + PartsList = ['https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/J23100/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/E0040m_gfp/1', + 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0032/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0015/1'] + RestrictionEnzymeList = ['https://charmme.synbiohub.org/user/Gonza10V/ligationtestforreal/ComponentDefinition_BsaI/1'] + # Flags to track duplicates + gotBone = False + gotZyme = False + # Output dictionary + outputDictionary = {"Parts": [], "Backbone": -1, "Restriction Enzyme": -1} + # Loop through component definitions + for cd in doc.componentDefinitions: + print(cd) + # Checks backbone + if cd in BackBoneList: + print(cd) + print("backbone") + if not gotBone: + outputDictionary["Backbone"] = cd + gotBone = True # Update flag + else: + print("You have more than one backbone") + return -1 + # Checks parts + if cd in PartsList: + print(cd) + print("got part") + outputDictionary["Parts"].append(cd) + # Checks enzymes + if cd in RestrictionEnzymeList: + print(cd) + print("Enzyme") + if not gotZyme: + outputDictionary["Restriction Enzyme"] = cd # Assign value + gotZyme = True # Update flag + else: + print("You have more than one restriction enzyme") + return -1 + # Error Checks + if len(outputDictionary["Parts"]) <= 1: + print("Invalid number of parts") + return -1 + if outputDictionary["Backbone"] == -1: + print("No Backbone found, try again") + return -1 + if outputDictionary["Restriction Enzyme"] == -1: + print("No Restriction Enzyme found, try again") + return -1 + #(outputDictionary) + response = jsonify(outputDictionary) + content = response.get_data(as_text=True) + + return content \ No newline at end of file From 286ac0f6e8fa4bb312a766c658c74792fcb8e004 Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Wed, 4 Jun 2025 09:51:06 -0600 Subject: [PATCH 020/100] added xml to dictionary code --- src/pudu/utils.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/pudu/utils.py b/src/pudu/utils.py index 611c976..d215825 100644 --- a/src/pudu/utils.py +++ b/src/pudu/utils.py @@ -113,8 +113,11 @@ def liquid_transfer(pipette, volume, source, destination, asp_rate:float=0.5, di row_letter_to_number = {'A':1, 'B':2, 'C':3, 'D':4, 'E':5, 'F':6, 'G':7, 'H':8} -#This needs +#Xml to uri dictionary def dictionaryCreator(file): + import sbol2 as sb2 + from flask import Flask, jsonify + app = Flask(__name__) #given code from website doc = sb2.Document() doc.read(file) From 5a086e1124daee1e854d060361aec0b375890f59 Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Wed, 4 Jun 2025 09:52:54 -0600 Subject: [PATCH 021/100] added xml to dictionary code --- src/pudu/utils.py | 65 +++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 63 insertions(+), 2 deletions(-) diff --git a/src/pudu/utils.py b/src/pudu/utils.py index d215825..92197ca 100644 --- a/src/pudu/utils.py +++ b/src/pudu/utils.py @@ -114,7 +114,7 @@ def liquid_transfer(pipette, volume, source, destination, asp_rate:float=0.5, di #Xml to uri dictionary -def dictionaryCreator(file): +def dictionaryCreatorjson(file): import sbol2 as sb2 from flask import Flask, jsonify app = Flask(__name__) @@ -175,4 +175,65 @@ def dictionaryCreator(file): response = jsonify(outputDictionary) content = response.get_data(as_text=True) - return content \ No newline at end of file + return content + +#same as before but no Json +def dictionaryCreatorPython(file): + import sbol2 as sb2 + #given code from website + doc = sb2.Document() + doc.read(file) + #Loops through commponetDefinition + #for DNA + # Lists to store different components + BackBoneList = ['https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/ComponentDefinition_dvk_backbone_core/1'] + PartsList = ['https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/J23100/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/E0040m_gfp/1', + 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0032/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0015/1'] + RestrictionEnzymeList = ['https://charmme.synbiohub.org/user/Gonza10V/ligationtestforreal/ComponentDefinition_BsaI/1'] + # Flags to track duplicates + gotBone = False + gotZyme = False + # Output dictionary + outputDictionary = {"Parts": [], "Backbone": -1, "Restriction Enzyme": -1} + # Loop through component definitions + for cd in doc.componentDefinitions: + print(cd) + # Checks backbone + if cd in BackBoneList: + print(cd) + print("backbone") + if not gotBone: + outputDictionary["Backbone"] = cd + gotBone = True # Update flag + else: + print("You have more than one backbone") + return -1 + # Checks parts + if cd in PartsList: + print(cd) + print("got part") + outputDictionary["Parts"].append(cd) + # Checks enzymes + if cd in RestrictionEnzymeList: + print(cd) + print("Enzyme") + if not gotZyme: + outputDictionary["Restriction Enzyme"] = cd # Assign value + gotZyme = True # Update flag + else: + print("You have more than one restriction enzyme") + return -1 + # Error Checks + if len(outputDictionary["Parts"]) <= 1: + print("Invalid number of parts") + return -1 + if outputDictionary["Backbone"] == -1: + print("No Backbone found, try again") + return -1 + if outputDictionary["Restriction Enzyme"] == -1: + print("No Restriction Enzyme found, try again") + return -1 + #(outputDictionary) + response = outputDictionary + + return response From 45bb674fe20f54cf06ac28656658e0d0a6440e08 Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Wed, 4 Jun 2025 10:08:40 -0600 Subject: [PATCH 022/100] recursive update to sbol2 assembly untested --- scripts/SBOL_xlsx2.xlsx | Bin 6327 -> 6328 bytes scripts/run_sbol2assembly_libre.py | 45 ++++++++++++++++++++--------- 2 files changed, 32 insertions(+), 13 deletions(-) diff --git a/scripts/SBOL_xlsx2.xlsx b/scripts/SBOL_xlsx2.xlsx index 7d058e5dd3f80434aaaceb47a9942fbf89a9033b..e0e08b888bf5a55b365168afc08a0a5061afbea9 100644 GIT binary patch delta 596 zcmV-a0;~PEF}N|XfCmoZ9$B!10RRAg1ONaO0Fyx%7PF)WBLPt9;S9y$*HO$h);!$t zTFARP2Do${W+WVaorK@nGG%Pav6&#Ba&no?P)x?_|0&KGTQS48Z9l^^8OXN{>cAT( zcT$7@$0mKOsUK>sIst!h+*N1TTb*+cR_u3K?k6+%LB_O! zuDYY%>OMxpkdUrEP3}ne>^_vMk z`8Q_oP)h>@6aWAK2mk;8KL7}Y=};&E002<}000pH003lfV^DH$aC0wXZ*pZWcx`N* zlFff=!!Qtp?}fgD(cPAvG-(jF18vEvfkIPKdK1zn5w(7h)H;6q%68%;;8TyQnf-Ql zQNBFND*6TMgjNO0k`zUtnC3$53-qyB#S0WUPZg(?R#2b@99ow5cR4eJX$x;w8?au0 zivmeG!c2h<-W!6kV+WAbCBdPBxYJfrA4-3_$A+?Rx(7T-(>a#lDW{&|78sj>h)zh( z2Bi71RR`bVvp~JJWsa|laJY&(zYaIv3E)pn&_~`*i}ZcKqY!}fanH(j`urxc zS)p>0PG)gBkJE=uHY3vonLU2BBX9aIKzSPSZ{iuy=f3>}<+COf{{jT!9$B!HDHpl~ i>MjD2ljj#r1qg-dP$-i*7*qi$la3f82GJD&00029Eek0C delta 566 zcmV-60?GZjF}E?WfCmJR&TU+?ga<{XfO;Y?(4P!!a4iw+-sR8z*;Cga5}SeXOS+YOUl* zh_e?7F9-zb2=u7!!Y;lFMqtFc3xeh5m!l-j*MvDZ+N3Em<{Cs7ph4 zLYgF^)&ohclfSR*I8Fjtbve3s&fFPPF7~pGe!)7SRfV!7MG+{bxlr2*eKgDX5k<~Z z#c8V*ROkQ>E$aKbk{QCZg*U4WSTDdufutN^rb0XK4Z+y49Z2eu;7~!_Xe)oI52f8= zL)kao0?yO)0ZZ_dQ%`XZjLk$uBa*WTX?|=w064?Yf&}Fq&XNqDy&kM|HyZ}!!YPG6 z7`SOYiIaQp#ANKcF6oNF8uDj&y?T8gR*i+~Z^Z!BC1-?LpkCX$#Fs@lTuYr_g&S`K z@TWu2Z@i6*9Q%MrApkkXJt-)k#q&$EM0K9#vpAi_dER7mQp`!7e)S`-`p-Z)4*56n z1UTlt{si^2Clvnz1dq;bT$3snx&-M6^uCkm7fl6P>9o2hlR6kw0Vk7>7$XMI6#xJL E079Dr?EnA( diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py index 3e376a1..691d470 100644 --- a/scripts/run_sbol2assembly_libre.py +++ b/scripts/run_sbol2assembly_libre.py @@ -46,6 +46,24 @@ def liquid_transfer(pipette, volume, source, destination, asp_rate:float=0.5, di 'D1','D2','D3','D4','D5','D6' ] +#Helper function for print(TBD) + + +#Helper function for recursion +def processAssemblies(assemblies, index=0): + if index >= len(assemblies): # Base case: stop when index exceeds list length + return + #sets assembly = to current dict + assembly = assemblies[index] + + #runs the assembly for that dictionary + pudu_sbol2_assembly = sbol2assembly(assembly) + pudu_sbol2_assembly.run(protocol) + pudu_sbol2_assembly.get_xlsx_output("SBOL_xlsx2") + + # Recursively call the function for the next assembly + processAssemblies(assemblies, index + 1) + #class DNA Assembly class DNA_assembly(): ''' @@ -129,11 +147,11 @@ class sbol2assembly(DNA_assembly): Creates a protocol from a dictionary for the automated assembly. ''' - def __init__(self, assemblies:List[Dict], + def __init__(self, assembly:Dict, *args, **kwargs): super().__init__(*args, **kwargs) - self.assemblies = assemblies + self.assembly = assembly self.dict_of_parts_in_temp_mod_position = {} self.dict_of_parts_in_thermocycler = {} self.assembly_plan = None @@ -148,17 +166,12 @@ def __init__(self, assemblies:List[Dict], #create a way to deal with multiple restriction Enzymes(will be a set) - # add parts to a set - for assembly in self.assemblies: - #part parts - for part in assembly["PartsList"]: - self.parts_set.add(part) - #backbone parts - self.backbone_set.add(assembly["Backbone"]) - #1 enzyme - #most likely a later error caused here - #only takes the last restriction enzyme in the last dictionary - self.restriction_enzyme = assembly["RestrictionEnzyme"] + for part in assembly["PartsList"]: + self.parts_set.add(part) + #backbone part + self.backbone_set.add(assembly["Backbone"]) + #1 enzyme + self.restriction_enzyme = assembly["RestrictionEnzyme"] self.combined_set = self.parts_set.union(self.backbone_set) @@ -300,6 +313,12 @@ def get_xlsx_output(self, name:str): def run(protocol= protocol_api.ProtocolContext): + + #this is an issue the call should be recursive + print("what I want") + print(assembly_sbol2_uris) + #What assembly_sbol2_uris is a list of dictionaries + pudu_sbol2_assembly = sbol2assembly(assemblies=assembly_sbol2_uris) pudu_sbol2_assembly.run(protocol) pudu_sbol2_assembly.get_xlsx_output("SBOL_xlsx2") From 8c694abb5cad0d59ec5823cff54a2f9a1206b9f4 Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Wed, 4 Jun 2025 10:10:41 -0600 Subject: [PATCH 023/100] recursive update to sbol2 assembly untested --- scripts/run_sbol2assembly_libre.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py index 691d470..4a65270 100644 --- a/scripts/run_sbol2assembly_libre.py +++ b/scripts/run_sbol2assembly_libre.py @@ -319,7 +319,6 @@ def run(protocol= protocol_api.ProtocolContext): print(assembly_sbol2_uris) #What assembly_sbol2_uris is a list of dictionaries - pudu_sbol2_assembly = sbol2assembly(assemblies=assembly_sbol2_uris) - pudu_sbol2_assembly.run(protocol) - pudu_sbol2_assembly.get_xlsx_output("SBOL_xlsx2") + processAssemblies(assembly_sbol2_uris, index=0) + From 506b238b880ef17a4ed56dc3abbe7c9a7042ab37 Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Wed, 4 Jun 2025 10:12:50 -0600 Subject: [PATCH 024/100] recursive update to sbol2 assembly untested --- scripts/run_sbol2assembly_libre.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py index 4a65270..1683a74 100644 --- a/scripts/run_sbol2assembly_libre.py +++ b/scripts/run_sbol2assembly_libre.py @@ -50,7 +50,7 @@ def liquid_transfer(pipette, volume, source, destination, asp_rate:float=0.5, di #Helper function for recursion -def processAssemblies(assemblies, index=0): +def processAssemblies(assemblies, index=0, protocol): if index >= len(assemblies): # Base case: stop when index exceeds list length return #sets assembly = to current dict @@ -319,6 +319,6 @@ def run(protocol= protocol_api.ProtocolContext): print(assembly_sbol2_uris) #What assembly_sbol2_uris is a list of dictionaries - processAssemblies(assembly_sbol2_uris, index=0) + processAssemblies(assembly_sbol2_uris, index=0, protocol) From b4e61c29f8def18f6cde6e1d84b27544c0c4e84e Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Wed, 4 Jun 2025 10:19:32 -0600 Subject: [PATCH 025/100] recursive update to sbol2 assembly untested --- scripts/SBOL_xlsx2.xlsx | Bin 6328 -> 6324 bytes scripts/run_sbol2assembly_libre.py | 67 +++++++++++++---------------- 2 files changed, 29 insertions(+), 38 deletions(-) diff --git a/scripts/SBOL_xlsx2.xlsx b/scripts/SBOL_xlsx2.xlsx index e0e08b888bf5a55b365168afc08a0a5061afbea9..03243f523884c67bbdca785d98baf612e73391ef 100644 GIT binary patch delta 1181 zcmV;O1Y-NRF|;wTfCmMq6h5eelZ6LPf0U!&e7xu98RsW|jZPlGqjI(&>4K32taOdC z+k)KQ{QUldBp8HkgmxARvI8V1<-xZcF(k3pVnMnP`eRB_c3=c9Tn{!zTIY=j@#wb{ zdk><)4j>p!Gscdn5z3N8y1|BmWJ{6^R^1O!y#i&9s?0-qC49g{*(8AJxpB>)e<7!# z%;`S&OVBi{h|BTAzB{*Lo_V9q-o_$AHBBW6k27~KFl{L>Yj>(&2oSLdhe z>q}Q@ccB8^Ft*HQC=S1rB0Zd;SvdMSiaGC^hdW*ic~{2(m(Igf!e)YeUcwn;D`xn% z?Pquqz3ukr3&DSJ!7V4?70lWzhJ4 zluuAg0|b*^7aFrg2>}QNQ^h(?R+CE+FMridOT#c2!124_cPP2Lq}_`m>xS#5RM}-r zuO&^NwqbcGNjjXL-Z&AQ46!GBED!xZ{e_lJ=dV%(doY%36{B!KPymYQf~zV<&)fT} z8x&YaRY8ST5TgTFG@o5wOgA8?^EcU=H#YDUWn)x3*W6-kSq+lffo?$gNvVyb&VOH; z3OAJPXazVTWP;822AZ8TgS3c|NsAB#+d~6?Y3s7&43?U;5|lf$0@uD|1XnvBrKSS+ znYF&lYHFl}fjy|4>$=U4$<~6w4_dv^ki1~Qt7FW8b$+n{DsZA@<4;DpC6rw8k8!rJ zG{xc9jk?ctOZ8>dG1RnG=q?az?%7oO}O@ z{VvP>hnD+6#wjAHBEYJdW?o4AzeM!|LSSlTyXXS!VF}|X7!r{ zpZqsw?@&tv1QY-O00;m806zfgP7^OD0RR9|0ssIJ0001FZ(~q$Z*X%jW0PGN2a*#H zf1ISI7~6rivBjkIgE6M3M7UaoT7FCF;PTWp#g7Fq1QF;mv9T)(db^ASstKQ=+~1Cdb&Z zJxJ=3;7~!_X)CD@S6gF4**C2L&j`t|e*{lC^%VEO*o;JULUJ}D&5vyc0B0B)kf6N7 zX_DfL*MpUAvS3iIoKpDCz@+soj_!jKqp@wb0#3e0>RvYpC<RaB_Ux4z|<|iY%gP{0cCjkHeQ33z}5dZ)H0000000000wt>!*P#8V|B$JOABL>YC00000rpp=( delta 1137 zcmV-%1djW(F}N|XfCmNQ9$B!1lZ6LPe}$vp%=o=|o^gKi*XZN{JSt}kk}eoYz)IIB zyDiA=&Cl;YNP;Qt%G-K?D8lfynq#JA~NVX)&VAcHq)hkfusLDK)SHcHOluZJdo*UN;e;RTc z%AD@wFF8%ayUdNzbvj1EiZ@npt+oOum#ni7(|J9#E%-^*a*XWl!03nUgf|8jxU;o# z-B3SUF(7#Q%h^YfvOjcxb%@pnzz_|KE@@gh(?_puIE7YOwGZcAT(cT$7@$0mKOsUK>s4f!|3k^WOWGY2SvOoarOIx`^tPnw*ETGN zlBC1=>x~n^$q;*GFT+coH&60Grt?=Rf;||^wTe+VASeLEbiq{>qv!4Y)eQ=)qpF}n zD~QnnESk?QFQyw1)cH-e=8X+JMcEkD&Na6fTULXlcAy(jJ}I@4)cJpdmC^Z$hPptJ^R#PJ- z4D3PWT-R-WM79OMxpkdUrEP3}ne>^_vMk`8Q_o zP)h>@6aWAK2mk;8KL7}Y=};(>;SwuwgYX+sewXMQhF28CK0uMkkmSU`^t9W zB;ZqztC{_Fc2T}O$}0K=>x5PX%90dCpqS=D?F;m=S;Y$!IZqX*l~z!o1{_+J_jfrn zglP+JRvWNhfQtf2Il@eV4&EDrv1132)Fr{8g1FOGQXfjY$A+?Rx(7T-(>a!Z;3=n` z;uaX2frw5>&IY9Uu~i4)3_}GHly^8wGJNrRu+oh-bjp=e3f~wQwVuVneRN_l)^(lK z)6N?5XZUmd`rfS?3)S9=0V;FO2(v)Fwq=g5i*UG#I=>D#-U;AOP0&Z)PK)$?z@rd= z^l{J1cKZCXS)p>0PG)gBkJE=6O*SLb1(`j5wIgr(FF<)3@^9i9(C5DW1mz#IBozJv z1>zoAu!EB)7gqr%lYbXF0#yr>a0?Za&=(LJ>MjD2SOEY4fCc~nBLDyZ0000000000 zwt+a4`xiDF2!-iTC;-;Oc*`^D3gmABL>kG00000 D|6>Jt diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py index 1683a74..f72669c 100644 --- a/scripts/run_sbol2assembly_libre.py +++ b/scripts/run_sbol2assembly_libre.py @@ -46,11 +46,16 @@ def liquid_transfer(pipette, volume, source, destination, asp_rate:float=0.5, di 'D1','D2','D3','D4','D5','D6' ] -#Helper function for print(TBD) +#Helper function for print +def printFunct(): + print('Parts and reagents in temp_module') + print(self.dict_of_parts_in_temp_mod_position) + print('Assembled parts in thermocycler_module') + print(self.dict_of_parts_in_thermocycler) #Helper function for recursion -def processAssemblies(assemblies, index=0, protocol): +def processAssemblies(assemblies, protocol, index=0): if index >= len(assemblies): # Base case: stop when index exceeds list length return #sets assembly = to current dict @@ -220,27 +225,26 @@ def run(self, protocol: protocol_api.ProtocolContext): #can be done with multichannel pipette? current_thermocycler_well = self.thermocycler_starting_well #build combinations - for assembly in self.assemblies: - for r in range(self.replicates): - volume_dd_h2o = self.volume_total_reaction - (volume_reagents + self.volume_part*len(assembly["PartsList"])) - liquid_transfer(pipette, volume_dd_h2o, dd_h2o, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate) - liquid_transfer(pipette, self.volume_t4_dna_ligase_buffer, t4_dna_ligase_buffer, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_t4_dna_ligase_buffer) - liquid_transfer(pipette, self.volume_t4_dna_ligase, t4_dna_ligase, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_t4_dna_ligase) - liquid_transfer(pipette, self.volume_restriction_enzyme, restriction_enzyme_tube, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_restriction_enzyme) - #pippeting backbone - liquid_transfer(pipette, self.volume_part, tem_mod_block[self.dict_of_parts_in_temp_mod_position[assembly["Backbone"]]], thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_part) - #pippeting parts - for part in assembly["PartsList"]: - if type(part) == str: - part_name=part - else: raise ValueError(f'Part {part} is not a string nor sbol2.Component') #TODO: improve this check - #part_ubication_in_thermocyler = thermocycler_mod_plate[thermo_wells[current_thermocycler_well]] - liquid_transfer(pipette, self.volume_part, tem_mod_block[self.dict_of_parts_in_temp_mod_position[part_name]], thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_part) - #This line under this comment was written to get it to run, not run correctly - #need products uri - self.dict_of_parts_in_thermocycler[assembly["Product"]] = thermo_wells[current_thermocycler_well] - current_thermocycler_well+=1 - + for r in range(self.replicates): + volume_dd_h2o = self.volume_total_reaction - (volume_reagents + self.volume_part*len(self.assembly["PartsList"])) + liquid_transfer(pipette, volume_dd_h2o, dd_h2o, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate) + liquid_transfer(pipette, self.volume_t4_dna_ligase_buffer, t4_dna_ligase_buffer, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_t4_dna_ligase_buffer) + liquid_transfer(pipette, self.volume_t4_dna_ligase, t4_dna_ligase, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_t4_dna_ligase) + liquid_transfer(pipette, self.volume_restriction_enzyme, restriction_enzyme_tube, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_restriction_enzyme) + #pippeting backbone + liquid_transfer(pipette, self.volume_part, tem_mod_block[self.dict_of_parts_in_temp_mod_position[self.assembly["Backbone"]]], thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_part) + #pippeting parts + for part in self.assembly["PartsList"]: + if type(part) == str: + part_name=part + else: raise ValueError(f'Part {part} is not a string nor sbol2.Component') #TODO: improve this check + #part_ubication_in_thermocyler = thermocycler_mod_plate[thermo_wells[current_thermocycler_well]] + liquid_transfer(pipette, self.volume_part, tem_mod_block[self.dict_of_parts_in_temp_mod_position[part_name]], thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_part) + #This line under this comment was written to get it to run, not run correctly + #need products uri + self.dict_of_parts_in_thermocycler[self.assembly["Product"]] = thermo_wells[current_thermocycler_well] + current_thermocycler_well+=1 + protocol.comment('Take out the reagents since the temperature module will be turn off') #We close the thermocycler lid and wait for the temperature to reach 42°C thermocycler_mod.close_lid() @@ -281,14 +285,7 @@ def get_xlsx_output(self, name:str): col_num += 1 workbook.close() self.xlsx_output = workbook - return self.xlsx_output - - #Make a print function for later - #output - #print('Parts and reagents in temp_module') - #print(self.dict_of_parts_in_temp_mod_position) - #print('Assembled parts in thermocycler_module') - #print(self.dict_of_parts_in_thermocycler) + return self.xlsx_output # assembly assembly_sbol2_uris = [{ 'Backbone' : 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/ComponentDefinition_dvk_backbone_core/1', @@ -298,12 +295,6 @@ def get_xlsx_output(self, name:str): 'Product' : 'https://charmme.synbiohub.org/public/CIDARMoCloKit/cre_CRE/1' }] -#create a recursive function based on the how many times -#def assemblyRecursion(, duplicate dictionaries, amount): -# append() - -#Todo find product uri - # metadata metadata = { 'protocolName': 'PUDU Loop assembly', @@ -319,6 +310,6 @@ def run(protocol= protocol_api.ProtocolContext): print(assembly_sbol2_uris) #What assembly_sbol2_uris is a list of dictionaries - processAssemblies(assembly_sbol2_uris, index=0, protocol) + processAssemblies(assembly_sbol2_uris, protocol, index=0) From a5dec1fc213e40e83a14b37dcc2594c21959ed4b Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Wed, 4 Jun 2025 10:57:20 -0600 Subject: [PATCH 026/100] recursive update to sbol2 still error with load_module --- scripts/run_sbol2assembly_libre.py | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py index f72669c..0e71ed0 100644 --- a/scripts/run_sbol2assembly_libre.py +++ b/scripts/run_sbol2assembly_libre.py @@ -310,6 +310,7 @@ def run(protocol= protocol_api.ProtocolContext): print(assembly_sbol2_uris) #What assembly_sbol2_uris is a list of dictionaries + #Does not work issues with load_module(unknown cause of error) processAssemblies(assembly_sbol2_uris, protocol, index=0) From e0a8e35872597cd8dd06aa532a495b91011c9ddc Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Thu, 5 Jun 2025 11:47:28 -0600 Subject: [PATCH 027/100] added xml to dictionary code --- src/pudu/utils.py | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/src/pudu/utils.py b/src/pudu/utils.py index 92197ca..09401f4 100644 --- a/src/pudu/utils.py +++ b/src/pudu/utils.py @@ -178,6 +178,7 @@ def dictionaryCreatorjson(file): return content #same as before but no Json +#Change to add roles def dictionaryCreatorPython(file): import sbol2 as sb2 #given code from website @@ -186,15 +187,18 @@ def dictionaryCreatorPython(file): #Loops through commponetDefinition #for DNA # Lists to store different components - BackBoneList = ['https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/ComponentDefinition_dvk_backbone_core/1'] - PartsList = ['https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/J23100/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/E0040m_gfp/1', - 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0032/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0015/1'] - RestrictionEnzymeList = ['https://charmme.synbiohub.org/user/Gonza10V/ligationtestforreal/ComponentDefinition_BsaI/1'] - # Flags to track duplicates - gotBone = False - gotZyme = False + ProductRoleList = ['http://identifiers.org/so/SO:0000804'] + + #look at the roles for each + for cd in doc.componentDefinitions: + #check for role + if cd.role in ProductRoleList: + print(cd) + + + # Output dictionary - outputDictionary = {"Parts": [], "Backbone": -1, "Restriction Enzyme": -1} + outputAssemblies = [] # Loop through component definitions for cd in doc.componentDefinitions: print(cd) From 7049187155c8e7a7690ff522305f188a60db5a20 Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Thu, 5 Jun 2025 11:48:13 -0600 Subject: [PATCH 028/100] revert back to old --- scripts/LukeTestingNotebook.ipynb | 51 ++++++++++++ scripts/SBOL_xlsx2.xlsx | Bin 6324 -> 6327 bytes scripts/run_sbol2assembly_libre.py | 123 +++++++++++++---------------- 3 files changed, 107 insertions(+), 67 deletions(-) create mode 100644 scripts/LukeTestingNotebook.ipynb diff --git a/scripts/LukeTestingNotebook.ipynb b/scripts/LukeTestingNotebook.ipynb new file mode 100644 index 0000000..c28765a --- /dev/null +++ b/scripts/LukeTestingNotebook.ipynb @@ -0,0 +1,51 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": null, + "id": "68d30519", + "metadata": { + "vscode": { + "languageId": "plaintext" + } + }, + "outputs": [], + "source": [ + "def dictionaryCreatorPython(file):\n", + " import sbol2 as sb2\n", + " #given code from website\n", + " doc = sb2.Document()\n", + " doc.read(file)\n", + " #Loops through commponetDefinition\n", + " #for DNA\n", + "\n", + " #look at the roles for each\n", + " for cd in doc.componentDefinitions:\n", + " #check for role\n", + " if cd.role =='http://identifiers.org/so/SO:0000804':\n", + " print(cd)#allproducts" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "6a11bb44", + "metadata": { + "vscode": { + "languageId": "plaintext" + } + }, + "outputs": [], + "source": [ + "cd.features" + ] + } + ], + "metadata": { + "language_info": { + "name": "python" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/scripts/SBOL_xlsx2.xlsx b/scripts/SBOL_xlsx2.xlsx index 03243f523884c67bbdca785d98baf612e73391ef..91b8d7bd4a3ab3c6e1e19b4d33b24051cb6c630b 100644 GIT binary patch delta 1131 zcmV-x1eE)*hXk)p&&aza#9|A%Mn8ob1fF63!y)z6lDiS;KKD_Bhxx>M2JVfrPzBA z4R!#*Xqqv0M2%3EB+?Bw6eL@cWU%Uffa(<}b5vy>$}8amCdwuOOwWyL1`Rn4e`QYh z{7X#J@Gf&>be)cou;PssT&u0X$tCOT!*E^?Z3}*qwHzaRJ23hoJK>Fi1@3IETsPFu zRtyN9{&MzFr0fsfUmc?L0Wd_vqDz`q&h*i18&08BR_$rNL2*te?W|Y-qg|b!uCFg$ zrQL-Jbi-JBI3scRbrN%pH4k^ZQx@{Bjs%y^!%PWBU)tp|n@VgZ$mb=_7+W#Jw{1V8 zGa0eZ>-^4^DPuDllYxBOpboroawj$Te{9mn_4Grnl^hi!J@D%KZ06y{z`F<<|Bvzs zvnB~22nCC0o}^flN)a!Am0L^0Fc^mK1^+|Iy-V616j?W1H>JvM#`LzN>DM+ahmxej z`Rk1n!O0MNWiP`^o;OdvK&JCoDS|y1%e9J8I3Oqh#dN_{6{F|v{nZT$tfQ)+LMw>T z0W6x&E-$7V5Y+iiw&sluJVn_U)y_4y7+Y3@q;{YiP(CTOk<|HrrKxa3*^X9#BSI$F zd}pB92{TBG7@4#PQLsHU@E5i&OU_`aSt~)gGZnb@BqO-mc_=j%xKFJ0Tvk&fB@FCA z z4veA#;q#tRk35rWba}T~>qO`$?(l+;aNJdA*jt@*11t8sEcY)n_d&+Afv&ov-s<}4 z4Wq6)ju3q=jj7Vd|+Cz&S+@R4m_H*_jfh7lp6=H z&RB3kf=?nzd&+HtHX&GwvF965%xBS|qqs6ou@FnQ#+LDKwgy}fGQ|pi0uwASya%Rs zB%&iy@DXW$TsHs&$IyWS9X!sn9G|@bobopt2Ia!3WY}4_X+4Rfd+X(B?E60J%fTA+ z=lFB+@;0oRO1-}o2h`SrQ|^ETBmvht>q?n{+nv%&GGOsA9Xjy&jM_%=xf$BKq-^3H(ko)=*w6h}={{jU*Ak= zwjk+(kp!%Cjk4Q<+}`~B{(~eKgl&X&77DThBq!y;w;VAfvDRWix)AzfN>O%T1TI_; zHbz?KjR^7Rw-kF1qQMRz7)>+Aj;ImJl0>?}hJs{Ek_=Ye4^X`VWsa)MLwO~9z(m<3 zfa$q$&7dKtp?}QjKK_!^G`!2)7+t4hB&>L21=ngTaMEO*eVEScp>4rWs+MD9ZwE#{ zWGB2au)v+ImFtH3*@^+d(_hX$ij@7K`_>^^9{@u%EV`s=~O zl0^KmS%w{MKzmy_9oS``SI#!A~@0y1@UJH3w#{iek!&Jg% zf_z@W8DlGE__pn5cqSwEd7j_dGG%OrV=|C$8`Oa}PVS@z|Bp@jSWiFHTFH?R>48_* zXEP5w2Hs`R_@lU)}YvqcF32nAEcI!;!TOA#-B)lEyoFc`q`yWn>yxx1v@ ziz4fW>!wuMWlXOnO`o=5c_~RcoS)t}5u6OMCwnXp{XhMMmQLrdQUrT2mTMKGa6nK1 zis^!@Dn`%S`>PuiSVvVsg;o%w16VYlU0zH#AgJ><*_t;t@D*iaR6Ez)Vr*FrlG=f8 zK>10jjik=N)5Cz*q1Al4jvg8bwnza&?JF^1U zzGMVfJ0GQ{0{5AmS@qGjVx zM!6-FT=9=_wy-qC;n$9}F8t%KUL6=k1;Xc@QIDK|NxHn-taT#v6L)w)$S~^48TOeI zj=OS3z2%&H|BC%C%l(Iz`$5LEfv((fZ@DW%Mnq;+*>p8cdTV-&h9MzcJ=g#0Y1&+H z_5;EUWXWdrn*^WyH)iipO9KQH000080000#0P0Q?FDC&208s(}01*HH0Az1tP;zf@ zb1!3)`4Sd?oTR20+kv*^)Igyr4ZR6z6NNOFwePt(c67Z>@i!`&}&MqpJ2iZiw zV4cvaL}@}$1d3@cR9&Kv%_@FGk@Hk>+GqtO>cF98b$?edlQV7M&1wVI3vf{&DVH-- zqP_Pf$JntwNa~W{P(j>jE2$4xTVq4nH?0BB2+6R21W!5j6!*Z`j6`%oayBB(k8K73 zXBZlgpuEFrlH!ZkgOzTwU{J1{Quxlmr1dP0?t>Gfv2EL=oe$QKKgHYi>-#WjEL6WM z2B<1H%b5l0wXF(#eF=+esPpTvOMrIE& z$zrk@*rZt=&LaKlTi(=Pfb!Jj-^4TEnEUn_?ju;~b%@qIu006O^ B7lHr) diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py index 0e71ed0..d76c499 100644 --- a/scripts/run_sbol2assembly_libre.py +++ b/scripts/run_sbol2assembly_libre.py @@ -1,4 +1,4 @@ -from opentrons import protocol_api +from opentrons import protocol_apiMore actions from typing import List, Dict, Union from fnmatch import fnmatch from itertools import product @@ -46,29 +46,6 @@ def liquid_transfer(pipette, volume, source, destination, asp_rate:float=0.5, di 'D1','D2','D3','D4','D5','D6' ] -#Helper function for print -def printFunct(): - print('Parts and reagents in temp_module') - print(self.dict_of_parts_in_temp_mod_position) - print('Assembled parts in thermocycler_module') - print(self.dict_of_parts_in_thermocycler) - - -#Helper function for recursion -def processAssemblies(assemblies, protocol, index=0): - if index >= len(assemblies): # Base case: stop when index exceeds list length - return - #sets assembly = to current dict - assembly = assemblies[index] - - #runs the assembly for that dictionary - pudu_sbol2_assembly = sbol2assembly(assembly) - pudu_sbol2_assembly.run(protocol) - pudu_sbol2_assembly.get_xlsx_output("SBOL_xlsx2") - - # Recursively call the function for the next assembly - processAssemblies(assemblies, index + 1) - #class DNA Assembly class DNA_assembly(): ''' @@ -129,7 +106,7 @@ def __init__(self, pipette_position:str = 'left', aspiration_rate:float=0.5, dispense_rate:float=1,): - + self.volume_total_reaction = volume_total_reaction self.volume_part = volume_part self.volume_restriction_enzyme = volume_restriction_enzyme @@ -152,11 +129,11 @@ class sbol2assembly(DNA_assembly): Creates a protocol from a dictionary for the automated assembly. ''' - def __init__(self, assembly:Dict, + def __init__(self, assemblies:List[Dict], *args, **kwargs): super().__init__(*args, **kwargs) - - self.assembly = assembly + + self.assemblies = assemblies self.dict_of_parts_in_temp_mod_position = {} self.dict_of_parts_in_thermocycler = {} self.assembly_plan = None @@ -168,15 +145,20 @@ def __init__(self, assembly:Dict, self.has_even = False self.odd_combinations = [] self.even_combinations = [] - + #create a way to deal with multiple restriction Enzymes(will be a set) - for part in assembly["PartsList"]: - self.parts_set.add(part) - #backbone part - self.backbone_set.add(assembly["Backbone"]) - #1 enzyme - self.restriction_enzyme = assembly["RestrictionEnzyme"] + # add parts to a set + for assembly in self.assemblies: + #part parts + for part in assembly["PartsList"]: + self.parts_set.add(part) + #backbone parts + self.backbone_set.add(assembly["Backbone"]) + #1 enzyme + #most likely a later error caused here + #only takes the last restriction enzyme in the last dictionary + self.restriction_enzyme = assembly["RestrictionEnzyme"] self.combined_set = self.parts_set.union(self.backbone_set) @@ -187,7 +169,7 @@ def __init__(self, assembly:Dict, thermocycler_wells_needed = (len(self.odd_combinations) + len(self.even_combinations))*self.replicates if thermocycler_wells_needed > thermocyler_available_wells: raise ValueError(f'According to your setup this protocol only supports assemblies with up to {thermocyler_available_wells} combinations. Number of combinations in the protocol is {thermocycler_wells_needed}.') - + def run(self, protocol: protocol_api.ProtocolContext): #Labware #Load temperature module @@ -225,25 +207,26 @@ def run(self, protocol: protocol_api.ProtocolContext): #can be done with multichannel pipette? current_thermocycler_well = self.thermocycler_starting_well #build combinations - for r in range(self.replicates): - volume_dd_h2o = self.volume_total_reaction - (volume_reagents + self.volume_part*len(self.assembly["PartsList"])) - liquid_transfer(pipette, volume_dd_h2o, dd_h2o, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate) - liquid_transfer(pipette, self.volume_t4_dna_ligase_buffer, t4_dna_ligase_buffer, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_t4_dna_ligase_buffer) - liquid_transfer(pipette, self.volume_t4_dna_ligase, t4_dna_ligase, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_t4_dna_ligase) - liquid_transfer(pipette, self.volume_restriction_enzyme, restriction_enzyme_tube, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_restriction_enzyme) - #pippeting backbone - liquid_transfer(pipette, self.volume_part, tem_mod_block[self.dict_of_parts_in_temp_mod_position[self.assembly["Backbone"]]], thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_part) - #pippeting parts - for part in self.assembly["PartsList"]: - if type(part) == str: - part_name=part - else: raise ValueError(f'Part {part} is not a string nor sbol2.Component') #TODO: improve this check - #part_ubication_in_thermocyler = thermocycler_mod_plate[thermo_wells[current_thermocycler_well]] - liquid_transfer(pipette, self.volume_part, tem_mod_block[self.dict_of_parts_in_temp_mod_position[part_name]], thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_part) - #This line under this comment was written to get it to run, not run correctly - #need products uri - self.dict_of_parts_in_thermocycler[self.assembly["Product"]] = thermo_wells[current_thermocycler_well] - current_thermocycler_well+=1 + for assembly in self.assemblies: + for r in range(self.replicates): + volume_dd_h2o = self.volume_total_reaction - (volume_reagents + self.volume_part*len(assembly["PartsList"])) + liquid_transfer(pipette, volume_dd_h2o, dd_h2o, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate) + liquid_transfer(pipette, self.volume_t4_dna_ligase_buffer, t4_dna_ligase_buffer, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_t4_dna_ligase_buffer) + liquid_transfer(pipette, self.volume_t4_dna_ligase, t4_dna_ligase, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_t4_dna_ligase) + liquid_transfer(pipette, self.volume_restriction_enzyme, restriction_enzyme_tube, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_restriction_enzyme) + #pippeting backbone + liquid_transfer(pipette, self.volume_part, tem_mod_block[self.dict_of_parts_in_temp_mod_position[assembly["Backbone"]]], thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_part) + #pippeting parts + for part in assembly["PartsList"]: + if type(part) == str: + part_name=part + else: raise ValueError(f'Part {part} is not a string nor sbol2.Component') #TODO: improve this check + #part_ubication_in_thermocyler = thermocycler_mod_plate[thermo_wells[current_thermocycler_well]] + liquid_transfer(pipette, self.volume_part, tem_mod_block[self.dict_of_parts_in_temp_mod_position[part_name]], thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_part) + #This line under this comment was written to get it to run, not run correctly + #need products uri + self.dict_of_parts_in_thermocycler[assembly["Product"]] = thermo_wells[current_thermocycler_well] + current_thermocycler_well+=1 protocol.comment('Take out the reagents since the temperature module will be turn off') #We close the thermocycler lid and wait for the temperature to reach 42°C @@ -285,8 +268,15 @@ def get_xlsx_output(self, name:str): col_num += 1 workbook.close() self.xlsx_output = workbook - return self.xlsx_output - + return self.xlsx_output + + #Make a print function for later + #output + #print('Parts and reagents in temp_module') + #print(self.dict_of_parts_in_temp_mod_position) + #print('Assembled parts in thermocycler_module') + #print(self.dict_of_parts_in_thermocycler) + # assembly assembly_sbol2_uris = [{ 'Backbone' : 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/ComponentDefinition_dvk_backbone_core/1', 'PartsList' : ['https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/J23100/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/E0040m_gfp/1', @@ -295,6 +285,12 @@ def get_xlsx_output(self, name:str): 'Product' : 'https://charmme.synbiohub.org/public/CIDARMoCloKit/cre_CRE/1' }] +#create a recursive function based on the how many times +#def assemblyRecursion(, duplicate dictionaries, amount): +# append() + +#Todo find product uri + # metadata metadata = { 'protocolName': 'PUDU Loop assembly', @@ -304,13 +300,6 @@ def get_xlsx_output(self, name:str): def run(protocol= protocol_api.ProtocolContext): - - #this is an issue the call should be recursive - print("what I want") - print(assembly_sbol2_uris) - #What assembly_sbol2_uris is a list of dictionaries - - #Does not work issues with load_module(unknown cause of error) - processAssemblies(assembly_sbol2_uris, protocol, index=0) - - + pudu_sbol2_assembly = sbol2assembly(assemblies=assembly_sbol2_uris) + pudu_sbol2_assembly.run(protocol) + pudu_sbol2_assembly.get_xlsx_output("SBOL_xlsx") \ No newline at end of file From 74335f573cf3a44192c363e1bb0071c9040e9035 Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Thu, 5 Jun 2025 11:58:48 -0600 Subject: [PATCH 029/100] updates to assembly --- scripts/run_sbol2assembly_libre.py | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py index d76c499..1695dcf 100644 --- a/scripts/run_sbol2assembly_libre.py +++ b/scripts/run_sbol2assembly_libre.py @@ -139,15 +139,13 @@ def __init__(self, assemblies:List[Dict], self.assembly_plan = None self.parts_set = set() self.backbone_set = set() - self.restriction_enzyme = "" #empty string to prevent early call of assembly + self.restriction_enzyme_set = set() self.combined_set = set() self.has_odd = False self.has_even = False self.odd_combinations = [] self.even_combinations = [] - #create a way to deal with multiple restriction Enzymes(will be a set) - # add parts to a set for assembly in self.assemblies: #part parts @@ -155,10 +153,8 @@ def __init__(self, assemblies:List[Dict], self.parts_set.add(part) #backbone parts self.backbone_set.add(assembly["Backbone"]) - #1 enzyme - #most likely a later error caused here - #only takes the last restriction enzyme in the last dictionary - self.restriction_enzyme = assembly["RestrictionEnzyme"] + #add enzymes + self.restriction_enzyme_set.add(assembly["RestrictionEnzyme"]) self.combined_set = self.parts_set.union(self.backbone_set) @@ -193,9 +189,11 @@ def run(self, protocol: protocol_api.ProtocolContext): self.dict_of_parts_in_temp_mod_position['t4_dna_ligase_buffer'] = temp_wells[2] temp_wells_counter = 3 restriction_enzyme_tube = tem_mod_block[temp_wells[temp_wells_counter]] - self.dict_of_parts_in_temp_mod_position[self.restriction_enzyme] = temp_wells[temp_wells_counter] - temp_wells_counter += 1 - #Load the parts + #load the enzymes + for enzyme in self.restriction_enzyme_set: + self.dict_of_parts_in_temp_mod_position[enzyme] = temp_wells[temp_wells_counter] + temp_wells_counter += 1 + #Load the parts(includes backbones) for part in self.combined_set: self.dict_of_parts_in_temp_mod_position[part] = temp_wells[temp_wells_counter] temp_wells_counter += 1 @@ -213,7 +211,7 @@ def run(self, protocol: protocol_api.ProtocolContext): liquid_transfer(pipette, volume_dd_h2o, dd_h2o, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate) liquid_transfer(pipette, self.volume_t4_dna_ligase_buffer, t4_dna_ligase_buffer, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_t4_dna_ligase_buffer) liquid_transfer(pipette, self.volume_t4_dna_ligase, t4_dna_ligase, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_t4_dna_ligase) - liquid_transfer(pipette, self.volume_restriction_enzyme, restriction_enzyme_tube, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_restriction_enzyme) + liquid_transfer(pipette, self.volume_restriction_enzyme, tem_mod_block[self.dict_of_parts_in_temp_mod_position[assembly['RestrictionEnzyme']]], thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_restriction_enzyme) #pippeting backbone liquid_transfer(pipette, self.volume_part, tem_mod_block[self.dict_of_parts_in_temp_mod_position[assembly["Backbone"]]], thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_part) #pippeting parts @@ -302,4 +300,4 @@ def run(protocol= protocol_api.ProtocolContext): pudu_sbol2_assembly = sbol2assembly(assemblies=assembly_sbol2_uris) pudu_sbol2_assembly.run(protocol) - pudu_sbol2_assembly.get_xlsx_output("SBOL_xlsx") \ No newline at end of file + pudu_sbol2_assembly.get_xlsx_output("SBOL_xlsx3") \ No newline at end of file From f766007bb4a06638909dfc3a48ee5a4bfd524c2e Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Thu, 5 Jun 2025 12:00:35 -0600 Subject: [PATCH 030/100] updates to assembly --- scripts/SBOL_xlsx3.xlsx | Bin 0 -> 6328 bytes scripts/run_sbol2assembly_libre.py | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 scripts/SBOL_xlsx3.xlsx diff --git a/scripts/SBOL_xlsx3.xlsx b/scripts/SBOL_xlsx3.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..7ac5d7c7f204ccf114d58872f639d9cb0a0cf8ca GIT binary patch literal 6328 zcmZ`-WmJ@H*B!b$B&54rx8@|o=Y4%; zJ>RT#-`Bclt+RjZbFOpF-WnH8)xyEm zSjWrB0{oQI)84K$xfclK#+5%)yp~<%P@b!jLKWBz?80Z&lxUku>il2^%CfP!%Tl_; zrM8ZmQ7bY3F$eC76(ivwPvxM_#cCzI$z$T(7a`d$Ebz<_`(8&YtF^%VKrHz=60-ud zH>%y72#)W^sX=5q^MX=DW2k~D9<67Y4vj$MxqzC5&Pxb{y4<^k{CyD9ezNv9O=u8G z(b$~kY5nTpHa*(I$Q@q}JHrAE9+6@q=ck;_7t-B=!GWTpSQC$yi7oi<(L^Xa6Fw^1I2g3zrINV&btRTRxlQ@yxAVTgBO zj%P)?5{dP$_%`1G>Xbxg@D>%wIh{ndqX_29cW4uXx82tRYk+;a{Aq90YB0`hnf$vF z$-r+Bn(n=u+I~1yN0P3qHOeN>SPsOUPLuAoTKZ|4uFTKTH2%tf#w%d^7L0jScmMzc zb{e}_*nzn?f4)l-`;`%RaQ*iJ_i)!1`fCHj`Daz|UJ|^=;byFs++ie0)U0!K#3f{_ zIbP&RN^@)_wQNbd$zNdp9uO2@p&OKEGL4nXx8Lk%Fc;7h*uK;efccOa3TbG4A~_ta z73m_`QG(83j?kjmJSj4pCAJnx7jii2a>)EWO@v}Nb}Hf7_(>^Hl62@H&-ehTqG%mr zjig*-aKF8%!AzCU3E`?-lrd>Y^m{rUZuQH|(euw@dPwM(AA7f4Qa`PaWg$|azvzu1 z=1JM2m!00Oi#5A4_FaoM-WrI&?<+nGRXNulrH3@z1NV-hcC=M$X28CrUrg^LAa z#{?MwAoffysyZs{QfQ>t-g&t6SQ zQ-^Y6hVCg|hkf;!z_BOFm;f%TsLJ?vObz5ZPg>h(F|bhFQ5I^W%n41Gn@JvSv+H*$ zRH}ajl4Z*BMg-(?#>BtOhF+~LZIQh>GQuc}?tIuf)c&Eq+2FL3QX*QI8{RrqcGssV zoK}Bg%1MxiQiws2_8pW#925fqXEJ@PO=)jol(v z7S$J?JmmnPe5p!AuVZ=~UAN2UXubCi9#VgFCi9X|SXC*V@{Z7Ma=}##i6_bmm&huq z{54vMXW@0I9{HwgxobMaa0BxxD5B+x6g`o`LknYcJs!CE(fFORW!ojqH>D+8R`Y{v zBX7Beav$s?_9z6gOL?jvf(j56up^E7#yc6K(c9$Nko=A^d0yPk%EaQtxnOR7$fzMN zik_SDyw8@EM&SyHamW7qtFPAFP~-K>W@cx}A2XheT zW8_Lg2rW<)7C)bu(2a^X%7s7vR50a@i{%bzw@&AAmy6MOO+SM5h>#wXXkM}9>%T?B z4A!xr>|t9%VC-RpQyq-4MaB}wvH+f4tEi6dbAruWGh-7fmSc#Fic8zN8Mb$zPS0@c zF?a$nMjF2w{O{je)F5*!=U!$i%xbvf0{-@%zTrpP;i|y#lY2d=+0R-4Zd58o6VEvOcS1&t@U)d_qnSBAv zmJio4Rqz7&GzOMUCB@9=5gBs$X(?k1&}rnx^ZbLVACn&R#&z~HGS5oV_`qwBgzDL9 zy;b_RsS~UGEy~Pzkg6Jfdmt6gm7rj<=OSdShb&=K+Vdr-**C?DB-v949S%{JBzu%j z>MV=Lm?C8Dw#WT*PC+FQEHz%!=K0CB2u%1hrR-v@x(dR{uldCj z=o{!O8z$)L89oL;&1mp=jG~5D2=uF5dHt~_wXo=#F{DbY4@XA~9!Nd1B>5zM<(tz(Lu&8l8A8o+7Jr&E~3fqBkvP$2curK33Y( z8EmcArqW8D$ig?#SL@0A>KW!1TttclA2ZHFeV67!$hB=9K{8c@JZqiuV&$^YdW#IV z&YY}Jk{WBz^2G`gaAVImIS%g|hl9pcCXA#>RzEB*nwD6il20|u_o`(R!cboYs}ybW z-%B;@io04{*jxO5{~FA@hOogbN771nK&8-H7fT@8UzT3_XgWW{eRka8$=FIq+SF*Y z_(Y$1T|@3^cyKUtI0n8THfqtBvQbaDA#)(@3D^E5UAHISg5|6{VT~|-*1?gl-#Nwl zVagSrY?z#4&r0ogqY}gL4hgDZA!|?_$_)kwhEm81o~0P0y{$sNo5eO1hjT@ZC^4Km zC+<6=11MLk8)C0QRa@Eol>i^w!t(%6uYxc@9RD2kT%oUQ@`ak{XZ~7^XgU*bTQP`) zbWn0ZjeymH**+0ln!~y3!}Bz`Oj>9xBk+>Ws;U=Jq@%<>;4PjcS^QOx45kW_;EW!} zmBHzRg|~Ev4pOPYF+LGI%m=~1Z}asZs~3$2FUpr+wmhp_XFs<9>|B|= zuMTv(;wa=>e;;tztGh6tt`F|@jPWx=`ZT=h+8l%5TG`RWcCJ^t=`g9{=@D_Jcd}>a z(bSK>09wvqJHIW6fq*)#a^im)fE6dU%ukHy*<@Fo=n<%CU)5qohovBmMw9$JIU2A zRe+G~cXJ+B7?x@G1CbvNOQjFRJy$*`XFMjZZKf+d2B~;!!K%+sfYD#{6-KgTz&OpWHnwp0V zQAowy&`66Y8%AB`d)I@*GWwbyS_##&-?2}q%>y_TA!EQFbF;sv?aMO?zv8);(k z-wp6%yX`!7foF*vrqowp@NAG75$J&HN?B@^jSvADeuGF`1LKbebO@g|jrq}$Wluzt zhB#cek`6A-?pyPwbaWFNg)T3+{yLf zVPaQuC4zw2YG~h+YQ%!aK2v?fq{Gh{)n)40J5rni+NK5YjeKNuJ#m*2JA~4LrHD%q zBJeqv=uLDF2V#>5qX$o$FGz8R40aDSTjz%cLopsrv&J{(DD;>-HH}emWbEq>uvG?& zRrBxZ*wn766(I+YCVd($Sv%slNuPl~Zld$&Hnyqn4E z;Q9?E4vte{v8HDm@umDHJLvPqqsg7Z>B}umko+_ZGh4G{iXszCT#^Fenc8{{nlR4f z;ITanl83y8IS&G>6m@0TeU{#CDPyPlu&pNuHc;za@k<5D6l&*Eo2wJKw+5zZPiB{c z738xGi`bH`JruFg$n(c%Rd?$&g!ULi=y>P4bEY9%WXLylo`=qCjM<}IK?T%j?A77L z0zSK%6$h5AZx1vP+dFzFAz&rQ`qrnhe$u1XYQM&#v3PeJzosTgwf4!yN(9bczz&5F zvszl>#cckS)7Z|y9WOxQG|_eYo*{d;Uj&{Z^}gWY{mQ+Mfba zfpU|C?jhaDcDJa^P!Jjl8VMHkICLJ@=5J0uVh>BqhhA*Q5VUvWdRuToRk8%t;f*0j z`YeIsB)v6}nnKjffG@7?xBoLxywjYn)f6bR%bEm#WZY^DM0FSG8t6305XpW;9{z8Xhb&=8k3> zE{;xME;C0Li=WGNW@7(O&med&q%~-G{`F2gKk95i?dq6RE(=Esn$1f16G_Dvnaw^# zqR#kV-*=7o`HD6b8SUs~Tn8SFY@mN9l}5962p&@lS(xl~jm4*WLtG+2#`+N@j`-x} zX*b9B&h}zHVx#!QB*l>|7f`M}>g(q_7sP}|hOQgT4$<1|9U}r$ytn;iZAdhHCDh#Q z@K6+!7msO0XpyKAPP=NvrJOK1n1|X|#Ci{=$=g``s&n-@-ztZ;gk(%42{n2=i|s7i zu5uUwncY70D|@zZsjK}Sr*7GQOUtQ;qQb=J>2fbEWtoLU$#RS!e#eT$mf%8c6s8Y# zB8fk?vwBb0>ZVtVoSSr{jj|<6TG^2>LvUhPIrMAsEuRKO*mZ^{JZ3|=r1TBS->fnT zMRjX6 z=hsd;p44{_-~Q{LZpwClsEZg#LPnVox3t? z4G|xM_+6757Du)0YN{%f+pF}5rS}Iz>k-De?BA)%v4}iz&*|>M?Du{$8)(6Wp4-J@ zSeU07JJs#ZifoUdl{_fX`W!)u`F!f(>X_*GS|K~KEPkqjL?FFSL_ME59Mx7#+T~h^c>bT3^pv%yu;N1!$5-TWVv|JWV(gYT>KKfx|2|E}5ZBixsae-N0^ek1%>K;93%uOI$|>cSl2 ze^C?n0q#$yKLA3omiRY;|2nJg1Kw|{e*j1D|E0y=55M0%{)98bERg?p=zn^Nh6)mF Ss{VAtF#yA`!Wky|`SpL>SkX-Y literal 0 HcmV?d00001 diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py index 1695dcf..a13914c 100644 --- a/scripts/run_sbol2assembly_libre.py +++ b/scripts/run_sbol2assembly_libre.py @@ -1,4 +1,4 @@ -from opentrons import protocol_apiMore actions +from opentrons import protocol_api from typing import List, Dict, Union from fnmatch import fnmatch from itertools import product From 01f24d5533b33ba5d7a5e11830f1d20a314a146e Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Wed, 11 Jun 2025 09:32:43 -0600 Subject: [PATCH 031/100] 3 different dictionaries with promoters --- scripts/LukeTestingNotebook.ipynb | 61 ++++++++++++++++++----------- scripts/SBOL_xlsx4.xlsx | Bin 0 -> 6420 bytes scripts/run_sbol2assembly_libre.py | 17 +++++++- 3 files changed, 54 insertions(+), 24 deletions(-) create mode 100644 scripts/SBOL_xlsx4.xlsx diff --git a/scripts/LukeTestingNotebook.ipynb b/scripts/LukeTestingNotebook.ipynb index c28765a..2a42a27 100644 --- a/scripts/LukeTestingNotebook.ipynb +++ b/scripts/LukeTestingNotebook.ipynb @@ -4,46 +4,63 @@ "cell_type": "code", "execution_count": null, "id": "68d30519", - "metadata": { - "vscode": { - "languageId": "plaintext" + "metadata": {}, + "outputs": [ + { + "ename": "FileNotFoundError", + "evalue": "[Errno 2] No such file or directory: 'C:\\\\Users\\\\lukef\\\\OneDrive\\\\Desktop\\\\hmwk0\\\\CSCI_1300F\\\\Work\\\\PUDUWork\\\\PUDU\\\\RyanTest.xml'", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mFileNotFoundError\u001b[0m Traceback (most recent call last)", + "\u001b[1;32m~\\AppData\\Local\\Temp\\ipykernel_3980\\1001182099.py\u001b[0m in \u001b[0;36m\u001b[1;34m\u001b[0m\n\u001b[0;32m 14\u001b[0m \u001b[0mcd\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mfeatures\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 15\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m---> 16\u001b[1;33m \u001b[0mdictionaryCreatorPython\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m'RyanTest.xml'\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[1;32m~\\AppData\\Local\\Temp\\ipykernel_3980\\1001182099.py\u001b[0m in \u001b[0;36mdictionaryCreatorPython\u001b[1;34m(file)\u001b[0m\n\u001b[0;32m 3\u001b[0m \u001b[1;31m#given code from website\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 4\u001b[0m \u001b[0mdoc\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0msb2\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mDocument\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 5\u001b[1;33m \u001b[0mdoc\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mread\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mfile\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 6\u001b[0m \u001b[1;31m#Loops through commponetDefinition\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 7\u001b[0m \u001b[1;31m#for DNA\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", + "\u001b[1;32mc:\\Users\\lukef\\.conda\\envs\\test\\lib\\site-packages\\sbol2\\document.py\u001b[0m in \u001b[0;36mread\u001b[1;34m(self, filename)\u001b[0m\n\u001b[0;32m 424\u001b[0m \"\"\"\n\u001b[0;32m 425\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mclear\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 426\u001b[1;33m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mappend\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mfilename\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0moverwrite\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;32mFalse\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 427\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 428\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mreadString\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0msbol_str\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", + "\u001b[1;32mc:\\Users\\lukef\\.conda\\envs\\test\\lib\\site-packages\\sbol2\\document.py\u001b[0m in \u001b[0;36mappend\u001b[1;34m(self, filename, overwrite)\u001b[0m\n\u001b[0;32m 461\u001b[0m \"\"\"\n\u001b[0;32m 462\u001b[0m \u001b[0mnew_graph\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mrdflib\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mGraph\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 463\u001b[1;33m \u001b[0mnew_graph\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mparse\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mfilename\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mformat\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;34m'application/rdf+xml'\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 464\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_append_graph\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mnew_graph\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0moverwrite\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 465\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n", + "\u001b[1;32mc:\\Users\\lukef\\.conda\\envs\\test\\lib\\site-packages\\rdflib\\graph.py\u001b[0m in \u001b[0;36mparse\u001b[1;34m(self, source, publicID, format, location, file, data, **args)\u001b[0m\n\u001b[0;32m 1474\u001b[0m \u001b[0mfile\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mfile\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 1475\u001b[0m \u001b[0mdata\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mdata\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m-> 1476\u001b[1;33m \u001b[0mformat\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mformat\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 1477\u001b[0m )\n\u001b[0;32m 1478\u001b[0m \u001b[1;32mif\u001b[0m \u001b[0mformat\u001b[0m \u001b[1;32mis\u001b[0m \u001b[1;32mNone\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", + "\u001b[1;32mc:\\Users\\lukef\\.conda\\envs\\test\\lib\\site-packages\\rdflib\\parser.py\u001b[0m in \u001b[0;36mcreate_input_source\u001b[1;34m(source, publicID, location, file, data, format)\u001b[0m\n\u001b[0;32m 418\u001b[0m \u001b[0mformat\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mformat\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 419\u001b[0m \u001b[0minput_source\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0minput_source\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 420\u001b[1;33m \u001b[0mlocation\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mlocation\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 421\u001b[0m )\n\u001b[0;32m 422\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n", + "\u001b[1;32mc:\\Users\\lukef\\.conda\\envs\\test\\lib\\site-packages\\rdflib\\parser.py\u001b[0m in \u001b[0;36m_create_input_source_from_location\u001b[1;34m(file, format, input_source, location)\u001b[0m\n\u001b[0;32m 474\u001b[0m \u001b[1;32mif\u001b[0m \u001b[0mabsolute_location\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mstartswith\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"file:///\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 475\u001b[0m \u001b[0mfilename\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0murl2pathname\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mabsolute_location\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mreplace\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"file:///\"\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;34m\"/\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 476\u001b[1;33m \u001b[0mfile\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mopen\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mfilename\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;34m\"rb\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 477\u001b[0m \u001b[1;32melse\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 478\u001b[0m \u001b[0minput_source\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mURLInputSource\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mabsolute_location\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mformat\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", + "\u001b[1;31mFileNotFoundError\u001b[0m: [Errno 2] No such file or directory: 'C:\\\\Users\\\\lukef\\\\OneDrive\\\\Desktop\\\\hmwk0\\\\CSCI_1300F\\\\Work\\\\PUDUWork\\\\PUDU\\\\RyanTest.xml'" + ] } - }, - "outputs": [], + ], "source": [ "def dictionaryCreatorPython(file):\n", " import sbol2 as sb2\n", " #given code from website\n", " doc = sb2.Document()\n", " doc.read(file)\n", - " #Loops through commponetDefinition\n", + " #Loops through commponentDefinition\n", " #for DNA\n", "\n", " #look at the roles for each\n", " for cd in doc.componentDefinitions:\n", " #check for role\n", " if cd.role =='http://identifiers.org/so/SO:0000804':\n", - " print(cd)#allproducts" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "6a11bb44", - "metadata": { - "vscode": { - "languageId": "plaintext" - } - }, - "outputs": [], - "source": [ - "cd.features" + " print(cd)#allproducts\n", + " cd.features\n", + "\n", + "dictionaryCreatorPython('RyanTest.xml')" ] } ], "metadata": { + "kernelspec": { + "display_name": "test", + "language": "python", + "name": "python3" + }, "language_info": { - "name": "python" + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.7.12" } }, "nbformat": 4, diff --git a/scripts/SBOL_xlsx4.xlsx b/scripts/SBOL_xlsx4.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..0631f8f6858850e57c861bd347700469e17ff54c GIT binary patch literal 6420 zcmZ`;by!sGw;j4+NC^SyPHB+_>F%Mshfb01E)fI)Y3U9DK@g<7LmDYbVPFvMsNe7B zmHXX!o^#%F=6Uw|W9|L!{jPOX6%Y^!0000g>=Fe)$nNdvP?0*Q+|3D;zLdR@++>qqsue@!Jq+%{V^$OCoJ;9_XAXK}YkT)b z?i%>WCT2mY+~V7kTVK2|F&kMr+oL?J4uT(V8Mu#yi1&*Ny9Qb%d;IM}H#(DXMJ}o}T*efa+PhMdiZ>dHKoh;4e{Xo`bs@0XVg1qVAgw@+L-1Cr_O(QttNJhpFB}Eg)#Be`P@RxpLPYjCn

jlq#Tiwd~D_@y|U^mU>K^!UkYO<*vP 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 Lu)<*@`uX-h6P*a& literal 0 HcmV?d00001 diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py index a13914c..7414af9 100644 --- a/scripts/run_sbol2assembly_libre.py +++ b/scripts/run_sbol2assembly_libre.py @@ -281,7 +281,20 @@ def get_xlsx_output(self, name:str): 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0032/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0015/1'], 'RestrictionEnzyme' : 'https://charmme.synbiohub.org/user/Gonza10V/ligationtestforreal/ComponentDefinition_BsaI/1', 'Product' : 'https://charmme.synbiohub.org/public/CIDARMoCloKit/cre_CRE/1' -}] +}, +{ 'Backbone' : 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/ComponentDefinition_dvk_backbone_core/1', +'PartsList' : ['https://synbiohub.org/public/igem/BBa_J23101/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/E0040m_gfp/1', +'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0032/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0015/1'], +'RestrictionEnzyme' : 'https://charmme.synbiohub.org/user/Gonza10V/ligationtestforreal/ComponentDefinition_BsaI/1', +'Product' : 'https://charmme.synbiohub.org/public/CIDARMoCloKit/cre_CRE/1' +}, +{ 'Backbone' : 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/ComponentDefinition_dvk_backbone_core/1', +'PartsList' : ['https://synbiohub.org/public/igem/BBa_J23106/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/E0040m_gfp/1', +'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0032/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0015/1'], +'RestrictionEnzyme' : 'https://charmme.synbiohub.org/user/Gonza10V/ligationtestforreal/ComponentDefinition_BsaI/1', +'Product' : 'https://charmme.synbiohub.org/public/CIDARMoCloKit/cre_CRE/1' +} +] #create a recursive function based on the how many times #def assemblyRecursion(, duplicate dictionaries, amount): @@ -300,4 +313,4 @@ def run(protocol= protocol_api.ProtocolContext): pudu_sbol2_assembly = sbol2assembly(assemblies=assembly_sbol2_uris) pudu_sbol2_assembly.run(protocol) - pudu_sbol2_assembly.get_xlsx_output("SBOL_xlsx3") \ No newline at end of file + pudu_sbol2_assembly.get_xlsx_output("SBOL_xlsx4") \ No newline at end of file From b3db2974e5d02b26fd78be9ee9ee874323d06af6 Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Wed, 11 Jun 2025 11:56:30 -0600 Subject: [PATCH 032/100] Added the dictionary list creator to utils --- src/pudu/utils.py | 59 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/src/pudu/utils.py b/src/pudu/utils.py index 09401f4..bab9f80 100644 --- a/src/pudu/utils.py +++ b/src/pudu/utils.py @@ -241,3 +241,62 @@ def dictionaryCreatorPython(file): response = outputDictionary return response + + +#NEW dictionary creator that goes through xml file +#reads roles and returns a list of dictionaries +def dictionaryListCreatorPython(file): + import sbol2 as sb2 + + # Disable typed URIs for cleaner URI strings + sb2.Config.setOption('sbol_typed_uris', False) + + # Read the SBOL document + doc = sb2.Document() + doc.read(file) + + # Known SO roles + PRODUCT_ROLE = 'http://identifiers.org/so/SO:0000804' # composite product + PLASMID_ROLE = 'https://identifiers.org/SO:0000755' # plasmid/backbone + RESTRICTION_ENZYME_ROLE = 'http://identifiers.org/so/SO:0001691' # restriction site + + # Known enzyme names (lowercase) + ENZYME_NAMES = ['bsai', 'ecori', 'bamhi', 'hindiii', 'noti', 'xhoi'] + + product_dicts = [] + + for cd in doc.componentDefinitions: + if PRODUCT_ROLE in cd.roles: + result = { + 'Product': cd.identity, + 'Backbone': None, + 'Parts': [], + 'Restriction Enzyme': None + } + + for comp in cd.components: + sub_def_uri = comp.definition + sub_cd = doc.componentDefinitions.get(sub_def_uri) + + if sub_cd is None: + continue + + roles = sub_cd.roles + display_id = sub_cd.displayId.lower() if sub_cd.displayId else "" + + # Normalize displayId by removing non-alpha chars for flexible matching + normalized_id = ''.join(c for c in display_id if c.isalpha()) + + print(f"{sub_cd.displayId} roles: {roles}") + + if PLASMID_ROLE in roles: + result['Backbone'] = sub_def_uri + result['Parts'].append(sub_def_uri) + elif RESTRICTION_ENZYME_ROLE in roles or any(enzyme in normalized_id for enzyme in ENZYME_NAMES): + result['Restriction Enzyme'] = sub_def_uri + else: + result['Parts'].append(sub_def_uri) + + product_dicts.append(result) + + return product_dicts \ No newline at end of file From f44c016aa0f10b87579619a4e96e9f313e5c9fb4 Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Thu, 12 Jun 2025 11:43:23 -0600 Subject: [PATCH 033/100] Added the dictionary list creator to utils --- src/pudu/utils.py | 32 +++++++++++++++++++++----------- 1 file changed, 21 insertions(+), 11 deletions(-) diff --git a/src/pudu/utils.py b/src/pudu/utils.py index bab9f80..e04ac8f 100644 --- a/src/pudu/utils.py +++ b/src/pudu/utils.py @@ -258,15 +258,21 @@ def dictionaryListCreatorPython(file): # Known SO roles PRODUCT_ROLE = 'http://identifiers.org/so/SO:0000804' # composite product PLASMID_ROLE = 'https://identifiers.org/SO:0000755' # plasmid/backbone - RESTRICTION_ENZYME_ROLE = 'http://identifiers.org/so/SO:0001691' # restriction site - # Known enzyme names (lowercase) - ENZYME_NAMES = ['bsai', 'ecori', 'bamhi', 'hindiii', 'noti', 'xhoi'] + # SBOL type for Protein + PROTEIN_TYPE = sb2.BIOPAX_PROTEIN # URI for proteins product_dicts = [] + globalEnzyme = None for cd in doc.componentDefinitions: + # Detect restriction enzyme by Protein type + #create a filler variable + if PROTEIN_TYPE in cd.types: + globalEnzyme = cd.identity + if PRODUCT_ROLE in cd.roles: + #create new dict for every product result = { 'Product': cd.identity, 'Backbone': None, @@ -282,21 +288,25 @@ def dictionaryListCreatorPython(file): continue roles = sub_cd.roles - display_id = sub_cd.displayId.lower() if sub_cd.displayId else "" - - # Normalize displayId by removing non-alpha chars for flexible matching - normalized_id = ''.join(c for c in display_id if c.isalpha()) + display_id = sub_cd.displayId or "" - print(f"{sub_cd.displayId} roles: {roles}") + #print(f"{display_id} roles: {roles} types: {types}") + # Detect backbone by SO role if PLASMID_ROLE in roles: result['Backbone'] = sub_def_uri result['Parts'].append(sub_def_uri) - elif RESTRICTION_ENZYME_ROLE in roles or any(enzyme in normalized_id for enzyme in ENZYME_NAMES): - result['Restriction Enzyme'] = sub_def_uri + + # Default case: treat as regular part else: result['Parts'].append(sub_def_uri) product_dicts.append(result) - return product_dicts \ No newline at end of file + #add enzymes to each dictionary + for dict in product_dicts: + print("check for enzyme") + print(globalEnzyme) + dict['Restriction Enzyme'] = globalEnzyme + + return product_dicts From b15f000d9bb99b60adbe4042cfdeef86722a22ab Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Mon, 16 Jun 2025 09:38:47 -0600 Subject: [PATCH 034/100] Fixed bug in dictionaryListCreator --- src/pudu/utils.py | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/pudu/utils.py b/src/pudu/utils.py index e04ac8f..f019405 100644 --- a/src/pudu/utils.py +++ b/src/pudu/utils.py @@ -276,7 +276,7 @@ def dictionaryListCreatorPython(file): result = { 'Product': cd.identity, 'Backbone': None, - 'Parts': [], + 'PartsList': [], 'Restriction Enzyme': None } @@ -295,18 +295,16 @@ def dictionaryListCreatorPython(file): # Detect backbone by SO role if PLASMID_ROLE in roles: result['Backbone'] = sub_def_uri - result['Parts'].append(sub_def_uri) + result['PartsList'].append(sub_def_uri) # Default case: treat as regular part else: - result['Parts'].append(sub_def_uri) + result['PartsList'].append(sub_def_uri) product_dicts.append(result) #add enzymes to each dictionary for dict in product_dicts: - print("check for enzyme") - print(globalEnzyme) dict['Restriction Enzyme'] = globalEnzyme return product_dicts From 1c48e228060bede380b4a6ade1f251a75739b2ca Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Wed, 18 Jun 2025 09:44:13 -0600 Subject: [PATCH 035/100] Fixes to dictionary list creator so it can be used in runsbol2 --- src/pudu/utils.py | 1 + 1 file changed, 1 insertion(+) diff --git a/src/pudu/utils.py b/src/pudu/utils.py index f019405..3b6f3a3 100644 --- a/src/pudu/utils.py +++ b/src/pudu/utils.py @@ -247,6 +247,7 @@ def dictionaryCreatorPython(file): #reads roles and returns a list of dictionaries def dictionaryListCreatorPython(file): import sbol2 as sb2 + import json # Disable typed URIs for cleaner URI strings sb2.Config.setOption('sbol_typed_uris', False) From 03355e3a80565b38de2d6fc9b5e65e851208245c Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Wed, 18 Jun 2025 09:47:53 -0600 Subject: [PATCH 036/100] edits to runsbol2 to have the xml go directly to assembly --- scripts/LukeTestingNotebook.ipynb | 2 +- scripts/run_sbol2assembly_libre.py | 26 ++++++-------------------- 2 files changed, 7 insertions(+), 21 deletions(-) diff --git a/scripts/LukeTestingNotebook.ipynb b/scripts/LukeTestingNotebook.ipynb index 2a42a27..b177862 100644 --- a/scripts/LukeTestingNotebook.ipynb +++ b/scripts/LukeTestingNotebook.ipynb @@ -30,7 +30,7 @@ " #given code from website\n", " doc = sb2.Document()\n", " doc.read(file)\n", - " #Loops through commponentDefinition\n", + " #Loops through commponetDefinition\n", " #for DNA\n", "\n", " #look at the roles for each\n", diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py index 7414af9..03e08d4 100644 --- a/scripts/run_sbol2assembly_libre.py +++ b/scripts/run_sbol2assembly_libre.py @@ -3,6 +3,7 @@ from fnmatch import fnmatch from itertools import product import xlsxwriter +from utils.py import dictionaryListCreatorPython # utils @@ -275,26 +276,8 @@ def get_xlsx_output(self, name:str): #print('Assembled parts in thermocycler_module') #print(self.dict_of_parts_in_thermocycler) -# assembly -assembly_sbol2_uris = [{ 'Backbone' : 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/ComponentDefinition_dvk_backbone_core/1', -'PartsList' : ['https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/J23100/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/E0040m_gfp/1', -'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0032/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0015/1'], -'RestrictionEnzyme' : 'https://charmme.synbiohub.org/user/Gonza10V/ligationtestforreal/ComponentDefinition_BsaI/1', -'Product' : 'https://charmme.synbiohub.org/public/CIDARMoCloKit/cre_CRE/1' -}, -{ 'Backbone' : 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/ComponentDefinition_dvk_backbone_core/1', -'PartsList' : ['https://synbiohub.org/public/igem/BBa_J23101/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/E0040m_gfp/1', -'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0032/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0015/1'], -'RestrictionEnzyme' : 'https://charmme.synbiohub.org/user/Gonza10V/ligationtestforreal/ComponentDefinition_BsaI/1', -'Product' : 'https://charmme.synbiohub.org/public/CIDARMoCloKit/cre_CRE/1' -}, -{ 'Backbone' : 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/ComponentDefinition_dvk_backbone_core/1', -'PartsList' : ['https://synbiohub.org/public/igem/BBa_J23106/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/E0040m_gfp/1', -'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0032/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0015/1'], -'RestrictionEnzyme' : 'https://charmme.synbiohub.org/user/Gonza10V/ligationtestforreal/ComponentDefinition_BsaI/1', -'Product' : 'https://charmme.synbiohub.org/public/CIDARMoCloKit/cre_CRE/1' -} -] +#Where dictionary used to be + #create a recursive function based on the how many times #def assemblyRecursion(, duplicate dictionaries, amount): @@ -310,6 +293,9 @@ def get_xlsx_output(self, name:str): 'apiLevel': '2.13'} def run(protocol= protocol_api.ProtocolContext): + # Load dictionary from XML file + xml_file = "your_input_file.xml" + assembly_sbol2_uris = dictionaryListCreatorPython(xml_file) pudu_sbol2_assembly = sbol2assembly(assemblies=assembly_sbol2_uris) pudu_sbol2_assembly.run(protocol) From 5f8131363cb34ae1264fb301087bab88eca0de49 Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Wed, 18 Jun 2025 11:00:23 -0600 Subject: [PATCH 037/100] added three promoter golden gate function to my utils --- src/pudu/utils.py | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/src/pudu/utils.py b/src/pudu/utils.py index 3b6f3a3..cf61fbf 100644 --- a/src/pudu/utils.py +++ b/src/pudu/utils.py @@ -309,3 +309,39 @@ def dictionaryListCreatorPython(file): dict['Restriction Enzyme'] = globalEnzyme return product_dicts + + +def test_golden_gate(self): + pro_doc = sb2.Document() + pro_doc.read('pro_in_bb.xml') + + #where I am working adding 2 and 3 + pro2_doc = sb2.Document() + pro2_doc.read('pro2_in_bb.xml') #add document + + pro3_doc = sb2.Document() + pro3_doc.read('pro3_in_bb.xml') #add document + + rbs_doc = sb2.Document() + rbs_doc.read('rbs_in_bb.xml') + + cds_doc = sb2.Document() + cds_doc.read('cds_in_bb.xml') + + ter_doc = sb2.Document() + ter_doc.read('terminator_in_bb.xml') + + bb_doc = sb2.Document() + bb_doc.read('backbone.xml') + + part_docs = [pro_doc, rbs_doc, cds_doc, ter_doc] + + assembly_doc = sb2.Document() + assembly_obj = golden_gate_assembly_plan('testassem', part_docs, bb_doc, 'BsaI', assembly_doc) + + composites = assembly_obj.run() + + assembly_doc.write('validation_assembly.xml') + + sbol_validation_result = assembly_doc.validate() + self.assertEqual(sbol_validation_result, 'Valid.', 'Assembly SBOL validation failed') \ No newline at end of file From 05e66231c0d4bbc9c23043042ea74476e029882c Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Wed, 18 Jun 2025 11:31:33 -0600 Subject: [PATCH 038/100] Added temporary utils to avoid import errors --- scripts/run_sbol2assembly_libre.py | 15 +- scripts/tempUtils.py | 347 +++++++++++++++++++++++++++++ 2 files changed, 359 insertions(+), 3 deletions(-) create mode 100644 scripts/tempUtils.py diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py index 03e08d4..5bff99c 100644 --- a/scripts/run_sbol2assembly_libre.py +++ b/scripts/run_sbol2assembly_libre.py @@ -3,7 +3,16 @@ from fnmatch import fnmatch from itertools import product import xlsxwriter -from utils.py import dictionaryListCreatorPython + +import os +import sys + +# Works under opentrons_simulate +script_dir = os.getcwd() +parent_dir = os.path.abspath(os.path.join(script_dir, '..')) +sys.path.append(parent_dir) + +from src.pudu.utils import dictionaryListCreatorPython # utils @@ -294,9 +303,9 @@ def get_xlsx_output(self, name:str): def run(protocol= protocol_api.ProtocolContext): # Load dictionary from XML file - xml_file = "your_input_file.xml" + xml_file = "RyanTest.xml" assembly_sbol2_uris = dictionaryListCreatorPython(xml_file) pudu_sbol2_assembly = sbol2assembly(assemblies=assembly_sbol2_uris) pudu_sbol2_assembly.run(protocol) - pudu_sbol2_assembly.get_xlsx_output("SBOL_xlsx4") \ No newline at end of file + pudu_sbol2_assembly.get_xlsx_output("SBOL_xlsx5") \ No newline at end of file diff --git a/scripts/tempUtils.py b/scripts/tempUtils.py new file mode 100644 index 0000000..cf61fbf --- /dev/null +++ b/scripts/tempUtils.py @@ -0,0 +1,347 @@ + + +thermo_wells = [ +'A1','A2','A3','A4','A5','A6','A7','A8','A9','A10','A11','A12', +'B1','B2','B3','B4','B5','B6','B7','B8','B9','B10','B11','B12', +'C1','C2','C3','C4','C5','C6','C7','C8','C9','C10','C11','C12', +'D1','D2','D3','D4','D5','D6','D7','D8','D9','D10','D11','D12', +'E1','E2','E3','E4','E5','E6','E7','E8','E9','E10','E11','E12', +'F1','F2','F3','F4','F5','F6','F7','F8','F9','F10','F11','F12', +'G1','G2','G3','G4','G5','G6','G7','G8','G9','G10','G11','G12', +'H1','H2','H3','H4','H5','H6','H7','H8','H9','H10','H11','H12' +] + +temp_wells = [ +'A1','A2','A3','A4','A5','A6', +'B1','B2','B3','B4','B5','B6', +'C1','C2','C3','C4','C5','C6', +'D1','D2','D3','D4','D5','D6' +] + +plate_96_wells = [ +'A1','A2','A3','A4','A5','A6','A7','A8','A9','A10','A11','A12', +'B1','B2','B3','B4','B5','B6','B7','B8','B9','B10','B11','B12', +'C1','C2','C3','C4','C5','C6','C7','C8','C9','C10','C11','C12', +'D1','D2','D3','D4','D5','D6','D7','D8','D9','D10','D11','D12', +'E1','E2','E3','E4','E5','E6','E7','E8','E9','E10','E11','E12', +'F1','F2','F3','F4','F5','F6','F7','F8','F9','F10','F11','F12', +'G1','G2','G3','G4','G5','G6','G7','G8','G9','G10','G11','G12', +'H1','H2','H3','H4','H5','H6','H7','H8','H9','H10','H11','H12' +] + +def liquid_transfer(pipette, volume, source, destination, asp_rate:float=0.5, disp_rate:float=1.0, blow_out:bool=True, touch_tip:bool=False, mix_before:float=0.0, mix_after:float=0.0, mix_reps:int=3, new_tip:bool=True, drop_tip:bool=True): + if new_tip: + pipette.pick_up_tip() + if mix_before > 0: + pipette.mix(mix_reps, mix_before, source) + pipette.aspirate(volume, source, rate=asp_rate) + pipette.dispense(volume, destination, rate=disp_rate) + if mix_after > 0: + pipette.mix(mix_reps, mix_after, destination) + if blow_out: + pipette.blow_out() + if touch_tip: + pipette.touch_tip() + if drop_tip: + pipette.drop_tip() + +#Define slots, to allocate 4 samples in each slot, lasts slots allocate in the border where border effects apply +slot_1 = ['A2', 'B2', 'C2', 'D2'] +slot_2 = ['A3', 'B3', 'C3', 'D3'] +slot_3 = ['A4', 'B4', 'C4', 'D4'] +slot_4 = ['A5', 'B5', 'C5', 'D5'] +slot_5 = ['A6', 'B6', 'C6', 'D6'] +slot_6 = ['A7', 'B7', 'C7', 'D7'] +slot_7 = ['A8', 'B8', 'C8', 'D8'] +slot_8 = ['A9', 'B9', 'C9', 'D9'] +slot_9 = ['A10', 'B10', 'C10', 'D10'] +slot_10 = ['A11', 'B11', 'C11', 'D11'] +slot_11 = ['E2', 'F2', 'G2', 'H2'] +slot_12 = ['E3', 'F3', 'G3', 'H3'] +slot_13 = ['E4', 'F4', 'G4', 'H4'] +slot_14 = ['E5', 'F5', 'G5', 'H5'] +slot_15 = ['E6', 'F6', 'G6', 'H6'] +slot_16 = ['E7', 'F7', 'G7', 'H7'] +slot_17 = ['E8', 'F8', 'G8', 'H8'] +slot_18 = ['E9', 'F9', 'G9', 'H9'] +slot_19 = ['E10', 'F10', 'G10', 'H10'] +slot_20 = ['E11', 'F11', 'G11', 'H11'] +slot_21 = ['A1', 'B1', 'C1', 'D1'] +slot_22 = ['E1', 'F1', 'G1', 'H1'] +slot_23 = ['A12', 'B12', 'C12', 'D12'] +slot_24 = ['E12', 'F12', 'G12', 'H12'] + +slots = [slot_1, slot_2, slot_3, slot_4, slot_5, slot_6, slot_7, slot_8, slot_9, slot_10, slot_11, slot_12, slot_13, slot_14, slot_15, slot_16, slot_17, slot_18, slot_19, slot_20, slot_21, slot_22, slot_23, slot_24] + +#define rows +row_a = ['A1','A2','A3','A4','A5','A6','A7','A8','A9','A10','A11','A12'] +row_b = ['B1','B2','B3','B4','B5','B6','B7','B8','B9','B10','B11','B12'] +row_c = ['C1','C2','C3','C4','C5','C6','C7','C8','C9','C10','C11','C12'] +row_d = ['D1','D2','D3','D4','D5','D6','D7','D8','D9','D10','D11','D12'] +row_e = ['E1','E2','E3','E4','E5','E6','E7','E8','E9','E10','E11','E12'] +row_f = ['F1','F2','F3','F4','F5','F6','F7','F8','F9','F10','F11','F12'] +row_g = ['G1','G2','G3','G4','G5','G6','G7','G8','G9','G10','G11','G12'] +row_h = ['H1','H2','H3','H4','H5','H6','H7','H8','H9','H10','H11','H12'] + +rows = [row_a, row_b, row_c, row_d, row_e, row_f, row_g, row_h] + +#define columns +col_1 = ['A1','B1','C1','D1','E1','F1','G1','H1'] +col_2 = ['A2','B2','C2','D2','E2','F2','G2','H2'] +col_3 = ['A3','B3','C3','D3','E3','F3','G3','H3'] +col_4 = ['A4','B4','C4','D4','E4','F4','G4','H4'] +col_5 = ['A5','B5','C5','D5','E5','F5','G5','H5'] +col_6 = ['A6','B6','C6','D6','E6','F6','G6','H6'] +col_7 = ['A7','B7','C7','D7','E7','F7','G7','H7'] +col_8 = ['A8','B8','C8','D8','E8','F8','G8','H8'] +col_9 = ['A9','B9','C9','D9','E9','F9','G9','H9'] +col_10 = ['A10','B10','C10','D10','E10','F10','G10','H10'] +col_11 = ['A11','B11','C11','D11','E11','F11','G11','H11'] +col_12 = ['A12','B12','C12','D12','E12','F12','G12','H12'] + +columns = [col_1, col_2, col_3, col_4, col_5, col_6, col_7, col_8, col_9, col_10, col_11, col_12] + +position_to_row_and_column = {'A1':(1,1), 'A2':(1,2), 'A3':(1,3), 'A4':(1,4), 'A5':(1,5), 'A6':(1,6), 'A7':(1,7), 'A8':(1,8), 'A9':(1,9), 'A10':(1,10), 'A11':(1,11), 'A12':(1,12), + 'B1':(2,1), 'B2':(2,2), 'B3':(2,3), 'B4':(2,4), 'B5':(2,5), 'B6':(2,6), 'B7':(2,7), 'B8':(2,8), 'B9':(2,9), 'B10':(2,10), 'B11':(2,11), 'B12':(2,12), + 'C1':(3,1), 'C2':(3,2), 'C3':(3,3), 'C4':(3,4), 'C5':(3,5), 'C6':(3,6), 'C7':(3,7), 'C8':(3,8), 'C9':(3,9), 'C10':(3,10), 'C11':(3,11), 'C12':(3,12), + 'D1':(4,1), 'D2':(4,2), 'D3':(4,3), 'D4':(4,4), 'D5':(4,5), 'D6':(4,6), 'D7':(4,7), 'D8':(4,8), 'D9':(4,9), 'D10':(4,10), 'D11':(4,11), 'D12':(4,12), + 'E1':(5,1), 'E2':(5,2), 'E3':(5,3), 'E4':(5,4), 'E5':(5,5), 'E6':(5,6), 'E7':(5,7), 'E8':(5,8), 'E9':(5,9), 'E10':(5,10), 'E11':(5,11), 'E12':(5,12), + 'F1':(6,1), 'F2':(6,2), 'F3':(6,3), 'F4':(6,4), 'F5':(6,5), 'F6':(6,6), 'F7':(6,7), 'F8':(6,8), 'F9':(6,9), 'F10':(6,10), 'F11':(6,11), 'F12':(6,12), + 'G1':(7,1), 'G2':(7,2), 'G3':(7,3), 'G4':(7,4), 'G5':(7,5), 'G6':(7,6), 'G7':(7,7), 'G8':(7,8), 'G9':(7,9), 'G10':(7,10), 'G11':(7,11), 'G12':(7,12), + 'H1':(8,1), 'H2':(8,2), 'H3':(8,3), 'H4':(8,4), 'H5':(8,5), 'H6':(8,6), 'H7':(8,7), 'H8':(8,8), 'H9':(8,9), 'H10':(8,10), 'H11':(8,11), 'H12':(8,12)} + +row_letter_to_number = {'A':1, 'B':2, 'C':3, 'D':4, 'E':5, 'F':6, 'G':7, 'H':8} + + +#Xml to uri dictionary +def dictionaryCreatorjson(file): + import sbol2 as sb2 + from flask import Flask, jsonify + app = Flask(__name__) + #given code from website + doc = sb2.Document() + doc.read(file) + #Loops through commponetDefinition + #for DNA + # Lists to store different components + BackBoneList = ['https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/ComponentDefinition_dvk_backbone_core/1'] + PartsList = ['https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/J23100/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/E0040m_gfp/1', + 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0032/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0015/1'] + RestrictionEnzymeList = ['https://charmme.synbiohub.org/user/Gonza10V/ligationtestforreal/ComponentDefinition_BsaI/1'] + # Flags to track duplicates + gotBone = False + gotZyme = False + # Output dictionary + outputDictionary = {"Parts": [], "Backbone": -1, "Restriction Enzyme": -1} + # Loop through component definitions + for cd in doc.componentDefinitions: + print(cd) + # Checks backbone + if cd in BackBoneList: + print(cd) + print("backbone") + if not gotBone: + outputDictionary["Backbone"] = cd + gotBone = True # Update flag + else: + print("You have more than one backbone") + return -1 + # Checks parts + if cd in PartsList: + print(cd) + print("got part") + outputDictionary["Parts"].append(cd) + # Checks enzymes + if cd in RestrictionEnzymeList: + print(cd) + print("Enzyme") + if not gotZyme: + outputDictionary["Restriction Enzyme"] = cd # Assign value + gotZyme = True # Update flag + else: + print("You have more than one restriction enzyme") + return -1 + # Error Checks + if len(outputDictionary["Parts"]) <= 1: + print("Invalid number of parts") + return -1 + if outputDictionary["Backbone"] == -1: + print("No Backbone found, try again") + return -1 + if outputDictionary["Restriction Enzyme"] == -1: + print("No Restriction Enzyme found, try again") + return -1 + #(outputDictionary) + response = jsonify(outputDictionary) + content = response.get_data(as_text=True) + + return content + +#same as before but no Json +#Change to add roles +def dictionaryCreatorPython(file): + import sbol2 as sb2 + #given code from website + doc = sb2.Document() + doc.read(file) + #Loops through commponetDefinition + #for DNA + # Lists to store different components + ProductRoleList = ['http://identifiers.org/so/SO:0000804'] + + #look at the roles for each + for cd in doc.componentDefinitions: + #check for role + if cd.role in ProductRoleList: + print(cd) + + + + # Output dictionary + outputAssemblies = [] + # Loop through component definitions + for cd in doc.componentDefinitions: + print(cd) + # Checks backbone + if cd in BackBoneList: + print(cd) + print("backbone") + if not gotBone: + outputDictionary["Backbone"] = cd + gotBone = True # Update flag + else: + print("You have more than one backbone") + return -1 + # Checks parts + if cd in PartsList: + print(cd) + print("got part") + outputDictionary["Parts"].append(cd) + # Checks enzymes + if cd in RestrictionEnzymeList: + print(cd) + print("Enzyme") + if not gotZyme: + outputDictionary["Restriction Enzyme"] = cd # Assign value + gotZyme = True # Update flag + else: + print("You have more than one restriction enzyme") + return -1 + # Error Checks + if len(outputDictionary["Parts"]) <= 1: + print("Invalid number of parts") + return -1 + if outputDictionary["Backbone"] == -1: + print("No Backbone found, try again") + return -1 + if outputDictionary["Restriction Enzyme"] == -1: + print("No Restriction Enzyme found, try again") + return -1 + #(outputDictionary) + response = outputDictionary + + return response + + +#NEW dictionary creator that goes through xml file +#reads roles and returns a list of dictionaries +def dictionaryListCreatorPython(file): + import sbol2 as sb2 + import json + + # Disable typed URIs for cleaner URI strings + sb2.Config.setOption('sbol_typed_uris', False) + + # Read the SBOL document + doc = sb2.Document() + doc.read(file) + + # Known SO roles + PRODUCT_ROLE = 'http://identifiers.org/so/SO:0000804' # composite product + PLASMID_ROLE = 'https://identifiers.org/SO:0000755' # plasmid/backbone + + # SBOL type for Protein + PROTEIN_TYPE = sb2.BIOPAX_PROTEIN # URI for proteins + + product_dicts = [] + + globalEnzyme = None + for cd in doc.componentDefinitions: + # Detect restriction enzyme by Protein type + #create a filler variable + if PROTEIN_TYPE in cd.types: + globalEnzyme = cd.identity + + if PRODUCT_ROLE in cd.roles: + #create new dict for every product + result = { + 'Product': cd.identity, + 'Backbone': None, + 'PartsList': [], + 'Restriction Enzyme': None + } + + for comp in cd.components: + sub_def_uri = comp.definition + sub_cd = doc.componentDefinitions.get(sub_def_uri) + + if sub_cd is None: + continue + + roles = sub_cd.roles + display_id = sub_cd.displayId or "" + + #print(f"{display_id} roles: {roles} types: {types}") + + # Detect backbone by SO role + if PLASMID_ROLE in roles: + result['Backbone'] = sub_def_uri + result['PartsList'].append(sub_def_uri) + + # Default case: treat as regular part + else: + result['PartsList'].append(sub_def_uri) + + product_dicts.append(result) + + #add enzymes to each dictionary + for dict in product_dicts: + dict['Restriction Enzyme'] = globalEnzyme + + return product_dicts + + +def test_golden_gate(self): + pro_doc = sb2.Document() + pro_doc.read('pro_in_bb.xml') + + #where I am working adding 2 and 3 + pro2_doc = sb2.Document() + pro2_doc.read('pro2_in_bb.xml') #add document + + pro3_doc = sb2.Document() + pro3_doc.read('pro3_in_bb.xml') #add document + + rbs_doc = sb2.Document() + rbs_doc.read('rbs_in_bb.xml') + + cds_doc = sb2.Document() + cds_doc.read('cds_in_bb.xml') + + ter_doc = sb2.Document() + ter_doc.read('terminator_in_bb.xml') + + bb_doc = sb2.Document() + bb_doc.read('backbone.xml') + + part_docs = [pro_doc, rbs_doc, cds_doc, ter_doc] + + assembly_doc = sb2.Document() + assembly_obj = golden_gate_assembly_plan('testassem', part_docs, bb_doc, 'BsaI', assembly_doc) + + composites = assembly_obj.run() + + assembly_doc.write('validation_assembly.xml') + + sbol_validation_result = assembly_doc.validate() + self.assertEqual(sbol_validation_result, 'Valid.', 'Assembly SBOL validation failed') \ No newline at end of file From 5a10e7ccd201ecb5c6b864634c0df935856ad050 Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Wed, 18 Jun 2025 11:43:39 -0600 Subject: [PATCH 039/100] Additions to assembly, still does not work issues with tempUtils import --- scripts/run_sbol2assembly_libre.py | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py index 5bff99c..4335ad2 100644 --- a/scripts/run_sbol2assembly_libre.py +++ b/scripts/run_sbol2assembly_libre.py @@ -3,16 +3,7 @@ from fnmatch import fnmatch from itertools import product import xlsxwriter - -import os -import sys - -# Works under opentrons_simulate -script_dir = os.getcwd() -parent_dir = os.path.abspath(os.path.join(script_dir, '..')) -sys.path.append(parent_dir) - -from src.pudu.utils import dictionaryListCreatorPython +from tempUtils import dictionaryListCreatorPython # utils From ad290593cf114a47cba775fc0cdc6a74e40dcc78 Mon Sep 17 00:00:00 2001 From: Gonza10V Date: Fri, 20 Jun 2025 13:49:45 -0600 Subject: [PATCH 040/100] new dev repo --- notebooks/Assembly_to_OT2sim.ipynb | 156 +++ notebooks/Assembly_to_dict.ipynb | 147 +++ scripts/run_Loop_assembly.py | 3 +- tests/validation_assembly.xml | 1580 ++++++++++++++++++++++++++++ 4 files changed, 1885 insertions(+), 1 deletion(-) create mode 100644 notebooks/Assembly_to_OT2sim.ipynb create mode 100644 notebooks/Assembly_to_dict.ipynb create mode 100644 tests/validation_assembly.xml diff --git a/notebooks/Assembly_to_OT2sim.ipynb b/notebooks/Assembly_to_OT2sim.ipynb new file mode 100644 index 0000000..c21e252 --- /dev/null +++ b/notebooks/Assembly_to_OT2sim.ipynb @@ -0,0 +1,156 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "f62bc338", + "metadata": {}, + "source": [ + "# SBOL to robot simulation" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "7c2e1157", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Collecting git+https://github.com/MyersResearchGroup/SBOL2Build\n", + " Cloning https://github.com/MyersResearchGroup/SBOL2Build to /private/var/folders/65/dt4l3nw13q57n8x9nlly46640000gn/T/pip-req-build-zd6w75qs\n", + " Running command git clone --filter=blob:none --quiet https://github.com/MyersResearchGroup/SBOL2Build /private/var/folders/65/dt4l3nw13q57n8x9nlly46640000gn/T/pip-req-build-zd6w75qs\n", + " Resolved https://github.com/MyersResearchGroup/SBOL2Build to commit 177a60672c96904f3f911b36648493deb05419ce\n", + " Installing build dependencies ... \u001b[?25ldone\n", + "\u001b[?25h Getting requirements to build wheel ... \u001b[?25ldone\n", + "\u001b[?25h Preparing metadata (pyproject.toml) ... \u001b[?25ldone\n", + "\u001b[?25hRequirement already satisfied: sbol2 in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from sbol2build==0.0b1) (1.2)\n", + "Requirement already satisfied: biopython in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from sbol2build==0.0b1) (1.84)\n", + "Requirement already satisfied: pydna in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from sbol2build==0.0b1) (5.4.0)\n", + "Requirement already satisfied: numpy in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from biopython->sbol2build==0.0b1) (1.26.1)\n", + "Requirement already satisfied: appdirs>=1.4.4 in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from pydna->sbol2build==0.0b1) (1.4.4)\n", + "Requirement already satisfied: networkx>=2.8.8 in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from pydna->sbol2build==0.0b1) (3.2.1)\n", + "Requirement already satisfied: prettytable>=3.5.0 in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from pydna->sbol2build==0.0b1) (3.16.0)\n", + "Requirement already satisfied: pydivsufsort>=0.0.14 in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from pydna->sbol2build==0.0b1) (0.0.18)\n", + "Requirement already satisfied: pyfiglet==0.8.post1 in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from pydna->sbol2build==0.0b1) (0.8.post1)\n", + "Requirement already satisfied: seguid>=0.0.5 in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from pydna->sbol2build==0.0b1) (0.1.0)\n", + "Requirement already satisfied: wcwidth in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from prettytable>=3.5.0->pydna->sbol2build==0.0b1) (0.2.13)\n", + "Requirement already satisfied: wheel in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from pydivsufsort>=0.0.14->pydna->sbol2build==0.0b1) (0.41.2)\n", + "Requirement already satisfied: rdflib>=5.0 in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from sbol2->sbol2build==0.0b1) (6.1.1)\n", + "Requirement already satisfied: python-dateutil in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from sbol2->sbol2build==0.0b1) (2.8.2)\n", + "Requirement already satisfied: deprecated in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from sbol2->sbol2build==0.0b1) (1.2.14)\n", + "Requirement already satisfied: lxml in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from sbol2->sbol2build==0.0b1) (5.2.1)\n", + "Requirement already satisfied: requests in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from sbol2->sbol2build==0.0b1) (2.25.1)\n", + "Requirement already satisfied: urllib3 in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from sbol2->sbol2build==0.0b1) (1.26.5)\n", + "Requirement already satisfied: packaging>=20.0 in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from sbol2->sbol2build==0.0b1) (24.0)\n", + "Requirement already satisfied: isodate in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from rdflib>=5.0->sbol2->sbol2build==0.0b1) (0.6.1)\n", + "Requirement already satisfied: pyparsing in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from rdflib>=5.0->sbol2->sbol2build==0.0b1) (2.4.7)\n", + "Requirement already satisfied: setuptools in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from rdflib>=5.0->sbol2->sbol2build==0.0b1) (68.2.2)\n", + "Requirement already satisfied: wrapt<2,>=1.10 in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from deprecated->sbol2->sbol2build==0.0b1) (1.16.0)\n", + "Requirement already satisfied: six in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from isodate->rdflib>=5.0->sbol2->sbol2build==0.0b1) (1.16.0)\n", + "Requirement already satisfied: chardet<5,>=3.0.2 in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from requests->sbol2->sbol2build==0.0b1) (4.0.0)\n", + "Requirement already satisfied: idna<3,>=2.5 in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from requests->sbol2->sbol2build==0.0b1) (2.10)\n", + "Requirement already satisfied: certifi>=2017.4.17 in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from requests->sbol2->sbol2build==0.0b1) (2024.2.2)\n", + "Note: you may need to restart the kernel to use updated packages.\n" + ] + } + ], + "source": [ + "pip install git+https://github.com/MyersResearchGroup/SBOL2Build" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "69c8a583", + "metadata": {}, + "outputs": [], + "source": [ + "import sbol2build as sb2b" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "e86cb15c", + "metadata": {}, + "outputs": [], + "source": [ + "import sbol2 as sb2" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "4f19b39f", + "metadata": {}, + "outputs": [], + "source": [ + "def test_golden_gate(self):\n", + " pro_doc = sb2.Document()\n", + " pro_doc.read('pro_in_bb.xml')\n", + "\n", + " #where I am working adding 2 and 3\n", + " pro2_doc = sb2.Document()\n", + " pro2_doc.read('pro2_in_bb.xml') #add document\n", + "\n", + " pro3_doc = sb2.Document()\n", + " pro3_doc.read('pro3_in_bb.xml') #add document\n", + " \n", + " rbs_doc = sb2.Document()\n", + " rbs_doc.read('rbs_in_bb.xml')\n", + "\n", + " cds_doc = sb2.Document()\n", + " cds_doc.read('cds_in_bb.xml')\n", + " \n", + " ter_doc = sb2.Document()\n", + " ter_doc.read('terminator_in_bb.xml')\n", + "\n", + " bb_doc = sb2.Document()\n", + " bb_doc.read('backbone.xml')\n", + "\n", + " part_docs = [pro_doc, rbs_doc, cds_doc, ter_doc]\n", + "\n", + " assembly_doc = sb2.Document()\n", + " assembly_obj = sb2b.golden_gate_assembly_plan('testassem', part_docs, bb_doc, 'BsaI', assembly_doc)\n", + "\n", + " composites = assembly_obj.run()\n", + "\n", + " assembly_doc.write('validation_assembly.xml')\n", + "\n", + " sbol_validation_result = assembly_doc.validate()\n", + " self.assertEqual(sbol_validation_result, 'Valid.', 'Assembly SBOL validation failed')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "5bf7f217", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "GLLDB", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.19" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/notebooks/Assembly_to_dict.ipynb b/notebooks/Assembly_to_dict.ipynb new file mode 100644 index 0000000..e8c95e0 --- /dev/null +++ b/notebooks/Assembly_to_dict.ipynb @@ -0,0 +1,147 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "c924440e", + "metadata": {}, + "source": [ + "# Assembly to dict" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "df62b558", + "metadata": {}, + "outputs": [], + "source": [ + "def dictionaryListCreatorPython(file):\n", + " import sbol2 as sb2\n", + " import json\n", + "\n", + " # Disable typed URIs for cleaner URI strings\n", + " sb2.Config.setOption('sbol_typed_uris', False)\n", + "\n", + " # Read the SBOL document\n", + " doc = sb2.Document()\n", + " doc.read(file)\n", + "\n", + " # Known SO roles\n", + " PRODUCT_ROLE = 'http://identifiers.org/so/SO:0000804' # composite product\n", + " PLASMID_ROLE = 'https://identifiers.org/SO:0000755' # plasmid/backbone\n", + "\n", + " # SBOL type for Protein\n", + " PROTEIN_TYPE = sb2.BIOPAX_PROTEIN # URI for proteins\n", + "\n", + " product_dicts = []\n", + "\n", + " globalEnzyme = None\n", + " for cd in doc.componentDefinitions:\n", + " # Detect restriction enzyme by Protein type\n", + " #create a filler variable\n", + " if PROTEIN_TYPE in cd.types:\n", + " globalEnzyme = cd.identity\n", + "\n", + " if PRODUCT_ROLE in cd.roles:\n", + " #create new dict for every product\n", + " result = {\n", + " 'Product': cd.identity,\n", + " 'Backbone': None,\n", + " 'PartsList': [],\n", + " 'Restriction Enzyme': None\n", + " }\n", + "\n", + " for comp in cd.components:\n", + " sub_def_uri = comp.definition\n", + " sub_cd = doc.componentDefinitions.get(sub_def_uri)\n", + "\n", + " if sub_cd is None:\n", + " continue\n", + "\n", + " roles = sub_cd.roles\n", + " display_id = sub_cd.displayId or \"\"\n", + "\n", + " #print(f\"{display_id} roles: {roles} types: {types}\")\n", + "\n", + " # Detect backbone by SO role\n", + " if PLASMID_ROLE in roles:\n", + " result['Backbone'] = sub_def_uri\n", + " result['PartsList'].append(sub_def_uri)\n", + "\n", + " # Default case: treat as regular part\n", + " else:\n", + " result['PartsList'].append(sub_def_uri)\n", + "\n", + " product_dicts.append(result)\n", + "\n", + " #add enzymes to each dictionary\n", + " for dict in product_dicts:\n", + " dict['Restriction Enzyme'] = globalEnzyme\n", + "\n", + " return product_dicts" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "cef06312", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[{'Product': 'https://SBOL2Build.org/composite_1/1',\n", + " 'Backbone': None,\n", + " 'PartsList': ['https://sbolcanvas.org/B0015/1',\n", + " 'https://sbolcanvas.org/Cir_qxow/1',\n", + " 'https://SBOL2Build.org/Ligation_Scar_A/1',\n", + " 'https://SBOL2Build.org/Ligation_Scar_D/1',\n", + " 'https://SBOL2Build.org/Ligation_Scar_B/1',\n", + " 'https://SBOL2Build.org/Ligation_Scar_E/1',\n", + " 'https://sbolcanvas.org/J23101/1',\n", + " 'https://sbolcanvas.org/GFP/1',\n", + " 'https://sbolcanvas.org/B0034/1',\n", + " 'https://SBOL2Build.org/Ligation_Scar_C/1'],\n", + " 'Restriction Enzyme': 'https://SBOL2Build.org/T4_Ligase/1'}]" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "dictionaryListCreatorPython(\"../tests/validation_assembly.xml\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "46fb31a6", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "GLLDB", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.19" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/scripts/run_Loop_assembly.py b/scripts/run_Loop_assembly.py index 2e15aab..274f5c1 100644 --- a/scripts/run_Loop_assembly.py +++ b/scripts/run_Loop_assembly.py @@ -16,4 +16,5 @@ def run(protocol= protocol_api.ProtocolContext): pudu_loop_assembly = Loop_assembly(assemblies=assemblies,) - pudu_loop_assembly.run(protocol) \ No newline at end of file + pudu_loop_assembly.run(protocol) + pudu_loop_assembly.get_xlsx_output('loop_assembly_output.xlsx') \ No newline at end of file diff --git a/tests/validation_assembly.xml b/tests/validation_assembly.xml new file mode 100644 index 0000000..7944404 --- /dev/null +++ b/tests/validation_assembly.xml @@ -0,0 +1,1580 @@ + + + + + + + + 1 + UJHDBOTD_106_reactant + + + + + + + 1 + UJHDBOTD_70_digestion_interaction + + + restriction + + + 1 + + + + + + 1 + + + UJHDBOTD_70_product + + + + + + + UJHDBOTD_70_reactant + + + 1 + + + + + + + + + + + + + 1 + UJHDBOTD_106_product + + + + UJHDBOTD_106_digestion_interaction + + + + 1 + restriction + + + + + + + + + UJHDBOTD_106_reactant + + 1 + + + + 1 + + + + + + + restriction + + 1 + + + + + + + UJHDBOTD_backbone_reactant + + + + 1 + + + 1 + + + 1 + + + UJHDBOTD_backbone_product + + + + UJHDBOTD_digestion_interaction + + + + + testassem + + + + + + 1 + ligation + + + + + + + + + UJHDBOTD_extracted_backbone_ligation + + 1 + + + + + 1 + UJHDBOTD_106_extracted_part_ligation + + + + + + + + 1 + UJHDBOTD_134_extracted_part_ligation + + + + + + + + + + 1 + composite_1_product + + + + + + 1 + + + + 1 + UJHDBOTD_70_extracted_part_ligation + + + + + composite_1_ligation_interaction + + + + + + 1 + UJHDBOTD_45_extracted_part_ligation + + + + + 1 + + + 1 + + + + UJHDBOTD_70_digestion_product + + + + + + 1 + BsaI_enzyme + + + + + + + + + + UJHDBOTD_45_digestion_product + + + 1 + + + + + + 1 + + + + + UJHDBOTD_backbone_digestion_product + + + + + UJHDBOTD_45_digestion_interaction + + 1 + + + UJHDBOTD_45_reactant + + + + 1 + + + + + + 1 + + restriction + + + + + + + UJHDBOTD_45_product + + + 1 + + + + + + + + composite_1 + + 1 + + + + + + + + + 1 + + + + UJHDBOTD_134_digestion_product + + + + + 1 + + + UJHDBOTD_70_reactant + + + + + + + 1 + + + UJHDBOTD_backbone_reactant + + + + + + + + + T4_Ligase + + + + 1 + + + + + 1 + UJHDBOTD_45_reactant + + + + + + + + + + UJHDBOTD_106_digestion_product + + + + 1 + + + + + + + + + + UJHDBOTD_134_reactant + 1 + + + + + + + UJHDBOTD_134_product + 1 + + + + + + + 1 + restriction + + + + + + 1 + + UJHDBOTD_134_digestion_interaction + + + + + + + + + UJHDBOTD_134_reactant + 1 + + + + + 1 + BsaI + BsaI + + Restriction enzyme BsaI from REBASE. + + + + + + + + + + 1 + + UJHDBOTD_70_three_prime_oh_component + + + + + + 1 + + + + 1 + five_prime_oh_location + 4 + + 1 + + + + five_prime_overhang + + + + UJHDBOTD_70_extracted_part + + + + + + + + 43 + 1 + three_prime_oh_location + 40 + + + + 1 + three_prime_overhang + + + + + + + + + 1 + UJHDBOTD_70_five_prime_oh_component + + + + + + + + + 1 + UJHDBOTD_70_part + + + + + UJHDBOTD_70_part_location + 39 + + 1 + 5 + + + + + + + + + J23101_3 + + 1 + + + 1 + + + + + UJHDBOTD_70_three_prime_oh + + + + 1 + + + 1 + Scar_B + Scar_B + + + + + + + 1 + J23101 + J23101 + + + + + + + 1 + + + + + + UJHDBOTD_70_five_prime_oh + + + + Scar_A + 1 + + Scar_A + + + + + + + 1 + + + + UJHDBOTD_45_part_location + 25 + + + 5 + 1 + + + UJHDBOTD_45_part + + + + UJHDBOTD_45_extracted_part + + + + + + + + + + 1 + UJHDBOTD_45_five_prime_oh_component + + + + + + + 1 + + three_prime_overhang + + + + 26 + + three_prime_oh_location + 1 + 29 + + + + + + 1 + + + + 1 + five_prime_overhang + + + + 1 + five_prime_oh_location + 4 + + 1 + + + + + + + + + UJHDBOTD_45_three_prime_oh_component + 1 + + + + + + + 1 + + + B0034_3 + + + + + + 1 + + UJHDBOTD_45_five_prime_oh + + + + + + + + UJHDBOTD_45_three_prime_oh + + + + + 1 + + + + + Scar_C + + + Scar_C + 1 + + + + + B0034 + + + B0034 + 1 + + + + + + + + GFP_3 + 1 + + + + + UJHDBOTD_106_part + + + + + 5 + 721 + UJHDBOTD_106_part_location + + 1 + + + + 1 + + + + + 1 + + + + + 1 + three_prime_oh_location + 725 + + 722 + + + + three_prime_overhang + + + UJHDBOTD_106_extracted_part + + 1 + + + + + + 1 + UJHDBOTD_106_five_prime_oh_component + + + + + + + + + + UJHDBOTD_106_three_prime_oh_component + 1 + + + + + + + + five_prime_overhang + + + + five_prime_oh_location + + 4 + 1 + 1 + + + 1 + + + + + + + + 1 + + GFP + + GFP + + + + + + + 1 + UJHDBOTD_106_five_prime_oh + + + + + + + 1 + + + + UJHDBOTD_106_three_prime_oh + + + 1 + Scar_D + + + + Scar_D + + + + 1 + + + UJHDBOTD_134_five_prime_oh_component + + + 1 + + + + + UJHDBOTD_134_extracted_part + + + + UJHDBOTD_134_three_prime_oh_component + + + 1 + + + + + + 1 + + + + B0015_3 + + + + + five_prime_overhang + + + + + + five_prime_oh_location + 4 + 1 + 1 + + + 1 + + + + + + + + UJHDBOTD_134_part + 1 + + + + 133 + 1 + UJHDBOTD_134_part_location + + 5 + + + + + + + + + + + + + 1 + three_prime_overhang + + + + three_prime_oh_location + 137 + + 134 + 1 + + + + + + + + + B0015 + + 1 + + B0015 + + + + UJHDBOTD_134_three_prime_oh + + + + + 1 + + + Scar_F + + 1 + + + Scar_F + + + + 1 + UJHDBOTD_134_five_prime_oh + + + + + + + + + + + + + UJHDBOTD_159_three_prime_oh_component + + 1 + + + + + + UJHDBOTD_159_backbone + + + UJHDBOTD_159_backbone_location + 5 + + 1 + 2199 + + + + + 1 + + + + + + + UJHDBOTD_159_five_prime_oh_component + 1 + + + + + + + + three_prime_overhang + 1 + + + 2200 + + three_prime_oh_location + + 2203 + 1 + + + + + + + + + + five_prime_overhang + + + 1 + five_prime_oh_location + 4 + + + 1 + + + + 1 + + + + + + + + Cir_qxow_5 + 1 + + + UJHDBOTD_extracted_backbone + 1 + + + + + + UJHDBOTD_159_five_prime_oh + + + + + 1 + + + + + Cir + + + 1 + Cir_qxow + + + 1 + + UJHDBOTD_159_three_prime_oh + + + + + + + 1 + + T4_Ligase + + T4_Ligase + + + + 1 + + + + Ligation_Scar_A + + + + + + + 1 + + + + + Ligation_Scar_B + + + Ligation_Scar_C + + + 1 + + + + + + + + + Ligation_Scar_D + 1 + + + + + + + + Ligation_Scar_E + + + + + 1 + + + + + + 1 + + Cir_qxow_5_annotation + + + + 2199 + + Cir_qxow_5_location + 5 + 1 + + + + + + + + + + 1 + + Cir_qxow + + + + + + + + + + 2264 + 2267 + Ligation_Scar_D_location + + 1 + + + + + 1 + Ligation_Scar_D_annotation + + + composite_1 + + + J23101_3_annotation + + + 1 + + + + 2238 + 2204 + 1 + J23101_3_location + + + + + + + + + + + Ligation_Scar_C_location + + 2242 + + 1 + 2239 + + + 1 + Ligation_Scar_C_annotation + + + + + + GFP + + 1 + + + + + + + + + + + B0015 + 1 + + + + + + 1 + + + Ligation_Scar_B + + + + + + B0034_3_annotation + 1 + + + + 1 + B0034_3_location + + 2243 + 2263 + + + + + + + + J23101 + + + + 1 + + + + + + + 1 + Ligation_Scar_B_annotation + + + 2203 + 1 + Ligation_Scar_B_location + + + 2200 + + + + + 1 + + + + + 2989 + 3117 + 1 + B0015_3_location + + + + + 1 + + B0015_3_annotation + + + + + + + + + + + 2985 + Ligation_Scar_E_location + 2988 + 1 + + + + + Ligation_Scar_E_annotation + 1 + + + + + Ligation_Scar_A_annotation + 1 + + + + 1 + 4 + 1 + + Ligation_Scar_A_location + + + + + + + + + + + 1 + + B0034 + + + + + + + 1 + + + 2984 + GFP_3_location + 1 + 2268 + + + + + GFP_3_annotation + + + + composite_1 + + + Ligation_Scar_D + + 1 + + + + + + + + + 1 + + Ligation_Scar_C + + + + + + + Ligation_Scar_A + + 1 + + + + + Ligation_Scar_E + + + + 1 + + + + + + UJHDBOTD_70_extracted_part_seq + + GGAGtttacagctagctcagtcctaggtattatgctagcTACT + 1 + + + + + 1 + + UJHDBOTD_70_three_prime_oh_sequence + TACT + + + Scar_B_sequence + + TACT + + + + J23101_sequence + + + tttacagctagctcagtcctaggtattatgctagc + + + GGAG + 1 + + + + UJHDBOTD_70_five_prime_oh_sequence + + + + + Scar_A_sequence + GGAG + + + + 1 + TACTagagaaagaggagaaatactaaatg + UJHDBOTD_45_extracted_part_seq + + + + + + + UJHDBOTD_45_five_prime_oh_sequence + 1 + TACT + + + + UJHDBOTD_45_three_prime_oh_sequence + + + 1 + aatg + + + Scar_C_sequence + + aatg + + + + B0034_sequence + + agagaaagaggagaaatacta + + + + + UJHDBOTD_106_extracted_part_seq + + 1 + aatggtgagcaagggcgaggagctgttcaccggggtggtgcccatcctggtcgagctggacggcgacgtaaacggccacaagttcagcgtgtccggcgagggcgagggcgatgccacctacggcaagctgaccctgaagttcatctgcaccaccggcaagctgcccgtgccctggcccaccctcgtgaccaccttcagctacggcgtgcagtgcttcagccgctaccccgaccacatgaagcagcacgacttcttcaagtccgccatgcccgaaggctacgtccaggagcgcaccatcttcttcaaggacgacggcaactacaagacccgcgccgaggtgaagttcgagggcgacaccctggtgaaccgcatcgagctgaagggcatcgacttcaaggaggacggcaacatcctggggcacaagctggagtacaactacaacagccacaacgtctatatcatggccgacaagcagaagaacggcatcaaggtgaacttcaagatccgccacaacatcgaggacggcagcgtgcagctcgccgaccactaccagcagaacacccccatcggcgacggccccgtgctgctgcccgacaaccactacctgagcacccagtccgccctgagcaaagaccccaacgagaagcgcgatcacatggtcctgctggagttcgtgaccgccgccgggatcactcacggcatggacgagctgtacaagtaagctt + + + + + GFP_sequence + gtgagcaagggcgaggagctgttcaccggggtggtgcccatcctggtcgagctggacggcgacgtaaacggccacaagttcagcgtgtccggcgagggcgagggcgatgccacctacggcaagctgaccctgaagttcatctgcaccaccggcaagctgcccgtgccctggcccaccctcgtgaccaccttcagctacggcgtgcagtgcttcagccgctaccccgaccacatgaagcagcacgacttcttcaagtccgccatgcccgaaggctacgtccaggagcgcaccatcttcttcaaggacgacggcaactacaagacccgcgccgaggtgaagttcgagggcgacaccctggtgaaccgcatcgagctgaagggcatcgacttcaaggaggacggcaacatcctggggcacaagctggagtacaactacaacagccacaacgtctatatcatggccgacaagcagaagaacggcatcaaggtgaacttcaagatccgccacaacatcgaggacggcagcgtgcagctcgccgaccactaccagcagaacacccccatcggcgacggccccgtgctgctgcccgacaaccactacctgagcacccagtccgccctgagcaaagaccccaacgagaagcgcgatcacatggtcctgctggagttcgtgaccgccgccgggatcactcacggcatggacgagctgtacaagtaa + + + + + + 1 + aatg + UJHDBOTD_106_five_prime_oh_sequence + + + + + 1 + UJHDBOTD_106_three_prime_oh_sequence + gctt + + + + + Scar_D_sequence + + gctt + + + UJHDBOTD_134_extracted_part_seq + 1 + gcttccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctactagagtcacactggctcaccttcgggtgggcctttctgcgtttatacgct + + + + + + ccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctactagagtcacactggctcaccttcgggtgggcctttctgcgtttata + + B0015_sequence + + + cgct + + + 1 + + UJHDBOTD_134_three_prime_oh_sequence + + + cgct + + + Scar_F_sequence + + + UJHDBOTD_134_five_prime_oh_sequence + + 1 + + gctt + + + + cgctgcatgaagagcctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgagtcccgtcaagtcagcgtaatgctctgccagtgttacaaccaattaaccaattctgattagaaaaactcatcgagcatcaaatgaaactgcaatttattcatatcaggattatcaataccatatttttgaaaaagccgtttctgtaatgaaggagaaaactcaccgaggcagttccataggatggcaagatcctggtatcggtctgcgattccgactcgtccaacatcaatacaacctattaatttcccctcgtcaaaaataaggttatcaagtgagaaatcaccatgagtgacgactgaatccggtgagaatggcaaaagcttatgcatttctttccagacttgttcaacaggccagccattacgctcgtcatcaaaatcactcgcatcaaccaaaccgttattcattcgtgattgcgcctgagcgagacgaaatacgcgatcgctgttaaaaggacaattacaaacaggaatcgaatgcaaccggcgcaggaacactgccagcgcatcaacaatattttcacctgaatcaggatattcttctaatacctggaatgctgttttcccggggatcgcagtggtgagtaaccatgcatcatcaggagtacggataaaatgcttgatggtcggaagaggcataaattccgtcagccagtttagtctgaccatctcatctgtaacatcattggcaacgctacctttgccatgtttcagaaacaactctggcgcatcgggcttcccatacaatcgatagattgtcgcacctgattgcccgacattatcgcgagcccatttatacccatataaatcagcatccatgttggaatttaatcgcggcctggagcaagacgtttcccgttgaatatggctcataacaccccttgtattactgtttatgtaagcagacagttttattgttcatgatgatatatttttatcttgtgcaatgtaacatcagagattttgagacacaacgtggctttgttgaataaatcgaacttttgctgagttgaaggatcagctcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcgctcttcaatgggag + + + UJHDBOTD_extracted_backbone_seq + 1 + + + + 1 + cgct + + UJHDBOTD_159_five_prime_oh_sequence + + + + + Cir_qxow_sequence + + gcatgaagagcctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgagtcccgtcaagtcagcgtaatgctctgccagtgttacaaccaattaaccaattctgattagaaaaactcatcgagcatcaaatgaaactgcaatttattcatatcaggattatcaataccatatttttgaaaaagccgtttctgtaatgaaggagaaaactcaccgaggcagttccataggatggcaagatcctggtatcggtctgcgattccgactcgtccaacatcaatacaacctattaatttcccctcgtcaaaaataaggttatcaagtgagaaatcaccatgagtgacgactgaatccggtgagaatggcaaaagcttatgcatttctttccagacttgttcaacaggccagccattacgctcgtcatcaaaatcactcgcatcaaccaaaccgttattcattcgtgattgcgcctgagcgagacgaaatacgcgatcgctgttaaaaggacaattacaaacaggaatcgaatgcaaccggcgcaggaacactgccagcgcatcaacaatattttcacctgaatcaggatattcttctaatacctggaatgctgttttcccggggatcgcagtggtgagtaaccatgcatcatcaggagtacggataaaatgcttgatggtcggaagaggcataaattccgtcagccagtttagtctgaccatctcatctgtaacatcattggcaacgctacctttgccatgtttcagaaacaactctggcgcatcgggcttcccatacaatcgatagattgtcgcacctgattgcccgacattatcgcgagcccatttatacccatataaatcagcatccatgttggaatttaatcgcggcctggagcaagacgtttcccgttgaatatggctcataacaccccttgtattactgtttatgtaagcagacagttttattgttcatgatgatatatttttatcttgtgcaatgtaacatcagagattttgagacacaacgtggctttgttgaataaatcgaacttttgctgagttgaaggatcagctcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcgctcttcaatg + + + + UJHDBOTD_159_three_prime_oh_sequence + ggag + 1 + + + + + + 1 + Ligation_Scar_A_sequence + + cgct + + + + ggag + 1 + + Ligation_Scar_B_sequence + + + + + 1 + TACT + Ligation_Scar_C_sequence + + + Ligation_Scar_D_sequence + aatg + + 1 + + + + gctt + + Ligation_Scar_E_sequence + 1 + + + + cgctgcatgaagagcctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgagtcccgtcaagtcagcgtaatgctctgccagtgttacaaccaattaaccaattctgattagaaaaactcatcgagcatcaaatgaaactgcaatttattcatatcaggattatcaataccatatttttgaaaaagccgtttctgtaatgaaggagaaaactcaccgaggcagttccataggatggcaagatcctggtatcggtctgcgattccgactcgtccaacatcaatacaacctattaatttcccctcgtcaaaaataaggttatcaagtgagaaatcaccatgagtgacgactgaatccggtgagaatggcaaaagcttatgcatttctttccagacttgttcaacaggccagccattacgctcgtcatcaaaatcactcgcatcaaccaaaccgttattcattcgtgattgcgcctgagcgagacgaaatacgcgatcgctgttaaaaggacaattacaaacaggaatcgaatgcaaccggcgcaggaacactgccagcgcatcaacaatattttcacctgaatcaggatattcttctaatacctggaatgctgttttcccggggatcgcagtggtgagtaaccatgcatcatcaggagtacggataaaatgcttgatggtcggaagaggcataaattccgtcagccagtttagtctgaccatctcatctgtaacatcattggcaacgctacctttgccatgtttcagaaacaactctggcgcatcgggcttcccatacaatcgatagattgtcgcacctgattgcccgacattatcgcgagcccatttatacccatataaatcagcatccatgttggaatttaatcgcggcctggagcaagacgtttcccgttgaatatggctcataacaccccttgtattactgtttatgtaagcagacagttttattgttcatgatgatatatttttatcttgtgcaatgtaacatcagagattttgagacacaacgtggctttgttgaataaatcgaacttttgctgagttgaaggatcagctcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcgctcttcaatgGGAGtttacagctagctcagtcctaggtattatgctagcTACTagagaaagaggagaaatactaaatggtgagcaagggcgaggagctgttcaccggggtggtgcccatcctggtcgagctggacggcgacgtaaacggccacaagttcagcgtgtccggcgagggcgagggcgatgccacctacggcaagctgaccctgaagttcatctgcaccaccggcaagctgcccgtgccctggcccaccctcgtgaccaccttcagctacggcgtgcagtgcttcagccgctaccccgaccacatgaagcagcacgacttcttcaagtccgccatgcccgaaggctacgtccaggagcgcaccatcttcttcaaggacgacggcaactacaagacccgcgccgaggtgaagttcgagggcgacaccctggtgaaccgcatcgagctgaagggcatcgacttcaaggaggacggcaacatcctggggcacaagctggagtacaactacaacagccacaacgtctatatcatggccgacaagcagaagaacggcatcaaggtgaacttcaagatccgccacaacatcgaggacggcagcgtgcagctcgccgaccactaccagcagaacacccccatcggcgacggccccgtgctgctgcccgacaaccactacctgagcacccagtccgccctgagcaaagaccccaacgagaagcgcgatcacatggtcctgctggagttcgtgaccgccgccgggatcactcacggcatggacgagctgtacaagtaagcttccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctactagagtcacactggctcaccttcgggtgggcctttctgcgtttata + + 1 + composite_1_seq + + + From 2dcd62b4ab089ecfe266d6bae33331460a29b6aa Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Mon, 23 Jun 2025 09:37:05 -0600 Subject: [PATCH 041/100] added test files --- scripts/SBOL_xlsx.xlsx | Bin 6286 -> 0 bytes scripts/SBOL_xlsx2.xlsx | Bin 6327 -> 0 bytes scripts/SBOL_xlsx3.xlsx | Bin 6328 -> 0 bytes scripts/SBOL_xlsx4.xlsx | Bin 6420 -> 0 bytes scripts/tempUtils.py | 347 ---------------------------------------- 5 files changed, 347 deletions(-) delete mode 100644 scripts/SBOL_xlsx.xlsx delete mode 100644 scripts/SBOL_xlsx2.xlsx delete mode 100644 scripts/SBOL_xlsx3.xlsx delete mode 100644 scripts/SBOL_xlsx4.xlsx delete mode 100644 scripts/tempUtils.py diff --git a/scripts/SBOL_xlsx.xlsx b/scripts/SBOL_xlsx.xlsx deleted file mode 100644 index 0609d9ffb4b5009f1bf153631217c69f52221b08..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6286 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 diff --git a/scripts/SBOL_xlsx2.xlsx b/scripts/SBOL_xlsx2.xlsx deleted file mode 100644 index 91b8d7bd4a3ab3c6e1e19b4d33b24051cb6c630b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6327 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 U26CwWFvIZxL&(AzB>nOAf6s5uCIA2c diff --git a/scripts/SBOL_xlsx3.xlsx b/scripts/SBOL_xlsx3.xlsx deleted file mode 100644 index 7ac5d7c7f204ccf114d58872f639d9cb0a0cf8ca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6328 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 Ss{VAtF#yA`!Wky|`SpL>SkX-Y diff --git a/scripts/SBOL_xlsx4.xlsx b/scripts/SBOL_xlsx4.xlsx deleted file mode 100644 index 0631f8f6858850e57c861bd347700469e17ff54c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6420 zcmZ`;by!sGw;j4+NC^SyPHB+_>F%Mshfb01E)fI)Y3U9DK@g<7LmDYbVPFvMsNe7B zmHXX!o^#%F=6Uw|W9|L!{jPOX6%Y^!0000g>=Fe)$nNdvP?0*Q+|3D;zLdR@++>qqsue@!Jq+%{V^$OCoJ;9_XAXK}YkT)b z?i%>WCT2mY+~V7kTVK2|F&kMr+oL?J4uT(V8Mu#yi1&*Ny9Qb%d;IM}H#(DXMJ}o}T*efa+PhMdiZ>dHKoh;4e{Xo`bs@0XVg1qVAgw@+L-1Cr_O(QttNJhpFB}Eg)#Be`P@RxpLPYjCn

jlq#Tiwd~D_@y|U^mU>K^!UkYO<*vP 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 Lu)<*@`uX-h6P*a& diff --git a/scripts/tempUtils.py b/scripts/tempUtils.py deleted file mode 100644 index cf61fbf..0000000 --- a/scripts/tempUtils.py +++ /dev/null @@ -1,347 +0,0 @@ - - -thermo_wells = [ -'A1','A2','A3','A4','A5','A6','A7','A8','A9','A10','A11','A12', -'B1','B2','B3','B4','B5','B6','B7','B8','B9','B10','B11','B12', -'C1','C2','C3','C4','C5','C6','C7','C8','C9','C10','C11','C12', -'D1','D2','D3','D4','D5','D6','D7','D8','D9','D10','D11','D12', -'E1','E2','E3','E4','E5','E6','E7','E8','E9','E10','E11','E12', -'F1','F2','F3','F4','F5','F6','F7','F8','F9','F10','F11','F12', -'G1','G2','G3','G4','G5','G6','G7','G8','G9','G10','G11','G12', -'H1','H2','H3','H4','H5','H6','H7','H8','H9','H10','H11','H12' -] - -temp_wells = [ -'A1','A2','A3','A4','A5','A6', -'B1','B2','B3','B4','B5','B6', -'C1','C2','C3','C4','C5','C6', -'D1','D2','D3','D4','D5','D6' -] - -plate_96_wells = [ -'A1','A2','A3','A4','A5','A6','A7','A8','A9','A10','A11','A12', -'B1','B2','B3','B4','B5','B6','B7','B8','B9','B10','B11','B12', -'C1','C2','C3','C4','C5','C6','C7','C8','C9','C10','C11','C12', -'D1','D2','D3','D4','D5','D6','D7','D8','D9','D10','D11','D12', -'E1','E2','E3','E4','E5','E6','E7','E8','E9','E10','E11','E12', -'F1','F2','F3','F4','F5','F6','F7','F8','F9','F10','F11','F12', -'G1','G2','G3','G4','G5','G6','G7','G8','G9','G10','G11','G12', -'H1','H2','H3','H4','H5','H6','H7','H8','H9','H10','H11','H12' -] - -def liquid_transfer(pipette, volume, source, destination, asp_rate:float=0.5, disp_rate:float=1.0, blow_out:bool=True, touch_tip:bool=False, mix_before:float=0.0, mix_after:float=0.0, mix_reps:int=3, new_tip:bool=True, drop_tip:bool=True): - if new_tip: - pipette.pick_up_tip() - if mix_before > 0: - pipette.mix(mix_reps, mix_before, source) - pipette.aspirate(volume, source, rate=asp_rate) - pipette.dispense(volume, destination, rate=disp_rate) - if mix_after > 0: - pipette.mix(mix_reps, mix_after, destination) - if blow_out: - pipette.blow_out() - if touch_tip: - pipette.touch_tip() - if drop_tip: - pipette.drop_tip() - -#Define slots, to allocate 4 samples in each slot, lasts slots allocate in the border where border effects apply -slot_1 = ['A2', 'B2', 'C2', 'D2'] -slot_2 = ['A3', 'B3', 'C3', 'D3'] -slot_3 = ['A4', 'B4', 'C4', 'D4'] -slot_4 = ['A5', 'B5', 'C5', 'D5'] -slot_5 = ['A6', 'B6', 'C6', 'D6'] -slot_6 = ['A7', 'B7', 'C7', 'D7'] -slot_7 = ['A8', 'B8', 'C8', 'D8'] -slot_8 = ['A9', 'B9', 'C9', 'D9'] -slot_9 = ['A10', 'B10', 'C10', 'D10'] -slot_10 = ['A11', 'B11', 'C11', 'D11'] -slot_11 = ['E2', 'F2', 'G2', 'H2'] -slot_12 = ['E3', 'F3', 'G3', 'H3'] -slot_13 = ['E4', 'F4', 'G4', 'H4'] -slot_14 = ['E5', 'F5', 'G5', 'H5'] -slot_15 = ['E6', 'F6', 'G6', 'H6'] -slot_16 = ['E7', 'F7', 'G7', 'H7'] -slot_17 = ['E8', 'F8', 'G8', 'H8'] -slot_18 = ['E9', 'F9', 'G9', 'H9'] -slot_19 = ['E10', 'F10', 'G10', 'H10'] -slot_20 = ['E11', 'F11', 'G11', 'H11'] -slot_21 = ['A1', 'B1', 'C1', 'D1'] -slot_22 = ['E1', 'F1', 'G1', 'H1'] -slot_23 = ['A12', 'B12', 'C12', 'D12'] -slot_24 = ['E12', 'F12', 'G12', 'H12'] - -slots = [slot_1, slot_2, slot_3, slot_4, slot_5, slot_6, slot_7, slot_8, slot_9, slot_10, slot_11, slot_12, slot_13, slot_14, slot_15, slot_16, slot_17, slot_18, slot_19, slot_20, slot_21, slot_22, slot_23, slot_24] - -#define rows -row_a = ['A1','A2','A3','A4','A5','A6','A7','A8','A9','A10','A11','A12'] -row_b = ['B1','B2','B3','B4','B5','B6','B7','B8','B9','B10','B11','B12'] -row_c = ['C1','C2','C3','C4','C5','C6','C7','C8','C9','C10','C11','C12'] -row_d = ['D1','D2','D3','D4','D5','D6','D7','D8','D9','D10','D11','D12'] -row_e = ['E1','E2','E3','E4','E5','E6','E7','E8','E9','E10','E11','E12'] -row_f = ['F1','F2','F3','F4','F5','F6','F7','F8','F9','F10','F11','F12'] -row_g = ['G1','G2','G3','G4','G5','G6','G7','G8','G9','G10','G11','G12'] -row_h = ['H1','H2','H3','H4','H5','H6','H7','H8','H9','H10','H11','H12'] - -rows = [row_a, row_b, row_c, row_d, row_e, row_f, row_g, row_h] - -#define columns -col_1 = ['A1','B1','C1','D1','E1','F1','G1','H1'] -col_2 = ['A2','B2','C2','D2','E2','F2','G2','H2'] -col_3 = ['A3','B3','C3','D3','E3','F3','G3','H3'] -col_4 = ['A4','B4','C4','D4','E4','F4','G4','H4'] -col_5 = ['A5','B5','C5','D5','E5','F5','G5','H5'] -col_6 = ['A6','B6','C6','D6','E6','F6','G6','H6'] -col_7 = ['A7','B7','C7','D7','E7','F7','G7','H7'] -col_8 = ['A8','B8','C8','D8','E8','F8','G8','H8'] -col_9 = ['A9','B9','C9','D9','E9','F9','G9','H9'] -col_10 = ['A10','B10','C10','D10','E10','F10','G10','H10'] -col_11 = ['A11','B11','C11','D11','E11','F11','G11','H11'] -col_12 = ['A12','B12','C12','D12','E12','F12','G12','H12'] - -columns = [col_1, col_2, col_3, col_4, col_5, col_6, col_7, col_8, col_9, col_10, col_11, col_12] - -position_to_row_and_column = {'A1':(1,1), 'A2':(1,2), 'A3':(1,3), 'A4':(1,4), 'A5':(1,5), 'A6':(1,6), 'A7':(1,7), 'A8':(1,8), 'A9':(1,9), 'A10':(1,10), 'A11':(1,11), 'A12':(1,12), - 'B1':(2,1), 'B2':(2,2), 'B3':(2,3), 'B4':(2,4), 'B5':(2,5), 'B6':(2,6), 'B7':(2,7), 'B8':(2,8), 'B9':(2,9), 'B10':(2,10), 'B11':(2,11), 'B12':(2,12), - 'C1':(3,1), 'C2':(3,2), 'C3':(3,3), 'C4':(3,4), 'C5':(3,5), 'C6':(3,6), 'C7':(3,7), 'C8':(3,8), 'C9':(3,9), 'C10':(3,10), 'C11':(3,11), 'C12':(3,12), - 'D1':(4,1), 'D2':(4,2), 'D3':(4,3), 'D4':(4,4), 'D5':(4,5), 'D6':(4,6), 'D7':(4,7), 'D8':(4,8), 'D9':(4,9), 'D10':(4,10), 'D11':(4,11), 'D12':(4,12), - 'E1':(5,1), 'E2':(5,2), 'E3':(5,3), 'E4':(5,4), 'E5':(5,5), 'E6':(5,6), 'E7':(5,7), 'E8':(5,8), 'E9':(5,9), 'E10':(5,10), 'E11':(5,11), 'E12':(5,12), - 'F1':(6,1), 'F2':(6,2), 'F3':(6,3), 'F4':(6,4), 'F5':(6,5), 'F6':(6,6), 'F7':(6,7), 'F8':(6,8), 'F9':(6,9), 'F10':(6,10), 'F11':(6,11), 'F12':(6,12), - 'G1':(7,1), 'G2':(7,2), 'G3':(7,3), 'G4':(7,4), 'G5':(7,5), 'G6':(7,6), 'G7':(7,7), 'G8':(7,8), 'G9':(7,9), 'G10':(7,10), 'G11':(7,11), 'G12':(7,12), - 'H1':(8,1), 'H2':(8,2), 'H3':(8,3), 'H4':(8,4), 'H5':(8,5), 'H6':(8,6), 'H7':(8,7), 'H8':(8,8), 'H9':(8,9), 'H10':(8,10), 'H11':(8,11), 'H12':(8,12)} - -row_letter_to_number = {'A':1, 'B':2, 'C':3, 'D':4, 'E':5, 'F':6, 'G':7, 'H':8} - - -#Xml to uri dictionary -def dictionaryCreatorjson(file): - import sbol2 as sb2 - from flask import Flask, jsonify - app = Flask(__name__) - #given code from website - doc = sb2.Document() - doc.read(file) - #Loops through commponetDefinition - #for DNA - # Lists to store different components - BackBoneList = ['https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/ComponentDefinition_dvk_backbone_core/1'] - PartsList = ['https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/J23100/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/E0040m_gfp/1', - 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0032/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0015/1'] - RestrictionEnzymeList = ['https://charmme.synbiohub.org/user/Gonza10V/ligationtestforreal/ComponentDefinition_BsaI/1'] - # Flags to track duplicates - gotBone = False - gotZyme = False - # Output dictionary - outputDictionary = {"Parts": [], "Backbone": -1, "Restriction Enzyme": -1} - # Loop through component definitions - for cd in doc.componentDefinitions: - print(cd) - # Checks backbone - if cd in BackBoneList: - print(cd) - print("backbone") - if not gotBone: - outputDictionary["Backbone"] = cd - gotBone = True # Update flag - else: - print("You have more than one backbone") - return -1 - # Checks parts - if cd in PartsList: - print(cd) - print("got part") - outputDictionary["Parts"].append(cd) - # Checks enzymes - if cd in RestrictionEnzymeList: - print(cd) - print("Enzyme") - if not gotZyme: - outputDictionary["Restriction Enzyme"] = cd # Assign value - gotZyme = True # Update flag - else: - print("You have more than one restriction enzyme") - return -1 - # Error Checks - if len(outputDictionary["Parts"]) <= 1: - print("Invalid number of parts") - return -1 - if outputDictionary["Backbone"] == -1: - print("No Backbone found, try again") - return -1 - if outputDictionary["Restriction Enzyme"] == -1: - print("No Restriction Enzyme found, try again") - return -1 - #(outputDictionary) - response = jsonify(outputDictionary) - content = response.get_data(as_text=True) - - return content - -#same as before but no Json -#Change to add roles -def dictionaryCreatorPython(file): - import sbol2 as sb2 - #given code from website - doc = sb2.Document() - doc.read(file) - #Loops through commponetDefinition - #for DNA - # Lists to store different components - ProductRoleList = ['http://identifiers.org/so/SO:0000804'] - - #look at the roles for each - for cd in doc.componentDefinitions: - #check for role - if cd.role in ProductRoleList: - print(cd) - - - - # Output dictionary - outputAssemblies = [] - # Loop through component definitions - for cd in doc.componentDefinitions: - print(cd) - # Checks backbone - if cd in BackBoneList: - print(cd) - print("backbone") - if not gotBone: - outputDictionary["Backbone"] = cd - gotBone = True # Update flag - else: - print("You have more than one backbone") - return -1 - # Checks parts - if cd in PartsList: - print(cd) - print("got part") - outputDictionary["Parts"].append(cd) - # Checks enzymes - if cd in RestrictionEnzymeList: - print(cd) - print("Enzyme") - if not gotZyme: - outputDictionary["Restriction Enzyme"] = cd # Assign value - gotZyme = True # Update flag - else: - print("You have more than one restriction enzyme") - return -1 - # Error Checks - if len(outputDictionary["Parts"]) <= 1: - print("Invalid number of parts") - return -1 - if outputDictionary["Backbone"] == -1: - print("No Backbone found, try again") - return -1 - if outputDictionary["Restriction Enzyme"] == -1: - print("No Restriction Enzyme found, try again") - return -1 - #(outputDictionary) - response = outputDictionary - - return response - - -#NEW dictionary creator that goes through xml file -#reads roles and returns a list of dictionaries -def dictionaryListCreatorPython(file): - import sbol2 as sb2 - import json - - # Disable typed URIs for cleaner URI strings - sb2.Config.setOption('sbol_typed_uris', False) - - # Read the SBOL document - doc = sb2.Document() - doc.read(file) - - # Known SO roles - PRODUCT_ROLE = 'http://identifiers.org/so/SO:0000804' # composite product - PLASMID_ROLE = 'https://identifiers.org/SO:0000755' # plasmid/backbone - - # SBOL type for Protein - PROTEIN_TYPE = sb2.BIOPAX_PROTEIN # URI for proteins - - product_dicts = [] - - globalEnzyme = None - for cd in doc.componentDefinitions: - # Detect restriction enzyme by Protein type - #create a filler variable - if PROTEIN_TYPE in cd.types: - globalEnzyme = cd.identity - - if PRODUCT_ROLE in cd.roles: - #create new dict for every product - result = { - 'Product': cd.identity, - 'Backbone': None, - 'PartsList': [], - 'Restriction Enzyme': None - } - - for comp in cd.components: - sub_def_uri = comp.definition - sub_cd = doc.componentDefinitions.get(sub_def_uri) - - if sub_cd is None: - continue - - roles = sub_cd.roles - display_id = sub_cd.displayId or "" - - #print(f"{display_id} roles: {roles} types: {types}") - - # Detect backbone by SO role - if PLASMID_ROLE in roles: - result['Backbone'] = sub_def_uri - result['PartsList'].append(sub_def_uri) - - # Default case: treat as regular part - else: - result['PartsList'].append(sub_def_uri) - - product_dicts.append(result) - - #add enzymes to each dictionary - for dict in product_dicts: - dict['Restriction Enzyme'] = globalEnzyme - - return product_dicts - - -def test_golden_gate(self): - pro_doc = sb2.Document() - pro_doc.read('pro_in_bb.xml') - - #where I am working adding 2 and 3 - pro2_doc = sb2.Document() - pro2_doc.read('pro2_in_bb.xml') #add document - - pro3_doc = sb2.Document() - pro3_doc.read('pro3_in_bb.xml') #add document - - rbs_doc = sb2.Document() - rbs_doc.read('rbs_in_bb.xml') - - cds_doc = sb2.Document() - cds_doc.read('cds_in_bb.xml') - - ter_doc = sb2.Document() - ter_doc.read('terminator_in_bb.xml') - - bb_doc = sb2.Document() - bb_doc.read('backbone.xml') - - part_docs = [pro_doc, rbs_doc, cds_doc, ter_doc] - - assembly_doc = sb2.Document() - assembly_obj = golden_gate_assembly_plan('testassem', part_docs, bb_doc, 'BsaI', assembly_doc) - - composites = assembly_obj.run() - - assembly_doc.write('validation_assembly.xml') - - sbol_validation_result = assembly_doc.validate() - self.assertEqual(sbol_validation_result, 'Valid.', 'Assembly SBOL validation failed') \ No newline at end of file From bd816304dbbf2502bec9572720472821b32776c1 Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Wed, 25 Jun 2025 10:55:22 -0600 Subject: [PATCH 042/100] Change to notebook --- notebooks/Assembly_to_dict.ipynb | 270 ++- notebooks/output.json | 13 + scripts/run_sbol2assembly_libre.py | 1 - src/pudu/__pycache__/__init__.cpython-37.pyc | Bin 0 -> 288 bytes src/pudu/__pycache__/assembly.cpython-37.pyc | Bin 0 -> 18330 bytes tests/Part_in_backbone_defined.xml | 328 ++++ tests/Part_in_backbone_example.xml | 328 ++++ tests/RyanTest.xml | 1579 +++++++++++++++++ tests/backbone.xml | 328 ++++ tests/cds_in_bb.xml | 328 ++++ tests/ligation_test_forreal.xml | 627 +++++++ tests/out_doc.xml | 1580 ++++++++++++++++++ tests/pro2_in_bb.xml | 330 ++++ tests/pro3_in_bb.xml | 330 ++++ tests/pro_in_bb.xml | 328 ++++ tests/rbs_in_bb.xml | 328 ++++ 16 files changed, 6651 insertions(+), 47 deletions(-) create mode 100644 notebooks/output.json create mode 100644 src/pudu/__pycache__/__init__.cpython-37.pyc create mode 100644 src/pudu/__pycache__/assembly.cpython-37.pyc create mode 100644 tests/Part_in_backbone_defined.xml create mode 100644 tests/Part_in_backbone_example.xml create mode 100644 tests/RyanTest.xml create mode 100644 tests/backbone.xml create mode 100644 tests/cds_in_bb.xml create mode 100644 tests/ligation_test_forreal.xml create mode 100644 tests/out_doc.xml create mode 100644 tests/pro2_in_bb.xml create mode 100644 tests/pro3_in_bb.xml create mode 100644 tests/pro_in_bb.xml create mode 100644 tests/rbs_in_bb.xml diff --git a/notebooks/Assembly_to_dict.ipynb b/notebooks/Assembly_to_dict.ipynb index e8c95e0..968b250 100644 --- a/notebooks/Assembly_to_dict.ipynb +++ b/notebooks/Assembly_to_dict.ipynb @@ -10,40 +10,58 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": null, "id": "df62b558", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "'def dictionaryListCreatorPython(file):\\n import sbol2 as sb2\\n import json\\n\\n # Disable typed URIs for cleaner URI strings\\n sb2.Config.setOption(\\'sbol_typed_uris\\', False)\\n\\n # Read the SBOL document\\n doc = sb2.Document()\\n doc.read(file)\\n\\n #For collective parts knowledge\\n # http://identifiers.org/so/SO:0000031 Aptamer(PART) *added\\n # http://identifiers.org/so/SO:0000316 CDS (PART) *added\\n # http://identifiers.org/so/SO:0001977 Ribonuclease Site (PART) *added\\n # http://identifiers.org/so/SO:0001956 (Protease Site) (PART) *added\\n # http://identifiers.org/so/SO:0000804 (Engineered Region) (PRODUCT)\\n # http://identifiers.org/so/SO:0000188 (intron) (PART) *added\\n # http://identifiers.org/so/SO:0001263: Non-Coding RNA Gene (PART to be checked)*added\\n # http://identifiers.org/so/SO:0000839 (polypeptide region) (PART) *added\\n # http://identifiers.org/so/SO:0000167 (Promoter) *added\\n # http://identifiers.org/so/SO:0000139: Ribosome Entry Site (PART) *added\\n # http://identifiers.org/so/SO:0001979 (RNA Stability Element)*added\\n # http://identifiers.org/so/SO:0001955, # http://identifiers.org/so/SO:0001546 (Protein Stability Element) (2 of them ???)*added\\n\\n\\n # Known SO roles\\n PRODUCT_ROLE = \\'http://identifiers.org/so/SO:0000804\\' # composite product\\n PLASMID_ROLE = \\'http://identifiers.org/SO:0000755\\' # plasmid/backbone\\n ENZYME_ROLE = \\'http://identifiers.org/obi/OBI:0000732\\' #Restriction Enzyme (Check got it from sbol2build)\\n TERMINATOR_ROLE = \\'http://identifiers.org/SO:0000141\\' #Terminator\\n PARTS_ROLE_LIST = [\\'http://identifiers.org/so/SO:0000031\\',\\'http://identifiers.org/so/SO:0000316\\',\\n \\'http://identifiers.org/so/SO:0001977\\', \\'http://identifiers.org/so/SO:0001956\\',\\n \\'http://identifiers.org/so/SO:0000188\\', \\'http://identifiers.org/so/SO:0000839\\',\\n \\'http://identifiers.org/so/SO:0000167\\', \\'http://identifiers.org/so/SO:0000139\\',\\n \\'http://identifiers.org/so/SO:0001979\\', \\'http://identifiers.org/so/SO:0001955\\',\\n \\'http://identifiers.org/so/SO:0001546\\', \\'http://identifiers.org/so/SO:0001263\\'\\n ] #a list of all the roles of the parts\\n product_dicts = []\\n globalEnzyme = None\\n\\n for cd in doc.componentDefinitions:\\n if ENZYME_ROLE in cd.types:\\n globalEnzyme = cd.identity\\n print(f\"Found enzyme: {globalEnzyme}\")\\n\\n #Looks Good\\n if ENZYME_ROLE in cd.types:\\n globalEnzyme = cd.identity\\n\\n if PRODUCT_ROLE in cd.roles:\\n result = {\\n \\'Product\\': cd.identity,\\n \\'Backbone\\': None,\\n \\'PartsList\\': [],\\n \\'Restriction Enzyme\\': None,\\n \\'Terminator\\': None\\n }\\n print(\"Components\")\\n print(cd.components)\\n\\n for comp in cd.components:\\n sub_cd = doc.componentDefinitions.get(comp.definition)\\n if sub_cd is None:\\n continue\\n\\n roles = sub_cd.roles\\n\\n if PLASMID_ROLE in roles:\\n result[\\'Backbone\\'] = sub_cd.identity\\n\\n if any(role in PARTS_ROLE_LIST for role in roles):\\n result[\\'PartsList\\'].append(sub_cd.identity)\\n\\n if not result[\\'Backbone\\']:\\n print(f\"⚠️ Warning: No backbone found for product {cd.displayId}\")\\n if not result[\\'PartsList\\']:\\n print(f\"⚠️ Warning: No parts found for product {cd.displayId}\")\\n\\n product_dicts.append(result)\\n\\n\\n for dict in product_dicts:\\n dict[\\'Restriction Enzyme\\'] = globalEnzyme\\n\\n # Write JSON output\\n with open(\\'output.json\\', \\'w\\') as json_file:\\n json.dump(product_dicts, json_file, indent=4)\\n\\n return product_dicts'" + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "def dictionaryListCreatorPython(file):\n", " import sbol2 as sb2\n", " import json\n", "\n", - " # Disable typed URIs for cleaner URI strings\n", " sb2.Config.setOption('sbol_typed_uris', False)\n", - "\n", - " # Read the SBOL document\n", " doc = sb2.Document()\n", " doc.read(file)\n", "\n", " # Known SO roles\n", - " PRODUCT_ROLE = 'http://identifiers.org/so/SO:0000804' # composite product\n", - " PLASMID_ROLE = 'https://identifiers.org/SO:0000755' # plasmid/backbone\n", + " PRODUCT_ROLE = 'http://identifiers.org/so/SO:0000804'\n", + " BackBone_ROLE = 'http://identifiers.org/so/SO:0000755'\n", + " ENZYME_ROLE = 'http://identifiers.org/obi/OBI:0000732'\n", "\n", - " # SBOL type for Protein\n", - " PROTEIN_TYPE = sb2.BIOPAX_PROTEIN # URI for proteins\n", + " PARTS_ROLE_LIST = [\n", + " 'http://identifiers.org/so/SO:0000031', 'http://identifiers.org/so/SO:0000316',\n", + " 'http://identifiers.org/so/SO:0001977', 'http://identifiers.org/so/SO:0001956',\n", + " 'http://identifiers.org/so/SO:0000188', 'http://identifiers.org/so/SO:0000839',\n", + " 'http://identifiers.org/so/SO:0000167', 'http://identifiers.org/so/SO:0000139',\n", + " 'http://identifiers.org/so/SO:0001979', 'http://identifiers.org/so/SO:0001955',\n", + " 'http://identifiers.org/so/SO:0001546', 'http://identifiers.org/so/SO:0001263',\n", + " 'http://identifiers.org/SO:0000141', 'http://identifiers.org/so/SO:0000141'\n", + " ]\n", "\n", " product_dicts = []\n", - "\n", " globalEnzyme = None\n", + "\n", " for cd in doc.componentDefinitions:\n", - " # Detect restriction enzyme by Protein type\n", - " #create a filler variable\n", - " if PROTEIN_TYPE in cd.types:\n", + " print(f\"\\n🔍 Checking Component: {cd.displayId}\")\n", + " print(f\" Types: {cd.types}\")\n", + " print(f\" Roles: {cd.roles}\")\n", + "\n", + " if ENZYME_ROLE in cd.types:\n", " globalEnzyme = cd.identity\n", + " print(f\"✅ Found enzyme definition: {globalEnzyme}\")\n", "\n", " if PRODUCT_ROLE in cd.roles:\n", - " #create new dict for every product\n", " result = {\n", " 'Product': cd.identity,\n", " 'Backbone': None,\n", @@ -52,60 +70,220 @@ " }\n", "\n", " for comp in cd.components:\n", - " sub_def_uri = comp.definition\n", - " sub_cd = doc.componentDefinitions.get(sub_def_uri)\n", - "\n", + " sub_cd = doc.componentDefinitions.get(comp.definition)\n", " if sub_cd is None:\n", + " print(f\"⚠️ Component definition for {comp.displayId} not found.\")\n", " continue\n", "\n", - " roles = sub_cd.roles\n", - " display_id = sub_cd.displayId or \"\"\n", + " print(f\" → Subcomponent: {sub_cd.displayId}\")\n", + " print(f\" Roles: {sub_cd.roles}\")\n", "\n", - " #print(f\"{display_id} roles: {roles} types: {types}\")\n", + " if BackBone_ROLE in sub_cd.roles:\n", + " result['Backbone'] = sub_cd.identity\n", + " print(f\" 🧬 Assigned Backbone: {sub_cd.identity}\")\n", "\n", - " # Detect backbone by SO role\n", - " if PLASMID_ROLE in roles:\n", - " result['Backbone'] = sub_def_uri\n", - " result['PartsList'].append(sub_def_uri)\n", + " if any(role in PARTS_ROLE_LIST for role in sub_cd.roles):\n", + " result['PartsList'].append(sub_cd.identity)\n", + " print(f\" 🧩 Added Part: {sub_cd.identity}\")\n", "\n", - " # Default case: treat as regular part\n", - " else:\n", - " result['PartsList'].append(sub_def_uri)\n", + " if not result['Backbone']:\n", + " print(f\"⚠️ No backbone found for product {cd.displayId}\")\n", + " if not result['PartsList']:\n", + " print(f\"⚠️ No parts found for product {cd.displayId}\")\n", "\n", " product_dicts.append(result)\n", "\n", - " #add enzymes to each dictionary\n", - " for dict in product_dicts:\n", - " dict['Restriction Enzyme'] = globalEnzyme\n", + " for entry in product_dicts:\n", + " entry['Restriction Enzyme'] = globalEnzyme\n", "\n", - " return product_dicts" + " with open('output.json', 'w') as json_file:\n", + " json.dump(product_dicts, json_file, indent=4)\n", + "\n", + " return product_dicts\n" ] }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 22, "id": "cef06312", "metadata": {}, "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "🔍 Checking Component: BsaI\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#Protein']\n", + " Roles: []\n", + "\n", + "🔍 Checking Component: UJHDBOTD_70_extracted_part\n", + " Types: ['http://identifiers.org/so/SO:0000987', 'http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['https://identifiers.org/so/SO:0000915']\n", + "\n", + "🔍 Checking Component: UJHDBOTD_70_three_prime_oh\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['http://identifiers.org/so/SO:0001933']\n", + "\n", + "🔍 Checking Component: Scar_B\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['http://identifiers.org/so/SO:0001953']\n", + "\n", + "🔍 Checking Component: J23101\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['http://identifiers.org/so/SO:0000167']\n", + "\n", + "🔍 Checking Component: UJHDBOTD_70_five_prime_oh\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['http://identifiers.org/so/SO:0001932']\n", + "\n", + "🔍 Checking Component: Scar_A\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['http://identifiers.org/so/SO:0001953']\n", + "\n", + "🔍 Checking Component: UJHDBOTD_45_extracted_part\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#DnaRegion', 'http://identifiers.org/so/SO:0000987']\n", + " Roles: ['https://identifiers.org/so/SO:0000915']\n", + "\n", + "🔍 Checking Component: UJHDBOTD_45_five_prime_oh\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['http://identifiers.org/so/SO:0001932']\n", + "\n", + "🔍 Checking Component: UJHDBOTD_45_three_prime_oh\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['http://identifiers.org/so/SO:0001933']\n", + "\n", + "🔍 Checking Component: Scar_C\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['http://identifiers.org/so/SO:0001953']\n", + "\n", + "🔍 Checking Component: B0034\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['http://identifiers.org/so/SO:0000139']\n", + "\n", + "🔍 Checking Component: UJHDBOTD_106_extracted_part\n", + " Types: ['http://identifiers.org/so/SO:0000987', 'http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['https://identifiers.org/so/SO:0000915']\n", + "\n", + "🔍 Checking Component: GFP\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['http://identifiers.org/so/SO:0000316']\n", + "\n", + "🔍 Checking Component: UJHDBOTD_106_five_prime_oh\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['http://identifiers.org/so/SO:0001932']\n", + "\n", + "🔍 Checking Component: UJHDBOTD_106_three_prime_oh\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['http://identifiers.org/so/SO:0001933']\n", + "\n", + "🔍 Checking Component: Scar_D\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['http://identifiers.org/so/SO:0001953']\n", + "\n", + "🔍 Checking Component: UJHDBOTD_134_extracted_part\n", + " Types: ['http://identifiers.org/so/SO:0000987', 'http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['https://identifiers.org/so/SO:0000915']\n", + "\n", + "🔍 Checking Component: B0015\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['http://identifiers.org/so/SO:0000141']\n", + "\n", + "🔍 Checking Component: UJHDBOTD_134_three_prime_oh\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['http://identifiers.org/so/SO:0001933']\n", + "\n", + "🔍 Checking Component: Scar_F\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['http://identifiers.org/so/SO:0001953']\n", + "\n", + "🔍 Checking Component: UJHDBOTD_134_five_prime_oh\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['http://identifiers.org/so/SO:0001932']\n", + "\n", + "🔍 Checking Component: UJHDBOTD_extracted_backbone\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['https://identifiers.org/so/SO:0000755']\n", + "\n", + "🔍 Checking Component: UJHDBOTD_159_five_prime_oh\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['http://identifiers.org/so/SO:0001932']\n", + "\n", + "🔍 Checking Component: Cir_qxow\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['http://identifiers.org/so/SO:0000755']\n", + "\n", + "🔍 Checking Component: UJHDBOTD_159_three_prime_oh\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['http://identifiers.org/so/SO:0001933']\n", + "\n", + "🔍 Checking Component: T4_Ligase\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#Protein']\n", + " Roles: []\n", + "\n", + "🔍 Checking Component: Ligation_Scar_A\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['http://identifiers.org/so/SO:0001953']\n", + "\n", + "🔍 Checking Component: Ligation_Scar_B\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['http://identifiers.org/so/SO:0001953']\n", + "\n", + "🔍 Checking Component: Ligation_Scar_C\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['http://identifiers.org/so/SO:0001953']\n", + "\n", + "🔍 Checking Component: Ligation_Scar_D\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['http://identifiers.org/so/SO:0001953']\n", + "\n", + "🔍 Checking Component: Ligation_Scar_E\n", + " Types: ['http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['http://identifiers.org/so/SO:0001953']\n", + "\n", + "🔍 Checking Component: composite_1\n", + " Types: ['http://identifiers.org/so/SO:0000988', 'http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", + " Roles: ['http://identifiers.org/so/SO:0000804']\n", + " → Subcomponent: GFP\n", + " Roles: ['http://identifiers.org/so/SO:0000316']\n", + " 🧩 Added Part: https://sbolcanvas.org/GFP/1\n", + " → Subcomponent: B0015\n", + " Roles: ['http://identifiers.org/so/SO:0000141']\n", + " 🧩 Added Part: https://sbolcanvas.org/B0015/1\n", + " → Subcomponent: Ligation_Scar_E\n", + " Roles: ['http://identifiers.org/so/SO:0001953']\n", + " → Subcomponent: Ligation_Scar_B\n", + " Roles: ['http://identifiers.org/so/SO:0001953']\n", + " → Subcomponent: Ligation_Scar_C\n", + " Roles: ['http://identifiers.org/so/SO:0001953']\n", + " → Subcomponent: J23101\n", + " Roles: ['http://identifiers.org/so/SO:0000167']\n", + " 🧩 Added Part: https://sbolcanvas.org/J23101/1\n", + " → Subcomponent: Ligation_Scar_A\n", + " Roles: ['http://identifiers.org/so/SO:0001953']\n", + " → Subcomponent: Ligation_Scar_D\n", + " Roles: ['http://identifiers.org/so/SO:0001953']\n", + " → Subcomponent: B0034\n", + " Roles: ['http://identifiers.org/so/SO:0000139']\n", + " 🧩 Added Part: https://sbolcanvas.org/B0034/1\n", + " → Subcomponent: Cir_qxow\n", + " Roles: ['http://identifiers.org/so/SO:0000755']\n", + " 🧬 Assigned Backbone: https://sbolcanvas.org/Cir_qxow/1\n" + ] + }, { "data": { "text/plain": [ "[{'Product': 'https://SBOL2Build.org/composite_1/1',\n", - " 'Backbone': None,\n", - " 'PartsList': ['https://sbolcanvas.org/B0015/1',\n", - " 'https://sbolcanvas.org/Cir_qxow/1',\n", - " 'https://SBOL2Build.org/Ligation_Scar_A/1',\n", - " 'https://SBOL2Build.org/Ligation_Scar_D/1',\n", - " 'https://SBOL2Build.org/Ligation_Scar_B/1',\n", - " 'https://SBOL2Build.org/Ligation_Scar_E/1',\n", + " 'Backbone': 'https://sbolcanvas.org/Cir_qxow/1',\n", + " 'PartsList': ['https://sbolcanvas.org/GFP/1',\n", + " 'https://sbolcanvas.org/B0015/1',\n", " 'https://sbolcanvas.org/J23101/1',\n", - " 'https://sbolcanvas.org/GFP/1',\n", - " 'https://sbolcanvas.org/B0034/1',\n", - " 'https://SBOL2Build.org/Ligation_Scar_C/1'],\n", - " 'Restriction Enzyme': 'https://SBOL2Build.org/T4_Ligase/1'}]" + " 'https://sbolcanvas.org/B0034/1'],\n", + " 'Restriction Enzyme': None}]" ] }, - "execution_count": 2, + "execution_count": 22, "metadata": {}, "output_type": "execute_result" } @@ -125,7 +303,7 @@ ], "metadata": { "kernelspec": { - "display_name": "GLLDB", + "display_name": "test", "language": "python", "name": "python3" }, @@ -139,7 +317,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.19" + "version": "3.7.12" } }, "nbformat": 4, diff --git a/notebooks/output.json b/notebooks/output.json new file mode 100644 index 0000000..f73bc40 --- /dev/null +++ b/notebooks/output.json @@ -0,0 +1,13 @@ +[ + { + "Product": "https://SBOL2Build.org/composite_1/1", + "Backbone": "https://sbolcanvas.org/Cir_qxow/1", + "PartsList": [ + "https://sbolcanvas.org/GFP/1", + "https://sbolcanvas.org/B0015/1", + "https://sbolcanvas.org/J23101/1", + "https://sbolcanvas.org/B0034/1" + ], + "Restriction Enzyme": null + } +] \ No newline at end of file diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py index 4335ad2..c08d600 100644 --- a/scripts/run_sbol2assembly_libre.py +++ b/scripts/run_sbol2assembly_libre.py @@ -3,7 +3,6 @@ from fnmatch import fnmatch from itertools import product import xlsxwriter -from tempUtils import dictionaryListCreatorPython # utils diff --git a/src/pudu/__pycache__/__init__.cpython-37.pyc b/src/pudu/__pycache__/__init__.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a73e118ea67aadb08b360737054d7719f27271d7 GIT binary patch literal 288 zcmZ?b<>g`kf>XP6GFpN3V-N=hn1BoiATHJc5-AKRj5!P;5SkH6GeK!)D9r+-nSvQK znO`yjwP-TlV$|}}WWB|aSX`W%o0L;|i#s_nCo`!iu_QA;FN&)qwYVg{IJKm-Ad0V~ zC^4@%Ex#xiEO(2wv?Md9cqKy-8_*yy@higFDkiizwWv5Ir!+e?Eyh1D)ukx2EH%a@ zwK%&ZzaS;Y*#yQy8Gv3hHz`!jgJijPACLq)$6wZh#E=rCmC`~DiiI30B%PfhH b*DI*J#bJ}1pHiBWY6o(4F$a*~V1z&bE*(#$ literal 0 HcmV?d00001 diff --git a/src/pudu/__pycache__/assembly.cpython-37.pyc b/src/pudu/__pycache__/assembly.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..80ee604c02881920f4cbdb9aae3596baaa388301 GIT binary patch literal 18330 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 SLg`D{&nai{jpKWs`2P!VVnsv% literal 0 HcmV?d00001 diff --git a/tests/Part_in_backbone_defined.xml b/tests/Part_in_backbone_defined.xml new file mode 100644 index 0000000..113169b --- /dev/null +++ b/tests/Part_in_backbone_defined.xml @@ -0,0 +1,328 @@ + + + + + module1 + + + + j0nju1Eb_56 + + + + + + + + + Cir_qKqs + 1 + Cir + + + + + + + j0nju1Eb + 1 + + + + + + + + Cir_qKqs_5 + 1 + + + + + + + + Scar_B_4 + 1 + + + + + + + + J23101_3 + 1 + + + + + + + + Scar_A_2 + 1 + + + + + + + + j0nju1EbAnnotation1 + 1 + + + + location1 + 1 + 5 + 39 + + + + + + + + + + j0nju1EbAnnotation2 + 1 + + + + location2 + 1 + 40 + 43 + + + + + + + + + + j0nju1EbAnnotation0 + 1 + + + + location0 + 1 + 1 + 4 + + + + + + + + + + j0nju1EbAnnotation3 + 1 + + + + location3 + 1 + 44 + 2095 + + + + + + + + + + j0nju1EbConstraint1 + 1 + + + + + + + + + j0nju1EbConstraint3 + 1 + + + + + + + + + j0nju1EbConstraint2 + 1 + + + + + + + + + + Scar_B + 1 + Scar_B + + + + + + + J23101 + 1 + J23101 + + + + + + + Scar_A + 1 + Scar_A + + + + + + + j0nju1Eb_sequence + GGAGtttacagctagctcagtcctaggtattatgctagcTACTCGAGaccctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgaggcttggattctcaccaataaaaaacgcccggcggcaaccgagcgttctgaacaaatccagatggagttctgaggtcattactggatctatcaacaggagtccaagcgagctcgatatcaaattacgccccgccctgccactcatcgcagtactgttgtaattcattaagcattctgccgacatggaagccatcacaaacggcatgatgaacctgaatcgccagcggcatcagcaccttgtcgccttgcgtataatatttgcccatggtgaaaacgggggcgaagaagttgtccatattggccacgtttaaatcaaaactggtgaaactcacccagggattggctgagacgaaaaacatattctcaataaaccctttagggaaataggccaggttttcaccgtaacacgccacatcttgcgaatatatgtgtagaaactgccggaaatcgtcgtggtattcactccagagcgatgaaaacgtttcagtttgctcatggaaaacggtgtaacaagggtgaacactatcccatatcaccagctcaccgtcttcattgccatacgaaattccggatgagcattcatcaggcgggcaagaatgtgaataaaggccggataaaacttgtgcttatttttctttacggtctttaaaaaggccgtaatatccagctgaacggtctggttataggtacattgagcaactgactgaaatgcctcaaaatgttctttacgatgccattgggatatatcaacggtggtatatccagtgatttttttctccattttagcttccttagctcctgaaaatctcgataactcaaaaaatacgcccggtagtgatcttatttcattatggtgaaagttggaacctcttacgtgcccgatcaactcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcggtctcg + + + + + Cir_qKqs_sequence + CGAGaccctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgaggcttggattctcaccaataaaaaacgcccggcggcaaccgagcgttctgaacaaatccagatggagttctgaggtcattactggatctatcaacaggagtccaagcgagctcgatatcaaattacgccccgccctgccactcatcgcagtactgttgtaattcattaagcattctgccgacatggaagccatcacaaacggcatgatgaacctgaatcgccagcggcatcagcaccttgtcgccttgcgtataatatttgcccatggtgaaaacgggggcgaagaagttgtccatattggccacgtttaaatcaaaactggtgaaactcacccagggattggctgagacgaaaaacatattctcaataaaccctttagggaaataggccaggttttcaccgtaacacgccacatcttgcgaatatatgtgtagaaactgccggaaatcgtcgtggtattcactccagagcgatgaaaacgtttcagtttgctcatggaaaacggtgtaacaagggtgaacactatcccatatcaccagctcaccgtcttcattgccatacgaaattccggatgagcattcatcaggcgggcaagaatgtgaataaaggccggataaaacttgtgcttatttttctttacggtctttaaaaaggccgtaatatccagctgaacggtctggttataggtacattgagcaactgactgaaatgcctcaaaatgttctttacgatgccattgggatatatcaacggtggtatatccagtgatttttttctccattttagcttccttagctcctgaaaatctcgataactcaaaaaatacgcccggtagtgatcttatttcattatggtgaaagttggaacctcttacgtgcccgatcaactcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcggtctcg + + + + + J23101_sequence + tttacagctagctcagtcctaggtattatgctagc + + + + + Scar_A_sequence + GGAG + + + + + Scar_B_sequence + TACT + + + + + Cir_qKqs_Layout + + + + + module1_Layout + + + + 695.0 + 457.0 + 152.0 + 100.0 + j0nju1Eb_56 + + + + + + + j0nju1Eb_Layout + + + + 695.0 + 457.0 + 152.0 + 100.0 + container + + + + + 0.0 + 50.0 + 152.0 + 1.0 + backbone + + + + + 1.0 + 0.0 + 50.0 + 100.0 + Scar_A_2 + + + + + + 51.0 + 0.0 + 50.0 + 100.0 + J23101_3 + + + + + + 101.0 + 0.0 + 50.0 + 100.0 + Scar_B_4 + + + + + + 151.0 + 0.0 + 1.0 + 100.0 + Cir_qKqs_5 + + + + + + + Scar_A_Layout + + + + + Scar_B_Layout + + + + + J23101_Layout + + + diff --git a/tests/Part_in_backbone_example.xml b/tests/Part_in_backbone_example.xml new file mode 100644 index 0000000..5752831 --- /dev/null +++ b/tests/Part_in_backbone_example.xml @@ -0,0 +1,328 @@ + + + + + module1 + + + + XJK9paob_2 + + + + + + + + + Scar_bWtJ + 1 + Scar + + + + + + + Scar_dAK6 + 1 + Scar + + + + + + + Pro_zVcE + 1 + Pro + + + + + + + Cir_wQ7v + 1 + Cir + + + + + + + XJK9paob + 1 + + + + + + + + Scar_dAK6_4 + 1 + + + + + + + + Pro_zVcE_3 + 1 + + + + + + + + Scar_bWtJ_2 + 1 + + + + + + + + Cir_wQ7v_5 + 1 + + + + + + + + XJK9paobAnnotation2 + 1 + + + + location2 + 1 + 12 + 15 + + + + + + + + + + XJK9paobAnnotation3 + 1 + + + + location3 + 1 + 16 + 39 + + + + + + + + + + XJK9paobAnnotation1 + 1 + + + + location1 + 1 + 5 + 11 + + + + + + + + + + XJK9paobAnnotation0 + 1 + + + + location0 + 1 + 1 + 4 + + + + + + + + + + XJK9paobConstraint1 + 1 + + + + + + + + + XJK9paobConstraint2 + 1 + + + + + + + + + XJK9paobConstraint3 + 1 + + + + + + + + + + Scar_bWtJ_sequence + AAAA + + + + + XJK9paob_sequence + AAAATTTTTTTCCCCGGGGGGGGGGGGGGGGGGGGGGGG + + + + + Pro_zVcE_sequence + TTTTTTT + + + + + Scar_dAK6_sequence + CCCC + + + + + Cir_wQ7v_sequence + GGGGGGGGGGGGGGGGGGGGGGGG + + + + + Pro_zVcE_Layout + + + + + Scar_bWtJ_Layout + + + + + module1_Layout + + + + 640.0 + 310.0 + 152.0 + 100.0 + XJK9paob_2 + + + + + + + Cir_wQ7v_Layout + + + + + Scar_dAK6_Layout + + + + + XJK9paob_Layout + + + + 640.0 + 310.0 + 152.0 + 100.0 + container + + + + + 0.0 + 50.0 + 152.0 + 1.0 + backbone + + + + + 1.0 + 0.0 + 50.0 + 100.0 + Scar_bWtJ_2 + + + + + + 51.0 + 0.0 + 50.0 + 100.0 + Pro_zVcE_3 + + + + + + 101.0 + 0.0 + 50.0 + 100.0 + Scar_dAK6_4 + + + + + + 151.0 + 0.0 + 1.0 + 100.0 + Cir_wQ7v_5 + + + + + diff --git a/tests/RyanTest.xml b/tests/RyanTest.xml new file mode 100644 index 0000000..8afebde --- /dev/null +++ b/tests/RyanTest.xml @@ -0,0 +1,1579 @@ + + + + + + + + 1 + UJHDBOTD_106_reactant + + + + + + + 1 + UJHDBOTD_70_digestion_interaction + + + restriction + + + 1 + + + + + + 1 + + + UJHDBOTD_70_product + + + + + + + UJHDBOTD_70_reactant + + + 1 + + + + + + + + + + + + + 1 + UJHDBOTD_106_product + + + + UJHDBOTD_106_digestion_interaction + + + + 1 + restriction + + + + + + + + + UJHDBOTD_106_reactant + + 1 + + + + 1 + + + + + + + restriction + + 1 + + + + + + + UJHDBOTD_backbone_reactant + + + + 1 + + + 1 + + + 1 + + + UJHDBOTD_backbone_product + + + + UJHDBOTD_digestion_interaction + + + + + testassem + + + + + + 1 + ligation + + + + + + + + + UJHDBOTD_extracted_backbone_ligation + + 1 + + + + + 1 + UJHDBOTD_106_extracted_part_ligation + + + + + + + + 1 + UJHDBOTD_134_extracted_part_ligation + + + + + + + + + + 1 + composite_1_product + + + + + + 1 + + + + 1 + UJHDBOTD_70_extracted_part_ligation + + + + + composite_1_ligation_interaction + + + + + + 1 + UJHDBOTD_45_extracted_part_ligation + + + + + 1 + + + 1 + + + + UJHDBOTD_70_digestion_product + + + + + + 1 + BsaI_enzyme + + + + + + + + + + UJHDBOTD_45_digestion_product + + + 1 + + + + + + 1 + + + + + UJHDBOTD_backbone_digestion_product + + + + + UJHDBOTD_45_digestion_interaction + + 1 + + + UJHDBOTD_45_reactant + + + + 1 + + + + + + 1 + + restriction + + + + + + + UJHDBOTD_45_product + + + 1 + + + + + + + + composite_1 + + 1 + + + + + + + + + 1 + + + + UJHDBOTD_134_digestion_product + + + + + 1 + + + UJHDBOTD_70_reactant + + + + + + + 1 + + + UJHDBOTD_backbone_reactant + + + + + + + + + T4_Ligase + + + + 1 + + + + + 1 + UJHDBOTD_45_reactant + + + + + + + + + + UJHDBOTD_106_digestion_product + + + + 1 + + + + + + + + + + UJHDBOTD_134_reactant + 1 + + + + + + + UJHDBOTD_134_product + 1 + + + + + + + 1 + restriction + + + + + + 1 + + UJHDBOTD_134_digestion_interaction + + + + + + + + + UJHDBOTD_134_reactant + 1 + + + + + 1 + BsaI + BsaI + + Restriction enzyme BsaI from REBASE. + + + + + + + + + + 1 + + UJHDBOTD_70_three_prime_oh_component + + + + + + 1 + + + + 1 + five_prime_oh_location + 4 + + 1 + + + + five_prime_overhang + + + + UJHDBOTD_70_extracted_part + + + + + + + + 43 + 1 + three_prime_oh_location + 40 + + + + 1 + three_prime_overhang + + + + + + + + + 1 + UJHDBOTD_70_five_prime_oh_component + + + + + + + + + 1 + UJHDBOTD_70_part + + + + + UJHDBOTD_70_part_location + 39 + + 1 + 5 + + + + + + + + + J23101_3 + + 1 + + + 1 + + + + + UJHDBOTD_70_three_prime_oh + + + + 1 + + + 1 + Scar_B + Scar_B + + + + + + + 1 + J23101 + J23101 + + + + + + + 1 + + + + + + UJHDBOTD_70_five_prime_oh + + + + Scar_A + 1 + + Scar_A + + + + + + + 1 + + + + UJHDBOTD_45_part_location + 25 + + + 5 + 1 + + + UJHDBOTD_45_part + + + + UJHDBOTD_45_extracted_part + + + + + + + + + + 1 + UJHDBOTD_45_five_prime_oh_component + + + + + + + 1 + + three_prime_overhang + + + + 26 + + three_prime_oh_location + 1 + 29 + + + + + + 1 + + + + 1 + five_prime_overhang + + + + 1 + five_prime_oh_location + 4 + + 1 + + + + + + + + + UJHDBOTD_45_three_prime_oh_component + 1 + + + + + + + 1 + + + B0034_3 + + + + + + 1 + + UJHDBOTD_45_five_prime_oh + + + + + + + + UJHDBOTD_45_three_prime_oh + + + + + 1 + + + + + Scar_C + + + Scar_C + 1 + + + + + B0034 + + + B0034 + 1 + + + + + + + + GFP_3 + 1 + + + + + UJHDBOTD_106_part + + + + + 5 + 721 + UJHDBOTD_106_part_location + + 1 + + + + 1 + + + + + 1 + + + + + 1 + three_prime_oh_location + 725 + + 722 + + + + three_prime_overhang + + + UJHDBOTD_106_extracted_part + + 1 + + + + + + 1 + UJHDBOTD_106_five_prime_oh_component + + + + + + + + + + UJHDBOTD_106_three_prime_oh_component + 1 + + + + + + + + five_prime_overhang + + + + five_prime_oh_location + + 4 + 1 + 1 + + + 1 + + + + + + + + 1 + + GFP + + GFP + + + + + + + 1 + UJHDBOTD_106_five_prime_oh + + + + + + + 1 + + + + UJHDBOTD_106_three_prime_oh + + + 1 + Scar_D + + + + Scar_D + + + + 1 + + + UJHDBOTD_134_five_prime_oh_component + + + 1 + + + + + UJHDBOTD_134_extracted_part + + + + UJHDBOTD_134_three_prime_oh_component + + + 1 + + + + + + 1 + + + + B0015_3 + + + + + five_prime_overhang + + + + + + five_prime_oh_location + 4 + 1 + 1 + + + 1 + + + + + + + + UJHDBOTD_134_part + 1 + + + + 133 + 1 + UJHDBOTD_134_part_location + + 5 + + + + + + + + + + + + + 1 + three_prime_overhang + + + + three_prime_oh_location + 137 + + 134 + 1 + + + + + + + + + B0015 + + 1 + + B0015 + + + + UJHDBOTD_134_three_prime_oh + + + + + 1 + + + Scar_F + + 1 + + + Scar_F + + + + 1 + UJHDBOTD_134_five_prime_oh + + + + + + + + + + + + + UJHDBOTD_159_three_prime_oh_component + + 1 + + + + + + UJHDBOTD_159_backbone + + + UJHDBOTD_159_backbone_location + 5 + + 1 + 2199 + + + + + 1 + + + + + + + UJHDBOTD_159_five_prime_oh_component + 1 + + + + + + + + three_prime_overhang + 1 + + + 2200 + + three_prime_oh_location + + 2203 + 1 + + + + + + + + + + five_prime_overhang + + + 1 + five_prime_oh_location + 4 + + + 1 + + + + 1 + + + + + + + + Cir_qxow_5 + 1 + + + UJHDBOTD_extracted_backbone + 1 + + + + + + UJHDBOTD_159_five_prime_oh + + + + + 1 + + + + + Cir + + + 1 + Cir_qxow + + + 1 + + UJHDBOTD_159_three_prime_oh + + + + + + + 1 + + T4_Ligase + + T4_Ligase + + + + 1 + + + + Ligation_Scar_A + + + + + + + 1 + + + + + Ligation_Scar_B + + + Ligation_Scar_C + + + 1 + + + + + + + + + Ligation_Scar_D + 1 + + + + + + + + Ligation_Scar_E + + + + + 1 + + + + + + 1 + + Cir_qxow_5_annotation + + + + 2199 + + Cir_qxow_5_location + 5 + 1 + + + + + + + + + + 1 + + Cir_qxow + + + + + + + + + + 2264 + 2267 + Ligation_Scar_D_location + + 1 + + + + + 1 + Ligation_Scar_D_annotation + + + composite_1 + + + J23101_3_annotation + + + 1 + + + + 2238 + 2204 + 1 + J23101_3_location + + + + + + + + + + + Ligation_Scar_C_location + + 2242 + + 1 + 2239 + + + 1 + Ligation_Scar_C_annotation + + + + + + GFP + + 1 + + + + + + + + + + + B0015 + 1 + + + + + + 1 + + + Ligation_Scar_B + + + + + + B0034_3_annotation + 1 + + + 1 + B0034_3_location + + 2243 + 2263 + + + + + + + + J23101 + + + + 1 + + + + + + + 1 + Ligation_Scar_B_annotation + + + 2203 + 1 + Ligation_Scar_B_location + + + 2200 + + + + + 1 + + + + + 2989 + 3117 + 1 + B0015_3_location + + + + + 1 + + B0015_3_annotation + + + + + + + + + + + 2985 + Ligation_Scar_E_location + 2988 + 1 + + + + + Ligation_Scar_E_annotation + 1 + + + + + Ligation_Scar_A_annotation + 1 + + + + 1 + 4 + 1 + + Ligation_Scar_A_location + + + + + + + + + + + 1 + + B0034 + + + + + + + 1 + + + 2984 + GFP_3_location + 1 + 2268 + + + + + GFP_3_annotation + + + + composite_1 + + + Ligation_Scar_D + + 1 + + + + + + + + + 1 + + Ligation_Scar_C + + + + + + + Ligation_Scar_A + + 1 + + + + + Ligation_Scar_E + + + + 1 + + + + + + UJHDBOTD_70_extracted_part_seq + + GGAGtttacagctagctcagtcctaggtattatgctagcTACT + 1 + + + + + 1 + + UJHDBOTD_70_three_prime_oh_sequence + TACT + + + Scar_B_sequence + + TACT + + + + J23101_sequence + + + tttacagctagctcagtcctaggtattatgctagc + + + GGAG + 1 + + + + UJHDBOTD_70_five_prime_oh_sequence + + + + + Scar_A_sequence + GGAG + + + + 1 + TACTagagaaagaggagaaatactaaatg + UJHDBOTD_45_extracted_part_seq + + + + + + + UJHDBOTD_45_five_prime_oh_sequence + 1 + TACT + + + + UJHDBOTD_45_three_prime_oh_sequence + + + 1 + aatg + + + Scar_C_sequence + + aatg + + + + B0034_sequence + + agagaaagaggagaaatacta + + + + + UJHDBOTD_106_extracted_part_seq + + 1 + aatggtgagcaagggcgaggagctgttcaccggggtggtgcccatcctggtcgagctggacggcgacgtaaacggccacaagttcagcgtgtccggcgagggcgagggcgatgccacctacggcaagctgaccctgaagttcatctgcaccaccggcaagctgcccgtgccctggcccaccctcgtgaccaccttcagctacggcgtgcagtgcttcagccgctaccccgaccacatgaagcagcacgacttcttcaagtccgccatgcccgaaggctacgtccaggagcgcaccatcttcttcaaggacgacggcaactacaagacccgcgccgaggtgaagttcgagggcgacaccctggtgaaccgcatcgagctgaagggcatcgacttcaaggaggacggcaacatcctggggcacaagctggagtacaactacaacagccacaacgtctatatcatggccgacaagcagaagaacggcatcaaggtgaacttcaagatccgccacaacatcgaggacggcagcgtgcagctcgccgaccactaccagcagaacacccccatcggcgacggccccgtgctgctgcccgacaaccactacctgagcacccagtccgccctgagcaaagaccccaacgagaagcgcgatcacatggtcctgctggagttcgtgaccgccgccgggatcactcacggcatggacgagctgtacaagtaagctt + + + + + GFP_sequence + gtgagcaagggcgaggagctgttcaccggggtggtgcccatcctggtcgagctggacggcgacgtaaacggccacaagttcagcgtgtccggcgagggcgagggcgatgccacctacggcaagctgaccctgaagttcatctgcaccaccggcaagctgcccgtgccctggcccaccctcgtgaccaccttcagctacggcgtgcagtgcttcagccgctaccccgaccacatgaagcagcacgacttcttcaagtccgccatgcccgaaggctacgtccaggagcgcaccatcttcttcaaggacgacggcaactacaagacccgcgccgaggtgaagttcgagggcgacaccctggtgaaccgcatcgagctgaagggcatcgacttcaaggaggacggcaacatcctggggcacaagctggagtacaactacaacagccacaacgtctatatcatggccgacaagcagaagaacggcatcaaggtgaacttcaagatccgccacaacatcgaggacggcagcgtgcagctcgccgaccactaccagcagaacacccccatcggcgacggccccgtgctgctgcccgacaaccactacctgagcacccagtccgccctgagcaaagaccccaacgagaagcgcgatcacatggtcctgctggagttcgtgaccgccgccgggatcactcacggcatggacgagctgtacaagtaa + + + + + + 1 + aatg + UJHDBOTD_106_five_prime_oh_sequence + + + + + 1 + UJHDBOTD_106_three_prime_oh_sequence + gctt + + + + + Scar_D_sequence + + gctt + + + UJHDBOTD_134_extracted_part_seq + 1 + gcttccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctactagagtcacactggctcaccttcgggtgggcctttctgcgtttatacgct + + + + + + ccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctactagagtcacactggctcaccttcgggtgggcctttctgcgtttata + + B0015_sequence + + + cgct + + + 1 + + UJHDBOTD_134_three_prime_oh_sequence + + + cgct + + + Scar_F_sequence + + + UJHDBOTD_134_five_prime_oh_sequence + + 1 + + gctt + + + + cgctgcatgaagagcctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgagtcccgtcaagtcagcgtaatgctctgccagtgttacaaccaattaaccaattctgattagaaaaactcatcgagcatcaaatgaaactgcaatttattcatatcaggattatcaataccatatttttgaaaaagccgtttctgtaatgaaggagaaaactcaccgaggcagttccataggatggcaagatcctggtatcggtctgcgattccgactcgtccaacatcaatacaacctattaatttcccctcgtcaaaaataaggttatcaagtgagaaatcaccatgagtgacgactgaatccggtgagaatggcaaaagcttatgcatttctttccagacttgttcaacaggccagccattacgctcgtcatcaaaatcactcgcatcaaccaaaccgttattcattcgtgattgcgcctgagcgagacgaaatacgcgatcgctgttaaaaggacaattacaaacaggaatcgaatgcaaccggcgcaggaacactgccagcgcatcaacaatattttcacctgaatcaggatattcttctaatacctggaatgctgttttcccggggatcgcagtggtgagtaaccatgcatcatcaggagtacggataaaatgcttgatggtcggaagaggcataaattccgtcagccagtttagtctgaccatctcatctgtaacatcattggcaacgctacctttgccatgtttcagaaacaactctggcgcatcgggcttcccatacaatcgatagattgtcgcacctgattgcccgacattatcgcgagcccatttatacccatataaatcagcatccatgttggaatttaatcgcggcctggagcaagacgtttcccgttgaatatggctcataacaccccttgtattactgtttatgtaagcagacagttttattgttcatgatgatatatttttatcttgtgcaatgtaacatcagagattttgagacacaacgtggctttgttgaataaatcgaacttttgctgagttgaaggatcagctcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcgctcttcaatgggag + + + UJHDBOTD_extracted_backbone_seq + 1 + + + + 1 + cgct + + UJHDBOTD_159_five_prime_oh_sequence + + + + + Cir_qxow_sequence + + gcatgaagagcctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgagtcccgtcaagtcagcgtaatgctctgccagtgttacaaccaattaaccaattctgattagaaaaactcatcgagcatcaaatgaaactgcaatttattcatatcaggattatcaataccatatttttgaaaaagccgtttctgtaatgaaggagaaaactcaccgaggcagttccataggatggcaagatcctggtatcggtctgcgattccgactcgtccaacatcaatacaacctattaatttcccctcgtcaaaaataaggttatcaagtgagaaatcaccatgagtgacgactgaatccggtgagaatggcaaaagcttatgcatttctttccagacttgttcaacaggccagccattacgctcgtcatcaaaatcactcgcatcaaccaaaccgttattcattcgtgattgcgcctgagcgagacgaaatacgcgatcgctgttaaaaggacaattacaaacaggaatcgaatgcaaccggcgcaggaacactgccagcgcatcaacaatattttcacctgaatcaggatattcttctaatacctggaatgctgttttcccggggatcgcagtggtgagtaaccatgcatcatcaggagtacggataaaatgcttgatggtcggaagaggcataaattccgtcagccagtttagtctgaccatctcatctgtaacatcattggcaacgctacctttgccatgtttcagaaacaactctggcgcatcgggcttcccatacaatcgatagattgtcgcacctgattgcccgacattatcgcgagcccatttatacccatataaatcagcatccatgttggaatttaatcgcggcctggagcaagacgtttcccgttgaatatggctcataacaccccttgtattactgtttatgtaagcagacagttttattgttcatgatgatatatttttatcttgtgcaatgtaacatcagagattttgagacacaacgtggctttgttgaataaatcgaacttttgctgagttgaaggatcagctcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcgctcttcaatg + + + + UJHDBOTD_159_three_prime_oh_sequence + ggag + 1 + + + + + + 1 + Ligation_Scar_A_sequence + + cgct + + + + ggag + 1 + + Ligation_Scar_B_sequence + + + + + 1 + TACT + Ligation_Scar_C_sequence + + + Ligation_Scar_D_sequence + aatg + + 1 + + + + gctt + + Ligation_Scar_E_sequence + 1 + + + + cgctgcatgaagagcctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgagtcccgtcaagtcagcgtaatgctctgccagtgttacaaccaattaaccaattctgattagaaaaactcatcgagcatcaaatgaaactgcaatttattcatatcaggattatcaataccatatttttgaaaaagccgtttctgtaatgaaggagaaaactcaccgaggcagttccataggatggcaagatcctggtatcggtctgcgattccgactcgtccaacatcaatacaacctattaatttcccctcgtcaaaaataaggttatcaagtgagaaatcaccatgagtgacgactgaatccggtgagaatggcaaaagcttatgcatttctttccagacttgttcaacaggccagccattacgctcgtcatcaaaatcactcgcatcaaccaaaccgttattcattcgtgattgcgcctgagcgagacgaaatacgcgatcgctgttaaaaggacaattacaaacaggaatcgaatgcaaccggcgcaggaacactgccagcgcatcaacaatattttcacctgaatcaggatattcttctaatacctggaatgctgttttcccggggatcgcagtggtgagtaaccatgcatcatcaggagtacggataaaatgcttgatggtcggaagaggcataaattccgtcagccagtttagtctgaccatctcatctgtaacatcattggcaacgctacctttgccatgtttcagaaacaactctggcgcatcgggcttcccatacaatcgatagattgtcgcacctgattgcccgacattatcgcgagcccatttatacccatataaatcagcatccatgttggaatttaatcgcggcctggagcaagacgtttcccgttgaatatggctcataacaccccttgtattactgtttatgtaagcagacagttttattgttcatgatgatatatttttatcttgtgcaatgtaacatcagagattttgagacacaacgtggctttgttgaataaatcgaacttttgctgagttgaaggatcagctcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcgctcttcaatgGGAGtttacagctagctcagtcctaggtattatgctagcTACTagagaaagaggagaaatactaaatggtgagcaagggcgaggagctgttcaccggggtggtgcccatcctggtcgagctggacggcgacgtaaacggccacaagttcagcgtgtccggcgagggcgagggcgatgccacctacggcaagctgaccctgaagttcatctgcaccaccggcaagctgcccgtgccctggcccaccctcgtgaccaccttcagctacggcgtgcagtgcttcagccgctaccccgaccacatgaagcagcacgacttcttcaagtccgccatgcccgaaggctacgtccaggagcgcaccatcttcttcaaggacgacggcaactacaagacccgcgccgaggtgaagttcgagggcgacaccctggtgaaccgcatcgagctgaagggcatcgacttcaaggaggacggcaacatcctggggcacaagctggagtacaactacaacagccacaacgtctatatcatggccgacaagcagaagaacggcatcaaggtgaacttcaagatccgccacaacatcgaggacggcagcgtgcagctcgccgaccactaccagcagaacacccccatcggcgacggccccgtgctgctgcccgacaaccactacctgagcacccagtccgccctgagcaaagaccccaacgagaagcgcgatcacatggtcctgctggagttcgtgaccgccgccgggatcactcacggcatggacgagctgtacaagtaagcttccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctactagagtcacactggctcaccttcgggtgggcctttctgcgtttata + + 1 + composite_1_seq + + + diff --git a/tests/backbone.xml b/tests/backbone.xml new file mode 100644 index 0000000..f2a69e2 --- /dev/null +++ b/tests/backbone.xml @@ -0,0 +1,328 @@ + + + + + module1 + + + + UJHDBOTD_159 + + + + + + + + + Scar_F + 1 + Scar_F + + + + + + + RFP_cassette + 1 + RFP_cassette + + + + + + + UJHDBOTD + 1 + + + + + + + + Scar_F_4 + 1 + + + + + + + + Cir_qxow_5 + 1 + + + + + + + + Scar_A_2 + 1 + + + + + + + + RFP_cassette_3 + 1 + + + + + + + + UJHDBOTDAnnotation0 + 1 + + + + location0 + 1 + 1 + 4 + + + + + + + + + + UJHDBOTDAnnotation3 + 1 + + + + location3 + 1 + 1092 + 3286 + + + + + + + + + + UJHDBOTDAnnotation2 + 1 + + + + location2 + 1 + 1088 + 1091 + + + + + + + + + + UJHDBOTDAnnotation1 + 1 + + + + location1 + 1 + 5 + 1087 + + + + + + + + + + UJHDBOTDConstraint1 + 1 + + + + + + + + + UJHDBOTDConstraint3 + 1 + + + + + + + + + UJHDBOTDConstraint2 + 1 + + + + + + + + + + Cir_qxow + 1 + Cir + + + + + + + Scar_A + 1 + Scar_A + + + + + + + UJHDBOTD_sequence + ggagtgagacccaatacgcaaaccgcctctccccgcgcgttggccgattcattaatgcagctggcacgacaggtttcccgactggaaagcgggcagtgagcgcaacgcaattaatgtgagttagctcactcattaggcaccccaggctttacactttatgcttccggctcgtatgttgtgtggaattgtgagcggataacaatttcacacatactagagaaagaggagaaatactagatggcttcctccgaagacgttatcaaagagttcatgcgtttcaaagttcgtatggaaggttccgttaacggtcacgagttcgaaatcgaaggtgaaggtgaaggtcgtccgtacgaaggtacccagaccgctaaactgaaagttaccaaaggtggtccgctgccgttcgcttgggacatcctgtccccgcagttccagtacggttccaaagcttacgttaaacacccggctgacatcccggactacctgaaactgtccttcccggaaggtttcaaatgggaacgtgttatgaacttcgaagacggtggtgttgttaccgttacccaggactcctccctgcaagacggtgagttcatctacaaagttaaactgcgtggtaccaacttcccgtccgacggtccggttatgcagaaaaaaaccatgggttgggaagcttccaccgaacgtatgtacccggaagacggtgctctgaaaggtgaaatcaaaatgcgtctgaaactgaaagacggtggtcactacgacgctgaagttaaaaccacctacatggctaaaaaaccggttcagctgccgggtgcttacaaaaccgacatcaaactggacatcacctcccacaacgaagactacaccatcgttgaacagtacgaacgtgctgaaggtcgtcactccaccggtgcttaataacgctgatagtgctagtgtagatcgctactagagccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctactagagtcacactggctcaccttcgggtgggcctttctgcgtttataggtctcacgctgcatgaagagcctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgagtcccgtcaagtcagcgtaatgctctgccagtgttacaaccaattaaccaattctgattagaaaaactcatcgagcatcaaatgaaactgcaatttattcatatcaggattatcaataccatatttttgaaaaagccgtttctgtaatgaaggagaaaactcaccgaggcagttccataggatggcaagatcctggtatcggtctgcgattccgactcgtccaacatcaatacaacctattaatttcccctcgtcaaaaataaggttatcaagtgagaaatcaccatgagtgacgactgaatccggtgagaatggcaaaagcttatgcatttctttccagacttgttcaacaggccagccattacgctcgtcatcaaaatcactcgcatcaaccaaaccgttattcattcgtgattgcgcctgagcgagacgaaatacgcgatcgctgttaaaaggacaattacaaacaggaatcgaatgcaaccggcgcaggaacactgccagcgcatcaacaatattttcacctgaatcaggatattcttctaatacctggaatgctgttttcccggggatcgcagtggtgagtaaccatgcatcatcaggagtacggataaaatgcttgatggtcggaagaggcataaattccgtcagccagtttagtctgaccatctcatctgtaacatcattggcaacgctacctttgccatgtttcagaaacaactctggcgcatcgggcttcccatacaatcgatagattgtcgcacctgattgcccgacattatcgcgagcccatttatacccatataaatcagcatccatgttggaatttaatcgcggcctggagcaagacgtttcccgttgaatatggctcataacaccccttgtattactgtttatgtaagcagacagttttattgttcatgatgatatatttttatcttgtgcaatgtaacatcagagattttgagacacaacgtggctttgttgaataaatcgaacttttgctgagttgaaggatcagctcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcgctcttcaatg + + + + + Scar_F_sequence + cgct + + + + + Cir_qxow_sequence + gcatgaagagcctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgagtcccgtcaagtcagcgtaatgctctgccagtgttacaaccaattaaccaattctgattagaaaaactcatcgagcatcaaatgaaactgcaatttattcatatcaggattatcaataccatatttttgaaaaagccgtttctgtaatgaaggagaaaactcaccgaggcagttccataggatggcaagatcctggtatcggtctgcgattccgactcgtccaacatcaatacaacctattaatttcccctcgtcaaaaataaggttatcaagtgagaaatcaccatgagtgacgactgaatccggtgagaatggcaaaagcttatgcatttctttccagacttgttcaacaggccagccattacgctcgtcatcaaaatcactcgcatcaaccaaaccgttattcattcgtgattgcgcctgagcgagacgaaatacgcgatcgctgttaaaaggacaattacaaacaggaatcgaatgcaaccggcgcaggaacactgccagcgcatcaacaatattttcacctgaatcaggatattcttctaatacctggaatgctgttttcccggggatcgcagtggtgagtaaccatgcatcatcaggagtacggataaaatgcttgatggtcggaagaggcataaattccgtcagccagtttagtctgaccatctcatctgtaacatcattggcaacgctacctttgccatgtttcagaaacaactctggcgcatcgggcttcccatacaatcgatagattgtcgcacctgattgcccgacattatcgcgagcccatttatacccatataaatcagcatccatgttggaatttaatcgcggcctggagcaagacgtttcccgttgaatatggctcataacaccccttgtattactgtttatgtaagcagacagttttattgttcatgatgatatatttttatcttgtgcaatgtaacatcagagattttgagacacaacgtggctttgttgaataaatcgaacttttgctgagttgaaggatcagctcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcgctcttcaatg + + + + + RFP_cassette_sequence + tgagacccaatacgcaaaccgcctctccccgcgcgttggccgattcattaatgcagctggcacgacaggtttcccgactggaaagcgggcagtgagcgcaacgcaattaatgtgagttagctcactcattaggcaccccaggctttacactttatgcttccggctcgtatgttgtgtggaattgtgagcggataacaatttcacacatactagagaaagaggagaaatactagatggcttcctccgaagacgttatcaaagagttcatgcgtttcaaagttcgtatggaaggttccgttaacggtcacgagttcgaaatcgaaggtgaaggtgaaggtcgtccgtacgaaggtacccagaccgctaaactgaaagttaccaaaggtggtccgctgccgttcgcttgggacatcctgtccccgcagttccagtacggttccaaagcttacgttaaacacccggctgacatcccggactacctgaaactgtccttcccggaaggtttcaaatgggaacgtgttatgaacttcgaagacggtggtgttgttaccgttacccaggactcctccctgcaagacggtgagttcatctacaaagttaaactgcgtggtaccaacttcccgtccgacggtccggttatgcagaaaaaaaccatgggttgggaagcttccaccgaacgtatgtacccggaagacggtgctctgaaaggtgaaatcaaaatgcgtctgaaactgaaagacggtggtcactacgacgctgaagttaaaaccacctacatggctaaaaaaccggttcagctgccgggtgcttacaaaaccgacatcaaactggacatcacctcccacaacgaagactacaccatcgttgaacagtacgaacgtgctgaaggtcgtcactccaccggtgcttaataacgctgatagtgctagtgtagatcgctactagagccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctactagagtcacactggctcaccttcgggtgggcctttctgcgtttataggtctca + + + + + Scar_A_sequence + ggag + + + + + Cir_qxow_Layout + + + + + Scar_A_Layout + + + + + UJHDBOTD_Layout + + + + 695.0 + 457.0 + 152.0 + 100.0 + container + + + + + 0.0 + 50.0 + 152.0 + 1.0 + backbone + + + + + 1.0 + 0.0 + 50.0 + 100.0 + Scar_A_2 + + + + + + 51.0 + 0.0 + 50.0 + 100.0 + RFP_cassette_3 + + + + + + 101.0 + 0.0 + 50.0 + 100.0 + Scar_F_4 + + + + + + 151.0 + 0.0 + 1.0 + 100.0 + Cir_qxow_5 + + + + + + + Scar_F_Layout + + + + + RFP_cassette_Layout + + + + + module1_Layout + + + + 695.0 + 457.0 + 152.0 + 100.0 + UJHDBOTD_159 + + + + + diff --git a/tests/cds_in_bb.xml b/tests/cds_in_bb.xml new file mode 100644 index 0000000..54eb11d --- /dev/null +++ b/tests/cds_in_bb.xml @@ -0,0 +1,328 @@ + + + + + module1 + + + + UJHDBOTD_106 + + + + + + + + + GFP + 1 + GFP + + + + + + + Scar_C + 1 + Scar_C + + + + + + + Scar_D + 1 + Scar_D + + + + + + + Cir_qxow + 1 + Cir + + + + + + + UJHDBOTD + 1 + + + + + + + + Scar_D_4 + 1 + + + + + + + + GFP_3 + 1 + + + + + + + + Cir_qxow_5 + 1 + + + + + + + + Scar_C_2 + 1 + + + + + + + + UJHDBOTDAnnotation0 + 1 + + + + location0 + 1 + 1 + 4 + + + + + + + + + + UJHDBOTDAnnotation2 + 1 + + + + location2 + 1 + 722 + 725 + + + + + + + + + + UJHDBOTDAnnotation1 + 1 + + + + location1 + 1 + 5 + 721 + + + + + + + + + + UJHDBOTDAnnotation3 + 1 + + + + location3 + 1 + 726 + 2777 + + + + + + + + + + UJHDBOTDConstraint3 + 1 + + + + + + + + + UJHDBOTDConstraint2 + 1 + + + + + + + + + UJHDBOTDConstraint1 + 1 + + + + + + + + + + Scar_C_sequence + aatg + + + + + GFP_sequence + gtgagcaagggcgaggagctgttcaccggggtggtgcccatcctggtcgagctggacggcgacgtaaacggccacaagttcagcgtgtccggcgagggcgagggcgatgccacctacggcaagctgaccctgaagttcatctgcaccaccggcaagctgcccgtgccctggcccaccctcgtgaccaccttcagctacggcgtgcagtgcttcagccgctaccccgaccacatgaagcagcacgacttcttcaagtccgccatgcccgaaggctacgtccaggagcgcaccatcttcttcaaggacgacggcaactacaagacccgcgccgaggtgaagttcgagggcgacaccctggtgaaccgcatcgagctgaagggcatcgacttcaaggaggacggcaacatcctggggcacaagctggagtacaactacaacagccacaacgtctatatcatggccgacaagcagaagaacggcatcaaggtgaacttcaagatccgccacaacatcgaggacggcagcgtgcagctcgccgaccactaccagcagaacacccccatcggcgacggccccgtgctgctgcccgacaaccactacctgagcacccagtccgccctgagcaaagaccccaacgagaagcgcgatcacatggtcctgctggagttcgtgaccgccgccgggatcactcacggcatggacgagctgtacaagtaa + + + + + Scar_D_sequence + gctt + + + + + UJHDBOTD_sequence + aatggtgagcaagggcgaggagctgttcaccggggtggtgcccatcctggtcgagctggacggcgacgtaaacggccacaagttcagcgtgtccggcgagggcgagggcgatgccacctacggcaagctgaccctgaagttcatctgcaccaccggcaagctgcccgtgccctggcccaccctcgtgaccaccttcagctacggcgtgcagtgcttcagccgctaccccgaccacatgaagcagcacgacttcttcaagtccgccatgcccgaaggctacgtccaggagcgcaccatcttcttcaaggacgacggcaactacaagacccgcgccgaggtgaagttcgagggcgacaccctggtgaaccgcatcgagctgaagggcatcgacttcaaggaggacggcaacatcctggggcacaagctggagtacaactacaacagccacaacgtctatatcatggccgacaagcagaagaacggcatcaaggtgaacttcaagatccgccacaacatcgaggacggcagcgtgcagctcgccgaccactaccagcagaacacccccatcggcgacggccccgtgctgctgcccgacaaccactacctgagcacccagtccgccctgagcaaagaccccaacgagaagcgcgatcacatggtcctgctggagttcgtgaccgccgccgggatcactcacggcatggacgagctgtacaagtaagcttCGAGaccctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgaggcttggattctcaccaataaaaaacgcccggcggcaaccgagcgttctgaacaaatccagatggagttctgaggtcattactggatctatcaacaggagtccaagcgagctcgatatcaaattacgccccgccctgccactcatcgcagtactgttgtaattcattaagcattctgccgacatggaagccatcacaaacggcatgatgaacctgaatcgccagcggcatcagcaccttgtcgccttgcgtataatatttgcccatggtgaaaacgggggcgaagaagttgtccatattggccacgtttaaatcaaaactggtgaaactcacccagggattggctgagacgaaaaacatattctcaataaaccctttagggaaataggccaggttttcaccgtaacacgccacatcttgcgaatatatgtgtagaaactgccggaaatcgtcgtggtattcactccagagcgatgaaaacgtttcagtttgctcatggaaaacggtgtaacaagggtgaacactatcccatatcaccagctcaccgtcttcattgccatacgaaattccggatgagcattcatcaggcgggcaagaatgtgaataaaggccggataaaacttgtgcttatttttctttacggtctttaaaaaggccgtaatatccagctgaacggtctggttataggtacattgagcaactgactgaaatgcctcaaaatgttctttacgatgccattgggatatatcaacggtggtatatccagtgatttttttctccattttagcttccttagctcctgaaaatctcgataactcaaaaaatacgcccggtagtgatcttatttcattatggtgaaagttggaacctcttacgtgcccgatcaactcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcggtctcg + + + + + Cir_qxow_sequence + CGAGaccctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgaggcttggattctcaccaataaaaaacgcccggcggcaaccgagcgttctgaacaaatccagatggagttctgaggtcattactggatctatcaacaggagtccaagcgagctcgatatcaaattacgccccgccctgccactcatcgcagtactgttgtaattcattaagcattctgccgacatggaagccatcacaaacggcatgatgaacctgaatcgccagcggcatcagcaccttgtcgccttgcgtataatatttgcccatggtgaaaacgggggcgaagaagttgtccatattggccacgtttaaatcaaaactggtgaaactcacccagggattggctgagacgaaaaacatattctcaataaaccctttagggaaataggccaggttttcaccgtaacacgccacatcttgcgaatatatgtgtagaaactgccggaaatcgtcgtggtattcactccagagcgatgaaaacgtttcagtttgctcatggaaaacggtgtaacaagggtgaacactatcccatatcaccagctcaccgtcttcattgccatacgaaattccggatgagcattcatcaggcgggcaagaatgtgaataaaggccggataaaacttgtgcttatttttctttacggtctttaaaaaggccgtaatatccagctgaacggtctggttataggtacattgagcaactgactgaaatgcctcaaaatgttctttacgatgccattgggatatatcaacggtggtatatccagtgatttttttctccattttagcttccttagctcctgaaaatctcgataactcaaaaaatacgcccggtagtgatcttatttcattatggtgaaagttggaacctcttacgtgcccgatcaactcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcggtctcg + + + + + UJHDBOTD_Layout + + + + 695.0 + 457.0 + 152.0 + 100.0 + container + + + + + 0.0 + 50.0 + 152.0 + 1.0 + backbone + + + + + 1.0 + 0.0 + 50.0 + 100.0 + Scar_C_2 + + + + + + 51.0 + 0.0 + 50.0 + 100.0 + GFP_3 + + + + + + 101.0 + 0.0 + 50.0 + 100.0 + Scar_D_4 + + + + + + 151.0 + 0.0 + 1.0 + 100.0 + Cir_qxow_5 + + + + + + + module1_Layout + + + + 695.0 + 457.0 + 152.0 + 100.0 + UJHDBOTD_106 + + + + + + + GFP_Layout + + + + + Cir_qxow_Layout + + + + + Scar_D_Layout + + + + + Scar_C_Layout + + + diff --git a/tests/ligation_test_forreal.xml b/tests/ligation_test_forreal.xml new file mode 100644 index 0000000..9893bef --- /dev/null +++ b/tests/ligation_test_forreal.xml @@ -0,0 +1,627 @@ + + + 1 + + + UJHDBOTD_backbone + + + + + + + 1 + 2203 + + 2200 + + three_prime_fusion_site_location + + + + + fusion_sites_annotation + 1 + + + 1 + 4 + + 1 + + five_prime_fusion_site_location + + + + + + + 1 + + + + + + + 1 + 722 + three_prime_fusion_site_location + + + 725 + + + fusion_sites_annotation + + + + + 1 + + + five_prime_fusion_site_location + 4 + 1 + + + 1 + + + + + UJHDBOTD_106_part_extract + + + + UJHDBOTD_70_part_extract + 1 + + + + fusion_sites_annotation + + + 1 + + + + five_prime_fusion_site_location + 4 + 1 + + 1 + + + + + 1 + three_prime_fusion_site_location + + + 40 + 43 + + + + + + + + + + 1 + + + UJHDBOTD_45_part_extract + + + + + + + three_prime_fusion_site_location + 1 + 29 + + 26 + + + + + 4 + + 1 + five_prime_fusion_site_location + 1 + + + + + 1 + fusion_sites_annotation + + + + + + UJHDBOTD_134_part_extract + + 1 + + + + + + + 1 + fusion_sites_annotation + + + 134 + 1 + + + 137 + three_prime_fusion_site_location + + + + + 1 + 4 + 1 + + five_prime_fusion_site_location + + + + + + + + + BsaI + 1 + + + + Restriction enzyme BsaI from REBASE. + BsaI + + + + + UJHDBOTD_70_part_extract + 1 + + + + + + 1 + + + + UJHDBOTD_backbone + + + + 1 + + + + composite_1_UJHDBOTD_106_UJHDBOTD_134_UJHDBOTD_backbone_UJHDBOTD_70_UJHDBOTD_45 + + + + 1 + UJHDBOTD_45_part_extract + + + + + + + + UJHDBOTD_106_part_extract + 1 + + + + + + + + + UJHDBOTD_134_part_extract + 1 + + + + + + composite_1_UJHDBOTD_106_UJHDBOTD_134_UJHDBOTD_backbone_UJHDBOTD_70_UJHDBOTD_45 + + + UJHDBOTD_backbone_seq + cgctgcatgaagagcctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgagtcccgtcaagtcagcgtaatgctctgccagtgttacaaccaattaaccaattctgattagaaaaactcatcgagcatcaaatgaaactgcaatttattcatatcaggattatcaataccatatttttgaaaaagccgtttctgtaatgaaggagaaaactcaccgaggcagttccataggatggcaagatcctggtatcggtctgcgattccgactcgtccaacatcaatacaacctattaatttcccctcgtcaaaaataaggttatcaagtgagaaatcaccatgagtgacgactgaatccggtgagaatggcaaaagcttatgcatttctttccagacttgttcaacaggccagccattacgctcgtcatcaaaatcactcgcatcaaccaaaccgttattcattcgtgattgcgcctgagcgagacgaaatacgcgatcgctgttaaaaggacaattacaaacaggaatcgaatgcaaccggcgcaggaacactgccagcgcatcaacaatattttcacctgaatcaggatattcttctaatacctggaatgctgttttcccggggatcgcagtggtgagtaaccatgcatcatcaggagtacggataaaatgcttgatggtcggaagaggcataaattccgtcagccagtttagtctgaccatctcatctgtaacatcattggcaacgctacctttgccatgtttcagaaacaactctggcgcatcgggcttcccatacaatcgatagattgtcgcacctgattgcccgacattatcgcgagcccatttatacccatataaatcagcatccatgttggaatttaatcgcggcctggagcaagacgtttcccgttgaatatggctcataacaccccttgtattactgtttatgtaagcagacagttttattgttcatgatgatatatttttatcttgtgcaatgtaacatcagagattttgagacacaacgtggctttgttgaataaatcgaacttttgctgagttgaaggatcagctcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcgctcttcaatgggag + + 1 + + + + + UJHDBOTD_106_part_extract_seq + + aatggtgagcaagggcgaggagctgttcaccggggtggtgcccatcctggtcgagctggacggcgacgtaaacggccacaagttcagcgtgtccggcgagggcgagggcgatgccacctacggcaagctgaccctgaagttcatctgcaccaccggcaagctgcccgtgccctggcccaccctcgtgaccaccttcagctacggcgtgcagtgcttcagccgctaccccgaccacatgaagcagcacgacttcttcaagtccgccatgcccgaaggctacgtccaggagcgcaccatcttcttcaaggacgacggcaactacaagacccgcgccgaggtgaagttcgagggcgacaccctggtgaaccgcatcgagctgaagggcatcgacttcaaggaggacggcaacatcctggggcacaagctggagtacaactacaacagccacaacgtctatatcatggccgacaagcagaagaacggcatcaaggtgaacttcaagatccgccacaacatcgaggacggcagcgtgcagctcgccgaccactaccagcagaacacccccatcggcgacggccccgtgctgctgcccgacaaccactacctgagcacccagtccgccctgagcaaagaccccaacgagaagcgcgatcacatggtcctgctggagttcgtgaccgccgccgggatcactcacggcatggacgagctgtacaagtaagctt + 1 + + + UJHDBOTD_70_part_extract_seq + 1 + GGAGtttacagctagctcagtcctaggtattatgctagcTACT + + + + + TACTagagaaagaggagaaatactaaatg + 1 + + UJHDBOTD_45_part_extract_seq + + + + + + UJHDBOTD_134_part_extract_seq + 1 + gcttccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctactagagtcacactggctcaccttcgggtgggcctttctgcgtttatacgct + + + + 1 + aatggtgagcaagggcgaggagctgttcaccggggtggtgcccatcctggtcgagctggacggcgacgtaaacggccacaagttcagcgtgtccggcgagggcgagggcgatgccacctacggcaagctgaccctgaagttcatctgcaccaccggcaagctgcccgtgccctggcccaccctcgtgaccaccttcagctacggcgtgcagtgcttcagccgctaccccgaccacatgaagcagcacgacttcttcaagtccgccatgcccgaaggctacgtccaggagcgcaccatcttcttcaaggacgacggcaactacaagacccgcgccgaggtgaagttcgagggcgacaccctggtgaaccgcatcgagctgaagggcatcgacttcaaggaggacggcaacatcctggggcacaagctggagtacaactacaacagccacaacgtctatatcatggccgacaagcagaagaacggcatcaaggtgaacttcaagatccgccacaacatcgaggacggcagcgtgcagctcgccgaccactaccagcagaacacccccatcggcgacggccccgtgctgctgcccgacaaccactacctgagcacccagtccgccctgagcaaagaccccaacgagaagcgcgatcacatggtcctgctggagttcgtgaccgccgccgggatcactcacggcatggacgagctgtacaagtaagcttccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctactagagtcacactggctcaccttcgggtgggcctttctgcgtttatacgctgcatgaagagcctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgagtcccgtcaagtcagcgtaatgctctgccagtgttacaaccaattaaccaattctgattagaaaaactcatcgagcatcaaatgaaactgcaatttattcatatcaggattatcaataccatatttttgaaaaagccgtttctgtaatgaaggagaaaactcaccgaggcagttccataggatggcaagatcctggtatcggtctgcgattccgactcgtccaacatcaatacaacctattaatttcccctcgtcaaaaataaggttatcaagtgagaaatcaccatgagtgacgactgaatccggtgagaatggcaaaagcttatgcatttctttccagacttgttcaacaggccagccattacgctcgtcatcaaaatcactcgcatcaaccaaaccgttattcattcgtgattgcgcctgagcgagacgaaatacgcgatcgctgttaaaaggacaattacaaacaggaatcgaatgcaaccggcgcaggaacactgccagcgcatcaacaatattttcacctgaatcaggatattcttctaatacctggaatgctgttttcccggggatcgcagtggtgagtaaccatgcatcatcaggagtacggataaaatgcttgatggtcggaagaggcataaattccgtcagccagtttagtctgaccatctcatctgtaacatcattggcaacgctacctttgccatgtttcagaaacaactctggcgcatcgggcttcccatacaatcgatagattgtcgcacctgattgcccgacattatcgcgagcccatttatacccatataaatcagcatccatgttggaatttaatcgcggcctggagcaagacgtttcccgttgaatatggctcataacaccccttgtattactgtttatgtaagcagacagttttattgttcatgatgatatatttttatcttgtgcaatgtaacatcagagattttgagacacaacgtggctttgttgaataaatcgaacttttgctgagttgaaggatcagctcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcgctcttcaatgGGAGtttacagctagctcagtcctaggtattatgctagcTACTagagaaagaggagaaatacta + + composite_1_UJHDBOTD_106_UJHDBOTD_134_UJHDBOTD_backbone_UJHDBOTD_70_UJHDBOTD_45_seq + + + + + UJHDBOTD_134_reaction_component + + + + + 1 + + + + + 1 + + UJHDBOTD_106_product_component + + + + + + + + + 1 + BsaI_enzyme + + + + + + + + UJHDBOTD_45_reactant_component + + + + 1 + + + + + + + + + + 1 + UJHDBOTD_70_reactant_participation + + + + + + + restriction + + + + 1 + + + + + 1 + + + + UJHDBOTD_70_product_participation + + + UJHDBOTD_70_asssembly_plan_interaction + 1 + + + + + + 1 + + + + + + 1 + + restriction + + + + + + + + UJHDBOTD_106_reactant_participation + 1 + + + + + + + 1 + UJHDBOTD_106_product_participation + + + + + UJHDBOTD_106_asssembly_plan_interaction + + + + + + 1 + + + UJHDBOTD_backbone_reactant_component + + + + + + + + + + UJHDBOTD_70_reactant_component + 1 + + + + + + UJHDBOTD_134_product_component + 1 + + + + + + + + + + + + UJHDBOTD_106_reaction_component + + 1 + + + + + + + + UJHDBOTD_45_reactant_participation + + + 1 + + + + UJHDBOTD_45_asssembly_plan_interaction + + + + + + + 1 + UJHDBOTD_45_product_participation + + + + + + + + 1 + restriction + + + 1 + + + + + + + UJHDBOTD_134_reactant_component + + + 1 + + + + + + UJHDBOTD_70_reaction_component + + + + 1 + + + 1 + + + + + UJHDBOTD_106_reactant_component + + 1 + + + + bb_assembly_plan + + + UJHDBOTD_45_product_component + + + 1 + + + + + + + + + + + 1 + + restriction + + + + + + + + 1 + + UJHDBOTD_134_reactant_participation + + + + + + 1 + UJHDBOTD_134_product_participation + + + + + + UJHDBOTD_134_asssembly_plan_interaction + 1 + + + + + + 1 + UJHDBOTD_70_product_component + + + + + + + + + + + + + + 1 + UJHDBOTD_backbone_reactant_participation + + + + + restriction + + + + 1 + + + + + + + + + UJHDBOTD_backbone_product_participation + 1 + + + asssembly_plan_interaction + 1 + + + + + + UJHDBOTD_backbone_reaction_component + + 1 + + + + + + + + UJHDBOTD_backbone_product_component + + + + 1 + + + + + + 1 + + UJHDBOTD_45_reaction_component + + + + + + diff --git a/tests/out_doc.xml b/tests/out_doc.xml new file mode 100644 index 0000000..5df6b98 --- /dev/null +++ b/tests/out_doc.xml @@ -0,0 +1,1580 @@ + + + + + + + UJHDBOTD_45_reactant + + + 1 + + + testassem + + + + + 1 + + + UJHDBOTD_backbone_product + + + 1 + + + + UJHDBOTD_digestion_interaction + + + + UJHDBOTD_backbone_reactant + + + 1 + + + + + + + restriction + + 1 + + + + + + + UJHDBOTD_106_reactant + + + + 1 + + + + + + + 1 + + + + BsaI_enzyme + + + + + + + UJHDBOTD_45_reactant + + + 1 + + + + + + 1 + + restriction + + + + + UJHDBOTD_45_digestion_interaction + 1 + + + + + 1 + + UJHDBOTD_45_product + + + + + + + + + + 1 + + + UJHDBOTD_70_digestion_product + + + + + + UJHDBOTD_106_digestion_interaction + + + + + 1 + UJHDBOTD_106_product + + + + + + + + restriction + 1 + + + + + 1 + + + + + UJHDBOTD_106_reactant + + 1 + + + + + + + + + 1 + T4_Ligase + + + + + + + + + + + + 1 + UJHDBOTD_45_digestion_product + + + + + + UJHDBOTD_backbone_reactant + 1 + + + + + + 1 + + + 1 + + + + + UJHDBOTD_106_digestion_product + + + + + + 1 + UJHDBOTD_70_reactant + + + + + + + + + + + 1 + UJHDBOTD_backbone_digestion_product + + + + + + + + + + UJHDBOTD_134_reactant + 1 + + + + + + UJHDBOTD_134_digestion_product + + + + + 1 + + + + + 1 + + + + + + 1 + + + restriction + + + UJHDBOTD_70_digestion_interaction + + + + + + 1 + UJHDBOTD_70_reactant + + + + + UJHDBOTD_70_product + + 1 + + + + + + + + + + 1 + + + + + ligation + + 1 + + + + + + 1 + UJHDBOTD_134_extracted_part_ligation + + + + + + + UJHDBOTD_extracted_backbone_ligation + + 1 + + + + + composite_1_ligation_interaction + + + + + UJHDBOTD_70_extracted_part_ligation + 1 + + + + + + + composite_1_product + + + 1 + + + + + + + + + 1 + UJHDBOTD_106_extracted_part_ligation + + + + + + UJHDBOTD_45_extracted_part_ligation + + + 1 + + + + + + + + + 1 + composite_1 + + + + + + + + + + + + restriction + 1 + + + + + UJHDBOTD_134_digestion_interaction + 1 + + + UJHDBOTD_134_reactant + + 1 + + + + + + + + + 1 + + UJHDBOTD_134_product + + + + + + + BsaI + Restriction enzyme BsaI from REBASE. + + + 1 + + BsaI + + + + + + + J23101_3 + + 1 + + + + + + + 1 + UJHDBOTD_70_part + + + 1 + UJHDBOTD_70_part_location + 5 + 39 + + + + + + + + + + + + 1 + + + + + 4 + 1 + 1 + + five_prime_oh_location + + + + five_prime_overhang + + + UJHDBOTD_70_extracted_part + + + + + 1 + + + + + 40 + 1 + 43 + + three_prime_oh_location + + + three_prime_overhang + + + + + + 1 + + UJHDBOTD_70_three_prime_oh_component + + + + + 1 + + + + UJHDBOTD_70_five_prime_oh_component + + 1 + + + + + + + UJHDBOTD_70_three_prime_oh + + + + + + 1 + + + + + + + Scar_B + Scar_B + 1 + + + + + + J23101 + 1 + J23101 + + + + + + + + UJHDBOTD_70_five_prime_oh + 1 + + + + Scar_A + + + 1 + Scar_A + + + + + + + UJHDBOTD_45_part + 1 + + + + 25 + UJHDBOTD_45_part_location + + 1 + 5 + + + + + + + + + + + UJHDBOTD_45_five_prime_oh_component + 1 + + + + + + + + + + 26 + + three_prime_oh_location + 29 + + 1 + + + three_prime_overhang + 1 + + + UJHDBOTD_45_extracted_part + + + + + + + + B0034_3 + 1 + + + + + + + + UJHDBOTD_45_three_prime_oh_component + 1 + + + + + + + 1 + + + five_prime_overhang + + 1 + + + + five_prime_oh_location + + + 1 + 4 + 1 + + + + + + + UJHDBOTD_45_five_prime_oh + + + + + + 1 + + + + + 1 + + + UJHDBOTD_45_three_prime_oh + + + + + 1 + Scar_C + Scar_C + + + + + + 1 + B0034 + + + + + B0034 + + + + + + GFP_3 + 1 + + + + + + + + + 1 + + UJHDBOTD_106_part + + + 721 + + 5 + + 1 + UJHDBOTD_106_part_location + + + + + + + 1 + + + + + 1 + three_prime_oh_location + 722 + 725 + + + + three_prime_overhang + + + + + + + + UJHDBOTD_106_five_prime_oh_component + + + + 1 + + + + + + + + 1 + UJHDBOTD_106_three_prime_oh_component + + + + UJHDBOTD_106_extracted_part + 1 + + + + 1 + + + + 1 + + five_prime_oh_location + 1 + 4 + + + + + five_prime_overhang + + + + + + 1 + + GFP + + + + GFP + + + UJHDBOTD_106_five_prime_oh + + 1 + + + + + + + + + + UJHDBOTD_106_three_prime_oh + 1 + + + + + + + + Scar_D + + Scar_D + 1 + + + + + + + + UJHDBOTD_134_five_prime_oh_component + 1 + + + + 1 + + + + + + 4 + + 1 + five_prime_oh_location + + 1 + + + + five_prime_overhang + 1 + + + + + 1 + + B0015_3 + + + + + + + + + + + 134 + three_prime_oh_location + + 137 + 1 + + + 1 + + three_prime_overhang + + + + + + + + + + + 5 + + 1 + + 133 + UJHDBOTD_134_part_location + + + UJHDBOTD_134_part + 1 + + + + + + + + + 1 + + + UJHDBOTD_134_three_prime_oh_component + + + UJHDBOTD_134_extracted_part + + + + B0015 + + + 1 + B0015 + + + + + + + 1 + UJHDBOTD_134_three_prime_oh + + + + + + + 1 + Scar_F + + + Scar_F + + + + + 1 + UJHDBOTD_134_five_prime_oh + + + + + + + + + + + UJHDBOTD_159_five_prime_oh_component + 1 + + + + + + UJHDBOTD_159_backbone + + + + 1 + 2199 + UJHDBOTD_159_backbone_location + + + 5 + + + 1 + + + + + + + Cir_qxow_5 + 1 + + + + + + + 1 + + + three_prime_overhang + + + + + three_prime_oh_location + 2200 + 2203 + + 1 + + + + 1 + + + UJHDBOTD_extracted_backbone + + + + + UJHDBOTD_159_three_prime_oh_component + + + 1 + + + + + + five_prime_overhang + + + + 4 + five_prime_oh_location + 1 + + 1 + + + + 1 + + + + + + + + + UJHDBOTD_159_five_prime_oh + + 1 + + + + Cir + + + + + Cir_qxow + 1 + + + UJHDBOTD_159_three_prime_oh + + + + 1 + + + + + T4_Ligase + + + 1 + T4_Ligase + + + + 1 + + + + + + Ligation_Scar_A + + + + 1 + Ligation_Scar_B + + + + + + + + + + + + Ligation_Scar_C + + 1 + + + + + + 1 + + + + Ligation_Scar_D + + + + + + + + Ligation_Scar_E + 1 + + + + + + + + + B0034_3_location + + 1 + 2263 + + 2243 + + + + 1 + B0034_3_annotation + + + + + + Ligation_Scar_C + + + 1 + + + + + + 1 + + + Ligation_Scar_E + + + + + + 1 + + + + 1 + Ligation_Scar_E_location + + 2988 + 2985 + + + + + Ligation_Scar_E_annotation + + + + + + + 1 + J23101 + + + + + + + + Ligation_Scar_D + + 1 + + + + + + Ligation_Scar_C_annotation + + + 1 + + + + 1 + + 2242 + Ligation_Scar_C_location + 2239 + + + + + composite_1 + + + + + Ligation_Scar_D_annotation + + + 2267 + + Ligation_Scar_D_location + 1 + + 2264 + + + 1 + + + + + + + B0015 + + 1 + + + + + + 1 + + + + + 1 + Ligation_Scar_A_location + 4 + 1 + + + Ligation_Scar_A_annotation + + + + + + + B0015_3_annotation + + 1 + + + + + 3117 + 2989 + B0015_3_location + + 1 + + + + + + + Ligation_Scar_A + 1 + + + + + + + + + + 2200 + Ligation_Scar_B_location + + 2203 + + 1 + + + + 1 + + Ligation_Scar_B_annotation + + + + + + + + Ligation_Scar_B + 1 + + + + + + + + + 1 + GFP_3_annotation + + + GFP_3_location + 2984 + + 1 + + 2268 + + + + + + + + + GFP + + 1 + + + + + + + + + 1 + 2204 + 2238 + J23101_3_location + + + J23101_3_annotation + 1 + + + + + + + 1 + Cir_qxow + + + + + + + + + + + B0034 + 1 + + + 1 + composite_1 + + + + + 1 + Cir_qxow_5_annotation + + + 1 + 2199 + 5 + Cir_qxow_5_location + + + + + + + + + + + UJHDBOTD_70_extracted_part_seq + GGAGtttacagctagctcagtcctaggtattatgctagcTACT + 1 + + + + + + 1 + + UJHDBOTD_70_three_prime_oh_sequence + TACT + + + TACT + Scar_B_sequence + + + + + + tttacagctagctcagtcctaggtattatgctagc + + J23101_sequence + + + + + 1 + UJHDBOTD_70_five_prime_oh_sequence + + GGAG + + + + GGAG + Scar_A_sequence + + + + + UJHDBOTD_45_extracted_part_seq + + 1 + TACTagagaaagaggagaaatactaaatg + + + UJHDBOTD_45_five_prime_oh_sequence + TACT + + + + 1 + + + aatg + UJHDBOTD_45_three_prime_oh_sequence + + + + 1 + + + + Scar_C_sequence + aatg + + + + B0034_sequence + + + agagaaagaggagaaatacta + + + + UJHDBOTD_106_extracted_part_seq + + aatggtgagcaagggcgaggagctgttcaccggggtggtgcccatcctggtcgagctggacggcgacgtaaacggccacaagttcagcgtgtccggcgagggcgagggcgatgccacctacggcaagctgaccctgaagttcatctgcaccaccggcaagctgcccgtgccctggcccaccctcgtgaccaccttcagctacggcgtgcagtgcttcagccgctaccccgaccacatgaagcagcacgacttcttcaagtccgccatgcccgaaggctacgtccaggagcgcaccatcttcttcaaggacgacggcaactacaagacccgcgccgaggtgaagttcgagggcgacaccctggtgaaccgcatcgagctgaagggcatcgacttcaaggaggacggcaacatcctggggcacaagctggagtacaactacaacagccacaacgtctatatcatggccgacaagcagaagaacggcatcaaggtgaacttcaagatccgccacaacatcgaggacggcagcgtgcagctcgccgaccactaccagcagaacacccccatcggcgacggccccgtgctgctgcccgacaaccactacctgagcacccagtccgccctgagcaaagaccccaacgagaagcgcgatcacatggtcctgctggagttcgtgaccgccgccgggatcactcacggcatggacgagctgtacaagtaagctt + 1 + + + + GFP_sequence + gtgagcaagggcgaggagctgttcaccggggtggtgcccatcctggtcgagctggacggcgacgtaaacggccacaagttcagcgtgtccggcgagggcgagggcgatgccacctacggcaagctgaccctgaagttcatctgcaccaccggcaagctgcccgtgccctggcccaccctcgtgaccaccttcagctacggcgtgcagtgcttcagccgctaccccgaccacatgaagcagcacgacttcttcaagtccgccatgcccgaaggctacgtccaggagcgcaccatcttcttcaaggacgacggcaactacaagacccgcgccgaggtgaagttcgagggcgacaccctggtgaaccgcatcgagctgaagggcatcgacttcaaggaggacggcaacatcctggggcacaagctggagtacaactacaacagccacaacgtctatatcatggccgacaagcagaagaacggcatcaaggtgaacttcaagatccgccacaacatcgaggacggcagcgtgcagctcgccgaccactaccagcagaacacccccatcggcgacggccccgtgctgctgcccgacaaccactacctgagcacccagtccgccctgagcaaagaccccaacgagaagcgcgatcacatggtcctgctggagttcgtgaccgccgccgggatcactcacggcatggacgagctgtacaagtaa + + + + 1 + aatg + + + + UJHDBOTD_106_five_prime_oh_sequence + + + + 1 + + + UJHDBOTD_106_three_prime_oh_sequence + gctt + + + Scar_D_sequence + + gctt + + + + UJHDBOTD_134_extracted_part_seq + gcttccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctactagagtcacactggctcaccttcgggtgggcctttctgcgtttatacgct + + + 1 + + + + + B0015_sequence + ccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctactagagtcacactggctcaccttcgggtgggcctttctgcgtttata + + + + cgct + + UJHDBOTD_134_three_prime_oh_sequence + + 1 + + + + cgct + + Scar_F_sequence + + + + + gctt + + UJHDBOTD_134_five_prime_oh_sequence + 1 + + + + UJHDBOTD_extracted_backbone_seq + 1 + cgctgcatgaagagcctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgagtcccgtcaagtcagcgtaatgctctgccagtgttacaaccaattaaccaattctgattagaaaaactcatcgagcatcaaatgaaactgcaatttattcatatcaggattatcaataccatatttttgaaaaagccgtttctgtaatgaaggagaaaactcaccgaggcagttccataggatggcaagatcctggtatcggtctgcgattccgactcgtccaacatcaatacaacctattaatttcccctcgtcaaaaataaggttatcaagtgagaaatcaccatgagtgacgactgaatccggtgagaatggcaaaagcttatgcatttctttccagacttgttcaacaggccagccattacgctcgtcatcaaaatcactcgcatcaaccaaaccgttattcattcgtgattgcgcctgagcgagacgaaatacgcgatcgctgttaaaaggacaattacaaacaggaatcgaatgcaaccggcgcaggaacactgccagcgcatcaacaatattttcacctgaatcaggatattcttctaatacctggaatgctgttttcccggggatcgcagtggtgagtaaccatgcatcatcaggagtacggataaaatgcttgatggtcggaagaggcataaattccgtcagccagtttagtctgaccatctcatctgtaacatcattggcaacgctacctttgccatgtttcagaaacaactctggcgcatcgggcttcccatacaatcgatagattgtcgcacctgattgcccgacattatcgcgagcccatttatacccatataaatcagcatccatgttggaatttaatcgcggcctggagcaagacgtttcccgttgaatatggctcataacaccccttgtattactgtttatgtaagcagacagttttattgttcatgatgatatatttttatcttgtgcaatgtaacatcagagattttgagacacaacgtggctttgttgaataaatcgaacttttgctgagttgaaggatcagctcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcgctcttcaatgggag + + + + + cgct + + + 1 + UJHDBOTD_159_five_prime_oh_sequence + + + + gcatgaagagcctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgagtcccgtcaagtcagcgtaatgctctgccagtgttacaaccaattaaccaattctgattagaaaaactcatcgagcatcaaatgaaactgcaatttattcatatcaggattatcaataccatatttttgaaaaagccgtttctgtaatgaaggagaaaactcaccgaggcagttccataggatggcaagatcctggtatcggtctgcgattccgactcgtccaacatcaatacaacctattaatttcccctcgtcaaaaataaggttatcaagtgagaaatcaccatgagtgacgactgaatccggtgagaatggcaaaagcttatgcatttctttccagacttgttcaacaggccagccattacgctcgtcatcaaaatcactcgcatcaaccaaaccgttattcattcgtgattgcgcctgagcgagacgaaatacgcgatcgctgttaaaaggacaattacaaacaggaatcgaatgcaaccggcgcaggaacactgccagcgcatcaacaatattttcacctgaatcaggatattcttctaatacctggaatgctgttttcccggggatcgcagtggtgagtaaccatgcatcatcaggagtacggataaaatgcttgatggtcggaagaggcataaattccgtcagccagtttagtctgaccatctcatctgtaacatcattggcaacgctacctttgccatgtttcagaaacaactctggcgcatcgggcttcccatacaatcgatagattgtcgcacctgattgcccgacattatcgcgagcccatttatacccatataaatcagcatccatgttggaatttaatcgcggcctggagcaagacgtttcccgttgaatatggctcataacaccccttgtattactgtttatgtaagcagacagttttattgttcatgatgatatatttttatcttgtgcaatgtaacatcagagattttgagacacaacgtggctttgttgaataaatcgaacttttgctgagttgaaggatcagctcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcgctcttcaatg + Cir_qxow_sequence + + + + + ggag + + + 1 + UJHDBOTD_159_three_prime_oh_sequence + + + Ligation_Scar_A_sequence + cgct + + + 1 + + + ggag + + + Ligation_Scar_B_sequence + 1 + + + + TACT + Ligation_Scar_C_sequence + 1 + + + + Ligation_Scar_D_sequence + + aatg + + 1 + + + Ligation_Scar_E_sequence + gctt + 1 + + + + + + cgctgcatgaagagcctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgagtcccgtcaagtcagcgtaatgctctgccagtgttacaaccaattaaccaattctgattagaaaaactcatcgagcatcaaatgaaactgcaatttattcatatcaggattatcaataccatatttttgaaaaagccgtttctgtaatgaaggagaaaactcaccgaggcagttccataggatggcaagatcctggtatcggtctgcgattccgactcgtccaacatcaatacaacctattaatttcccctcgtcaaaaataaggttatcaagtgagaaatcaccatgagtgacgactgaatccggtgagaatggcaaaagcttatgcatttctttccagacttgttcaacaggccagccattacgctcgtcatcaaaatcactcgcatcaaccaaaccgttattcattcgtgattgcgcctgagcgagacgaaatacgcgatcgctgttaaaaggacaattacaaacaggaatcgaatgcaaccggcgcaggaacactgccagcgcatcaacaatattttcacctgaatcaggatattcttctaatacctggaatgctgttttcccggggatcgcagtggtgagtaaccatgcatcatcaggagtacggataaaatgcttgatggtcggaagaggcataaattccgtcagccagtttagtctgaccatctcatctgtaacatcattggcaacgctacctttgccatgtttcagaaacaactctggcgcatcgggcttcccatacaatcgatagattgtcgcacctgattgcccgacattatcgcgagcccatttatacccatataaatcagcatccatgttggaatttaatcgcggcctggagcaagacgtttcccgttgaatatggctcataacaccccttgtattactgtttatgtaagcagacagttttattgttcatgatgatatatttttatcttgtgcaatgtaacatcagagattttgagacacaacgtggctttgttgaataaatcgaacttttgctgagttgaaggatcagctcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcgctcttcaatgGGAGtttacagctagctcagtcctaggtattatgctagcTACTagagaaagaggagaaatactaaatggtgagcaagggcgaggagctgttcaccggggtggtgcccatcctggtcgagctggacggcgacgtaaacggccacaagttcagcgtgtccggcgagggcgagggcgatgccacctacggcaagctgaccctgaagttcatctgcaccaccggcaagctgcccgtgccctggcccaccctcgtgaccaccttcagctacggcgtgcagtgcttcagccgctaccccgaccacatgaagcagcacgacttcttcaagtccgccatgcccgaaggctacgtccaggagcgcaccatcttcttcaaggacgacggcaactacaagacccgcgccgaggtgaagttcgagggcgacaccctggtgaaccgcatcgagctgaagggcatcgacttcaaggaggacggcaacatcctggggcacaagctggagtacaactacaacagccacaacgtctatatcatggccgacaagcagaagaacggcatcaaggtgaacttcaagatccgccacaacatcgaggacggcagcgtgcagctcgccgaccactaccagcagaacacccccatcggcgacggccccgtgctgctgcccgacaaccactacctgagcacccagtccgccctgagcaaagaccccaacgagaagcgcgatcacatggtcctgctggagttcgtgaccgccgccgggatcactcacggcatggacgagctgtacaagtaagcttccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctactagagtcacactggctcaccttcgggtgggcctttctgcgtttata + composite_1_seq + 1 + + + diff --git a/tests/pro2_in_bb.xml b/tests/pro2_in_bb.xml new file mode 100644 index 0000000..a51d262 --- /dev/null +++ b/tests/pro2_in_bb.xml @@ -0,0 +1,330 @@ + + + + + module1 + + + + UJHDBOTD_3 + + + + + + + + + Scar_B + 1 + Scar_B + + + + + + + UJHDBOTD + 1 + + + + + + + + Bba_J23106_3 + 1 + + + + + + + + Scar_A_2 + 1 + + + + + + + + Cir_qxow_5 + 1 + + + + + + + + Scar_B_4 + 1 + + + + + + + + UJHDBOTDAnnotation3 + 1 + + + + location3 + 1 + 44 + 2095 + + + + + + + + + + UJHDBOTDAnnotation2 + 1 + + + + location2 + 1 + 40 + 43 + + + + + + + + + + UJHDBOTDAnnotation0 + 1 + + + + location0 + 1 + 1 + 4 + + + + + + + + + + UJHDBOTDAnnotation1 + 1 + + + + location1 + 1 + 5 + 39 + + + + + + + + + + UJHDBOTDConstraint3 + 1 + + + + + + + + + UJHDBOTDConstraint2 + 1 + + + + + + + + + UJHDBOTDConstraint1 + 1 + + + + + + + + + + Bba_J23106 + 1 + + Bba_J23106 + Constitutive promoter. From Anderson promoter collection, suitable for e. coli. + + + + + + + Cir_qxow + 1 + Cir + + + + + + + Scar_A + 1 + Scar_A + + + + + + + Bba_J23106_sequence + tttacggctagctcagtcctaggtatagtgctagc + + + + + Cir_qxow_sequence + CGAGaccctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgaggcttggattctcaccaataaaaaacgcccggcggcaaccgagcgttctgaacaaatccagatggagttctgaggtcattactggatctatcaacaggagtccaagcgagctcgatatcaaattacgccccgccctgccactcatcgcagtactgttgtaattcattaagcattctgccgacatggaagccatcacaaacggcatgatgaacctgaatcgccagcggcatcagcaccttgtcgccttgcgtataatatttgcccatggtgaaaacgggggcgaagaagttgtccatattggccacgtttaaatcaaaactggtgaaactcacccagggattggctgagacgaaaaacatattctcaataaaccctttagggaaataggccaggttttcaccgtaacacgccacatcttgcgaatatatgtgtagaaactgccggaaatcgtcgtggtattcactccagagcgatgaaaacgtttcagtttgctcatggaaaacggtgtaacaagggtgaacactatcccatatcaccagctcaccgtcttcattgccatacgaaattccggatgagcattcatcaggcgggcaagaatgtgaataaaggccggataaaacttgtgcttatttttctttacggtctttaaaaaggccgtaatatccagctgaacggtctggttataggtacattgagcaactgactgaaatgcctcaaaatgttctttacgatgccattgggatatatcaacggtggtatatccagtgatttttttctccattttagcttccttagctcctgaaaatctcgataactcaaaaaatacgcccggtagtgatcttatttcattatggtgaaagttggaacctcttacgtgcccgatcaactcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcggtctcg + + + + + UJHDBOTD_sequence + GGAGtttacggctagctcagtcctaggtatagtgctagcTACTCGAGaccctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgaggcttggattctcaccaataaaaaacgcccggcggcaaccgagcgttctgaacaaatccagatggagttctgaggtcattactggatctatcaacaggagtccaagcgagctcgatatcaaattacgccccgccctgccactcatcgcagtactgttgtaattcattaagcattctgccgacatggaagccatcacaaacggcatgatgaacctgaatcgccagcggcatcagcaccttgtcgccttgcgtataatatttgcccatggtgaaaacgggggcgaagaagttgtccatattggccacgtttaaatcaaaactggtgaaactcacccagggattggctgagacgaaaaacatattctcaataaaccctttagggaaataggccaggttttcaccgtaacacgccacatcttgcgaatatatgtgtagaaactgccggaaatcgtcgtggtattcactccagagcgatgaaaacgtttcagtttgctcatggaaaacggtgtaacaagggtgaacactatcccatatcaccagctcaccgtcttcattgccatacgaaattccggatgagcattcatcaggcgggcaagaatgtgaataaaggccggataaaacttgtgcttatttttctttacggtctttaaaaaggccgtaatatccagctgaacggtctggttataggtacattgagcaactgactgaaatgcctcaaaatgttctttacgatgccattgggatatatcaacggtggtatatccagtgatttttttctccattttagcttccttagctcctgaaaatctcgataactcaaaaaatacgcccggtagtgatcttatttcattatggtgaaagttggaacctcttacgtgcccgatcaactcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcggtctcg + + + + + Scar_A_sequence + GGAG + + + + + Scar_B_sequence + TACT + + + + + module1_Layout + + + + 695.0 + 457.0 + 152.0 + 100.0 + UJHDBOTD_3 + + + + + + + UJHDBOTD_Layout + + + + 695.0 + 457.0 + 152.0 + 100.0 + container + + + + + 0.0 + 50.0 + 152.0 + 1.0 + backbone + + + + + 1.0 + 0.0 + 50.0 + 100.0 + Scar_A_2 + + + + + + 51.0 + 0.0 + 50.0 + 100.0 + Bba_J23106_3 + + + + + + 101.0 + 0.0 + 50.0 + 100.0 + Scar_B_4 + + + + + + 151.0 + 0.0 + 1.0 + 100.0 + Cir_qxow_5 + + + + + + + Cir_qxow_Layout + + + + + Scar_A_Layout + + + + + Scar_B_Layout + + + + + Bba_J23106_Layout + + + diff --git a/tests/pro3_in_bb.xml b/tests/pro3_in_bb.xml new file mode 100644 index 0000000..bacd529 --- /dev/null +++ b/tests/pro3_in_bb.xml @@ -0,0 +1,330 @@ + + + + + module1 + + + + UJHDBOTD_3 + + + + + + + + + UJHDBOTD + 1 + + + + + + + + Bba_J23107_3 + 1 + + + + + + + + Scar_A_2 + 1 + + + + + + + + Cir_qxow_5 + 1 + + + + + + + + Scar_B_4 + 1 + + + + + + + + UJHDBOTDAnnotation3 + 1 + + + + location3 + 1 + 44 + 2095 + + + + + + + + + + UJHDBOTDAnnotation2 + 1 + + + + location2 + 1 + 40 + 43 + + + + + + + + + + UJHDBOTDAnnotation1 + 1 + + + + location1 + 1 + 5 + 39 + + + + + + + + + + UJHDBOTDAnnotation0 + 1 + + + + location0 + 1 + 1 + 4 + + + + + + + + + + UJHDBOTDConstraint1 + 1 + + + + + + + + + UJHDBOTDConstraint3 + 1 + + + + + + + + + UJHDBOTDConstraint2 + 1 + + + + + + + + + + Scar_B + 1 + Scar_B + + + + + + + Bba_J23107 + 1 + + Bba_J23107 + Constitutive promoter. From Anderson promoter collection, suitable for e. coli. + + + + + + + Cir_qxow + 1 + Cir + + + + + + + Scar_A + 1 + Scar_A + + + + + + + Bba_J23107_sequence + tttacggctagctcagccctaggtattatgctagc + + + + + Cir_qxow_sequence + CGAGaccctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgaggcttggattctcaccaataaaaaacgcccggcggcaaccgagcgttctgaacaaatccagatggagttctgaggtcattactggatctatcaacaggagtccaagcgagctcgatatcaaattacgccccgccctgccactcatcgcagtactgttgtaattcattaagcattctgccgacatggaagccatcacaaacggcatgatgaacctgaatcgccagcggcatcagcaccttgtcgccttgcgtataatatttgcccatggtgaaaacgggggcgaagaagttgtccatattggccacgtttaaatcaaaactggtgaaactcacccagggattggctgagacgaaaaacatattctcaataaaccctttagggaaataggccaggttttcaccgtaacacgccacatcttgcgaatatatgtgtagaaactgccggaaatcgtcgtggtattcactccagagcgatgaaaacgtttcagtttgctcatggaaaacggtgtaacaagggtgaacactatcccatatcaccagctcaccgtcttcattgccatacgaaattccggatgagcattcatcaggcgggcaagaatgtgaataaaggccggataaaacttgtgcttatttttctttacggtctttaaaaaggccgtaatatccagctgaacggtctggttataggtacattgagcaactgactgaaatgcctcaaaatgttctttacgatgccattgggatatatcaacggtggtatatccagtgatttttttctccattttagcttccttagctcctgaaaatctcgataactcaaaaaatacgcccggtagtgatcttatttcattatggtgaaagttggaacctcttacgtgcccgatcaactcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcggtctcg + + + + + UJHDBOTD_sequence + GGAGtttacggctagctcagtcctaggtatagtgctagcTACTCGAGaccctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgaggcttggattctcaccaataaaaaacgcccggcggcaaccgagcgttctgaacaaatccagatggagttctgaggtcattactggatctatcaacaggagtccaagcgagctcgatatcaaattacgccccgccctgccactcatcgcagtactgttgtaattcattaagcattctgccgacatggaagccatcacaaacggcatgatgaacctgaatcgccagcggcatcagcaccttgtcgccttgcgtataatatttgcccatggtgaaaacgggggcgaagaagttgtccatattggccacgtttaaatcaaaactggtgaaactcacccagggattggctgagacgaaaaacatattctcaataaaccctttagggaaataggccaggttttcaccgtaacacgccacatcttgcgaatatatgtgtagaaactgccggaaatcgtcgtggtattcactccagagcgatgaaaacgtttcagtttgctcatggaaaacggtgtaacaagggtgaacactatcccatatcaccagctcaccgtcttcattgccatacgaaattccggatgagcattcatcaggcgggcaagaatgtgaataaaggccggataaaacttgtgcttatttttctttacggtctttaaaaaggccgtaatatccagctgaacggtctggttataggtacattgagcaactgactgaaatgcctcaaaatgttctttacgatgccattgggatatatcaacggtggtatatccagtgatttttttctccattttagcttccttagctcctgaaaatctcgataactcaaaaaatacgcccggtagtgatcttatttcattatggtgaaagttggaacctcttacgtgcccgatcaactcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcggtctcg + + + + + Scar_A_sequence + GGAG + + + + + Scar_B_sequence + TACT + + + + + module1_Layout + + + + 695.0 + 457.0 + 152.0 + 100.0 + UJHDBOTD_3 + + + + + + + Cir_qxow_Layout + + + + + UJHDBOTD_Layout + + + + 695.0 + 457.0 + 152.0 + 100.0 + container + + + + + 0.0 + 50.0 + 152.0 + 1.0 + backbone + + + + + 1.0 + 0.0 + 50.0 + 100.0 + Scar_A_2 + + + + + + 51.0 + 0.0 + 50.0 + 100.0 + Bba_J23107_3 + + + + + + 101.0 + 0.0 + 50.0 + 100.0 + Scar_B_4 + + + + + + 151.0 + 0.0 + 1.0 + 100.0 + Cir_qxow_5 + + + + + + + Bba_J23107_Layout + + + + + Scar_A_Layout + + + + + Scar_B_Layout + + + diff --git a/tests/pro_in_bb.xml b/tests/pro_in_bb.xml new file mode 100644 index 0000000..773ce8d --- /dev/null +++ b/tests/pro_in_bb.xml @@ -0,0 +1,328 @@ + + + + + module1 + + + + UJHDBOTD_70 + + + + + + + + + Scar_B + 1 + Scar_B + + + + + + + UJHDBOTD + 1 + + + + + + + + J23101_3 + 1 + + + + + + + + Cir_qxow_5 + 1 + + + + + + + + Scar_B_4 + 1 + + + + + + + + Scar_A_2 + 1 + + + + + + + + UJHDBOTDAnnotation0 + 1 + + + + location0 + 1 + 1 + 4 + + + + + + + + + + UJHDBOTDAnnotation1 + 1 + + + + location1 + 1 + 5 + 39 + + + + + + + + + + UJHDBOTDAnnotation3 + 1 + + + + location3 + 1 + 44 + 2095 + + + + + + + + + + UJHDBOTDAnnotation2 + 1 + + + + location2 + 1 + 40 + 43 + + + + + + + + + + UJHDBOTDConstraint3 + 1 + + + + + + + + + UJHDBOTDConstraint2 + 1 + + + + + + + + + UJHDBOTDConstraint1 + 1 + + + + + + + + + + J23101 + 1 + J23101 + + + + + + + Cir_qxow + 1 + Cir + + + + + + + Scar_A + 1 + Scar_A + + + + + + + UJHDBOTD_sequence + GGAGtttacagctagctcagtcctaggtattatgctagcTACTCGAGaccctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgaggcttggattctcaccaataaaaaacgcccggcggcaaccgagcgttctgaacaaatccagatggagttctgaggtcattactggatctatcaacaggagtccaagcgagctcgatatcaaattacgccccgccctgccactcatcgcagtactgttgtaattcattaagcattctgccgacatggaagccatcacaaacggcatgatgaacctgaatcgccagcggcatcagcaccttgtcgccttgcgtataatatttgcccatggtgaaaacgggggcgaagaagttgtccatattggccacgtttaaatcaaaactggtgaaactcacccagggattggctgagacgaaaaacatattctcaataaaccctttagggaaataggccaggttttcaccgtaacacgccacatcttgcgaatatatgtgtagaaactgccggaaatcgtcgtggtattcactccagagcgatgaaaacgtttcagtttgctcatggaaaacggtgtaacaagggtgaacactatcccatatcaccagctcaccgtcttcattgccatacgaaattccggatgagcattcatcaggcgggcaagaatgtgaataaaggccggataaaacttgtgcttatttttctttacggtctttaaaaaggccgtaatatccagctgaacggtctggttataggtacattgagcaactgactgaaatgcctcaaaatgttctttacgatgccattgggatatatcaacggtggtatatccagtgatttttttctccattttagcttccttagctcctgaaaatctcgataactcaaaaaatacgcccggtagtgatcttatttcattatggtgaaagttggaacctcttacgtgcccgatcaactcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcggtctcg + + + + + J23101_sequence + tttacagctagctcagtcctaggtattatgctagc + + + + + Cir_qxow_sequence + CGAGaccctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgaggcttggattctcaccaataaaaaacgcccggcggcaaccgagcgttctgaacaaatccagatggagttctgaggtcattactggatctatcaacaggagtccaagcgagctcgatatcaaattacgccccgccctgccactcatcgcagtactgttgtaattcattaagcattctgccgacatggaagccatcacaaacggcatgatgaacctgaatcgccagcggcatcagcaccttgtcgccttgcgtataatatttgcccatggtgaaaacgggggcgaagaagttgtccatattggccacgtttaaatcaaaactggtgaaactcacccagggattggctgagacgaaaaacatattctcaataaaccctttagggaaataggccaggttttcaccgtaacacgccacatcttgcgaatatatgtgtagaaactgccggaaatcgtcgtggtattcactccagagcgatgaaaacgtttcagtttgctcatggaaaacggtgtaacaagggtgaacactatcccatatcaccagctcaccgtcttcattgccatacgaaattccggatgagcattcatcaggcgggcaagaatgtgaataaaggccggataaaacttgtgcttatttttctttacggtctttaaaaaggccgtaatatccagctgaacggtctggttataggtacattgagcaactgactgaaatgcctcaaaatgttctttacgatgccattgggatatatcaacggtggtatatccagtgatttttttctccattttagcttccttagctcctgaaaatctcgataactcaaaaaatacgcccggtagtgatcttatttcattatggtgaaagttggaacctcttacgtgcccgatcaactcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcggtctcg + + + + + Scar_A_sequence + GGAG + + + + + Scar_B_sequence + TACT + + + + + module1_Layout + + + + 695.0 + 457.0 + 152.0 + 100.0 + UJHDBOTD_70 + + + + + + + Cir_qxow_Layout + + + + + Scar_A_Layout + + + + + UJHDBOTD_Layout + + + + 695.0 + 457.0 + 152.0 + 100.0 + container + + + + + 0.0 + 50.0 + 152.0 + 1.0 + backbone + + + + + 1.0 + 0.0 + 50.0 + 100.0 + Scar_A_2 + + + + + + 51.0 + 0.0 + 50.0 + 100.0 + J23101_3 + + + + + + 101.0 + 0.0 + 50.0 + 100.0 + Scar_B_4 + + + + + + 151.0 + 0.0 + 1.0 + 100.0 + Cir_qxow_5 + + + + + + + Scar_B_Layout + + + + + J23101_Layout + + + diff --git a/tests/rbs_in_bb.xml b/tests/rbs_in_bb.xml new file mode 100644 index 0000000..a1ddebd --- /dev/null +++ b/tests/rbs_in_bb.xml @@ -0,0 +1,328 @@ + + + + + module1 + + + + UJHDBOTD_45 + + + + + + + + + UJHDBOTD + 1 + + + + + + + + Scar_B_2 + 1 + + + + + + + + B0034_3 + 1 + + + + + + + + Cir_qxow_5 + 1 + + + + + + + + Scar_C_4 + 1 + + + + + + + + UJHDBOTDAnnotation3 + 1 + + + + location3 + 1 + 30 + 2081 + + + + + + + + + + UJHDBOTDAnnotation0 + 1 + + + + location0 + 1 + 1 + 4 + + + + + + + + + + UJHDBOTDAnnotation2 + 1 + + + + location2 + 1 + 26 + 29 + + + + + + + + + + UJHDBOTDAnnotation1 + 1 + + + + location1 + 1 + 5 + 25 + + + + + + + + + + UJHDBOTDConstraint3 + 1 + + + + + + + + + UJHDBOTDConstraint1 + 1 + + + + + + + + + UJHDBOTDConstraint2 + 1 + + + + + + + + + + Scar_B + 1 + Scar_B + + + + + + + Scar_C + 1 + Scar_C + + + + + + + B0034 + 1 + B0034 + + + + + + + Cir_qxow + 1 + Cir + + + + + + + Scar_C_sequence + aatg + + + + + B0034_sequence + agagaaagaggagaaatacta + + + + + Cir_qxow_sequence + CGAGaccctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgaggcttggattctcaccaataaaaaacgcccggcggcaaccgagcgttctgaacaaatccagatggagttctgaggtcattactggatctatcaacaggagtccaagcgagctcgatatcaaattacgccccgccctgccactcatcgcagtactgttgtaattcattaagcattctgccgacatggaagccatcacaaacggcatgatgaacctgaatcgccagcggcatcagcaccttgtcgccttgcgtataatatttgcccatggtgaaaacgggggcgaagaagttgtccatattggccacgtttaaatcaaaactggtgaaactcacccagggattggctgagacgaaaaacatattctcaataaaccctttagggaaataggccaggttttcaccgtaacacgccacatcttgcgaatatatgtgtagaaactgccggaaatcgtcgtggtattcactccagagcgatgaaaacgtttcagtttgctcatggaaaacggtgtaacaagggtgaacactatcccatatcaccagctcaccgtcttcattgccatacgaaattccggatgagcattcatcaggcgggcaagaatgtgaataaaggccggataaaacttgtgcttatttttctttacggtctttaaaaaggccgtaatatccagctgaacggtctggttataggtacattgagcaactgactgaaatgcctcaaaatgttctttacgatgccattgggatatatcaacggtggtatatccagtgatttttttctccattttagcttccttagctcctgaaaatctcgataactcaaaaaatacgcccggtagtgatcttatttcattatggtgaaagttggaacctcttacgtgcccgatcaactcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcggtctcg + + + + + UJHDBOTD_sequence + TACTagagaaagaggagaaatactaaatgCGAGaccctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgaggcttggattctcaccaataaaaaacgcccggcggcaaccgagcgttctgaacaaatccagatggagttctgaggtcattactggatctatcaacaggagtccaagcgagctcgatatcaaattacgccccgccctgccactcatcgcagtactgttgtaattcattaagcattctgccgacatggaagccatcacaaacggcatgatgaacctgaatcgccagcggcatcagcaccttgtcgccttgcgtataatatttgcccatggtgaaaacgggggcgaagaagttgtccatattggccacgtttaaatcaaaactggtgaaactcacccagggattggctgagacgaaaaacatattctcaataaaccctttagggaaataggccaggttttcaccgtaacacgccacatcttgcgaatatatgtgtagaaactgccggaaatcgtcgtggtattcactccagagcgatgaaaacgtttcagtttgctcatggaaaacggtgtaacaagggtgaacactatcccatatcaccagctcaccgtcttcattgccatacgaaattccggatgagcattcatcaggcgggcaagaatgtgaataaaggccggataaaacttgtgcttatttttctttacggtctttaaaaaggccgtaatatccagctgaacggtctggttataggtacattgagcaactgactgaaatgcctcaaaatgttctttacgatgccattgggatatatcaacggtggtatatccagtgatttttttctccattttagcttccttagctcctgaaaatctcgataactcaaaaaatacgcccggtagtgatcttatttcattatggtgaaagttggaacctcttacgtgcccgatcaactcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcggtctcg + + + + + Scar_B_sequence + TACT + + + + + module1_Layout + + + + 695.0 + 457.0 + 152.0 + 100.0 + UJHDBOTD_45 + + + + + + + B0034_Layout + + + + + UJHDBOTD_Layout + + + + 695.0 + 457.0 + 152.0 + 100.0 + container + + + + + 0.0 + 50.0 + 152.0 + 1.0 + backbone + + + + + 1.0 + 0.0 + 50.0 + 100.0 + Scar_B_2 + + + + + + 51.0 + 0.0 + 50.0 + 100.0 + B0034_3 + + + + + + 101.0 + 0.0 + 50.0 + 100.0 + Scar_C_4 + + + + + + 151.0 + 0.0 + 1.0 + 100.0 + Cir_qxow_5 + + + + + + + Cir_qxow_Layout + + + + + Scar_B_Layout + + + + + Scar_C_Layout + + + From 161c2dbbf1cf69df462fdb57df6a5e9678095e64 Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Wed, 25 Jun 2025 11:53:44 -0600 Subject: [PATCH 043/100] Working Notebooks --- notebooks/Assembly_to_OT2sim.ipynb | 162 ++- notebooks/Assembly_to_dict.ipynb | 28 +- notebooks/output.json | 2 +- tests/terminator_in_bb.xml | 328 ++++++ tests/validation_assembly1.xml | 1581 ++++++++++++++++++++++++++++ 5 files changed, 2026 insertions(+), 75 deletions(-) create mode 100644 tests/terminator_in_bb.xml create mode 100644 tests/validation_assembly1.xml diff --git a/notebooks/Assembly_to_OT2sim.ipynb b/notebooks/Assembly_to_OT2sim.ipynb index c21e252..8791481 100644 --- a/notebooks/Assembly_to_OT2sim.ipynb +++ b/notebooks/Assembly_to_OT2sim.ipynb @@ -10,7 +10,7 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": 40, "id": "7c2e1157", "metadata": {}, "outputs": [ @@ -18,51 +18,63 @@ "name": "stdout", "output_type": "stream", "text": [ - "Collecting git+https://github.com/MyersResearchGroup/SBOL2Build\n", - " Cloning https://github.com/MyersResearchGroup/SBOL2Build to /private/var/folders/65/dt4l3nw13q57n8x9nlly46640000gn/T/pip-req-build-zd6w75qs\n", - " Running command git clone --filter=blob:none --quiet https://github.com/MyersResearchGroup/SBOL2Build /private/var/folders/65/dt4l3nw13q57n8x9nlly46640000gn/T/pip-req-build-zd6w75qs\n", - " Resolved https://github.com/MyersResearchGroup/SBOL2Build to commit 177a60672c96904f3f911b36648493deb05419ce\n", - " Installing build dependencies ... \u001b[?25ldone\n", - "\u001b[?25h Getting requirements to build wheel ... \u001b[?25ldone\n", - "\u001b[?25h Preparing metadata (pyproject.toml) ... \u001b[?25ldone\n", - "\u001b[?25hRequirement already satisfied: sbol2 in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from sbol2build==0.0b1) (1.2)\n", - "Requirement already satisfied: biopython in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from sbol2build==0.0b1) (1.84)\n", - "Requirement already satisfied: pydna in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from sbol2build==0.0b1) (5.4.0)\n", - "Requirement already satisfied: numpy in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from biopython->sbol2build==0.0b1) (1.26.1)\n", - "Requirement already satisfied: appdirs>=1.4.4 in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from pydna->sbol2build==0.0b1) (1.4.4)\n", - "Requirement already satisfied: networkx>=2.8.8 in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from pydna->sbol2build==0.0b1) (3.2.1)\n", - "Requirement already satisfied: prettytable>=3.5.0 in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from pydna->sbol2build==0.0b1) (3.16.0)\n", - "Requirement already satisfied: pydivsufsort>=0.0.14 in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from pydna->sbol2build==0.0b1) (0.0.18)\n", - "Requirement already satisfied: pyfiglet==0.8.post1 in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from pydna->sbol2build==0.0b1) (0.8.post1)\n", - "Requirement already satisfied: seguid>=0.0.5 in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from pydna->sbol2build==0.0b1) (0.1.0)\n", - "Requirement already satisfied: wcwidth in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from prettytable>=3.5.0->pydna->sbol2build==0.0b1) (0.2.13)\n", - "Requirement already satisfied: wheel in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from pydivsufsort>=0.0.14->pydna->sbol2build==0.0b1) (0.41.2)\n", - "Requirement already satisfied: rdflib>=5.0 in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from sbol2->sbol2build==0.0b1) (6.1.1)\n", - "Requirement already satisfied: python-dateutil in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from sbol2->sbol2build==0.0b1) (2.8.2)\n", - "Requirement already satisfied: deprecated in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from sbol2->sbol2build==0.0b1) (1.2.14)\n", - "Requirement already satisfied: lxml in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from sbol2->sbol2build==0.0b1) (5.2.1)\n", - "Requirement already satisfied: requests in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from sbol2->sbol2build==0.0b1) (2.25.1)\n", - "Requirement already satisfied: urllib3 in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from sbol2->sbol2build==0.0b1) (1.26.5)\n", - "Requirement already satisfied: packaging>=20.0 in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from sbol2->sbol2build==0.0b1) (24.0)\n", - "Requirement already satisfied: isodate in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from rdflib>=5.0->sbol2->sbol2build==0.0b1) (0.6.1)\n", - "Requirement already satisfied: pyparsing in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from rdflib>=5.0->sbol2->sbol2build==0.0b1) (2.4.7)\n", - "Requirement already satisfied: setuptools in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from rdflib>=5.0->sbol2->sbol2build==0.0b1) (68.2.2)\n", - "Requirement already satisfied: wrapt<2,>=1.10 in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from deprecated->sbol2->sbol2build==0.0b1) (1.16.0)\n", - "Requirement already satisfied: six in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from isodate->rdflib>=5.0->sbol2->sbol2build==0.0b1) (1.16.0)\n", - "Requirement already satisfied: chardet<5,>=3.0.2 in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from requests->sbol2->sbol2build==0.0b1) (4.0.0)\n", - "Requirement already satisfied: idna<3,>=2.5 in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from requests->sbol2->sbol2build==0.0b1) (2.10)\n", - "Requirement already satisfied: certifi>=2017.4.17 in /Users/gonzalovidal/opt/anaconda3/envs/GLLDB/lib/python3.9/site-packages (from requests->sbol2->sbol2build==0.0b1) (2024.2.2)\n", + "Collecting git+https://github.com/MyersResearchGroup/SBOL2Build.git@roles-for-RE-and-Ligases\n", + " Cloning https://github.com/MyersResearchGroup/SBOL2Build.git (to revision roles-for-RE-and-Ligases) to c:\\users\\lukef\\appdata\\local\\temp\\pip-req-build-jomazih6\n", + " Resolved https://github.com/MyersResearchGroup/SBOL2Build.git to commit 2c0a53abada3731e81e0b04ac7c391f882c74a70\n", + " Installing build dependencies: started\n", + " Installing build dependencies: finished with status 'done'\n", + " Getting requirements to build wheel: started\n", + " Getting requirements to build wheel: finished with status 'done'\n", + " Installing backend dependencies: started\n", + " Installing backend dependencies: finished with status 'done'\n", + " Preparing metadata (pyproject.toml): started\n", + " Preparing metadata (pyproject.toml): finished with status 'done'\n", + "Requirement already satisfied: biopython in c:\\users\\lukef\\.conda\\envs\\test\\lib\\site-packages (from sbol2build==0.0b1) (1.81)\n", + "Requirement already satisfied: pydna in c:\\users\\lukef\\.conda\\envs\\test\\lib\\site-packages (from sbol2build==0.0b1) (5.0.0)\n", + "Requirement already satisfied: sbol2 in c:\\users\\lukef\\.conda\\envs\\test\\lib\\site-packages (from sbol2build==0.0b1) (1.4.1)\n", + "Requirement already satisfied: numpy in c:\\users\\lukef\\.conda\\envs\\test\\lib\\site-packages (from biopython->sbol2build==0.0b1) (1.21.6)\n", + "Requirement already satisfied: networkx in c:\\users\\lukef\\.conda\\envs\\test\\lib\\site-packages (from pydna->sbol2build==0.0b1) (2.6.3)\n", + "Requirement already satisfied: prettytable in c:\\users\\lukef\\.conda\\envs\\test\\lib\\site-packages (from pydna->sbol2build==0.0b1) (3.7.0)\n", + "Requirement already satisfied: appdirs in c:\\users\\lukef\\.conda\\envs\\test\\lib\\site-packages (from pydna->sbol2build==0.0b1) (1.4.4)\n", + "Requirement already satisfied: requests in c:\\users\\lukef\\.conda\\envs\\test\\lib\\site-packages (from sbol2->sbol2build==0.0b1) (2.31.0)\n", + "Requirement already satisfied: urllib3 in c:\\users\\lukef\\.conda\\envs\\test\\lib\\site-packages (from sbol2->sbol2build==0.0b1) (2.0.7)\n", + "Requirement already satisfied: rdflib>=5.0 in c:\\users\\lukef\\.conda\\envs\\test\\lib\\site-packages (from sbol2->sbol2build==0.0b1) (6.3.2)\n", + "Requirement already satisfied: packaging>=20.0 in c:\\users\\lukef\\.conda\\envs\\test\\lib\\site-packages (from sbol2->sbol2build==0.0b1) (24.0)\n", + "Requirement already satisfied: lxml in c:\\users\\lukef\\.conda\\envs\\test\\lib\\site-packages (from sbol2->sbol2build==0.0b1) (5.3.1)\n", + "Requirement already satisfied: deprecated in c:\\users\\lukef\\.conda\\envs\\test\\lib\\site-packages (from sbol2->sbol2build==0.0b1) (1.2.18)\n", + "Requirement already satisfied: python-dateutil in c:\\users\\lukef\\.conda\\envs\\test\\lib\\site-packages (from sbol2->sbol2build==0.0b1) (2.9.0)\n", + "Requirement already satisfied: pyparsing<4,>=2.1.0 in c:\\users\\lukef\\.conda\\envs\\test\\lib\\site-packages (from rdflib>=5.0->sbol2->sbol2build==0.0b1) (2.4.7)\n", + "Requirement already satisfied: isodate<0.7.0,>=0.6.0 in c:\\users\\lukef\\.conda\\envs\\test\\lib\\site-packages (from rdflib>=5.0->sbol2->sbol2build==0.0b1) (0.6.1)\n", + "Requirement already satisfied: importlib-metadata<5.0.0,>=4.0.0 in c:\\users\\lukef\\.conda\\envs\\test\\lib\\site-packages (from rdflib>=5.0->sbol2->sbol2build==0.0b1) (4.13.0)\n", + "Requirement already satisfied: wrapt<2,>=1.10 in c:\\users\\lukef\\.conda\\envs\\test\\lib\\site-packages (from deprecated->sbol2->sbol2build==0.0b1) (1.16.0)\n", + "Requirement already satisfied: wcwidth in c:\\users\\lukef\\.conda\\envs\\test\\lib\\site-packages (from prettytable->pydna->sbol2build==0.0b1) (0.2.10)\n", + "Requirement already satisfied: six>=1.5 in c:\\users\\lukef\\.conda\\envs\\test\\lib\\site-packages (from python-dateutil->sbol2->sbol2build==0.0b1) (1.17.0)\n", + "Requirement already satisfied: certifi>=2017.4.17 in c:\\users\\lukef\\.conda\\envs\\test\\lib\\site-packages (from requests->sbol2->sbol2build==0.0b1) (2024.8.30)\n", + "Requirement already satisfied: idna<4,>=2.5 in c:\\users\\lukef\\.conda\\envs\\test\\lib\\site-packages (from requests->sbol2->sbol2build==0.0b1) (3.10)\n", + "Requirement already satisfied: charset-normalizer<4,>=2 in c:\\users\\lukef\\.conda\\envs\\test\\lib\\site-packages (from requests->sbol2->sbol2build==0.0b1) (3.4.1)\n", + "Requirement already satisfied: zipp>=0.5 in c:\\users\\lukef\\.conda\\envs\\test\\lib\\site-packages (from importlib-metadata<5.0.0,>=4.0.0->rdflib>=5.0->sbol2->sbol2build==0.0b1) (3.15.0)\n", + "Requirement already satisfied: typing-extensions>=3.6.4 in c:\\users\\lukef\\.conda\\envs\\test\\lib\\site-packages (from importlib-metadata<5.0.0,>=4.0.0->rdflib>=5.0->sbol2->sbol2build==0.0b1) (4.7.1)\n", "Note: you may need to restart the kernel to use updated packages.\n" ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + " Running command git clone --filter=blob:none --quiet https://github.com/MyersResearchGroup/SBOL2Build.git 'C:\\Users\\lukef\\AppData\\Local\\Temp\\pip-req-build-jomazih6'\n", + " Running command git checkout -b roles-for-RE-and-Ligases --track origin/roles-for-RE-and-Ligases\n", + " branch 'roles-for-RE-and-Ligases' set up to track 'origin/roles-for-RE-and-Ligases'.\n", + " Switched to a new branch 'roles-for-RE-and-Ligases'\n" + ] } ], "source": [ - "pip install git+https://github.com/MyersResearchGroup/SBOL2Build" + "pip install git+https://github.com/MyersResearchGroup/SBOL2Build.git@roles-for-RE-and-Ligases" ] }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 41, "id": "69c8a583", "metadata": {}, "outputs": [], @@ -72,7 +84,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 42, "id": "e86cb15c", "metadata": {}, "outputs": [], @@ -82,33 +94,34 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 43, "id": "4f19b39f", "metadata": {}, "outputs": [], "source": [ - "def test_golden_gate(self):\n", + "def test_golden_gate():\n", " pro_doc = sb2.Document()\n", - " pro_doc.read('pro_in_bb.xml')\n", + "\n", + " pro_doc.read('../tests/pro_in_bb.xml')\n", "\n", " #where I am working adding 2 and 3\n", " pro2_doc = sb2.Document()\n", - " pro2_doc.read('pro2_in_bb.xml') #add document\n", + " pro2_doc.read('../tests/pro2_in_bb.xml') #add document\n", "\n", " pro3_doc = sb2.Document()\n", - " pro3_doc.read('pro3_in_bb.xml') #add document\n", + " pro3_doc.read('../tests/pro3_in_bb.xml') #add document\n", " \n", " rbs_doc = sb2.Document()\n", - " rbs_doc.read('rbs_in_bb.xml')\n", + " rbs_doc.read('../tests/rbs_in_bb.xml')\n", "\n", " cds_doc = sb2.Document()\n", - " cds_doc.read('cds_in_bb.xml')\n", + " cds_doc.read('../tests/cds_in_bb.xml')\n", " \n", " ter_doc = sb2.Document()\n", - " ter_doc.read('terminator_in_bb.xml')\n", + " ter_doc.read('../tests/terminator_in_bb.xml')\n", "\n", " bb_doc = sb2.Document()\n", - " bb_doc.read('backbone.xml')\n", + " bb_doc.read('../tests/backbone.xml')\n", "\n", " part_docs = [pro_doc, rbs_doc, cds_doc, ter_doc]\n", "\n", @@ -117,24 +130,63 @@ "\n", " composites = assembly_obj.run()\n", "\n", - " assembly_doc.write('validation_assembly.xml')\n", + " assembly_doc.write('validation_assembly1.xml')\n", "\n", - " sbol_validation_result = assembly_doc.validate()\n", - " self.assertEqual(sbol_validation_result, 'Valid.', 'Assembly SBOL validation failed')" + " sbol_validation_result = assembly_doc.validate()" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 44, "id": "5bf7f217", "metadata": {}, - "outputs": [], - "source": [] + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "adding: UJHDBOTD_70_extracted_part\n", + "adding: UJHDBOTD_70_three_prime_oh\n", + "adding: Scar_B\n", + "adding: J23101\n", + "adding: UJHDBOTD_70_five_prime_oh\n", + "adding: Scar_A\n", + "adding: UJHDBOTD_45_extracted_part\n", + "adding: UJHDBOTD_45_five_prime_oh\n", + "adding: Scar_B\n", + "adding: UJHDBOTD_45_three_prime_oh\n", + "adding: Scar_C\n", + "adding: B0034\n", + "adding: UJHDBOTD_106_extracted_part\n", + "adding: GFP\n", + "adding: UJHDBOTD_106_five_prime_oh\n", + "adding: Scar_C\n", + "adding: UJHDBOTD_106_three_prime_oh\n", + "adding: Scar_D\n", + "adding: UJHDBOTD_134_extracted_part\n", + "adding: B0015\n", + "adding: UJHDBOTD_134_three_prime_oh\n", + "adding: Scar_F\n", + "adding: UJHDBOTD_134_five_prime_oh\n", + "adding: Scar_D\n", + "adding: UJHDBOTD_extracted_backbone\n", + "adding: UJHDBOTD_159_five_prime_oh\n", + "adding: Scar_F\n", + "adding: Cir_qxow\n", + "adding: UJHDBOTD_159_three_prime_oh\n", + "adding: Scar_A\n", + "adding: composite_1\n" + ] + } + ], + "source": [ + "test_golden_gate()" + ] } ], "metadata": { "kernelspec": { - "display_name": "GLLDB", + "display_name": "test", "language": "python", "name": "python3" }, @@ -148,7 +200,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.19" + "version": "3.7.12" } }, "nbformat": 4, diff --git a/notebooks/Assembly_to_dict.ipynb b/notebooks/Assembly_to_dict.ipynb index 968b250..90ffa56 100644 --- a/notebooks/Assembly_to_dict.ipynb +++ b/notebooks/Assembly_to_dict.ipynb @@ -10,21 +10,10 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 43, "id": "df62b558", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "'def dictionaryListCreatorPython(file):\\n import sbol2 as sb2\\n import json\\n\\n # Disable typed URIs for cleaner URI strings\\n sb2.Config.setOption(\\'sbol_typed_uris\\', False)\\n\\n # Read the SBOL document\\n doc = sb2.Document()\\n doc.read(file)\\n\\n #For collective parts knowledge\\n # http://identifiers.org/so/SO:0000031 Aptamer(PART) *added\\n # http://identifiers.org/so/SO:0000316 CDS (PART) *added\\n # http://identifiers.org/so/SO:0001977 Ribonuclease Site (PART) *added\\n # http://identifiers.org/so/SO:0001956 (Protease Site) (PART) *added\\n # http://identifiers.org/so/SO:0000804 (Engineered Region) (PRODUCT)\\n # http://identifiers.org/so/SO:0000188 (intron) (PART) *added\\n # http://identifiers.org/so/SO:0001263: Non-Coding RNA Gene (PART to be checked)*added\\n # http://identifiers.org/so/SO:0000839 (polypeptide region) (PART) *added\\n # http://identifiers.org/so/SO:0000167 (Promoter) *added\\n # http://identifiers.org/so/SO:0000139: Ribosome Entry Site (PART) *added\\n # http://identifiers.org/so/SO:0001979 (RNA Stability Element)*added\\n # http://identifiers.org/so/SO:0001955, # http://identifiers.org/so/SO:0001546 (Protein Stability Element) (2 of them ???)*added\\n\\n\\n # Known SO roles\\n PRODUCT_ROLE = \\'http://identifiers.org/so/SO:0000804\\' # composite product\\n PLASMID_ROLE = \\'http://identifiers.org/SO:0000755\\' # plasmid/backbone\\n ENZYME_ROLE = \\'http://identifiers.org/obi/OBI:0000732\\' #Restriction Enzyme (Check got it from sbol2build)\\n TERMINATOR_ROLE = \\'http://identifiers.org/SO:0000141\\' #Terminator\\n PARTS_ROLE_LIST = [\\'http://identifiers.org/so/SO:0000031\\',\\'http://identifiers.org/so/SO:0000316\\',\\n \\'http://identifiers.org/so/SO:0001977\\', \\'http://identifiers.org/so/SO:0001956\\',\\n \\'http://identifiers.org/so/SO:0000188\\', \\'http://identifiers.org/so/SO:0000839\\',\\n \\'http://identifiers.org/so/SO:0000167\\', \\'http://identifiers.org/so/SO:0000139\\',\\n \\'http://identifiers.org/so/SO:0001979\\', \\'http://identifiers.org/so/SO:0001955\\',\\n \\'http://identifiers.org/so/SO:0001546\\', \\'http://identifiers.org/so/SO:0001263\\'\\n ] #a list of all the roles of the parts\\n product_dicts = []\\n globalEnzyme = None\\n\\n for cd in doc.componentDefinitions:\\n if ENZYME_ROLE in cd.types:\\n globalEnzyme = cd.identity\\n print(f\"Found enzyme: {globalEnzyme}\")\\n\\n #Looks Good\\n if ENZYME_ROLE in cd.types:\\n globalEnzyme = cd.identity\\n\\n if PRODUCT_ROLE in cd.roles:\\n result = {\\n \\'Product\\': cd.identity,\\n \\'Backbone\\': None,\\n \\'PartsList\\': [],\\n \\'Restriction Enzyme\\': None,\\n \\'Terminator\\': None\\n }\\n print(\"Components\")\\n print(cd.components)\\n\\n for comp in cd.components:\\n sub_cd = doc.componentDefinitions.get(comp.definition)\\n if sub_cd is None:\\n continue\\n\\n roles = sub_cd.roles\\n\\n if PLASMID_ROLE in roles:\\n result[\\'Backbone\\'] = sub_cd.identity\\n\\n if any(role in PARTS_ROLE_LIST for role in roles):\\n result[\\'PartsList\\'].append(sub_cd.identity)\\n\\n if not result[\\'Backbone\\']:\\n print(f\"⚠️ Warning: No backbone found for product {cd.displayId}\")\\n if not result[\\'PartsList\\']:\\n print(f\"⚠️ Warning: No parts found for product {cd.displayId}\")\\n\\n product_dicts.append(result)\\n\\n\\n for dict in product_dicts:\\n dict[\\'Restriction Enzyme\\'] = globalEnzyme\\n\\n # Write JSON output\\n with open(\\'output.json\\', \\'w\\') as json_file:\\n json.dump(product_dicts, json_file, indent=4)\\n\\n return product_dicts'" - ] - }, - "execution_count": 21, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "def dictionaryListCreatorPython(file):\n", " import sbol2 as sb2\n", @@ -57,7 +46,7 @@ " print(f\" Types: {cd.types}\")\n", " print(f\" Roles: {cd.roles}\")\n", "\n", - " if ENZYME_ROLE in cd.types:\n", + " if ENZYME_ROLE in cd.roles:\n", " globalEnzyme = cd.identity\n", " print(f\"✅ Found enzyme definition: {globalEnzyme}\")\n", "\n", @@ -104,7 +93,7 @@ }, { "cell_type": "code", - "execution_count": 22, + "execution_count": 44, "id": "cef06312", "metadata": {}, "outputs": [ @@ -115,7 +104,8 @@ "\n", "🔍 Checking Component: BsaI\n", " Types: ['http://www.biopax.org/release/biopax-level3.owl#Protein']\n", - " Roles: []\n", + " Roles: ['http://identifiers.org/obi/OBI:0000732']\n", + "✅ Found enzyme definition: https://SBOL2Build.org/BsaI/1\n", "\n", "🔍 Checking Component: UJHDBOTD_70_extracted_part\n", " Types: ['http://identifiers.org/so/SO:0000987', 'http://www.biopax.org/release/biopax-level3.owl#DnaRegion']\n", @@ -280,16 +270,16 @@ " 'https://sbolcanvas.org/B0015/1',\n", " 'https://sbolcanvas.org/J23101/1',\n", " 'https://sbolcanvas.org/B0034/1'],\n", - " 'Restriction Enzyme': None}]" + " 'Restriction Enzyme': 'https://SBOL2Build.org/BsaI/1'}]" ] }, - "execution_count": 22, + "execution_count": 44, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "dictionaryListCreatorPython(\"../tests/validation_assembly.xml\")" + "dictionaryListCreatorPython(\"../tests/validation_assembly1.xml\")" ] }, { diff --git a/notebooks/output.json b/notebooks/output.json index f73bc40..21e000a 100644 --- a/notebooks/output.json +++ b/notebooks/output.json @@ -8,6 +8,6 @@ "https://sbolcanvas.org/J23101/1", "https://sbolcanvas.org/B0034/1" ], - "Restriction Enzyme": null + "Restriction Enzyme": "https://SBOL2Build.org/BsaI/1" } ] \ No newline at end of file diff --git a/tests/terminator_in_bb.xml b/tests/terminator_in_bb.xml new file mode 100644 index 0000000..704245a --- /dev/null +++ b/tests/terminator_in_bb.xml @@ -0,0 +1,328 @@ + + + + + module1 + + + + UJHDBOTD_134 + + + + + + + + + B0015 + 1 + B0015 + + + + + + + Scar_F + 1 + Scar_F + + + + + + + UJHDBOTD + 1 + + + + + + + + B0015_3 + 1 + + + + + + + + Scar_F_4 + 1 + + + + + + + + Scar_D_2 + 1 + + + + + + + + Cir_qxow_5 + 1 + + + + + + + + UJHDBOTDAnnotation2 + 1 + + + + location2 + 1 + 134 + 137 + + + + + + + + + + UJHDBOTDAnnotation1 + 1 + + + + location1 + 1 + 5 + 133 + + + + + + + + + + UJHDBOTDAnnotation0 + 1 + + + + location0 + 1 + 1 + 4 + + + + + + + + + + UJHDBOTDAnnotation3 + 1 + + + + location3 + 1 + 138 + 2189 + + + + + + + + + + UJHDBOTDConstraint2 + 1 + + + + + + + + + UJHDBOTDConstraint3 + 1 + + + + + + + + + UJHDBOTDConstraint1 + 1 + + + + + + + + + + Scar_D + 1 + Scar_D + + + + + + + Cir_qxow + 1 + Cir + + + + + + + Scar_F_sequence + cgct + + + + + Scar_D_sequence + gctt + + + + + B0015_sequence + ccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctactagagtcacactggctcaccttcgggtgggcctttctgcgtttata + + + + + Cir_qxow_sequence + CGAGaccctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgaggcttggattctcaccaataaaaaacgcccggcggcaaccgagcgttctgaacaaatccagatggagttctgaggtcattactggatctatcaacaggagtccaagcgagctcgatatcaaattacgccccgccctgccactcatcgcagtactgttgtaattcattaagcattctgccgacatggaagccatcacaaacggcatgatgaacctgaatcgccagcggcatcagcaccttgtcgccttgcgtataatatttgcccatggtgaaaacgggggcgaagaagttgtccatattggccacgtttaaatcaaaactggtgaaactcacccagggattggctgagacgaaaaacatattctcaataaaccctttagggaaataggccaggttttcaccgtaacacgccacatcttgcgaatatatgtgtagaaactgccggaaatcgtcgtggtattcactccagagcgatgaaaacgtttcagtttgctcatggaaaacggtgtaacaagggtgaacactatcccatatcaccagctcaccgtcttcattgccatacgaaattccggatgagcattcatcaggcgggcaagaatgtgaataaaggccggataaaacttgtgcttatttttctttacggtctttaaaaaggccgtaatatccagctgaacggtctggttataggtacattgagcaactgactgaaatgcctcaaaatgttctttacgatgccattgggatatatcaacggtggtatatccagtgatttttttctccattttagcttccttagctcctgaaaatctcgataactcaaaaaatacgcccggtagtgatcttatttcattatggtgaaagttggaacctcttacgtgcccgatcaactcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcggtctcg + + + + + UJHDBOTD_sequence + gcttccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctactagagtcacactggctcaccttcgggtgggcctttctgcgtttatacgctCGAGaccctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgaggcttggattctcaccaataaaaaacgcccggcggcaaccgagcgttctgaacaaatccagatggagttctgaggtcattactggatctatcaacaggagtccaagcgagctcgatatcaaattacgccccgccctgccactcatcgcagtactgttgtaattcattaagcattctgccgacatggaagccatcacaaacggcatgatgaacctgaatcgccagcggcatcagcaccttgtcgccttgcgtataatatttgcccatggtgaaaacgggggcgaagaagttgtccatattggccacgtttaaatcaaaactggtgaaactcacccagggattggctgagacgaaaaacatattctcaataaaccctttagggaaataggccaggttttcaccgtaacacgccacatcttgcgaatatatgtgtagaaactgccggaaatcgtcgtggtattcactccagagcgatgaaaacgtttcagtttgctcatggaaaacggtgtaacaagggtgaacactatcccatatcaccagctcaccgtcttcattgccatacgaaattccggatgagcattcatcaggcgggcaagaatgtgaataaaggccggataaaacttgtgcttatttttctttacggtctttaaaaaggccgtaatatccagctgaacggtctggttataggtacattgagcaactgactgaaatgcctcaaaatgttctttacgatgccattgggatatatcaacggtggtatatccagtgatttttttctccattttagcttccttagctcctgaaaatctcgataactcaaaaaatacgcccggtagtgatcttatttcattatggtgaaagttggaacctcttacgtgcccgatcaactcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcggtctcg + + + + + B0015_Layout + + + + + Cir_qxow_Layout + + + + + module1_Layout + + + + 695.0 + 457.0 + 152.0 + 100.0 + UJHDBOTD_134 + + + + + + + UJHDBOTD_Layout + + + + 695.0 + 457.0 + 152.0 + 100.0 + container + + + + + 0.0 + 50.0 + 152.0 + 1.0 + backbone + + + + + 1.0 + 0.0 + 50.0 + 100.0 + Scar_D_2 + + + + + + 51.0 + 0.0 + 50.0 + 100.0 + B0015_3 + + + + + + 101.0 + 0.0 + 50.0 + 100.0 + Scar_F_4 + + + + + + 151.0 + 0.0 + 1.0 + 100.0 + Cir_qxow_5 + + + + + + + Scar_D_Layout + + + + + Scar_F_Layout + + + diff --git a/tests/validation_assembly1.xml b/tests/validation_assembly1.xml new file mode 100644 index 0000000..1237f14 --- /dev/null +++ b/tests/validation_assembly1.xml @@ -0,0 +1,1581 @@ + + + + + + + + 1 + + BsaI_enzyme + + + 1 + + + UJHDBOTD_70_reactant + + + 1 + + + + + + + UJHDBOTD_106_digestion_interaction + 1 + + + + + + UJHDBOTD_106_product + 1 + + + + + + + + UJHDBOTD_106_reactant + 1 + + + + + + + 1 + restriction + + + + + + + + + + + + + UJHDBOTD_134_digestion_product + 1 + + + + testassem + + + UJHDBOTD_45_digestion_interaction + + + + 1 + + + + UJHDBOTD_45_product + + + 1 + + + + + + + UJHDBOTD_45_reactant + 1 + + + + + + 1 + + + restriction + + + + + + + + + UJHDBOTD_134_reactant + + 1 + + + + + + + T4_Ligase + 1 + + + + + + + + + + 1 + + + UJHDBOTD_backbone_digestion_product + + + + + + UJHDBOTD_106_digestion_product + 1 + + + + + + + + + UJHDBOTD_backbone_reactant + + + + + 1 + + + + + + + + 1 + + + UJHDBOTD_106_extracted_part_ligation + + + + + 1 + + + composite_1_product + + + + 1 + composite_1_ligation_interaction + + + + 1 + + + + UJHDBOTD_70_extracted_part_ligation + + + + + + + + 1 + UJHDBOTD_45_extracted_part_ligation + + + + + + + + 1 + + ligation + + + + + + UJHDBOTD_134_extracted_part_ligation + + + 1 + + + + + + UJHDBOTD_extracted_backbone_ligation + 1 + + + + + + + + + 1 + UJHDBOTD_134_digestion_interaction + + + + restriction + + 1 + + + + + + + + 1 + + + + UJHDBOTD_134_product + + + + + 1 + + UJHDBOTD_134_reactant + + + + + + + + + composite_1 + + + + 1 + + + + + + + 1 + + + UJHDBOTD_45_digestion_product + + + + + + 1 + + + + UJHDBOTD_70_digestion_product + + + + + + 1 + + UJHDBOTD_106_reactant + + + + + + + + + + + 1 + UJHDBOTD_45_reactant + + + + + + + + + + + UJHDBOTD_70_reactant + 1 + + + UJHDBOTD_70_digestion_interaction + + 1 + + + + restriction + 1 + + + + + + + + + UJHDBOTD_70_product + + 1 + + + + + + + + + + UJHDBOTD_backbone_reactant + + 1 + + + + + UJHDBOTD_digestion_interaction + 1 + + + + + + restriction + 1 + + + + + + + 1 + + + UJHDBOTD_backbone_product + + + + + + + + BsaI + 1 + + BsaI + + + Restriction enzyme BsaI from REBASE. + + + + + + + + + + 40 + three_prime_oh_location + 1 + + 43 + + + three_prime_overhang + 1 + + + + + + + + + 1 + + J23101_3 + + + + + UJHDBOTD_70_three_prime_oh_component + 1 + + + + + + + + + + UJHDBOTD_70_five_prime_oh_component + + 1 + + + + + + + 1 + five_prime_overhang + + + + 1 + + 1 + five_prime_oh_location + 4 + + + + + + + + + UJHDBOTD_70_extracted_part + + + 1 + + + UJHDBOTD_70_part + + + UJHDBOTD_70_part_location + 39 + 1 + + 5 + + + + + + 1 + + + + + + + + + 1 + UJHDBOTD_70_three_prime_oh + + + + 1 + + Scar_B + + Scar_B + + + + + 1 + J23101 + + J23101 + + + + + + + + UJHDBOTD_70_five_prime_oh + 1 + + + + + Scar_A + + + + 1 + + Scar_A + + + + + + + UJHDBOTD_45_part + + + + 5 + 25 + UJHDBOTD_45_part_location + + 1 + + + + 1 + + + + + + + + 1 + + + + 29 + 1 + 26 + + three_prime_oh_location + + + + three_prime_overhang + + + + + + 1 + + UJHDBOTD_45_three_prime_oh_component + + + + + UJHDBOTD_45_extracted_part + + + + + + UJHDBOTD_45_five_prime_oh_component + 1 + + + + 1 + + + + + + B0034_3 + 1 + + + + + + + five_prime_overhang + + 1 + + + 1 + + five_prime_oh_location + 1 + + 4 + + + + + + + + + + + UJHDBOTD_45_five_prime_oh + + 1 + + + + + + + 1 + UJHDBOTD_45_three_prime_oh + + + + + Scar_C + + + Scar_C + + 1 + + + + B0034 + + + + 1 + B0034 + + + + UJHDBOTD_106_extracted_part + + + three_prime_overhang + + + + + 1 + 725 + + three_prime_oh_location + 722 + + + + 1 + + + + + + + 1 + + + UJHDBOTD_106_five_prime_oh_component + + + + + + + five_prime_overhang + 1 + + + + + + 4 + 1 + five_prime_oh_location + 1 + + + + + + + + GFP_3 + 1 + + + + + + + + + UJHDBOTD_106_part + + 1 + + + + 721 + UJHDBOTD_106_part_location + 1 + 5 + + + + + + + + + + UJHDBOTD_106_three_prime_oh_component + + 1 + + + + 1 + + + + + + + 1 + GFP + + GFP + + + 1 + + + + UJHDBOTD_106_five_prime_oh + + + + + + + + 1 + + UJHDBOTD_106_three_prime_oh + + + + 1 + + Scar_D + + Scar_D + + + + + + + + + + + UJHDBOTD_134_part_location + 1 + 133 + 5 + + + + + 1 + UJHDBOTD_134_part + + + + + + + five_prime_overhang + + + 1 + + + 4 + five_prime_oh_location + 1 + + + 1 + + + + + 1 + UJHDBOTD_134_extracted_part + + + + + B0015_3 + 1 + + + + + + + + + + UJHDBOTD_134_five_prime_oh_component + + 1 + + + + + + + three_prime_overhang + 1 + + + + three_prime_oh_location + + 137 + 1 + 134 + + + + + + + + + UJHDBOTD_134_three_prime_oh_component + + 1 + + + + + + + B0015 + + B0015 + 1 + + + + + + + + + 1 + + + UJHDBOTD_134_three_prime_oh + + + + 1 + Scar_F + + + + Scar_F + + + + + + + 1 + UJHDBOTD_134_five_prime_oh + + + + UJHDBOTD_extracted_backbone + + + + + three_prime_overhang + 1 + + + + 2200 + three_prime_oh_location + 2203 + 1 + + + + + + 1 + + + + + + 1 + + UJHDBOTD_159_five_prime_oh_component + + + + + + + + + + 5 + 1 + + UJHDBOTD_159_backbone_location + + 2199 + + + 1 + + UJHDBOTD_159_backbone + + + + + + 1 + + + Cir_qxow_5 + + + + + + UJHDBOTD_159_three_prime_oh_component + + 1 + + + + + + + + + 1 + + 4 + 1 + five_prime_oh_location + + + + + five_prime_overhang + 1 + + + + + + + + + + 1 + + UJHDBOTD_159_five_prime_oh + + + + + Cir_qxow + Cir + + + + 1 + + + + + + 1 + + UJHDBOTD_159_three_prime_oh + + + + + + 1 + T4_Ligase + T4_Ligase + + + + Ligation_Scar_A + + 1 + + + + + + + + + + + + Ligation_Scar_B + 1 + + + + + + Ligation_Scar_C + + + 1 + + + + + + Ligation_Scar_D + + + + + + 1 + + + Ligation_Scar_E + + + + + + + 1 + + + + + + Cir_qxow_5_annotation + + + 5 + 2199 + + + Cir_qxow_5_location + 1 + + + + 1 + + + + + + + + Ligation_Scar_B + + 1 + + + + + 1 + + + + 1 + + GFP_3_location + 2268 + 2984 + + + + GFP_3_annotation + + + + + + + 1 + + B0034 + + + + composite_1 + + + 1 + + + + J23101 + + + + + Ligation_Scar_E_annotation + + + + + Ligation_Scar_E_location + 1 + 2985 + + 2988 + + + + 1 + + + + + + 1 + + + 1 + Ligation_Scar_B_location + 2203 + + 2200 + + + + + Ligation_Scar_B_annotation + + + + + + 1 + J23101_3_annotation + + + + + 1 + 2238 + 2204 + J23101_3_location + + + + + + + + + + + Cir_qxow + 1 + + + + + + 1 + Ligation_Scar_D + + + + + + + + GFP + + + 1 + + + + + + + + + B0015 + 1 + + + 1 + + + 1 + + + + Ligation_Scar_C_location + + 2242 + + 1 + 2239 + + + Ligation_Scar_C_annotation + + + + + + + Ligation_Scar_A + 1 + + + + + + + + + + Ligation_Scar_E + 1 + + + + + + + + + Ligation_Scar_C + 1 + + + + + + + + + 1 + + 2264 + Ligation_Scar_D_location + 2267 + + + + 1 + Ligation_Scar_D_annotation + + + + + + 1 + Ligation_Scar_A_annotation + + + + 1 + + + 1 + Ligation_Scar_A_location + 4 + + + + + + + + + + + 2243 + + + 1 + B0034_3_location + 2263 + + + 1 + B0034_3_annotation + + + + + + + 1 + + + + + 3117 + 2989 + 1 + B0015_3_location + + + + + B0015_3_annotation + + + composite_1 + + + + GGAGtttacagctagctcagtcctaggtattatgctagcTACT + 1 + + UJHDBOTD_70_extracted_part_seq + + + + + TACT + + UJHDBOTD_70_three_prime_oh_sequence + 1 + + + + TACT + + Scar_B_sequence + + + tttacagctagctcagtcctaggtattatgctagc + + + J23101_sequence + + + + + + 1 + UJHDBOTD_70_five_prime_oh_sequence + GGAG + + + GGAG + + Scar_A_sequence + + + + + TACTagagaaagaggagaaatactaaatg + UJHDBOTD_45_extracted_part_seq + 1 + + + + 1 + UJHDBOTD_45_five_prime_oh_sequence + + + + TACT + + + + + + aatg + 1 + UJHDBOTD_45_three_prime_oh_sequence + + + aatg + Scar_C_sequence + + + + + B0034_sequence + + + agagaaagaggagaaatacta + + + 1 + UJHDBOTD_106_extracted_part_seq + aatggtgagcaagggcgaggagctgttcaccggggtggtgcccatcctggtcgagctggacggcgacgtaaacggccacaagttcagcgtgtccggcgagggcgagggcgatgccacctacggcaagctgaccctgaagttcatctgcaccaccggcaagctgcccgtgccctggcccaccctcgtgaccaccttcagctacggcgtgcagtgcttcagccgctaccccgaccacatgaagcagcacgacttcttcaagtccgccatgcccgaaggctacgtccaggagcgcaccatcttcttcaaggacgacggcaactacaagacccgcgccgaggtgaagttcgagggcgacaccctggtgaaccgcatcgagctgaagggcatcgacttcaaggaggacggcaacatcctggggcacaagctggagtacaactacaacagccacaacgtctatatcatggccgacaagcagaagaacggcatcaaggtgaacttcaagatccgccacaacatcgaggacggcagcgtgcagctcgccgaccactaccagcagaacacccccatcggcgacggccccgtgctgctgcccgacaaccactacctgagcacccagtccgccctgagcaaagaccccaacgagaagcgcgatcacatggtcctgctggagttcgtgaccgccgccgggatcactcacggcatggacgagctgtacaagtaagctt + + + + + gtgagcaagggcgaggagctgttcaccggggtggtgcccatcctggtcgagctggacggcgacgtaaacggccacaagttcagcgtgtccggcgagggcgagggcgatgccacctacggcaagctgaccctgaagttcatctgcaccaccggcaagctgcccgtgccctggcccaccctcgtgaccaccttcagctacggcgtgcagtgcttcagccgctaccccgaccacatgaagcagcacgacttcttcaagtccgccatgcccgaaggctacgtccaggagcgcaccatcttcttcaaggacgacggcaactacaagacccgcgccgaggtgaagttcgagggcgacaccctggtgaaccgcatcgagctgaagggcatcgacttcaaggaggacggcaacatcctggggcacaagctggagtacaactacaacagccacaacgtctatatcatggccgacaagcagaagaacggcatcaaggtgaacttcaagatccgccacaacatcgaggacggcagcgtgcagctcgccgaccactaccagcagaacacccccatcggcgacggccccgtgctgctgcccgacaaccactacctgagcacccagtccgccctgagcaaagaccccaacgagaagcgcgatcacatggtcctgctggagttcgtgaccgccgccgggatcactcacggcatggacgagctgtacaagtaa + + + GFP_sequence + + + aatg + UJHDBOTD_106_five_prime_oh_sequence + 1 + + + + + + UJHDBOTD_106_three_prime_oh_sequence + + + 1 + gctt + + + + gctt + Scar_D_sequence + + + + + UJHDBOTD_134_extracted_part_seq + 1 + + gcttccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctactagagtcacactggctcaccttcgggtgggcctttctgcgtttatacgct + + + + + B0015_sequence + ccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctactagagtcacactggctcaccttcgggtgggcctttctgcgtttata + + + + UJHDBOTD_134_three_prime_oh_sequence + + 1 + + + cgct + + + Scar_F_sequence + + cgct + + + + + UJHDBOTD_134_five_prime_oh_sequence + + + gctt + 1 + + + + + cgctgcatgaagagcctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgagtcccgtcaagtcagcgtaatgctctgccagtgttacaaccaattaaccaattctgattagaaaaactcatcgagcatcaaatgaaactgcaatttattcatatcaggattatcaataccatatttttgaaaaagccgtttctgtaatgaaggagaaaactcaccgaggcagttccataggatggcaagatcctggtatcggtctgcgattccgactcgtccaacatcaatacaacctattaatttcccctcgtcaaaaataaggttatcaagtgagaaatcaccatgagtgacgactgaatccggtgagaatggcaaaagcttatgcatttctttccagacttgttcaacaggccagccattacgctcgtcatcaaaatcactcgcatcaaccaaaccgttattcattcgtgattgcgcctgagcgagacgaaatacgcgatcgctgttaaaaggacaattacaaacaggaatcgaatgcaaccggcgcaggaacactgccagcgcatcaacaatattttcacctgaatcaggatattcttctaatacctggaatgctgttttcccggggatcgcagtggtgagtaaccatgcatcatcaggagtacggataaaatgcttgatggtcggaagaggcataaattccgtcagccagtttagtctgaccatctcatctgtaacatcattggcaacgctacctttgccatgtttcagaaacaactctggcgcatcgggcttcccatacaatcgatagattgtcgcacctgattgcccgacattatcgcgagcccatttatacccatataaatcagcatccatgttggaatttaatcgcggcctggagcaagacgtttcccgttgaatatggctcataacaccccttgtattactgtttatgtaagcagacagttttattgttcatgatgatatatttttatcttgtgcaatgtaacatcagagattttgagacacaacgtggctttgttgaataaatcgaacttttgctgagttgaaggatcagctcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcgctcttcaatgggag + UJHDBOTD_extracted_backbone_seq + 1 + + + + + cgct + 1 + + UJHDBOTD_159_five_prime_oh_sequence + + + + gcatgaagagcctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgagtcccgtcaagtcagcgtaatgctctgccagtgttacaaccaattaaccaattctgattagaaaaactcatcgagcatcaaatgaaactgcaatttattcatatcaggattatcaataccatatttttgaaaaagccgtttctgtaatgaaggagaaaactcaccgaggcagttccataggatggcaagatcctggtatcggtctgcgattccgactcgtccaacatcaatacaacctattaatttcccctcgtcaaaaataaggttatcaagtgagaaatcaccatgagtgacgactgaatccggtgagaatggcaaaagcttatgcatttctttccagacttgttcaacaggccagccattacgctcgtcatcaaaatcactcgcatcaaccaaaccgttattcattcgtgattgcgcctgagcgagacgaaatacgcgatcgctgttaaaaggacaattacaaacaggaatcgaatgcaaccggcgcaggaacactgccagcgcatcaacaatattttcacctgaatcaggatattcttctaatacctggaatgctgttttcccggggatcgcagtggtgagtaaccatgcatcatcaggagtacggataaaatgcttgatggtcggaagaggcataaattccgtcagccagtttagtctgaccatctcatctgtaacatcattggcaacgctacctttgccatgtttcagaaacaactctggcgcatcgggcttcccatacaatcgatagattgtcgcacctgattgcccgacattatcgcgagcccatttatacccatataaatcagcatccatgttggaatttaatcgcggcctggagcaagacgtttcccgttgaatatggctcataacaccccttgtattactgtttatgtaagcagacagttttattgttcatgatgatatatttttatcttgtgcaatgtaacatcagagattttgagacacaacgtggctttgttgaataaatcgaacttttgctgagttgaaggatcagctcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcgctcttcaatg + + Cir_qxow_sequence + + + 1 + + + UJHDBOTD_159_three_prime_oh_sequence + ggag + + + + + Ligation_Scar_A_sequence + 1 + + cgct + + + ggag + + + Ligation_Scar_B_sequence + 1 + + + + TACT + + Ligation_Scar_C_sequence + 1 + + + + + 1 + aatg + Ligation_Scar_D_sequence + + + Ligation_Scar_E_sequence + + 1 + gctt + + + + 1 + composite_1_seq + cgctgcatgaagagcctgcagtccggcaaaaaagggcaaggtgtcaccaccctgccctttttctttaaaaccgaaaagattacttcgcgttatgcaggcttcctcgctcactgactcgctgcgctcggtcgttcggctgcggcgagcggtatcagctcactcaaaggcggtaatacggttatccacagaatcaggggataacgcaggaaagaacatgtgagcaaaaggccagcaaaaggccaggaaccgtaaaaaggccgcgttgctggcgtttttccacaggctccgcccccctgacgagcatcacaaaaatcgacgctcaagtcagaggtggcgaaacccgacaggactataaagataccaggcgtttccccctggaagctccctcgtgcgctctcctgttccgaccctgccgcttaccggatacctgtccgcctttctcccttcgggaagcgtggcgctttctcatagctcacgctgtaggtatctcagttcggtgtaggtcgttcgctccaagctgggctgtgtgcacgaaccccccgttcagcccgaccgctgcgccttatccggtaactatcgtcttgagtccaacccggtaagacacgacttatcgccactggcagcagccactggtaacaggattagcagagcgaggtatgtaggcggtgctacagagttcttgaagtggtggcctaactacggctacactagaagaacagtatttggtatctgcgctctgctgaagccagttaccttcggaaaaagagttggtagctcttgatccggcaaacaaaccaccgctggtagcggtggtttttttgtttgcaagcagcagattacgcgcagaaaaaaaggatctcaagaagatcctttgatcttttctacggggtctgacgctcagtggaacgaaaactcacgttaagggattttggtcatgagattatcaaaaaggatcttcacctagatccttttaaattaaaaatgaagttttaaatcaatctaaagtatatatgagtaaacttggtctgacagctcgagtcccgtcaagtcagcgtaatgctctgccagtgttacaaccaattaaccaattctgattagaaaaactcatcgagcatcaaatgaaactgcaatttattcatatcaggattatcaataccatatttttgaaaaagccgtttctgtaatgaaggagaaaactcaccgaggcagttccataggatggcaagatcctggtatcggtctgcgattccgactcgtccaacatcaatacaacctattaatttcccctcgtcaaaaataaggttatcaagtgagaaatcaccatgagtgacgactgaatccggtgagaatggcaaaagcttatgcatttctttccagacttgttcaacaggccagccattacgctcgtcatcaaaatcactcgcatcaaccaaaccgttattcattcgtgattgcgcctgagcgagacgaaatacgcgatcgctgttaaaaggacaattacaaacaggaatcgaatgcaaccggcgcaggaacactgccagcgcatcaacaatattttcacctgaatcaggatattcttctaatacctggaatgctgttttcccggggatcgcagtggtgagtaaccatgcatcatcaggagtacggataaaatgcttgatggtcggaagaggcataaattccgtcagccagtttagtctgaccatctcatctgtaacatcattggcaacgctacctttgccatgtttcagaaacaactctggcgcatcgggcttcccatacaatcgatagattgtcgcacctgattgcccgacattatcgcgagcccatttatacccatataaatcagcatccatgttggaatttaatcgcggcctggagcaagacgtttcccgttgaatatggctcataacaccccttgtattactgtttatgtaagcagacagttttattgttcatgatgatatatttttatcttgtgcaatgtaacatcagagattttgagacacaacgtggctttgttgaataaatcgaacttttgctgagttgaaggatcagctcgagtgccacctgacgtctaagaaaccattattatcatgacattaacctataaaaataggcgtatcacgaggcagaatttcagataaaaaaaatccttagctttcgctaaggatgatttctggaattcgctcttcaatgGGAGtttacagctagctcagtcctaggtattatgctagcTACTagagaaagaggagaaatactaaatggtgagcaagggcgaggagctgttcaccggggtggtgcccatcctggtcgagctggacggcgacgtaaacggccacaagttcagcgtgtccggcgagggcgagggcgatgccacctacggcaagctgaccctgaagttcatctgcaccaccggcaagctgcccgtgccctggcccaccctcgtgaccaccttcagctacggcgtgcagtgcttcagccgctaccccgaccacatgaagcagcacgacttcttcaagtccgccatgcccgaaggctacgtccaggagcgcaccatcttcttcaaggacgacggcaactacaagacccgcgccgaggtgaagttcgagggcgacaccctggtgaaccgcatcgagctgaagggcatcgacttcaaggaggacggcaacatcctggggcacaagctggagtacaactacaacagccacaacgtctatatcatggccgacaagcagaagaacggcatcaaggtgaacttcaagatccgccacaacatcgaggacggcagcgtgcagctcgccgaccactaccagcagaacacccccatcggcgacggccccgtgctgctgcccgacaaccactacctgagcacccagtccgccctgagcaaagaccccaacgagaagcgcgatcacatggtcctgctggagttcgtgaccgccgccgggatcactcacggcatggacgagctgtacaagtaagcttccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctactagagtcacactggctcaccttcgggtgggcctttctgcgtttata + + + + From f9adb1a988d857bf5e4b0020099892d751ce75c9 Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Wed, 2 Jul 2025 09:48:00 -0600 Subject: [PATCH 044/100] Assemblies fully tested and functional for taking json --- scripts/SBOL_xlsx5.xlsx | Bin 0 -> 6197 bytes scripts/output.json | 13 +++++++++++++ scripts/run_sbol2assembly_libre.py | 15 ++++++++++----- 3 files changed, 23 insertions(+), 5 deletions(-) create mode 100644 scripts/SBOL_xlsx5.xlsx create mode 100644 scripts/output.json diff --git a/scripts/SBOL_xlsx5.xlsx b/scripts/SBOL_xlsx5.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..4e8ecee8a8cd0fc026c577db85c045c5b66b2b55 GIT binary patch literal 6197 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 literal 0 HcmV?d00001 diff --git a/scripts/output.json b/scripts/output.json new file mode 100644 index 0000000..21e000a --- /dev/null +++ b/scripts/output.json @@ -0,0 +1,13 @@ +[ + { + "Product": "https://SBOL2Build.org/composite_1/1", + "Backbone": "https://sbolcanvas.org/Cir_qxow/1", + "PartsList": [ + "https://sbolcanvas.org/GFP/1", + "https://sbolcanvas.org/B0015/1", + "https://sbolcanvas.org/J23101/1", + "https://sbolcanvas.org/B0034/1" + ], + "Restriction Enzyme": "https://SBOL2Build.org/BsaI/1" + } +] \ No newline at end of file diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py index c08d600..c3f1923 100644 --- a/scripts/run_sbol2assembly_libre.py +++ b/scripts/run_sbol2assembly_libre.py @@ -154,7 +154,7 @@ def __init__(self, assemblies:List[Dict], #backbone parts self.backbone_set.add(assembly["Backbone"]) #add enzymes - self.restriction_enzyme_set.add(assembly["RestrictionEnzyme"]) + self.restriction_enzyme_set.add(assembly["Restriction Enzyme"]) self.combined_set = self.parts_set.union(self.backbone_set) @@ -211,7 +211,7 @@ def run(self, protocol: protocol_api.ProtocolContext): liquid_transfer(pipette, volume_dd_h2o, dd_h2o, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate) liquid_transfer(pipette, self.volume_t4_dna_ligase_buffer, t4_dna_ligase_buffer, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_t4_dna_ligase_buffer) liquid_transfer(pipette, self.volume_t4_dna_ligase, t4_dna_ligase, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_t4_dna_ligase) - liquid_transfer(pipette, self.volume_restriction_enzyme, tem_mod_block[self.dict_of_parts_in_temp_mod_position[assembly['RestrictionEnzyme']]], thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_restriction_enzyme) + liquid_transfer(pipette, self.volume_restriction_enzyme, tem_mod_block[self.dict_of_parts_in_temp_mod_position[assembly['Restriction Enzyme']]], thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_restriction_enzyme) #pippeting backbone liquid_transfer(pipette, self.volume_part, tem_mod_block[self.dict_of_parts_in_temp_mod_position[assembly["Backbone"]]], thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_part) #pippeting parts @@ -292,9 +292,14 @@ def get_xlsx_output(self, name:str): 'apiLevel': '2.13'} def run(protocol= protocol_api.ProtocolContext): - # Load dictionary from XML file - xml_file = "RyanTest.xml" - assembly_sbol2_uris = dictionaryListCreatorPython(xml_file) + + #Take the Json file from Assembly to Dict then set it to assembly_sbol2_uris + #I am taking in the name of Json file and make it assembly + #import using pandas or somthing to convert to usable dictionary + import json + with open("output.json", "r") as f: + assembly_sbol2_uris = json.load(f) + pudu_sbol2_assembly = sbol2assembly(assemblies=assembly_sbol2_uris) pudu_sbol2_assembly.run(protocol) From 536f1f3ddca33320c3ac9c1815d3a855a60578d5 Mon Sep 17 00:00:00 2001 From: LukeDysart17 Date: Thu, 3 Jul 2025 12:03:43 -0600 Subject: [PATCH 045/100] Luke Dysart final push --- scripts/SBOL_xlsx5.xlsx | Bin 6197 -> 6198 bytes scripts/output.json | 4 ++-- scripts/run_sbol2assembly.py | 18 ++++++++++++++++++ scripts/sbol2_assembly_output.xlsx.xlsx | Bin 0 -> 6199 bytes 4 files changed, 20 insertions(+), 2 deletions(-) create mode 100644 scripts/run_sbol2assembly.py create mode 100644 scripts/sbol2_assembly_output.xlsx.xlsx diff --git a/scripts/SBOL_xlsx5.xlsx b/scripts/SBOL_xlsx5.xlsx index 4e8ecee8a8cd0fc026c577db85c045c5b66b2b55..6e7e34d369bdbfd8ad0162572d69f44f6da6a685 100644 GIT binary patch delta 478 zcmV<40U`diFt#wTfCmnGD3jhl0RRA20{{RN0F%EK7L%k0{25sgj3+((?0P<&cKNKM z4DgSubr0Rie1KlFxd=%J1m~t11hWPa76BNxh~sqJ*E$}|N+x}+lVPm4i>JQQ=`hlh zG!iL)foqR;C;EA_;2J+t4=u3Syms!M*sd1-Ww@{FJa zG&e%(wnp!ZS$dBWAD9-bGa72N0gtB5^;N}xE#=0+t1}i{kl>R@(w=f#qg4o&V(j?} z6!Teh=qN6YQ!K>Nwb(NL&04?(A$M3oV1fmPx4_hnM6^c=J|gXp>jr?}7&=g(gU5N6 zym^`amQx0NuqsC?Dn1^J0dYf)uwYnWUs#cC6m6^=`hxl zG!iL)sh-T0CjkHeQ33z}5dZ)HWN%|oa&K^RFJo_VWiEJaY@L!{OT#b}#oq1&{13)r&x%k+hEK1H`@R%2)V}!0uwAS+yhfP643!E_=vPWt{DJ=V`xBu4j$)O zj!)hIPWh`1gL39nGISQMT94xB-g!A1+qTWx$zYB7bNsn{c^g(urS5OV0oA48lsjNb z!MM7_=S4hR!+coA8?PmZ$1dtu-VTfG`#>Zy0NuwuDj$=l=hXt$1u3Q}nWdyy', +'description': 'Automated DNA assembly from SBOL2 Assembly Plan', +'apiLevel': '2.13'} + +def run(protocol= protocol_api.ProtocolContext): + + pudu_sbol2_assembly = sbol2_DNA_Assembly(assembly_JSON) + pudu_sbol2_assembly.run(protocol) + pudu_sbol2_assembly.get_xlsx_output('sbol2_assembly_output.xlsx') \ No newline at end of file diff --git a/scripts/sbol2_assembly_output.xlsx.xlsx b/scripts/sbol2_assembly_output.xlsx.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..da5aac1f12f6d42b6713d675926befd77352af1f GIT binary patch literal 6199 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 A^Z)<= literal 0 HcmV?d00001 From d972b3ea1be9f30e80b0965a5ed240dcac5ae614 Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Wed, 23 Jul 2025 09:54:32 -0600 Subject: [PATCH 046/100] Delete scripts/LukeTestingNotebook.ipynb --- scripts/LukeTestingNotebook.ipynb | 68 ------------------------------- 1 file changed, 68 deletions(-) delete mode 100644 scripts/LukeTestingNotebook.ipynb diff --git a/scripts/LukeTestingNotebook.ipynb b/scripts/LukeTestingNotebook.ipynb deleted file mode 100644 index b177862..0000000 --- a/scripts/LukeTestingNotebook.ipynb +++ /dev/null @@ -1,68 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": null, - "id": "68d30519", - "metadata": {}, - "outputs": [ - { - "ename": "FileNotFoundError", - "evalue": "[Errno 2] No such file or directory: 'C:\\\\Users\\\\lukef\\\\OneDrive\\\\Desktop\\\\hmwk0\\\\CSCI_1300F\\\\Work\\\\PUDUWork\\\\PUDU\\\\RyanTest.xml'", - "output_type": "error", - "traceback": [ - "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[1;31mFileNotFoundError\u001b[0m Traceback (most recent call last)", - "\u001b[1;32m~\\AppData\\Local\\Temp\\ipykernel_3980\\1001182099.py\u001b[0m in \u001b[0;36m\u001b[1;34m\u001b[0m\n\u001b[0;32m 14\u001b[0m \u001b[0mcd\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mfeatures\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 15\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m---> 16\u001b[1;33m \u001b[0mdictionaryCreatorPython\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m'RyanTest.xml'\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m", - "\u001b[1;32m~\\AppData\\Local\\Temp\\ipykernel_3980\\1001182099.py\u001b[0m in \u001b[0;36mdictionaryCreatorPython\u001b[1;34m(file)\u001b[0m\n\u001b[0;32m 3\u001b[0m \u001b[1;31m#given code from website\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 4\u001b[0m \u001b[0mdoc\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0msb2\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mDocument\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 5\u001b[1;33m \u001b[0mdoc\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mread\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mfile\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 6\u001b[0m \u001b[1;31m#Loops through commponetDefinition\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 7\u001b[0m \u001b[1;31m#for DNA\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", - "\u001b[1;32mc:\\Users\\lukef\\.conda\\envs\\test\\lib\\site-packages\\sbol2\\document.py\u001b[0m in \u001b[0;36mread\u001b[1;34m(self, filename)\u001b[0m\n\u001b[0;32m 424\u001b[0m \"\"\"\n\u001b[0;32m 425\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mclear\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 426\u001b[1;33m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mappend\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mfilename\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0moverwrite\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;32mFalse\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 427\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 428\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mreadString\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0msbol_str\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", - "\u001b[1;32mc:\\Users\\lukef\\.conda\\envs\\test\\lib\\site-packages\\sbol2\\document.py\u001b[0m in \u001b[0;36mappend\u001b[1;34m(self, filename, overwrite)\u001b[0m\n\u001b[0;32m 461\u001b[0m \"\"\"\n\u001b[0;32m 462\u001b[0m \u001b[0mnew_graph\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mrdflib\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mGraph\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 463\u001b[1;33m \u001b[0mnew_graph\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mparse\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mfilename\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mformat\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;34m'application/rdf+xml'\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 464\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_append_graph\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mnew_graph\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0moverwrite\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 465\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n", - "\u001b[1;32mc:\\Users\\lukef\\.conda\\envs\\test\\lib\\site-packages\\rdflib\\graph.py\u001b[0m in \u001b[0;36mparse\u001b[1;34m(self, source, publicID, format, location, file, data, **args)\u001b[0m\n\u001b[0;32m 1474\u001b[0m \u001b[0mfile\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mfile\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 1475\u001b[0m \u001b[0mdata\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mdata\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m-> 1476\u001b[1;33m \u001b[0mformat\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mformat\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 1477\u001b[0m )\n\u001b[0;32m 1478\u001b[0m \u001b[1;32mif\u001b[0m \u001b[0mformat\u001b[0m \u001b[1;32mis\u001b[0m \u001b[1;32mNone\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", - "\u001b[1;32mc:\\Users\\lukef\\.conda\\envs\\test\\lib\\site-packages\\rdflib\\parser.py\u001b[0m in \u001b[0;36mcreate_input_source\u001b[1;34m(source, publicID, location, file, data, format)\u001b[0m\n\u001b[0;32m 418\u001b[0m \u001b[0mformat\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mformat\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 419\u001b[0m \u001b[0minput_source\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0minput_source\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 420\u001b[1;33m \u001b[0mlocation\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mlocation\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 421\u001b[0m )\n\u001b[0;32m 422\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n", - "\u001b[1;32mc:\\Users\\lukef\\.conda\\envs\\test\\lib\\site-packages\\rdflib\\parser.py\u001b[0m in \u001b[0;36m_create_input_source_from_location\u001b[1;34m(file, format, input_source, location)\u001b[0m\n\u001b[0;32m 474\u001b[0m \u001b[1;32mif\u001b[0m \u001b[0mabsolute_location\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mstartswith\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"file:///\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 475\u001b[0m \u001b[0mfilename\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0murl2pathname\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mabsolute_location\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mreplace\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"file:///\"\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;34m\"/\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 476\u001b[1;33m \u001b[0mfile\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mopen\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mfilename\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;34m\"rb\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 477\u001b[0m \u001b[1;32melse\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 478\u001b[0m \u001b[0minput_source\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mURLInputSource\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mabsolute_location\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mformat\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", - "\u001b[1;31mFileNotFoundError\u001b[0m: [Errno 2] No such file or directory: 'C:\\\\Users\\\\lukef\\\\OneDrive\\\\Desktop\\\\hmwk0\\\\CSCI_1300F\\\\Work\\\\PUDUWork\\\\PUDU\\\\RyanTest.xml'" - ] - } - ], - "source": [ - "def dictionaryCreatorPython(file):\n", - " import sbol2 as sb2\n", - " #given code from website\n", - " doc = sb2.Document()\n", - " doc.read(file)\n", - " #Loops through commponetDefinition\n", - " #for DNA\n", - "\n", - " #look at the roles for each\n", - " for cd in doc.componentDefinitions:\n", - " #check for role\n", - " if cd.role =='http://identifiers.org/so/SO:0000804':\n", - " print(cd)#allproducts\n", - " cd.features\n", - "\n", - "dictionaryCreatorPython('RyanTest.xml')" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "test", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.7.12" - } - }, - "nbformat": 4, - "nbformat_minor": 5 -} From 87ac2746805af1618a30ef487efa09339ab4b5dc Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Wed, 23 Jul 2025 09:55:06 -0600 Subject: [PATCH 047/100] Delete scripts/sbol2_assembly_output.xlsx.xlsx --- scripts/sbol2_assembly_output.xlsx.xlsx | Bin 6199 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 scripts/sbol2_assembly_output.xlsx.xlsx diff --git a/scripts/sbol2_assembly_output.xlsx.xlsx b/scripts/sbol2_assembly_output.xlsx.xlsx deleted file mode 100644 index da5aac1f12f6d42b6713d675926befd77352af1f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6199 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 A^Z)<= From 243cd06526cd0c982ae54d6ebea4a24fd9e61800 Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Wed, 23 Jul 2025 09:55:24 -0600 Subject: [PATCH 048/100] Delete scripts/SBOL_xlsx5.xlsx --- scripts/SBOL_xlsx5.xlsx | Bin 6198 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 scripts/SBOL_xlsx5.xlsx diff --git a/scripts/SBOL_xlsx5.xlsx b/scripts/SBOL_xlsx5.xlsx deleted file mode 100644 index 6e7e34d369bdbfd8ad0162572d69f44f6da6a685..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6198 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 Date: Wed, 13 Aug 2025 11:13:36 -0600 Subject: [PATCH 049/100] Update utils.py --- src/pudu/utils.py | 242 ++++++++-------------------------------------- 1 file changed, 40 insertions(+), 202 deletions(-) diff --git a/src/pudu/utils.py b/src/pudu/utils.py index cf61fbf..59aa75b 100644 --- a/src/pudu/utils.py +++ b/src/pudu/utils.py @@ -112,168 +112,39 @@ def liquid_transfer(pipette, volume, source, destination, asp_rate:float=0.5, di row_letter_to_number = {'A':1, 'B':2, 'C':3, 'D':4, 'E':5, 'F':6, 'G':7, 'H':8} - -#Xml to uri dictionary -def dictionaryCreatorjson(file): - import sbol2 as sb2 - from flask import Flask, jsonify - app = Flask(__name__) - #given code from website - doc = sb2.Document() - doc.read(file) - #Loops through commponetDefinition - #for DNA - # Lists to store different components - BackBoneList = ['https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/ComponentDefinition_dvk_backbone_core/1'] - PartsList = ['https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/J23100/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/E0040m_gfp/1', - 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0032/1', 'https://charmme.synbiohub.org/user/Gonza10V/CIDARMoCloKit/B0015/1'] - RestrictionEnzymeList = ['https://charmme.synbiohub.org/user/Gonza10V/ligationtestforreal/ComponentDefinition_BsaI/1'] - # Flags to track duplicates - gotBone = False - gotZyme = False - # Output dictionary - outputDictionary = {"Parts": [], "Backbone": -1, "Restriction Enzyme": -1} - # Loop through component definitions - for cd in doc.componentDefinitions: - print(cd) - # Checks backbone - if cd in BackBoneList: - print(cd) - print("backbone") - if not gotBone: - outputDictionary["Backbone"] = cd - gotBone = True # Update flag - else: - print("You have more than one backbone") - return -1 - # Checks parts - if cd in PartsList: - print(cd) - print("got part") - outputDictionary["Parts"].append(cd) - # Checks enzymes - if cd in RestrictionEnzymeList: - print(cd) - print("Enzyme") - if not gotZyme: - outputDictionary["Restriction Enzyme"] = cd # Assign value - gotZyme = True # Update flag - else: - print("You have more than one restriction enzyme") - return -1 - # Error Checks - if len(outputDictionary["Parts"]) <= 1: - print("Invalid number of parts") - return -1 - if outputDictionary["Backbone"] == -1: - print("No Backbone found, try again") - return -1 - if outputDictionary["Restriction Enzyme"] == -1: - print("No Restriction Enzyme found, try again") - return -1 - #(outputDictionary) - response = jsonify(outputDictionary) - content = response.get_data(as_text=True) - - return content - -#same as before but no Json -#Change to add roles -def dictionaryCreatorPython(file): - import sbol2 as sb2 - #given code from website - doc = sb2.Document() - doc.read(file) - #Loops through commponetDefinition - #for DNA - # Lists to store different components - ProductRoleList = ['http://identifiers.org/so/SO:0000804'] - - #look at the roles for each - for cd in doc.componentDefinitions: - #check for role - if cd.role in ProductRoleList: - print(cd) - - - - # Output dictionary - outputAssemblies = [] - # Loop through component definitions - for cd in doc.componentDefinitions: - print(cd) - # Checks backbone - if cd in BackBoneList: - print(cd) - print("backbone") - if not gotBone: - outputDictionary["Backbone"] = cd - gotBone = True # Update flag - else: - print("You have more than one backbone") - return -1 - # Checks parts - if cd in PartsList: - print(cd) - print("got part") - outputDictionary["Parts"].append(cd) - # Checks enzymes - if cd in RestrictionEnzymeList: - print(cd) - print("Enzyme") - if not gotZyme: - outputDictionary["Restriction Enzyme"] = cd # Assign value - gotZyme = True # Update flag - else: - print("You have more than one restriction enzyme") - return -1 - # Error Checks - if len(outputDictionary["Parts"]) <= 1: - print("Invalid number of parts") - return -1 - if outputDictionary["Backbone"] == -1: - print("No Backbone found, try again") - return -1 - if outputDictionary["Restriction Enzyme"] == -1: - print("No Restriction Enzyme found, try again") - return -1 - #(outputDictionary) - response = outputDictionary - - return response - - -#NEW dictionary creator that goes through xml file -#reads roles and returns a list of dictionaries -def dictionaryListCreatorPython(file): - import sbol2 as sb2 - import json - - # Disable typed URIs for cleaner URI strings +def assembly_plan_RDF_to_JSON(file): sb2.Config.setOption('sbol_typed_uris', False) - - # Read the SBOL document doc = sb2.Document() doc.read(file) # Known SO roles - PRODUCT_ROLE = 'http://identifiers.org/so/SO:0000804' # composite product - PLASMID_ROLE = 'https://identifiers.org/SO:0000755' # plasmid/backbone - - # SBOL type for Protein - PROTEIN_TYPE = sb2.BIOPAX_PROTEIN # URI for proteins + PRODUCT_ROLE = 'http://identifiers.org/so/SO:0000804' + BackBone_ROLE = 'http://identifiers.org/so/SO:0000755' + ENZYME_ROLE = 'http://identifiers.org/obi/OBI:0000732' + + PARTS_ROLE_LIST = [ + 'http://identifiers.org/so/SO:0000031', 'http://identifiers.org/so/SO:0000316', + 'http://identifiers.org/so/SO:0001977', 'http://identifiers.org/so/SO:0001956', + 'http://identifiers.org/so/SO:0000188', 'http://identifiers.org/so/SO:0000839', + 'http://identifiers.org/so/SO:0000167', 'http://identifiers.org/so/SO:0000139', + 'http://identifiers.org/so/SO:0001979', 'http://identifiers.org/so/SO:0001955', + 'http://identifiers.org/so/SO:0001546', 'http://identifiers.org/so/SO:0001263', + 'http://identifiers.org/SO:0000141', 'http://identifiers.org/so/SO:0000141' + ] product_dicts = [] - globalEnzyme = None + for cd in doc.componentDefinitions: - # Detect restriction enzyme by Protein type - #create a filler variable - if PROTEIN_TYPE in cd.types: + print(f"\n🔍 Checking Component: {cd.displayId}") + print(f" Types: {cd.types}") + print(f" Roles: {cd.roles}") + + if ENZYME_ROLE in cd.roles: globalEnzyme = cd.identity + print(f"✅ Found enzyme definition: {globalEnzyme}") if PRODUCT_ROLE in cd.roles: - #create new dict for every product result = { 'Product': cd.identity, 'Backbone': None, @@ -282,66 +153,33 @@ def dictionaryListCreatorPython(file): } for comp in cd.components: - sub_def_uri = comp.definition - sub_cd = doc.componentDefinitions.get(sub_def_uri) - + sub_cd = doc.componentDefinitions.get(comp.definition) if sub_cd is None: + print(f"⚠️ Component definition for {comp.displayId} not found.") continue - roles = sub_cd.roles - display_id = sub_cd.displayId or "" + print(f" → Subcomponent: {sub_cd.displayId}") + print(f" Roles: {sub_cd.roles}") - #print(f"{display_id} roles: {roles} types: {types}") + if BackBone_ROLE in sub_cd.roles: + result['Backbone'] = sub_cd.identity + print(f" 🧬 Assigned Backbone: {sub_cd.identity}") - # Detect backbone by SO role - if PLASMID_ROLE in roles: - result['Backbone'] = sub_def_uri - result['PartsList'].append(sub_def_uri) + if any(role in PARTS_ROLE_LIST for role in sub_cd.roles): + result['PartsList'].append(sub_cd.identity) + print(f" 🧩 Added Part: {sub_cd.identity}") - # Default case: treat as regular part - else: - result['PartsList'].append(sub_def_uri) + if not result['Backbone']: + print(f"⚠️ No backbone found for product {cd.displayId}") + if not result['PartsList']: + print(f"⚠️ No parts found for product {cd.displayId}") product_dicts.append(result) - #add enzymes to each dictionary - for dict in product_dicts: - dict['Restriction Enzyme'] = globalEnzyme - - return product_dicts - + for entry in product_dicts: + entry['Restriction Enzyme'] = globalEnzyme -def test_golden_gate(self): - pro_doc = sb2.Document() - pro_doc.read('pro_in_bb.xml') + with open('output.json', 'w') as json_file: + json.dump(product_dicts, json_file, indent=4) - #where I am working adding 2 and 3 - pro2_doc = sb2.Document() - pro2_doc.read('pro2_in_bb.xml') #add document - - pro3_doc = sb2.Document() - pro3_doc.read('pro3_in_bb.xml') #add document - - rbs_doc = sb2.Document() - rbs_doc.read('rbs_in_bb.xml') - - cds_doc = sb2.Document() - cds_doc.read('cds_in_bb.xml') - - ter_doc = sb2.Document() - ter_doc.read('terminator_in_bb.xml') - - bb_doc = sb2.Document() - bb_doc.read('backbone.xml') - - part_docs = [pro_doc, rbs_doc, cds_doc, ter_doc] - - assembly_doc = sb2.Document() - assembly_obj = golden_gate_assembly_plan('testassem', part_docs, bb_doc, 'BsaI', assembly_doc) - - composites = assembly_obj.run() - - assembly_doc.write('validation_assembly.xml') - - sbol_validation_result = assembly_doc.validate() - self.assertEqual(sbol_validation_result, 'Valid.', 'Assembly SBOL validation failed') \ No newline at end of file + return product_dicts From c465eb200f9ce7c23ceac034d10d3c73746a8f06 Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Wed, 20 Aug 2025 11:06:49 -0600 Subject: [PATCH 050/100] Update utils.py --- src/pudu/utils.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/pudu/utils.py b/src/pudu/utils.py index 59aa75b..631a6ed 100644 --- a/src/pudu/utils.py +++ b/src/pudu/utils.py @@ -1,4 +1,4 @@ - +import sbol2 thermo_wells = [ 'A1','A2','A3','A4','A5','A6','A7','A8','A9','A10','A11','A12', @@ -113,8 +113,8 @@ def liquid_transfer(pipette, volume, source, destination, asp_rate:float=0.5, di row_letter_to_number = {'A':1, 'B':2, 'C':3, 'D':4, 'E':5, 'F':6, 'G':7, 'H':8} def assembly_plan_RDF_to_JSON(file): - sb2.Config.setOption('sbol_typed_uris', False) - doc = sb2.Document() + sbol2.Config.setOption('sbol_typed_uris', False) + doc = sbol2.Document() doc.read(file) # Known SO roles From 2d9351ce49c3a7a91399e87250434f588e556ab0 Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Wed, 27 Aug 2025 11:48:42 -0600 Subject: [PATCH 051/100] Update utils.py --- src/pudu/utils.py | 1 + 1 file changed, 1 insertion(+) diff --git a/src/pudu/utils.py b/src/pudu/utils.py index 631a6ed..a628d14 100644 --- a/src/pudu/utils.py +++ b/src/pudu/utils.py @@ -1,4 +1,5 @@ import sbol2 +import json thermo_wells = [ 'A1','A2','A3','A4','A5','A6','A7','A8','A9','A10','A11','A12', From 1b9ad45295e4b17f75dc2455a87d57178fa57f2d Mon Sep 17 00:00:00 2001 From: Oscar Rodriguez Date: Fri, 29 Aug 2025 14:59:53 -0600 Subject: [PATCH 052/100] Added yml file for github action --- .github/workflows/python-package.yml | 40 ++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 .github/workflows/python-package.yml diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml new file mode 100644 index 0000000..4772a57 --- /dev/null +++ b/.github/workflows/python-package.yml @@ -0,0 +1,40 @@ +name: Python package + +on: + push: + pull_request: + workflow_dispatch: + schedule: + - cron: '0 0 * * *' + +jobs: + build: + + runs-on: [ubuntu-latest] + strategy: + fail-fast: false + matrix: + python-version: ["3.10", "3.11"] + + steps: + - uses: actions/checkout@v4 + + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v3 + with: + python-version: ${{ matrix.python-version }} + + - name: Install dependencies + run: | + python -m pip install --upgrade pip + python -m pip install flake8 pytest opentrons + if [ -f requirements.txt ]; then pip install -r requirements.txt; fi + + - name: Lint with flake8 + run: | + flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics + flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics + + - name: Test scripts with opentrons_simulate + run: | + pytest -v \ No newline at end of file From 5d0c7c01ece8d47766777c2757fa5ab1cb760221 Mon Sep 17 00:00:00 2001 From: Oscar Rodriguez Date: Fri, 29 Aug 2025 15:11:01 -0600 Subject: [PATCH 053/100] Deleted test_setup.py and replaced with sample_preparation.py (test in name was causing an issue with github action). Modified init and utils.py to work with refactor --- src/pudu/__init__.py | 2 +- src/pudu/sample_preparation.py | 415 +++++++++++++++++++++++++++++++++ src/pudu/test_setup.py | 214 ----------------- src/pudu/utils.py | 415 ++++++++++++++++++++++++--------- 4 files changed, 723 insertions(+), 323 deletions(-) create mode 100644 src/pudu/sample_preparation.py delete mode 100644 src/pudu/test_setup.py diff --git a/src/pudu/__init__.py b/src/pudu/__init__.py index 0681205..649a7da 100644 --- a/src/pudu/__init__.py +++ b/src/pudu/__init__.py @@ -1,5 +1,5 @@ from .assembly import * from .calibration import * -from .test_setup import * +from .sample_preparation import * from .transformation import * from .utils import * diff --git a/src/pudu/sample_preparation.py b/src/pudu/sample_preparation.py new file mode 100644 index 0000000..3649624 --- /dev/null +++ b/src/pudu/sample_preparation.py @@ -0,0 +1,415 @@ +from opentrons import protocol_api +from typing import List, Union, Optional, Tuple +from abc import ABC, abstractmethod +import math +from utils import colors + + +class SamplePreparation(ABC): + """ + Abstract base class for all Sample Preparation protocols with shared functionality. + """ + + def __init__(self, + test_labware: str = 'corning_96_wellplate_360ul_flat', + test_position: str = '2', + aspiration_rate: float = 0.5, + dispense_rate: float = 1.0, + tiprack_labware: str = 'opentrons_96_filtertiprack_200ul', + tiprack_position: str = '9', + starting_tip: Optional[str] = None, + pipette: str = 'p300_single_gen2', + pipette_position: str = 'right', + use_temperature_module: bool = False, + temperature: int = 4, + **kwargs): + self.test_labware = test_labware + self.test_position = test_position + self.aspiration_rate = aspiration_rate + self.dispense_rate = dispense_rate + self.tiprack_labware = tiprack_labware + self.tiprack_position = tiprack_position + self.starting_tip = starting_tip + self.pipette = pipette + self.pipette_position = pipette_position + self.use_temperature_module = use_temperature_module + self.temperature = temperature + + # Protocol tracking + self.result_dict = {} + self.liquid_tracker = {} + + @abstractmethod + def run(self, protocol: protocol_api.ProtocolContext): + """Abstract method that must be implemented by subclasses.""" + pass + + def _load_standard_labware(self, protocol: protocol_api.ProtocolContext): + """Load standard labware common to all protocols.""" + tiprack = protocol.load_labware(self.tiprack_labware, self.tiprack_position) + pipette = protocol.load_instrument(self.pipette, self.pipette_position, tip_racks=[tiprack]) + + if self.starting_tip: + pipette.starting_tip = tiprack[self.starting_tip] + + plate = protocol.load_labware(self.test_labware, self.test_position) + + return tiprack, pipette, plate + + def _load_source_labware(self, protocol: protocol_api.ProtocolContext, + temp_module_position: str = '1', + temp_module_labware: str = 'opentrons_24_aluminumblock_nest_1.5ml_snapcap', + tube_rack_position: str = '3', + tube_rack_labware: str = 'opentrons_24_tuberack_nest_1.5ml_snapcap'): + """Load source tube labware with optional temperature control.""" + + if self.use_temperature_module: + temperature_module = protocol.load_module('Temperature Module', temp_module_position) + source_rack = temperature_module.load_labware(temp_module_labware) + temperature_module.set_temperature(self.temperature) + else: + source_rack = protocol.load_labware(tube_rack_labware, tube_rack_position) + + return source_rack + + def _create_slots(self, plate, replicates: int = 4): + """ + Create well groupings for sample distribution. + Flexible slot creation based on plate size and replicate requirements. + """ + columns = plate.columns() + + middle_columns = columns[1:-1] + edge_columns = [columns[0], columns[-1]] + slots = [] + + # All top halves of middle columns first + slots.extend(col[:len(col) // 2] for col in middle_columns) + # Bottom halves of middle columns + slots.extend(col[len(col) // 2:] for col in middle_columns) + # edge/buffer columns (both halves) + for col in edge_columns: + slots.extend([col[:len(col) // 2], col[len(col) // 2:]]) + + return slots + + def _validate_plate_capacity(self, required_wells: int, plate): + """Validate that plate has sufficient wells for the protocol.""" + available_wells = len(plate.wells()) + if required_wells > available_wells: + raise ValueError(f'Protocol requires {required_wells} wells but plate only has {available_wells}') + + def _define_liquid(self, protocol: protocol_api.ProtocolContext, + name: str, description: str, color_index: int = 0): + """Define and track a liquid for the protocol.""" + color = colors[color_index % len(colors)] + liquid = protocol.define_liquid(name=name, description=description, display_color=color) + self.liquid_tracker[name] = liquid + return liquid + + +class PlateSamples(SamplePreparation): + """ + Distributes multiple samples across a plate with replicates. + Each sample gets distributed to a specified number of wells. + """ + + def __init__(self, samples: List[str], + sample_volume: float = 200, + sample_stock_volume: float = 1200, + replicates: int = 4, + starting_slot: int = 1, + temp_module_position: str = '1', + temp_module_labware: str = 'opentrons_24_aluminumblock_nest_1.5ml_snapcap', + tube_rack_position: str = '3', + tube_rack_labware: str = 'opentrons_24_tuberack_nest_1.5ml_snapcap', + **kwargs): + super().__init__(**kwargs) + self.samples = samples + self.sample_volume = sample_volume + self.sample_stock_volume = sample_stock_volume + self.replicates = replicates + self.starting_slot = starting_slot + self.temp_module_position = temp_module_position + self.temp_module_labware = temp_module_labware + self.tube_rack_position = tube_rack_position + self.tube_rack_labware = tube_rack_labware + + self.source_positions = {} + self.plate_layout = {} + + def run(self, protocol: protocol_api.ProtocolContext): + # Load labware + tiprack, pipette, plate = self._load_standard_labware(protocol) + source_rack = self._load_source_labware( + protocol, self.temp_module_position, self.temp_module_labware, + self.tube_rack_position, self.tube_rack_labware + ) + + # Create slots and validate + slots = self._create_slots(plate, self.replicates) + required_wells = len(self.samples) * self.replicates + self._validate_plate_capacity(required_wells, plate) + + if len(self.samples) > len(source_rack.wells()): + raise ValueError( + f'Too many samples ({len(self.samples)}) for source rack ({len(source_rack.wells())} wells)') + + if len(self.samples) > len(slots[self.starting_slot - 1:]): + raise ValueError(f'Too many samples ({len(self.samples)}) for available slots') + + # Load samples into source rack + sample_wells = self._load_samples(protocol, source_rack) + + # Distribute samples to plate + slot_counter = self.starting_slot - 1 + for source_well, sample in sample_wells: + dest_wells = slots[slot_counter][:self.replicates] + pipette.distribute( + volume=self.sample_volume, + source=source_well, + dest=dest_wells, + disposal_volume=0 + ) + self.plate_layout[sample] = [well.well_name for well in dest_wells] + slot_counter += 1 + + # Store results + self.result_dict = { + 'source_positions': self.source_positions, + 'plate_layout': self.plate_layout + } + + print('Sample Distribution Protocol Complete') + print(f'Source positions: {self.source_positions}') + print(f'Plate layout: {self.plate_layout}') + + def _load_samples(self, protocol: protocol_api.ProtocolContext, source_rack): + """Load samples into source rack with liquid tracking.""" + sample_wells = [] + for i, sample in enumerate(self.samples): + liquid = self._define_liquid(protocol, sample, f"Sample: {sample}", i) + well = source_rack.wells()[i] + well.load_liquid(liquid=liquid, volume=self.sample_stock_volume) + self.source_positions[sample] = well.well_name + sample_wells.append((well, sample)) + return sample_wells + + +class PlateWithGradient(SamplePreparation): + """ + Creates serial dilution gradients of an inducer with a sample. + Implements proper well-to-well serial dilution. + """ + + def __init__(self, + sample_name: str, + inducer_name: str, + initial_concentration: float = 1.0, + dilution_factor: float = 2.0, + dilution_steps: int = 8, + replicates: int = 3, + starting_row: str = 'A', + final_well_volume: float = 200, + initial_mix_ratio: float = 0.5, # fraction of inducer in initial mix + transfer_volume: float = 100, # volume transferred in each dilution step + sample_stock_volume: float = 1200, + inducer_stock_volume: float = 1200, + temp_module_position: str = '1', + temp_module_labware: str = 'opentrons_24_aluminumblock_nest_1.5ml_snapcap', + tube_rack_position: str = '3', + tube_rack_labware: str = 'opentrons_24_tuberack_nest_1.5ml_snapcap', + **kwargs): + + super().__init__(**kwargs) + self.sample_name = sample_name + self.inducer_name = inducer_name + self.initial_concentration = initial_concentration + self.dilution_factor = dilution_factor + self.dilution_steps = dilution_steps + self.replicates = replicates + self.starting_row = starting_row + self.final_well_volume = final_well_volume + self.initial_mix_ratio = initial_mix_ratio + self.transfer_volume = transfer_volume + self.sample_stock_volume = sample_stock_volume + self.inducer_stock_volume = inducer_stock_volume + self.temp_module_position = temp_module_position + self.temp_module_labware = temp_module_labware + self.tube_rack_position = tube_rack_position + self.tube_rack_labware = tube_rack_labware + + # Calculated properties + self.concentration_series = self._calculate_concentrations() + self.required_volumes = self._calculate_required_volumes() + self.source_positions = {} + self.plate_layout = {} + self.concentration_map = {} + + def _calculate_concentrations(self) -> List[float]: + """Calculate the concentration at each dilution step.""" + concentrations = [] + current_conc = self.initial_concentration + for step in range(self.dilution_steps + 1): # +1 for initial concentration + concentrations.append(current_conc) + current_conc = current_conc / self.dilution_factor + return concentrations + + def _calculate_required_volumes(self) -> dict: + """Calculate required stock volumes with safety margin.""" + # Initial mix volume per replicate + initial_mix_volume = self.final_well_volume + total_initial_mix = initial_mix_volume * self.replicates + + # Sample volume needed (including initial mix and pre-filling wells) + sample_per_well = self.final_well_volume - self.transfer_volume + sample_for_prefill = sample_per_well * self.dilution_steps * self.replicates + sample_for_initial = total_initial_mix * (1 - self.initial_mix_ratio) + total_sample = sample_for_prefill + sample_for_initial + + # Inducer volume needed + inducer_for_initial = total_initial_mix * self.initial_mix_ratio + total_inducer = inducer_for_initial + + # Add 20% safety margin and round up + safety_factor = 1.2 + return { + 'sample': math.ceil(total_sample * safety_factor), + 'inducer': math.ceil(total_inducer * safety_factor) + } + + def _row_letter_to_index(self, letter: str) -> int: + """Convert row letter to 0-based index.""" + return ord(letter.upper()) - ord('A') + + def run(self, protocol: protocol_api.ProtocolContext): + # Load labware + tiprack, pipette, plate = self._load_standard_labware(protocol) + source_rack = self._load_source_labware( + protocol, self.temp_module_position, self.temp_module_labware, + self.tube_rack_position, self.tube_rack_labware + ) + + # Validate plate capacity + required_wells = self.replicates * (self.dilution_steps + 1) + self._validate_plate_capacity(required_wells, plate) + + # Load stocks + self._load_stocks(protocol, source_rack) + + # Get source wells + sample_well = source_rack.wells()[0] + inducer_well = source_rack.wells()[1] + + # Calculate layout + start_row_idx = self._row_letter_to_index(self.starting_row) + + # Pre-fill wells with sample (diluent) + self._prefill_wells(pipette, plate, sample_well, start_row_idx) + + # Create initial mixes and perform serial dilutions + self._create_gradients(pipette, plate, sample_well, inducer_well, start_row_idx) + + # Store results + self.result_dict = { + 'source_positions': self.source_positions, + 'plate_layout': self.plate_layout, + 'concentration_map': self.concentration_map, + 'concentration_series': self.concentration_series, + 'required_volumes': self.required_volumes + } + + print('Serial Dilution Protocol Complete') + print(f'Concentration series: {self.concentration_series}') + print(f'Required volumes: {self.required_volumes}') + print(f'Source positions: {self.source_positions}') + print(f'Concentration map: {self.concentration_map}') + + def _load_stocks(self, protocol: protocol_api.ProtocolContext, source_rack): + """Load sample and inducer stocks.""" + # Sample stock + sample_liquid = self._define_liquid(protocol, self.sample_name, + f"Sample: {self.sample_name}", 0) + sample_well = source_rack.wells()[0] + sample_well.load_liquid(liquid=sample_liquid, volume=self.sample_stock_volume) + self.source_positions[self.sample_name] = sample_well.well_name + + # Inducer stock + inducer_liquid = self._define_liquid(protocol, self.inducer_name, + f"Inducer: {self.inducer_name}", 1) + inducer_well = source_rack.wells()[1] + inducer_well.load_liquid(liquid=inducer_liquid, volume=self.inducer_stock_volume) + self.source_positions[self.inducer_name] = inducer_well.well_name + + def _prefill_wells(self, pipette, plate, sample_well, start_row_idx): + """Pre-fill wells with sample to serve as diluent.""" + diluent_volume = self.final_well_volume - self.transfer_volume + + for rep in range(self.replicates): + row_idx = start_row_idx + rep + row = plate.rows()[row_idx] + + # Pre-fill wells 2 through dilution_steps+1 (skip first well for initial mix) + dest_wells = row[1:self.dilution_steps + 1] + + pipette.distribute( + volume=diluent_volume, + source=sample_well, + dest=dest_wells, + disposal_volume=0 + ) + + def _create_gradients(self, pipette, plate, sample_well, inducer_well, start_row_idx): + """Create initial mixes and perform serial dilutions.""" + + # Calculate initial mix volumes + initial_sample_vol = self.final_well_volume * (1 - self.initial_mix_ratio) + initial_inducer_vol = self.final_well_volume * self.initial_mix_ratio + + for rep in range(self.replicates): + row_idx = start_row_idx + rep + row = plate.rows()[row_idx] + + # Create initial mix in first well + first_well = row[0] + + # Add sample to first well + pipette.transfer( + volume=initial_sample_vol, + source=sample_well, + dest=first_well, + new_tip='always' + ) + + # Add inducer to first well and mix + pipette.transfer( + volume=initial_inducer_vol, + source=inducer_well, + dest=first_well, + mix_after=(3, self.final_well_volume * 0.5), + new_tip='always' + ) + + # Perform serial dilution across the row + for step in range(self.dilution_steps): + source_well = row[step] + dest_well = row[step + 1] + + pipette.transfer( + volume=self.transfer_volume, + source=source_well, + dest=dest_well, + mix_after=(3, self.final_well_volume * 0.5), + new_tip='always' + ) + + # Record layout and concentrations for this replicate + for step in range(self.dilution_steps + 1): + well_name = row[step].well_name + concentration = self.concentration_series[step] + + if f'replicate_{rep}' not in self.plate_layout: + self.plate_layout[f'replicate_{rep}'] = [] + + self.plate_layout[f'replicate_{rep}'].append(well_name) + self.concentration_map[well_name] = concentration diff --git a/src/pudu/test_setup.py b/src/pudu/test_setup.py deleted file mode 100644 index b39bf03..0000000 --- a/src/pudu/test_setup.py +++ /dev/null @@ -1,214 +0,0 @@ -from opentrons import protocol_api -from typing import List, Union -from pudu.utils import thermo_wells, temp_wells, liquid_transfer, slots, rows, row_letter_to_number - -class Test_setup(): - ''' - Creates a protocol for the automated setting of a 96 well plate with a gradient of inducer. - - ''' - def __init__(self, - test_labware:str = 'corning_96_wellplate_360ul_flat', - test_position:int = 7, - aspiration_rate:float=0.5, - dispense_rate:float=1,): - - self.test_labware = test_labware - self.test_position = test_position - self.aspiration_rate = aspiration_rate - self.dispense_rate = dispense_rate - -class Plate_samples(Test_setup): - ''' - Creates a protocol for the automated setting of a 96 well plate from samples. Each sample is distributed in 4 wells of the plate. - ''' - def __init__(self,samples:List, - sample_tube_volume:float = 1200, - sample_well_volume:float = 200, - tube_rack_labware:str = 'opentrons_24_aluminumblock_nest_1.5ml_snapcap', - tube_rack_position:int = 4, - tiprack_labware:str='opentrons_96_tiprack_300ul', - tiprack_position:int=9, - pipette:str='p300_single_gen2', - pipette_position:str='right', - use_temperature_module:bool = False, - *args, **kwargs): - super().__init__(*args, **kwargs) - - self.samples = samples - self.sample_tube_volume = sample_tube_volume - self.sample_well_volume = sample_well_volume - self.tube_rack_labware = tube_rack_labware - self.tube_rack_position = tube_rack_position - self.tiprack_labware = tiprack_labware - self.tiprack_position = tiprack_position - self.pipette = pipette - self.pipette_position = pipette_position - self.use_temperature_module = use_temperature_module - self.dict_of_samples_in_plate = {} - self.dict_of_samples_in_temp_mod_position = {} - - if len(self.samples) > 24: - raise ValueError(f'Number of samples cant be greater than 24, you have {len(self.samples)}') - - def run(self, protocol: protocol_api.ProtocolContext): - - #Labware - tiprack = protocol.load_labware(self.tiprack_labware, f'{self.tiprack_position}') - pipette = protocol.load_instrument(self.pipette, self.pipette_position, tip_racks=[tiprack]) - plate = protocol.load_labware(self.test_labware, self.test_position) - - if self.use_temperature_module: - temperature_module = protocol.load_module('Temperature Module', self.tube_rack_position) - tube_rack = temperature_module.load_labware(self.tube_rack_labware) - else: - tube_rack = protocol.load_labware(self.tube_rack_labware, self.tube_rack_position) - - #Protocol - - #Load samples - temp_wells_counter = 0 - for sample in self.samples: - self.dict_of_samples_in_temp_mod_position[sample] = temp_wells[temp_wells_counter] - pipette.pick_up_tip() - for position in slots[temp_wells_counter]: - liquid_transfer(pipette, self.sample_well_volume, tube_rack[self.dict_of_samples_in_temp_mod_position[sample]], plate[position], self.aspiration_rate, self.dispense_rate, mix_before=self.sample_well_volume, mix_after=self.sample_well_volume/2, new_tip=False, drop_tip=False) - pipette.drop_tip() - self.dict_of_samples_in_plate[sample] = slots[temp_wells_counter] - temp_wells_counter += 1 - - #output - print('Samples in tube rack') - print(self.dict_of_samples_in_temp_mod_position) - print('Samples in plate') - print(self.dict_of_samples_in_plate) - #END - - - -class Plate_supplemented_samples(Test_setup): - ''' - Creates a protocol for the automated setting of a 96 well plate with a gradient of inducer. - - ''' - def __init__(self,sample_name:str, - inducer_name:str, - inducer_initial_concentration:float = 1, - initial_mix_inducer_volume:float = 50.0, - initial_mix_sample_volume:float = 50.0, - serial_dilution_volume:float = 20, - serial_dilution_steps:int = 10, - number_of_replicates:int = 3, - starting_row:str = 'A', - sample_volume_plate:float = 200, - sample_labware:str = '96 well plate', - aspiration_rate:float=0.5, - dispense_rate:float=1, - tube_rack_labware:str = 'opentrons_24_aluminumblock_nest_1.5ml_snapcap', - tube_rack_position:int = 4, - tiprack_labware:str='opentrons_96_tiprack_300ul', - tiprack_position:int=9, - pipette:str='p300_single_gen2', - pipette_position:str='left', - use_temperature_module:bool = False, - *args, **kwargs): - super().__init__(*args, **kwargs) - - self.sample_name = sample_name - self.inducer_name = inducer_name - self.inducer_initial_concentration = inducer_initial_concentration - self.initial_mix_sample_volume = initial_mix_sample_volume - self.initial_mix_inducer_volume = initial_mix_inducer_volume - self.serial_dilution_volume = serial_dilution_volume - self.serial_dilution_steps = serial_dilution_steps - self.number_of_replicates = number_of_replicates - self.starting_row = starting_row - self.sample_volume_plate = sample_volume_plate - self.sample_labware = sample_labware - self.aspiration_rate = aspiration_rate - self.dispense_rate = dispense_rate - self.tube_rack_labware = tube_rack_labware - self.tube_rack_position = tube_rack_position - self.tiprack_labware = tiprack_labware - self.tiprack_position = tiprack_position - self.pipette = pipette - self.pipette_position = pipette_position - self.use_temperature_module = use_temperature_module - self.dict_of_samples_in_plate = {} - self.dict_of_tubes_in_temp_mod_position = {} - - if self.serial_dilution_steps == 0: - raise ValueError('Number of serial dilution steps must be greater than 0') - if self.number_of_replicates < 3: - raise Warning('Number of replicates must be greater than 3 for statistical analysis') - if self.number_of_replicates > 8: - raise ValueError('Number of replicates must be less than 8 to fit in the 96 well plate') - - def run(self, protocol: protocol_api.ProtocolContext): - - #Labware - tiprack = protocol.load_labware(self.tiprack_labware, f'{self.tiprack_position}') - pipette = protocol.load_instrument(self.pipette, self.pipette_position, tip_racks=[tiprack]) - plate = protocol.load_labware(self.test_labware, self.test_position) - - if self.use_temperature_module: - temperature_module = protocol.load_module('Temperature Module', self.tube_rack_position) - tube_rack = temperature_module.load_labware(self.tube_rack_labware) - else: - tube_rack = protocol.load_labware(self.tube_rack_labware, self.tube_rack_position) - - # Protocol - - # Load inducer - temp_wells_counter = 0 - self.dict_of_tubes_in_temp_mod_position[self.inducer_name] = temp_wells[temp_wells_counter] - temp_wells_counter += 1 - - # Load samples and distribute them in the plate - start_at_row = row_letter_to_number[self.starting_row] - 1 - - for replicate_number in range(self.number_of_replicates + 1): - working_row_index = start_at_row + replicate_number - self.dict_of_tubes_in_temp_mod_position[f'replicate_{replicate_number}'] = temp_wells[temp_wells_counter] - pipette.pick_up_tip() - for dilution_step in range(self.serial_dilution_steps): - position = rows[working_row_index][dilution_step+1] - liquid_transfer(pipette, self.sample_volume_plate, tube_rack[self.dict_of_tubes_in_temp_mod_position[f'replicate_{replicate_number}']], plate[position], self.aspiration_rate, self.dispense_rate, new_tip=False, drop_tip=False) - pipette.drop_tip() - temp_wells_counter += 1 - working_row_index += 1 - - - # Create initial mix on the first row - initial_mix_position = rows[start_at_row][0] - self.dict_of_samples_in_plate['initial_mix'] = initial_mix_position - #pipette sample to initial mix - liquid_transfer(pipette, self.initial_mix_sample_volume, tube_rack[self.dict_of_tubes_in_temp_mod_position['replicate_1']], plate[initial_mix_position], self.aspiration_rate, self.dispense_rate) - #pipette inducer to initial mix - liquid_transfer(pipette, self.initial_mix_inducer_volume, tube_rack[self.dict_of_tubes_in_temp_mod_position[self.inducer_name]], plate[initial_mix_position], self.aspiration_rate, self.dispense_rate,mix_after=self.initial_mix_sample_volume/2) - - # Serial dilution - for replicate_number in range(self.number_of_replicates): - working_row_index = start_at_row + replicate_number - pipette.pick_up_tip() - for dilution_step in range(self.serial_dilution_steps): - position = rows[working_row_index][dilution_step+1] - liquid_transfer(pipette, self.serial_dilution_volume, tube_rack[self.dict_of_tubes_in_temp_mod_position[f'replicate_{replicate_number}']], plate[position], self.aspiration_rate, self.dispense_rate, mix_before=self.sample_volume_plate/2, new_tip=False, drop_tip=False) - self.dict_of_samples_in_plate[f'replicate_{replicate_number}_dilution{dilution_step}'] = position - pipette.drop_tip() - working_row_index += 1 - - #output - print('Samples and inducer in tube rack') - print(self.dict_of_tubes_in_temp_mod_position) - print('Samples in plate') - print(self.dict_of_samples_in_plate) - #END - - - -class Doe_test(Test_setup): - ''' - Creates a protocol for the automated setting of a 96 well plate with a gradient of inducer. - - ''' diff --git a/src/pudu/utils.py b/src/pudu/utils.py index 2e490cb..ecd4a67 100644 --- a/src/pudu/utils.py +++ b/src/pudu/utils.py @@ -1,113 +1,312 @@ +import subprocess +import time +from typing import Optional - -thermo_wells = [ -'A1','A2','A3','A4','A5','A6','A7','A8','A9','A10','A11','A12', -'B1','B2','B3','B4','B5','B6','B7','B8','B9','B10','B11','B12', -'C1','C2','C3','C4','C5','C6','C7','C8','C9','C10','C11','C12', -'D1','D2','D3','D4','D5','D6','D7','D8','D9','D10','D11','D12', -'E1','E2','E3','E4','E5','E6','E7','E8','E9','E10','E11','E12', -'F1','F2','F3','F4','F5','F6','F7','F8','F9','F10','F11','F12', -'G1','G2','G3','G4','G5','G6','G7','G8','G9','G10','G11','G12', -'H1','H2','H3','H4','H5','H6','H7','H8','H9','H10','H11','H12' +colors = [ + "#4040BF", # Blue + "#BF4040", # Red + "#40BF40", # Green + "#A640BF", # Purple + "#BFBF40", # Yellow + "#BF7340", # Orange + "#40BFBF", # Cyan + "#BF40A6", # Magenta + "#73BF40", # Lime green + "#4073BF", # Blue-cyan + "#BF8C40", # Orange-yellow + "#40BF73", # Green-cyan + "#7340BF", # Blue-purple + "#A6BF40", # Yellow-green + "#BF5940", # Red-orange + "#40A6BF", # Cyan-blue + "#BF4073", # Red-purple + "#59BF40", # Green + "#BFA640", # Orange-yellow + "#40BFA6", # Cyan-green + "#8CBF40", # Yellow-green + "#40BF59", # Green + "#40BF8C", # Green-cyan + "#BF40A6" # Purple-magenta ] -temp_wells = [ -'A1','A2','A3','A4','A5','A6', -'B1','B2','B3','B4','B5','B6', -'C1','C2','C3','C4','C5','C6', -'D1','D2','D3','D4','D5','D6' -] +class Camera: + """ + Camera class for handling picture and video capture during Opentrons protocols. -plate_96_wells = [ -'A1','A2','A3','A4','A5','A6','A7','A8','A9','A10','A11','A12', -'B1','B2','B3','B4','B5','B6','B7','B8','B9','B10','B11','B12', -'C1','C2','C3','C4','C5','C6','C7','C8','C9','C10','C11','C12', -'D1','D2','D3','D4','D5','D6','D7','D8','D9','D10','D11','D12', -'E1','E2','E3','E4','E5','E6','E7','E8','E9','E10','E11','E12', -'F1','F2','F3','F4','F5','F6','F7','F8','F9','F10','F11','F12', -'G1','G2','G3','G4','G5','G6','G7','G8','G9','G10','G11','G12', -'H1','H2','H3','H4','H5','H6','H7','H8','H9','H10','H11','H12' -] + This class encapsulates all camera functionality including: + - Taking snapshots at specific protocol steps + - Recording video during protocol execution + - Handling simulation mode gracefully + - Managing ffmpeg processes + """ + + def __init__(self, video_size: str = "320x240", picture_size: str = "640x480", + video_device: str = "/dev/video0", storage_path: str = "/data/user_storage"): + """ + Initialize Camera with configuration options. + + Args: + video_size: Resolution for video recording (default: "320x240") + picture_size: Resolution for picture capture (default: "640x480") + video_device: Video device path (default: "/dev/video0") + storage_path: Path where media files will be saved (default: "/data/user_storage") + """ + self.video_size = video_size + self.picture_size = picture_size + self.video_device = video_device + self.storage_path = storage_path + self._active_video_process: Optional[subprocess.Popen] = None + + def cleanup_ffmpeg_processes(self) -> None: + """Clean up any running ffmpeg processes using killall.""" + try: + subprocess.run(['killall', 'ffmpeg'], capture_output=True, check=False) + except Exception: + pass # Fail silently if cleanup doesn't work + + def capture_picture(self, protocol, when: str = "image") -> None: + """ + Take a picture at a specific protocol step. + + Args: + protocol: Opentrons protocol context + when: Description of when the picture was taken (used in filename) + + Returns: + Filename of captured image if successful, None if simulation or failed + """ + if protocol.is_simulating(): + protocol.comment(f'[SIMULATION] Taking picture at protocol step: {when}') + return + + protocol.comment(f'Taking picture at protocol step: {when}') + timestamp = int(time.time()) + filename = f'{when}_image_{timestamp}.jpg' + filepath = f'{self.storage_path}/{filename}' + + try: + subprocess.check_call([ + 'ffmpeg', '-loglevel', 'error', '-y', '-f', 'video4linux2', + '-s', self.picture_size, '-i', self.video_device, '-ss', '0:0:1', + '-frames', '1', filepath + ]) + protocol.comment(f'{when.title()} picture captured: {filename}') + + except subprocess.CalledProcessError as e: + protocol.comment(f'Warning: Picture capture failed: {e}, continuing protocol') + + + def start_video(self, protocol) -> None: + """ + Start video recording. + + Args: + protocol: Opentrons protocol context + + Returns: + Video process handle if successful, None if simulation or failed + """ + if protocol.is_simulating(): + protocol.comment('[SIMULATION] Starting video recording') + return + + # Clean up any existing processes + self.cleanup_ffmpeg_processes() + time.sleep(0.5) # Brief pause for cleanup + + timestamp = int(time.time()) + filename = f'video_image_{timestamp}.mp4' + filepath = f'{self.storage_path}/{filename}' + + try: + video_process = subprocess.Popen([ + 'ffmpeg', '-loglevel', 'error', '-y', '-video_size', self.video_size, + '-i', self.video_device, filepath + ]) + self._active_video_process = video_process + protocol.comment(f"Video recording started: {filename}") + except Exception as e: + protocol.comment(f"Warning: Video recording failed: {e}") + + def stop_video(self, protocol) -> None: + """ + Stop video recording. + + Args: + protocol: Opentrons protocol context + video_process: Video process to stop (uses active process if None) + """ + if protocol.is_simulating(): + protocol.comment('[SIMULATION] Stopping video recording') + return + + # Use provided process or the active one + process_to_stop = self._active_video_process + + if process_to_stop is None: + protocol.comment("No video recording process to stop") + return + + if process_to_stop.poll() is None: # Process is still running + try: + process_to_stop.terminate() + process_to_stop.wait(timeout=5) + protocol.comment("Video recording stopped") + except subprocess.TimeoutExpired: + process_to_stop.kill() + process_to_stop.wait() + protocol.comment("Video recording force-stopped") + except Exception as e: + protocol.comment(f"Warning: Error stopping video: {e}") + else: + protocol.comment("Video recording already stopped") + + # Clear active process if it was the one we stopped + self._active_video_process = None + +class SmartPipette: + """ + Wrapper for automatic volume tracking + """ + + def __init__(self, pipette, protocol): + self.pipette = pipette + self.protocol = protocol + if not hasattr(protocol, 'define_liquid'): + raise RuntimeError("This class requires API with liquid tracking support") + + def is_conical_tube(self, well, use: bool = False) -> bool: + """Check if the well is from a conical tube labware or manually set as true""" + return 'conical' in well.parent.load_name.lower() or use + + def get_well_volume(self, well) -> Optional[float]: + """Get current volume in well using pure API method""" + try: + return well.current_liquid_volume() + except Exception as e: + self.protocol.comment(f"ERROR reading volume from {well.well_name}: {e}") + return None + + def get_well_height(self, well) -> Optional[float]: + """Get current liquid height using pure API method (if available)""" + try: + if hasattr(well, 'current_liquid_height'): + return well.current_liquid_height() + else: + self.protocol.comment("Liquid height method not available in this API version") + return None + except Exception as e: + self.protocol.comment(f"ERROR reading height from {well.well_name}: {e}") + return None + + def get_conical_tube_aspiration_height(self, well) -> float: + """ + Calculate safe aspiration height for conical tubes using proven method + Uses API liquid tracking to get current volume + """ + # Get current volume from API + try: + current_volume = well.current_liquid_volume() + if current_volume is None: + raise ValueError("API returned None for liquid volume") + except Exception as e: + self.protocol.comment(f"ERROR: Could not get liquid volume from API: {e}") + return 10.0 # Safe fallback height + + max_volume = well.max_volume + tube_depth = well.depth - 10 # Account for threads + min_safe_height = 3 # mm minimum to prevent tip damage + meniscus_offset = 10 # mm below liquid surface + + # Calculate liquid height based on current volume + liquid_height = (current_volume / max_volume) * tube_depth + aspiration_height = max(liquid_height - meniscus_offset, min_safe_height) + + self.protocol.comment( + f"Conical calculation: {current_volume:.0f}µL remaining = {aspiration_height:.1f}mm height") + return aspiration_height + + def get_aspiration_location(self, well, use: bool = False) -> float: + """ + Get intelligent aspiration location using API volume data and proven height calculation + """ + if not self.is_conical_tube(well, use=use): + return well + + try: + current_volume = well.current_liquid_volume() + if current_volume is None or current_volume < well.max_volume * 0.2: + # Less than 20% remaining - use standard aspiration + self.protocol.comment("Low volume detected - using standard aspiration") + return well + + # Use conical tube calculation + safe_height = self.get_conical_tube_aspiration_height(well) + return well.bottom(safe_height) + + except Exception as e: + self.protocol.comment(f"ERROR getting volume from API: {e}") + return well # Fallback to standard aspiration + + def liquid_transfer(self, volume: float, source, destination, + asp_rate: float = 0.5, disp_rate: float = 1.0, + blow_out: bool = True, touch_tip: bool = False, + mix_before: float = 0.0, mix_after: float = 0.0, + mix_reps: int = 3, new_tip: bool = True, drop_tip: bool = True, use:bool = False) -> bool: + """ + Transfer liquid using pure API liquid tracking for volume management + + Returns: + bool: True if transfer was successful, False if insufficient volume + """ + # Check volume using API methods only + try: + current_volume = source.current_liquid_volume() + if current_volume is None: + self.protocol.comment("WARNING: API returned None for source volume") + return False + + if current_volume < volume: + self.protocol.comment(f"WARNING: Insufficient volume. " + f"Requested: {volume}µL, Available: {current_volume:.0f}µL") + return False + + except Exception as e: + self.protocol.comment(f"ERROR: Could not check source volume: {e}") + return False + + if new_tip: + self.pipette.pick_up_tip() + + # Get aspiration location using API data + proven calculation + aspiration_location = self.get_aspiration_location(source,use) + + # Mix before if requested + if mix_before > 0: + # Use current volume to limit mixing + try: + safe_mix_volume = min(mix_before, current_volume * 0.8) + self.pipette.mix(mix_reps, safe_mix_volume, aspiration_location) + except: + self.protocol.comment("Skipping mix_before due to API error") + + # Aspirate + self.pipette.aspirate(volume, aspiration_location, rate=asp_rate) + + # Dispense + self.pipette.dispense(volume, destination.center(), rate=disp_rate) + + # Mix after if requested + if mix_after > 0: + self.pipette.mix(mix_reps, mix_after, destination) + + if blow_out: + self.pipette.blow_out() + + if touch_tip: + self.pipette.touch_tip() + + if drop_tip: + self.pipette.drop_tip() -def liquid_transfer(pipette, volume, source, destination, asp_rate:float=0.5, disp_rate:float=1.0, blow_out:bool=True, touch_tip:bool=False, mix_before:float=0.0, mix_after:float=0.0, mix_reps:int=3, new_tip:bool=True, drop_tip:bool=True): - if new_tip: - pipette.pick_up_tip() - if mix_before > 0: - pipette.mix(mix_reps, mix_before, source) - pipette.aspirate(volume, source, rate=asp_rate) - pipette.dispense(volume, destination, rate=disp_rate) - if mix_after > 0: - pipette.mix(mix_reps, mix_after, destination) - if blow_out: - pipette.blow_out() - if touch_tip: - pipette.touch_tip() - if drop_tip: - pipette.drop_tip() - -#Define slots, to allocate 4 samples in each slot, lasts slots allocate in the border where border effects apply -slot_1 = ['A2', 'B2', 'C2', 'D2'] -slot_2 = ['A3', 'B3', 'C3', 'D3'] -slot_3 = ['A4', 'B4', 'C4', 'D4'] -slot_4 = ['A5', 'B5', 'C5', 'D5'] -slot_5 = ['A6', 'B6', 'C6', 'D6'] -slot_6 = ['A7', 'B7', 'C7', 'D7'] -slot_7 = ['A8', 'B8', 'C8', 'D8'] -slot_8 = ['A9', 'B9', 'C9', 'D9'] -slot_9 = ['A10', 'B10', 'C10', 'D10'] -slot_10 = ['A11', 'B11', 'C11', 'D11'] -slot_11 = ['E2', 'F2', 'G2', 'H2'] -slot_12 = ['E3', 'F3', 'G3', 'H3'] -slot_13 = ['E4', 'F4', 'G4', 'H4'] -slot_14 = ['E5', 'F5', 'G5', 'H5'] -slot_15 = ['E6', 'F6', 'G6', 'H6'] -slot_16 = ['E7', 'F7', 'G7', 'H7'] -slot_17 = ['E8', 'F8', 'G8', 'H8'] -slot_18 = ['E9', 'F9', 'G9', 'H9'] -slot_19 = ['E10', 'F10', 'G10', 'H10'] -slot_20 = ['E11', 'F11', 'G11', 'H11'] -slot_21 = ['A1', 'B1', 'C1', 'D1'] -slot_22 = ['E1', 'F1', 'G1', 'H1'] -slot_23 = ['A12', 'B12', 'C12', 'D12'] -slot_24 = ['E12', 'F12', 'G12', 'H12'] - -slots = [slot_1, slot_2, slot_3, slot_4, slot_5, slot_6, slot_7, slot_8, slot_9, slot_10, slot_11, slot_12, slot_13, slot_14, slot_15, slot_16, slot_17, slot_18, slot_19, slot_20, slot_21, slot_22, slot_23, slot_24] - -#define rows -row_a = ['A1','A2','A3','A4','A5','A6','A7','A8','A9','A10','A11','A12'] -row_b = ['B1','B2','B3','B4','B5','B6','B7','B8','B9','B10','B11','B12'] -row_c = ['C1','C2','C3','C4','C5','C6','C7','C8','C9','C10','C11','C12'] -row_d = ['D1','D2','D3','D4','D5','D6','D7','D8','D9','D10','D11','D12'] -row_e = ['E1','E2','E3','E4','E5','E6','E7','E8','E9','E10','E11','E12'] -row_f = ['F1','F2','F3','F4','F5','F6','F7','F8','F9','F10','F11','F12'] -row_g = ['G1','G2','G3','G4','G5','G6','G7','G8','G9','G10','G11','G12'] -row_h = ['H1','H2','H3','H4','H5','H6','H7','H8','H9','H10','H11','H12'] - -rows = [row_a, row_b, row_c, row_d, row_e, row_f, row_g, row_h] - -#define columns -col_1 = ['A1','B1','C1','D1','E1','F1','G1','H1'] -col_2 = ['A2','B2','C2','D2','E2','F2','G2','H2'] -col_3 = ['A3','B3','C3','D3','E3','F3','G3','H3'] -col_4 = ['A4','B4','C4','D4','E4','F4','G4','H4'] -col_5 = ['A5','B5','C5','D5','E5','F5','G5','H5'] -col_6 = ['A6','B6','C6','D6','E6','F6','G6','H6'] -col_7 = ['A7','B7','C7','D7','E7','F7','G7','H7'] -col_8 = ['A8','B8','C8','D8','E8','F8','G8','H8'] -col_9 = ['A9','B9','C9','D9','E9','F9','G9','H9'] -col_10 = ['A10','B10','C10','D10','E10','F10','G10','H10'] -col_11 = ['A11','B11','C11','D11','E11','F11','G11','H11'] -col_12 = ['A12','B12','C12','D12','E12','F12','G12','H12'] - -columns = [col_1, col_2, col_3, col_4, col_5, col_6, col_7, col_8, col_9, col_10, col_11, col_12] - -position_to_row_and_column = {'A1':(1,1), 'A2':(1,2), 'A3':(1,3), 'A4':(1,4), 'A5':(1,5), 'A6':(1,6), 'A7':(1,7), 'A8':(1,8), 'A9':(1,9), 'A10':(1,10), 'A11':(1,11), 'A12':(1,12), - 'B1':(2,1), 'B2':(2,2), 'B3':(2,3), 'B4':(2,4), 'B5':(2,5), 'B6':(2,6), 'B7':(2,7), 'B8':(2,8), 'B9':(2,9), 'B10':(2,10), 'B11':(2,11), 'B12':(2,12), - 'C1':(3,1), 'C2':(3,2), 'C3':(3,3), 'C4':(3,4), 'C5':(3,5), 'C6':(3,6), 'C7':(3,7), 'C8':(3,8), 'C9':(3,9), 'C10':(3,10), 'C11':(3,11), 'C12':(3,12), - 'D1':(4,1), 'D2':(4,2), 'D3':(4,3), 'D4':(4,4), 'D5':(4,5), 'D6':(4,6), 'D7':(4,7), 'D8':(4,8), 'D9':(4,9), 'D10':(4,10), 'D11':(4,11), 'D12':(4,12), - 'E1':(5,1), 'E2':(5,2), 'E3':(5,3), 'E4':(5,4), 'E5':(5,5), 'E6':(5,6), 'E7':(5,7), 'E8':(5,8), 'E9':(5,9), 'E10':(5,10), 'E11':(5,11), 'E12':(5,12), - 'F1':(6,1), 'F2':(6,2), 'F3':(6,3), 'F4':(6,4), 'F5':(6,5), 'F6':(6,6), 'F7':(6,7), 'F8':(6,8), 'F9':(6,9), 'F10':(6,10), 'F11':(6,11), 'F12':(6,12), - 'G1':(7,1), 'G2':(7,2), 'G3':(7,3), 'G4':(7,4), 'G5':(7,5), 'G6':(7,6), 'G7':(7,7), 'G8':(7,8), 'G9':(7,9), 'G10':(7,10), 'G11':(7,11), 'G12':(7,12), - 'H1':(8,1), 'H2':(8,2), 'H3':(8,3), 'H4':(8,4), 'H5':(8,5), 'H6':(8,6), 'H7':(8,7), 'H8':(8,8), 'H9':(8,9), 'H10':(8,10), 'H11':(8,11), 'H12':(8,12)} - -row_letter_to_number = {'A':1, 'B':2, 'C':3, 'D':4, 'E':5, 'F':6, 'G':7, 'H':8} \ No newline at end of file + return True From f3cfe87a65fc9b45ec49384ef30df5b605ab93d4 Mon Sep 17 00:00:00 2001 From: Oscar Rodriguez Date: Fri, 29 Aug 2025 15:14:17 -0600 Subject: [PATCH 054/100] Added simple test file to test all scripts --- tests/test_all_scripts.py | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 tests/test_all_scripts.py diff --git a/tests/test_all_scripts.py b/tests/test_all_scripts.py new file mode 100644 index 0000000..b02d862 --- /dev/null +++ b/tests/test_all_scripts.py @@ -0,0 +1,34 @@ +import unittest +import subprocess +import pathlib + +SCRIPTS_DIR = pathlib.Path("scripts") + +class TestAllScripts(unittest.TestCase): + def test_all_scripts_with_simulator(self): + # Make sure we found the folder + self.assertTrue(SCRIPTS_DIR.exists(), f"Scripts dir not found: {SCRIPTS_DIR}") + script_files = sorted(SCRIPTS_DIR.glob("*.py"), key=lambda p: p.name.lower()) + + for script_path in script_files: + with self.subTest(script=script_path.name): + print(f"\n=== Simulating: {script_path.name} ===") + result = subprocess.run( + ["opentrons_simulate", str(script_path)], + capture_output=True, + text=True + ) + # Ensure simulator exits successfully + self.assertEqual( + result.returncode, 0, + msg=f"Simulation failed for {script_path}:\n{result.stderr}" + ) + #TODO: Create edge case tests that fail appropriately + #Some example edge cases: + #Too many reagents for the labware + #Not enough available wells for the thermocycler + #Too many colonies for the plating + + +if __name__ == '__main__': + unittest.main() From 6a45a3fdddde7bc487561cf5791e0f21037b19cd Mon Sep 17 00:00:00 2001 From: Oscar Rodriguez Date: Fri, 29 Aug 2025 15:41:46 -0600 Subject: [PATCH 055/100] Added a bacterial transformation script that is more Object oriented and has had the hyperparameters fine-tuned for physical implementation --- scripts/run_Bacterial_Transformation_libre.py | 495 ++++++++++++++++++ 1 file changed, 495 insertions(+) create mode 100644 scripts/run_Bacterial_Transformation_libre.py diff --git a/scripts/run_Bacterial_Transformation_libre.py b/scripts/run_Bacterial_Transformation_libre.py new file mode 100644 index 0000000..165fd2a --- /dev/null +++ b/scripts/run_Bacterial_Transformation_libre.py @@ -0,0 +1,495 @@ +from opentrons import protocol_api +from typing import List, Dict +from pudu.utils import colors + + +class Transformation(): + ''' + Creates a protocol for automated transformation. + + Attributes + ---------- + volume_dna : float + The volume DNA in microliters. By default, 2 microliters. We suggest 2 microliters for extracted plasmid and 5 microliters for PCR products. + volume_competent_cells : float + The volume of the competent cells in microliters. By default, 50 microliters. + volume_recovery_media : float + The volume of recovery media in microliters. By default, 100 microliters. + replicates : int + The number of replicates of the assembly reaction. By default, 2. + thermocycler_starting_well : int + The starting well of the thermocycler module. By default, 0. + thermocycler_labware : str + The labware type of the thermocycler module. By default, 'nest_96_wellplate_100ul_pcr_full_skirt'. + thermocycler_slots : list + The slots of the thermocycler module. By default, [7, 8, 10, 11]. + temperature_module_labware : str + The labware type of the temperature module. By default, 'opentrons_24_aluminumblock_nest_1.5ml_snapcap'. + temperature_module_position : int + The deck position of the temperature module. By default, 1. + tiprack_labware : str + The labware type of the tiprack. By default, 'opentrons_96_tiprack_20ul'. + tiprack_position : int + The deck position of the tiprack. By default, 9. + pipette_type : str + The type of pipette. By default, 'p20_single_gen2'. + pipette_mount : str + The mount of the pipette. By default, 'left'. + aspiration_rate : float + The rate of aspiration in microliters per second. By default, 0.5 microliters per second. + dispense_rate : float + The rate of dispense in microliters per second. By default, 1 microliter per second. + ''' + def __init__(self, + list_of_dna:List = None, + volume_dna:float = 20, + competent_cells:str = None, + replicates:int=2, + thermocycler_starting_well:int = 0, + thermocycler_labware:str = "nest_96_wellplate_100ul_pcr_full_skirt", + temperature_module_labware:str = "opentrons_24_aluminumblock_nest_1.5ml_snapcap", + temperature_module_position:str = '1', + dna_plate:str = "nest_96_wellplate_100ul_pcr_full_skirt", + dna_plate_position:str = '2', + use_dna_96plate:bool = False, + tiprack_p20_labware:str = "opentrons_96_tiprack_20ul", + tiprack_p20_position:str = "9", + tiprack_p200_labware:str = "opentrons_96_filtertiprack_200ul", + tiprack_p200_position:str = "6", + pipette_p20:str = "p20_single_gen2", + pipette_p20_position:str = "left", + pipette_p300:str = "p300_single_gen2", + pipette_p300_position:str = "right", + aspiration_rate:float = 0.5, + dispense_rate:float = 1, + initial_dna_well:int = 0, + water_testing:bool = False + ): + + if list_of_dna is None: + raise ValueError ("Must input a list of DNA strings") + else: + self.list_of_dna = list_of_dna + self.volume_dna = volume_dna + if competent_cells is None: + raise ValueError ("Must input a competent cell strings") + else: + self.competent_cells = competent_cells + self.replicates = replicates + self.thermocycler_starting_well = thermocycler_starting_well + self.thermocycler_labware = thermocycler_labware + self.temperature_module_labware = temperature_module_labware + self.temperature_module_position = temperature_module_position + self.dna_plate = dna_plate + self.dna_plate_position = dna_plate_position + self.use_dna_96plate = use_dna_96plate + self.tiprack_p20_labware = tiprack_p20_labware + self.tiprack_p20_position = tiprack_p20_position + self.tiprack_p200_labware = tiprack_p200_labware + self.tiprack_p200_position = tiprack_p200_position + self.pipette_p20 = pipette_p20 + self.pipette_p20_position = pipette_p20_position + self.pipette_p300 = pipette_p300 + self.pipette_p300_position = pipette_p300_position + self.aspiration_rate = aspiration_rate + self.dispense_rate = dispense_rate + self.initial_dna_well = initial_dna_well + self.water_testing = water_testing + +class HeatShockTransformation(Transformation): + ''' + Creates a protocol for automated transformation. + ''' + def __init__(self, + transfer_volume_dna:float = 2, + transfer_volume_competent_cell:float = 20, + tube_volume_competent_cell:float =100, + transfer_volume_recovery_media:float = 60, + tube_volume_recovery_media:float = 1200, #add a bit more to pick it properly + cold_incubation1:Dict = None, + heat_shock:Dict = None, + cold_incubation2:Dict = None, + recovery_incubation:Dict = None, + *args, **kwargs): + super().__init__(*args, **kwargs) + + self.transfer_volume_dna = transfer_volume_dna + self.transfer_volume_competent_cell = transfer_volume_competent_cell + self.tube_volume_competent_cell = tube_volume_competent_cell + self.transfer_volume_recovery_media = transfer_volume_recovery_media + self.tube_volume_recovery_media = tube_volume_recovery_media + if cold_incubation1 is None: + self.cold_incubation1 = {'temperature': 4, 'hold_time_minutes': 30} + else: + self.cold_incubation1 = cold_incubation1 + if heat_shock is None: + self.heat_shock = {'temperature': 42, 'hold_time_minutes': 1} + else: + self.heat_shock = heat_shock + if cold_incubation2 is None: + self.cold_incubation2 = {'temperature': 4, 'hold_time_minutes': 2} + else: + self.cold_incubation2 = cold_incubation2 + if recovery_incubation is None: + self.recovery_incubation = {'temperature': 37, 'hold_time_minutes': 60} + else: + self.recovery_incubation = recovery_incubation + self.recovery_incubation = recovery_incubation + self.dict_of_parts_in_temp_mod_position = {} + self.dict_of_parts_in_thermocycler = {} + + def liquid_transfer(self, protocol, pipette, volume, source, dest, + asp_rate: float = 0.5, disp_rate: float = 1.0, + blow_out: bool = True, touch_tip: bool = False, + mix_before: float = 0.0, mix_after: float = 0.0, + mix_reps: int = 3, new_tip: bool = True, + remove_air:bool = True, drop_tip: bool = True): + if new_tip: + pipette.pick_up_tip() + + if mix_before > 0: + pipette.mix(mix_reps, mix_before, source) + + pipette.aspirate(volume, source, rate=asp_rate) + pipette.dispense(volume, dest, rate=disp_rate) + + if mix_after > 0: + pipette.mix(mix_reps, mix_after, dest) + + if blow_out: + pipette.blow_out() + + if remove_air: + for _ in range(2): + pipette.aspirate(20, dest.bottom(), rate=disp_rate) + pipette.dispense(20, dest.bottom(8), rate=disp_rate) + + if touch_tip: + pipette.touch_tip(radius=0.5, v_offset=-14, speed=20) + + if drop_tip: + pipette.drop_tip() + + def run(self, protocol: protocol_api.ProtocolContext): + # Force water testing mode during simulation + if protocol.is_simulating(): + self.water_testing = True + protocol.comment("Simulation detected - enabling water testing mode") + # Labware + # Load the temperature module + temperature_module = protocol.load_module('temperature module', self.temperature_module_position) + alumblock = temperature_module.load_labware(self.temperature_module_labware) + # Load the thermocycler module, its default location is on slots 7, 8, 10 and 11 + thermocycler_module = protocol.load_module('thermocycler module') + pcr_plate = thermocycler_module.load_labware(self.thermocycler_labware) + #If using the 96-well pcr plate as a dna construct source + if self.use_dna_96plate: + dna_plate = protocol.load_labware(self.dna_plate, self.dna_plate_position) + # Load the tiprack + tiprack_p20 = protocol.load_labware(self.tiprack_p20_labware, self.tiprack_p20_position) + tiprack_p200 = protocol.load_labware(self.tiprack_p200_labware, self.tiprack_p200_position) + # Load the pipette + pipette_p20 = protocol.load_instrument(self.pipette_p20, self.pipette_p20_position, tip_racks=[tiprack_p20]) + pipette_p300 = protocol.load_instrument(self.pipette_p300, self.pipette_p300_position, + tip_racks=[tiprack_p200]) + #Validate protocol + self._validate_protocol(protocol, alumblock) + + #Load Reagents + if self.use_dna_96plate: + DNA_wells = self._load_dna_list(protocol, dna_plate, self.volume_dna, self.list_of_dna, initial_well=self.initial_dna_well) + competent_cell_wells = self._load_reagents(protocol, alumblock, self.tube_volume_competent_cell, f"Competent Cell {self.competent_cells}", self.competent_cell_tubes_needed) + media_wells = self._load_reagents(protocol, alumblock, self.tube_volume_recovery_media, "Media", self.media_tubes_needed, initial_well=len(competent_cell_wells)) + + else: + DNA_wells = self._load_dna_list(protocol, alumblock, self.volume_dna, self.list_of_dna) + competent_cell_wells = self._load_reagents(protocol, alumblock, self.tube_volume_competent_cell, f"Competent Cell {self.competent_cells}", self.competent_cell_tubes_needed, initial_well=len(DNA_wells)) + media_wells = self._load_reagents(protocol, alumblock, self.tube_volume_recovery_media, "Media", self.media_tubes_needed, initial_well=len(DNA_wells)+len(competent_cell_wells)) + + #Set Temperature module and Thermocycler module to 4 + thermocycler_module.open_lid() + if not self.water_testing: + temperature_module.set_temperature(4) + thermocycler_module.set_block_temperature(4) + + #Load competent cells into the thermocycler + pipette = pipette_p300 + self._transfer_competent_cells(protocol, pipette, pcr_plate, competent_cell_wells, self.transfer_volume_competent_cell, self.thermocycler_starting_well) + + #Load DNA into the thermocycler + if self.transfer_volume_dna > 20: + pipette = pipette_p300 + else: + pipette = pipette_p20 + self._transfer_DNA(protocol, pipette, pcr_plate, DNA_wells, self.transfer_volume_dna, self.thermocycler_starting_well) + + # Cold Incubation + thermocycler_module.close_lid() + profile = [ + self.cold_incubation1, # 1st cold incubation (long) + self.heat_shock, # Heat shock + self.cold_incubation2 # 2nd cold incubation (short) + ] + if not self.water_testing: + thermocycler_module.execute_profile(steps=profile, repetitions=1, block_max_volume=30) + thermocycler_module.open_lid() + + #Load liquid broth + pipette = pipette_p300 + self._transfer_liquid_broth(protocol, pipette, pcr_plate, media_wells, self.transfer_volume_recovery_media, self.thermocycler_starting_well) + + # Recovery Incubation + thermocycler_module.close_lid() + recovery = [ + self.recovery_incubation + ] + if not self.water_testing: + thermocycler_module.execute_profile(steps=recovery, repetitions=1, block_max_volume=30) + + # output + print('Strain and media tube in temp_mod') + print(self.dict_of_parts_in_temp_mod_position) + print('Genetically modified organisms in thermocycler') + print(self.dict_of_parts_in_thermocycler) + + def _validate_protocol(self, protocol, labware): + #Number of available wells to load into + module_wells = len(labware.wells()) + #Number of dna constructs to be used + total_constructs = len(self.list_of_dna) + #Number of tubes with competent cells to be used + self.total_transformations = total_constructs*self.replicates + self.transformations_per_cell_tube = self.tube_volume_competent_cell//self.transfer_volume_competent_cell + self.competent_cell_tubes_needed = (self.total_transformations + self.transformations_per_cell_tube - 1) // self.transformations_per_cell_tube + #Number of tubes with media to be used + self.transformations_per_media_tube = self.tube_volume_recovery_media//self.transfer_volume_recovery_media + self.media_tubes_needed = (self.total_transformations + self.transformations_per_media_tube - 1) // self.transformations_per_media_tube + if self.use_dna_96plate: + if self.competent_cell_tubes_needed + self.media_tubes_needed > module_wells: + raise ValueError(f'The number of reagents is more that {module_wells}.' + f'There are {self.competent_cell_tubes_needed} tubes with competent cells.' + f'{self.media_tubes_needed} tubes with media.' + f'Please modify the protocol and try again.') + else: + if total_constructs + self.competent_cell_tubes_needed + self.media_tubes_needed > module_wells: + raise ValueError(f'The number of reagents is more than {module_wells}.' + f'There are {total_constructs} DNA constructs.' + f'{self.competent_cell_tubes_needed} tubes with competent cells.' + f'{self.media_tubes_needed} tubes with media.' + f'Please modify the protocol and try again.') + + + def _load_dna_list(self, protocol, labware, volume, dna_list, initial_well=0, description=None, color_index = None): + """ + Load individual DNA constructs into wells, one construct per well. + + Parameters: + - protocol: Protocol context + - labware: Labware object (temperature module or DNA plate) + - volume: Volume to load in µL + - construct_list: List of construct names (e.g., ['GVD0011', 'GVD0013']) + - initial_well: Starting well index + - color_index: Starting color index (auto-increments if None) + + Returns: + - List of well objects + """ + wells = [] + current_color = color_index if color_index is not None else 0 + for i, construct in enumerate(dna_list): + #Get the well + well = labware.wells()[initial_well+i] + wells.append(well) + + #Covert tuple to string if needed + if isinstance(construct, tuple): + construct_name = '_'.join(construct) + else: + construct_name = construct + #Define and load "liquid" + liquid = protocol.define_liquid( + name = construct_name, + description= description if description is not None else f"{construct} DNA construct", + display_color= colors[current_color%len(colors)] + ) + well.load_liquid(liquid, volume=volume) + + #Track in dictionary + if not self.use_dna_96plate: + self.dict_of_parts_in_temp_mod_position[construct_name] = well.well_name + current_color += 1 + return wells + + def _load_reagents(self, protocol, labware, volume, reagent_name, tube_count, initial_well=0, color_index=None): + """ + Load multiple tubes of the same reagent type. + + Parameters: + - protocol: Protocol context + - labware: Labware object (temperature module) + - volume: Volume to load in µL + - reagent_base_name: Base name for reagent (e.g., "Competent_Cell", "Media") + - tube_count: Number of tubes to load + - initial_well: Starting well index + - color_index: Starting color index (auto-increments if None) + + Returns: + - List of well objects + """ + wells = [] + current_color = color_index if color_index is not None else 0 + for i in range(tube_count): + well = labware.wells()[initial_well+i] + wells.append(well) + name = f"{reagent_name}_{i+1}" + + liquid = protocol.define_liquid( + name = name, + display_color= colors[current_color%len(colors)] + ) + + well.load_liquid(liquid, volume=volume) + self.dict_of_parts_in_temp_mod_position[name] = well.well_name + current_color += 1 + return wells + + def _transfer_competent_cells(self, protocol, pipette, pcr_plate, competent_cell_wells, + transfer_volume_competent_cell, thermocycler_starting_well): + """ + Transfer competent cells to thermocycler wells using distribute method. + + Parameters: + - protocol: Protocol context + - pipette: Pipette instrument + - pcr_plate: Thermocycler plate + - competent_cell_wells: List of wells containing competent cells + - transfer_volume_competent_cell: Volume to transfer per well + - thermocycler_starting_well: Starting well index in thermocycler + """ + well_index = thermocycler_starting_well + + for tube_index, source_well in enumerate(competent_cell_wells): + #Calculate how many wells this cell tube will fill + remaining_transformations = self.total_transformations - (tube_index * self.transformations_per_cell_tube) + wells_to_fill = min(self.transformations_per_cell_tube, remaining_transformations) + + #Destination wells + dest_wells = pcr_plate.wells()[well_index:well_index+wells_to_fill] + + #Distribute + pipette.distribute( + volume=transfer_volume_competent_cell, + source=source_well, + dest=dest_wells, + mix_before=(3,50), + disposal_volume=0, + new_tip='once' + ) + + #Thermocycler Dictionary + name = f"Competent_Cell_{self.competent_cells}_{tube_index+1}" + for well in dest_wells: + if well.well_name not in self.dict_of_parts_in_thermocycler: + self.dict_of_parts_in_thermocycler[well.well_name] = [] + self.dict_of_parts_in_thermocycler[well.well_name].append(name) + + well_index += wells_to_fill + + def _transfer_DNA(self, protocol, pipette, pcr_plate, DNA_wells, transfer_volume_dna, thermocycler_starting_well): + """ + Transfer DNA constructs to thermocycler wells with replicates grouped together. + + Parameters: + - protocol: Protocol context + - pipette: Pipette instrument + - pcr_plate: Thermocycler plate + - DNA_wells: List of wells containing DNA constructs + - transfer_volume_dna: Volume to transfer per well + - thermocycler_starting_well: Starting well index in thermocycler + """ + for construct_index, (construct_name, source_well) in enumerate(zip(self.list_of_dna, DNA_wells)): + construct_well = construct_index * self.replicates + thermocycler_starting_well + + for replicate in range(self.replicates): + dest_well = pcr_plate.wells()[construct_well+replicate] + #Transfer liquid + self.liquid_transfer( + protocol=protocol, + pipette=pipette, + volume=transfer_volume_dna, + source=source_well, + dest=dest_well, + asp_rate=self.aspiration_rate, + disp_rate=self.dispense_rate, + mix_before=transfer_volume_dna, + touch_tip=True + ) + + #Track in dictionary + if dest_well.well_name not in self.dict_of_parts_in_thermocycler: + self.dict_of_parts_in_thermocycler[dest_well.well_name] = [] + self.dict_of_parts_in_thermocycler[dest_well.well_name].append(construct_name) + + def _transfer_liquid_broth(self, protocol, pipette, pcr_plate, media_wells, transfer_volume_recovery_media, + thermocycler_starting_well): + """ + Transfer recovery media to thermocycler wells using distribute method. + + Parameters: + - protocol: Protocol context + - pipette: Pipette instrument + - pcr_plate: Thermocycler plate + - media_wells: List of wells containing recovery media + - transfer_volume_recovery_media: Volume to transfer per well + - thermocycler_starting_well: Starting well index in thermocycler + """ + well_index = thermocycler_starting_well + + for tube_index, source_well in enumerate(media_wells): + #Calculate how many wells this media tube will fill + remaining_transformations = self.total_transformations - (tube_index * self.transformations_per_media_tube) + wells_to_fill = min(self.transformations_per_media_tube, remaining_transformations) + + # Get destination wells for this tube using .top() to avoid contamination + dest_wells = [pcr_plate.wells()[well_index+i].top(2) for i in range(int(wells_to_fill))] + + #Distribute recovery media + pipette.distribute( + volume=transfer_volume_recovery_media, + source=source_well, + dest=dest_wells, + disposal_volume=0, + new_tip='once', + air_gap=10 + ) + + #Track in dictionary + media_name = f"Media_{tube_index+1}" + for i in range(int(wells_to_fill)): + well_name = pcr_plate.wells()[well_index + i].well_name + if well_name not in self.dict_of_parts_in_thermocycler: + self.dict_of_parts_in_thermocycler[well_name] = [] + self.dict_of_parts_in_thermocycler[well_name].append(media_name) + + well_index += wells_to_fill + + + +# metadata +metadata = { +'protocolName': 'PUDU Transformation', +'author': 'Gonzalo Vidal , refactored by Oscar Rodriguez', +'description': 'Automated heat-shock transformation protocol', +'apiLevel': '2.22'} + +def run(protocol= protocol_api.ProtocolContext): + # list_of_dna = ['GVD0011', 'GVD0013', 'GVD0015', 'GVD0016', 'GVD0019', 'GVD0020'] + # list_of_dna = ['GVD0011'] + list_of_dna = [('GVP0008', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_1'), + ('GVP0008', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_2'), + ('GVP0010', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_1'), + ('GVP0010', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_2'), + ('GVP0012', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_1'), + ('GVP0012', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_2')] + pudu_transformation = HeatShockTransformation(list_of_dna= list_of_dna, competent_cells = 'DH5alpha', use_dna_96plate=True, water_testing=True) + pudu_transformation.run(protocol) From 8db7dbd5e67dc1639acb2bcdb8dc256c60395678 Mon Sep 17 00:00:00 2001 From: Oscar Rodriguez Date: Tue, 2 Sep 2025 16:16:35 -0600 Subject: [PATCH 056/100] Changed source code to reflect hyperparameter tuning and OOP design. Added plating.py as well to plate colonies after transformation. --- requirements.txt | 21 +- ...ion.py => run_Bacterial_Transformation.py} | 6 +- scripts/run_Domestication.py | 6 +- scripts/run_Loop_assembly.py | 8 +- scripts/run_Plate_samples.py | 6 +- scripts/run_Plate_supplemented_sample.py | 6 +- scripts/run_Plating.py | 17 + scripts/run_Plating_libre.py | 433 ++++++ scripts/run_iGEM_gfp_od.py | 6 +- scripts/run_iGEM_rgb_od.py | 6 +- src/pudu/assembly.py | 1328 +++++++++++++---- src/pudu/calibration.py | 749 +++++----- src/pudu/plating.py | 270 ++++ src/pudu/sample_preparation.py | 2 +- src/pudu/transformation.py | 604 +++++--- 15 files changed, 2568 insertions(+), 900 deletions(-) rename scripts/{run_Chemical_Transformation.py => run_Bacterial_Transformation.py} (66%) create mode 100644 scripts/run_Plating.py create mode 100644 scripts/run_Plating_libre.py create mode 100644 src/pudu/plating.py diff --git a/requirements.txt b/requirements.txt index 37ac0d5..a98e63f 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,5 +1,6 @@ -aionotify==0.2.0 -anyio==3.3.0 +aionotify==0.3.1 +annotated-types==0.7.0 +anyio==3.6.1 attrs==22.2.0 biopython==1.81 certifi==2022.12.7 @@ -10,17 +11,19 @@ et-xmlfile==1.1.0 graphviz==0.20.1 idna==3.4 isodate==0.6.1 -jsonschema==3.0.2 +jsonschema==4.17.3 lxml==4.9.2 numpy==1.24.2 openpyxl==3.1.1 -opentrons==6.2.1 -opentrons-shared-data==6.2.1 +opentrons==8.4.1 +opentrons-shared-data==8.4.1 ordered-set==4.1.0 owlrl==6.0.2 packaging==23.0 prettytable==2.5.0 -pydantic==1.8.2 +pydantic==2.11.7 +pydantic-settings==2.9.1 +pydantic_core==2.33.2 PyLaTeX==1.4.1 pyparsing==2.4.7 PyPDF2==3.0.1 @@ -28,6 +31,8 @@ pyrsistent==0.19.3 pyserial==3.5 pyshacl==0.18.1 python-dateutil==2.8.2 +python-dotenv==1.1.0 +pyusb==1.2.1 rdflib==6.2.0 requests==2.28.2 sbol-factory==1.1.1.post1 @@ -37,8 +42,10 @@ sbol3==1.0.1 six==1.16.0 sniffio==1.3.0 SPARQLWrapper==2.0.0 -typing_extensions==4.5.0 +typing_extensions==4.14.0 tyto==1.4 urllib3==1.26.14 wcwidth==0.2.6 wrapt==1.15.0 +xlsxwriter==3.2.5 + diff --git a/scripts/run_Chemical_Transformation.py b/scripts/run_Bacterial_Transformation.py similarity index 66% rename from scripts/run_Chemical_Transformation.py rename to scripts/run_Bacterial_Transformation.py index 20c4bc7..06ca45f 100644 --- a/scripts/run_Chemical_Transformation.py +++ b/scripts/run_Bacterial_Transformation.py @@ -1,4 +1,4 @@ -from pudu.transformation import Chemical_transformation +from pudu.transformation import HeatShockTransformation from opentrons import protocol_api # metadata @@ -6,10 +6,10 @@ 'protocolName': 'PUDU Transformation', 'author': 'Gonzalo Vidal ', 'description': 'Automated transformation protocol', -'apiLevel': '2.13'} +'apiLevel': '2.22'} def run(protocol= protocol_api.ProtocolContext): - pudu_transformation = Chemical_transformation(list_of_dnas=['pro', 'rbs','cds', 'ter'], competent_cells = 'DH5alpha') + pudu_transformation = HeatShockTransformation(list_of_dna=['pro', 'rbs','cds', 'ter'], competent_cells = 'DH5alpha') pudu_transformation.run(protocol) #After simulation look at the beginning of the output to see the position of input reagents and outputs. \ No newline at end of file diff --git a/scripts/run_Domestication.py b/scripts/run_Domestication.py index 3410657..2f55b0d 100644 --- a/scripts/run_Domestication.py +++ b/scripts/run_Domestication.py @@ -6,11 +6,11 @@ 'protocolName': 'PUDU Domestication', 'author': 'Gonzalo Vidal ', 'description': 'Automated DNA domestication protocol', -'apiLevel': '2.13'} +'apiLevel': '2.22'} def run(protocol= protocol_api.ProtocolContext): - - pudu_domestication = Domestication(parts=['pro', 'rbs','cds', 'ter'], acceptor_backbone='UA') + assembly = [{"parts": ['pro', 'rbs', 'cds', 'ter'], "backbone": 'UA', "restriction_enzyme": "BsaI"}] + pudu_domestication = Domestication(assemblies=assembly) pudu_domestication.run(protocol) #After simulation look at the beginning of the output to see the position of input reagents and outputs. \ No newline at end of file diff --git a/scripts/run_Loop_assembly.py b/scripts/run_Loop_assembly.py index 2e15aab..fcfaeb1 100644 --- a/scripts/run_Loop_assembly.py +++ b/scripts/run_Loop_assembly.py @@ -1,6 +1,6 @@ -from pudu.assembly import Loop_assembly +from pudu.assembly import LoopAssembly from opentrons import protocol_api -import sbol3 + assembly_Odd_1 = {"promoter":["j23101", "j23100"], "rbs":"B0034", "cds":"GFP", "terminator":"B0015", "receiver":"Odd_1"} assembly_Even_2 = {"c4_receptor":"GD0001", "c4_buff_gfp":"GD0002", "spacer1":"20ins1", "spacer2":"Even_2", "receiver":"Even_2"} @@ -11,9 +11,9 @@ 'protocolName': 'PUDU Loop assembly', 'author': 'Gonzalo Vidal ', 'description': 'Automated DNA assembly Loop protocol', -'apiLevel': '2.13'} +'apiLevel': '2.14'} def run(protocol= protocol_api.ProtocolContext): - pudu_loop_assembly = Loop_assembly(assemblies=assemblies,) + pudu_loop_assembly = LoopAssembly(assemblies=assemblies,) pudu_loop_assembly.run(protocol) \ No newline at end of file diff --git a/scripts/run_Plate_samples.py b/scripts/run_Plate_samples.py index 5bdfc5a..e64b34c 100644 --- a/scripts/run_Plate_samples.py +++ b/scripts/run_Plate_samples.py @@ -1,4 +1,4 @@ -from pudu.test_setup import Plate_samples +from pudu.sample_preparation import PlateSamples from opentrons import protocol_api # metadata @@ -6,9 +6,9 @@ 'protocolName': 'PUDU Plate Setup', 'author': 'Gonzalo Vidal ', 'description': 'Automated 96 well plate setup protocol', -'apiLevel': '2.13'} +'apiLevel': '2.14'} def run(protocol= protocol_api.ProtocolContext): - pudu_plate_samples = Plate_samples(samples=['s1', 's2','s3', 's4', 's5']) + pudu_plate_samples = PlateSamples(samples=['s1', 's2','s3', 's4', 's5']) pudu_plate_samples.run(protocol) \ No newline at end of file diff --git a/scripts/run_Plate_supplemented_sample.py b/scripts/run_Plate_supplemented_sample.py index 04a94bf..f2625d3 100644 --- a/scripts/run_Plate_supplemented_sample.py +++ b/scripts/run_Plate_supplemented_sample.py @@ -1,4 +1,4 @@ -from pudu.test_setup import Plate_supplemented_samples +from pudu.sample_preparation import PlateWithGradient from opentrons import protocol_api # metadata @@ -6,9 +6,9 @@ 'protocolName': 'PUDU Plate Setup', 'author': 'Gonzalo Vidal ', 'description': 'Automated 96 well plate setup protocol', -'apiLevel': '2.13'} +'apiLevel': '2.14'} def run(protocol= protocol_api.ProtocolContext): - pudu_plate_supplemented_samples = Plate_supplemented_samples(sample_name='sample1', inducer_name='IPTG' ) + pudu_plate_supplemented_samples = PlateWithGradient(sample_name='sample1', inducer_name='IPTG' ) pudu_plate_supplemented_samples.run(protocol) \ No newline at end of file diff --git a/scripts/run_Plating.py b/scripts/run_Plating.py new file mode 100644 index 0000000..1f37c7e --- /dev/null +++ b/scripts/run_Plating.py @@ -0,0 +1,17 @@ +# metadata +from opentrons import protocol_api + +from pudu.plating import Plating + +metadata = { + 'protocolName': 'Plating Protocol', + 'author': 'Oscar Rodriguez', + 'description': 'Automated Transformed Bacteria Plating Protocol', + 'apiLevel': '2.23' +} + +# constructs = {"A1":["GVP8"],"A2":["GVP10"],"A3":["GVP12"]} +constructs = {'A1': ['Competent_Cell_DH5alpha_1', ('GVP0008', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_1'), 'Media_1'], 'B1': ['Competent_Cell_DH5alpha_1', ('GVP0008', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_1'), 'Media_1'], 'C1': ['Competent_Cell_DH5alpha_1', ('GVP0008', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_2'), 'Media_1'], 'D1': ['Competent_Cell_DH5alpha_1', ('GVP0008', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_2'), 'Media_1'], 'E1': ['Competent_Cell_DH5alpha_1', ('GVP0010', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_1'), 'Media_1'], 'F1': ['Competent_Cell_DH5alpha_2', ('GVP0010', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_1'), 'Media_1'], 'G1': ['Competent_Cell_DH5alpha_2', ('GVP0010', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_2'), 'Media_1'], 'H1': ['Competent_Cell_DH5alpha_2', ('GVP0010', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_2'), 'Media_1'], 'A2': ['Competent_Cell_DH5alpha_2', ('GVP0012', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_1'), 'Media_1'], 'B2': ['Competent_Cell_DH5alpha_2', ('GVP0012', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_1'), 'Media_1'], 'C2': ['Competent_Cell_DH5alpha_3', ('GVP0012', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_2'), 'Media_1'], 'D2': ['Competent_Cell_DH5alpha_3', ('GVP0012', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_2'), 'Media_1']} +def run(protocol: protocol_api.ProtocolContext): + plating_protocol = Plating(bacterium_locations=constructs,replicates=2) + plating_protocol.run(protocol) \ No newline at end of file diff --git a/scripts/run_Plating_libre.py b/scripts/run_Plating_libre.py new file mode 100644 index 0000000..180d621 --- /dev/null +++ b/scripts/run_Plating_libre.py @@ -0,0 +1,433 @@ +from typing import Optional, Dict +from pudu import colors, SmartPipette +from opentrons import protocol_api + + +# construct_colors = ["#0000FF", "#FF0000", "#00FF00", "#8B4513", "#FFA500", "#000000", "#800080"] +# class SmartPipette: +# """ +# Wrapper for automatic volume tracking +# """ +# +# def __init__(self, pipette, protocol): +# self.pipette = pipette +# self.protocol = protocol +# if not hasattr(protocol, 'define_liquid'): +# raise RuntimeError("This class requires API with liquid tracking support") +# +# def is_conical_tube(self, well) -> bool: +# """Check if the well is from a conical tube labware""" +# return 'conical' in well.parent.load_name.lower() +# +# def get_well_volume(self, well) -> Optional[float]: +# """Get current volume in well using pure API method""" +# try: +# return well.current_liquid_volume() +# except Exception as e: +# self.protocol.comment(f"ERROR reading volume from {well.well_name}: {e}") +# return None +# +# def get_well_height(self, well) -> Optional[float]: +# """Get current liquid height using pure API method (if available)""" +# try: +# if hasattr(well, 'current_liquid_height'): +# return well.current_liquid_height() +# else: +# self.protocol.comment("Liquid height method not available in this API version") +# return None +# except Exception as e: +# self.protocol.comment(f"ERROR reading height from {well.well_name}: {e}") +# return None +# +# def get_conical_tube_aspiration_height(self, well) -> float: +# """ +# Calculate safe aspiration height for conical tubes using proven method +# Uses API liquid tracking to get current volume +# """ +# # Get current volume from API +# try: +# current_volume = well.current_liquid_volume() +# if current_volume is None: +# raise ValueError("API returned None for liquid volume") +# except Exception as e: +# self.protocol.comment(f"ERROR: Could not get liquid volume from API: {e}") +# return 10.0 # Safe fallback height +# +# max_volume = well.max_volume +# tube_depth = well.depth - 10 # Account for threads +# min_safe_height = 10 # mm minimum to prevent tip damage +# meniscus_offset = 10 # mm below liquid surface +# +# # Calculate liquid height based on current volume +# liquid_height = (current_volume / max_volume) * tube_depth +# aspiration_height = max(liquid_height - meniscus_offset, min_safe_height) +# +# self.protocol.comment( +# f"Conical calculation: {current_volume:.0f}µL remaining = {aspiration_height:.1f}mm height") +# return aspiration_height +# +# def get_aspiration_location(self, well): +# """ +# Get intelligent aspiration location using API volume data and proven height calculation +# """ +# if not self.is_conical_tube(well): +# return well +# +# try: +# current_volume = well.current_liquid_volume() +# if current_volume is None or current_volume < well.max_volume * 0.2: +# # Less than 20% remaining - use standard aspiration +# self.protocol.comment("Low volume detected - using standard aspiration") +# return well +# +# # Use conical tube calculation +# safe_height = self.get_conical_tube_aspiration_height(well) +# return well.bottom(safe_height) +# +# except Exception as e: +# self.protocol.comment(f"ERROR getting volume from API: {e}") +# return well # Fallback to standard aspiration +# +# def liquid_transfer(self, volume: float, source, destination, +# asp_rate: float = 0.5, disp_rate: float = 1.0, +# blow_out: bool = True, touch_tip: bool = False, +# mix_before: float = 0.0, mix_after: float = 0.0, +# mix_reps: int = 3, new_tip: bool = True, drop_tip: bool = True) -> bool: +# """ +# Transfer liquid using pure API liquid tracking for volume management +# +# Returns: +# bool: True if transfer was successful, False if insufficient volume +# """ +# # Check volume using API methods only +# try: +# current_volume = source.current_liquid_volume() +# if current_volume is None: +# self.protocol.comment("WARNING: API returned None for source volume") +# return False +# +# if current_volume < volume: +# self.protocol.comment(f"WARNING: Insufficient volume. " +# f"Requested: {volume}µL, Available: {current_volume:.0f}µL") +# return False +# +# except Exception as e: +# self.protocol.comment(f"ERROR: Could not check source volume: {e}") +# return False +# +# if new_tip: +# self.pipette.pick_up_tip() +# +# # Get aspiration location using API data + proven calculation +# aspiration_location = self.get_aspiration_location(source) +# +# # Mix before if requested +# if mix_before > 0: +# # Use current volume to limit mixing +# try: +# safe_mix_volume = min(mix_before, current_volume * 0.8) +# self.pipette.mix(mix_reps, safe_mix_volume, aspiration_location) +# except: +# self.protocol.comment("Skipping mix_before due to API error") +# +# # Aspirate +# self.pipette.aspirate(volume, aspiration_location, rate=asp_rate) +# +# # Dispense +# self.pipette.dispense(volume, destination.center(), rate=disp_rate) +# +# # Mix after if requested +# if mix_after > 0: +# self.pipette.mix(mix_reps, mix_after, destination) +# +# if blow_out: +# self.pipette.blow_out() +# +# if touch_tip: +# self.pipette.touch_tip() +# +# if drop_tip: +# self.pipette.drop_tip() +# +# return True + +class Plating(): + """ + Creates a protocol for automated plating of transformed bacteria + + Attributes: + + """ + def __init__(self, + volume_total_reaction: float = 20, + volume_bacteria_transfer: float = 2, + volume_colony: float = 4, + volume_lb_transfer: float = 18, + volume_lb: float = 10000, + replicates: int = 1, + number_dilutions: int = 2, + max_colonies = 192, + + thermocycler_starting_well: int = 0, + # thermocycler_labware: str = 'nest_96_wellplate_100ul_pcr_full_skirt', + thermocycler_labware: str = 'biorad_96_wellplate_200ul_pcr', + + small_tiprack: str = 'opentrons_96_filtertiprack_20ul', + small_tiprack_position: str = '9', + initial_small_tip: str = None, + large_tiprack: str = 'opentrons_96_filtertiprack_200ul', + large_tiprack_position: str = '1', + initial_large_tip:str = None, + small_pipette: str = 'p20_single_gen2', + small_pipette_position: str = 'left', + large_pipette: str = 'p300_single_gen2', + large_pipette_position: str = 'right', + + + # dilution_plate: str = 'nest_96_wellplate_200ul_flat', + dilution_plate: str = 'nest_96_wellplate_100ul_pcr_full_skirt', + dilution_plate_position1: str = '2', + dilution_plate_position2: str = '3', + # agar_plate: str = 'nunc_omnitray_96grid', + agar_plate: str = 'nest_96_wellplate_100ul_pcr_full_skirt', + agar_plate_position1: str = '5', + agar_plate_position2: str = '6', + tube_rack: str = 'opentrons_15_tuberack_falcon_15ml_conical', + tube_rack_position: str = '4', + lb_tube_position: int = 0, + + aspiration_rate: float = 0.5, + dispense_rate: float = 1, + bacterium_locations: Dict = None): + + self.volume_total_reaction = volume_total_reaction + self.volume_bacteria_transfer = volume_bacteria_transfer + self.volume_colony = volume_colony + self.volume_lb_transfer = volume_lb_transfer + self.volume_lb = volume_lb + self.replicates = replicates + self.number_dilutions = number_dilutions + self.thermocycler_starting_well = thermocycler_starting_well + self.thermocycler_labware = thermocycler_labware + self.small_tiprack = small_tiprack + self.small_tiprack_position = small_tiprack_position + self.initial_small_tip = initial_small_tip + self.large_tiprack = large_tiprack + self.large_tiprack_position = large_tiprack_position + self.initial_large_tip = initial_large_tip + self.small_pipette = small_pipette + self.small_pipette_position = small_pipette_position + self.large_pipette = large_pipette + self.large_pipette_position = large_pipette_position + self.dilution_plate = dilution_plate + self.dilution_plate_position1 = dilution_plate_position1 + self.dilution_plate_position2 = dilution_plate_position2 + self.agar_plate = agar_plate + self.agar_plate_position1 = agar_plate_position1 + self.agar_plate_position2 = agar_plate_position2 + self.tube_rack = tube_rack + self.tube_rack_position = tube_rack_position + self.lb_tube_position = lb_tube_position + self.aspiration_rate = aspiration_rate + self.dispense_rate = dispense_rate + self.bacterium_locations = bacterium_locations + self.number_constructs = len(bacterium_locations) + self.total_colonies = self.number_constructs * self.number_dilutions * self.replicates + self.max_colonies = max_colonies + if self.total_colonies > self.max_colonies: + raise ValueError(f"Protocol only supports a max of {self.max_colonies} colonies") + if self.replicates > 8: + raise ValueError("Protocol only supports a max of 8 replicates") + if self.number_dilutions > 2: + raise ValueError("Protocol currently supports a max of 2 dilutions") + + def calculate_plate_layout(self,protocol, plate1, plate2=None): + """ + Calculate the layout for colonies on plates with dynamic buffer between dilutions + Returns: dict with plate assignments and well positions + """ + colonies_per_dilution = self.number_constructs * self.replicates + + layout = { + 'dilution_1': {'plate': 1, 'wells':[]}, + 'dilution_2': {'plate': 1, 'wells':[]} if self.number_dilutions ==2 else None + } + + #Check if we need two plates + if self.number_dilutions ==2 and colonies_per_dilution > 48: + if plate2 is None: + raise ValueError("Two plates required but plate2 not provided") + #Each Dilution gets its own plate + layout['dilution_1']['wells'] = plate1.wells()[:colonies_per_dilution] + layout['dilution_2']['plate'] = 2 + layout['dilution_2']['wells'] = plate2.wells()[:colonies_per_dilution] + protocol.comment(f"Using 2 plates: {colonies_per_dilution} colonies per dilution exceeds single plate capacity") + elif self.number_dilutions ==2 and colonies_per_dilution <= 48: + #Both Dilutions Fit On One Plate + first_half = plate1.wells()[:colonies_per_dilution] + second_half = plate1.wells()[48:48+colonies_per_dilution] + layout['dilution_1']['wells'] = first_half + layout['dilution_2']['wells'] = second_half + protocol.comment(f"Using only one {plate1}: {colonies_per_dilution} colonies on each half") + else: + #Single dilution + layout['dilution_1']['wells'] = plate1.wells()[:colonies_per_dilution] + return layout + + def run(self, protocol: protocol_api.ProtocolContext): + #Labware + #Load the thermocycler module, its default location is on slots 7, 8, 10 and 11 + thermocycler = protocol.load_module('thermocyclerModuleV1') + thermocycler_plate = thermocycler.load_labware(self.thermocycler_labware) + #Load the tipracks + small_tiprack = protocol.load_labware(self.small_tiprack, self.small_tiprack_position) + large_tiprack = protocol.load_labware(self.large_tiprack, self.large_tiprack_position) + #Load the pipettes + small_pipette = protocol.load_instrument(self.small_pipette, self.small_pipette_position, tip_racks=[small_tiprack]) + if self.initial_small_tip: + small_pipette.starting_tip = small_tiprack[self.initial_small_tip] + large_pipette = protocol.load_instrument(self.large_pipette, self.large_pipette_position, tip_racks=[large_tiprack]) + if self.initial_large_tip: + large_pipette.starting_tip = large_tiprack[self.initial_large_tip] + #SmartPipette Wrapper to avoid dunking into the LB + smart_pipette = SmartPipette(large_pipette,protocol) + #Load the tube rack + tube_rack = protocol.load_labware(self.tube_rack, self.tube_rack_position) + lb_tube = tube_rack.wells()[self.lb_tube_position] + #load liquids + liquid_broth = protocol.define_liquid( + name="liquid_broth", + description="Liquid broth for dilutions", + display_color="#D2B48C" + ) + lb_tube.load_liquid(liquid = liquid_broth, volume = self.volume_lb) + # Load bacteria into thermocycler wells + for i, (well_position, construct_names) in enumerate(self.bacterium_locations.items()): + liquid_bacteria = protocol.define_liquid( + name="transformed_bacteria", + description=f"{construct_names}", + display_color=colors[i%len(colors)] + ) + well = thermocycler_plate[well_position] + well.load_liquid(liquid=liquid_bacteria, volume=self.volume_total_reaction) + + # Load the dilution plates and Calculate the layout of the plates + dilution_plate1 = protocol.load_labware(self.dilution_plate, self.dilution_plate_position1) + if self.total_colonies <= len(dilution_plate1.wells()): + dilution_layout = self.calculate_plate_layout(protocol, dilution_plate1) + else: + dilution_plate2 = protocol.load_labware(self.dilution_plate, self.dilution_plate_position2) + dilution_layout = self.calculate_plate_layout(protocol, dilution_plate1, dilution_plate2) + + #Load the Agar plates and Calculate the layout of the plates + agar_plate1 = protocol.load_labware(self.agar_plate, self.agar_plate_position1) + if self.total_colonies <= len(agar_plate1.wells()): + agar_layout = self.calculate_plate_layout(protocol, agar_plate1) + else: + agar_plate2 = protocol.load_labware(self.agar_plate, self.agar_plate_position2) + agar_layout = self.calculate_plate_layout(protocol, agar_plate1, agar_plate2) + + + thermocycler.set_block_temperature(4) + thermocycler.open_lid() + + #Load the Liquid Broth into the dilution wells + protocol.comment("\n=== Step 1: Distributing LB to dilution wells ===") + # Get all wells that will receive LB (both dilutions if applicable) + all_dilution_wells = dilution_layout['dilution_1']['wells'][:] + if self.number_dilutions == 2 and dilution_layout['dilution_2']: + all_dilution_wells.extend(dilution_layout['dilution_2']['wells']) + # Distribute LB efficiently using built-in distribute method + # Process in chunks of 8 wells to update aspiration height + chunk_size = 8 + for i in range(0, len(all_dilution_wells), chunk_size): + chunk_wells = all_dilution_wells[i:i + chunk_size] + + # Get current aspiration location before each chunk + aspiration_location = smart_pipette.get_aspiration_location(lb_tube) + protocol.comment(f"Distributing to wells {i + 1}-{min(i + chunk_size, len(all_dilution_wells))}") + + # Use built-in distribute method with updated aspiration location + large_pipette.distribute( + volume=self.volume_lb_transfer, + source=aspiration_location, + dest=chunk_wells, + disposal_volume=4, # For accuracy + new_tip='once' # Use one tip for the chunk + ) + + # Load liquid tracking for dilution wells + for well in chunk_wells: + well.load_liquid(liquid=liquid_broth, volume=self.volume_lb_transfer) + + #Transfer bacteria to first dilution and process + protocol.comment("\n=== Step 2: Transferring bacteria and plating ===") + + well_index = 0 + for construct_position, construct_names in self.bacterium_locations.items(): + for replicate in range(self.replicates): + # Get source and destination wells + source_well = thermocycler_plate[construct_position] + dilution1_well = dilution_layout['dilution_1']['wells'][well_index] + agar1_well = agar_layout['dilution_1']['wells'][well_index] + + protocol.comment(f"\nProcessing {construct_names[0]} replicate {replicate + 1}") + + # Pick up tip once for entire workflow per well + small_pipette.pick_up_tip() + + # Transfer bacteria to dilution plate 1 + small_pipette.aspirate(self.volume_bacteria_transfer, source_well, rate=self.aspiration_rate) + small_pipette.dispense(self.volume_bacteria_transfer, dilution1_well, rate=self.dispense_rate) + + # Mix in dilution plate 1 (15µL mixing volume) + small_pipette.mix(repetitions=5, volume=19, location=dilution1_well) + + # Plate on agar 1 + small_pipette.aspirate(self.volume_colony, dilution1_well, rate=self.aspiration_rate) + small_pipette.dispense(self.volume_colony, agar1_well.top(-8), rate=self.dispense_rate) + small_pipette.blow_out() + + # If we have a second dilution, continue with same tip + if self.number_dilutions == 2: + dilution2_well = dilution_layout['dilution_2']['wells'][well_index] + agar2_well = agar_layout['dilution_2']['wells'][well_index] + + # Transfer from dilution 1 to dilution 2 + small_pipette.aspirate(self.volume_bacteria_transfer, dilution1_well, rate=self.aspiration_rate) + small_pipette.dispense(self.volume_bacteria_transfer, dilution2_well, rate=self.dispense_rate) + + # Mix in dilution plate 2 + small_pipette.mix(repetitions=5, volume=19, location=dilution2_well) + + # Plate on agar 2 + small_pipette.aspirate(self.volume_colony, dilution2_well, rate=self.aspiration_rate) + small_pipette.dispense(self.volume_colony, agar2_well.top(-8), rate=self.dispense_rate) + small_pipette.blow_out() + + # Drop tip after completing all transfers for this well + small_pipette.drop_tip() + + well_index += 1 + + # Close thermocycler lid + # thermocycler.close_lid() + # thermocycler.deactivate_block() + + protocol.comment("\n=== Plating protocol complete ===") + protocol.comment(f"Plated {self.number_constructs} constructs with {self.replicates} replicates") + protocol.comment(f"Created a total of {self.total_colonies} colonies") + +# metadata +metadata = { + 'protocolName': 'Plating Protocol', + 'author': 'Oscar Rodriguez', + 'description': 'Automated Transformed Bacteria Plating Protocol', + 'apiLevel': '2.23' +} + +# constructs = {"A1":["GVP8"],"A2":["GVP10"],"A3":["GVP12"]} +constructs = {'A1': ['Competent_Cell_DH5alpha_1', ('GVP0008', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_1'), 'Media_1'], 'B1': ['Competent_Cell_DH5alpha_1', ('GVP0008', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_1'), 'Media_1'], 'C1': ['Competent_Cell_DH5alpha_1', ('GVP0008', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_2'), 'Media_1'], 'D1': ['Competent_Cell_DH5alpha_1', ('GVP0008', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_2'), 'Media_1'], 'E1': ['Competent_Cell_DH5alpha_1', ('GVP0010', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_1'), 'Media_1'], 'F1': ['Competent_Cell_DH5alpha_2', ('GVP0010', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_1'), 'Media_1'], 'G1': ['Competent_Cell_DH5alpha_2', ('GVP0010', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_2'), 'Media_1'], 'H1': ['Competent_Cell_DH5alpha_2', ('GVP0010', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_2'), 'Media_1'], 'A2': ['Competent_Cell_DH5alpha_2', ('GVP0012', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_1'), 'Media_1'], 'B2': ['Competent_Cell_DH5alpha_2', ('GVP0012', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_1'), 'Media_1'], 'C2': ['Competent_Cell_DH5alpha_3', ('GVP0012', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_2'), 'Media_1'], 'D2': ['Competent_Cell_DH5alpha_3', ('GVP0012', 'B0034', 'sfGFP', 'B0015', 'Odd_1', 'replicate_2'), 'Media_1']} +def run(protocol: protocol_api.ProtocolContext): + plating_protocol = Plating(bacterium_locations=constructs,replicates=5) + plating_protocol.run(protocol) \ No newline at end of file diff --git a/scripts/run_iGEM_gfp_od.py b/scripts/run_iGEM_gfp_od.py index eb6af16..a0b24f4 100644 --- a/scripts/run_iGEM_gfp_od.py +++ b/scripts/run_iGEM_gfp_od.py @@ -1,4 +1,4 @@ -from pudu.calibration import iGEM_gfp_od +from pudu.calibration import GFPODCalibration from opentrons import protocol_api # metadata @@ -6,9 +6,9 @@ 'protocolName': 'iGEM GFP OD600 calibration', 'author': 'Gonzalo Vidal ', 'description': 'Protocol to perform serial dilutions of fluorescein and nanoparticles for calibration', -'apiLevel': '2.13'} +'apiLevel': '2.14'} def run(protocol= protocol_api.ProtocolContext): - pudu_calibration = iGEM_gfp_od() + pudu_calibration = GFPODCalibration() pudu_calibration.run(protocol) \ No newline at end of file diff --git a/scripts/run_iGEM_rgb_od.py b/scripts/run_iGEM_rgb_od.py index 201686a..a22729c 100644 --- a/scripts/run_iGEM_rgb_od.py +++ b/scripts/run_iGEM_rgb_od.py @@ -1,4 +1,4 @@ -from pudu.calibration import iGEM_rgb_od +from pudu.calibration import RGBODCalibration from opentrons import protocol_api # metadata @@ -6,9 +6,9 @@ 'protocolName': 'iGEM GFP OD600 calibration', 'author': 'Gonzalo Vidal ', 'description': 'Protocol to perform serial dilutions of fluorescein and nanoparticles for calibration', -'apiLevel': '2.13'} +'apiLevel': '2.14'} def run(protocol= protocol_api.ProtocolContext): - pudu_calibration = iGEM_rgb_od() + pudu_calibration = RGBODCalibration() pudu_calibration.run(protocol) \ No newline at end of file diff --git a/src/pudu/assembly.py b/src/pudu/assembly.py index 718dc23..a4cfefd 100644 --- a/src/pudu/assembly.py +++ b/src/pudu/assembly.py @@ -1,69 +1,39 @@ +import xlsxwriter from opentrons import protocol_api -from pudu.utils import thermo_wells, temp_wells, liquid_transfer -from typing import List, Dict, Union +from typing import List, Dict from fnmatch import fnmatch from itertools import product +import json +from abc import ABC, abstractmethod +from pudu.utils import Camera, colors +class BaseAssembly(ABC): + """ + Abstract base class for Loop Assembly protocols. + Contains shared hardware setup, liquid handling, and tip management functionality. + """ -class DNA_assembly(): - ''' - Creates a protocol for automated DNA assembly. - - Attributes - ---------- - volume_total_reaction : float - The total volume of the reaction mix in microliters. By default, 20 microliters. - volume_part : float - The volume of each part in microliters. By default, 2 microliters. - volume_restriction_enzyme : float - The volume of the restriction enzyme in microliters. By default, 2 microliters. - volume_t4_dna_ligase : float - The volume of T4 DNA Ligase in microliters. By default, 4 microliters. - volume_t4_dna_ligase_buffer : float - The volume of T4 DNA Ligase Buffer in microliters. By default, 2 microliters. - replicates : int - The number of replicates of the assembly reaction. By default, 2. - thermocycler_starting_well : int - The starting well of the thermocycler module. By default, 0. - thermocycler_labware : str - The labware type of the thermocycler module. By default, 'nest_96_wellplate_100ul_pcr_full_skirt'. - thermocycler_slots : list - The slots of the thermocycler module. By default, [7, 8, 10, 11]. - temperature_module_labware : str - The labware type of the temperature module. By default, 'opentrons_24_aluminumblock_nest_1.5ml_snapcap'. - temperature_module_slot : int - The slot of the temperature module. By default, 1. - tiprack_labware : str - The labware type of the tiprack. By default, 'opentrons_96_tiprack_20ul'. - tiprack_slot : int - The slot of the tiprack. By default, 9. - pipette_type : str - The type of pipette. By default, 'p20_single_gen2'. - pipette_mount : str - The mount of the pipette. By default, 'left'. - aspiration_rate : float - The rate of aspiration in microliters per second. By default, 0.5 microliters per second. - dispense_rate : float - The rate of dispense in microliters per second. By default, 1 microliter per second. - ''' def __init__(self, - volume_total_reaction:float = 20, - volume_part:float = 2, - volume_restriction_enzyme:float = 2, - volume_t4_dna_ligase:float = 4, - volume_t4_dna_ligase_buffer:float = 2, - replicates:int=2, - thermocycler_starting_well:int = 0, - thermocycler_labware:str = 'nest_96_wellplate_100ul_pcr_full_skirt', - temperature_module_labware:str = 'opentrons_24_aluminumblock_nest_1.5ml_snapcap', - temperature_module_position:int = 1, - tiprack_labware:str = 'opentrons_96_tiprack_20ul', - tiprack_position:int = 9, - pipette:str = 'p20_single_gen2', - pipette_position:str = 'left', - aspiration_rate:float=0.5, - dispense_rate:float=1,): - + volume_total_reaction: float = 20, + volume_part: float = 2, + volume_restriction_enzyme: float = 2, + volume_t4_dna_ligase: float = 4, + volume_t4_dna_ligase_buffer: float = 2, + replicates: int = 1, + thermocycler_starting_well: int = 0, + thermocycler_labware: str = 'nest_96_wellplate_100ul_pcr_full_skirt', + temperature_module_labware: str = 'opentrons_24_aluminumblock_nest_1.5ml_snapcap', + temperature_module_position: str = '1', + tiprack_labware: str = 'opentrons_96_tiprack_20ul', + tiprack_positions: List[str] = None, + pipette: str = 'p20_single_gen2', + pipette_position: str = 'left', + aspiration_rate: float = 0.5, + dispense_rate: float = 1, + take_picture: bool = False, + take_video: bool = False, + water_testing: bool = False): + self.volume_total_reaction = volume_total_reaction self.volume_part = volume_part self.volume_restriction_enzyme = volume_restriction_enzyme @@ -75,141 +45,505 @@ def __init__(self, self.temperature_module_labware = temperature_module_labware self.temperature_module_position = temperature_module_position self.tiprack_labware = tiprack_labware - self.tiprack_position = tiprack_position + if tiprack_positions is None: + self.tiprack_positions = ['2', '3', '4', '5', '6', '9'] + else: + self.tiprack_positions = tiprack_positions self.pipette = pipette self.pipette_position = pipette_position self.aspiration_rate = aspiration_rate self.dispense_rate = dispense_rate - #END - - + self.take_picture = take_picture + self.take_video = take_video + self.water_testing = water_testing -class Domestication(DNA_assembly): - ''' - Creates a protocol for automated domestication, assembly of parts into universal acceptor backbone. - - ''' - def __init__(self, parts:Union[List,Dict], acceptor_backbone:str, - *args, **kwargs): - super().__init__(*args, **kwargs) - - self.parts = parts - self.acceptor_backbone = acceptor_backbone + # Shared tracking dictionaries self.dict_of_parts_in_temp_mod_position = {} self.dict_of_parts_in_thermocycler = {} - #self.sbol_output = [] - #self.xlsx_output = None - - if len(parts) > 19: - raise ValueError(f'This protocol only supports assemblies with up to 20 parts. Number of parts in the protocol is {len(parts)}') - - metadata = { - 'protocolName': 'PUDU Domestication', - 'author': 'Gonzalo Vidal ', - 'description': 'Automated DNA domestication protocol', - 'apiLevel': '2.13'} - - def run(self, protocol: protocol_api.ProtocolContext): - - #Labware - #Load temperature module - tem_mod = protocol.load_module('temperature module', f'{self.temperature_module_position}') #CV: Previously was '3', but the cord was not long enough - tem_mod_block = tem_mod.load_labware(self.temperature_module_labware) - #Load the thermocycler module, its default location is on slots 7, 8, 10 and 11 - thermocycler_mod = protocol.load_module('thermocycler module') - thermocycler_mod_plate = thermocycler_mod.load_labware(self.thermocycler_labware) - #Load the tiprack - tiprack = protocol.load_labware(self.tiprack_labware, f'{self.tiprack_position}') - #Load the pipette - pipette = protocol.load_instrument(self.pipette, self.pipette_position, tip_racks=[tiprack]) - #Fixed volumes + self.dna_list_for_transformation_protocol = [] + self.xlsx_output = None + + #Initialize Camera + self.camera = Camera() + # Tip management + self.tip_management = { + 'all_racks': [], + 'on_deck_racks': [], + 'off_deck_racks': [], + 'available_slots': [], + 'tips_used': 0, + 'tips_per_batch': 0, + 'current_batch': 1, + 'total_batches': 1 + } + + @abstractmethod + def process_assemblies(self): + """Process input assemblies - format-specific implementation""" + pass + + @abstractmethod + def _load_parts_and_enzymes(self, protocol, alum_block) -> int: + """Load parts and enzymes onto temperature module - format-specific""" + pass + + @abstractmethod + def _process_assembly_combinations(self, protocol, pipette, thermo_plate, alum_block, + dd_h2o, t4_dna_ligase_buffer, t4_dna_ligase, + volume_reagents, thermocycler_well_counter) -> int: + """Process all assembly combinations - format-specific""" + pass + + @abstractmethod + def _calculate_total_tips_needed(self) -> int: + """Calculate total tips needed - format-specific implementation""" + pass + + def setup_tip_management(self, protocol): + """Setup batch tip management for high-throughput applications.""" + total_tips_needed = self._calculate_total_tips_needed() + tip_racks_needed = (total_tips_needed + 95) // 96 + + available_deck_slots = self.tiprack_positions + max_racks_on_deck = len(available_deck_slots) + + protocol.comment(f"Protocol requires {total_tips_needed} tips ({tip_racks_needed} racks)") + + all_tip_racks = [] + on_deck_racks = [] + for i in range(min(tip_racks_needed, max_racks_on_deck)): + rack = protocol.load_labware(self.tiprack_labware, available_deck_slots[i]) + all_tip_racks.append(rack) + on_deck_racks.append(rack) + + off_deck_racks = [] + for i in range(max_racks_on_deck, tip_racks_needed): + rack = protocol.load_labware(self.tiprack_labware, protocol_api.OFF_DECK) + all_tip_racks.append(rack) + off_deck_racks.append(rack) + + self.tip_management.update({ + 'all_racks': all_tip_racks, + 'on_deck_racks': on_deck_racks, + 'off_deck_racks': off_deck_racks, + 'available_slots': available_deck_slots, + 'tips_used': 0, + 'tips_per_batch': max_racks_on_deck * 96, + 'current_batch': 1, + 'total_batches': (tip_racks_needed + max_racks_on_deck - 1) // max_racks_on_deck + }) + + if len(off_deck_racks) > 0: + protocol.comment(f"Will perform {self.tip_management['total_batches'] - 1} tip rack batch swaps") + + return all_tip_racks + + def liquid_transfer(self, protocol, pipette, volume, source, dest, + asp_rate: float = 0.5, disp_rate: float = 1.0, + blow_out: bool = True, touch_tip: bool = False, + mix_before: float = 0.0, mix_after: float = 0.0, + mix_reps: int = 3, new_tip: bool = True, + drop_tip: bool = True): + if new_tip: + if self._check_if_swap_needed(): + self._perform_tip_rack_batch_swap(protocol) + try: + pipette.pick_up_tip() + self._increment_tip_counter() + except Exception as e: + protocol.comment(f"Tip pickup failed with error: {e}") + raise + + if mix_before > 0: + pipette.mix(mix_reps, mix_before, source) + + pipette.aspirate(volume, source, rate=asp_rate) + pipette.dispense(volume, dest, rate=disp_rate) + + if mix_after > 0: + pipette.mix(mix_reps, mix_after, dest) + + if blow_out: + pipette.blow_out() + + if touch_tip: + pipette.touch_tip(radius=0.5, v_offset=-14, speed=20) + + if drop_tip: + pipette.drop_tip() + + def get_xlsx_output(self, name: str): + workbook = xlsxwriter.Workbook(f"{name}.xlsx") + worksheet = workbook.add_worksheet() + row_num = 0 + col_num = 0 + worksheet.write(row_num, col_num, "Parts in temp_module") + row_num += 2 + for key, value in self.dict_of_parts_in_temp_mod_position.items(): + worksheet.write(row_num, col_num, key) + worksheet.write(row_num + 1, col_num, value) + col_num += 1 + col_num = 0 + row_num += 4 + worksheet.write(row_num, col_num, "Parts in thermocycler_module") + row_num += 2 + for key, value in self.dict_of_parts_in_thermocycler.items(): + key_str = " + ".join(key) if isinstance(key, tuple) else str(key) + worksheet.write(row_num, col_num, key_str) + worksheet.write(row_num + 1, col_num, value) + col_num += 1 + workbook.close() + self.xlsx_output = workbook + return self.xlsx_output + + def run(self, protocol: protocol_api.ProtocolContext): + """Main protocol execution - uses template method pattern""" + # Process assemblies (format-specific) + self.process_assemblies() + + # Load hardware (shared) + temperature_module = protocol.load_module(module_name='temperature module', + location=self.temperature_module_position) + alum_block = temperature_module.load_labware(self.temperature_module_labware) + + thermocycler_module = protocol.load_module('thermocycler module') + thermo_plate = thermocycler_module.load_labware(name=self.thermocycler_labware) + + all_tip_racks = self.setup_tip_management(protocol) + pipette = protocol.load_instrument(self.pipette, self.pipette_position, tip_racks=all_tip_racks) + + # Load common reagents (shared) + dd_h2o = self._load_reagent(protocol, module_labware=alum_block, well_position=0, + name='Deionized Water') + t4_dna_ligase_buffer = self._load_reagent(protocol, module_labware=alum_block, well_position=1, + name='T4 DNA Ligase Buffer') + t4_dna_ligase = self._load_reagent(protocol, module_labware=alum_block, well_position=2, + name="T4 DNA Ligase") + + # Load parts and enzymes (format-specific) + temp_module_well_counter = self._load_parts_and_enzymes(protocol, alum_block) + + # Setup temperatures + thermocycler_module.open_lid() + if not self.water_testing: + temperature_module.set_temperature(4) + thermocycler_module.set_block_temperature(4) + + # Media capture start + if self.take_picture: + self.camera.capture_picture(protocol, when="start") + if self.take_video: + self.camera.start_video(protocol) + + # Process assemblies (format-specific) volume_reagents = self.volume_restriction_enzyme + self.volume_t4_dna_ligase + self.volume_t4_dna_ligase_buffer - volume_dd_h2o = self.volume_total_reaction - (volume_reagents + self.volume_part*2) - #Load the reagents - restriction_enzyme = tem_mod_block['A1'] - self.dict_of_parts_in_temp_mod_position['restriction_enzyme'] = temp_wells[0] - t4_dna_ligase = tem_mod_block['A2'] - self.dict_of_parts_in_temp_mod_position['t4_dna_ligase'] = temp_wells[1] - t4_dna_ligase_buffer = tem_mod_block['A3'] - self.dict_of_parts_in_temp_mod_position['t4_dna_ligase_buffer'] = temp_wells[2] - dd_h2o = tem_mod_block['A4'] - self.dict_of_parts_in_temp_mod_position['dd_h2o'] = temp_wells[3] - backbone = tem_mod_block['A5'] - self.dict_of_parts_in_temp_mod_position['backbone'] = temp_wells[4] - temp_wells_counter = 5 - #TODO: multiple backbones - #Setup - #Set the temperature of the temperature module and the thermocycler to 4°C - tem_mod.set_temperature(4) - thermocycler_mod.open_lid() - thermocycler_mod.set_block_temperature(4) - #Commands for the mastermix - ending_well = self.thermocycler_starting_well + len(self.parts)*self.replicates - wells = thermo_wells[self.thermocycler_starting_well:ending_well] #wells = ['D6', 'D7'] - #can be done with multichannel pipette - for well in wells: - liquid_transfer(pipette, volume_dd_h2o, dd_h2o, thermocycler_mod_plate[well], self.aspiration_rate, self.dispense_rate) - liquid_transfer(pipette, self.volume_t4_dna_ligase_buffer, t4_dna_ligase_buffer, thermocycler_mod_plate[well], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_t4_dna_ligase_buffer) - liquid_transfer(pipette, self.volume_t4_dna_ligase, t4_dna_ligase, thermocycler_mod_plate[well], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_t4_dna_ligase) - liquid_transfer(pipette, self.volume_restriction_enzyme, restriction_enzyme, thermocycler_mod_plate[well], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_restriction_enzyme) - liquid_transfer(pipette, self.volume_part, backbone, thermocycler_mod_plate[well], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_part) - #for well in wells: - i = self.thermocycler_starting_well - for part in self.parts: - if type(part) == str: - part_name=part - else: raise ValueError(f'Part {part} is not a string or an sbol3.Component') - self.dict_of_parts_in_temp_mod_position[part_name] = temp_wells[temp_wells_counter] - for r in range(self.replicates): - part_ubication_in_thermocyler = thermocycler_mod_plate[thermo_wells[i]] - if r == 0: - self.dict_of_parts_in_thermocycler[part_name] = [thermo_wells[i]] - else: - self.dict_of_parts_in_thermocycler[part_name].append(thermo_wells[i]) - liquid_transfer(pipette, self.volume_part, tem_mod_block[self.dict_of_parts_in_temp_mod_position[part_name]], part_ubication_in_thermocyler, self.aspiration_rate, self.dispense_rate, mix_before=self.volume_restriction_enzyme) - i+=1 - temp_wells_counter += 1 - + thermocycler_well_counter = self._process_assembly_combinations( + protocol, pipette, thermo_plate, alum_block, dd_h2o, + t4_dna_ligase_buffer, t4_dna_ligase, volume_reagents, + self.thermocycler_starting_well + ) + protocol.comment('Take out the reagents since the temperature module will be turn off') - #We close the thermocycler lid and wait for the temperature to reach 42°C - thermocycler_mod.close_lid() - #The thermocycler's lid temperature is set with the following command - thermocycler_mod.set_lid_temperature(42) - tem_mod.deactivate() - #Cycles were made following https://pubs.acs.org/doi/10.1021/sb500366v - profile = [ - {'temperature': 42, 'hold_time_minutes': 2}, - {'temperature': 16, 'hold_time_minutes': 5}] - thermocycler_mod.execute_profile(steps=profile, repetitions=25, block_max_volume=30) - - denaturation = [ - {'temperature': 60, 'hold_time_minutes': 10}, - {'temperature': 80, 'hold_time_minutes': 10}] - thermocycler_mod.execute_profile(steps=denaturation, repetitions=1, block_max_volume=30) - thermocycler_mod.set_block_temperature(4) - - #output + + # Thermocycling + if not self.water_testing: + thermocycler_module.close_lid() + thermocycler_module.set_lid_temperature(42) + temperature_module.deactivate() + + # Media capture end + if self.take_video: + self.camera.stop_video(protocol) + if self.take_picture: + self.camera.capture_picture(protocol, when="end") + + # Execute thermocycling profiles + if not self.water_testing: + profile = [ + {'temperature': 42, 'hold_time_minutes': 2}, + {'temperature': 16, 'hold_time_minutes': 5} + ] + denaturation = [ + {'temperature': 60, 'hold_time_minutes': 10}, + {'temperature': 80, 'hold_time_minutes': 10} + ] + thermocycler_module.execute_profile(steps=profile, repetitions=75, block_max_volume=30) + thermocycler_module.execute_profile(steps=denaturation, repetitions=1, block_max_volume=30) + thermocycler_module.set_block_temperature(4) + + # Output results print('Parts and reagents in temp_module') print(self.dict_of_parts_in_temp_mod_position) - print('Domesticated parts in thermocycler_module') + print('Assembled parts in thermocycler_module') print(self.dict_of_parts_in_thermocycler) - #END + print('DNA list for transformation protocol') + print(self.dna_list_for_transformation_protocol) + + # Helper methods (shared) + def _load_reagent(self, protocol, module_labware, well_position, name, description=None, + volume=1000, color_index=None): + """Load a reagent or DNA part onto the temperature module.""" + well = module_labware.wells()[well_position] + well_name = well.well_name + + if description is None: + description = name + if color_index is None: + color_index = len(self.dict_of_parts_in_temp_mod_position) % len(colors) + + liquid = protocol.define_liquid(name=name, description=description, + display_color=colors[color_index]) + well.load_liquid(liquid, volume=volume) + + self.dict_of_parts_in_temp_mod_position[name] = well_name + protocol.comment(f"Loaded {name} at position {well_name}") + + return well + + def _increment_tip_counter(self): + """Increment tip usage counter""" + self.tip_management['tips_used'] += 1 + + def _check_if_swap_needed(self): + current_batch_tips = self.tip_management['tips_used'] % self.tip_management['tips_per_batch'] + return (current_batch_tips == 0 and + self.tip_management['tips_used'] > 0 and + len(self.tip_management['off_deck_racks']) > 0) + + def _perform_tip_rack_batch_swap(self, protocol): + """Perform tip rack batch swap when current batch is exhausted""" + available_slots = self.tip_management['available_slots'] + + for rack in self.tip_management['on_deck_racks']: + protocol.move_labware(labware=rack, new_location=protocol_api.OFF_DECK) + + remaining_racks = len(self.tip_management['off_deck_racks']) + racks_to_move = min(len(available_slots), remaining_racks) + + new_on_deck_racks = [] + for i in range(racks_to_move): + rack = self.tip_management['off_deck_racks'].pop(0) + protocol.move_labware(labware=rack, new_location=available_slots[i]) + new_on_deck_racks.append(rack) + self.tip_management['on_deck_racks'] = new_on_deck_racks + self.tip_management['current_batch'] += 1 + protocol.comment(f"Tip rack batch {self.tip_management['current_batch']} ready!") -class Loop_assembly(DNA_assembly): - ''' - Creates a protocol for the automated Odd and/or Even level Loop assembly. +class Domestication(BaseAssembly): + """ + Domestication Assembly - inserts individual parts into universal acceptor backbone. + Each part is assembled separately with the backbone to create domesticated parts. + """ - ''' - def __init__(self, assemblies:List[Dict], - *args, **kwargs): + def __init__(self, assemblies: List[Dict], *args, **kwargs): + super().__init__(*args, **kwargs) + self.assemblies = assemblies + self.parts_list = [] + self.backbone = "" + self.restriction_enzyme = "" + + def process_assemblies(self): + """Process domestication assembly input and validate format""" + self._reset_assembly_state() + # Domestication should have exactly one assembly + if len(self.assemblies) != 1: + raise ValueError(f"Domestication supports exactly one assembly, got {len(self.assemblies)}") + + assembly = self.assemblies[0] + required_keys = {"parts", "backbone", "restriction_enzyme"} + assembly_keys = set(assembly.keys()) + + if not required_keys.issubset(assembly_keys): + missing_keys = required_keys - assembly_keys + raise ValueError(f"Domestication assembly missing required keys: {missing_keys}") + + # Extract and validate parts + parts = assembly["parts"] + if isinstance(parts, str): + self.parts_list = [parts] + elif isinstance(parts, list): + self.parts_list = parts + else: + raise ValueError("Parts must be a string or list of strings") + + # Extract and validate backbone (must be single value) + backbone = assembly["backbone"] + if isinstance(backbone, list): + if len(backbone) > 1: + raise ValueError("Domestication supports only one backbone") + self.backbone = backbone[0] + else: + self.backbone = backbone + + # Extract and validate restriction enzyme (must be single value) + restriction_enzyme = assembly["restriction_enzyme"] + if isinstance(restriction_enzyme, list): + if len(restriction_enzyme) > 1: + raise ValueError("Domestication supports only one restriction enzyme") + self.restriction_enzyme = restriction_enzyme[0] + else: + self.restriction_enzyme = restriction_enzyme + + self._validate_assembly_requirements() + + def _load_parts_and_enzymes(self, protocol, alum_block) -> int: + """Load restriction enzyme, backbone, and parts for domestication""" + temp_module_well_counter = 3 # Starting after common reagents (water, ligase buffer, ligase) + + # Load restriction enzyme + self._load_reagent(protocol, module_labware=alum_block, + well_position=temp_module_well_counter, + name=f"Restriction Enzyme {self.restriction_enzyme}") + temp_module_well_counter += 1 + + # Load backbone + self._load_reagent(protocol, module_labware=alum_block, + well_position=temp_module_well_counter, + name=f"Backbone {self.backbone}") + temp_module_well_counter += 1 + + # Load individual parts + for part in self.parts_list: + self._load_reagent(protocol, module_labware=alum_block, + well_position=temp_module_well_counter, + name=f"Part {part}") + temp_module_well_counter += 1 + + return temp_module_well_counter + + def _process_assembly_combinations(self, protocol, pipette, thermo_plate, alum_block, + dd_h2o, t4_dna_ligase_buffer, t4_dna_ligase, + volume_reagents, thermocycler_well_counter) -> int: + """Process domestication assemblies - each part with backbone separately""" + + # Get reagent sources + restriction_enzyme = alum_block[ + self.dict_of_parts_in_temp_mod_position[f"Restriction Enzyme {self.restriction_enzyme}"]] + backbone_source = alum_block[self.dict_of_parts_in_temp_mod_position[f"Backbone {self.backbone}"]] + + # Process each part + for part in self.parts_list: + part_source = alum_block[self.dict_of_parts_in_temp_mod_position[f"Part {part}"]] + + # Process replicates for this part + for r in range(self.replicates): + dest_well = thermo_plate.wells()[thermocycler_well_counter] + dest_well_name = dest_well.well_name + + # Calculate water volume (total - reagents - 2 parts: backbone + part) + volume_dd_h20 = self.volume_total_reaction - (volume_reagents + self.volume_part * 2) + + # Add reagents + self.liquid_transfer(protocol=protocol, pipette=pipette, volume=volume_dd_h20, + source=dd_h2o, dest=dest_well, + asp_rate=self.aspiration_rate, disp_rate=self.dispense_rate, + touch_tip=True) + + self.liquid_transfer(protocol=protocol, pipette=pipette, volume=self.volume_t4_dna_ligase_buffer, + source=t4_dna_ligase_buffer, dest=dest_well, + asp_rate=self.aspiration_rate, disp_rate=self.dispense_rate, + mix_before=self.volume_t4_dna_ligase_buffer, touch_tip=True) + + self.liquid_transfer(protocol=protocol, pipette=pipette, volume=self.volume_t4_dna_ligase, + source=t4_dna_ligase, dest=dest_well, + asp_rate=self.aspiration_rate, disp_rate=self.dispense_rate, + mix_before=self.volume_t4_dna_ligase, touch_tip=True) + + self.liquid_transfer(protocol=protocol, pipette=pipette, volume=self.volume_restriction_enzyme, + source=restriction_enzyme, dest=dest_well, + asp_rate=self.aspiration_rate, disp_rate=self.dispense_rate, + mix_before=self.volume_restriction_enzyme, touch_tip=True) + + # Add backbone + self.liquid_transfer(protocol=protocol, pipette=pipette, volume=self.volume_part, + source=backbone_source, dest=dest_well, + asp_rate=self.aspiration_rate, disp_rate=self.dispense_rate, + mix_before=self.volume_part, touch_tip=True) + + # Add part (don't drop tip yet) + self.liquid_transfer(protocol=protocol, pipette=pipette, volume=self.volume_part, + source=part_source, dest=dest_well, + asp_rate=self.aspiration_rate, disp_rate=self.dispense_rate, + mix_before=self.volume_part, touch_tip=True, drop_tip=False) + + # Remove air bubbles with mixing + for _ in range(int(self.volume_total_reaction / 10)): + self.liquid_transfer(protocol=protocol, pipette=pipette, volume=self.volume_total_reaction, + source=dest_well.bottom(), dest=dest_well.bottom(8), + asp_rate=1.0, disp_rate=1.0, new_tip=False, drop_tip=False, + touch_tip=True) + pipette.drop_tip() + + # Track assembly + assembly_name = f"Part: {part}, Replicate: {r + 1}" + self.dict_of_parts_in_thermocycler[assembly_name] = dest_well_name + self.dna_list_for_transformation_protocol.append((self.backbone, part, f'replicate_{r + 1}')) + + thermocycler_well_counter += 1 + + return thermocycler_well_counter + + def _calculate_total_tips_needed(self, number_of_constant_reagents: int = 6) -> int: + """Calculate total tips needed for domestication + + Args: + number_of_constant_reagents: water + ligase buffer + ligase + enzyme + backbone + part = 6 + """ + total_assemblies = len(self.parts_list) * self.replicates + return number_of_constant_reagents * total_assemblies + + def _validate_assembly_requirements(self): + """Validate domestication assembly requirements""" + if not self.parts_list: + raise ValueError("No parts provided for domestication") + + if not self.backbone: + raise ValueError("No backbone provided for domestication") + + if not self.restriction_enzyme: + raise ValueError("No restriction enzyme provided for domestication") + + # Calculate reagent positions: water(1) + ligase buffer(1) + ligase(1) + enzyme(1) + backbone(1) = 5 + reagent_positions = 5 + max_parts = 24 - reagent_positions + + if len(self.parts_list) > max_parts: + raise ValueError( + f'This protocol only supports domestication with up to {max_parts} parts. ' + f'Number of parts provided is {len(self.parts_list)}. ' + f'Parts: {self.parts_list}. ' + f'Reagent positions used: {reagent_positions}/24' + ) + + # Validate thermocycler capacity + available_wells = 96 - self.thermocycler_starting_well + wells_needed = len(self.parts_list) * self.replicates + + if wells_needed > available_wells: + raise ValueError( + f'This protocol only supports assemblies with up to {available_wells} ' + f'wells. Number of assemblies needed is {wells_needed} ' + f'({len(self.parts_list)} parts × {self.replicates} replicates).' + ) + + def _reset_assembly_state(self): + """Reset assembly processing state""" + self.parts_list = [] + self.backbone = "" + self.restriction_enzyme = "" + + +class ManualLoopAssembly(BaseAssembly): + """ + Manual/Combinatorial Loop Assembly - generates combinations from roles. + Supports Odd/Even pattern detection for automatic enzyme selection. + """ + + def __init__(self, assemblies: List[Dict], *args, **kwargs): super().__init__(*args, **kwargs) - self.assemblies = assemblies - self.dict_of_parts_in_temp_mod_position = {} - self.dict_of_parts_in_thermocycler = {} - self.assembly_plan = None self.pattern_odd = 'Odd*' self.pattern_even = 'Even*' self.parts_set = set() @@ -217,159 +551,503 @@ def __init__(self, assemblies:List[Dict], self.has_even = False self.odd_combinations = [] self.even_combinations = [] - - # add parts to a set + + def process_assemblies(self): + """Process manual format assemblies and generate combinations""" + self._reset_assembly_state() + for assembly in self.assemblies: - list_of_list_of_parts_per_role = [] - if fnmatch(assembly['receiver'], self.pattern_odd): + assembly_type = self._get_assembly_type(assembly['receiver']) + if assembly_type == 'odd': self.has_odd = True - for role in assembly: - parts = assembly[role] - if type(parts) is str: - parts_per_role = [parts] - else: - parts_per_role = parts - for part in parts_per_role: - self.parts_set.add(part) - list_of_list_of_parts_per_role.append(parts_per_role) - list_of_combinations_per_assembly = list(product(*list_of_list_of_parts_per_role)) - for combination in list_of_combinations_per_assembly: - self.odd_combinations.append(combination) - if fnmatch(assembly['receiver'], self.pattern_even): - self.has_even = True - for role in assembly: - parts = assembly[role] - if type(parts) is str: - parts_per_role = [parts] - else: - parts_per_role = parts - for part in parts_per_role: - self.parts_set.add(part) - list_of_list_of_parts_per_role.append(parts_per_role) - list_of_combinations_per_assembly = list(product(*list_of_list_of_parts_per_role)) - for combination in list_of_combinations_per_assembly: - self.even_combinations.append(combination) - - if self.has_odd and self.has_even: - max_parts = 18 - elif self.has_odd or self.has_even: - max_parts = 19 - else: - raise ValueError('Assembly does not have any Even or Odd receiver, check assembly dictionaries and patterns for Odd and Even receivers') - if len(self.parts_set) > max_parts: - raise ValueError(f'This protocol only supports assemblies with up to {max_parts} parts. Number of parts in the protocol is {len(self.parts_set)}. Printing parts set:{self.parts_set}') - thermocyler_available_wells = 96 - self.thermocycler_starting_well - thermocycler_wells_needed = (len(self.odd_combinations) + len(self.even_combinations))*self.replicates - if thermocycler_wells_needed > thermocyler_available_wells: - raise ValueError(f'According to your setup this protocol only supports assemblies with up to {thermocyler_available_wells} combinations. Number of combinations in the protocol is {thermocycler_wells_needed}.') - - def run(self, protocol: protocol_api.ProtocolContext): - #Labware - #Load temperature module - tem_mod = protocol.load_module('temperature module', f'{self.temperature_module_position}') #CV: Previously was '3', but the cord was not long enough - tem_mod_block = tem_mod.load_labware(self.temperature_module_labware) - #Load the thermocycler module, its default location is on slots 7, 8, 10 and 11 - thermocycler_mod = protocol.load_module('thermocycler module') - thermocycler_mod_plate = thermocycler_mod.load_labware(self.thermocycler_labware) - #Load the tiprack - tiprack = protocol.load_labware(self.tiprack_labware, f'{self.tiprack_position}') - #Load the pipette - pipette = protocol.load_instrument(self.pipette, self.pipette_position, tip_racks=[tiprack]) - #Fixed volumes - volume_reagents = self.volume_restriction_enzyme + self.volume_t4_dna_ligase + self.volume_t4_dna_ligase_buffer - #Load the reagents - dd_h2o = tem_mod_block['A1'] - self.dict_of_parts_in_temp_mod_position['dd_h2o'] = temp_wells[0] - t4_dna_ligase = tem_mod_block['A2'] - self.dict_of_parts_in_temp_mod_position['t4_dna_ligase'] = temp_wells[1] - t4_dna_ligase_buffer = tem_mod_block['A3'] - self.dict_of_parts_in_temp_mod_position['t4_dna_ligase_buffer'] = temp_wells[2] - temp_wells_counter = 3 + combos = self._generate_combinations_for_assembly(assembly) + self.odd_combinations.extend(combos) + if assembly_type == 'even': + self.has_even = True + combos = self._generate_combinations_for_assembly(assembly) + self.even_combinations.extend(combos) + + self._validate_assembly_requirements() + + def _load_parts_and_enzymes(self, protocol, alum_block) -> int: + """Load enzymes and parts for manual format""" + temp_module_well_counter = 3 # Starting after common reagents + + # Load enzymes based on Odd/Even detection if self.has_odd: - restriction_enzyme_bsai = tem_mod_block[temp_wells[temp_wells_counter]] - self.dict_of_parts_in_temp_mod_position['BsaI'] = temp_wells[temp_wells_counter] - temp_wells_counter += 1 + self._load_reagent(protocol, module_labware=alum_block, + well_position=temp_module_well_counter, + name="Restriction Enzyme BSAI") + temp_module_well_counter += 1 + + if self.has_even: + self._load_reagent(protocol, module_labware=alum_block, + well_position=temp_module_well_counter, + name="Restriction Enzyme SAPI") + temp_module_well_counter += 1 + + # Load parts + for part in sorted(self.parts_set): + self._load_reagent(protocol, module_labware=alum_block, + well_position=temp_module_well_counter, + name=f"{part}") + temp_module_well_counter += 1 + + return temp_module_well_counter + + def _process_assembly_combinations(self, protocol, pipette, thermo_plate, alum_block, + dd_h2o, t4_dna_ligase_buffer, t4_dna_ligase, + volume_reagents, thermocycler_well_counter) -> int: + """Process manual format combinations with automatic enzyme selection""" + + if self.has_odd: + restriction_enzyme_bsai = alum_block[self.dict_of_parts_in_temp_mod_position["Restriction Enzyme BSAI"]] + thermocycler_well_counter = self._process_combinations( + protocol=protocol, pipette=pipette, + combinations=self.odd_combinations, + restriction_enzyme=restriction_enzyme_bsai, + thermo_plate=thermo_plate, alum_block=alum_block, + dd_h2o=dd_h2o, t4_dna_ligase_buffer=t4_dna_ligase_buffer, + t4_dna_ligase=t4_dna_ligase, volume_reagents=volume_reagents, + thermocycler_well_counter=thermocycler_well_counter + ) + if self.has_even: - restriction_enzyme_sapi = tem_mod_block[temp_wells[temp_wells_counter]] - self.dict_of_parts_in_temp_mod_position['SapI'] = temp_wells[temp_wells_counter] - temp_wells_counter += 1 - #Load the parts - for part in self.parts_set: - self.dict_of_parts_in_temp_mod_position[part] = temp_wells[temp_wells_counter] - temp_wells_counter += 1 - #Setup - #Set the temperature of the temperature module and the thermocycler to 4°C - tem_mod.set_temperature(4) - thermocycler_mod.open_lid() - thermocycler_mod.set_block_temperature(4) - #can be done with multichannel pipette? - current_thermocycler_well = self.thermocycler_starting_well - #build combinations - for odd_combination in self.odd_combinations: - #pippeting reagents - volume_dd_h2o = self.volume_total_reaction - (volume_reagents + self.volume_part*len(odd_combination)) - liquid_transfer(pipette, volume_dd_h2o, dd_h2o, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate) - liquid_transfer(pipette, self.volume_t4_dna_ligase_buffer, t4_dna_ligase_buffer, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_t4_dna_ligase_buffer) - liquid_transfer(pipette, self.volume_t4_dna_ligase, t4_dna_ligase, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_t4_dna_ligase) - liquid_transfer(pipette, self.volume_restriction_enzyme, restriction_enzyme_bsai, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_restriction_enzyme) - #pippeting parts + restriction_enzyme_sapi = alum_block[self.dict_of_parts_in_temp_mod_position["Restriction Enzyme SAPI"]] + thermocycler_well_counter = self._process_combinations( + protocol=protocol, pipette=pipette, + combinations=self.even_combinations, + restriction_enzyme=restriction_enzyme_sapi, + thermo_plate=thermo_plate, alum_block=alum_block, + dd_h2o=dd_h2o, t4_dna_ligase_buffer=t4_dna_ligase_buffer, + t4_dna_ligase=t4_dna_ligase, volume_reagents=volume_reagents, + thermocycler_well_counter=thermocycler_well_counter + ) + + return thermocycler_well_counter + + def _calculate_total_tips_needed(self, number_of_constant_reagents: int = 4) -> int: + """Calculate total tips for manual format""" + total_combinations = len(self.odd_combinations) + len(self.even_combinations) + reagent_tips = number_of_constant_reagents + total_reagent_tips = reagent_tips * total_combinations * self.replicates + + total_part_tips = 0 + for combination in self.odd_combinations + self.even_combinations: + total_part_tips += len(combination) * self.replicates + + return total_reagent_tips + total_part_tips + + # Manual format helper methods + def _reset_assembly_state(self): + """Reset assembly processing state""" + self.parts_set = set() + self.has_odd = False + self.has_even = False + self.odd_combinations = [] + self.even_combinations = [] + + def _get_assembly_type(self, receiver_name): + """Determine if assembly is odd, even, or neither""" + if fnmatch(receiver_name, self.pattern_odd): + return 'odd' + if fnmatch(receiver_name, self.pattern_even): + return 'even' + raise ValueError( + f"Assembly receiver '{receiver_name}' does not match naming convention. " + f"Must be odd pattern '{self.pattern_odd}' or even pattern '{self.pattern_even}'. " + f"Check receiver naming." + ) + + def _generate_combinations_for_assembly(self, assembly): + """Generate all possible part combinations for a single assembly""" + parts_per_role = [] + for role, parts in assembly.items(): + if isinstance(parts, str): + parts_list = [parts] + else: + parts_list = list(parts) + + self.parts_set.update(parts_list) + parts_per_role.append(parts_list) + + return list(product(*parts_per_role)) + + def _validate_assembly_requirements(self): + """Validate manual assembly requirements""" + if not (self.has_odd or self.has_even): + raise ValueError( + "Assembly does not have any Even or Odd receiver. " + "Check assembly dictionaries for Odd and Even receivers." + ) + + reagent_positions = 3 + int(self.has_odd) + int(self.has_even) + max_parts = 24 - reagent_positions + + if len(self.parts_set) > max_parts: + raise ValueError( + f'This protocol only supports assemblies with up to {max_parts} parts. ' + f'Number of parts in the protocol is {len(self.parts_set)}. ' + f'Parts: {self.parts_set}. ' + f'Reagent positions used: {reagent_positions}/24' + ) + + available_wells = 96 - self.thermocycler_starting_well + total_combinations = len(self.odd_combinations) + len(self.even_combinations) + wells_needed = total_combinations * self.replicates + + if wells_needed > available_wells: + raise ValueError( + f'This protocol only supports assemblies with up to {available_wells} ' + f'combinations. Number of combinations in the protocol are {wells_needed}.' + ) + + def _process_combinations(self, protocol, pipette, combinations, restriction_enzyme, + thermo_plate, alum_block, dd_h2o, t4_dna_ligase_buffer, + t4_dna_ligase, volume_reagents, thermocycler_well_counter): + """Process combinations with specified restriction enzyme""" + + for combination in combinations: for r in range(self.replicates): - for part in odd_combination: - if type(part) == str: - part_name=part - else: raise ValueError(f'Part {part} is not a string nor sbol3.Component') - #part_ubication_in_thermocyler = thermocycler_mod_plate[thermo_wells[current_thermocycler_well]] - liquid_transfer(pipette, self.volume_part, tem_mod_block[self.dict_of_parts_in_temp_mod_position[part_name]], thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_part) - self.dict_of_parts_in_thermocycler[odd_combination] = thermo_wells[current_thermocycler_well] - current_thermocycler_well+=1 - - for even_combination in self.even_combinations: - #pippeting reagents - volume_dd_h2o = self.volume_total_reaction - (volume_reagents + self.volume_part*len(even_combination)) - liquid_transfer(pipette, volume_dd_h2o, dd_h2o, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate) - liquid_transfer(pipette, self.volume_t4_dna_ligase_buffer, t4_dna_ligase_buffer, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_t4_dna_ligase_buffer) - liquid_transfer(pipette, self.volume_t4_dna_ligase, t4_dna_ligase, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_t4_dna_ligase) - liquid_transfer(pipette, self.volume_restriction_enzyme, restriction_enzyme_sapi, thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_restriction_enzyme) - #pippeting parts + dest_well = thermo_plate.wells()[thermocycler_well_counter] + dest_well_name = dest_well.well_name + + volume_dd_h20 = self.volume_total_reaction - (volume_reagents + self.volume_part * len(combination)) + + # Add reagents + self.liquid_transfer(protocol=protocol, pipette=pipette, volume=volume_dd_h20, + source=dd_h2o, dest=dest_well, + asp_rate=self.aspiration_rate, disp_rate=self.dispense_rate, touch_tip=True) + + self.liquid_transfer(protocol=protocol, pipette=pipette, volume=self.volume_t4_dna_ligase_buffer, + source=t4_dna_ligase_buffer, dest=dest_well, + asp_rate=self.aspiration_rate, disp_rate=self.dispense_rate, + mix_before=self.volume_t4_dna_ligase_buffer, touch_tip=True) + + self.liquid_transfer(protocol=protocol, pipette=pipette, volume=self.volume_t4_dna_ligase, + source=t4_dna_ligase, dest=dest_well, + asp_rate=self.aspiration_rate, disp_rate=self.dispense_rate, + mix_before=self.volume_t4_dna_ligase, touch_tip=True) + + self.liquid_transfer(protocol=protocol, pipette=pipette, volume=self.volume_restriction_enzyme, + source=restriction_enzyme, dest=dest_well, + asp_rate=self.aspiration_rate, disp_rate=self.dispense_rate, + mix_before=self.volume_restriction_enzyme, touch_tip=True) + + # Add parts + for i, part in enumerate(combination): + part_source = alum_block[self.dict_of_parts_in_temp_mod_position[part]] + if i == len(combination) - 1: # Don't drop tip on last part + self.liquid_transfer(protocol=protocol, pipette=pipette, volume=self.volume_part, + source=part_source, dest=dest_well, + asp_rate=self.aspiration_rate, disp_rate=self.dispense_rate, + mix_before=self.volume_part, touch_tip=True, drop_tip=False) + else: + self.liquid_transfer(protocol=protocol, pipette=pipette, volume=self.volume_part, + source=part_source, dest=dest_well, + asp_rate=self.aspiration_rate, disp_rate=self.dispense_rate, + mix_before=self.volume_part, touch_tip=True) + + # Remove air bubbles + for _ in range(int(self.volume_total_reaction / 10)): + self.liquid_transfer(protocol=protocol, pipette=pipette, volume=self.volume_total_reaction, + source=dest_well.bottom(), dest=dest_well.bottom(8), + asp_rate=1.0, disp_rate=1.0, new_tip=False, drop_tip=False, touch_tip=True) + pipette.drop_tip() + + # Track combination + self.dict_of_parts_in_thermocycler[f"Replicate: {r + 1}, Combination: {combination}"] = dest_well_name + self.dna_list_for_transformation_protocol.append(combination + (f'replicate_{r + 1}',)) + thermocycler_well_counter += 1 + + return thermocycler_well_counter + + +class SBOLLoopAssembly(BaseAssembly): + """ + SBOL Loop Assembly - handles explicit assembly dictionaries from SBOL format. + Each assembly dictionary represents one specific construct to build. + """ + + def __init__(self, assemblies: List[Dict], *args, **kwargs): + super().__init__(*args, **kwargs) + self.assemblies = assemblies + self.parts_set = set() + self.backbone_set = set() + self.restriction_enzyme_set = set() + self.combined_set = set() + self.assembly_combinations = [] # SBOL assemblies are explicit, not combinatorial + + def process_assemblies(self): + """Process SBOL format assemblies - each is explicit, no combinations needed""" + self._reset_assembly_state() + + for assembly in self.assemblies: + # Extract parts from PartsList + part_names = [] + for part_uri in assembly["PartsList"]: + part_name = self._extract_name_from_uri(part_uri) + self.parts_set.add(part_name) + part_names.append(part_name) + + # Extract backbone + backbone_name = self._extract_name_from_uri(assembly["Backbone"]) + self.backbone_set.add(backbone_name) + + # Extract restriction enzyme + enzyme_name = self._extract_name_from_uri(assembly["Restriction Enzyme"]) + self.restriction_enzyme_set.add(enzyme_name) + + # Extract product name + product_name = self._extract_name_from_uri(assembly["Product"]) + assembly_combo = { + 'parts': [backbone_name] + part_names, # Include backbone as first part + 'enzyme': enzyme_name, + 'product': product_name + } + self.assembly_combinations.append(assembly_combo) + + self.combined_set = self.parts_set.union(self.backbone_set) + self._validate_assembly_requirements() + + def _load_parts_and_enzymes(self, protocol, alum_block) -> int: + """Load enzymes and parts for SBOL format""" + temp_module_well_counter = 3 # Starting after common reagents + + # Load all unique restriction enzymes + for enzyme_name in sorted(self.restriction_enzyme_set): + self._load_reagent(protocol, module_labware=alum_block, + well_position=temp_module_well_counter, + name=f"Restriction Enzyme {enzyme_name}") + temp_module_well_counter += 1 + + # Load all unique parts (including backbones) + for part in sorted(self.combined_set): + self._load_reagent(protocol, module_labware=alum_block, + well_position=temp_module_well_counter, + name=f"{part}") + temp_module_well_counter += 1 + + return temp_module_well_counter + + def _process_assembly_combinations(self, protocol, pipette, thermo_plate, alum_block, + dd_h2o, t4_dna_ligase_buffer, t4_dna_ligase, + volume_reagents, thermocycler_well_counter) -> int: + """Process SBOL assembly combinations with explicit enzyme selection""" + + for assembly_combo in self.assembly_combinations: for r in range(self.replicates): - for part in even_combination: - if type(part) == str: - part_name=part - else: raise ValueError(f'Part {part} is not a string nor sbol3.Component') - liquid_transfer(pipette, self.volume_part, tem_mod_block[self.dict_of_parts_in_temp_mod_position[part_name]], thermocycler_mod_plate[thermo_wells[current_thermocycler_well]], self.aspiration_rate, self.dispense_rate, mix_before=self.volume_part) - self.dict_of_parts_in_thermocycler[even_combination] = thermo_wells[current_thermocycler_well] - current_thermocycler_well+=1 - - protocol.comment('Take out the reagents since the temperature module will be turn off') - #We close the thermocycler lid and wait for the temperature to reach 42°C - thermocycler_mod.close_lid() - #The thermocycler's lid temperature is set with the following command - thermocycler_mod.set_lid_temperature(42) - tem_mod.deactivate() - #Cycles were made following https://pubs.acs.org/doi/10.1021/sb500366v - profile = [ - {'temperature': 42, 'hold_time_minutes': 2}, - {'temperature': 16, 'hold_time_minutes': 5}] - thermocycler_mod.execute_profile(steps=profile, repetitions=25, block_max_volume=30) - - denaturation = [ - {'temperature': 60, 'hold_time_minutes': 10}, - {'temperature': 80, 'hold_time_minutes': 10}] - thermocycler_mod.execute_profile(steps=denaturation, repetitions=1, block_max_volume=30) - thermocycler_mod.set_block_temperature(4) - #END - - #output - print('Parts and reagents in temp_module') - print(self.dict_of_parts_in_temp_mod_position) - print('Assembled parts in thermocycler_module') - print(self.dict_of_parts_in_thermocycler) + dest_well = thermo_plate.wells()[thermocycler_well_counter] + dest_well_name = dest_well.well_name + + parts = assembly_combo['parts'] + enzyme_name = assembly_combo['enzyme'] + product_name = assembly_combo['product'] + + volume_dd_h20 = self.volume_total_reaction - (volume_reagents + self.volume_part * len(parts)) + + # Add reagents + self.liquid_transfer(protocol=protocol, pipette=pipette, volume=volume_dd_h20, + source=dd_h2o, dest=dest_well, + asp_rate=self.aspiration_rate, disp_rate=self.dispense_rate, touch_tip=True) + + self.liquid_transfer(protocol=protocol, pipette=pipette, volume=self.volume_t4_dna_ligase_buffer, + source=t4_dna_ligase_buffer, dest=dest_well, + asp_rate=self.aspiration_rate, disp_rate=self.dispense_rate, + mix_before=self.volume_t4_dna_ligase_buffer, touch_tip=True) + + self.liquid_transfer(protocol=protocol, pipette=pipette, volume=self.volume_t4_dna_ligase, + source=t4_dna_ligase, dest=dest_well, + asp_rate=self.aspiration_rate, disp_rate=self.dispense_rate, + mix_before=self.volume_t4_dna_ligase, touch_tip=True) + + # Add restriction enzyme (explicit from SBOL) + restriction_enzyme = alum_block[ + self.dict_of_parts_in_temp_mod_position[f"Restriction Enzyme {enzyme_name}"]] + self.liquid_transfer(protocol=protocol, pipette=pipette, volume=self.volume_restriction_enzyme, + source=restriction_enzyme, dest=dest_well, + asp_rate=self.aspiration_rate, disp_rate=self.dispense_rate, + mix_before=self.volume_restriction_enzyme, touch_tip=True) + + # Add parts (including backbone) + for i, part in enumerate(parts): + part_source = alum_block[self.dict_of_parts_in_temp_mod_position[part]] + if i == len(parts) - 1: # Don't drop tip on last part + self.liquid_transfer(protocol=protocol, pipette=pipette, volume=self.volume_part, + source=part_source, dest=dest_well, + asp_rate=self.aspiration_rate, disp_rate=self.dispense_rate, + mix_before=self.volume_part, touch_tip=True, drop_tip=False) + else: + self.liquid_transfer(protocol=protocol, pipette=pipette, volume=self.volume_part, + source=part_source, dest=dest_well, + asp_rate=self.aspiration_rate, disp_rate=self.dispense_rate, + mix_before=self.volume_part, touch_tip=True) + + # Remove air bubbles + for _ in range(int(self.volume_total_reaction / 10)): + self.liquid_transfer(protocol=protocol, pipette=pipette, volume=self.volume_total_reaction, + source=dest_well.bottom(), dest=dest_well.bottom(8), + asp_rate=1.0, disp_rate=1.0, new_tip=False, drop_tip=False, touch_tip=True) + pipette.drop_tip() + + # Track assembly + self.dict_of_parts_in_thermocycler[f"Replicate: {r + 1}, Product: {product_name}"] = dest_well_name + self.dna_list_for_transformation_protocol.append(tuple(parts + [f'replicate_{r + 1}'])) + thermocycler_well_counter += 1 + + return thermocycler_well_counter + + def _calculate_total_tips_needed(self, number_of_constant_reagents: int = 4) -> int: + """Calculate total tips for SBOL format""" + total_assemblies = len(self.assembly_combinations) + reagent_tips = number_of_constant_reagents + total_reagent_tips = reagent_tips * total_assemblies * self.replicates + + total_part_tips = 0 + for assembly_combo in self.assembly_combinations: + total_part_tips += len(assembly_combo['parts']) * self.replicates + + return total_reagent_tips + total_part_tips + + # SBOL format helper methods + def _reset_assembly_state(self): + """Reset assembly processing state""" + self.parts_set = set() + self.backbone_set = set() + self.restriction_enzyme_set = set() + self.combined_set = set() + self.assembly_combinations = [] + + def _extract_name_from_uri(self, uri: str) -> str: + """Extract part name from SBOL URI""" + # Extract the last segment after the last '/' + if '/' in uri: + name_with_version = uri.split('/')[-2] + # Remove version number if present (e.g., "GFP/1" -> "GFP") + if '/' in name_with_version: + return name_with_version.split('/')[0] + return name_with_version + return uri + + def _validate_assembly_requirements(self): + """Validate SBOL assembly requirements""" + if not self.assembly_combinations: + raise ValueError("No valid SBOL assemblies found in input.") + + # Calculate reagent positions: water(1) + ligase(1) + buffer(1) + unique enzymes + reagent_positions = 3 + len(self.restriction_enzyme_set) + max_parts = 24 - reagent_positions + + if len(self.combined_set) > max_parts: + raise ValueError( + f'This protocol only supports assemblies with up to {max_parts} parts. ' + f'Number of parts in the protocol is {len(self.combined_set)}. ' + f'Parts: {self.combined_set}. ' + f'Reagent positions used: {reagent_positions}/24' + ) + + # Validate thermocycler capacity + available_wells = 96 - self.thermocycler_starting_well + wells_needed = len(self.assembly_combinations) * self.replicates + + if wells_needed > available_wells: + raise ValueError( + f'This protocol only supports assemblies with up to {available_wells} ' + f'combinations. Number of assemblies in the protocol are {wells_needed}.' + ) + + +class LoopAssembly: + """ + Factory class that auto-detects input format and returns appropriate subclass. + Supports both manual/combinatorial and SBOL format assemblies. + """ + + def __new__(cls, assemblies: List[Dict], *args, **kwargs): + """Factory method that detects format and returns appropriate instance""" + if not assemblies: + raise ValueError("No assemblies provided") + + # Detect format based on first assembly + first_assembly = assemblies[0] + + if cls._is_sbol_format(first_assembly): + print("Detected SBOL format - using SBOLLoopAssembly") + return SBOLLoopAssembly(assemblies, *args, **kwargs) + elif cls._is_manual_format(first_assembly): + print("Detected Manual format - using ManualLoopAssembly") + return ManualLoopAssembly(assemblies, *args, **kwargs) + else: + raise ValueError( + f"Unknown assembly format. Assembly must contain either:\n" + f"- SBOL format: 'Product', 'Backbone', 'PartsList', 'Restriction Enzyme'\n" + f"- Manual format: 'receiver' and role keys like 'promoter', 'rbs', etc.\n" + f"Found keys: {list(first_assembly.keys())}" + ) + + @staticmethod + def _is_sbol_format(assembly: Dict) -> bool: + """Check if assembly matches SBOL format""" + sbol_keys = {'Product', 'Backbone', 'PartsList', 'Restriction Enzyme'} + assembly_keys = set(assembly.keys()) + + # Check for SBOL-specific keys + has_sbol_keys = sbol_keys.issubset(assembly_keys) + + # Check for URI patterns (https://) + has_uri_patterns = any( + isinstance(v, str) and v.startswith('https://') + for v in assembly.values() + ) or any( + isinstance(v, list) and any( + isinstance(item, str) and item.startswith('https://') + for item in v + ) + for v in assembly.values() + ) + + return has_sbol_keys and has_uri_patterns + + @staticmethod + def _is_manual_format(assembly: Dict) -> bool: + """Check if assembly matches manual/combinatorial format""" + # Must have 'receiver' key + if 'receiver' not in assembly: + return False + + # Should have role-based keys (not SBOL keys) + sbol_keys = {'Product', 'Backbone', 'PartsList', 'Restriction Enzyme'} + assembly_keys = set(assembly.keys()) + + # Should not have SBOL keys + has_sbol_keys = bool(sbol_keys.intersection(assembly_keys)) + + # Should have role keys beyond 'receiver' + role_keys = assembly_keys - {'receiver'} + has_role_keys = len(role_keys) > 0 + + return not has_sbol_keys and has_role_keys + +# Default assemblies for testing +DEFAULT_DOMESTICATION_ASSEMBLY = [ + {"parts": ["part1", "part2"], "backbone": "acceptor", "restriction_enzyme": "BsaI"}, +] -# assembly -assembly_Odd_1 = {"promoter":["GVP0010", "GVP0011", "GVP0014"], "rbs":["B0033","B0034"], "cds":"sfGFP", "terminator":"B0015", "receiver":"Odd_1"} -#assembly_Even_2 = {"c4_receptor":"GD0001", "c4_buff_gfp":"GD0002", "spacer1":"20ins1", "spacer2":"Even_2", "receiver":"Even_2"} -assemblies = [assembly_Odd_1] +DEFAULT_MANUAL_ASSEMBLIES = [ + {"promoter": ["GVP0008"], "rbs": "B0034", + "cds": "sfGFP", "terminator": "B0015", "receiver": "Odd_1"} +] -assembly_Odd_1 = {"promoter":["j23101", "j23100"], "rbs":"B0034", "cds":"GFP", "terminator":"B0015", "receiver":"Odd_1"} -assembly_Even_2 = {"c4_receptor":"GD0001", "c4_buff_gfp":"GD0002", "spacer1":"20ins1", "spacer2":"Even_2", "receiver":"Even_2"} -assemblies = [assembly_Odd_1, assembly_Even_2] \ No newline at end of file +DEFAULT_SBOL_ASSEMBLIES = [ + { + "Product": "https://SBOL2Build.org/composite_1/1", + "Backbone": "https://sbolcanvas.org/Cir_qxow/1", + "PartsList": [ + "https://sbolcanvas.org/GFP/1", + "https://sbolcanvas.org/B0015/1", + "https://sbolcanvas.org/J23101/1", + "https://sbolcanvas.org/B0034/1" + ], + "Restriction Enzyme": "https://SBOL2Build.org/BsaI/1" + } +] \ No newline at end of file diff --git a/src/pudu/calibration.py b/src/pudu/calibration.py index 38a73bd..f3834cf 100644 --- a/src/pudu/calibration.py +++ b/src/pudu/calibration.py @@ -1,60 +1,33 @@ +from abc import ABC, abstractmethod from opentrons import protocol_api -from .utils import plate_96_wells, temp_wells, liquid_transfer +from typing import List, Dict, Optional import xlsxwriter +from pudu.utils import SmartPipette, Camera, colors -class Calibration(): +class BaseCalibration(ABC): """ - Creates a ptopocol to calibrate GFP using fluorescein (MEFL) and OD600 using nanoparticles. + Abstract base class for calibration protocols. + Contains shared hardware setup, liquid handling, and serial dilution functionality. Refer to: https://old.igem.org/wiki/images/a/a4/InterLab_2022_-_Calibration_Protocol_v2.pdf - - ... - - Attributes - ---------- - aspiration_rate: float - Aspiration rate in micro liters per second (uL/s). By default 0.5 uL/s. - dispense_rate: float - Dispense rate in micro liters per second (uL/s). By default 1 uL/s. - tiprack_labware: str - Labware to use as tiprack. By default opentrons_96_tiprack_300ul. - tiprack_position: int - Deck position for tiprack. By default 9. - pipette: str - Pipette to use, can be a p300 and p1000. By default p300_single_gen2. - pipette_position: str - Deck position for pipette. By default left. - calibration_plate_labware: str - Labware to use as calibration plate. By default corning_96_wellplate_360ul_flat. - calibration_plate_position: int - Deck position for calibration plate. By default 7. - use_temperature_module: bool - Whether to use temperature module or not. By default True. - tube_rack_labware: str - Labware to use as tube rack. By default opentrons_24_aluminumblock_nest_1.5ml_snapcap. - tube_rack_position: int - Deck position for tube rack. By default 1. - use_falcon_tubes: bool - Whether to use falcon tubes or not. By default False. - falcon_tube_rack_labware: str - Labware to use as falcon tube rack. By default opentrons_6_tuberack_falcon_50ml_conical. - falcon_tube_rack_position: int - Deck position for falcon tube rack. By default 2. """ - def __init__(self, - aspiration_rate:float=0.5, - dispense_rate:float=1, - tiprack_labware:str='opentrons_96_tiprack_300ul', - tiprack_position:int=9, - pipette:str='p300_single_gen2', - pipette_position:str='left', - calibration_plate_labware:str='corning_96_wellplate_360ul_flat', - calibration_plate_position:int=7, - tube_rack_labware:str='opentrons_24_aluminumblock_nest_1.5ml_snapcap', - tube_rack_position:int=1, - use_falcon_tubes:bool=False, - falcon_tube_rack_labware:str='opentrons_6_tuberack_falcon_50ml_conical', - falcon_tube_rack_position:int=2, - ): + + def __init__(self, + aspiration_rate: float = 0.5, + dispense_rate: float = 1.0, + tiprack_labware: str = 'opentrons_96_tiprack_300ul', + tiprack_position: str = '9', + pipette: str = 'p300_single_gen2', + pipette_position: str = 'left', + calibration_plate_labware: str = 'corning_96_wellplate_360ul_flat', + calibration_plate_position: str = '7', + tube_rack_labware: str = 'opentrons_24_aluminumblock_nest_1.5ml_snapcap', + tube_rack_position: str = '1', + use_falcon_tubes: bool = False, + falcon_tube_rack_labware: str = 'opentrons_6_tuberack_falcon_50ml_conical', + falcon_tube_rack_position: str = '2', + take_picture: bool = False, + take_video: bool = False, + water_testing: bool = False): self.aspiration_rate = aspiration_rate self.dispense_rate = dispense_rate @@ -69,327 +42,407 @@ def __init__(self, self.use_falcon_tubes = use_falcon_tubes self.falcon_tube_rack_labware = falcon_tube_rack_labware self.falcon_tube_rack_position = falcon_tube_rack_position + self.take_picture = take_picture + self.take_video = take_video + self.water_testing = water_testing + # Shared tracking + self.calibrant_positions = {} + self.buffer_positions = {} + self.camera = Camera() + self.smart_pipette = None -class iGEM_gfp_od(Calibration): - """ - Creates a ptopocol to calibrate GFP using fluorescein (MEFL) and OD600 using nanoparticles. - Refer to: https://old.igem.org/wiki/images/a/a4/InterLab_2022_-_Calibration_Protocol_v2.pdf + @abstractmethod + def _get_calibrant_layout(self) -> Dict: + """Return the specific calibrant layout for this protocol""" + pass - Attributes - ---------- - aspiration_rate: float - Aspiration rate in micro liters per second (uL/s). By default 0.5 uL/s. - dispense_rate: float - Dispense rate in micro liters per second (uL/s). By default 1 uL/s. - tiprack_labware: str - Labware to use as tiprack. By default opentrons_96_tiprack_300ul. - tiprack_position: int - Deck position for tiprack. By default 9. - pipette: str - Pipette to use, can be a p300 and p1000. By default p300_single_gen2. - pipette_position: str - Deck position for pipette. By default left. - calibration_plate_labware: str - Labware to use as calibration plate. By default corning_96_wellplate_360ul_flat. - calibration_plate_position: int - Deck position for calibration plate. By default 7. - use_temperature_module: bool - Whether to use temperature module or not. By default True. - tube_rack_labware: str - Labware to use as tube rack. By default opentrons_24_aluminumblock_nest_1.5ml_snapcap. - tube_rack_position: int - Deck position for tube rack. By default 1. - use_falcon_tubes: bool - Whether to use falcon tubes or not. By default False. - falcon_tube_rack_labware: str - Labware to use as falcon tube rack. By default opentrons_6_tuberack_falcon_50ml_conical. - falcon_tube_rack_position: int - Deck position for falcon tube rack. By default 2. - """ - def __init__(self, - *args, **kwargs): - super().__init__(*args, **kwargs) - - self.sbol_output = [] - - metadata = { - 'protocolName': 'iGEM GFP OD600 calibration', - 'author': 'Gonzalo Vidal ', - 'description': 'Protocol to perform serial dilutions of fluorescein and nanoparticles for calibration', - 'apiLevel': '2.13'} - - def run(self,protocol): - #Set deck - #Labware - tiprack = protocol.load_labware(self.tiprack_labware, f'{self.tiprack_position}') + @abstractmethod + def _load_calibrants(self, protocol, tube_rack) -> None: + """Load calibrants specific to this protocol""" + pass + + @abstractmethod + def _dispense_initial_calibrants(self, protocol, pipette, plate) -> None: + """Dispense initial calibrants to starting positions""" + pass + + @abstractmethod + def _perform_serial_dilutions(self, protocol, pipette, plate) -> None: + """Perform serial dilutions specific to this protocol""" + pass + + def _define_and_load_liquid(self, protocol, well, name: str, description: str = None, + volume: float = 1000, color_index: int = None): + """Define liquid and load it into specified well""" + if description is None: + description = name + if color_index is None: + color_index = len(self.calibrant_positions) % len(colors) + + liquid = protocol.define_liquid( + name=name, + description=description, + display_color=colors[color_index] + ) + well.load_liquid(liquid, volume=volume) + protocol.comment(f"Loaded {name} at position {well.well_name}") + return well + + def _setup_hardware(self, protocol): + """Setup shared hardware components""" + tiprack = protocol.load_labware(self.tiprack_labware, self.tiprack_position) pipette = protocol.load_instrument(self.pipette, self.pipette_position, tip_racks=[tiprack]) + self.smart_pipette = SmartPipette(pipette, protocol) plate = protocol.load_labware(self.calibration_plate_labware, self.calibration_plate_position) tube_rack = protocol.load_labware(self.tube_rack_labware, self.tube_rack_position) + + falcon_tube_rack = None if self.use_falcon_tubes: - falcon_tube_rack = protocol.load_labware(self.falcon_tube_rack_labware, self.falcon_tube_rack_position) - #Protocol - #add calibrants - fluorescein_1x = tube_rack['A1'] - microspheres_1x = tube_rack['A2'] - #add dilution buffers in tube rack - pbs_1 = tube_rack['A3'] - pbs_2 = tube_rack['A4'] - water_1 = tube_rack['A5'] - water_2 = tube_rack['A6'] - #if using falcon, remap pbs and water - if self.use_falcon_tubes: - #add dilution buffers in falcon tube rack - pbs_falcon = falcon_tube_rack['A1'] - water_falcon = falcon_tube_rack['A2'] - #remap pbs and water - pbs_1 = pbs_falcon - pbs_2 = pbs_falcon - water_1 = water_falcon - water_2 = water_falcon - #dispense PBS - pipette.pick_up_tip() - for well in plate_96_wells[1:12]: - liquid_transfer(pipette, 100, pbs_1, plate[well], self.aspiration_rate, self.dispense_rate, new_tip=False, drop_tip=False) - for well in plate_96_wells[13:24]: - liquid_transfer(pipette, 100, pbs_2, plate[well], self.aspiration_rate, self.dispense_rate, new_tip=False, drop_tip=False) - pipette.drop_tip() - #dispense water - pipette.pick_up_tip() - for well in plate_96_wells[25:36]: - liquid_transfer(pipette, 100, water_1, plate[well], self.aspiration_rate, self.dispense_rate, new_tip=False, drop_tip=False) - for well in plate_96_wells[37:48]: - liquid_transfer(pipette, 100, water_2, plate[well], self.aspiration_rate, self.dispense_rate, new_tip=False, drop_tip=False) - pipette.drop_tip() - #dispense fluorescein - liquid_transfer(pipette, 200, fluorescein_1x, plate['A1'], self.aspiration_rate, self.dispense_rate, mix_before=200, mix_reps=4) - liquid_transfer(pipette, 200, fluorescein_1x, plate['B1'], self.aspiration_rate, self.dispense_rate, mix_before=200, mix_reps=4) - #dispense nanoparticles - liquid_transfer(pipette, 200, microspheres_1x, plate['C1'], self.aspiration_rate, self.dispense_rate, mix_before=200, mix_reps=4) - liquid_transfer(pipette, 200, microspheres_1x, plate['D1'], self.aspiration_rate, self.dispense_rate, mix_before=200, mix_reps=4) - #fluorescein serial dilutions - pipette.pick_up_tip() - for i in range(0,11): - liquid_transfer(pipette, 100, plate[plate_96_wells[i]], plate[plate_96_wells[i+1]], self.aspiration_rate, self.dispense_rate, mix_before=200, mix_reps=4, new_tip=False, drop_tip=False) - pipette.drop_tip() - pipette.pick_up_tip() - for i in range(12,23): - liquid_transfer(pipette, 100, plate[plate_96_wells[i]], plate[plate_96_wells[i+1]], self.aspiration_rate, self.dispense_rate, mix_before=200, mix_reps=4, new_tip=False, drop_tip=False) - pipette.drop_tip() - #nanoparticles serial dilutions + falcon_tube_rack = protocol.load_labware( + self.falcon_tube_rack_labware, + self.falcon_tube_rack_position + ) + + return pipette, plate, tube_rack, falcon_tube_rack + + def _load_dilution_buffers(self, protocol, tube_rack, falcon_tube_rack) -> Dict: + """Load PBS and water buffers with falcon tube remapping if needed""" + buffers = {} + + if self.use_falcon_tubes and falcon_tube_rack: + # Use falcon tubes with liquid definition + pbs_falcon = self._define_and_load_liquid( + protocol, falcon_tube_rack['A1'], "PBS Buffer", + "Phosphate Buffered Saline for dilutions", volume=15000, color_index=0 + ) + water_falcon = self._define_and_load_liquid( + protocol, falcon_tube_rack['A2'], "Deionized Water", + "Deionized Water for dilutions", volume=15000, color_index=1 + ) + buffers['pbs_sources'] = [pbs_falcon, pbs_falcon] + buffers['water_sources'] = [water_falcon, water_falcon] + else: + # Use individual tubes with liquid definition + pbs_1 = self._define_and_load_liquid( + protocol, tube_rack['A3'], "PBS Buffer 1", volume=1000, color_index=0 + ) + pbs_2 = self._define_and_load_liquid( + protocol, tube_rack['A4'], "PBS Buffer 2", volume=1000, color_index=0 + ) + water_1 = self._define_and_load_liquid( + protocol, tube_rack['A5'], "Deionized Water 1", volume=1000, color_index=1 + ) + water_2 = self._define_and_load_liquid( + protocol, tube_rack['A6'], "Deionized Water 2", volume=1000, color_index=1 + ) + buffers['pbs_sources'] = [pbs_1, pbs_2] + buffers['water_sources'] = [water_1, water_2] + + self.buffer_positions = buffers + return buffers + + def _dispense_dilution_buffers(self, protocol, pipette, plate, buffers, wells_layout): + """Dispense PBS and water to designated wells""" + # Dispense PBS pipette.pick_up_tip() - for i in range(24,35): - liquid_transfer(pipette, 100, plate[plate_96_wells[i]], plate[plate_96_wells[i+1]], self.aspiration_rate, self.dispense_rate, mix_before=200, mix_reps=4, new_tip=False, drop_tip=False) + for wells_range, source_idx in wells_layout['pbs']: + target_wells = plate.wells()[wells_range[0]:wells_range[1]] + source = buffers['pbs_sources'][source_idx] + use_conical = self.use_falcon_tubes # Enable conical tube handling for falcon tubes + + for well in target_wells: + self.smart_pipette.liquid_transfer( + volume=100, source=source, destination=well, + asp_rate=self.aspiration_rate, disp_rate=self.dispense_rate, + new_tip=False, drop_tip=False, use=use_conical + ) pipette.drop_tip() + + # Dispense water pipette.pick_up_tip() - for i in range(36,47): - liquid_transfer(pipette, 100, plate[plate_96_wells[i]], plate[plate_96_wells[i+1]], self.aspiration_rate, self.dispense_rate, mix_before=200, mix_reps=4, new_tip=False, drop_tip=False) + for wells_range, source_idx in wells_layout['water']: + target_wells = plate.wells()[wells_range[0]:wells_range[1]] + source = buffers['water_sources'][source_idx] + use_conical = self.use_falcon_tubes # Enable conical tube handling for falcon tubes + + for well in target_wells: + self.smart_pipette.liquid_transfer( + volume=100, source=source, destination=well, + asp_rate=self.aspiration_rate, disp_rate=self.dispense_rate, + new_tip=False, drop_tip=False, use=use_conical + ) pipette.drop_tip() - #END -class iGEM_rgb_od(Calibration): + def run(self, protocol: protocol_api.ProtocolContext): + """Main protocol execution using template method pattern""" + # Setup hardware + pipette, plate, tube_rack, falcon_tube_rack = self._setup_hardware(protocol) + + # Load calibrants (protocol-specific) + self._load_calibrants(protocol, tube_rack) + + # Load dilution buffers + buffers = self._load_dilution_buffers(protocol, tube_rack, falcon_tube_rack) + + # Get layout for this specific protocol + layout = self._get_calibrant_layout() + + # Media capture start + if self.take_picture: + self.camera.capture_picture(protocol, when="start") + if self.take_video: + self.camera.start_video(protocol) + + # Dispense dilution buffers + self._dispense_dilution_buffers(protocol, pipette, plate, buffers, layout) + + # Dispense initial calibrants (protocol-specific) + self._dispense_initial_calibrants(protocol, pipette, plate) + + # Perform serial dilutions (protocol-specific) + self._perform_serial_dilutions(protocol, pipette, plate) + + # Media capture end + if self.take_video: + self.camera.stop_video(protocol) + if self.take_picture: + self.camera.capture_picture(protocol, when="end") + +class GFPODCalibration(BaseCalibration): """ - Creates a ptopocol to calibrate GFP using fluorescein (MEFL), sulforhodamine 101, cascade blue and OD600 using nanoparticles. - Refer to: https://old.igem.org/wiki/images/a/a4/InterLab_2022_-_Calibration_Protocol_v2.pdf + GFP and OD600 calibration using fluorescein and nanoparticles. + Based on iGEM 2022 calibration protocol. + """ + + def _get_calibrant_layout(self) -> Dict: + """Layout for GFP/OD600 calibration (2 calibrants, 2 replicates each)""" + return { + 'pbs': [((1, 12), 0), ((13, 24), 1)], # (well_range, source_index) + 'water': [((25, 36), 0), ((37, 48), 1)], + 'calibrants': { + 'fluorescein': ['A1', 'B1'], + 'microspheres': ['C1', 'D1'] + }, + 'dilution_series': [ + (0, 11), # Row A fluorescein + (12, 23), # Row B fluorescein + (24, 35), # Row C microspheres + (36, 47) # Row D microspheres + ] + } + + def _load_calibrants(self, protocol, tube_rack) -> None: + """Load fluorescein and microspheres""" + fluorescein_well = self._define_and_load_liquid( + protocol, tube_rack['A1'], "Fluorescein 1x", + "Fluorescein calibration standard", volume=1000, color_index=2 + ) + microspheres_well = self._define_and_load_liquid( + protocol, tube_rack['A2'], "Microspheres 1x", + "Silica nanoparticles for OD600 calibration", volume=1000, color_index=3 + ) + + self.calibrant_positions['fluorescein_1x'] = fluorescein_well + self.calibrant_positions['microspheres_1x'] = microspheres_well + + def _dispense_initial_calibrants(self, protocol, pipette, plate) -> None: + """Dispense fluorescein and microspheres to starting wells""" + # Fluorescein to A1, B1 + for well_name in ['A1', 'B1']: + self.smart_pipette.liquid_transfer( + volume=200, source=self.calibrant_positions['fluorescein_1x'], + destination=plate[well_name], asp_rate=self.aspiration_rate, + disp_rate=self.dispense_rate, mix_before=200, mix_reps=4 + ) - Attributes - ---------- - aspiration_rate: float - Aspiration rate in micro liters per second (uL/s). By default 0.5 uL/s. - dispense_rate: float - Dispense rate in micro liters per second (uL/s). By default 1 uL/s. - tiprack_labware: str - Labware to use as tiprack. By default opentrons_96_tiprack_300ul. - tiprack_position: int - Deck position for tiprack. By default 9. - pipette: str - Pipette to use, can be a p300 and p1000. By default p300_single_gen2. - pipette_position: str - Deck position for pipette. By default left. - calibration_plate_labware: str - Labware to use as calibration plate. By default corning_96_wellplate_360ul_flat. - calibration_plate_position: int - Deck position for calibration plate. By default 7. - tube_rack_labware: str - Labware to use as tube rack. By default opentrons_24_aluminumblock_nest_1.5ml_snapcap. - tube_rack_position: int - Deck position for tube rack. By default 1. - use_falcon_tubes: bool - Whether to use falcon tubes or not. By default False. - falcon_tube_rack_labware: str - Labware to use as falcon tube rack. By default opentrons_6_tuberack_falcon_50ml_conical. - falcon_tube_rack_position: int - Deck position for falcon tube rack. By default 2. + # Microspheres to C1, D1 + for well_name in ['C1', 'D1']: + self.smart_pipette.liquid_transfer( + volume=200, source=self.calibrant_positions['microspheres_1x'], + destination=plate[well_name], asp_rate=self.aspiration_rate, + disp_rate=self.dispense_rate, mix_before=200, mix_reps=4 + ) + + def _perform_serial_dilutions(self, protocol, pipette, plate) -> None: + """Perform 1:2 serial dilutions for fluorescein and microspheres""" + layout = self._get_calibrant_layout() + + for start_idx, end_idx in layout['dilution_series']: + pipette.pick_up_tip() + for i in range(start_idx, end_idx): + source_well = plate.wells()[i] + dest_well = plate.wells()[i + 1] + self.smart_pipette.liquid_transfer( + volume=100, source=source_well, destination=dest_well, + asp_rate=self.aspiration_rate, disp_rate=self.dispense_rate, + mix_before=200, mix_reps=4, new_tip=False, drop_tip=False + ) + pipette.drop_tip() + + +class RGBODCalibration(BaseCalibration): + """ + RGB and OD600 calibration using fluorescein, sulforhodamine 101, cascade blue, and nanoparticles. + Extended iGEM calibration protocol. """ - def __init__(self, - *args, **kwargs): - super().__init__(*args, **kwargs) - - #Does a SBOL component of this make sense? - metadata = { - 'protocolName': 'iGEM RGB OD600 calibration', - 'author': 'Gonzalo Vidal ', - 'description': 'Protocol to perform serial dilutions of fluorescein, sulforhodamine 101, cascade blue and nanoparticles for calibration', - 'apiLevel': '2.13'} + def _get_calibrant_layout(self) -> Dict: + """Layout for RGB/OD600 calibration (4 calibrants, 2 replicates each)""" + return { + 'pbs': [((1, 12), 0), ((13, 24), 1), ((25, 36), 2), ((37, 48), 3)], + 'water': [((49, 60), 0), ((61, 72), 1), ((73, 84), 2), ((85, 96), 3)], + 'calibrants': { + 'fluorescein': ['A1', 'B1'], + 'sulforhodamine': ['C1', 'D1'], + 'cascade_blue': ['E1', 'F1'], + 'microspheres': ['G1', 'H1'] + }, + 'dilution_series': [ + (0, 10), # Row A fluorescein (to well 11, discard to binit) + (12, 22), # Row B fluorescein + (24, 34), # Row C sulforhodamine + (36, 46), # Row D sulforhodamine + (48, 58), # Row E cascade blue + (60, 70), # Row F cascade blue + (72, 82), # Row G microspheres (to well 83, discard to binit) + (84, 94) # Row H microspheres + ] + } - def run(self, protocol: protocol_api.ProtocolContext): + def _load_calibrants(self, protocol, tube_rack) -> None: + """Load all RGB calibrants and microspheres""" + sulforhodamine_well = self._define_and_load_liquid( + protocol, tube_rack['A1'], "Sulforhodamine 101 1x", + "Sulforhodamine 101 red fluorescent calibrant", volume=1000, color_index=2 + ) + fluorescein_well = self._define_and_load_liquid( + protocol, tube_rack['B1'], "Fluorescein 1x", + "Fluorescein green fluorescent calibrant", volume=1000, color_index=3 + ) + cascade_blue_well = self._define_and_load_liquid( + protocol, tube_rack['C1'], "Cascade Blue 1x", + "Cascade Blue blue fluorescent calibrant", volume=1000, color_index=4 + ) + microspheres_well = self._define_and_load_liquid( + protocol, tube_rack['D1'], "Microspheres 1x", + "Silica nanoparticles for OD600 calibration", volume=1000, color_index=5 + ) + binit_well = self._define_and_load_liquid( + protocol, tube_rack['A6'], "Waste Container", + "Container for waste disposal", volume=0, color_index=6 + ) - #Labware - tiprack = protocol.load_labware(self.tiprack_labware, f'{self.tiprack_position}') - pipette = protocol.load_instrument(self.pipette, self.pipette_position, tip_racks=[tiprack]) - plate = protocol.load_labware(self.calibration_plate_labware, self.calibration_plate_position) - tube_rack = protocol.load_labware(self.tube_rack_labware, self.tube_rack_position) - if self.use_falcon_tubes: - falcon_tube_rack = protocol.load_labware(self.falcon_tube_rack_labware, self.falcon_tube_rack_position) - #Protocol - #set deck - #add calibrants - sulforhodamine_1x = tube_rack['A1'] - fluorescein_1x = tube_rack['B1'] - cascade_blue_1x = tube_rack['C1'] - microspheres_1x = tube_rack['D1'] - #add dilution buffers in tube rack - pbs_1 = tube_rack['A2'] - pbs_2 = tube_rack['B2'] - pbs_3 = tube_rack['C2'] - pbs_4 = tube_rack['D2'] - pbs_5 = tube_rack['A3'] - pbs_6 = tube_rack['B3'] - pbs_7 = tube_rack['C3'] - pbs_8 = tube_rack['D3'] - water_1 = tube_rack['A4'] - water_2 = tube_rack['B4'] - water_3 = tube_rack['C4'] - water_4 = tube_rack['D4'] - water_5 = tube_rack['A5'] - water_6 = tube_rack['B5'] - water_7 = tube_rack['C5'] - water_8 = tube_rack['D5'] - binit = tube_rack['A6'] - - #TODO use 2.0 tubes - - #if using falcon, remap pbs and water - if self.use_falcon_tubes: - #add dilution buffers in falcon tube rack + self.calibrant_positions.update({ + 'sulforhodamine_1x': sulforhodamine_well, + 'fluorescein_1x': fluorescein_well, + 'cascade_blue_1x': cascade_blue_well, + 'microspheres_1x': microspheres_well, + 'binit': binit_well + }) + + def _load_dilution_buffers(self, protocol, tube_rack, falcon_tube_rack) -> Dict: + """Extended buffer loading for RGB protocol""" + buffers = {} + + if self.use_falcon_tubes and falcon_tube_rack: + # Use falcon tubes for all buffers pbs_falcon = falcon_tube_rack['A1'] water_falcon = falcon_tube_rack['A2'] - pbs_1 = pbs_falcon - pbs_2 = pbs_falcon - pbs_3 = pbs_falcon - pbs_4 = pbs_falcon - water_1 = water_falcon - water_2 = water_falcon - water_3 = water_falcon - water_4 = water_falcon + buffers['pbs_sources'] = [pbs_falcon] * 8 + buffers['water_sources'] = [water_falcon] * 8 + else: + # Use individual tubes + buffers['pbs_sources'] = [ + tube_rack['A2'], tube_rack['B2'], tube_rack['C2'], tube_rack['D2'], + tube_rack['A3'], tube_rack['B3'], tube_rack['C3'], tube_rack['D3'] + ] + buffers['water_sources'] = [ + tube_rack['A4'], tube_rack['B4'], tube_rack['C4'], tube_rack['D4'], + tube_rack['A5'], tube_rack['B5'], tube_rack['C5'], tube_rack['D5'] + ] + + self.buffer_positions = buffers + return buffers + def _dispense_initial_calibrants(self, protocol, pipette, plate) -> None: + """Dispense all RGB calibrants to starting wells""" mix_vol = 100 mix_reps = 3 - #dispense PBS - pipette.pick_up_tip() - #ambientar pipeta - liquid_transfer(pipette, 100, pbs_1, pbs_1, self.aspiration_rate, self.dispense_rate, new_tip=False, drop_tip=False, mix_before=mix_vol, mix_reps=mix_reps) - for well in plate_96_wells[1:12]: - liquid_transfer(pipette, 100, pbs_1, plate[well], self.aspiration_rate, self.dispense_rate, new_tip=False, drop_tip=False) - for well in plate_96_wells[13:24]: - liquid_transfer(pipette, 100, pbs_2, plate[well], self.aspiration_rate, self.dispense_rate, new_tip=False, drop_tip=False) - for well in plate_96_wells[25:36]: - liquid_transfer(pipette, 100, pbs_3, plate[well], self.aspiration_rate, self.dispense_rate, new_tip=False, drop_tip=False) - for well in plate_96_wells[37:48]: - liquid_transfer(pipette, 100, pbs_4, plate[well], self.aspiration_rate, self.dispense_rate, new_tip=False, drop_tip=False) - pipette.drop_tip() - #dispense water - pipette.pick_up_tip() - #ambientar pipeta - liquid_transfer(pipette, 100, pbs_1, pbs_1, self.aspiration_rate, self.dispense_rate, new_tip=False, drop_tip=False, mix_before=mix_vol, mix_reps=mix_reps) - for well in plate_96_wells[49:60]: - liquid_transfer(pipette, 100, water_1, plate[well], self.aspiration_rate, self.dispense_rate, new_tip=False, drop_tip=False) - for well in plate_96_wells[61:72]: - liquid_transfer(pipette, 100, water_2, plate[well], self.aspiration_rate, self.dispense_rate, new_tip=False, drop_tip=False) - for well in plate_96_wells[73:84]: - liquid_transfer(pipette, 100, water_3, plate[well], self.aspiration_rate, self.dispense_rate, new_tip=False, drop_tip=False) - for well in plate_96_wells[85:96]: - liquid_transfer(pipette, 100, water_4, plate[well], self.aspiration_rate, self.dispense_rate, new_tip=False, drop_tip=False) - pipette.drop_tip() - #dispense fluorescein - liquid_transfer(pipette, 200, fluorescein_1x, plate['A1'], self.aspiration_rate, self.dispense_rate, mix_before=mix_vol, mix_reps=mix_reps) - liquid_transfer(pipette, 200, fluorescein_1x, plate['B1'], self.aspiration_rate, self.dispense_rate, mix_before=mix_vol, mix_reps=mix_reps) - #dispense sulforhodamine 101 - liquid_transfer(pipette, 200, sulforhodamine_1x, plate['C1'], self.aspiration_rate, self.dispense_rate, mix_before=mix_vol, mix_reps=mix_reps) - liquid_transfer(pipette, 200, sulforhodamine_1x, plate['D1'], self.aspiration_rate, self.dispense_rate, mix_before=mix_vol, mix_reps=mix_reps) - #dispense cascade blue - liquid_transfer(pipette, 200, cascade_blue_1x, plate['E1'], self.aspiration_rate, self.dispense_rate, mix_before=mix_vol, mix_reps=mix_reps) - liquid_transfer(pipette, 200, cascade_blue_1x, plate['F1'], self.aspiration_rate, self.dispense_rate, mix_before=mix_vol, mix_reps=mix_reps) - #dispense microspheres nanoparticles - liquid_transfer(pipette, 200, microspheres_1x, plate['G1'], self.aspiration_rate, self.dispense_rate, mix_before=mix_vol, mix_reps=mix_reps) - liquid_transfer(pipette, 200, microspheres_1x, plate['H1'], self.aspiration_rate, self.dispense_rate, mix_before=mix_vol, mix_reps=mix_reps) - #fluorescein serial dilutions - pipette.pick_up_tip() - for i in range(0,10): - liquid_transfer(pipette, 100, plate[plate_96_wells[i]], plate[plate_96_wells[i+1]], self.aspiration_rate, self.dispense_rate, mix_before=mix_vol, mix_reps=mix_reps, new_tip=False, drop_tip=False) - liquid_transfer(pipette, 100, plate[plate_96_wells[i+1]], binit, self.aspiration_rate, self.dispense_rate, mix_before=mix_vol, mix_reps=mix_reps, new_tip=False, drop_tip=False) - pipette.drop_tip() - pipette.pick_up_tip() - for i in range(12,22): - liquid_transfer(pipette, 100, plate[plate_96_wells[i]], plate[plate_96_wells[i+1]], self.aspiration_rate, self.dispense_rate, mix_before=mix_vol, mix_reps=mix_reps, new_tip=False, drop_tip=False) - liquid_transfer(pipette, 100, plate[plate_96_wells[i+1]], binit, self.aspiration_rate, self.dispense_rate, mix_before=mix_vol, mix_reps=mix_reps, new_tip=False, drop_tip=False) - pipette.drop_tip() - #sulforamine serial dilution - pipette.pick_up_tip() - for i in range(24,34): - liquid_transfer(pipette, 100, plate[plate_96_wells[i]], plate[plate_96_wells[i+1]], self.aspiration_rate, self.dispense_rate, mix_before=mix_vol, mix_reps=mix_reps, new_tip=False, drop_tip=False) - liquid_transfer(pipette, 100, plate[plate_96_wells[i+1]], binit, self.aspiration_rate, self.dispense_rate, mix_before=mix_vol, mix_reps=mix_reps, new_tip=False, drop_tip=False) - pipette.drop_tip() - pipette.pick_up_tip() - for i in range(36,46): - liquid_transfer(pipette, 100, plate[plate_96_wells[i]], plate[plate_96_wells[i+1]], self.aspiration_rate, self.dispense_rate, mix_before=mix_vol, mix_reps=mix_reps, new_tip=False, drop_tip=False) - liquid_transfer(pipette, 100, plate[plate_96_wells[i+1]], binit, self.aspiration_rate, self.dispense_rate, mix_before=mix_vol, mix_reps=mix_reps, new_tip=False, drop_tip=False) - pipette.drop_tip() - #cascade blue serial dilution - pipette.pick_up_tip() - for i in range(48,58): - liquid_transfer(pipette, 100, plate[plate_96_wells[i]], plate[plate_96_wells[i+1]], self.aspiration_rate, self.dispense_rate, mix_before=mix_vol, mix_reps=mix_reps, new_tip=False, drop_tip=False) - liquid_transfer(pipette, 100, plate[plate_96_wells[i+1]], binit, self.aspiration_rate, self.dispense_rate, mix_before=mix_vol, mix_reps=mix_reps, new_tip=False, drop_tip=False) - pipette.drop_tip() - pipette.pick_up_tip() - for i in range(60,70): - liquid_transfer(pipette, 100, plate[plate_96_wells[i]], plate[plate_96_wells[i+1]], self.aspiration_rate, self.dispense_rate, mix_before=mix_vol, mix_reps=mix_reps, new_tip=False, drop_tip=False) - liquid_transfer(pipette, 100, plate[plate_96_wells[i+1]], binit, self.aspiration_rate, self.dispense_rate, mix_before=mix_vol, mix_reps=mix_reps, new_tip=False, drop_tip=False) - pipette.drop_tip() - #nanoparticles serial dilutions - pipette.pick_up_tip() - for i in range(72,83): - liquid_transfer(pipette, 100, plate[plate_96_wells[i]], plate[plate_96_wells[i+1]], self.aspiration_rate, self.dispense_rate, mix_before=mix_vol, mix_reps=mix_reps, new_tip=False, drop_tip=False) - liquid_transfer(pipette, 100, plate[plate_96_wells[i+1]], binit, self.aspiration_rate, self.dispense_rate, mix_before=mix_vol, mix_reps=mix_reps, new_tip=False, drop_tip=False) - pipette.drop_tip() - pipette.pick_up_tip() - for i in range(84,94): - liquid_transfer(pipette, 100, plate[plate_96_wells[i]], plate[plate_96_wells[i+1]], self.aspiration_rate, self.dispense_rate, mix_before=mix_vol, mix_reps=mix_reps, new_tip=False, drop_tip=False) - liquid_transfer(pipette, 100, plate[plate_96_wells[i+1]], binit, self.aspiration_rate, self.dispense_rate, mix_before=mix_vol, mix_reps=mix_reps, new_tip=False, drop_tip=False) - pipette.drop_tip() - # 1/2 dilution, filling 200 uL - #dispense PBS + calibrants_wells = [ + ('fluorescein_1x', ['A1', 'B1']), + ('sulforhodamine_1x', ['C1', 'D1']), + ('cascade_blue_1x', ['E1', 'F1']), + ('microspheres_1x', ['G1', 'H1']) + ] + + for calibrant, well_names in calibrants_wells: + for well_name in well_names: + self.smart_pipette.liquid_transfer( + volume=200, source=self.calibrant_positions[calibrant], + destination=plate[well_name], asp_rate=self.aspiration_rate, + disp_rate=self.dispense_rate, mix_before=mix_vol, mix_reps=mix_reps + ) + + def _perform_serial_dilutions(self, protocol, pipette, plate) -> None: + """Perform 1:2 serial dilutions with waste disposal""" + layout = self._get_calibrant_layout() + mix_vol = 100 + mix_reps = 3 + binit = self.calibrant_positions['binit'] + + for start_idx, end_idx in layout['dilution_series']: + pipette.pick_up_tip() + + # Serial dilutions + for i in range(start_idx, end_idx): + source_well = plate.wells()[i] + dest_well = plate.wells()[i + 1] + self.smart_pipette.liquid_transfer( + volume=100, source=source_well, destination=dest_well, + asp_rate=self.aspiration_rate, disp_rate=self.dispense_rate, + mix_before=mix_vol, mix_reps=mix_reps, new_tip=False, drop_tip=False + ) + + # Discard final dilution to binit + final_well = plate.wells()[end_idx] + self.smart_pipette.liquid_transfer( + volume=100, source=final_well, destination=binit, + asp_rate=self.aspiration_rate, disp_rate=self.dispense_rate, + mix_before=mix_vol, mix_reps=mix_reps, new_tip=False, drop_tip=False + ) + pipette.drop_tip() + + # Fill all wells to 200 µL with appropriate buffers + self._fill_wells_to_200ul(protocol, pipette, plate) + + def _fill_wells_to_200ul(self, protocol, pipette, plate) -> None: + """Add additional 100 µL to all wells to reach 200 µL final volume""" + layout = self._get_calibrant_layout() + buffers = self.buffer_positions + use_conical = self.use_falcon_tubes # Enable conical tube handling for falcon tubes + + # Add PBS to calibrant wells pipette.pick_up_tip() - for well in plate_96_wells[0:12]: - liquid_transfer(pipette, 100, pbs_5, plate[well], self.aspiration_rate, self.dispense_rate, new_tip=False, drop_tip=False) - for well in plate_96_wells[12:24]: - liquid_transfer(pipette, 100, pbs_6, plate[well], self.aspiration_rate, self.dispense_rate, new_tip=False, drop_tip=False) - for well in plate_96_wells[24:36]: - liquid_transfer(pipette, 100, pbs_7, plate[well], self.aspiration_rate, self.dispense_rate, new_tip=False, drop_tip=False) - for well in plate_96_wells[36:48]: - liquid_transfer(pipette, 100, pbs_8, plate[well], self.aspiration_rate, self.dispense_rate, new_tip=False, drop_tip=False) + for wells_range, source_idx in layout['pbs']: + target_wells = plate.wells()[wells_range[0]:wells_range[1]] + source = buffers['pbs_sources'][source_idx] + for well in target_wells: + self.smart_pipette.liquid_transfer( + protocol, pipette, 100, source, well, + new_tip=False, drop_tip=False, use=use_conical + ) pipette.drop_tip() - #dispense water + + # Add water to blank wells pipette.pick_up_tip() - for well in plate_96_wells[48:60]: - liquid_transfer(pipette, 100, water_5, plate[well], self.aspiration_rate, self.dispense_rate, new_tip=False, drop_tip=False) - for well in plate_96_wells[60:72]: - liquid_transfer(pipette, 100, water_6, plate[well], self.aspiration_rate, self.dispense_rate, new_tip=False, drop_tip=False) - for well in plate_96_wells[72:84]: - liquid_transfer(pipette, 100, water_7, plate[well], self.aspiration_rate, self.dispense_rate, new_tip=False, drop_tip=False) - for well in plate_96_wells[84:96]: - liquid_transfer(pipette, 100, water_8, plate[well], self.aspiration_rate, self.dispense_rate, new_tip=False, drop_tip=False) - pipette.drop_tip() - #END \ No newline at end of file + for wells_range, source_idx in layout['water']: + target_wells = plate.wells()[wells_range[0]:wells_range[1]] + source = buffers['water_sources'][source_idx] + for well in target_wells: + self.smart_pipette.liquid_transfer( + protocol, pipette, 100, source, well, + new_tip=False, drop_tip=False, use=use_conical + ) + pipette.drop_tip() \ No newline at end of file diff --git a/src/pudu/plating.py b/src/pudu/plating.py new file mode 100644 index 0000000..0f7cb8d --- /dev/null +++ b/src/pudu/plating.py @@ -0,0 +1,270 @@ +from typing import Optional, Dict +from pudu import colors, SmartPipette +from opentrons import protocol_api + +class Plating(): + """ + Creates a protocol for automated plating of transformed bacteria + + Attributes: + + """ + def __init__(self, + volume_total_reaction: float = 20, + volume_bacteria_transfer: float = 2, + volume_colony: float = 4, + volume_lb_transfer: float = 18, + volume_lb: float = 10000, + replicates: int = 1, + number_dilutions: int = 2, + max_colonies = 192, + + thermocycler_starting_well: int = 0, + # thermocycler_labware: str = 'nest_96_wellplate_100ul_pcr_full_skirt', + thermocycler_labware: str = 'biorad_96_wellplate_200ul_pcr', + + small_tiprack: str = 'opentrons_96_filtertiprack_20ul', + small_tiprack_position: str = '9', + initial_small_tip: str = None, + large_tiprack: str = 'opentrons_96_filtertiprack_200ul', + large_tiprack_position: str = '1', + initial_large_tip:str = None, + small_pipette: str = 'p20_single_gen2', + small_pipette_position: str = 'left', + large_pipette: str = 'p300_single_gen2', + large_pipette_position: str = 'right', + + + # dilution_plate: str = 'nest_96_wellplate_200ul_flat', + dilution_plate: str = 'nest_96_wellplate_100ul_pcr_full_skirt', + dilution_plate_position1: str = '2', + dilution_plate_position2: str = '3', + # agar_plate: str = 'nunc_omnitray_96grid', + agar_plate: str = 'nest_96_wellplate_100ul_pcr_full_skirt', + agar_plate_position1: str = '5', + agar_plate_position2: str = '6', + tube_rack: str = 'opentrons_15_tuberack_falcon_15ml_conical', + tube_rack_position: str = '4', + lb_tube_position: int = 0, + + aspiration_rate: float = 0.5, + dispense_rate: float = 1, + bacterium_locations: Dict = None): + + self.volume_total_reaction = volume_total_reaction + self.volume_bacteria_transfer = volume_bacteria_transfer + self.volume_colony = volume_colony + self.volume_lb_transfer = volume_lb_transfer + self.volume_lb = volume_lb + self.replicates = replicates + self.number_dilutions = number_dilutions + self.thermocycler_starting_well = thermocycler_starting_well + self.thermocycler_labware = thermocycler_labware + self.small_tiprack = small_tiprack + self.small_tiprack_position = small_tiprack_position + self.initial_small_tip = initial_small_tip + self.large_tiprack = large_tiprack + self.large_tiprack_position = large_tiprack_position + self.initial_large_tip = initial_large_tip + self.small_pipette = small_pipette + self.small_pipette_position = small_pipette_position + self.large_pipette = large_pipette + self.large_pipette_position = large_pipette_position + self.dilution_plate = dilution_plate + self.dilution_plate_position1 = dilution_plate_position1 + self.dilution_plate_position2 = dilution_plate_position2 + self.agar_plate = agar_plate + self.agar_plate_position1 = agar_plate_position1 + self.agar_plate_position2 = agar_plate_position2 + self.tube_rack = tube_rack + self.tube_rack_position = tube_rack_position + self.lb_tube_position = lb_tube_position + self.aspiration_rate = aspiration_rate + self.dispense_rate = dispense_rate + self.bacterium_locations = bacterium_locations + self.number_constructs = len(bacterium_locations) + self.total_colonies = self.number_constructs * self.number_dilutions * self.replicates + self.max_colonies = max_colonies + if self.total_colonies > self.max_colonies: + raise ValueError(f"Protocol only supports a max of {self.max_colonies} colonies") + if self.replicates > 8: + raise ValueError("Protocol only supports a max of 8 replicates") + if self.number_dilutions > 2: + raise ValueError("Protocol currently supports a max of 2 dilutions") + + def calculate_plate_layout(self,protocol, plate1, plate2=None): + """ + Calculate the layout for colonies on plates with dynamic buffer between dilutions + Returns: dict with plate assignments and well positions + """ + colonies_per_dilution = self.number_constructs * self.replicates + + layout = { + 'dilution_1': {'plate': 1, 'wells':[]}, + 'dilution_2': {'plate': 1, 'wells':[]} if self.number_dilutions ==2 else None + } + + #Check if we need two plates + if self.number_dilutions ==2 and colonies_per_dilution > 48: + if plate2 is None: + raise ValueError("Two plates required but plate2 not provided") + #Each Dilution gets its own plate + layout['dilution_1']['wells'] = plate1.wells()[:colonies_per_dilution] + layout['dilution_2']['plate'] = 2 + layout['dilution_2']['wells'] = plate2.wells()[:colonies_per_dilution] + protocol.comment(f"Using 2 plates: {colonies_per_dilution} colonies per dilution exceeds single plate capacity") + elif self.number_dilutions ==2 and colonies_per_dilution <= 48: + #Both Dilutions Fit On One Plate + first_half = plate1.wells()[:colonies_per_dilution] + second_half = plate1.wells()[48:48+colonies_per_dilution] + layout['dilution_1']['wells'] = first_half + layout['dilution_2']['wells'] = second_half + protocol.comment(f"Using only one {plate1}: {colonies_per_dilution} colonies on each half") + else: + #Single dilution + layout['dilution_1']['wells'] = plate1.wells()[:colonies_per_dilution] + return layout + + def run(self, protocol: protocol_api.ProtocolContext): + #Labware + #Load the thermocycler module, its default location is on slots 7, 8, 10 and 11 + thermocycler = protocol.load_module('thermocyclerModuleV1') + thermocycler_plate = thermocycler.load_labware(self.thermocycler_labware) + #Load the tipracks + small_tiprack = protocol.load_labware(self.small_tiprack, self.small_tiprack_position) + large_tiprack = protocol.load_labware(self.large_tiprack, self.large_tiprack_position) + #Load the pipettes + small_pipette = protocol.load_instrument(self.small_pipette, self.small_pipette_position, tip_racks=[small_tiprack]) + if self.initial_small_tip: + small_pipette.starting_tip = small_tiprack[self.initial_small_tip] + large_pipette = protocol.load_instrument(self.large_pipette, self.large_pipette_position, tip_racks=[large_tiprack]) + if self.initial_large_tip: + large_pipette.starting_tip = large_tiprack[self.initial_large_tip] + #SmartPipette Wrapper to avoid dunking into the LB + smart_pipette = SmartPipette(large_pipette,protocol) + #Load the tube rack + tube_rack = protocol.load_labware(self.tube_rack, self.tube_rack_position) + lb_tube = tube_rack.wells()[self.lb_tube_position] + #load liquids + liquid_broth = protocol.define_liquid( + name="liquid_broth", + description="Liquid broth for dilutions", + display_color="#D2B48C" + ) + lb_tube.load_liquid(liquid = liquid_broth, volume = self.volume_lb) + # Load bacteria into thermocycler wells + for i, (well_position, construct_names) in enumerate(self.bacterium_locations.items()): + liquid_bacteria = protocol.define_liquid( + name="transformed_bacteria", + description=f"{construct_names}", + display_color=colors[i%len(colors)] + ) + well = thermocycler_plate[well_position] + well.load_liquid(liquid=liquid_bacteria, volume=self.volume_total_reaction) + + # Load the dilution plates and Calculate the layout of the plates + dilution_plate1 = protocol.load_labware(self.dilution_plate, self.dilution_plate_position1) + if self.total_colonies <= len(dilution_plate1.wells()): + dilution_layout = self.calculate_plate_layout(protocol, dilution_plate1) + else: + dilution_plate2 = protocol.load_labware(self.dilution_plate, self.dilution_plate_position2) + dilution_layout = self.calculate_plate_layout(protocol, dilution_plate1, dilution_plate2) + + #Load the Agar plates and Calculate the layout of the plates + agar_plate1 = protocol.load_labware(self.agar_plate, self.agar_plate_position1) + if self.total_colonies <= len(agar_plate1.wells()): + agar_layout = self.calculate_plate_layout(protocol, agar_plate1) + else: + agar_plate2 = protocol.load_labware(self.agar_plate, self.agar_plate_position2) + agar_layout = self.calculate_plate_layout(protocol, agar_plate1, agar_plate2) + + + thermocycler.set_block_temperature(4) + thermocycler.open_lid() + + #Load the Liquid Broth into the dilution wells + protocol.comment("\n=== Step 1: Distributing LB to dilution wells ===") + # Get all wells that will receive LB (both dilutions if applicable) + all_dilution_wells = dilution_layout['dilution_1']['wells'][:] + if self.number_dilutions == 2 and dilution_layout['dilution_2']: + all_dilution_wells.extend(dilution_layout['dilution_2']['wells']) + # Distribute LB efficiently using built-in distribute method + # Process in chunks of 8 wells to update aspiration height + chunk_size = 8 + for i in range(0, len(all_dilution_wells), chunk_size): + chunk_wells = all_dilution_wells[i:i + chunk_size] + + # Get current aspiration location before each chunk + aspiration_location = smart_pipette.get_aspiration_location(lb_tube) + protocol.comment(f"Distributing to wells {i + 1}-{min(i + chunk_size, len(all_dilution_wells))}") + + # Use built-in distribute method with updated aspiration location + large_pipette.distribute( + volume=self.volume_lb_transfer, + source=aspiration_location, + dest=chunk_wells, + disposal_volume=4, # For accuracy + new_tip='once' # Use one tip for the chunk + ) + + # Load liquid tracking for dilution wells + for well in chunk_wells: + well.load_liquid(liquid=liquid_broth, volume=self.volume_lb_transfer) + + #Transfer bacteria to first dilution and process + protocol.comment("\n=== Step 2: Transferring bacteria and plating ===") + + well_index = 0 + for construct_position, construct_names in self.bacterium_locations.items(): + for replicate in range(self.replicates): + # Get source and destination wells + source_well = thermocycler_plate[construct_position] + dilution1_well = dilution_layout['dilution_1']['wells'][well_index] + agar1_well = agar_layout['dilution_1']['wells'][well_index] + + protocol.comment(f"\nProcessing {construct_names[0]} replicate {replicate + 1}") + + # Pick up tip once for entire workflow per well + small_pipette.pick_up_tip() + + # Transfer bacteria to dilution plate 1 + small_pipette.aspirate(self.volume_bacteria_transfer, source_well, rate=self.aspiration_rate) + small_pipette.dispense(self.volume_bacteria_transfer, dilution1_well, rate=self.dispense_rate) + + # Mix in dilution plate 1 (15µL mixing volume) + small_pipette.mix(repetitions=5, volume=19, location=dilution1_well) + + # Plate on agar 1 + small_pipette.aspirate(self.volume_colony, dilution1_well, rate=self.aspiration_rate) + small_pipette.dispense(self.volume_colony, agar1_well.top(-8), rate=self.dispense_rate) + small_pipette.blow_out() + + # If we have a second dilution, continue with same tip + if self.number_dilutions == 2: + dilution2_well = dilution_layout['dilution_2']['wells'][well_index] + agar2_well = agar_layout['dilution_2']['wells'][well_index] + + # Transfer from dilution 1 to dilution 2 + small_pipette.aspirate(self.volume_bacteria_transfer, dilution1_well, rate=self.aspiration_rate) + small_pipette.dispense(self.volume_bacteria_transfer, dilution2_well, rate=self.dispense_rate) + + # Mix in dilution plate 2 + small_pipette.mix(repetitions=5, volume=19, location=dilution2_well) + + # Plate on agar 2 + small_pipette.aspirate(self.volume_colony, dilution2_well, rate=self.aspiration_rate) + small_pipette.dispense(self.volume_colony, agar2_well.top(-8), rate=self.dispense_rate) + small_pipette.blow_out() + + # Drop tip after completing all transfers for this well + small_pipette.drop_tip() + + well_index += 1 + + # Close thermocycler lid + # thermocycler.close_lid() + # thermocycler.deactivate_block() + + protocol.comment("\n=== Plating protocol complete ===") + protocol.comment(f"Plated {self.number_constructs} constructs with {self.replicates} replicates") + protocol.comment(f"Created a total of {self.total_colonies} colonies") \ No newline at end of file diff --git a/src/pudu/sample_preparation.py b/src/pudu/sample_preparation.py index 3649624..3c1b557 100644 --- a/src/pudu/sample_preparation.py +++ b/src/pudu/sample_preparation.py @@ -2,7 +2,7 @@ from typing import List, Union, Optional, Tuple from abc import ABC, abstractmethod import math -from utils import colors +from pudu.utils import colors class SamplePreparation(ABC): diff --git a/src/pudu/transformation.py b/src/pudu/transformation.py index b9dd9fd..b254079 100644 --- a/src/pudu/transformation.py +++ b/src/pudu/transformation.py @@ -1,6 +1,6 @@ from opentrons import protocol_api -from pudu.utils import thermo_wells, temp_wells, liquid_transfer from typing import List, Dict +from pudu.utils import colors class Transformation(): @@ -15,9 +15,9 @@ class Transformation(): The volume of the competent cells in microliters. By default, 50 microliters. volume_recovery_media : float The volume of recovery media in microliters. By default, 100 microliters. - replicates : int + replicates : int The number of replicates of the assembly reaction. By default, 2. - thermocycler_starting_well : int + thermocycler_starting_well : int The starting well of the thermocycler module. By default, 0. thermocycler_labware : str The labware type of the thermocycler module. By default, 'nest_96_wellplate_100ul_pcr_full_skirt'. @@ -25,12 +25,12 @@ class Transformation(): The slots of the thermocycler module. By default, [7, 8, 10, 11]. temperature_module_labware : str The labware type of the temperature module. By default, 'opentrons_24_aluminumblock_nest_1.5ml_snapcap'. - temperature_module_slot : int - The slot of the temperature module. By default, 1. + temperature_module_position : int + The deck position of the temperature module. By default, 1. tiprack_labware : str The labware type of the tiprack. By default, 'opentrons_96_tiprack_20ul'. - tiprack_slot : int - The slot of the tiprack. By default, 9. + tiprack_position : int + The deck position of the tiprack. By default, 9. pipette_type : str The type of pipette. By default, 'p20_single_gen2'. pipette_mount : str @@ -41,225 +41,435 @@ class Transformation(): The rate of dispense in microliters per second. By default, 1 microliter per second. ''' def __init__(self, - list_of_dnas:List = [], # TODO:add SBOL version - competent_cells: str = None, # TODO: add SBOL version - replicates:int=2, - thermocycler_starting_well:int = 0, - thermocycler_labware:str = 'nest_96_wellplate_100ul_pcr_full_skirt', - temperature_module_labware:str = 'opentrons_24_aluminumblock_nest_1.5ml_snapcap', - temperature_module_position:int = 1, - - tiprack_p20_labware:str = 'opentrons_96_tiprack_20ul', - tiprack_p20_osition:int = 9, - tiprack_p300_labware:str = 'opentrons_96_tiprack_300ul', - tiprack_p300_osition:int = 6, - pipette_p20:str = 'p20_single_gen2', - pipette_p300:str = 'p300_single_gen2', - pipette_p20_position:str = 'left', - pipette_p300_position:str = 'right', - aspiration_rate:float=0.5, - dispense_rate:float=1,): - - self.list_of_dnas = list_of_dnas - self.competent_cells = competent_cells + list_of_dna:List = None, + volume_dna:float = 20, + competent_cells:str = None, + replicates:int=2, + thermocycler_starting_well:int = 0, + thermocycler_labware:str = "nest_96_wellplate_100ul_pcr_full_skirt", + temperature_module_labware:str = "opentrons_24_aluminumblock_nest_1.5ml_snapcap", + temperature_module_position:str = '1', + dna_plate:str = "nest_96_wellplate_100ul_pcr_full_skirt", + dna_plate_position:str = '2', + use_dna_96plate:bool = False, + tiprack_p20_labware:str = "opentrons_96_tiprack_20ul", + tiprack_p20_position:str = "9", + tiprack_p200_labware:str = "opentrons_96_filtertiprack_200ul", + tiprack_p200_position:str = "6", + pipette_p20:str = "p20_single_gen2", + pipette_p20_position:str = "left", + pipette_p300:str = "p300_single_gen2", + pipette_p300_position:str = "right", + aspiration_rate:float = 0.5, + dispense_rate:float = 1, + initial_dna_well:int = 0, + water_testing:bool = False + ): + + if list_of_dna is None: + raise ValueError ("Must input a list of DNA strings") + else: + self.list_of_dna = list_of_dna + self.volume_dna = volume_dna + if competent_cells is None: + raise ValueError ("Must input a competent cell strings") + else: + self.competent_cells = competent_cells self.replicates = replicates self.thermocycler_starting_well = thermocycler_starting_well self.thermocycler_labware = thermocycler_labware self.temperature_module_labware = temperature_module_labware self.temperature_module_position = temperature_module_position + self.dna_plate = dna_plate + self.dna_plate_position = dna_plate_position + self.use_dna_96plate = use_dna_96plate self.tiprack_p20_labware = tiprack_p20_labware - self.tiprack_p20_position = tiprack_p20_osition - self.tiprack_p300_labware = tiprack_p300_labware - self.tiprack_p300_position = tiprack_p300_osition + self.tiprack_p20_position = tiprack_p20_position + self.tiprack_p200_labware = tiprack_p200_labware + self.tiprack_p200_position = tiprack_p200_position self.pipette_p20 = pipette_p20 - self.pipette_p300 = pipette_p300 self.pipette_p20_position = pipette_p20_position + self.pipette_p300 = pipette_p300 self.pipette_p300_position = pipette_p300_position self.aspiration_rate = aspiration_rate self.dispense_rate = dispense_rate + self.initial_dna_well = initial_dna_well + self.water_testing = water_testing -class Chemical_transformation(Transformation): +class HeatShockTransformation(Transformation): ''' - Creates a protocol for automated transformation. - - Attributes - ---------- - volume_dna : float - The volume DNA in microliters. By default, 2 microliters. We suggest 2 microliters for extracted plasmid and 5 microliters for PCR products. - volume_competent_cells : float - The volume of the competent cells in microliters. By default, 50 microliters. - volume_recovery_media : float - The volume of recovery media in microliters. By default, 100 microliters. - replicates : int - The number of replicates of the assembly reaction. By default, 2. - thermocycler_starting_well : int - The starting well of the thermocycler module. By default, 0. - thermocycler_labware : str - The labware type of the thermocycler module. By default, 'nest_96_wellplate_100ul_pcr_full_skirt'. - thermocycler_slots : list - The slots of the thermocycler module. By default, [7, 8, 10, 11]. - temperature_module_labware : str - The labware type of the temperature module. By default, 'opentrons_24_aluminumblock_nest_1.5ml_snapcap'. - temperature_module_slot : int - The slot of the temperature module. By default, 1. - tiprack_labware : str - The labware type of the tiprack. By default, 'opentrons_96_tiprack_20ul'. - tiprack_slot : int - The slot of the tiprack. By default, 9. - pipette_type : str - The type of pipette. By default, 'p20_single_gen2'. - pipette_mount : str - The mount of the pipette. By default, 'left'. - aspiration_rate : float - The rate of aspiration in microliters per second. By default, 0.5 microliters per second. - dispense_rate : float - The rate of dispense in microliters per second. By default, 1 microliter per second. + Creates a protocol for automated transformation. ''' - def __init__(self, - volume_dna:float = 2, - volume_competent_cell_to_add:float = 20, - volume_competent_cell_per_tube:float =100, - volume_recovery_media_to_add:float = 60, - volume_recovery_media_per_tube:float = 1200, #add a bit more to pick it properly - cold_incubation1:Dict = {'temperature': 4, 'hold_time_minutes': 30}, - heat_shock:Dict = {'temperature': 42, 'hold_time_minutes': 1}, - cold_incubation2:Dict = {'temperature': 4, 'hold_time_minutes': 2}, - recovery_incubation:Dict = {'temperature': 37, 'hold_time_minutes': 60}, + def __init__(self, + transfer_volume_dna:float = 2, + transfer_volume_competent_cell:float = 20, + tube_volume_competent_cell:float =100, + transfer_volume_recovery_media:float = 60, + tube_volume_recovery_media:float = 1200, #add a bit more to pick it properly + cold_incubation1:Dict = None, + heat_shock:Dict = None, + cold_incubation2:Dict = None, + recovery_incubation:Dict = None, *args, **kwargs): super().__init__(*args, **kwargs) - self.volume_dna = volume_dna - self.volume_competent_cell_to_add = volume_competent_cell_to_add - self.volume_competent_cell_per_tube = volume_competent_cell_per_tube - self.volume_recovery_media = volume_recovery_media_to_add - self.volume_recovery_media_per_tube = volume_recovery_media_per_tube - self.cold_incubation1 = cold_incubation1 - self.heat_shock = heat_shock - self.cold_incubation2 = cold_incubation2 + self.transfer_volume_dna = transfer_volume_dna + self.transfer_volume_competent_cell = transfer_volume_competent_cell + self.tube_volume_competent_cell = tube_volume_competent_cell + self.transfer_volume_recovery_media = transfer_volume_recovery_media + self.tube_volume_recovery_media = tube_volume_recovery_media + if cold_incubation1 is None: + self.cold_incubation1 = {'temperature': 4, 'hold_time_minutes': 30} + else: + self.cold_incubation1 = cold_incubation1 + if heat_shock is None: + self.heat_shock = {'temperature': 42, 'hold_time_minutes': 1} + else: + self.heat_shock = heat_shock + if cold_incubation2 is None: + self.cold_incubation2 = {'temperature': 4, 'hold_time_minutes': 2} + else: + self.cold_incubation2 = cold_incubation2 + if recovery_incubation is None: + self.recovery_incubation = {'temperature': 37, 'hold_time_minutes': 60} + else: + self.recovery_incubation = recovery_incubation self.recovery_incubation = recovery_incubation self.dict_of_parts_in_temp_mod_position = {} self.dict_of_parts_in_thermocycler = {} - metadata = { - 'protocolName': 'PUDU Transformation', - 'author': 'Gonzalo Vidal ', - 'description': 'Automated transformation protocol', - 'apiLevel': '2.13'} - - def run(self, protocol: protocol_api.ProtocolContext): - - #Labware - #Load the magnetic module - tem_mod = protocol.load_module('temperature module', f'{self.temperature_module_position}') - tem_mod_block = tem_mod.load_labware(self.temperature_module_labware) - #Load the thermocycler module, its default location is on slots 7, 8, 10 and 11 - thermocycler_mod = protocol.load_module('thermocycler module') - thermocycler_mod_plate = thermocycler_mod.load_labware(self.thermocycler_labware) - #Load the tiprack - tiprack_p20 = protocol.load_labware(self.tiprack_p20_labware, f'{self.tiprack_p20_position}') - tiprack_p300 = protocol.load_labware(self.tiprack_p300_labware, f'{self.tiprack_p300_position}') - #Load the pipette + def liquid_transfer(self, protocol, pipette, volume, source, dest, + asp_rate: float = 0.5, disp_rate: float = 1.0, + blow_out: bool = True, touch_tip: bool = False, + mix_before: float = 0.0, mix_after: float = 0.0, + mix_reps: int = 3, new_tip: bool = True, + remove_air:bool = True, drop_tip: bool = True): + if new_tip: + pipette.pick_up_tip() + + if mix_before > 0: + pipette.mix(mix_reps, mix_before, source) + + pipette.aspirate(volume, source, rate=asp_rate) + pipette.dispense(volume, dest, rate=disp_rate) + + if mix_after > 0: + pipette.mix(mix_reps, mix_after, dest) + + if blow_out: + pipette.blow_out() + + if remove_air: + for _ in range(2): + pipette.aspirate(20, dest.bottom(), rate=disp_rate) + pipette.dispense(20, dest.bottom(8), rate=disp_rate) + + if touch_tip: + pipette.touch_tip(radius=0.5, v_offset=-14, speed=20) + + if drop_tip: + pipette.drop_tip() + + def run(self, protocol: protocol_api.ProtocolContext): + # Force water testing mode during simulation + if protocol.is_simulating(): + self.water_testing = True + protocol.comment("Simulation detected - enabling water testing mode") + # Labware + # Load the temperature module + temperature_module = protocol.load_module('temperature module', self.temperature_module_position) + alumblock = temperature_module.load_labware(self.temperature_module_labware) + # Load the thermocycler module, its default location is on slots 7, 8, 10 and 11 + thermocycler_module = protocol.load_module('thermocycler module') + pcr_plate = thermocycler_module.load_labware(self.thermocycler_labware) + #If using the 96-well pcr plate as a dna construct source + if self.use_dna_96plate: + dna_plate = protocol.load_labware(self.dna_plate, self.dna_plate_position) + # Load the tiprack + tiprack_p20 = protocol.load_labware(self.tiprack_p20_labware, self.tiprack_p20_position) + tiprack_p200 = protocol.load_labware(self.tiprack_p200_labware, self.tiprack_p200_position) + # Load the pipette pipette_p20 = protocol.load_instrument(self.pipette_p20, self.pipette_p20_position, tip_racks=[tiprack_p20]) - pipette_p300 = protocol.load_instrument(self.pipette_p300, self.pipette_p300_position, tip_racks=[tiprack_p300]) - - #Load the reagents - #Check number of compenent cells and DNAs - total_transformations = len(self.list_of_dnas)*self.replicates - transformations_per_tube = int(self.volume_competent_cell_per_tube//self.volume_competent_cell_to_add) - number_of_tubes_with_competent_cells_needed = int(total_transformations//transformations_per_tube+1) #TODO: make an int, maybe use sail - #Check number of tubes with media - transformations_per_media_tube = int(self.volume_recovery_media_per_tube//self.volume_recovery_media) - number_of_tubes_with_media_needed = int(total_transformations//transformations_per_media_tube+1) #TODO: make an int, maybe use sail - if len(self.list_of_dnas)+number_of_tubes_with_competent_cells_needed+number_of_tubes_with_media_needed > 24: - raise ValueError(f'The number of reagents is more than 24. There are {len(self.list_of_dnas)} DNAs, {number_of_tubes_with_competent_cells_needed} tubes with competent cells and {number_of_tubes_with_media_needed} tubes with media. Please change the protocol and try again.') - temp_wells_counter = 0 - for dna in self.list_of_dnas: - self.dict_of_parts_in_temp_mod_position[dna] = temp_wells[temp_wells_counter] - temp_wells_counter += 1 - for i in range(number_of_tubes_with_competent_cells_needed): - self.dict_of_parts_in_temp_mod_position[f'Competent_cells_tube_{i}'] = temp_wells[temp_wells_counter] - temp_wells_counter += 1 - for i in range(number_of_tubes_with_media_needed): - self.dict_of_parts_in_temp_mod_position[f'Media_tube_{i}'] = temp_wells[temp_wells_counter] - temp_wells_counter += 1 - #Set Temperature and Thermocycler module to 4 - tem_mod.set_temperature(4) - thermocycler_mod.open_lid() - thermocycler_mod.set_block_temperature(4) - #Load cells into the thermocycler - if self.volume_competent_cell_to_add > 20: - pipette = pipette_p300 + pipette_p300 = protocol.load_instrument(self.pipette_p300, self.pipette_p300_position, + tip_racks=[tiprack_p200]) + #Validate protocol + self._validate_protocol(protocol, alumblock) + + #Load Reagents + if self.use_dna_96plate: + DNA_wells = self._load_dna_list(protocol, dna_plate, self.volume_dna, self.list_of_dna, initial_well=self.initial_dna_well) + competent_cell_wells = self._load_reagents(protocol, alumblock, self.tube_volume_competent_cell, f"Competent Cell {self.competent_cells}", self.competent_cell_tubes_needed) + media_wells = self._load_reagents(protocol, alumblock, self.tube_volume_recovery_media, "Media", self.media_tubes_needed, initial_well=len(competent_cell_wells)) + else: - pipette = pipette_p20 - current_thermocycler_well_comp = self.thermocycler_starting_well - transformation_well = 1 - #for r in range(self.replicates): - for i in range(number_of_tubes_with_competent_cells_needed): - for j in range(transformations_per_tube): - part_ubication_in_thermocyler = thermocycler_mod_plate[thermo_wells[current_thermocycler_well_comp]] - liquid_transfer(pipette, self.volume_competent_cell_to_add, tem_mod_block[self.dict_of_parts_in_temp_mod_position[f'Competent_cells_tube_{i}']], part_ubication_in_thermocyler, self.aspiration_rate, self.dispense_rate, mix_before=self.volume_competent_cell_to_add -5) - if j == 0: - self.dict_of_parts_in_thermocycler[f'Competent_cells_tube_{i}'] = [thermo_wells[current_thermocycler_well_comp]] - else: - self.dict_of_parts_in_thermocycler[f'Competent_cells_tube_{i}'].append(thermo_wells[current_thermocycler_well_comp]) - current_thermocycler_well_comp+=1 - if transformation_well == total_transformations: - break - transformation_well+=1 - - #Load DNA into the thermocycler and mix - if self.volume_dna > 20: + DNA_wells = self._load_dna_list(protocol, alumblock, self.volume_dna, self.list_of_dna) + competent_cell_wells = self._load_reagents(protocol, alumblock, self.tube_volume_competent_cell, f"Competent Cell {self.competent_cells}", self.competent_cell_tubes_needed, initial_well=len(DNA_wells)) + media_wells = self._load_reagents(protocol, alumblock, self.tube_volume_recovery_media, "Media", self.media_tubes_needed, initial_well=len(DNA_wells)+len(competent_cell_wells)) + + #Set Temperature module and Thermocycler module to 4 + thermocycler_module.open_lid() + if not self.water_testing: + temperature_module.set_temperature(4) + thermocycler_module.set_block_temperature(4) + + #Load competent cells into the thermocycler + pipette = pipette_p300 + self._transfer_competent_cells(protocol, pipette, pcr_plate, competent_cell_wells, self.transfer_volume_competent_cell, self.thermocycler_starting_well) + + #Load DNA into the thermocycler + if self.transfer_volume_dna > 20: pipette = pipette_p300 else: pipette = pipette_p20 - current_thermocycler_well_dna = self.thermocycler_starting_well - for r in range(self.replicates): - for dna in self.list_of_dnas: - part_ubication_in_thermocyler = thermocycler_mod_plate[thermo_wells[current_thermocycler_well_dna]] - liquid_transfer(pipette, self.volume_dna, tem_mod_block[self.dict_of_parts_in_temp_mod_position[dna]], part_ubication_in_thermocyler, self.aspiration_rate, self.dispense_rate, mix_before=self.volume_dna) - if r == 0: - self.dict_of_parts_in_thermocycler[dna] = [thermo_wells[current_thermocycler_well_dna]] - else: - self.dict_of_parts_in_thermocycler[dna].append(thermo_wells[current_thermocycler_well_dna]) - current_thermocycler_well_dna+=1 - - #Cold incubation - thermocycler_mod.close_lid() + self._transfer_DNA(protocol, pipette, pcr_plate, DNA_wells, self.transfer_volume_dna, self.thermocycler_starting_well) + + # Cold Incubation + thermocycler_module.close_lid() profile = [ - self.cold_incubation1, #1st cold incubation (long) - self.heat_shock, #Heatshock - self.cold_incubation2] #2nd cold incubation (short) - thermocycler_mod.execute_profile(steps=profile, repetitions=1, block_max_volume=30) - #Load LB and recovery incubation - thermocycler_mod.open_lid() - #TODO: check if there is the need for more than one tube - if self.volume_recovery_media > 20: - pipette = pipette_p300 - else: - pipette = pipette_p20 - current_thermocycler_well_media = self.thermocycler_starting_well - transformation_well = 1 - for i in range(number_of_tubes_with_media_needed): - for j in range(transformations_per_media_tube): - part_ubication_in_thermocyler = thermocycler_mod_plate[thermo_wells[current_thermocycler_well_media]] - liquid_transfer(pipette, self.volume_recovery_media, tem_mod_block[self.dict_of_parts_in_temp_mod_position[f'Media_tube_{i}']], part_ubication_in_thermocyler, self.aspiration_rate, self.dispense_rate, mix_after=self.volume_recovery_media -5) - if j == 0: - self.dict_of_parts_in_thermocycler[f'Media_tube_{i}'] = [thermo_wells[current_thermocycler_well_media]] - else: - self.dict_of_parts_in_thermocycler[f'Media_tube_{i}'].append(thermo_wells[current_thermocycler_well_media]) - current_thermocycler_well_media+=1 - if transformation_well == total_transformations: - break - transformation_well+=1 - thermocycler_mod.close_lid() + self.cold_incubation1, # 1st cold incubation (long) + self.heat_shock, # Heat shock + self.cold_incubation2 # 2nd cold incubation (short) + ] + if not self.water_testing: + thermocycler_module.execute_profile(steps=profile, repetitions=1, block_max_volume=30) + thermocycler_module.open_lid() + + #Load liquid broth + pipette = pipette_p300 + self._transfer_liquid_broth(protocol, pipette, pcr_plate, media_wells, self.transfer_volume_recovery_media, self.thermocycler_starting_well) + + # Recovery Incubation + thermocycler_module.close_lid() recovery = [ - self.recovery_incubation] - thermocycler_mod.execute_profile(steps=recovery, repetitions=1, block_max_volume=30) - - #output + self.recovery_incubation + ] + if not self.water_testing: + thermocycler_module.execute_profile(steps=recovery, repetitions=1, block_max_volume=30) + + # output print('Strain and media tube in temp_mod') print(self.dict_of_parts_in_temp_mod_position) print('Genetically modified organisms in thermocycler') print(self.dict_of_parts_in_thermocycler) - #Optionally plate - #END \ No newline at end of file + + def _validate_protocol(self, protocol, labware): + #Number of available wells to load into + module_wells = len(labware.wells()) + #Number of dna constructs to be used + total_constructs = len(self.list_of_dna) + #Number of tubes with competent cells to be used + self.total_transformations = total_constructs*self.replicates + self.transformations_per_cell_tube = self.tube_volume_competent_cell//self.transfer_volume_competent_cell + self.competent_cell_tubes_needed = (self.total_transformations + self.transformations_per_cell_tube - 1) // self.transformations_per_cell_tube + #Number of tubes with media to be used + self.transformations_per_media_tube = self.tube_volume_recovery_media//self.transfer_volume_recovery_media + self.media_tubes_needed = (self.total_transformations + self.transformations_per_media_tube - 1) // self.transformations_per_media_tube + if self.use_dna_96plate: + if self.competent_cell_tubes_needed + self.media_tubes_needed > module_wells: + raise ValueError(f'The number of reagents is more that {module_wells}.' + f'There are {self.competent_cell_tubes_needed} tubes with competent cells.' + f'{self.media_tubes_needed} tubes with media.' + f'Please modify the protocol and try again.') + else: + if total_constructs + self.competent_cell_tubes_needed + self.media_tubes_needed > module_wells: + raise ValueError(f'The number of reagents is more than {module_wells}.' + f'There are {total_constructs} DNA constructs.' + f'{self.competent_cell_tubes_needed} tubes with competent cells.' + f'{self.media_tubes_needed} tubes with media.' + f'Please modify the protocol and try again.') + + + def _load_dna_list(self, protocol, labware, volume, dna_list, initial_well=0, description=None, color_index = None): + """ + Load individual DNA constructs into wells, one construct per well. + + Parameters: + - protocol: Protocol context + - labware: Labware object (temperature module or DNA plate) + - volume: Volume to load in µL + - construct_list: List of construct names (e.g., ['GVD0011', 'GVD0013']) + - initial_well: Starting well index + - color_index: Starting color index (auto-increments if None) + + Returns: + - List of well objects + """ + wells = [] + current_color = color_index if color_index is not None else 0 + for i, construct in enumerate(dna_list): + #Get the well + well = labware.wells()[initial_well+i] + wells.append(well) + + #Covert tuple to string if needed + if isinstance(construct, tuple): + construct_name = '_'.join(construct) + else: + construct_name = construct + #Define and load "liquid" + liquid = protocol.define_liquid( + name = construct_name, + description= description if description is not None else f"{construct} DNA construct", + display_color= colors[current_color%len(colors)] + ) + well.load_liquid(liquid, volume=volume) + + #Track in dictionary + if not self.use_dna_96plate: + self.dict_of_parts_in_temp_mod_position[construct_name] = well.well_name + current_color += 1 + return wells + + def _load_reagents(self, protocol, labware, volume, reagent_name, tube_count, initial_well=0, color_index=None): + """ + Load multiple tubes of the same reagent type. + + Parameters: + - protocol: Protocol context + - labware: Labware object (temperature module) + - volume: Volume to load in µL + - reagent_base_name: Base name for reagent (e.g., "Competent_Cell", "Media") + - tube_count: Number of tubes to load + - initial_well: Starting well index + - color_index: Starting color index (auto-increments if None) + + Returns: + - List of well objects + """ + wells = [] + current_color = color_index if color_index is not None else 0 + for i in range(tube_count): + well = labware.wells()[initial_well+i] + wells.append(well) + name = f"{reagent_name}_{i+1}" + + liquid = protocol.define_liquid( + name = name, + display_color= colors[current_color%len(colors)] + ) + + well.load_liquid(liquid, volume=volume) + self.dict_of_parts_in_temp_mod_position[name] = well.well_name + current_color += 1 + return wells + + def _transfer_competent_cells(self, protocol, pipette, pcr_plate, competent_cell_wells, + transfer_volume_competent_cell, thermocycler_starting_well): + """ + Transfer competent cells to thermocycler wells using distribute method. + + Parameters: + - protocol: Protocol context + - pipette: Pipette instrument + - pcr_plate: Thermocycler plate + - competent_cell_wells: List of wells containing competent cells + - transfer_volume_competent_cell: Volume to transfer per well + - thermocycler_starting_well: Starting well index in thermocycler + """ + well_index = thermocycler_starting_well + + for tube_index, source_well in enumerate(competent_cell_wells): + #Calculate how many wells this cell tube will fill + remaining_transformations = self.total_transformations - (tube_index * self.transformations_per_cell_tube) + wells_to_fill = min(self.transformations_per_cell_tube, remaining_transformations) + + #Destination wells + dest_wells = pcr_plate.wells()[well_index:well_index+wells_to_fill] + + #Distribute + pipette.distribute( + volume=transfer_volume_competent_cell, + source=source_well, + dest=dest_wells, + mix_before=(3,50), + disposal_volume=0, + new_tip='once' + ) + + #Thermocycler Dictionary + name = f"Competent_Cell_{self.competent_cells}_{tube_index+1}" + for well in dest_wells: + if well.well_name not in self.dict_of_parts_in_thermocycler: + self.dict_of_parts_in_thermocycler[well.well_name] = [] + self.dict_of_parts_in_thermocycler[well.well_name].append(name) + + well_index += wells_to_fill + + def _transfer_DNA(self, protocol, pipette, pcr_plate, DNA_wells, transfer_volume_dna, thermocycler_starting_well): + """ + Transfer DNA constructs to thermocycler wells with replicates grouped together. + + Parameters: + - protocol: Protocol context + - pipette: Pipette instrument + - pcr_plate: Thermocycler plate + - DNA_wells: List of wells containing DNA constructs + - transfer_volume_dna: Volume to transfer per well + - thermocycler_starting_well: Starting well index in thermocycler + """ + for construct_index, (construct_name, source_well) in enumerate(zip(self.list_of_dna, DNA_wells)): + construct_well = construct_index * self.replicates + thermocycler_starting_well + + for replicate in range(self.replicates): + dest_well = pcr_plate.wells()[construct_well+replicate] + #Transfer liquid + self.liquid_transfer( + protocol=protocol, + pipette=pipette, + volume=transfer_volume_dna, + source=source_well, + dest=dest_well, + asp_rate=self.aspiration_rate, + disp_rate=self.dispense_rate, + mix_before=transfer_volume_dna, + touch_tip=True + ) + + #Track in dictionary + if dest_well.well_name not in self.dict_of_parts_in_thermocycler: + self.dict_of_parts_in_thermocycler[dest_well.well_name] = [] + self.dict_of_parts_in_thermocycler[dest_well.well_name].append(construct_name) + + def _transfer_liquid_broth(self, protocol, pipette, pcr_plate, media_wells, transfer_volume_recovery_media, + thermocycler_starting_well): + """ + Transfer recovery media to thermocycler wells using distribute method. + + Parameters: + - protocol: Protocol context + - pipette: Pipette instrument + - pcr_plate: Thermocycler plate + - media_wells: List of wells containing recovery media + - transfer_volume_recovery_media: Volume to transfer per well + - thermocycler_starting_well: Starting well index in thermocycler + """ + well_index = thermocycler_starting_well + + for tube_index, source_well in enumerate(media_wells): + #Calculate how many wells this media tube will fill + remaining_transformations = self.total_transformations - (tube_index * self.transformations_per_media_tube) + wells_to_fill = min(self.transformations_per_media_tube, remaining_transformations) + + # Get destination wells for this tube using .top() to avoid contamination + dest_wells = [pcr_plate.wells()[well_index+i].top(2) for i in range(int(wells_to_fill))] + + #Distribute recovery media + pipette.distribute( + volume=transfer_volume_recovery_media, + source=source_well, + dest=dest_wells, + disposal_volume=0, + new_tip='once', + air_gap=10 + ) + + #Track in dictionary + media_name = f"Media_{tube_index+1}" + for i in range(int(wells_to_fill)): + well_name = pcr_plate.wells()[well_index + i].well_name + if well_name not in self.dict_of_parts_in_thermocycler: + self.dict_of_parts_in_thermocycler[well_name] = [] + self.dict_of_parts_in_thermocycler[well_name].append(media_name) + + well_index += wells_to_fill + From 1cdd51bda5750d5450579ce37ea73298427f9d2f Mon Sep 17 00:00:00 2001 From: Oscar Rodriguez Date: Tue, 2 Sep 2025 18:33:41 -0600 Subject: [PATCH 057/100] fixed testing to use pudu in development mode --- .github/workflows/python-package.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index 4772a57..be6e541 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -30,6 +30,10 @@ jobs: python -m pip install flake8 pytest opentrons if [ -f requirements.txt ]; then pip install -r requirements.txt; fi + - name: Install pudu package in development mode + run: | + pip install -e . + - name: Lint with flake8 run: | flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics From 559b37492fc048678e2aee82f5cd55a9525651c4 Mon Sep 17 00:00:00 2001 From: Oscar Rodriguez Date: Tue, 2 Sep 2025 18:43:44 -0600 Subject: [PATCH 058/100] fixed testing to only use python 3.10 --- .github/workflows/python-package.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index be6e541..61f2332 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -14,7 +14,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.10", "3.11"] + python-version: ["3.10"] steps: - uses: actions/checkout@v4 From 8cf47170ca3c9ba8b1713c20c12ad2cb3d77ad4c Mon Sep 17 00:00:00 2001 From: Oscar Rodriguez Date: Tue, 2 Sep 2025 19:09:57 -0600 Subject: [PATCH 059/100] integrated xlsx output into assembly.py instead of having to code in scripts --- src/pudu/assembly.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/pudu/assembly.py b/src/pudu/assembly.py index a4cfefd..21b58f9 100644 --- a/src/pudu/assembly.py +++ b/src/pudu/assembly.py @@ -32,7 +32,9 @@ def __init__(self, dispense_rate: float = 1, take_picture: bool = False, take_video: bool = False, - water_testing: bool = False): + water_testing: bool = False, + output_xlsx: bool = True, + protocol_name: str = ''): self.volume_total_reaction = volume_total_reaction self.volume_part = volume_part @@ -56,6 +58,8 @@ def __init__(self, self.take_picture = take_picture self.take_video = take_video self.water_testing = water_testing + self.output_xlsx = output_xlsx + self.protocol_name = protocol_name # Shared tracking dictionaries self.dict_of_parts_in_temp_mod_position = {} @@ -271,6 +275,15 @@ def run(self, protocol: protocol_api.ProtocolContext): thermocycler_module.execute_profile(steps=denaturation, repetitions=1, block_max_volume=30) thermocycler_module.set_block_temperature(4) + if protocol.is_simulating(): + if self.output_xlsx: + try: + if not self.protocol_name: + self.protocol_name = "Loop Assembly" + self.get_xlsx_output(self.protocol_name) + except Exception as e: + protocol.comment(f"Could not create Excel file: {e}") + # Output results print('Parts and reagents in temp_module') print(self.dict_of_parts_in_temp_mod_position) From 03f2a86e2e73d11886e9cce1dd6357e111a0fd12 Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Tue, 9 Sep 2025 09:26:28 -0600 Subject: [PATCH 060/100] Update pyproject.toml --- pyproject.toml | 63 ++++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 56 insertions(+), 7 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index c662515..2ecb971 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -11,12 +11,12 @@ requires-python = ">=3.7" license = {file = "LICENSE"} keywords = ["pudu", "lab", "automation", "opentrons", "synthetic biology"] authors = [ - { name="Gonzalo Vidal", email="g.a.vidal-pena2@ncl.ac.uk" }, - { name="Carolus Vitalis", email="carlos.vidal.c@ug.uchile.cl"}, - { name="Matt Burridge", email="m.burridge1@newcastle.ac.uk"} + { name="Gonzalo Vidal", email="govi9038@colorado.edu" }, + { name="Oscar Rodriguez", email="osro6012@colorado.edu"}, ] maintainers = [ - {name = "Gonzalo Vidal", email = "g.a.vidal-pena2@ncl.ac.uk"} + { name="Gonzalo Vidal", email="govi9038@colorado.edu" }, + { name="Oscar Rodriguez", email="osro6012@colorado.edu"}, ] classifiers = [ "Programming Language :: Python :: 3", @@ -25,7 +25,56 @@ classifiers = [ ] dependencies = [ - 'opentrons', + aionotify==0.3.1, + annotated-types==0.7.0, + anyio==3.6.1, + attrs==22.2.0, + biopython==1.81, + certifi==2022.12.7, + charset-normalizer==3.0.1, + click==8.1.3, + Deprecated==1.2.13, + et-xmlfile==1.1.0, + graphviz==0.20.1, + idna==3.4, + isodate==0.6.1, + jsonschema==4.17.3, + lxml==4.9.2, + numpy==1.24.2, + openpyxl==3.1.1, + opentrons==8.4.1, + opentrons-shared-data==8.4.1, + ordered-set==4.1.0, + owlrl==6.0.2, + packaging==23.0, + prettytable==2.5.0, + pydantic==2.11.7, + pydantic-settings==2.9.1, + pydantic_core==2.33.2, + PyLaTeX==1.4.1, + pyparsing==2.4.7, + PyPDF2==3.0.1, + pyrsistent==0.19.3, + pyserial==3.5, + pyshacl==0.18.1, + python-dateutil==2.8.2, + python-dotenv==1.1.0, + pyusb==1.2.1, + rdflib==6.2.0, + requests==2.28.2, + sbol-factory==1.1.1.post1, + sbol-utilities==1.0a16, + sbol2==1.4.1, + sbol3==1.0.1, + six==1.16.0, + sniffio==1.3.0, + SPARQLWrapper==2.0.0, + typing_extensions==4.14.0, + tyto==1.4, + urllib3==1.26.14, + wcwidth==0.2.6, + wrapt==1.15.0, + xlsxwriter==3.2.5, ] [project.optional-dependencies] @@ -35,5 +84,5 @@ test = [ ] [project.urls] -"Homepage" = "https://github.com/RudgeLab/PUDU" -"Bug Tracker" = "https://github.com/RudgeLab/PUDU/issues" \ No newline at end of file +"Homepage" = "https://github.com/MyersResearchGroup/PUDU" +"Bug Tracker" = "https://github.com/MyersResearchGroup/PUDU/issues" From d7159afafb98f6453c7a648f1144d1f02da294e3 Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Tue, 9 Sep 2025 09:30:43 -0600 Subject: [PATCH 061/100] Update pyproject.toml --- pyproject.toml | 100 ++++++++++++++++++++++++------------------------- 1 file changed, 50 insertions(+), 50 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 2ecb971..54f635f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -25,56 +25,56 @@ classifiers = [ ] dependencies = [ - aionotify==0.3.1, - annotated-types==0.7.0, - anyio==3.6.1, - attrs==22.2.0, - biopython==1.81, - certifi==2022.12.7, - charset-normalizer==3.0.1, - click==8.1.3, - Deprecated==1.2.13, - et-xmlfile==1.1.0, - graphviz==0.20.1, - idna==3.4, - isodate==0.6.1, - jsonschema==4.17.3, - lxml==4.9.2, - numpy==1.24.2, - openpyxl==3.1.1, - opentrons==8.4.1, - opentrons-shared-data==8.4.1, - ordered-set==4.1.0, - owlrl==6.0.2, - packaging==23.0, - prettytable==2.5.0, - pydantic==2.11.7, - pydantic-settings==2.9.1, - pydantic_core==2.33.2, - PyLaTeX==1.4.1, - pyparsing==2.4.7, - PyPDF2==3.0.1, - pyrsistent==0.19.3, - pyserial==3.5, - pyshacl==0.18.1, - python-dateutil==2.8.2, - python-dotenv==1.1.0, - pyusb==1.2.1, - rdflib==6.2.0, - requests==2.28.2, - sbol-factory==1.1.1.post1, - sbol-utilities==1.0a16, - sbol2==1.4.1, - sbol3==1.0.1, - six==1.16.0, - sniffio==1.3.0, - SPARQLWrapper==2.0.0, - typing_extensions==4.14.0, - tyto==1.4, - urllib3==1.26.14, - wcwidth==0.2.6, - wrapt==1.15.0, - xlsxwriter==3.2.5, + "aionotify==0.3.1", + "annotated-types==0.7.0", + "anyio==3.6.1", + "attrs==22.2.0", + "biopython==1.81", + "certifi==2022.12.7", + "charset-normalizer==3.0.1", + "click==8.1.3", + "Deprecated==1.2.13", + "et-xmlfile==1.1.0", + "graphviz==0.20.1", + "idna==3.4", + "isodate==0.6.1", + "jsonschema==4.17.3", + "lxml==4.9.2", + "numpy==1.24.2", + "openpyxl==3.1.1", + "opentrons==8.4.1", + "opentrons-shared-data==8.4.1", + "ordered-set==4.1.0", + "owlrl==6.0.2", + "packaging==23.0", + "prettytable==2.5.0", + "pydantic==2.11.7", + "pydantic-settings==2.9.1", + "pydantic_core==2.33.2", + "PyLaTeX==1.4.1", + "pyparsing==2.4.7", + "PyPDF2==3.0.1", + "pyrsistent==0.19.3", + "pyserial==3.5", + "pyshacl==0.18.1", + "python-dateutil==2.8.2", + "python-dotenv==1.1.0", + "pyusb==1.2.1", + "rdflib==6.2.0", + "requests==2.28.2", + "sbol-factory==1.1.1.post1", + "sbol-utilities==1.0a16", + "sbol2==1.4.1", + "sbol3==1.0.1", + "six==1.16.0", + "sniffio==1.3.0", + "SPARQLWrapper==2.0.0", + "typing_extensions==4.14.0", + "tyto==1.4", + "urllib3==1.26.14", + "wcwidth==0.2.6", + "wrapt==1.15.0", + "xlsxwriter==3.2.5", ] [project.optional-dependencies] From 99097bf5a80bbf508680b47306a103358d0875c5 Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Tue, 9 Sep 2025 09:34:56 -0600 Subject: [PATCH 062/100] Delete requirements.txt --- requirements.txt | 51 ------------------------------------------------ 1 file changed, 51 deletions(-) delete mode 100644 requirements.txt diff --git a/requirements.txt b/requirements.txt deleted file mode 100644 index a98e63f..0000000 --- a/requirements.txt +++ /dev/null @@ -1,51 +0,0 @@ -aionotify==0.3.1 -annotated-types==0.7.0 -anyio==3.6.1 -attrs==22.2.0 -biopython==1.81 -certifi==2022.12.7 -charset-normalizer==3.0.1 -click==8.1.3 -Deprecated==1.2.13 -et-xmlfile==1.1.0 -graphviz==0.20.1 -idna==3.4 -isodate==0.6.1 -jsonschema==4.17.3 -lxml==4.9.2 -numpy==1.24.2 -openpyxl==3.1.1 -opentrons==8.4.1 -opentrons-shared-data==8.4.1 -ordered-set==4.1.0 -owlrl==6.0.2 -packaging==23.0 -prettytable==2.5.0 -pydantic==2.11.7 -pydantic-settings==2.9.1 -pydantic_core==2.33.2 -PyLaTeX==1.4.1 -pyparsing==2.4.7 -PyPDF2==3.0.1 -pyrsistent==0.19.3 -pyserial==3.5 -pyshacl==0.18.1 -python-dateutil==2.8.2 -python-dotenv==1.1.0 -pyusb==1.2.1 -rdflib==6.2.0 -requests==2.28.2 -sbol-factory==1.1.1.post1 -sbol-utilities==1.0a16 -sbol2==1.4.1 -sbol3==1.0.1 -six==1.16.0 -sniffio==1.3.0 -SPARQLWrapper==2.0.0 -typing_extensions==4.14.0 -tyto==1.4 -urllib3==1.26.14 -wcwidth==0.2.6 -wrapt==1.15.0 -xlsxwriter==3.2.5 - From 75b5bbc156dae72de4409b1a87a7d3fecf07543a Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Tue, 9 Sep 2025 10:11:30 -0600 Subject: [PATCH 063/100] Update utils.py --- src/pudu/utils.py | 1 + 1 file changed, 1 insertion(+) diff --git a/src/pudu/utils.py b/src/pudu/utils.py index 4b7f7aa..a4a2dc7 100644 --- a/src/pudu/utils.py +++ b/src/pudu/utils.py @@ -1,6 +1,7 @@ import subprocess import time from typing import Optional +import sbol2 colors = [ "#4040BF", # Blue From 51c1a601807f8646329536d59955c55d90a0401b Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Tue, 9 Sep 2025 10:12:57 -0600 Subject: [PATCH 064/100] Update utils.py --- src/pudu/utils.py | 1 + 1 file changed, 1 insertion(+) diff --git a/src/pudu/utils.py b/src/pudu/utils.py index a4a2dc7..88eca3b 100644 --- a/src/pudu/utils.py +++ b/src/pudu/utils.py @@ -2,6 +2,7 @@ import time from typing import Optional import sbol2 +import json colors = [ "#4040BF", # Blue From 7d14e0ed270c5b4b6975211890e2af4fffd02a81 Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Tue, 9 Sep 2025 10:17:24 -0600 Subject: [PATCH 065/100] Update run_sbol2assembly.py --- scripts/run_sbol2assembly.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/scripts/run_sbol2assembly.py b/scripts/run_sbol2assembly.py index aecde46..7c27f18 100644 --- a/scripts/run_sbol2assembly.py +++ b/scripts/run_sbol2assembly.py @@ -1,4 +1,4 @@ -from pudu.assembly import sbol2_DNA_Assembly +from pudu.assembly import SBOLLoopAssembly from pudu.utils import assemblyPlan_To_JSON from opentrons import protocol_api @@ -13,6 +13,6 @@ def run(protocol= protocol_api.ProtocolContext): - pudu_sbol2_assembly = sbol2_DNA_Assembly(assembly_JSON) + pudu_sbol2_assembly = SBOLLoopAssembly(assembly_JSON) pudu_sbol2_assembly.run(protocol) - pudu_sbol2_assembly.get_xlsx_output('sbol2_assembly_output.xlsx') \ No newline at end of file + pudu_sbol2_assembly.get_xlsx_output('sbol2_assembly_output.xlsx') From 3789b358d88e0f3cab50a330cb107d6889ac5919 Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Tue, 9 Sep 2025 10:37:11 -0600 Subject: [PATCH 066/100] Update run_sbol2assembly.py --- scripts/run_sbol2assembly.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/run_sbol2assembly.py b/scripts/run_sbol2assembly.py index 7c27f18..5892672 100644 --- a/scripts/run_sbol2assembly.py +++ b/scripts/run_sbol2assembly.py @@ -2,7 +2,7 @@ from pudu.utils import assemblyPlan_To_JSON from opentrons import protocol_api -assembly_JSON = assemblyPlan_To_JSON('../tests/validation_assembly1.xml') +assembly_JSON = assembly_plan_RDF_to_JSON('../tests/validation_assembly1.xml') # metadata metadata = { From 519c8fd7a0c2964a3a1e4e4138b50634f301baf5 Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Tue, 9 Sep 2025 10:39:16 -0600 Subject: [PATCH 067/100] Update run_sbol2assembly.py --- scripts/run_sbol2assembly.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/run_sbol2assembly.py b/scripts/run_sbol2assembly.py index 5892672..1d35a0f 100644 --- a/scripts/run_sbol2assembly.py +++ b/scripts/run_sbol2assembly.py @@ -1,5 +1,5 @@ from pudu.assembly import SBOLLoopAssembly -from pudu.utils import assemblyPlan_To_JSON +from pudu.utils import assembly_plan_RDF_to_JSON from opentrons import protocol_api assembly_JSON = assembly_plan_RDF_to_JSON('../tests/validation_assembly1.xml') @@ -15,4 +15,4 @@ def run(protocol= protocol_api.ProtocolContext): pudu_sbol2_assembly = SBOLLoopAssembly(assembly_JSON) pudu_sbol2_assembly.run(protocol) - pudu_sbol2_assembly.get_xlsx_output('sbol2_assembly_output.xlsx') + #pudu_sbol2_assembly.get_xlsx_output('sbol2_assembly_output.xlsx') From b72df47095a6329556b2007d130a150758199508 Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Tue, 9 Sep 2025 10:58:18 -0600 Subject: [PATCH 068/100] Update run_sbol2assembly.py --- scripts/run_sbol2assembly.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/scripts/run_sbol2assembly.py b/scripts/run_sbol2assembly.py index 1d35a0f..8dea009 100644 --- a/scripts/run_sbol2assembly.py +++ b/scripts/run_sbol2assembly.py @@ -1,8 +1,13 @@ from pudu.assembly import SBOLLoopAssembly from pudu.utils import assembly_plan_RDF_to_JSON from opentrons import protocol_api +from pathlib import Path -assembly_JSON = assembly_plan_RDF_to_JSON('../tests/validation_assembly1.xml') +# Get the absolute path to the tests directory relative to this script +tests_dir = Path(__file__).parent.parent / "tests" +file_path = tests_dir / "validation_assembly1.xml" + +assembly_JSON = assembly_plan_RDF_to_JSON(str(file_path)) # metadata metadata = { From b2338862130bbd097d801973d713c4210a93d0b2 Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Tue, 9 Sep 2025 11:04:52 -0600 Subject: [PATCH 069/100] Update run_sbol2assembly.py --- scripts/run_sbol2assembly.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/scripts/run_sbol2assembly.py b/scripts/run_sbol2assembly.py index 8dea009..c291ec7 100644 --- a/scripts/run_sbol2assembly.py +++ b/scripts/run_sbol2assembly.py @@ -4,9 +4,7 @@ from pathlib import Path # Get the absolute path to the tests directory relative to this script -tests_dir = Path(__file__).parent.parent / "tests" -file_path = tests_dir / "validation_assembly1.xml" - +file_path = Path("tests/validation_assembly1.xml") assembly_JSON = assembly_plan_RDF_to_JSON(str(file_path)) # metadata From fcb82483de94fc1c3a5b4728377090b573fd963b Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Tue, 9 Sep 2025 11:09:50 -0600 Subject: [PATCH 070/100] Update run_sbol2assembly.py --- scripts/run_sbol2assembly.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/run_sbol2assembly.py b/scripts/run_sbol2assembly.py index c291ec7..1bb7f98 100644 --- a/scripts/run_sbol2assembly.py +++ b/scripts/run_sbol2assembly.py @@ -12,7 +12,7 @@ 'protocolName': 'SBOL2 DNA assembly', 'author': 'Luke Dysart ', 'description': 'Automated DNA assembly from SBOL2 Assembly Plan', -'apiLevel': '2.13'} +'apiLevel': '2.14'} def run(protocol= protocol_api.ProtocolContext): From daad2e8616ad6c6c0e933b296fc383b585d39209 Mon Sep 17 00:00:00 2001 From: Oscar Rodriguez Date: Tue, 16 Sep 2025 00:15:39 -0600 Subject: [PATCH 071/100] Relaxing dependencies --- .github/workflows/python-package.yml | 11 +-- pyproject.toml | 104 +++++++++++++-------------- 2 files changed, 54 insertions(+), 61 deletions(-) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index 61f2332..76d8dd4 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -27,17 +27,10 @@ jobs: - name: Install dependencies run: | python -m pip install --upgrade pip - python -m pip install flake8 pytest opentrons - if [ -f requirements.txt ]; then pip install -r requirements.txt; fi - - name: Install pudu package in development mode + - name: Install pudu package in development mode with test dependencies run: | - pip install -e . - - - name: Lint with flake8 - run: | - flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics - flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics + pip install -e .[test] - name: Test scripts with opentrons_simulate run: | diff --git a/pyproject.toml b/pyproject.toml index 54f635f..027d18e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -25,62 +25,62 @@ classifiers = [ ] dependencies = [ - "aionotify==0.3.1", - "annotated-types==0.7.0", - "anyio==3.6.1", - "attrs==22.2.0", - "biopython==1.81", - "certifi==2022.12.7", - "charset-normalizer==3.0.1", - "click==8.1.3", - "Deprecated==1.2.13", - "et-xmlfile==1.1.0", - "graphviz==0.20.1", - "idna==3.4", - "isodate==0.6.1", - "jsonschema==4.17.3", - "lxml==4.9.2", - "numpy==1.24.2", - "openpyxl==3.1.1", - "opentrons==8.4.1", - "opentrons-shared-data==8.4.1", - "ordered-set==4.1.0", - "owlrl==6.0.2", - "packaging==23.0", - "prettytable==2.5.0", - "pydantic==2.11.7", - "pydantic-settings==2.9.1", - "pydantic_core==2.33.2", - "PyLaTeX==1.4.1", - "pyparsing==2.4.7", - "PyPDF2==3.0.1", - "pyrsistent==0.19.3", - "pyserial==3.5", - "pyshacl==0.18.1", - "python-dateutil==2.8.2", - "python-dotenv==1.1.0", - "pyusb==1.2.1", - "rdflib==6.2.0", - "requests==2.28.2", - "sbol-factory==1.1.1.post1", - "sbol-utilities==1.0a16", - "sbol2==1.4.1", - "sbol3==1.0.1", - "six==1.16.0", - "sniffio==1.3.0", - "SPARQLWrapper==2.0.0", - "typing_extensions==4.14.0", - "tyto==1.4", - "urllib3==1.26.14", - "wcwidth==0.2.6", - "wrapt==1.15.0", - "xlsxwriter==3.2.5", + "aionotify>=0.3.1", + "annotated-types>=0.7.0", + "anyio>=3.6.1", + "attrs>=22.2.0", + "biopython>=1.81", + "certifi>=2022.12.7", + "charset-normalizer>=3.0.1", + "click>=8.1.3", + "Deprecated>=1.2.13", + "et-xmlfile>=1.1.0", + "graphviz>=0.20.1", + "idna>=3.4", + "isodate>=0.6.1", + "jsonschema>=4.17.3", + "lxml>=4.9.2", + "numpy>=1.24.2", + "openpyxl>=3.1.1", + "opentrons>=8.4.1", + "opentrons-shared-data>=8.4.1", + "ordered-set>=4.1.0", + "owlrl>=6.0.2", + "packaging>=23.0", + "prettytable>=2.5.0", + "pydantic>=2.11.7", + "pydantic-settings>=2.9.1", + "pydantic_core>=2.33.2", + "PyLaTeX>=1.4.1", + "pyparsing>=2.4.7", + "PyPDF2>=3.0.1", + "pyrsistent>=0.19.3", + "pyserial>=3.5", + "pyshacl>=0.18.1", + "python-dateutil>=2.8.2", + "python-dotenv>=1.1.0", + "pyusb>=1.2.1", + "rdflib>=6.2.0", + "requests>=2.28.2", + "sbol-factory>=1.1.1.post1", + "sbol-utilities>=1.0a16", + "sbol2>=1.4.1", + "sbol3>=1.0.1", + "six>=1.16.0", + "sniffio>=1.3.0", + "SPARQLWrapper>=2.0.0", + "typing_extensions>=4.14.0", + "tyto>=1.4", + "urllib3>=1.26.14", + "wcwidth>=0.2.6", + "wrapt>=1.15.0", + "xlsxwriter>=3.2.5", ] [project.optional-dependencies] test = [ - "pytest < 5.0.0", - "pytest-cov[all]" + "pytest >= 7.0.0", + "pytest-cov" ] [project.urls] From 287b5e6d32244f0011710618db56b939a13f9ea6 Mon Sep 17 00:00:00 2001 From: Oscar Rodriguez Date: Tue, 16 Sep 2025 00:19:24 -0600 Subject: [PATCH 072/100] Change to show which scripts are running --- .github/workflows/python-package.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index 76d8dd4..836e8af 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -34,4 +34,4 @@ jobs: - name: Test scripts with opentrons_simulate run: | - pytest -v \ No newline at end of file + pytest -s -v \ No newline at end of file From dc55ee0e27f70766e4c9d252ec00a39e2db3b744 Mon Sep 17 00:00:00 2001 From: Oscar Rodriguez Date: Fri, 19 Sep 2025 13:39:39 -0600 Subject: [PATCH 073/100] changed version to 1.0.0b4; increased sbol3>=1.2.0 to see if that resolves dependency issue with python-dateutil; lowered openpyxl>=3.0.7 to be compatible with excel2flapjack --- pyproject.toml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 027d18e..2ebfc7c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "pudupy" -version = "1.0.0b2" +version = "1.0.0b4" description = "Protocol Unified Design Unit" readme = "README.md" requires-python = ">=3.7" @@ -41,7 +41,7 @@ dependencies = [ "jsonschema>=4.17.3", "lxml>=4.9.2", "numpy>=1.24.2", - "openpyxl>=3.1.1", + "openpyxl>=3.0.7", "opentrons>=8.4.1", "opentrons-shared-data>=8.4.1", "ordered-set>=4.1.0", @@ -65,7 +65,7 @@ dependencies = [ "sbol-factory>=1.1.1.post1", "sbol-utilities>=1.0a16", "sbol2>=1.4.1", - "sbol3>=1.0.1", + "sbol3>=1.2.0", "six>=1.16.0", "sniffio>=1.3.0", "SPARQLWrapper>=2.0.0", From 780b348a36b6c68884f86c6268710da89278872c Mon Sep 17 00:00:00 2001 From: Gonza10V Date: Mon, 22 Sep 2025 14:47:45 -0600 Subject: [PATCH 074/100] new version --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 027d18e..dd0e783 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "pudupy" -version = "1.0.0b2" +version = "1.0.0b3" description = "Protocol Unified Design Unit" readme = "README.md" requires-python = ">=3.7" From 46be39ceff0d05d12432c9572e87a56a2cb80739 Mon Sep 17 00:00:00 2001 From: Oscar Rodriguez Date: Tue, 23 Sep 2025 10:09:43 -0600 Subject: [PATCH 075/100] Fixed recovery_incubation input error --- src/pudu/transformation.py | 1 - 1 file changed, 1 deletion(-) diff --git a/src/pudu/transformation.py b/src/pudu/transformation.py index b254079..2e6eb2d 100644 --- a/src/pudu/transformation.py +++ b/src/pudu/transformation.py @@ -134,7 +134,6 @@ def __init__(self, self.recovery_incubation = {'temperature': 37, 'hold_time_minutes': 60} else: self.recovery_incubation = recovery_incubation - self.recovery_incubation = recovery_incubation self.dict_of_parts_in_temp_mod_position = {} self.dict_of_parts_in_thermocycler = {} From d5c9a70cfc0267bcd2efb687c009b4f64f66242e Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Tue, 23 Sep 2025 15:16:30 -0600 Subject: [PATCH 076/100] Update pyproject.toml --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 2ebfc7c..5f10a03 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "pudupy" -version = "1.0.0b4" +version = "1.0.0b5" description = "Protocol Unified Design Unit" readme = "README.md" requires-python = ">=3.7" From a623b51b0382a0398ad321014a9d6df2e1a23f0f Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Tue, 30 Sep 2025 09:13:36 -0600 Subject: [PATCH 077/100] Update pyproject.toml --- pyproject.toml | 48 ------------------------------------------------ 1 file changed, 48 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 2ebfc7c..7035c2f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -25,55 +25,7 @@ classifiers = [ ] dependencies = [ - "aionotify>=0.3.1", - "annotated-types>=0.7.0", - "anyio>=3.6.1", - "attrs>=22.2.0", - "biopython>=1.81", - "certifi>=2022.12.7", - "charset-normalizer>=3.0.1", - "click>=8.1.3", - "Deprecated>=1.2.13", - "et-xmlfile>=1.1.0", - "graphviz>=0.20.1", - "idna>=3.4", - "isodate>=0.6.1", - "jsonschema>=4.17.3", - "lxml>=4.9.2", - "numpy>=1.24.2", - "openpyxl>=3.0.7", "opentrons>=8.4.1", - "opentrons-shared-data>=8.4.1", - "ordered-set>=4.1.0", - "owlrl>=6.0.2", - "packaging>=23.0", - "prettytable>=2.5.0", - "pydantic>=2.11.7", - "pydantic-settings>=2.9.1", - "pydantic_core>=2.33.2", - "PyLaTeX>=1.4.1", - "pyparsing>=2.4.7", - "PyPDF2>=3.0.1", - "pyrsistent>=0.19.3", - "pyserial>=3.5", - "pyshacl>=0.18.1", - "python-dateutil>=2.8.2", - "python-dotenv>=1.1.0", - "pyusb>=1.2.1", - "rdflib>=6.2.0", - "requests>=2.28.2", - "sbol-factory>=1.1.1.post1", - "sbol-utilities>=1.0a16", - "sbol2>=1.4.1", - "sbol3>=1.2.0", - "six>=1.16.0", - "sniffio>=1.3.0", - "SPARQLWrapper>=2.0.0", - "typing_extensions>=4.14.0", - "tyto>=1.4", - "urllib3>=1.26.14", - "wcwidth>=0.2.6", - "wrapt>=1.15.0", "xlsxwriter>=3.2.5", ] From 4c1dba6d38cc6e909f3fc43dc1cfeb9b7cdd7394 Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Tue, 30 Sep 2025 09:16:40 -0600 Subject: [PATCH 078/100] Update pyproject.toml --- pyproject.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/pyproject.toml b/pyproject.toml index 7035c2f..8579e09 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -27,6 +27,7 @@ classifiers = [ dependencies = [ "opentrons>=8.4.1", "xlsxwriter>=3.2.5", + "sbol2>=1.4.1", ] [project.optional-dependencies] From eba7099291399d0800b6c9e8dca08b1d30ae2f7b Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Tue, 30 Sep 2025 09:24:51 -0600 Subject: [PATCH 079/100] Update pyproject.toml --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 8579e09..ffc849c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "pudupy" -version = "1.0.0b4" +version = "1.0.0b5" description = "Protocol Unified Design Unit" readme = "README.md" requires-python = ">=3.7" From dfa05dd8e3f516a451015c93889f0cfd5cd30686 Mon Sep 17 00:00:00 2001 From: Gonza10V Date: Fri, 3 Oct 2025 14:42:20 -0600 Subject: [PATCH 080/100] removing SBOL2 dependency --- pyproject.toml | 3 +- scripts/run_sbol2assembly.py | 4 +- src/pudu/utils.py | 74 ------------------------------------ 3 files changed, 3 insertions(+), 78 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index ffc849c..a81e0aa 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "pudupy" -version = "1.0.0b5" +version = "1.0.0b6" description = "Protocol Unified Design Unit" readme = "README.md" requires-python = ">=3.7" @@ -27,7 +27,6 @@ classifiers = [ dependencies = [ "opentrons>=8.4.1", "xlsxwriter>=3.2.5", - "sbol2>=1.4.1", ] [project.optional-dependencies] diff --git a/scripts/run_sbol2assembly.py b/scripts/run_sbol2assembly.py index 1bb7f98..4cdbfc7 100644 --- a/scripts/run_sbol2assembly.py +++ b/scripts/run_sbol2assembly.py @@ -4,8 +4,8 @@ from pathlib import Path # Get the absolute path to the tests directory relative to this script -file_path = Path("tests/validation_assembly1.xml") -assembly_JSON = assembly_plan_RDF_to_JSON(str(file_path)) +file_path = Path("output.json") +assembly_JSON = str(file_path) # metadata metadata = { diff --git a/src/pudu/utils.py b/src/pudu/utils.py index 88eca3b..cc68f91 100644 --- a/src/pudu/utils.py +++ b/src/pudu/utils.py @@ -1,8 +1,6 @@ import subprocess import time from typing import Optional -import sbol2 -import json colors = [ "#4040BF", # Blue @@ -311,75 +309,3 @@ def liquid_transfer(self, volume: float, source, destination, if drop_tip: self.pipette.drop_tip() return True - -def assembly_plan_RDF_to_JSON(file): - sbol2.Config.setOption('sbol_typed_uris', False) - doc = sbol2.Document() - doc.read(file) - - # Known SO roles - PRODUCT_ROLE = 'http://identifiers.org/so/SO:0000804' - BackBone_ROLE = 'http://identifiers.org/so/SO:0000755' - ENZYME_ROLE = 'http://identifiers.org/obi/OBI:0000732' - - PARTS_ROLE_LIST = [ - 'http://identifiers.org/so/SO:0000031', 'http://identifiers.org/so/SO:0000316', - 'http://identifiers.org/so/SO:0001977', 'http://identifiers.org/so/SO:0001956', - 'http://identifiers.org/so/SO:0000188', 'http://identifiers.org/so/SO:0000839', - 'http://identifiers.org/so/SO:0000167', 'http://identifiers.org/so/SO:0000139', - 'http://identifiers.org/so/SO:0001979', 'http://identifiers.org/so/SO:0001955', - 'http://identifiers.org/so/SO:0001546', 'http://identifiers.org/so/SO:0001263', - 'http://identifiers.org/SO:0000141', 'http://identifiers.org/so/SO:0000141' - ] - - product_dicts = [] - globalEnzyme = None - - for cd in doc.componentDefinitions: - print(f"\n🔍 Checking Component: {cd.displayId}") - print(f" Types: {cd.types}") - print(f" Roles: {cd.roles}") - - if ENZYME_ROLE in cd.roles: - globalEnzyme = cd.identity - print(f"✅ Found enzyme definition: {globalEnzyme}") - - if PRODUCT_ROLE in cd.roles: - result = { - 'Product': cd.identity, - 'Backbone': None, - 'PartsList': [], - 'Restriction Enzyme': None - } - - for comp in cd.components: - sub_cd = doc.componentDefinitions.get(comp.definition) - if sub_cd is None: - print(f"⚠️ Component definition for {comp.displayId} not found.") - continue - - print(f" → Subcomponent: {sub_cd.displayId}") - print(f" Roles: {sub_cd.roles}") - - if BackBone_ROLE in sub_cd.roles: - result['Backbone'] = sub_cd.identity - print(f" 🧬 Assigned Backbone: {sub_cd.identity}") - - if any(role in PARTS_ROLE_LIST for role in sub_cd.roles): - result['PartsList'].append(sub_cd.identity) - print(f" 🧩 Added Part: {sub_cd.identity}") - - if not result['Backbone']: - print(f"⚠️ No backbone found for product {cd.displayId}") - if not result['PartsList']: - print(f"⚠️ No parts found for product {cd.displayId}") - - product_dicts.append(result) - - for entry in product_dicts: - entry['Restriction Enzyme'] = globalEnzyme - - with open('output.json', 'w') as json_file: - json.dump(product_dicts, json_file, indent=4) - - return product_dicts From bcb50096be4958bd92d6b2c9bea2d95e27859851 Mon Sep 17 00:00:00 2001 From: Gonza10V Date: Tue, 14 Oct 2025 09:28:42 -0600 Subject: [PATCH 081/100] plating added to init --- pyproject.toml | 2 +- src/pudu/__init__.py | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index a81e0aa..dbbf46d 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "pudupy" -version = "1.0.0b6" +version = "1.0.0b7" description = "Protocol Unified Design Unit" readme = "README.md" requires-python = ">=3.7" diff --git a/src/pudu/__init__.py b/src/pudu/__init__.py index 649a7da..feacf84 100644 --- a/src/pudu/__init__.py +++ b/src/pudu/__init__.py @@ -2,4 +2,5 @@ from .calibration import * from .sample_preparation import * from .transformation import * -from .utils import * +from .plating import * +from .utils import * \ No newline at end of file From 148a8e79735a4c1cb8e0448948d21fe31de6559c Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Tue, 11 Nov 2025 11:38:12 -0700 Subject: [PATCH 082/100] Delete scripts/run_sbol2assembly.py --- scripts/run_sbol2assembly.py | 21 --------------------- 1 file changed, 21 deletions(-) delete mode 100644 scripts/run_sbol2assembly.py diff --git a/scripts/run_sbol2assembly.py b/scripts/run_sbol2assembly.py deleted file mode 100644 index 4cdbfc7..0000000 --- a/scripts/run_sbol2assembly.py +++ /dev/null @@ -1,21 +0,0 @@ -from pudu.assembly import SBOLLoopAssembly -from pudu.utils import assembly_plan_RDF_to_JSON -from opentrons import protocol_api -from pathlib import Path - -# Get the absolute path to the tests directory relative to this script -file_path = Path("output.json") -assembly_JSON = str(file_path) - -# metadata -metadata = { -'protocolName': 'SBOL2 DNA assembly', -'author': 'Luke Dysart ', -'description': 'Automated DNA assembly from SBOL2 Assembly Plan', -'apiLevel': '2.14'} - -def run(protocol= protocol_api.ProtocolContext): - - pudu_sbol2_assembly = SBOLLoopAssembly(assembly_JSON) - pudu_sbol2_assembly.run(protocol) - #pudu_sbol2_assembly.get_xlsx_output('sbol2_assembly_output.xlsx') From b14e9ad3ca1dd1ec0747588b255b58609dd37e53 Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Tue, 11 Nov 2025 14:19:25 -0700 Subject: [PATCH 083/100] Update path for output.json in run_sbol2assembly_libre.py --- scripts/run_sbol2assembly_libre.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/run_sbol2assembly_libre.py b/scripts/run_sbol2assembly_libre.py index c3f1923..bfd2482 100644 --- a/scripts/run_sbol2assembly_libre.py +++ b/scripts/run_sbol2assembly_libre.py @@ -297,10 +297,10 @@ def run(protocol= protocol_api.ProtocolContext): #I am taking in the name of Json file and make it assembly #import using pandas or somthing to convert to usable dictionary import json - with open("output.json", "r") as f: + with open("scripts/output.json", "r") as f: assembly_sbol2_uris = json.load(f) pudu_sbol2_assembly = sbol2assembly(assemblies=assembly_sbol2_uris) pudu_sbol2_assembly.run(protocol) - pudu_sbol2_assembly.get_xlsx_output("SBOL_xlsx5") \ No newline at end of file + pudu_sbol2_assembly.get_xlsx_output("SBOL_xlsx5") From b39d36afdc90da0008265100f6cedd5f1be260e6 Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Sun, 14 Dec 2025 22:28:39 -0700 Subject: [PATCH 084/100] Add initial documentation file --- documentation/docs.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 documentation/docs.md diff --git a/documentation/docs.md b/documentation/docs.md new file mode 100644 index 0000000..d8f8d46 --- /dev/null +++ b/documentation/docs.md @@ -0,0 +1 @@ +docs From 43bdf2ef6a1f0810ec1014df263c01d906479738 Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Sun, 14 Dec 2025 22:29:06 -0700 Subject: [PATCH 085/100] Add files via upload --- documentation/PUDU_docs.pdf | Bin 0 -> 1265448 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 documentation/PUDU_docs.pdf diff --git a/documentation/PUDU_docs.pdf b/documentation/PUDU_docs.pdf new file mode 100644 index 0000000000000000000000000000000000000000..bcb3eff6f5f50839f750b301e5b64f3e02735221 GIT binary patch literal 1265448 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�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

F}HMMBPBh;v@>X96W1 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
dK7T9`TfX& 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

&(e=>V4#8G*6!kB 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 literal 0 HcmV?d00001 From 924b12c78f54b6290a9e69cf5df4fd94aa98d127 Mon Sep 17 00:00:00 2001 From: Oscar Rodriguez Date: Tue, 16 Dec 2025 01:54:52 -0700 Subject: [PATCH 086/100] Refactored `assembly.py` to support advanced parameter merging via JSON and kwargs, and added `run_sbol2assembly_with_params.py` script for SBOL loop assembly with custom parameters. --- scripts/run_sbol2assembly_with_params.py | 82 +++++++++++++ src/pudu/assembly.py | 145 +++++++++++++++++++---- 2 files changed, 205 insertions(+), 22 deletions(-) create mode 100644 scripts/run_sbol2assembly_with_params.py diff --git a/scripts/run_sbol2assembly_with_params.py b/scripts/run_sbol2assembly_with_params.py new file mode 100644 index 0000000..1a9c641 --- /dev/null +++ b/scripts/run_sbol2assembly_with_params.py @@ -0,0 +1,82 @@ +from pudu.assembly import SBOLLoopAssembly +from opentrons import protocol_api + +# Example SBOL assemblies (would typically come from SynBioSuite) +assemblies = [ + { + "Product": "https://SBOL2Build.org/composite_1/1", + "Backbone": "https://sbolcanvas.org/pSB1C3/1", + "PartsList": [ + "https://sbolcanvas.org/J23101/1", + "https://sbolcanvas.org/B0034/1", + "https://sbolcanvas.org/GFP/1", + "https://sbolcanvas.org/B0015/1" + ], + "Restriction Enzyme": "https://SBOL2Build.org/BsaI/1" + }, + { + "Product": "https://SBOL2Build.org/composite_2/1", + "Backbone": "https://sbolcanvas.org/pSB1C3/1", + "PartsList": [ + "https://sbolcanvas.org/J23100/1", + "https://sbolcanvas.org/B0034/1", + "https://sbolcanvas.org/RFP/1", + "https://sbolcanvas.org/B0015/1" + ], + "Restriction Enzyme": "https://SBOL2Build.org/BsaI/1" + } +] +# Advanced parameters +advanced_params = { + "volume_part": 1, + "replicates": 2, # Want duplicates for this critical experiment + "thermocycler_starting_well": 0, + "protocol_name": "SBOL_GFP_RFP_Assembly" +} + +metadata = { + 'protocolName': 'PUDU SBOL Loop Assembly with Advanced Parameters', + 'author': 'Oscar Rodriguez', + 'description': 'Automated DNA assembly from SBOL with custom parameters', + 'apiLevel': '2.14' +} + +def run(protocol: protocol_api.ProtocolContext): + """ + Run SBOL Loop Assembly with advanced parameters. + + This demonstrates three ways to configure the protocol: + + 1. Using advanced_params dict (recommended for SynBioSuite integration) + 2. Using kwargs (traditional method, still supported) + 3. Combining both (kwargs override advanced_params) + """ + + # Method 1: Using advanced_params (recommended for programmatic generation) + protocol.comment("=== Running with advanced_params ===") + pudu_assembly = SBOLLoopAssembly( + assemblies=assemblies, + json_params=advanced_params + ) + pudu_assembly.run(protocol) + + # Method 2: Traditional kwargs method (still works for backward compatibility) + # Uncomment to test: + # protocol.comment("=== Running with kwargs ===") + # pudu_assembly = SBOLLoopAssembly( + # assemblies=assemblies, + # volume_part=3, + # replicates=2, + # protocol_name="SBOL_Traditional" + # ) + # pudu_assembly.run(protocol) + + # Method 3: Combining both (kwargs override advanced_params) + # Uncomment to test: + # protocol.comment("=== Running with both (kwargs wins) ===") + # pudu_assembly = SBOLLoopAssembly( + # assemblies=assemblies, + # advanced_params={"volume_part": 3, "replicates": 2}, + # replicates=4 # This overrides the replicates=2 in advanced_params + # ) + # pudu_assembly.run(protocol) \ No newline at end of file diff --git a/src/pudu/assembly.py b/src/pudu/assembly.py index c428ccd..b7e27ff 100644 --- a/src/pudu/assembly.py +++ b/src/pudu/assembly.py @@ -14,6 +14,7 @@ class BaseAssembly(ABC): """ def __init__(self, + json_params: Dict = None, volume_total_reaction: float = 20, volume_part: float = 2, volume_restriction_enzyme: float = 2, @@ -36,30 +37,54 @@ def __init__(self, output_xlsx: bool = True, protocol_name: str = ''): - self.volume_total_reaction = volume_total_reaction - self.volume_part = volume_part - self.volume_restriction_enzyme = volume_restriction_enzyme - self.volume_t4_dna_ligase = volume_t4_dna_ligase - self.volume_t4_dna_ligase_buffer = volume_t4_dna_ligase_buffer - self.replicates = replicates - self.thermocycler_starting_well = thermocycler_starting_well - self.thermocycler_labware = thermocycler_labware - self.temperature_module_labware = temperature_module_labware - self.temperature_module_position = temperature_module_position - self.tiprack_labware = tiprack_labware - if tiprack_positions is None: + params = self._merge_params(json_params,{ + 'volume_total_reaction': volume_total_reaction, + 'volume_part': volume_part, + 'volume_restriction_enzyme': volume_restriction_enzyme, + 'volume_t4_dna_ligase': volume_t4_dna_ligase, + 'volume_t4_dna_ligase_buffer': volume_t4_dna_ligase_buffer, + 'replicates': replicates, + 'thermocycler_starting_well': thermocycler_starting_well, + 'thermocycler_labware': thermocycler_labware, + 'temperature_module_labware': temperature_module_labware, + 'temperature_module_position': temperature_module_position, + 'tiprack_labware': tiprack_labware, + 'tiprack_positions': tiprack_positions, + 'pipette': pipette, + 'pipette_position': pipette_position, + 'aspiration_rate': aspiration_rate, + 'dispense_rate': dispense_rate, + 'take_picture': take_picture, + 'take_video': take_video, + 'water_testing': water_testing, + 'output_xlsx': output_xlsx, + 'protocol_name': protocol_name + }) + + self.volume_total_reaction = params['volume_total_reaction'] + self.volume_part = params['volume_part'] + self.volume_restriction_enzyme = params['volume_restriction_enzyme'] + self.volume_t4_dna_ligase = params['volume_t4_dna_ligase'] + self.volume_t4_dna_ligase_buffer = params['volume_t4_dna_ligase_buffer'] + self.replicates = params['replicates'] + self.thermocycler_starting_well = params['thermocycler_starting_well'] + self.thermocycler_labware = params['thermocycler_labware'] + self.temperature_module_labware = params['temperature_module_labware'] + self.temperature_module_position = params['temperature_module_position'] + self.tiprack_labware = params['tiprack_labware'] + if params['tiprack_positions'] is None: self.tiprack_positions = ['2', '3', '4', '5', '6', '9'] else: - self.tiprack_positions = tiprack_positions - self.pipette = pipette - self.pipette_position = pipette_position - self.aspiration_rate = aspiration_rate - self.dispense_rate = dispense_rate - self.take_picture = take_picture - self.take_video = take_video - self.water_testing = water_testing - self.output_xlsx = output_xlsx - self.protocol_name = protocol_name + self.tiprack_positions = params['tiprack_positions'] + self.pipette = params['pipette'] + self.pipette_position = params['pipette_position'] + self.aspiration_rate = params['aspiration_rate'] + self.dispense_rate = params['dispense_rate'] + self.take_picture = params['take_picture'] + self.take_video = params['take_video'] + self.water_testing = params['water_testing'] + self.output_xlsx = params['output_xlsx'] + self.protocol_name = params['protocol_name'] # Shared tracking dictionaries self.dict_of_parts_in_temp_mod_position = {} @@ -81,6 +106,82 @@ def __init__(self, 'total_batches': 1 } + def _merge_params(self, json_params: Dict, kwargs_params: Dict) -> Dict: + """ + Merge parameters with precedence: defaults <- advanced_params <- kwargs + + Args: + advanced_params: Dictionary of parameters from JSON/dict (optional) + kwargs_params: Dictionary of parameters from function kwargs + + Returns: + Merged parameter dictionary + + Raises: + ValueError: If advanced_params contains unknown parameters + """ + # Define all valid parameter names with their defaults + valid_params = { + 'volume_total_reaction': 20, + 'volume_part': 2, + 'volume_restriction_enzyme': 2, + 'volume_t4_dna_ligase': 4, + 'volume_t4_dna_ligase_buffer': 2, + 'replicates': 1, + 'thermocycler_starting_well': 0, + 'thermocycler_labware': 'nest_96_wellplate_100ul_pcr_full_skirt', + 'temperature_module_labware': 'opentrons_24_aluminumblock_nest_1.5ml_snapcap', + 'temperature_module_position': '1', + 'tiprack_labware': 'opentrons_96_tiprack_20ul', + 'tiprack_positions': None, + 'pipette': 'p20_single_gen2', + 'pipette_position': 'left', + 'aspiration_rate': 0.5, + 'dispense_rate': 1, + 'take_picture': False, + 'take_video': False, + 'water_testing': False, + 'output_xlsx': True, + 'protocol_name': '' + } + + # Start with defaults + merged = valid_params.copy() + + # Apply json_params if provided + if json_params is not None: + self._validate_param_structure(json_params, valid_params) + merged.update(json_params) + + # Apply kwargs (checking against defaults to see what was explicitly passed) + # Only update if the kwarg value differs from the default + for key, value in kwargs_params.items(): + if key in valid_params: + # Always use kwargs value, even if it matches default + # This ensures explicit kwargs override advanced_params + if json_params is None or key not in json_params or value != valid_params[key]: + merged[key] = value + + return merged + + def _validate_param_structure(self, advanced_params: Dict, valid_params: Dict): + """ + Validate that advanced_params only contains known parameter names. + + Args: + advanced_params: Dictionary to validate + valid_params: Dictionary of valid parameter names + + Raises: + ValueError: If unknown parameters are found + """ + unknown_params = set(advanced_params.keys()) - set(valid_params.keys()) + if unknown_params: + raise ValueError( + f"Unknown parameters in advanced_params: {unknown_params}. " + f"Valid parameters are: {set(valid_params.keys())}" + ) + @abstractmethod def process_assemblies(self): """Process input assemblies - format-specific implementation""" From 676f76be8004a148d4549a78a438a3f3cb02f91b Mon Sep 17 00:00:00 2001 From: Oscar Rodriguez Date: Wed, 17 Dec 2025 19:07:26 -0700 Subject: [PATCH 087/100] Validated reaction volume constraints in `assembly.py` to ensure physical feasibility of assemblies and updated `run_sbol2assembly_with_params.py` to include revised advanced parameters. --- scripts/run_sbol2assembly_with_params.py | 14 ++++--- src/pudu/assembly.py | 53 ++++++++++++++++++++++-- 2 files changed, 59 insertions(+), 8 deletions(-) diff --git a/scripts/run_sbol2assembly_with_params.py b/scripts/run_sbol2assembly_with_params.py index 1a9c641..4103a9a 100644 --- a/scripts/run_sbol2assembly_with_params.py +++ b/scripts/run_sbol2assembly_with_params.py @@ -1,6 +1,3 @@ -from pudu.assembly import SBOLLoopAssembly -from opentrons import protocol_api - # Example SBOL assemblies (would typically come from SynBioSuite) assemblies = [ { @@ -26,14 +23,21 @@ "Restriction Enzyme": "https://SBOL2Build.org/BsaI/1" } ] + # Advanced parameters advanced_params = { - "volume_part": 1, + "volume_part": 3, + "volume_total_reaction": 25, "replicates": 2, # Want duplicates for this critical experiment "thermocycler_starting_well": 0, "protocol_name": "SBOL_GFP_RFP_Assembly" } + +from pudu.assembly import SBOLLoopAssembly +from opentrons import protocol_api + + metadata = { 'protocolName': 'PUDU SBOL Loop Assembly with Advanced Parameters', 'author': 'Oscar Rodriguez', @@ -56,7 +60,7 @@ def run(protocol: protocol_api.ProtocolContext): protocol.comment("=== Running with advanced_params ===") pudu_assembly = SBOLLoopAssembly( assemblies=assemblies, - json_params=advanced_params + json_params=advanced_params, ) pudu_assembly.run(protocol) diff --git a/src/pudu/assembly.py b/src/pudu/assembly.py index b7e27ff..8a0dba3 100644 --- a/src/pudu/assembly.py +++ b/src/pudu/assembly.py @@ -182,6 +182,38 @@ def _validate_param_structure(self, advanced_params: Dict, valid_params: Dict): f"Valid parameters are: {set(valid_params.keys())}" ) + def _validate_reaction_volumes(self, num_parts: int): + """ + Validate that reaction volumes are physically possible. + + Args: + num_parts: Number of DNA parts (including backbone) in the assembly + + Raises: + ValueError: If volumes exceed total reaction volume + """ + volume_reagents = (self.volume_restriction_enzyme + + self.volume_t4_dna_ligase + + self.volume_t4_dna_ligase_buffer) + + total_parts_volume = self.volume_part * num_parts + total_needed = volume_reagents + total_parts_volume + + if total_needed >= self.volume_total_reaction: + water_volume = self.volume_total_reaction - total_needed + raise ValueError( + f"Reaction volume error: Cannot fit {num_parts} parts into {self.volume_total_reaction}µL reaction.\n" + f" Required volumes:\n" + f" - Reagents (enzyme + ligase + buffer): {volume_reagents}µL\n" + f" - Parts ({num_parts} × {self.volume_part}µL): {total_parts_volume}µL\n" + f" - Water: {water_volume}µL (NEGATIVE!)\n" + f" Total needed: {total_needed}µL\n" + f" Solutions:\n" + f" 1. Increase 'volume_total_reaction' to at least {total_needed + 1}µL\n" + f" 2. Decrease 'volume_part' to at most {(self.volume_total_reaction - volume_reagents - 1) / num_parts:.1f}µL\n" + f" 3. Decrease reagent volumes" + ) + @abstractmethod def process_assemblies(self): """Process input assemblies - format-specific implementation""" @@ -583,8 +615,9 @@ def _process_assembly_combinations(self, protocol, pipette, thermo_plate, alum_b mix_before=self.volume_part, touch_tip=True, drop_tip=False) # Remove air bubbles with mixing + mix_volume = min(self.volume_total_reaction, pipette.max_volume) for _ in range(int(self.volume_total_reaction / 10)): - self.liquid_transfer(protocol=protocol, pipette=pipette, volume=self.volume_total_reaction, + self.liquid_transfer(protocol=protocol, pipette=pipette, volume=mix_volume, source=dest_well.bottom(), dest=dest_well.bottom(8), asp_rate=1.0, disp_rate=1.0, new_tip=False, drop_tip=False, touch_tip=True) @@ -642,6 +675,8 @@ def _validate_assembly_requirements(self): f'({len(self.parts_list)} parts × {self.replicates} replicates).' ) + self._validate_reaction_volumes(num_parts=2) + def _reset_assembly_state(self): """Reset assembly processing state""" self.parts_list = [] @@ -816,6 +851,11 @@ def _validate_assembly_requirements(self): f'combinations. Number of combinations in the protocol are {wells_needed}.' ) + # Validate reaction volumes for all combinations + for combination in self.odd_combinations + self.even_combinations: + num_parts = len(combination) + self._validate_reaction_volumes(num_parts) + def _process_combinations(self, protocol, pipette, combinations, restriction_enzyme, thermo_plate, alum_block, dd_h2o, t4_dna_ligase_buffer, t4_dna_ligase, volume_reagents, thermocycler_well_counter): @@ -863,8 +903,9 @@ def _process_combinations(self, protocol, pipette, combinations, restriction_enz mix_before=self.volume_part, touch_tip=True) # Remove air bubbles + mix_volume = min(self.volume_total_reaction, pipette.max_volume) for _ in range(int(self.volume_total_reaction / 10)): - self.liquid_transfer(protocol=protocol, pipette=pipette, volume=self.volume_total_reaction, + self.liquid_transfer(protocol=protocol, pipette=pipette, volume=mix_volume, source=dest_well.bottom(), dest=dest_well.bottom(8), asp_rate=1.0, disp_rate=1.0, new_tip=False, drop_tip=False, touch_tip=True) pipette.drop_tip() @@ -998,8 +1039,9 @@ def _process_assembly_combinations(self, protocol, pipette, thermo_plate, alum_b mix_before=self.volume_part, touch_tip=True) # Remove air bubbles + mix_volume = min(self.volume_total_reaction, pipette.max_volume) for _ in range(int(self.volume_total_reaction / 10)): - self.liquid_transfer(protocol=protocol, pipette=pipette, volume=self.volume_total_reaction, + self.liquid_transfer(protocol=protocol, pipette=pipette, volume=mix_volume, source=dest_well.bottom(), dest=dest_well.bottom(8), asp_rate=1.0, disp_rate=1.0, new_tip=False, drop_tip=False, touch_tip=True) pipette.drop_tip() @@ -1070,6 +1112,11 @@ def _validate_assembly_requirements(self): f'combinations. Number of assemblies in the protocol are {wells_needed}.' ) + # Validate reaction volumes for each assembly + for assembly_combo in self.assembly_combinations: + num_parts = len(assembly_combo['parts']) + self._validate_reaction_volumes(num_parts) + class LoopAssembly: """ From 2a6ba5d19fef3d985ed815fd1678981f9bc3da8f Mon Sep 17 00:00:00 2001 From: Oscar Rodriguez Date: Wed, 17 Dec 2025 22:08:27 -0700 Subject: [PATCH 088/100] Added `initial_tip` parameter in `assembly.py` for improved tip management and updated `run_sbol2assembly_with_params.py` to utilize this feature. --- scripts/run_sbol2assembly_with_params.py | 1 + src/pudu/assembly.py | 69 +++++++++++++++++++++++- 2 files changed, 69 insertions(+), 1 deletion(-) diff --git a/scripts/run_sbol2assembly_with_params.py b/scripts/run_sbol2assembly_with_params.py index 4103a9a..bfe14c6 100644 --- a/scripts/run_sbol2assembly_with_params.py +++ b/scripts/run_sbol2assembly_with_params.py @@ -29,6 +29,7 @@ "volume_part": 3, "volume_total_reaction": 25, "replicates": 2, # Want duplicates for this critical experiment + "initial_tip": "H10", "thermocycler_starting_well": 0, "protocol_name": "SBOL_GFP_RFP_Assembly" } diff --git a/src/pudu/assembly.py b/src/pudu/assembly.py index 8a0dba3..b3b51d0 100644 --- a/src/pudu/assembly.py +++ b/src/pudu/assembly.py @@ -29,6 +29,7 @@ def __init__(self, tiprack_positions: List[str] = None, pipette: str = 'p20_single_gen2', pipette_position: str = 'left', + initial_tip: str = None, aspiration_rate: float = 0.5, dispense_rate: float = 1, take_picture: bool = False, @@ -52,6 +53,7 @@ def __init__(self, 'tiprack_positions': tiprack_positions, 'pipette': pipette, 'pipette_position': pipette_position, + 'initial_tip' : initial_tip, 'aspiration_rate': aspiration_rate, 'dispense_rate': dispense_rate, 'take_picture': take_picture, @@ -78,6 +80,7 @@ def __init__(self, self.tiprack_positions = params['tiprack_positions'] self.pipette = params['pipette'] self.pipette_position = params['pipette_position'] + self.initial_tip = params['initial_tip'] self.aspiration_rate = params['aspiration_rate'] self.dispense_rate = params['dispense_rate'] self.take_picture = params['take_picture'] @@ -136,6 +139,7 @@ def _merge_params(self, json_params: Dict, kwargs_params: Dict) -> Dict: 'tiprack_positions': None, 'pipette': 'p20_single_gen2', 'pipette_position': 'left', + 'initial_tip': None, 'aspiration_rate': 0.5, 'dispense_rate': 1, 'take_picture': False, @@ -214,6 +218,51 @@ def _validate_reaction_volumes(self, num_parts: int): f" 3. Decrease reagent volumes" ) + def _well_to_index(self, well_name: str) -> int: + """ + Convert well name (e.g., 'A1', 'H12') to 0-based index in 96-well plate. + + Args: + well_name: Well position like 'A1', 'B3', 'H12' + + Returns: + Zero-based index (0-95) for the well + + Raises: + ValueError: If well_name format is invalid + """ + if not well_name or len(well_name) < 2: + raise ValueError(f"Invalid well name: '{well_name}'. Expected format like 'A1', 'B3', 'H12'") + + row = well_name[0] + try: + col = int(well_name[1:]) + except ValueError: + raise ValueError(f"Invalid well name: '{well_name}'. Column must be a number (e.g., 'A1', 'H12')") + + if row not in 'ABCDEFGH': + raise ValueError(f"Invalid well name: '{well_name}'. Row must be A-H") + + if col < 1 or col > 12: + raise ValueError(f"Invalid well name: '{well_name}'. Column must be 1-12") + + row_index = ord(row) - ord('A') + col_index = col - 1 + return row_index + (col_index * 8) + + def _tips_available_from_position(self, well_name: str) -> int: + """ + Calculate how many tips are available starting from a given position. + + Args: + well_name: Starting well position like 'A1', 'H12' + + Returns: + Number of tips available from that position to H12 + """ + start_index = self._well_to_index(well_name) + return 96 - start_index + @abstractmethod def process_assemblies(self): """Process input assemblies - format-specific implementation""" @@ -239,7 +288,22 @@ def _calculate_total_tips_needed(self) -> int: def setup_tip_management(self, protocol): """Setup batch tip management for high-throughput applications.""" total_tips_needed = self._calculate_total_tips_needed() - tip_racks_needed = (total_tips_needed + 95) // 96 + + first_rack_tips = 96 + if self.initial_tip: + try: + first_rack_tips = self._tips_available_from_position(self.initial_tip) + protocol.comment(f"Starting from tip {self.initial_tip} ({first_rack_tips} tips available on first rack)") + except ValueError as e: + raise ValueError(f"Error with initial_tip parameter: {e}") + + # Calculate racks needed, accounting for the partially used first rack + if total_tips_needed <= first_rack_tips: + tip_racks_needed = 1 + else: + remaining_tips = total_tips_needed - first_rack_tips + additional_racks = (remaining_tips + 95) // 96 + tip_racks_needed = 1 + additional_racks available_deck_slots = self.tiprack_positions max_racks_on_deck = len(available_deck_slots) @@ -348,6 +412,9 @@ def run(self, protocol: protocol_api.ProtocolContext): all_tip_racks = self.setup_tip_management(protocol) pipette = protocol.load_instrument(self.pipette, self.pipette_position, tip_racks=all_tip_racks) + if self.initial_tip: + pipette.starting_tip = self.tip_management['on_deck_racks'][0][self.initial_tip] + protocol.comment(f"Pipette will start from tip {self.initial_tip}") # Load common reagents (shared) dd_h2o = self._load_reagent(protocol, module_labware=alum_block, well_position=0, From 508e0a779cc9154b3bf517d2afc3a74c75ac2f92 Mon Sep 17 00:00:00 2001 From: Oscar Rodriguez Date: Thu, 18 Dec 2025 18:12:46 -0700 Subject: [PATCH 089/100] Refactored `transformation.py` to support advanced parameter merging and introduced `run_sbol2transformation_with_params.py` for transformation protocols with enhanced customization. --- .../run_sbol2transformation_with_params.py | 46 ++++ src/pudu/transformation.py | 237 ++++++++++++++---- 2 files changed, 239 insertions(+), 44 deletions(-) create mode 100644 scripts/run_sbol2transformation_with_params.py diff --git a/scripts/run_sbol2transformation_with_params.py b/scripts/run_sbol2transformation_with_params.py new file mode 100644 index 0000000..b4baa33 --- /dev/null +++ b/scripts/run_sbol2transformation_with_params.py @@ -0,0 +1,46 @@ +transformation_data = { + 'list_of_dna': ['GVD0011', 'GVD0013', 'GVD0015'], + 'competent_cells': 'DH5alpha' +} + +advanced_params = { + 'replicates': 3, + 'volume_dna': 25, + 'thermocycler_starting_well': 0, + 'transfer_volume_dna': 5, + 'tube_volume_competent_cell': 150 +} + +from pudu.transformation import HeatShockTransformation +from opentrons import protocol_api + + +# Protocol metadata +metadata = { + 'protocolName': 'PUDU Transformation Test', + 'author': 'Oscar Rodriguez', + 'description': 'Test transformation with new parameter approach', + 'apiLevel': '2.20' +} + + +def run(protocol: protocol_api.ProtocolContext): + """Main protocol execution function""" + + transformation = HeatShockTransformation( + transformation_data=transformation_data, + advanced_params=advanced_params + ) + + # OLD APPROACH: Using kwargs directly (commented out) + # transformation = HeatShockTransformation( + # list_of_dna=['GVD0011', 'GVD0013', 'GVD0015'], + # competent_cells='DH5alpha', + # replicates=3, + # volume_dna=25, + # thermocycler_starting_well=0, + # transfer_volume_dna=5, + # tube_volume_competent_cell=150 + # ) + + transformation.run(protocol) diff --git a/src/pudu/transformation.py b/src/pudu/transformation.py index b254079..6be7324 100644 --- a/src/pudu/transformation.py +++ b/src/pudu/transformation.py @@ -1,5 +1,5 @@ from opentrons import protocol_api -from typing import List, Dict +from typing import List, Dict, Optional from pudu.utils import colors @@ -41,9 +41,11 @@ class Transformation(): The rate of dispense in microliters per second. By default, 1 microliter per second. ''' def __init__(self, - list_of_dna:List = None, + transformation_data: Optional[Dict] = None, + json_params: Optional[Dict] = None, + list_of_dna:Optional[List] = None, volume_dna:float = 20, - competent_cells:str = None, + competent_cells: Optional[str] = None, replicates:int=2, thermocycler_starting_well:int = 0, thermocycler_labware:str = "nest_96_wellplate_100ul_pcr_full_skirt", @@ -63,78 +65,225 @@ def __init__(self, aspiration_rate:float = 0.5, dispense_rate:float = 1, initial_dna_well:int = 0, - water_testing:bool = False + water_testing:bool = False, + **kwargs ): - if list_of_dna is None: - raise ValueError ("Must input a list of DNA strings") - else: - self.list_of_dna = list_of_dna - self.volume_dna = volume_dna - if competent_cells is None: - raise ValueError ("Must input a competent cell strings") - else: - self.competent_cells = competent_cells - self.replicates = replicates - self.thermocycler_starting_well = thermocycler_starting_well - self.thermocycler_labware = thermocycler_labware - self.temperature_module_labware = temperature_module_labware - self.temperature_module_position = temperature_module_position - self.dna_plate = dna_plate - self.dna_plate_position = dna_plate_position - self.use_dna_96plate = use_dna_96plate - self.tiprack_p20_labware = tiprack_p20_labware - self.tiprack_p20_position = tiprack_p20_position - self.tiprack_p200_labware = tiprack_p200_labware - self.tiprack_p200_position = tiprack_p200_position - self.pipette_p20 = pipette_p20 - self.pipette_p20_position = pipette_p20_position - self.pipette_p300 = pipette_p300 - self.pipette_p300_position = pipette_p300_position - self.aspiration_rate = aspiration_rate - self.dispense_rate = dispense_rate - self.initial_dna_well = initial_dna_well - self.water_testing = water_testing + kwargs_params = { + 'list_of_dna': list_of_dna, + 'volume_dna': volume_dna, + 'competent_cells': competent_cells, + 'replicates': replicates, + 'thermocycler_starting_well': thermocycler_starting_well, + 'thermocycler_labware': thermocycler_labware, + 'temperature_module_labware': temperature_module_labware, + 'temperature_module_position': temperature_module_position, + 'dna_plate': dna_plate, + 'dna_plate_position': dna_plate_position, + 'use_dna_96plate': use_dna_96plate, + 'tiprack_p20_labware': tiprack_p20_labware, + 'tiprack_p20_position': tiprack_p20_position, + 'tiprack_p200_labware': tiprack_p200_labware, + 'tiprack_p200_position': tiprack_p200_position, + 'pipette_p20': pipette_p20, + 'pipette_p20_position': pipette_p20_position, + 'pipette_p300': pipette_p300, + 'pipette_p300_position': pipette_p300_position, + 'aspiration_rate': aspiration_rate, + 'dispense_rate': dispense_rate, + 'initial_dna_well': initial_dna_well, + 'water_testing': water_testing + } + kwargs_params.update(kwargs) + + self._merged_params = self._merge_params(transformation_data, json_params, kwargs_params) + + if self._merged_params.get('list_of_dna') is None: + raise ValueError( + "Must input a list of DNA strings (either via transformation_data, advanced_params, or list_of_dna parameter)") + if self._merged_params.get('competent_cells') is None: + raise ValueError( + "Must input a competent cell string (either via transformation_data, advanced_params, or competent_cells parameter)") + + # Set all attributes from merged parameters + self.list_of_dna = self._merged_params['list_of_dna'] + self.volume_dna = self._merged_params['volume_dna'] + self.competent_cells = self._merged_params['competent_cells'] + self.replicates = self._merged_params['replicates'] + self.thermocycler_starting_well = self._merged_params['thermocycler_starting_well'] + self.thermocycler_labware = self._merged_params['thermocycler_labware'] + self.temperature_module_labware = self._merged_params['temperature_module_labware'] + self.temperature_module_position = self._merged_params['temperature_module_position'] + self.dna_plate = self._merged_params['dna_plate'] + self.dna_plate_position = self._merged_params['dna_plate_position'] + self.use_dna_96plate = self._merged_params['use_dna_96plate'] + self.tiprack_p20_labware = self._merged_params['tiprack_p20_labware'] + self.tiprack_p20_position = self._merged_params['tiprack_p20_position'] + self.tiprack_p200_labware = self._merged_params['tiprack_p200_labware'] + self.tiprack_p200_position = self._merged_params['tiprack_p200_position'] + self.pipette_p20 = self._merged_params['pipette_p20'] + self.pipette_p20_position = self._merged_params['pipette_p20_position'] + self.pipette_p300 = self._merged_params['pipette_p300'] + self.pipette_p300_position = self._merged_params['pipette_p300_position'] + self.aspiration_rate = self._merged_params['aspiration_rate'] + self.dispense_rate = self._merged_params['dispense_rate'] + self.initial_dna_well = self._merged_params['initial_dna_well'] + self.water_testing = self._merged_params['water_testing'] + + def _merge_params(self, transformation_data: Optional[Dict], advanced_params: Optional[Dict], kwargs_params: Dict) -> Dict: + """ + Merge parameters with precedence: defaults <- transformation_data <- advanced_params <- kwargs + + Args: + transformation_data: Optional dict containing protocol data (list_of_dna, competent_cells) + advanced_params: Optional dict containing configuration parameters + kwargs_params: Dict of parameters passed as kwargs + + Returns: + Merged parameter dictionary + """ + # Define defaults for all valid parameters + # Includes both Transformation and HeatShockTransformation parameters + valid_params = { + # Transformation base parameters + 'list_of_dna': None, + 'volume_dna': 20, + 'competent_cells': None, + 'replicates': 2, + 'thermocycler_starting_well': 0, + 'thermocycler_labware': 'nest_96_wellplate_100ul_pcr_full_skirt', + 'temperature_module_labware': 'opentrons_24_aluminumblock_nest_1.5ml_snapcap', + 'temperature_module_position': '1', + 'dna_plate': 'nest_96_wellplate_100ul_pcr_full_skirt', + 'dna_plate_position': '2', + 'use_dna_96plate': False, + 'tiprack_p20_labware': 'opentrons_96_tiprack_20ul', + 'tiprack_p20_position': '9', + 'tiprack_p200_labware': 'opentrons_96_filtertiprack_200ul', + 'tiprack_p200_position': '6', + 'pipette_p20': 'p20_single_gen2', + 'pipette_p20_position': 'left', + 'pipette_p300': 'p300_single_gen2', + 'pipette_p300_position': 'right', + 'aspiration_rate': 0.5, + 'dispense_rate': 1, + 'initial_dna_well': 0, + 'water_testing': False, + # HeatShockTransformation-specific parameters + 'transfer_volume_dna': 2, + 'transfer_volume_competent_cell': 20, + 'tube_volume_competent_cell': 100, + 'transfer_volume_recovery_media': 60, + 'tube_volume_recovery_media': 1200, + 'cold_incubation1': None, + 'heat_shock': None, + 'cold_incubation2': None, + 'recovery_incubation': None + } + + # Start with defaults + merged = valid_params.copy() + + # Apply transformation_data (if provided) + if transformation_data is not None: + self._validate_param_structure(transformation_data, valid_params, 'transformation_data') + merged.update(transformation_data) + + # Apply advanced_params (if provided) + if advanced_params is not None: + self._validate_param_structure(advanced_params, valid_params, 'advanced_params') + merged.update(advanced_params) + + # Apply kwargs (highest precedence) - only if they differ from defaults + for key, value in kwargs_params.items(): + if key in valid_params: + # Only override if the value is explicitly different from the default + if value != valid_params[key]: + merged[key] = value + + return merged + + def _validate_param_structure(self, params: Dict, valid_params: Dict, param_name: str): + """ + Validate that all parameters in the dict are recognized. + + Args: + params: Dictionary to validate + valid_params: Dictionary of valid parameter names + param_name: Name of the parameter dict (for error messages) + + Raises: + ValueError: If unknown parameters are found + """ + unknown_params = set(params.keys()) - set(valid_params.keys()) + if unknown_params: + raise ValueError( + f"Unknown parameters in {param_name}: {unknown_params}.\n" + f"Valid parameters are: {set(valid_params.keys())}" + ) class HeatShockTransformation(Transformation): ''' Creates a protocol for automated transformation. ''' def __init__(self, + transformation_data: Optional[Dict] = None, + json_params: Optional[Dict] = None, transfer_volume_dna:float = 2, transfer_volume_competent_cell:float = 20, tube_volume_competent_cell:float =100, transfer_volume_recovery_media:float = 60, tube_volume_recovery_media:float = 1200, #add a bit more to pick it properly - cold_incubation1:Dict = None, - heat_shock:Dict = None, - cold_incubation2:Dict = None, - recovery_incubation:Dict = None, + cold_incubation1:Optional[Dict] = None, + heat_shock:Optional[Dict] = None, + cold_incubation2:Optional[Dict] = None, + recovery_incubation:Optional[Dict] = None, *args, **kwargs): - super().__init__(*args, **kwargs) + super().__init__( + transformation_data=transformation_data, + json_params=json_params, + transfer_volume_dna=transfer_volume_dna, + transfer_volume_competent_cell=transfer_volume_competent_cell, + tube_volume_competent_cell=tube_volume_competent_cell, + transfer_volume_recovery_media=transfer_volume_recovery_media, + tube_volume_recovery_media=tube_volume_recovery_media, + cold_incubation1=cold_incubation1, + heat_shock=heat_shock, + cold_incubation2=cold_incubation2, + recovery_incubation=recovery_incubation, + *args, **kwargs) + + self.transfer_volume_dna = self._merged_params['transfer_volume_dna'] + self.transfer_volume_competent_cell = self._merged_params['transfer_volume_competent_cell'] + self.tube_volume_competent_cell = self._merged_params['tube_volume_competent_cell'] + self.transfer_volume_recovery_media = self._merged_params['transfer_volume_recovery_media'] + self.tube_volume_recovery_media = self._merged_params['tube_volume_recovery_media'] + + cold_incubation1 = self._merged_params['cold_incubation1'] + heat_shock = self._merged_params['heat_shock'] + cold_incubation2 = self._merged_params['cold_incubation2'] + recovery_incubation = self._merged_params['recovery_incubation'] - self.transfer_volume_dna = transfer_volume_dna - self.transfer_volume_competent_cell = transfer_volume_competent_cell - self.tube_volume_competent_cell = tube_volume_competent_cell - self.transfer_volume_recovery_media = transfer_volume_recovery_media - self.tube_volume_recovery_media = tube_volume_recovery_media if cold_incubation1 is None: self.cold_incubation1 = {'temperature': 4, 'hold_time_minutes': 30} else: self.cold_incubation1 = cold_incubation1 + if heat_shock is None: self.heat_shock = {'temperature': 42, 'hold_time_minutes': 1} else: self.heat_shock = heat_shock + if cold_incubation2 is None: self.cold_incubation2 = {'temperature': 4, 'hold_time_minutes': 2} else: self.cold_incubation2 = cold_incubation2 + if recovery_incubation is None: self.recovery_incubation = {'temperature': 37, 'hold_time_minutes': 60} else: self.recovery_incubation = recovery_incubation - self.recovery_incubation = recovery_incubation + self.dict_of_parts_in_temp_mod_position = {} self.dict_of_parts_in_thermocycler = {} From 9ed61f537e321616282745bbb164c7f32f39c671 Mon Sep 17 00:00:00 2001 From: Oscar Rodriguez Date: Thu, 18 Dec 2025 22:05:47 -0700 Subject: [PATCH 090/100] Refactored `plating.py` to support advanced parameter merging via JSON and kwargs, and added `run_sbol2plating_with_params.py` script for plating protocols with enhanced customization. --- scripts/run_sbol2plating_with_params.py | 51 ++++++ src/pudu/plating.py | 216 +++++++++++++++++++----- 2 files changed, 226 insertions(+), 41 deletions(-) create mode 100644 scripts/run_sbol2plating_with_params.py diff --git a/scripts/run_sbol2plating_with_params.py b/scripts/run_sbol2plating_with_params.py new file mode 100644 index 0000000..5fac924 --- /dev/null +++ b/scripts/run_sbol2plating_with_params.py @@ -0,0 +1,51 @@ +from pudu.plating import Plating +from opentrons import protocol_api + + +# Protocol metadata +metadata = { + 'protocolName': 'PUDU Plating Test', + 'author': 'Oscar Rodriguez', + 'description': 'Test plating with new parameter approach', + 'apiLevel': '2.21' +} + + +def run(protocol: protocol_api.ProtocolContext): + """Main protocol execution function""" + + # NEW APPROACH: Using plating_data + advanced_params (JSON-compatible) + plating_data = { + 'bacterium_locations': { + 'A1': 'GVD0011', + 'A2': 'GVD0013', + 'A3': 'GVD0015' + } + } + + advanced_params = { + 'replicates': 2, + 'number_dilutions': 2, + 'volume_colony': 6, + 'thermocycler_starting_well': 0 + } + + plating = Plating( + plating_data=plating_data, + advanced_params=advanced_params + ) + + # OLD APPROACH: Using kwargs directly + # plating = Plating( + # bacterium_locations={ + # 'A1': 'GVD0011', + # 'A2': 'GVD0013', + # 'A3': 'GVD0015' + # }, + # replicates=2, + # number_dilutions=2, + # volume_colony=6, + # thermocycler_starting_well=0 + # ) + + plating.run(protocol) diff --git a/src/pudu/plating.py b/src/pudu/plating.py index 0f7cb8d..a9e6a6c 100644 --- a/src/pudu/plating.py +++ b/src/pudu/plating.py @@ -10,6 +10,8 @@ class Plating(): """ def __init__(self, + plating_data: Optional[Dict] = None, + json_params: Optional[Dict] = None, volume_total_reaction: float = 20, volume_bacteria_transfer: float = 2, volume_colony: float = 4, @@ -17,25 +19,22 @@ def __init__(self, volume_lb: float = 10000, replicates: int = 1, number_dilutions: int = 2, - max_colonies = 192, + max_colonies: int = 192, thermocycler_starting_well: int = 0, - # thermocycler_labware: str = 'nest_96_wellplate_100ul_pcr_full_skirt', thermocycler_labware: str = 'biorad_96_wellplate_200ul_pcr', small_tiprack: str = 'opentrons_96_filtertiprack_20ul', small_tiprack_position: str = '9', - initial_small_tip: str = None, + initial_small_tip: Optional[str] = None, large_tiprack: str = 'opentrons_96_filtertiprack_200ul', large_tiprack_position: str = '1', - initial_large_tip:str = None, + initial_large_tip: Optional[str] = None, small_pipette: str = 'p20_single_gen2', small_pipette_position: str = 'left', large_pipette: str = 'p300_single_gen2', large_pipette_position: str = 'right', - - # dilution_plate: str = 'nest_96_wellplate_200ul_flat', dilution_plate: str = 'nest_96_wellplate_100ul_pcr_full_skirt', dilution_plate_position1: str = '2', dilution_plate_position2: str = '3', @@ -49,42 +48,88 @@ def __init__(self, aspiration_rate: float = 0.5, dispense_rate: float = 1, - bacterium_locations: Dict = None): - - self.volume_total_reaction = volume_total_reaction - self.volume_bacteria_transfer = volume_bacteria_transfer - self.volume_colony = volume_colony - self.volume_lb_transfer = volume_lb_transfer - self.volume_lb = volume_lb - self.replicates = replicates - self.number_dilutions = number_dilutions - self.thermocycler_starting_well = thermocycler_starting_well - self.thermocycler_labware = thermocycler_labware - self.small_tiprack = small_tiprack - self.small_tiprack_position = small_tiprack_position - self.initial_small_tip = initial_small_tip - self.large_tiprack = large_tiprack - self.large_tiprack_position = large_tiprack_position - self.initial_large_tip = initial_large_tip - self.small_pipette = small_pipette - self.small_pipette_position = small_pipette_position - self.large_pipette = large_pipette - self.large_pipette_position = large_pipette_position - self.dilution_plate = dilution_plate - self.dilution_plate_position1 = dilution_plate_position1 - self.dilution_plate_position2 = dilution_plate_position2 - self.agar_plate = agar_plate - self.agar_plate_position1 = agar_plate_position1 - self.agar_plate_position2 = agar_plate_position2 - self.tube_rack = tube_rack - self.tube_rack_position = tube_rack_position - self.lb_tube_position = lb_tube_position - self.aspiration_rate = aspiration_rate - self.dispense_rate = dispense_rate - self.bacterium_locations = bacterium_locations - self.number_constructs = len(bacterium_locations) + bacterium_locations: Optional[Dict] = None, + **kwargs): + + # Collect kwargs for merging + kwargs_params = { + 'volume_total_reaction': volume_total_reaction, + 'volume_bacteria_transfer': volume_bacteria_transfer, + 'volume_colony': volume_colony, + 'volume_lb_transfer': volume_lb_transfer, + 'volume_lb': volume_lb, + 'replicates': replicates, + 'number_dilutions': number_dilutions, + 'max_colonies': max_colonies, + 'thermocycler_starting_well': thermocycler_starting_well, + 'thermocycler_labware': thermocycler_labware, + 'small_tiprack': small_tiprack, + 'small_tiprack_position': small_tiprack_position, + 'initial_small_tip': initial_small_tip, + 'large_tiprack': large_tiprack, + 'large_tiprack_position': large_tiprack_position, + 'initial_large_tip': initial_large_tip, + 'small_pipette': small_pipette, + 'small_pipette_position': small_pipette_position, + 'large_pipette': large_pipette, + 'large_pipette_position': large_pipette_position, + 'dilution_plate': dilution_plate, + 'dilution_plate_position1': dilution_plate_position1, + 'dilution_plate_position2': dilution_plate_position2, + 'agar_plate': agar_plate, + 'agar_plate_position1': agar_plate_position1, + 'agar_plate_position2': agar_plate_position2, + 'tube_rack': tube_rack, + 'tube_rack_position': tube_rack_position, + 'lb_tube_position': lb_tube_position, + 'aspiration_rate': aspiration_rate, + 'dispense_rate': dispense_rate, + 'bacterium_locations': bacterium_locations + } + + kwargs_params.update(kwargs) + + self._merged_params = self._merge_params(plating_data, json_params, kwargs_params) + + if self._merged_params.get('bacterium_locations') is None: + raise ValueError("Must input bacterium_locations (either via plating_data, advanced_params, or bacterium_locations parameter)") + + self.volume_total_reaction = self._merged_params['volume_total_reaction'] + self.volume_bacteria_transfer = self._merged_params['volume_bacteria_transfer'] + self.volume_colony = self._merged_params['volume_colony'] + self.volume_lb_transfer = self._merged_params['volume_lb_transfer'] + self.volume_lb = self._merged_params['volume_lb'] + self.replicates = self._merged_params['replicates'] + self.number_dilutions = self._merged_params['number_dilutions'] + self.thermocycler_starting_well = self._merged_params['thermocycler_starting_well'] + self.thermocycler_labware = self._merged_params['thermocycler_labware'] + self.small_tiprack = self._merged_params['small_tiprack'] + self.small_tiprack_position = self._merged_params['small_tiprack_position'] + self.initial_small_tip = self._merged_params['initial_small_tip'] + self.large_tiprack = self._merged_params['large_tiprack'] + self.large_tiprack_position = self._merged_params['large_tiprack_position'] + self.initial_large_tip = self._merged_params['initial_large_tip'] + self.small_pipette = self._merged_params['small_pipette'] + self.small_pipette_position = self._merged_params['small_pipette_position'] + self.large_pipette = self._merged_params['large_pipette'] + self.large_pipette_position = self._merged_params['large_pipette_position'] + self.dilution_plate = self._merged_params['dilution_plate'] + self.dilution_plate_position1 = self._merged_params['dilution_plate_position1'] + self.dilution_plate_position2 = self._merged_params['dilution_plate_position2'] + self.agar_plate = self._merged_params['agar_plate'] + self.agar_plate_position1 = self._merged_params['agar_plate_position1'] + self.agar_plate_position2 = self._merged_params['agar_plate_position2'] + self.tube_rack = self._merged_params['tube_rack'] + self.tube_rack_position = self._merged_params['tube_rack_position'] + self.lb_tube_position = self._merged_params['lb_tube_position'] + self.aspiration_rate = self._merged_params['aspiration_rate'] + self.dispense_rate = self._merged_params['dispense_rate'] + self.bacterium_locations = self._merged_params['bacterium_locations'] + self.number_constructs = len(self.bacterium_locations) + self.max_colonies = self._merged_params['max_colonies'] + self.total_colonies = self.number_constructs * self.number_dilutions * self.replicates - self.max_colonies = max_colonies + if self.total_colonies > self.max_colonies: raise ValueError(f"Protocol only supports a max of {self.max_colonies} colonies") if self.replicates > 8: @@ -92,6 +137,95 @@ def __init__(self, if self.number_dilutions > 2: raise ValueError("Protocol currently supports a max of 2 dilutions") + def _merge_params(self, plating_data: Optional[Dict], json_params: Optional[Dict], kwargs_params: Dict) -> Dict: + """ + Merge parameters with precedence: defaults <- plating_data <- json_params <- kwargs + + Args: + plating_data: Optional dict containing protocol data (bacterium_locations) + json_params: Optional dict containing configuration parameters + kwargs_params: Dict of parameters passed as kwargs + + Returns: + Merged parameter dictionary + """ + # Define defaults for all valid parameters + valid_params = { + 'volume_total_reaction': 20, + 'volume_bacteria_transfer': 2, + 'volume_colony': 4, + 'volume_lb_transfer': 18, + 'volume_lb': 10000, + 'replicates': 1, + 'number_dilutions': 2, + 'max_colonies': 192, + 'thermocycler_starting_well': 0, + 'thermocycler_labware': 'biorad_96_wellplate_200ul_pcr', + 'small_tiprack': 'opentrons_96_filtertiprack_20ul', + 'small_tiprack_position': '9', + 'initial_small_tip': None, + 'large_tiprack': 'opentrons_96_filtertiprack_200ul', + 'large_tiprack_position': '1', + 'initial_large_tip': None, + 'small_pipette': 'p20_single_gen2', + 'small_pipette_position': 'left', + 'large_pipette': 'p300_single_gen2', + 'large_pipette_position': 'right', + 'dilution_plate': 'nest_96_wellplate_100ul_pcr_full_skirt', + 'dilution_plate_position1': '2', + 'dilution_plate_position2': '3', + 'agar_plate': 'nest_96_wellplate_100ul_pcr_full_skirt', + 'agar_plate_position1': '5', + 'agar_plate_position2': '6', + 'tube_rack': 'opentrons_15_tuberack_falcon_15ml_conical', + 'tube_rack_position': '4', + 'lb_tube_position': 0, + 'aspiration_rate': 0.5, + 'dispense_rate': 1, + 'bacterium_locations': None + } + + # Start with defaults + merged = valid_params.copy() + + # Apply plating_data (if provided) + if plating_data is not None: + self._validate_param_structure(plating_data, valid_params, 'plating_data') + merged.update(plating_data) + + # Apply json_params (if provided) + if json_params is not None: + self._validate_param_structure(json_params, valid_params, 'json_params') + merged.update(json_params) + + # Apply kwargs (highest precedence) - only if they differ from defaults + for key, value in kwargs_params.items(): + if key in valid_params: + # Only override if the value is explicitly different from the default + if value != valid_params[key]: + merged[key] = value + + return merged + + def _validate_param_structure(self, params: Dict, valid_params: Dict, param_name: str): + """ + Validate that all parameters in the dict are recognized. + + Args: + params: Dictionary to validate + valid_params: Dictionary of valid parameter names + param_name: Name of the parameter dict (for error messages) + + Raises: + ValueError: If unknown parameters are found + """ + unknown_params = set(params.keys()) - set(valid_params.keys()) + if unknown_params: + raise ValueError( + f"Unknown parameters in {param_name}: {unknown_params}.\n" + f"Valid parameters are: {set(valid_params.keys())}" + ) + def calculate_plate_layout(self,protocol, plate1, plate2=None): """ Calculate the layout for colonies on plates with dynamic buffer between dilutions From 6b6dba9ba4684b15f1d0354dcfcd8bf2d1bc3b90 Mon Sep 17 00:00:00 2001 From: Oscar Rodriguez Date: Thu, 18 Dec 2025 22:12:54 -0700 Subject: [PATCH 091/100] Refactored `assembly.py` to support advanced parameter merging via `assembly_data` and `assemblies`, added `Optional` type hints, and improved error handling for assembly initialization. --- src/pudu/assembly.py | 102 ++++++++++++++++++++++++++++++++++++++----- 1 file changed, 90 insertions(+), 12 deletions(-) diff --git a/src/pudu/assembly.py b/src/pudu/assembly.py index b3b51d0..f4f1439 100644 --- a/src/pudu/assembly.py +++ b/src/pudu/assembly.py @@ -1,6 +1,6 @@ import xlsxwriter from opentrons import protocol_api -from typing import List, Dict +from typing import List, Dict, Optional from fnmatch import fnmatch from itertools import product import json @@ -14,7 +14,7 @@ class BaseAssembly(ABC): """ def __init__(self, - json_params: Dict = None, + json_params: Optional[Dict] = None, volume_total_reaction: float = 20, volume_part: float = 2, volume_restriction_enzyme: float = 2, @@ -26,10 +26,10 @@ def __init__(self, temperature_module_labware: str = 'opentrons_24_aluminumblock_nest_1.5ml_snapcap', temperature_module_position: str = '1', tiprack_labware: str = 'opentrons_96_tiprack_20ul', - tiprack_positions: List[str] = None, + tiprack_positions: Optional[List[str]] = None, pipette: str = 'p20_single_gen2', pipette_position: str = 'left', - initial_tip: str = None, + initial_tip: Optional[str] = None, aspiration_rate: float = 0.5, dispense_rate: float = 1, take_picture: bool = False, @@ -38,7 +38,7 @@ def __init__(self, output_xlsx: bool = True, protocol_name: str = ''): - params = self._merge_params(json_params,{ + kwargs_params = { 'volume_total_reaction': volume_total_reaction, 'volume_part': volume_part, 'volume_restriction_enzyme': volume_restriction_enzyme, @@ -61,7 +61,9 @@ def __init__(self, 'water_testing': water_testing, 'output_xlsx': output_xlsx, 'protocol_name': protocol_name - }) + } + + params = self._merge_params(json_params, kwargs_params) self.volume_total_reaction = params['volume_total_reaction'] self.volume_part = params['volume_part'] @@ -550,8 +552,33 @@ class Domestication(BaseAssembly): Each part is assembled separately with the backbone to create domesticated parts. """ - def __init__(self, assemblies: List[Dict], *args, **kwargs): - super().__init__(*args, **kwargs) + def __init__(self, + assembly_data: Optional[Dict] = None, + json_params: Optional[str] = None, + assemblies: Optional[List[Dict]] = None, + *args, **kwargs): + """ + Initialize Domestication Assembly protocol. + + Args: + assembly_data: Dict containing 'assemblies' key (new standardized approach) + advanced_params: Optional advanced parameters + assemblies: List of assembly dicts (backward compatibility) + *args, **kwargs: Passed to BaseAssembly + """ + # Handle parameter precedence: assembly_data <- assemblies kwarg + if assembly_data is not None: + if 'assemblies' in assembly_data: + assemblies = assembly_data['assemblies'] + else: + # Allow passing assemblies directly in assembly_data for flexibility + assemblies = assembly_data + + # Validate that assemblies were provided + if assemblies is None: + raise ValueError("Must provide assemblies either via assembly_data or assemblies parameter") + + super().__init__(json_params=json_params, *args, **kwargs) self.assemblies = assemblies self.parts_list = [] self.backbone = "" @@ -742,7 +769,7 @@ def _validate_assembly_requirements(self): f'({len(self.parts_list)} parts × {self.replicates} replicates).' ) - self._validate_reaction_volumes(num_parts=2) + self._validate_reaction_volumes(num_parts=len(self.parts_list)) def _reset_assembly_state(self): """Reset assembly processing state""" @@ -757,7 +784,33 @@ class ManualLoopAssembly(BaseAssembly): Supports Odd/Even pattern detection for automatic enzyme selection. """ - def __init__(self, assemblies: List[Dict], *args, **kwargs): + def __init__(self, + assembly_data: Optional[Dict] = None, + json_params: Optional[str] = None, + assemblies: Optional[List[Dict]] = None, + *args, **kwargs): + """ + Initialize Manual Loop Assembly protocol. + + Args: + assembly_data: Dict containing 'assemblies' key (new standardized approach) + json_params: Optional advanced parameters + assemblies: List of assembly dicts (backward compatibility) + *args, **kwargs: Passed to BaseAssembly + """ + # Handle parameter precedence: assembly_data <- assemblies kwarg + if assembly_data is not None: + if 'assemblies' in assembly_data: + assemblies = assembly_data['assemblies'] + else: + # Allow passing assemblies directly in assembly_data for flexibility + assemblies = assembly_data + + # Validate that assemblies were provided + if assemblies is None: + raise ValueError("Must provide assemblies either via assembly_data or assemblies parameter") + + super().__init__(json_params=json_params, *args, **kwargs) super().__init__(*args, **kwargs) self.assemblies = assemblies self.pattern_odd = 'Odd*' @@ -991,8 +1044,33 @@ class SBOLLoopAssembly(BaseAssembly): Each assembly dictionary represents one specific construct to build. """ - def __init__(self, assemblies: List[Dict], *args, **kwargs): - super().__init__(*args, **kwargs) + def __init__(self, + assembly_data: Optional[Dict] = None, + json_params: Optional[str] = None, + assemblies: Optional[List[Dict]] = None, + *args, **kwargs): + """ + Initialize SBOL Loop Assembly protocol. + + Args: + assembly_data: Dict containing 'assemblies' key (new standardized approach) + advanced_params: Optional advanced parameters + assemblies: List of assembly dicts (backward compatibility) + *args, **kwargs: Passed to BaseAssembly + """ + # Handle parameter precedence: assembly_data <- assemblies kwarg + if assembly_data is not None: + if 'assemblies' in assembly_data: + assemblies = assembly_data['assemblies'] + else: + # Allow passing assemblies directly in assembly_data for flexibility + assemblies = assembly_data + + # Validate that assemblies were provided + if assemblies is None: + raise ValueError("Must provide assemblies either via assembly_data or assemblies parameter") + + super().__init__(json_params=json_params, *args, **kwargs) self.assemblies = assemblies self.parts_set = set() self.backbone_set = set() From 94a36e4588accda0948d7f374c1b7203ec483391 Mon Sep 17 00:00:00 2001 From: Oscar Rodriguez Date: Thu, 18 Dec 2025 22:41:39 -0700 Subject: [PATCH 092/100] Added `generate_protocol.py` to enable protocol generation for assembly, transformation, and plating, with support for JSON-based input, metadata customization, and automatic protocol type detection. --- src/pudu/generate_protocol.py | 439 ++++++++++++++++++++++++++++++++++ 1 file changed, 439 insertions(+) create mode 100644 src/pudu/generate_protocol.py diff --git a/src/pudu/generate_protocol.py b/src/pudu/generate_protocol.py new file mode 100644 index 0000000..2d39f92 --- /dev/null +++ b/src/pudu/generate_protocol.py @@ -0,0 +1,439 @@ +""" +Protocol Generator for PUDU + +Generates standalone Opentrons protocol files from JSON inputs. +The generated protocols can be uploaded directly to the Opentrons App. + +Usage: + # Assembly protocols + python -m pudu.generate_protocol input.json [params.json] -o output.py --protocol-type assembly + + # Transformation protocols + python -m pudu.generate_protocol input.json [params.json] -o output.py --protocol-type transformation + + # Plating protocols + python -m pudu.generate_protocol input.json [params.json] -o output.py --protocol-type plating +""" + +import json +import argparse +import sys +from pathlib import Path +from typing import Dict, List, Optional, Any + +# Default metadata that can be overridden +DEFAULT_METADATA = { + 'protocolName': 'PUDU Protocol', + 'author': 'Researcher', + 'description': 'Automated protocol', + 'apiLevel': '2.20' +} + +# Protocol type configurations +PROTOCOL_CONFIGS = { + 'assembly': { + 'data_key': 'assembly_data', # Unified: all protocols use _data + 'data_param': 'assembly_data', # Parameter name for class init + 'class_map': { + 'SBOL': 'SBOLLoopAssembly', + 'Manual': 'ManualLoopAssembly', + 'Domestication': 'Domestication' + }, + 'module': 'pudu.assembly', + 'metadata_name': 'PUDU Assembly Protocol' + }, + 'transformation': { + 'data_key': 'transformation_data', + 'data_param': 'transformation_data', # Parameter name for class init + 'class_name': 'HeatShockTransformation', + 'module': 'pudu.transformation', + 'metadata_name': 'PUDU Transformation Protocol' + }, + 'plating': { + 'data_key': 'plating_data', + 'data_param': 'plating_data', # Parameter name for class init + 'class_name': 'Plating', + 'module': 'pudu.plating', + 'metadata_name': 'PUDU Plating Protocol' + } +} + +def detect_protocol_type(data) -> tuple[str, Optional[str]]: + """ + Detect the protocol type and assembly subtype from the data structure. + + Args: + data: Protocol data (can be dict or list) + + Returns: + Tuple of (protocol_type, assembly_subtype) + - protocol_type: 'assembly', 'transformation', or 'plating' + - assembly_subtype: 'SBOL', 'Manual', 'Domestication', or None + """ + # Handle legacy format: bare list of assemblies + if isinstance(data, list): + if not data: + raise ValueError("Empty data provided") + + first_item = data[0] + + # Check for SBOL format + sbol_keys = {'Product', 'Backbone', 'PartsList', 'Restriction Enzyme'} + if sbol_keys.issubset(set(first_item.keys())): + return 'assembly', 'SBOL' + + # Check for Manual format + if 'receiver' in first_item: + return 'assembly', 'Manual' + + # Check for Domestication format + if 'parts' in first_item and 'backbone' in first_item and 'restriction_enzyme' in first_item: + return 'assembly', 'Domestication' + + # Default to SBOL + return 'assembly', 'SBOL' + + # Handle new format: wrapped dict + if isinstance(data, dict): + # Check for assembly types + if 'assemblies' in data: + assemblies = data['assemblies'] + if not assemblies: + raise ValueError("No assemblies provided") + + first_assembly = assemblies[0] + + # Check for SBOL format + sbol_keys = {'Product', 'Backbone', 'PartsList', 'Restriction Enzyme'} + if sbol_keys.issubset(set(first_assembly.keys())): + return 'assembly', 'SBOL' + + # Check for Manual format + if 'receiver' in first_assembly: + return 'assembly', 'Manual' + + # Check for Domestication format + if 'parts' in first_assembly and 'backbone' in first_assembly and 'restriction_enzyme' in first_assembly: + return 'assembly', 'Domestication' + + # Default to SBOL + return 'assembly', 'SBOL' + + # Check for transformation + if 'list_of_dna' in data and 'competent_cells' in data: + return 'transformation', None + + # Check for plating + if 'bacterium_locations' in data: + return 'plating', None + + raise ValueError("Unable to detect protocol type. Please specify --protocol-type explicitly.") + +def format_python_value(value, indent_level=0): + """ + Format a Python value for code generation with proper indentation. + + Args: + value: The value to format (dict, list, str, int, float, bool, None) + indent_level: Current indentation level + + Returns: + Formatted string representation + """ + indent = ' ' * indent_level + + if value is None: + return 'None' + elif isinstance(value, bool): + return str(value) + elif isinstance(value, (int, float)): + return str(value) + elif isinstance(value, str): + # Escape quotes and use repr for safety + return repr(value) + elif isinstance(value, list): + if not value: + return '[]' + # Format list with proper indentation + items = [format_python_value(item, indent_level + 1) for item in value] + if all(isinstance(item, str) for item in value): + # Simple list of strings - keep on one line if short + formatted = ', '.join(items) + if len(formatted) < 80: + return f'[{formatted}]' + # Multi-line list + formatted_items = ',\n'.join(f'{indent} {item}' for item in items) + return f'[\n{formatted_items}\n{indent}]' + elif isinstance(value, dict): + if not value: + return '{}' + # Format dict with proper indentation + items = [] + for key, val in value.items(): + formatted_key = repr(key) + formatted_val = format_python_value(val, indent_level + 1) + items.append(f'{indent} {formatted_key}: {formatted_val}') + return '{\n' + ',\n'.join(items) + f'\n{indent}' + '}' + else: + return repr(value) + +def generate_protocol( + protocol_data: Any, + json_params: Optional[Dict] = None, + metadata: Optional[Dict] = None, + protocol_type: str = 'assembly', + assembly_subtype: Optional[str] = None +) -> str: + """ + Generate a complete Opentrons protocol file as a string. + + Args: + protocol_data: Protocol data (list for assemblies, or dict for other protocols) + json_params: Optional advanced parameters dictionary + metadata: Optional metadata dictionary (merged with defaults) + protocol_type: Type of protocol ('assembly', 'transformation', 'plating') + assembly_subtype: Subtype for assembly protocols ('SBOL', 'Manual', 'Domestication') + + Returns: + Complete protocol file as a string + """ + # Get protocol configuration + if protocol_type not in PROTOCOL_CONFIGS: + raise ValueError(f"Unknown protocol type: {protocol_type}") + + config = PROTOCOL_CONFIGS[protocol_type] + + # Merge metadata with defaults + final_metadata = DEFAULT_METADATA.copy() + final_metadata['protocolName'] = config['metadata_name'] + if metadata: + final_metadata.update(metadata) + + # Determine class name and data key + data_key = config['data_key'] + + if protocol_type == 'assembly': + if assembly_subtype is None: + raise ValueError("assembly_subtype required for assembly protocols") + class_name = config['class_map'].get(assembly_subtype, 'SBOLLoopAssembly') + + # Handle both legacy (list) and new (dict) formats + if isinstance(protocol_data, list): + actual_data = protocol_data + elif isinstance(protocol_data, dict) and 'assemblies' in protocol_data: + actual_data = protocol_data['assemblies'] + else: + actual_data = protocol_data + else: + class_name = config['class_name'] + actual_data = protocol_data + + module = config['module'] + + # Build the protocol file + lines = [] + + # Imports + lines.append(f"from {module} import {class_name}") + lines.append("from opentrons import protocol_api") + lines.append("") + lines.append("") + + # Assemblies + lines.append(f"# Protocol data") + lines.append(f"{data_key} = {format_python_value(actual_data)}") + lines.append("") + + # Advanced params (if provided) + if json_params: + lines.append("# Advanced parameters for protocol customization") + lines.append(f"json_params = {format_python_value(json_params)}") + lines.append("") + + # Metadata + lines.append("# Protocol metadata") + lines.append(f"metadata = {format_python_value(final_metadata)}") + lines.append("") + lines.append("") + + # Run function + lines.append("def run(protocol: protocol_api.ProtocolContext):") + lines.append(' """Main protocol execution function"""') + lines.append("") + + # Protocol initialization - unified data-driven approach + # All protocols now use _data + advanced_params pattern + data_param = config['data_param'] + + if json_params: + lines.append(f" protocol_instance = {class_name}(") + lines.append(f" {data_param}={data_key},") + lines.append(" json_params=json_params") + lines.append(" )") + else: + lines.append(f" protocol_instance = {class_name}({data_param}={data_key})") + + lines.append(" protocol_instance.run(protocol)") + lines.append("") + + return '\n'.join(lines) + +def main(): + """Command-line interface for protocol generation""" + parser = argparse.ArgumentParser( + description='Generate Opentrons protocol files from JSON inputs', + formatter_class=argparse.RawDescriptionHelpFormatter, + epilog=""" +Examples: + # Generate assembly protocol (auto-detect type) + python -m pudu.generate_protocol data.json params.json -o protocol.py --protocol-type assembly + + # Generate transformation protocol + python -m pudu.generate_protocol transformation.json params.json -o protocol.py --protocol-type transformation + + # Generate plating protocol + python -m pudu.generate_protocol plating.json -o protocol.py --protocol-type plating + + # Auto-detect protocol type + python -m pudu.generate_protocol data.json -o protocol.py + + # Specify assembly subtype explicitly + python -m pudu.generate_protocol assemblies.json -o protocol.py --protocol-type assembly --assembly-type Manual + """ + ) + + parser.add_argument( + 'input', + type=Path, + help='Path to protocol data JSON file' + ) + + parser.add_argument( + 'json_params', + type=Path, + nargs='?', + default=None, + help='Path to advanced parameters JSON file (optional)' + ) + + parser.add_argument( + '-o', '--output', + type=Path, + required=True, + help='Output protocol file path (e.g., protocol.py)' + ) + + parser.add_argument( + '--protocol-type', + choices=['assembly', 'transformation', 'plating'], + default=None, + help='Protocol type (default: auto-detect)' + ) + + parser.add_argument( + '--assembly-type', + choices=['SBOL', 'Manual', 'Domestication'], + default=None, + help='Assembly subtype for assembly protocols (default: auto-detect)' + ) + + parser.add_argument( + '--metadata', + type=Path, + default=None, + help='Path to metadata JSON file (optional)' + ) + + args = parser.parse_args() + + # Load protocol data + try: + with open(args.input, 'r') as f: + protocol_data = json.load(f) + except FileNotFoundError: + print(f"Error: Input file not found: {args.input}", file=sys.stderr) + sys.exit(1) + except json.JSONDecodeError as e: + print(f"Error: Invalid JSON in input file: {e}", file=sys.stderr) + sys.exit(1) + + # Load advanced params if provided + json_params = None + if args.json_params: + try: + with open(args.json_params, 'r') as f: + json_params = json.load(f) + except FileNotFoundError: + print(f"Error: Advanced params file not found: {args.json_params}", file=sys.stderr) + sys.exit(1) + except json.JSONDecodeError as e: + print(f"Error: Invalid JSON in advanced params file: {e}", file=sys.stderr) + sys.exit(1) + + # Load metadata if provided + metadata = None + if args.metadata: + try: + with open(args.metadata, 'r') as f: + metadata = json.load(f) + except FileNotFoundError: + print(f"Error: Metadata file not found: {args.metadata}", file=sys.stderr) + sys.exit(1) + except json.JSONDecodeError as e: + print(f"Error: Invalid JSON in metadata file: {e}", file=sys.stderr) + sys.exit(1) + + # Detect or use specified assembly type + if args.protocol_type: + protocol_type = args.protocol_type + assembly_subtype = args.assembly_type # May be None + + # If assembly type and no subtype specified, try to detect + if protocol_type == 'assembly' and assembly_subtype is None: + try: + _, assembly_subtype = detect_protocol_type(protocol_data) + print(f"Detected assembly subtype: {assembly_subtype}") + except ValueError as e: + print(f"Error: {e}", file=sys.stderr) + sys.exit(1) + else: + try: + protocol_type, assembly_subtype = detect_protocol_type(protocol_data) + print(f"Detected protocol type: {protocol_type}", end="") + if assembly_subtype: + print(f" ({assembly_subtype})") + else: + print() + except ValueError as e: + print(f"Error: {e}", file=sys.stderr) + sys.exit(1) + + # Generate protocol + try: + protocol_code = generate_protocol( + protocol_data=protocol_data, + json_params=json_params, + metadata=metadata, + protocol_type=protocol_type, + assembly_subtype=assembly_subtype + ) + except Exception as e: + print(f"Error generating protocol: {e}", file=sys.stderr) + sys.exit(1) + + # Write output + try: + with open(args.output, 'w') as f: + f.write(protocol_code) + print(f"✓ Protocol generated successfully: {args.output}") + print(f" Protocol type: {protocol_type}") + if assembly_subtype: + print(f" Assembly subtype: {assembly_subtype}") + if json_params: + print(f" Advanced params: {len(json_params)} parameters") + except IOError as e: + print(f"Error writing output file: {e}", file=sys.stderr) + sys.exit(1) + +if __name__ == '__main__': + main() From cdc79e61665a18fcde761ab62a9695882752817a Mon Sep 17 00:00:00 2001 From: Oscar Rodriguez Date: Thu, 18 Dec 2025 23:59:22 -0700 Subject: [PATCH 093/100] Added transformation and plating input JSON export functionality for simulation, improved DNA and combination naming consistency for downstream protocols. --- src/pudu/assembly.py | 36 +++++++++++++++++++++++++++++++++--- src/pudu/transformation.py | 28 ++++++++++++++++++++++++++++ 2 files changed, 61 insertions(+), 3 deletions(-) diff --git a/src/pudu/assembly.py b/src/pudu/assembly.py index f4f1439..d62a845 100644 --- a/src/pudu/assembly.py +++ b/src/pudu/assembly.py @@ -485,6 +485,11 @@ def run(self, protocol: protocol_api.ProtocolContext): self.get_xlsx_output(self.protocol_name) except Exception as e: protocol.comment(f"Could not create Excel file: {e}") + # Export transformation input for next protocol (simulation only) + try: + self._export_transformation_input(protocol) + except Exception as e: + protocol.comment(f"Could not export transformation input: {e}") # Output results print('Parts and reagents in temp_module') @@ -495,6 +500,30 @@ def run(self, protocol: protocol_api.ProtocolContext): print(self.dna_list_for_transformation_protocol) # Helper methods (shared) + def _export_transformation_input(self, protocol, competent_cells='DH5alpha'): + """ + Export transformation input JSON during simulation. + + Args: + protocol: Protocol context + competent_cells: Competent cells to use for transformation (default: DH5alpha) + """ + + transformation_input = { + 'list_of_dna': self.dna_list_for_transformation_protocol, + 'competent_cells': competent_cells + } + + output_path = 'transformation_input.json' + with open(output_path, 'w') as f: + json.dump(transformation_input, f, indent=2) + + protocol.comment("\n" + "="*70) + protocol.comment(f"Generated {output_path} for next protocol") + protocol.comment(f" DNA constructs: {len(self.dna_list_for_transformation_protocol)}") + protocol.comment(f" Competent cells: {competent_cells}") + protocol.comment("="*70) + def _load_reagent(self, protocol, module_labware, well_position, name, description=None, volume=1000, color_index=None): """Load a reagent or DNA part onto the temperature module.""" @@ -720,7 +749,7 @@ def _process_assembly_combinations(self, protocol, pipette, thermo_plate, alum_b # Track assembly assembly_name = f"Part: {part}, Replicate: {r + 1}" self.dict_of_parts_in_thermocycler[assembly_name] = dest_well_name - self.dna_list_for_transformation_protocol.append((self.backbone, part, f'replicate_{r + 1}')) + self.dna_list_for_transformation_protocol.append(f"{part}_rep{r + 1}") thermocycler_well_counter += 1 @@ -1032,7 +1061,8 @@ def _process_combinations(self, protocol, pipette, combinations, restriction_enz # Track combination self.dict_of_parts_in_thermocycler[f"Replicate: {r + 1}, Combination: {combination}"] = dest_well_name - self.dna_list_for_transformation_protocol.append(combination + (f'replicate_{r + 1}',)) + combination_name = "_".join(combination) + self.dna_list_for_transformation_protocol.append(f"{combination_name}_rep{r + 1}") thermocycler_well_counter += 1 return thermocycler_well_counter @@ -1193,7 +1223,7 @@ def _process_assembly_combinations(self, protocol, pipette, thermo_plate, alum_b # Track assembly self.dict_of_parts_in_thermocycler[f"Replicate: {r + 1}, Product: {product_name}"] = dest_well_name - self.dna_list_for_transformation_protocol.append(tuple(parts + [f'replicate_{r + 1}'])) + self.dna_list_for_transformation_protocol.append(f"{product_name}_rep{r + 1}") thermocycler_well_counter += 1 return thermocycler_well_counter diff --git a/src/pudu/transformation.py b/src/pudu/transformation.py index 6be7324..b12b0b8 100644 --- a/src/pudu/transformation.py +++ b/src/pudu/transformation.py @@ -287,6 +287,27 @@ def __init__(self, self.dict_of_parts_in_temp_mod_position = {} self.dict_of_parts_in_thermocycler = {} + def _export_plating_input(self, protocol): + """ + Export plating input JSON during simulation. + Args: + protocol: Protocol context + """ + import json + + plating_input = { + 'bacterium_locations': self.dict_of_parts_in_thermocycler + } + + output_path = 'plating_input.json' + with open(output_path, 'w') as f: + json.dump(plating_input, f, indent=2) + + protocol.comment("\n" + "="*70) + protocol.comment(f"Generated {output_path} for next protocol") + protocol.comment(f" Bacteria locations: {len(self.dict_of_parts_in_thermocycler)}") + protocol.comment("="*70) + def liquid_transfer(self, protocol, pipette, volume, source, dest, asp_rate: float = 0.5, disp_rate: float = 1.0, blow_out: bool = True, touch_tip: bool = False, @@ -395,6 +416,13 @@ def run(self, protocol: protocol_api.ProtocolContext): if not self.water_testing: thermocycler_module.execute_profile(steps=recovery, repetitions=1, block_max_volume=30) + # Export plating input for next protocol (simulation only) + if protocol.is_simulating(): + try: + self._export_plating_input(protocol) + except Exception as e: + protocol.comment(f"Could not export plating input: {e}") + # output print('Strain and media tube in temp_mod') print(self.dict_of_parts_in_temp_mod_position) From 3e3c56679ca3d15f423537317b32ea1ed4e3e9ce Mon Sep 17 00:00:00 2001 From: Oscar Rodriguez Date: Thu, 18 Dec 2025 23:59:50 -0700 Subject: [PATCH 094/100] Updated `apiLevel` to 2.21 in `generate_protocol.py`. --- src/pudu/generate_protocol.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pudu/generate_protocol.py b/src/pudu/generate_protocol.py index 2d39f92..7892890 100644 --- a/src/pudu/generate_protocol.py +++ b/src/pudu/generate_protocol.py @@ -26,7 +26,7 @@ 'protocolName': 'PUDU Protocol', 'author': 'Researcher', 'description': 'Automated protocol', - 'apiLevel': '2.20' + 'apiLevel': '2.21' } # Protocol type configurations From 8a2b1ae2ca85d5925b71c42216bf5a3c22a327bc Mon Sep 17 00:00:00 2001 From: Oscar Rodriguez Date: Thu, 15 Jan 2026 20:59:00 -0700 Subject: [PATCH 095/100] Fixed hardcoded `num_parts=2` in `_validate_reaction_volumes` within `assembly.py` and removed redundant initialization in constructor. --- src/pudu/assembly.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pudu/assembly.py b/src/pudu/assembly.py index d62a845..4a07163 100644 --- a/src/pudu/assembly.py +++ b/src/pudu/assembly.py @@ -798,7 +798,7 @@ def _validate_assembly_requirements(self): f'({len(self.parts_list)} parts × {self.replicates} replicates).' ) - self._validate_reaction_volumes(num_parts=len(self.parts_list)) + self._validate_reaction_volumes(num_parts=2) def _reset_assembly_state(self): """Reset assembly processing state""" @@ -840,7 +840,7 @@ def __init__(self, raise ValueError("Must provide assemblies either via assembly_data or assemblies parameter") super().__init__(json_params=json_params, *args, **kwargs) - super().__init__(*args, **kwargs) + self.assemblies = assemblies self.pattern_odd = 'Odd*' self.pattern_even = 'Even*' From 24b961c4af1b4eb211ecc06ec43769b200800b75 Mon Sep 17 00:00:00 2001 From: Oscar Rodriguez Date: Wed, 4 Mar 2026 23:34:20 -0700 Subject: [PATCH 096/100] Refactor HeatShockTransformation transfer logic and add protocol generator improvements MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit transformation.py: - Introduce self.plasmid_name_to_wells (name → [well_obj, ...]) populated at load time, replacing all positional/enumeration-based DNA well lookups - Introduce self.location_replicates derived from plasmid_locations, unifying 96-well plate and temp module code paths into a single loop structure - Rewrite _transfer_competent_cells with sequential well_index counter and per-chassis chassis_reaction_count dict for correct tube selection across multiple chassis types - Rewrite _transfer_DNA as a unified single method with no plate/temp module branching; uses self.transformations as ground truth throughout - _load_dna_into_dna_plate / _load_dna_into_temp_module now populate plasmid_name_to_wells instead of returning DNA_wells - _load_reagents_96plate / _load_reagents_temp_module return 2-tuple; _validate_protocol accounts for location_replicates in reaction counts - Add strain as first entry in dict_of_parts_in_thermocycler per well - Rewrite Transformation base class docstring to match current parameters; add comprehensive HeatShockTransformation docstring for all subclass params generate_protocol.py: - Add generate_param_reference() to append a commented parameter table and full docstrings to every generated protocol for last-minute editing - Add --plasmid-locations CLI flag and plasmid_locations support throughout - Raise line-length threshold from 80 to 100 for single-line list formatting - Improve transformation protocol auto-detection for bare list format assembly.py: - Initialize self.product_uri_to_wells = {} Co-Authored-By: Claude Sonnet 4.5 --- src/pudu/assembly.py | 33 +- src/pudu/generate_protocol.py | 190 ++++++++++- src/pudu/transformation.py | 627 +++++++++++++++++++++++++--------- 3 files changed, 654 insertions(+), 196 deletions(-) diff --git a/src/pudu/assembly.py b/src/pudu/assembly.py index 4a07163..b5ab761 100644 --- a/src/pudu/assembly.py +++ b/src/pudu/assembly.py @@ -95,6 +95,7 @@ def __init__(self, self.dict_of_parts_in_temp_mod_position = {} self.dict_of_parts_in_thermocycler = {} self.dna_list_for_transformation_protocol = [] + self.product_uri_to_wells = {} self.xlsx_output = None #Initialize Camera @@ -500,28 +501,18 @@ def run(self, protocol: protocol_api.ProtocolContext): print(self.dna_list_for_transformation_protocol) # Helper methods (shared) - def _export_transformation_input(self, protocol, competent_cells='DH5alpha'): + def _export_transformation_input(self, protocol): """ - Export transformation input JSON during simulation. - - Args: - protocol: Protocol context - competent_cells: Competent cells to use for transformation (default: DH5alpha) + Export plasmid location JSON during simulation for use by transformation protocol. + Format: { "product_uri": ["well1", "well2", ...], ... } """ - - transformation_input = { - 'list_of_dna': self.dna_list_for_transformation_protocol, - 'competent_cells': competent_cells - } - output_path = 'transformation_input.json' with open(output_path, 'w') as f: - json.dump(transformation_input, f, indent=2) + json.dump(self.product_uri_to_wells, f, indent=2) protocol.comment("\n" + "="*70) - protocol.comment(f"Generated {output_path} for next protocol") - protocol.comment(f" DNA constructs: {len(self.dna_list_for_transformation_protocol)}") - protocol.comment(f" Competent cells: {competent_cells}") + protocol.comment(f"Generated {output_path} for transformation protocol") + protocol.comment(f" Products: {len(self.product_uri_to_wells)}") protocol.comment("="*70) def _load_reagent(self, protocol, module_labware, well_position, name, description=None, @@ -1133,7 +1124,8 @@ def process_assemblies(self): assembly_combo = { 'parts': [backbone_name] + part_names, # Include backbone as first part 'enzyme': enzyme_name, - 'product': product_name + 'product': product_name, + 'product_uri': assembly["Product"] } self.assembly_combinations.append(assembly_combo) @@ -1224,6 +1216,13 @@ def _process_assembly_combinations(self, protocol, pipette, thermo_plate, alum_b # Track assembly self.dict_of_parts_in_thermocycler[f"Replicate: {r + 1}, Product: {product_name}"] = dest_well_name self.dna_list_for_transformation_protocol.append(f"{product_name}_rep{r + 1}") + + # Track URI -> well locations for transformation export + product_uri = assembly_combo['product_uri'] + if product_uri not in self.product_uri_to_wells: + self.product_uri_to_wells[product_uri] = [] + self.product_uri_to_wells[product_uri].append(dest_well_name) + thermocycler_well_counter += 1 return thermocycler_well_counter diff --git a/src/pudu/generate_protocol.py b/src/pudu/generate_protocol.py index 7892890..dc89474 100644 --- a/src/pudu/generate_protocol.py +++ b/src/pudu/generate_protocol.py @@ -70,14 +70,18 @@ def detect_protocol_type(data) -> tuple[str, Optional[str]]: - protocol_type: 'assembly', 'transformation', or 'plating' - assembly_subtype: 'SBOL', 'Manual', 'Domestication', or None """ - # Handle legacy format: bare list of assemblies + # Handle bare list formats if isinstance(data, list): if not data: raise ValueError("Empty data provided") first_item = data[0] - # Check for SBOL format + # Check for transformation format (Strain/Chassis/Plasmids) + if 'Strain' in first_item and 'Chassis' in first_item and 'Plasmids' in first_item: + return 'transformation', None + + # Check for SBOL assembly format sbol_keys = {'Product', 'Backbone', 'PartsList', 'Restriction Enzyme'} if sbol_keys.issubset(set(first_item.keys())): return 'assembly', 'SBOL' @@ -119,8 +123,8 @@ def detect_protocol_type(data) -> tuple[str, Optional[str]]: # Default to SBOL return 'assembly', 'SBOL' - # Check for transformation - if 'list_of_dna' in data and 'competent_cells' in data: + # Check for transformation (new SBOL format: list with Strain/Chassis/Plasmids) + if isinstance(data, list) and data and 'Strain' in data[0] and 'Chassis' in data[0] and 'Plasmids' in data[0]: return 'transformation', None # Check for plating @@ -159,7 +163,7 @@ def format_python_value(value, indent_level=0): if all(isinstance(item, str) for item in value): # Simple list of strings - keep on one line if short formatted = ', '.join(items) - if len(formatted) < 80: + if len(formatted) < 100: return f'[{formatted}]' # Multi-line list formatted_items = ',\n'.join(f'{indent} {item}' for item in items) @@ -177,12 +181,128 @@ def format_python_value(value, indent_level=0): else: return repr(value) +def _format_annotation(ann) -> str: + """Format a type annotation as a clean string for display in comments.""" + import inspect + if ann is inspect.Parameter.empty: + return '' + if hasattr(ann, '__name__'): + return ann.__name__ + # Clean up typing generics: typing.Optional[typing.Dict] -> Optional[Dict] + return str(ann).replace('typing.', '') + + +def generate_param_reference(protocol_type: str, class_name: str, module_str: str) -> str: + """ + Generate a commented parameter reference block for the end of the protocol file. + + Dynamically imports the protocol class and uses inspect to extract the full + __init__ signature and class docstrings, formatted as comments so users can + see all available parameters when making last-minute edits before running on + the robot. + + Args: + protocol_type: Protocol type string (e.g. 'transformation') + class_name: Protocol class name (e.g. 'HeatShockTransformation') + module_str: Fully-qualified module path (e.g. 'pudu.transformation') + + Returns: + Commented parameter reference block as a string, or a short error comment + if the class cannot be imported. + """ + try: + import importlib + import inspect + + mod = importlib.import_module(module_str) + cls = getattr(mod, class_name) + + lines = [] + lines.append("") + lines.append("") + lines.append("# " + "=" * 70) + lines.append(f"# PARAMETER REFERENCE — {class_name}") + lines.append("#") + lines.append("# To customize your protocol, add any of the parameters below") + lines.append(f"# to the {class_name}() constructor call in run() above.") + lines.append("# Example: protocol_instance = " + class_name + "(") + lines.append(f"# {PROTOCOL_CONFIGS[protocol_type]['data_param']}={PROTOCOL_CONFIGS[protocol_type]['data_key']},") + lines.append("# replicates=3,") + lines.append("# initial_tip='B1',") + lines.append("# )") + lines.append("# " + "=" * 70) + + # Collect all __init__ params walking the MRO from most-specific to base. + # Use an ordered dict so subclass params appear first. + seen_params = set() + mro_params = [] # list of (class, [(name, default, annotation), ...]) + + for klass in cls.__mro__: + if klass is object: + continue + try: + sig = inspect.signature(klass.__init__) + except (ValueError, TypeError): + continue + + klass_params = [] + for name, param in sig.parameters.items(): + if name in ('self', 'args', 'kwargs') or name in seen_params: + continue + seen_params.add(name) + default = param.default if param.default is not inspect.Parameter.empty else '(required)' + ann = _format_annotation(param.annotation) + klass_params.append((name, default, ann)) + + if klass_params: + mro_params.append((klass.__name__, klass_params)) + + # Build parameter table — group by class + if mro_params: + # Determine column widths across all params + all_param_entries = [(n, d, a) for _, params in mro_params for n, d, a in params] + max_name = max(len(n) for n, _, _ in all_param_entries) + max_type = max((len(a) for _, _, a in all_param_entries if a), default=0) + + for klass_name, params in mro_params: + lines.append("#") + lines.append(f"# [{klass_name}]") + for name, default, ann in params: + type_col = ann.ljust(max_type) if ann else ' ' * max_type + default_repr = repr(default) if not isinstance(default, str) else default + lines.append(f"# {name:<{max_name}} {type_col} = {default_repr}") + + # Append full docstrings for detailed descriptions + lines.append("#") + lines.append("# " + "-" * 70) + lines.append("# Full parameter descriptions:") + + seen_docs: set = set() + for klass in cls.__mro__: + if klass is object: + continue + doc = inspect.getdoc(klass) + if not doc or doc in seen_docs: + continue + seen_docs.add(doc) + lines.append("#") + lines.append(f"# [{klass.__name__}]") + for doc_line in doc.split('\n'): + lines.append(f"# {doc_line}" if doc_line.strip() else "#") + + return '\n'.join(lines) + + except Exception as e: + return f"\n\n# (Parameter reference unavailable: {e})" + + def generate_protocol( protocol_data: Any, json_params: Optional[Dict] = None, metadata: Optional[Dict] = None, protocol_type: str = 'assembly', - assembly_subtype: Optional[str] = None + assembly_subtype: Optional[str] = None, + plasmid_locations: Optional[Dict] = None ) -> str: """ Generate a complete Opentrons protocol file as a string. @@ -193,6 +313,7 @@ def generate_protocol( metadata: Optional metadata dictionary (merged with defaults) protocol_type: Type of protocol ('assembly', 'transformation', 'plating') assembly_subtype: Subtype for assembly protocols ('SBOL', 'Manual', 'Domestication') + plasmid_locations: Optional dict mapping plasmid URIs to well locations (from assembly output) Returns: Complete protocol file as a string @@ -239,11 +360,17 @@ def generate_protocol( lines.append("") lines.append("") - # Assemblies + # Protocol data lines.append(f"# Protocol data") lines.append(f"{data_key} = {format_python_value(actual_data)}") lines.append("") + # Plasmid locations (transformation only, from assembly output) + if plasmid_locations is not None: + lines.append("# Plasmid well locations from assembly protocol output") + lines.append(f"plasmid_locations = {format_python_value(plasmid_locations)}") + lines.append("") + # Advanced params (if provided) if json_params: lines.append("# Advanced parameters for protocol customization") @@ -265,17 +392,30 @@ def generate_protocol( # All protocols now use _data + advanced_params pattern data_param = config['data_param'] + # Build constructor arguments + constructor_args = [f"{data_param}={data_key}"] + if plasmid_locations is not None: + constructor_args.append("plasmid_locations=plasmid_locations") if json_params: + constructor_args.append("json_params=json_params") + + if len(constructor_args) > 1: lines.append(f" protocol_instance = {class_name}(") - lines.append(f" {data_param}={data_key},") - lines.append(" json_params=json_params") + for i, arg in enumerate(constructor_args): + comma = "," if i < len(constructor_args) - 1 else "" + lines.append(f" {arg}{comma}") lines.append(" )") else: - lines.append(f" protocol_instance = {class_name}({data_param}={data_key})") + lines.append(f" protocol_instance = {class_name}({constructor_args[0]})") lines.append(" protocol_instance.run(protocol)") lines.append("") + # Parameter reference block — appended as comments for last-minute editing + param_ref = generate_param_reference(protocol_type, class_name, module) + if param_ref: + lines.append(param_ref) + return '\n'.join(lines) def main(): @@ -288,8 +428,11 @@ def main(): # Generate assembly protocol (auto-detect type) python -m pudu.generate_protocol data.json params.json -o protocol.py --protocol-type assembly - # Generate transformation protocol - python -m pudu.generate_protocol transformation.json params.json -o protocol.py --protocol-type transformation + # Generate transformation protocol with assembly output + python -m pudu.generate_protocol synbiosuite.json params.json -o protocol.py --protocol-type transformation --plasmid-locations transformation_input.json + + # Generate transformation protocol without prior assembly (manual input) + python -m pudu.generate_protocol synbiosuite.json params.json -o protocol.py --protocol-type transformation # Generate plating protocol python -m pudu.generate_protocol plating.json -o protocol.py --protocol-type plating @@ -337,6 +480,13 @@ def main(): help='Assembly subtype for assembly protocols (default: auto-detect)' ) + parser.add_argument( + '--plasmid-locations', + type=Path, + default=None, + help='Path to plasmid locations JSON file from assembly simulation (transformation protocols only)' + ) + parser.add_argument( '--metadata', type=Path, @@ -370,6 +520,19 @@ def main(): print(f"Error: Invalid JSON in advanced params file: {e}", file=sys.stderr) sys.exit(1) + # Load plasmid locations if provided + plasmid_locations = None + if args.plasmid_locations: + try: + with open(args.plasmid_locations, 'r') as f: + plasmid_locations = json.load(f) + except FileNotFoundError: + print(f"Error: Plasmid locations file not found: {args.plasmid_locations}", file=sys.stderr) + sys.exit(1) + except json.JSONDecodeError as e: + print(f"Error: Invalid JSON in plasmid locations file: {e}", file=sys.stderr) + sys.exit(1) + # Load metadata if provided metadata = None if args.metadata: @@ -415,7 +578,8 @@ def main(): json_params=json_params, metadata=metadata, protocol_type=protocol_type, - assembly_subtype=assembly_subtype + assembly_subtype=assembly_subtype, + plasmid_locations=plasmid_locations ) except Exception as e: print(f"Error generating protocol: {e}", file=sys.stderr) diff --git a/src/pudu/transformation.py b/src/pudu/transformation.py index 9debca3..b90ea0e 100644 --- a/src/pudu/transformation.py +++ b/src/pudu/transformation.py @@ -5,47 +5,76 @@ class Transformation(): ''' - Creates a protocol for automated transformation. + Base class for automated transformation protocols on the Opentrons OT-2. + + Handles loading transformation data, validating parameters, and providing + shared utilities used by all transformation subclasses. Subclasses implement + the specific thermocycler workflow (e.g. heat shock). Attributes ---------- volume_dna : float - The volume DNA in microliters. By default, 2 microliters. We suggest 2 microliters for extracted plasmid and 5 microliters for PCR products. - volume_competent_cells : float - The volume of the competent cells in microliters. By default, 50 microliters. - volume_recovery_media : float - The volume of recovery media in microliters. By default, 100 microliters. + Volume of DNA loaded into each source well, in microliters. By default, + 20 microliters. We suggest 2 µL for extracted plasmid and 5 µL for PCR + products when setting transfer_volume_dna in the subclass. replicates : int - The number of replicates of the assembly reaction. By default, 2. + Number of transformation replicates per strain per assembly location. + By default, 2. thermocycler_starting_well : int - The starting well of the thermocycler module. By default, 0. + Zero-indexed starting well in the thermocycler plate. By default, 0 (well A1). thermocycler_labware : str - The labware type of the thermocycler module. By default, 'nest_96_wellplate_100ul_pcr_full_skirt'. - thermocycler_slots : list - The slots of the thermocycler module. By default, [7, 8, 10, 11]. + Labware type for the thermocycler plate. + By default, 'nest_96_wellplate_100ul_pcr_full_skirt'. temperature_module_labware : str - The labware type of the temperature module. By default, 'opentrons_24_aluminumblock_nest_1.5ml_snapcap'. - temperature_module_position : int - The deck position of the temperature module. By default, 1. - tiprack_labware : str - The labware type of the tiprack. By default, 'opentrons_96_tiprack_20ul'. - tiprack_position : int - The deck position of the tiprack. By default, 9. - pipette_type : str - The type of pipette. By default, 'p20_single_gen2'. - pipette_mount : str - The mount of the pipette. By default, 'left'. + Labware type for the aluminum block on the temperature module. + By default, 'opentrons_24_aluminumblock_nest_1.5ml_snapcap'. + temperature_module_position : str + Deck slot for the temperature module. By default, '1'. + dna_plate : str + Labware type for the 96-well DNA source plate (used when use_dna_96plate=True). + By default, 'nest_96_wellplate_100ul_pcr_full_skirt'. + dna_plate_position : str + Deck slot for the 96-well DNA source plate. By default, '2'. + use_dna_96plate : bool + If True, DNA is sourced from a 96-well plate at fixed positions given by + plasmid_locations. Automatically set to True when plasmid_locations is + provided. By default, False. + tiprack_p20_labware : str + Labware type for the p20 tip rack. By default, 'opentrons_96_tiprack_20ul'. + tiprack_p20_position : str + Deck slot for the p20 tip rack. By default, '9'. + tiprack_p200_labware : str + Labware type for the p200 tip rack. + By default, 'opentrons_96_filtertiprack_200ul'. + tiprack_p200_position : str + Deck slot for the p200 tip rack. By default, '6'. + pipette_p20 : str + Pipette model for the p20 single-channel. By default, 'p20_single_gen2'. + pipette_p20_position : str + Mount for the p20 pipette ('left' or 'right'). By default, 'left'. + pipette_p300 : str + Pipette model for the p300 single-channel. By default, 'p300_single_gen2'. + pipette_p300_position : str + Mount for the p300 pipette ('left' or 'right'). By default, 'right'. aspiration_rate : float - The rate of aspiration in microliters per second. By default, 0.5 microliters per second. + Relative aspiration speed as a fraction of the pipette's maximum flow + rate, where 1.0 is full speed and 0.5 is half speed. Lower values + reduce bubble formation. By default, 0.5. dispense_rate : float - The rate of dispense in microliters per second. By default, 1 microliter per second. + Relative dispense speed as a fraction of the pipette's maximum flow + rate, where 1.0 is full speed. By default, 1.0. + initial_dna_well : int + Zero-indexed starting well for DNA tubes on the aluminum block (used when + use_dna_96plate=False). By default, 0. + water_testing : bool + If True, uses water in place of competent cells and recovery media during + simulation/testing runs. By default, False. ''' def __init__(self, - transformation_data: Optional[Dict] = None, + transformation_data: Optional[List] = None, + plasmid_locations: Optional[Dict] = None, json_params: Optional[Dict] = None, - list_of_dna:Optional[List] = None, volume_dna:float = 20, - competent_cells: Optional[str] = None, replicates:int=2, thermocycler_starting_well:int = 0, thermocycler_labware:str = "nest_96_wellplate_100ul_pcr_full_skirt", @@ -70,9 +99,7 @@ def __init__(self, ): kwargs_params = { - 'list_of_dna': list_of_dna, 'volume_dna': volume_dna, - 'competent_cells': competent_cells, 'replicates': replicates, 'thermocycler_starting_well': thermocycler_starting_well, 'thermocycler_labware': thermocycler_labware, @@ -98,17 +125,15 @@ def __init__(self, self._merged_params = self._merge_params(transformation_data, json_params, kwargs_params) - if self._merged_params.get('list_of_dna') is None: - raise ValueError( - "Must input a list of DNA strings (either via transformation_data, advanced_params, or list_of_dna parameter)") - if self._merged_params.get('competent_cells') is None: - raise ValueError( - "Must input a competent cell string (either via transformation_data, advanced_params, or competent_cells parameter)") + # Parse and validate transformation data (new SBOL format) + if transformation_data is None: + raise ValueError("Must provide transformation_data as a list of transformation dictionaries") + + self.plasmid_locations = plasmid_locations # URI -> [well, well, ...] from assembly output + self.transformations, self.all_plasmids, self.all_chassis = self._parse_transformation_data(transformation_data) # Set all attributes from merged parameters - self.list_of_dna = self._merged_params['list_of_dna'] self.volume_dna = self._merged_params['volume_dna'] - self.competent_cells = self._merged_params['competent_cells'] self.replicates = self._merged_params['replicates'] self.thermocycler_starting_well = self._merged_params['thermocycler_starting_well'] self.thermocycler_labware = self._merged_params['thermocycler_labware'] @@ -117,6 +142,14 @@ def __init__(self, self.dna_plate = self._merged_params['dna_plate'] self.dna_plate_position = self._merged_params['dna_plate_position'] self.use_dna_96plate = self._merged_params['use_dna_96plate'] + + # 96-well plate and plasmid_locations are always paired: + # positions on the plate are fixed by the assembly run and cannot be assumed sequential + if self.use_dna_96plate and self.plasmid_locations is None: + raise ValueError("plasmid_locations must be provided when use_dna_96plate=True. " + "Well positions on the assembly plate are fixed and cannot be assumed sequential.") + if self.plasmid_locations is not None: + self.use_dna_96plate = True self.tiprack_p20_labware = self._merged_params['tiprack_p20_labware'] self.tiprack_p20_position = self._merged_params['tiprack_p20_position'] self.tiprack_p200_labware = self._merged_params['tiprack_p200_labware'] @@ -130,6 +163,81 @@ def __init__(self, self.initial_dna_well = self._merged_params['initial_dna_well'] self.water_testing = self._merged_params['water_testing'] + def _extract_name_from_uri(self, uri: str) -> str: + """Extract name from SBOL URI""" + if '/' in uri: + name_with_version = uri.split('/')[-2] + if '/' in name_with_version: + return name_with_version.split('/')[0] + return name_with_version + return uri + + def _parse_transformation_data(self, transformation_data): + """ + Parse new SBOL-style transformation data format. + + Expected format: + [ + { + "Strain": "https://SBOL2Build.org/composite_1/1", + "Chassis": "https://sbolcanvas.org/DH5alpha/1", + "Plasmids": ["https://...", "https://..."] + }, + ... + ] + + Returns: + transformations: List of dicts with strain, chassis, and plasmids + all_plasmids: Flat list of all unique plasmids + all_chassis: List of unique chassis types + """ + if not isinstance(transformation_data, list): + raise ValueError("transformation_data must be a list of transformation dictionaries") + + transformations = [] + all_plasmids_set = set() + all_chassis_set = set() + + for idx, transformation in enumerate(transformation_data): + # Validate required fields + if 'Strain' not in transformation: + raise ValueError(f"Transformation {idx} missing 'Strain' field") + if 'Chassis' not in transformation: + raise ValueError(f"Transformation {idx} missing 'Chassis' field") + if 'Plasmids' not in transformation: + raise ValueError(f"Transformation {idx} missing 'Plasmids' field") + if not isinstance(transformation['Plasmids'], list): + raise ValueError(f"Transformation {idx}: 'Plasmids' must be a list") + if len(transformation['Plasmids']) == 0: + raise ValueError(f"Transformation {idx}: 'Plasmids' list cannot be empty") + + # Extract names from URIs + strain_name = self._extract_name_from_uri(transformation['Strain']) + chassis_name = self._extract_name_from_uri(transformation['Chassis']) + plasmid_uris = transformation['Plasmids'] + plasmid_names = [self._extract_name_from_uri(p) for p in plasmid_uris] + + # If plasmid_locations provided, validate all plasmid URIs are present + if self.plasmid_locations is not None: + for uri in plasmid_uris: + if uri not in self.plasmid_locations: + raise ValueError( + f"Plasmid URI '{uri}' not found in plasmid_locations. " + f"Available URIs: {list(self.plasmid_locations.keys())}" + ) + + transformations.append({ + 'strain': strain_name, + 'chassis': chassis_name, + 'plasmids': plasmid_names, + 'plasmid_uris': plasmid_uris + }) + + all_plasmids_set.update(plasmid_names) + all_chassis_set.add(chassis_name) + + return transformations, list(sorted(all_plasmids_set)), list(sorted(all_chassis_set)) + def _merge_params(self, transformation_data: Optional[Dict], advanced_params: Optional[Dict], kwargs_params: Dict) -> Dict: """ Merge parameters with precedence: defaults <- transformation_data <- advanced_params <- kwargs @@ -146,9 +254,7 @@ def _merge_params(self, transformation_data: Optional[Dict], advanced_params: Op # Includes both Transformation and HeatShockTransformation parameters valid_params = { # Transformation base parameters - 'list_of_dna': None, 'volume_dna': 20, - 'competent_cells': None, 'replicates': 2, 'thermocycler_starting_well': 0, 'thermocycler_labware': 'nest_96_wellplate_100ul_pcr_full_skirt', @@ -184,11 +290,6 @@ def _merge_params(self, transformation_data: Optional[Dict], advanced_params: Op # Start with defaults merged = valid_params.copy() - # Apply transformation_data (if provided) - if transformation_data is not None: - self._validate_param_structure(transformation_data, valid_params, 'transformation_data') - merged.update(transformation_data) - # Apply advanced_params (if provided) if advanced_params is not None: self._validate_param_structure(advanced_params, valid_params, 'advanced_params') @@ -224,10 +325,53 @@ def _validate_param_structure(self, params: Dict, valid_params: Dict, param_name class HeatShockTransformation(Transformation): ''' - Creates a protocol for automated transformation. + Heat shock transformation protocol for the Opentrons OT-2. + + Automates the full heat shock transformation workflow: loading DNA and competent + cells into a thermocycler plate, running the heat shock cycle, adding recovery + media, and exporting a plating map for the next protocol step. + + Inherits all base parameters from Transformation. The attributes below are + specific to the heat shock transformation protocol. + + Attributes + ---------- + transfer_volume_dna : float + Volume of DNA to transfer into each thermocycler well, in microliters. + By default, 2 microliters. Note: this is the volume actually pipetted per + reaction, distinct from volume_dna (the volume loaded into the source well). + transfer_volume_competent_cell : float + Volume of competent cells to transfer into each thermocycler well, in + microliters. By default, 20 microliters. + tube_volume_competent_cell : float + Total usable volume of competent cells per tube, in microliters. Used to + calculate how many reactions each tube can supply before switching to the + next tube. By default, 100 microliters. + transfer_volume_recovery_media : float + Volume of recovery media to add to each well after heat shock, in + microliters. By default, 60 microliters. + tube_volume_recovery_media : float + Total usable volume of recovery media per tube, in microliters. Used to + calculate how many wells each tube can supply. By default, 1200 microliters. + cold_incubation1 : dict + First cold incubation step (on ice before heat shock). A dict with keys + 'temperature' (°C) and 'hold_time_minutes'. + By default, {'temperature': 4, 'hold_time_minutes': 30}. + heat_shock : dict + Heat shock step. A dict with keys 'temperature' (°C) and 'hold_time_minutes'. + By default, {'temperature': 42, 'hold_time_minutes': 1}. + cold_incubation2 : dict + Second cold incubation immediately after heat shock. A dict with keys + 'temperature' (°C) and 'hold_time_minutes'. + By default, {'temperature': 4, 'hold_time_minutes': 2}. + recovery_incubation : dict + Recovery incubation after recovery media addition. A dict with keys + 'temperature' (°C) and 'hold_time_minutes'. + By default, {'temperature': 37, 'hold_time_minutes': 60}. ''' def __init__(self, - transformation_data: Optional[Dict] = None, + transformation_data: Optional[List] = None, + plasmid_locations: Optional[Dict] = None, json_params: Optional[Dict] = None, transfer_volume_dna:float = 2, transfer_volume_competent_cell:float = 20, @@ -241,6 +385,7 @@ def __init__(self, *args, **kwargs): super().__init__( transformation_data=transformation_data, + plasmid_locations=plasmid_locations, json_params=json_params, transfer_volume_dna=transfer_volume_dna, transfer_volume_competent_cell=transfer_volume_competent_cell, @@ -285,6 +430,8 @@ def __init__(self, self.recovery_incubation = recovery_incubation self.dict_of_parts_in_temp_mod_position = {} self.dict_of_parts_in_thermocycler = {} + self.dict_of_parts_in_dna_plate = {} + self.plasmid_name_to_wells = {} # plasmid name -> [well_obj, ...], populated during loading def _export_plating_input(self, protocol): """ @@ -359,21 +506,15 @@ def run(self, protocol: protocol_api.ProtocolContext): tiprack_p200 = protocol.load_labware(self.tiprack_p200_labware, self.tiprack_p200_position) # Load the pipette pipette_p20 = protocol.load_instrument(self.pipette_p20, self.pipette_p20_position, tip_racks=[tiprack_p20]) - pipette_p300 = protocol.load_instrument(self.pipette_p300, self.pipette_p300_position, - tip_racks=[tiprack_p200]) + pipette_p300 = protocol.load_instrument(self.pipette_p300, self.pipette_p300_position, tip_racks=[tiprack_p200]) #Validate protocol self._validate_protocol(protocol, alumblock) - #Load Reagents + #Load Reagents (also populates self.plasmid_name_to_wells) if self.use_dna_96plate: - DNA_wells = self._load_dna_list(protocol, dna_plate, self.volume_dna, self.list_of_dna, initial_well=self.initial_dna_well) - competent_cell_wells = self._load_reagents(protocol, alumblock, self.tube_volume_competent_cell, f"Competent Cell {self.competent_cells}", self.competent_cell_tubes_needed) - media_wells = self._load_reagents(protocol, alumblock, self.tube_volume_recovery_media, "Media", self.media_tubes_needed, initial_well=len(competent_cell_wells)) - + competent_cell_wells_by_chassis, media_wells = self._load_reagents_96plate(protocol, dna_plate, alumblock) else: - DNA_wells = self._load_dna_list(protocol, alumblock, self.volume_dna, self.list_of_dna) - competent_cell_wells = self._load_reagents(protocol, alumblock, self.tube_volume_competent_cell, f"Competent Cell {self.competent_cells}", self.competent_cell_tubes_needed, initial_well=len(DNA_wells)) - media_wells = self._load_reagents(protocol, alumblock, self.tube_volume_recovery_media, "Media", self.media_tubes_needed, initial_well=len(DNA_wells)+len(competent_cell_wells)) + competent_cell_wells_by_chassis, media_wells = self._load_reagents_temp_module(protocol, alumblock) #Set Temperature module and Thermocycler module to 4 thermocycler_module.open_lid() @@ -383,14 +524,14 @@ def run(self, protocol: protocol_api.ProtocolContext): #Load competent cells into the thermocycler pipette = pipette_p300 - self._transfer_competent_cells(protocol, pipette, pcr_plate, competent_cell_wells, self.transfer_volume_competent_cell, self.thermocycler_starting_well) + self._transfer_competent_cells(protocol, pipette, pcr_plate, competent_cell_wells_by_chassis, self.transfer_volume_competent_cell, self.thermocycler_starting_well) #Load DNA into the thermocycler if self.transfer_volume_dna > 20: pipette = pipette_p300 else: pipette = pipette_p20 - self._transfer_DNA(protocol, pipette, pcr_plate, DNA_wells, self.transfer_volume_dna, self.thermocycler_starting_well) + self._transfer_DNA(protocol, pipette, pcr_plate, self.transfer_volume_dna, self.thermocycler_starting_well) # Cold Incubation thermocycler_module.close_lid() @@ -425,92 +566,223 @@ def run(self, protocol: protocol_api.ProtocolContext): # output print('Strain and media tube in temp_mod') print(self.dict_of_parts_in_temp_mod_position) + if self.use_dna_96plate: + print('DNA constructs in DNA plate (slot 2)') + print(self.dict_of_parts_in_dna_plate) print('Genetically modified organisms in thermocycler') print(self.dict_of_parts_in_thermocycler) def _validate_protocol(self, protocol, labware): + """ + Validate protocol requirements and compute all derived counts used throughout run(). + Sets: self.location_replicates, self.total_transformations, + self.transformations_per_cell_tube, self.competent_cell_tubes_by_chassis, + self.reactions_by_chassis, self.transformations_per_media_tube, + self.media_tubes_needed. + Raises ValueError if reagents exceed available alumblock wells. + """ #Number of available wells to load into module_wells = len(labware.wells()) - #Number of dna constructs to be used - total_constructs = len(self.list_of_dna) - #Number of tubes with competent cells to be used - self.total_transformations = total_constructs*self.replicates - self.transformations_per_cell_tube = self.tube_volume_competent_cell//self.transfer_volume_competent_cell - self.competent_cell_tubes_needed = (self.total_transformations + self.transformations_per_cell_tube - 1) // self.transformations_per_cell_tube + + #Number of strains to transform + total_strains = len(self.transformations) + + #Number of total plasmid wells needed (one well per unique plasmid) + total_plasmid_wells = len(self.all_plasmids) + + # Number of location replicates per strain (assembly replicates of the same plasmid in plate, + # always 1 for temp module since plasmids are in a single sequential well) + if self.plasmid_locations is not None: + self.location_replicates = len(next(iter(self.plasmid_locations.values()))) + else: + self.location_replicates = 1 + + #Total transformation reactions + self.total_transformations = total_strains * self.location_replicates * self.replicates + + #Calculate competent cell tubes needed per chassis type + self.transformations_per_cell_tube = self.tube_volume_competent_cell // self.transfer_volume_competent_cell + self.competent_cell_tubes_by_chassis = {} + self.reactions_by_chassis = {} + total_competent_cell_tubes = 0 + + for chassis in self.all_chassis: + # Count how many transformations use this chassis + transformations_for_chassis = sum(1 for t in self.transformations if t['chassis'] == chassis) + reactions_for_chassis = transformations_for_chassis * self.location_replicates * self.replicates + self.reactions_by_chassis[chassis] = reactions_for_chassis + tubes_needed = (reactions_for_chassis + self.transformations_per_cell_tube - 1) // self.transformations_per_cell_tube + self.competent_cell_tubes_by_chassis[chassis] = tubes_needed + total_competent_cell_tubes += tubes_needed + #Number of tubes with media to be used - self.transformations_per_media_tube = self.tube_volume_recovery_media//self.transfer_volume_recovery_media + self.transformations_per_media_tube = self.tube_volume_recovery_media // self.transfer_volume_recovery_media self.media_tubes_needed = (self.total_transformations + self.transformations_per_media_tube - 1) // self.transformations_per_media_tube + + #Validate wells if self.use_dna_96plate: - if self.competent_cell_tubes_needed + self.media_tubes_needed > module_wells: - raise ValueError(f'The number of reagents is more that {module_wells}.' - f'There are {self.competent_cell_tubes_needed} tubes with competent cells.' + # DNA is on a separate plate, only cells and media on the temp module + if total_competent_cell_tubes + self.media_tubes_needed > module_wells: + raise ValueError(f'The number of reagents is more than {module_wells}.' + f'There are {total_competent_cell_tubes} tubes with competent cells ({self.competent_cell_tubes_by_chassis}).' f'{self.media_tubes_needed} tubes with media.' f'Please modify the protocol and try again.') else: - if total_constructs + self.competent_cell_tubes_needed + self.media_tubes_needed > module_wells: + # DNA, cells, and media all on the temp module + if total_plasmid_wells + total_competent_cell_tubes + self.media_tubes_needed > module_wells: raise ValueError(f'The number of reagents is more than {module_wells}.' - f'There are {total_constructs} DNA constructs.' - f'{self.competent_cell_tubes_needed} tubes with competent cells.' + f'There are {total_plasmid_wells} plasmid wells.' + f'{total_competent_cell_tubes} tubes with competent cells ({self.competent_cell_tubes_by_chassis}).' f'{self.media_tubes_needed} tubes with media.' f'Please modify the protocol and try again.') - def _load_dna_list(self, protocol, labware, volume, dna_list, initial_well=0, description=None, color_index = None): + def _load_reagents_96plate(self, protocol, dna_plate, alumblock): """ - Load individual DNA constructs into wells, one construct per well. + Load all reagents for the 96-well plate workflow (plasmid_locations provided). + DNA constructs are loaded from the assembly output plate at their fixed positions — + populates self.plasmid_name_to_wells. Competent cells and media are loaded + sequentially onto the alumblock starting at well 0. Parameters: - protocol: Protocol context - - labware: Labware object (temperature module or DNA plate) - - volume: Volume to load in µL - - construct_list: List of construct names (e.g., ['GVD0011', 'GVD0013']) - - initial_well: Starting well index - - color_index: Starting color index (auto-increments if None) + - dna_plate: 96-well plate labware object (slot 2) + - alumblock: Temperature module labware object Returns: - - List of well objects + - competent_cell_wells_by_chassis: dict mapping chassis name to list of well objects + - media_wells: list of well objects """ - wells = [] - current_color = color_index if color_index is not None else 0 - for i, construct in enumerate(dna_list): - #Get the well - well = labware.wells()[initial_well+i] - wells.append(well) + # Load DNA from dna_plate at actual well positions from plasmid_locations + # Populates self.plasmid_name_to_wells + self._load_dna_into_dna_plate(protocol, dna_plate) + + # Load competent cells for each chassis onto alumblock + competent_cell_wells_by_chassis = {} + current_well = 0 + for chassis in self.all_chassis: + tubes_needed = self.competent_cell_tubes_by_chassis[chassis] + wells = self._load_reagents(protocol, alumblock, self.tube_volume_competent_cell, + f"Competent Cell {chassis}", tubes_needed, initial_well=current_well) + competent_cell_wells_by_chassis[chassis] = wells + current_well += tubes_needed + + # Load media onto alumblock + media_wells = self._load_reagents(protocol, alumblock, self.tube_volume_recovery_media, + "Media", self.media_tubes_needed, initial_well=current_well) + + return competent_cell_wells_by_chassis, media_wells + + def _load_dna_into_dna_plate(self, protocol, dna_plate): + """ + Load DNA constructs into their fixed positions on the 96-well DNA plate. + Positions are determined by plasmid_locations (from assembly output or MoClo kit layout). + Each construct may occupy multiple wells (assembly replicates). + Populates self.plasmid_name_to_wells: {construct_name: [well_obj, ...]} + + Parameters: + - protocol: Protocol context + - dna_plate: 96-well plate labware object on slot 2 + """ + current_color = 0 + name_to_uri = {self._extract_name_from_uri(uri): uri for uri in self.plasmid_locations} + + for construct_name in self.all_plasmids: + uri = name_to_uri[construct_name] + well_names = self.plasmid_locations[uri] + well_objects = [] + + for i, well_name in enumerate(well_names): + well = dna_plate.wells_by_name()[well_name] + well_objects.append(well) + if i == 0: + liquid = protocol.define_liquid( + name=construct_name, + description=f"{construct_name} DNA construct", + display_color=colors[current_color % len(colors)] + ) + well.load_liquid(liquid, volume=self.volume_dna) + + self.plasmid_name_to_wells[construct_name] = well_objects + self.dict_of_parts_in_dna_plate[construct_name] = well_names + current_color += 1 + + def _load_reagents_temp_module(self, protocol, alumblock): + """ + Load all reagents for the temp module workflow (no plasmid_locations). + DNA constructs are loaded sequentially starting at initial_dna_well — + populates self.plasmid_name_to_wells. Competent cells and media follow + sequentially on the same alumblock. + + Parameters: + - protocol: Protocol context + - alumblock: Temperature module labware object + + Returns: + - competent_cell_wells_by_chassis: dict mapping chassis name to list of well objects + - media_wells: list of well objects + """ + # Load DNA sequentially onto alumblock starting at initial_dna_well + # Populates self.plasmid_name_to_wells + self._load_dna_into_temp_module(protocol, alumblock) + + # Load competent cells for each chassis, starting after the DNA wells + competent_cell_wells_by_chassis = {} + current_well = self.initial_dna_well + len(self.all_plasmids) + for chassis in self.all_chassis: + tubes_needed = self.competent_cell_tubes_by_chassis[chassis] + wells = self._load_reagents(protocol, alumblock, self.tube_volume_competent_cell, + f"Competent Cell {chassis}", tubes_needed, initial_well=current_well) + competent_cell_wells_by_chassis[chassis] = wells + current_well += tubes_needed + + # Load media onto alumblock after competent cells + media_wells = self._load_reagents(protocol, alumblock, self.tube_volume_recovery_media, + "Media", self.media_tubes_needed, initial_well=current_well) + + return competent_cell_wells_by_chassis, media_wells + + def _load_dna_into_temp_module(self, protocol, alumblock): + """ + Load DNA constructs sequentially into the temperature module alumblock. + Positions are assigned sequentially starting at initial_dna_well. + Populates self.plasmid_name_to_wells: {construct_name: [well_obj]} (single-element list). + + Parameters: + - protocol: Protocol context + - alumblock: Temperature module labware object + """ + current_color = 0 - #Covert tuple to string if needed - if isinstance(construct, tuple): - construct_name = '_'.join(construct) - else: - construct_name = construct - #Define and load "liquid" + for i, construct_name in enumerate(self.all_plasmids): + well = alumblock.wells()[self.initial_dna_well + i] liquid = protocol.define_liquid( - name = construct_name, - description= description if description is not None else f"{construct} DNA construct", - display_color= colors[current_color%len(colors)] + name=construct_name, + description=f"{construct_name} DNA construct", + display_color=colors[current_color % len(colors)] ) - well.load_liquid(liquid, volume=volume) - - #Track in dictionary - if not self.use_dna_96plate: - self.dict_of_parts_in_temp_mod_position[construct_name] = well.well_name + well.load_liquid(liquid, volume=self.volume_dna) + self.plasmid_name_to_wells[construct_name] = [well] + self.dict_of_parts_in_temp_mod_position[construct_name] = well.well_name current_color += 1 - return wells def _load_reagents(self, protocol, labware, volume, reagent_name, tube_count, initial_well=0, color_index=None): """ - Load multiple tubes of the same reagent type. + Load multiple tubes of the same reagent type onto a labware object. + Tubes are named {reagent_name}_1, {reagent_name}_2, etc. and tracked + in self.dict_of_parts_in_temp_mod_position. Parameters: - protocol: Protocol context - - labware: Labware object (temperature module) - - volume: Volume to load in µL - - reagent_base_name: Base name for reagent (e.g., "Competent_Cell", "Media") + - labware: Labware object to load reagents onto + - volume: Volume per tube in µL + - reagent_name: Base name for the reagent (e.g., "Competent Cell DH5alpha", "Media") - tube_count: Number of tubes to load - - initial_well: Starting well index - - color_index: Starting color index (auto-increments if None) + - initial_well: Starting well index on the labware + - color_index: Starting color index for Opentrons UI (cycles through colors list) Returns: - - List of well objects + - List of well objects in order """ wells = [] current_color = color_index if color_index is not None else 0 @@ -529,95 +801,118 @@ def _load_reagents(self, protocol, labware, volume, reagent_name, tube_count, in current_color += 1 return wells - def _transfer_competent_cells(self, protocol, pipette, pcr_plate, competent_cell_wells, + def _transfer_competent_cells(self, protocol, pipette, pcr_plate, competent_cell_wells_by_chassis, transfer_volume_competent_cell, thermocycler_starting_well): """ - Transfer competent cells to thermocycler wells using distribute method. + Transfer competent cells into thermocycler wells, one well per reaction. + Iterates self.transformations as ground truth. For each strain, fills + location_replicates * replicates wells with the appropriate chassis cells. + Tube selection is per-chassis (chassis_reaction_count) so multiple chassis + types each consume only their own tubes independently. Parameters: - protocol: Protocol context - - pipette: Pipette instrument - - pcr_plate: Thermocycler plate - - competent_cell_wells: List of wells containing competent cells - - transfer_volume_competent_cell: Volume to transfer per well - - thermocycler_starting_well: Starting well index in thermocycler + - pipette: Pipette instrument (p300) + - pcr_plate: Thermocycler plate labware + - competent_cell_wells_by_chassis: Dict mapping chassis name to list of well objects + - transfer_volume_competent_cell: Volume to transfer per well in µL + - thermocycler_starting_well: Starting well index in thermocycler plate """ well_index = thermocycler_starting_well + chassis_reaction_count = {chassis: 0 for chassis in self.all_chassis} - for tube_index, source_well in enumerate(competent_cell_wells): - #Calculate how many wells this cell tube will fill - remaining_transformations = self.total_transformations - (tube_index * self.transformations_per_cell_tube) - wells_to_fill = min(self.transformations_per_cell_tube, remaining_transformations) + for transformation in self.transformations: + chassis = transformation['chassis'] + cell_wells = competent_cell_wells_by_chassis[chassis] - #Destination wells - dest_wells = pcr_plate.wells()[well_index:well_index+wells_to_fill] + for replicate in range(self.location_replicates * self.replicates): + dest_well = pcr_plate.wells()[well_index] - #Distribute - pipette.distribute( - volume=transfer_volume_competent_cell, - source=source_well, - dest=dest_wells, - mix_before=(3,50), - disposal_volume=0, - new_tip='once' - ) + # Select tube based on per-chassis reaction count + tube_index = chassis_reaction_count[chassis] // self.transformations_per_cell_tube + source_well = cell_wells[tube_index] - #Thermocycler Dictionary - name = f"Competent_Cell_{self.competent_cells}_{tube_index+1}" - for well in dest_wells: - if well.well_name not in self.dict_of_parts_in_thermocycler: - self.dict_of_parts_in_thermocycler[well.well_name] = [] - self.dict_of_parts_in_thermocycler[well.well_name].append(name) + self.liquid_transfer( + protocol=protocol, + pipette=pipette, + volume=transfer_volume_competent_cell, + source=source_well, + dest=dest_well, + asp_rate=self.aspiration_rate, + disp_rate=self.dispense_rate, + mix_before=20, + touch_tip=False + ) - well_index += wells_to_fill + name = f"Competent_Cell_{chassis}" + if dest_well.well_name not in self.dict_of_parts_in_thermocycler: + self.dict_of_parts_in_thermocycler[dest_well.well_name] = [transformation['strain']] + self.dict_of_parts_in_thermocycler[dest_well.well_name].append(name) + + chassis_reaction_count[chassis] += 1 + well_index += 1 - def _transfer_DNA(self, protocol, pipette, pcr_plate, DNA_wells, transfer_volume_dna, thermocycler_starting_well): + def _transfer_DNA(self, protocol, pipette, pcr_plate, transfer_volume_dna, thermocycler_starting_well): """ - Transfer DNA constructs to thermocycler wells with replicates grouped together. + Transfer DNA plasmids to thermocycler wells. Multiple plasmids per strain go to the same well. + Uses self.plasmid_name_to_wells (populated during loading) for all source well lookups — + no positional indexing, fully name-driven from self.transformations. + + For the temp module path: each plasmid has one well → location_replicates = 1 + For the dna plate path: each plasmid has N wells (assembly replicates) → location_replicates = N Parameters: - protocol: Protocol context - pipette: Pipette instrument - pcr_plate: Thermocycler plate - - DNA_wells: List of wells containing DNA constructs - - transfer_volume_dna: Volume to transfer per well + - transfer_volume_dna: Volume to transfer per plasmid - thermocycler_starting_well: Starting well index in thermocycler """ - for construct_index, (construct_name, source_well) in enumerate(zip(self.list_of_dna, DNA_wells)): - construct_well = construct_index * self.replicates + thermocycler_starting_well + well_index = thermocycler_starting_well - for replicate in range(self.replicates): - dest_well = pcr_plate.wells()[construct_well+replicate] - #Transfer liquid - self.liquid_transfer( - protocol=protocol, - pipette=pipette, - volume=transfer_volume_dna, - source=source_well, - dest=dest_well, - asp_rate=self.aspiration_rate, - disp_rate=self.dispense_rate, - mix_before=transfer_volume_dna, - touch_tip=True - ) + for transformation in self.transformations: + plasmids = transformation['plasmids'] - #Track in dictionary - if dest_well.well_name not in self.dict_of_parts_in_thermocycler: - self.dict_of_parts_in_thermocycler[dest_well.well_name] = [] - self.dict_of_parts_in_thermocycler[dest_well.well_name].append(construct_name) + for loc_idx in range(self.location_replicates): + for replicate in range(self.replicates): + dest_well = pcr_plate.wells()[well_index] + + for plasmid_name in plasmids: + source_well = self.plasmid_name_to_wells[plasmid_name][loc_idx] + + self.liquid_transfer( + protocol=protocol, + pipette=pipette, + volume=transfer_volume_dna, + source=source_well, + dest=dest_well, + asp_rate=self.aspiration_rate, + disp_rate=self.dispense_rate, + mix_before=transfer_volume_dna, + touch_tip=True + ) + + if dest_well.well_name not in self.dict_of_parts_in_thermocycler: + self.dict_of_parts_in_thermocycler[dest_well.well_name] = [] + self.dict_of_parts_in_thermocycler[dest_well.well_name].append(plasmid_name) + + well_index += 1 def _transfer_liquid_broth(self, protocol, pipette, pcr_plate, media_wells, transfer_volume_recovery_media, thermocycler_starting_well): """ - Transfer recovery media to thermocycler wells using distribute method. + Distribute recovery media into all thermocycler wells using the pipette distribute method. + Each media tube fills up to transformations_per_media_tube wells before moving to the next. + Uses .top(2) on dest wells to avoid contamination from the pipette tip. + Covers self.total_transformations wells in total. Parameters: - protocol: Protocol context - - pipette: Pipette instrument - - pcr_plate: Thermocycler plate - - media_wells: List of wells containing recovery media - - transfer_volume_recovery_media: Volume to transfer per well - - thermocycler_starting_well: Starting well index in thermocycler + - pipette: Pipette instrument (p300) + - pcr_plate: Thermocycler plate labware + - media_wells: List of well objects containing recovery media + - transfer_volume_recovery_media: Volume to distribute per well in µL + - thermocycler_starting_well: Starting well index in thermocycler plate """ well_index = thermocycler_starting_well From 254bb7d39c60b6b08476e25299415f27d9dc48ff Mon Sep 17 00:00:00 2001 From: Oscar Rodriguez Date: Thu, 5 Mar 2026 00:01:31 -0700 Subject: [PATCH 097/100] Refactored transformation protocols to use updated `transformation_data` format and inlined advanced parameters for improved clarity and consistency. --- scripts/run_Bacterial_Transformation.py | 12 +++++- .../run_sbol2transformation_with_params.py | 38 +++++++------------ 2 files changed, 23 insertions(+), 27 deletions(-) diff --git a/scripts/run_Bacterial_Transformation.py b/scripts/run_Bacterial_Transformation.py index 06ca45f..2222e4e 100644 --- a/scripts/run_Bacterial_Transformation.py +++ b/scripts/run_Bacterial_Transformation.py @@ -8,8 +8,16 @@ 'description': 'Automated transformation protocol', 'apiLevel': '2.22'} +transformation_data = [ + { + 'Strain': 'composite_strain_1', + 'Chassis': 'DH5alpha', + 'Plasmids': ['composite_plasmid_1'] + } +] + def run(protocol= protocol_api.ProtocolContext): - pudu_transformation = HeatShockTransformation(list_of_dna=['pro', 'rbs','cds', 'ter'], competent_cells = 'DH5alpha') + pudu_transformation = HeatShockTransformation(transformation_data=transformation_data) pudu_transformation.run(protocol) -#After simulation look at the beginning of the output to see the position of input reagents and outputs. \ No newline at end of file +#After simulation look at the beginning of the output to see the position of input reagents and outputs. diff --git a/scripts/run_sbol2transformation_with_params.py b/scripts/run_sbol2transformation_with_params.py index b4baa33..d08713d 100644 --- a/scripts/run_sbol2transformation_with_params.py +++ b/scripts/run_sbol2transformation_with_params.py @@ -1,20 +1,15 @@ -transformation_data = { - 'list_of_dna': ['GVD0011', 'GVD0013', 'GVD0015'], - 'competent_cells': 'DH5alpha' -} - -advanced_params = { - 'replicates': 3, - 'volume_dna': 25, - 'thermocycler_starting_well': 0, - 'transfer_volume_dna': 5, - 'tube_volume_competent_cell': 150 -} - from pudu.transformation import HeatShockTransformation from opentrons import protocol_api +transformation_data = [ + { + 'Strain': 'GVD_strain', + 'Chassis': 'DH5alpha', + 'Plasmids': ['GVD0011', 'GVD0013', 'GVD0015'] + } +] + # Protocol metadata metadata = { 'protocolName': 'PUDU Transformation Test', @@ -29,18 +24,11 @@ def run(protocol: protocol_api.ProtocolContext): transformation = HeatShockTransformation( transformation_data=transformation_data, - advanced_params=advanced_params + replicates=3, + volume_dna=25, + thermocycler_starting_well=0, + transfer_volume_dna=5, + tube_volume_competent_cell=150 ) - # OLD APPROACH: Using kwargs directly (commented out) - # transformation = HeatShockTransformation( - # list_of_dna=['GVD0011', 'GVD0013', 'GVD0015'], - # competent_cells='DH5alpha', - # replicates=3, - # volume_dna=25, - # thermocycler_starting_well=0, - # transfer_volume_dna=5, - # tube_volume_competent_cell=150 - # ) - transformation.run(protocol) From 3e78ef35e166b72492345e6448d83a59c9ee5adb Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Tue, 7 Apr 2026 08:22:36 -0600 Subject: [PATCH 098/100] Add ManualAssembly Markdown protocol generation for Golden Gate --- README.md | 16 + .../manual_assembly_protocol_example.md | 71 +++++ scripts/generate_manual_assembly_protocol.py | 27 ++ scripts/manual_assembly_input.json | 24 ++ scripts/manual_assembly_protocol.md | 71 +++++ src/pudu/assembly.py | 278 ++++++++++++++++++ tests/test_manual_assembly.py | 59 ++++ 7 files changed, 546 insertions(+) create mode 100644 documentation/manual_assembly_protocol_example.md create mode 100644 scripts/generate_manual_assembly_protocol.py create mode 100644 scripts/manual_assembly_input.json create mode 100644 scripts/manual_assembly_protocol.md create mode 100644 tests/test_manual_assembly.py diff --git a/README.md b/README.md index 5f7d02d..d1c1f97 100644 --- a/README.md +++ b/README.md @@ -67,3 +67,19 @@ then in the OT-2 terminal run: ## Tutorials TODO + +## Manual Golden Gate protocol generation + +PUDU now supports generating a **human-readable manual Golden Gate protocol** from SBOL-style JSON input using `ManualAssembly`. + +- The class builds structured per-reaction records (product, backbone, ordered parts, enzyme, and calculated reagent volumes). +- It renders a Markdown protocol suitable for lab use and future PDF conversion. +- It does **not** generate OT-2 commands. + +Example script: + +```bash +PYTHONPATH=src python scripts/generate_manual_assembly_protocol.py +``` + +This writes a protocol document to `scripts/manual_assembly_protocol.md`. diff --git a/documentation/manual_assembly_protocol_example.md b/documentation/manual_assembly_protocol_example.md new file mode 100644 index 0000000..4854647 --- /dev/null +++ b/documentation/manual_assembly_protocol_example.md @@ -0,0 +1,71 @@ +# Golden Gate Manual Assembly Protocol + +## Overview +This document provides human-readable Golden Gate assembly instructions from SBOL-style JSON input. +It is an instruction sheet for manual execution and is not an Opentrons OT-2 script. + +## Inputs +- Number of target products: 2 +- `composite_1` (https://SBOL2Build.org/composite_1/1) +- `composite_2` (https://SBOL2Build.org/composite_2/1) + +## Default reagent assumptions +- Total reaction volume: 20 µL +- Per DNA component volume (backbone or part): 2 µL +- Restriction enzyme volume: 2 µL +- T4 DNA ligase volume: 4 µL +- T4 DNA ligase buffer volume: 2 µL +- Water volume is calculated per reaction from the configured defaults. + +## Reaction summary +| Product | Backbone | Parts | Restriction Enzyme | # DNA Components | Water (µL) | Total (µL) | +| --- | --- | --- | --- | ---: | ---: | ---: | +| composite_1 | pSB1C3 | J23101, B0034, GFP, B0015 | BsaI | 5 | 2 | 20 | +| composite_2 | pSB1C3 | J23106, B0034, RFP, B0015 | BsaI | 5 | 2 | 20 | + +## Per-reaction instructions + +### Product: composite_1 +URI: https://SBOL2Build.org/composite_1/1 + +1. Label one tube as `composite_1`. +2. Add 2 µL nuclease-free water. +3. Add 2 µL 10X T4 DNA Ligase Buffer. +4. Add 4 µL T4 DNA Ligase. +5. Add 2 µL BsaI (URI: https://SBOL2Build.org/BsaI/1). +6. Add 2 µL backbone `pSB1C3` (URI: https://sbolcanvas.org/pSB1C3/1). +7. Add 2 µL part `J23101` (URI: https://sbolcanvas.org/J23101/1). +8. Add 2 µL part `B0034` (URI: https://sbolcanvas.org/B0034/1). +9. Add 2 µL part `GFP` (URI: https://sbolcanvas.org/GFP/1). +10. Add 2 µL part `B0015` (URI: https://sbolcanvas.org/B0015/1). +11. Mix gently by pipetting. Do not vortex unless explicitly intended. +12. Briefly spin down if appropriate. + +### Product: composite_2 +URI: https://SBOL2Build.org/composite_2/1 + +1. Label one tube as `composite_2`. +2. Add 2 µL nuclease-free water. +3. Add 2 µL 10X T4 DNA Ligase Buffer. +4. Add 4 µL T4 DNA Ligase. +5. Add 2 µL BsaI (URI: https://SBOL2Build.org/BsaI/1). +6. Add 2 µL backbone `pSB1C3` (URI: https://sbolcanvas.org/pSB1C3/1). +7. Add 2 µL part `J23106` (URI: https://sbolcanvas.org/J23106/1). +8. Add 2 µL part `B0034` (URI: https://sbolcanvas.org/B0034/1). +9. Add 2 µL part `RFP` (URI: https://sbolcanvas.org/RFP/1). +10. Add 2 µL part `B0015` (URI: https://sbolcanvas.org/B0015/1). +11. Mix gently by pipetting. Do not vortex unless explicitly intended. +12. Briefly spin down if appropriate. + +## Thermocycling +- Program a Golden Gate cycling profile suitable for your Type IIS enzyme and ligase system. +- Typical high-level pattern: + - 25-35 cycles alternating between digestion and ligation temperatures. + - Follow with a final digestion/inactivation step as appropriate for enzyme cleanup. + - Hold at 4°C until samples are recovered. +- Use your lab's validated Golden Gate settings for the selected restriction enzyme. + +## Notes +- If the assembly was designed correctly, the final product should lack the Type IIS recognition sites used during assembly. +- This generated document is a manual instruction sheet and not an automated OT-2 protocol. +- Assumes all DNA parts are available at suitable concentrations and added at equal per-part volume. diff --git a/scripts/generate_manual_assembly_protocol.py b/scripts/generate_manual_assembly_protocol.py new file mode 100644 index 0000000..ba520e1 --- /dev/null +++ b/scripts/generate_manual_assembly_protocol.py @@ -0,0 +1,27 @@ +import json +import argparse +from pathlib import Path + +from pudu.assembly import ManualAssembly + + +def main(): + parser = argparse.ArgumentParser(description="Generate a manual Golden Gate Markdown protocol.") + parser.add_argument("--input", default="scripts/manual_assembly_input.json", help="Path to SBOL-style JSON input file.") + parser.add_argument("--output", default="scripts/manual_assembly_protocol.md", help="Path to Markdown output file.") + args = parser.parse_args() + + input_path = Path(args.input) + output_path = Path(args.output) + + assemblies = json.loads(input_path.read_text(encoding="utf-8")) + + manual_protocol = ManualAssembly(assemblies=assemblies) + manual_protocol.process_assemblies() + manual_protocol.write_markdown(str(output_path)) + + print(f"Manual protocol written to {output_path}") + + +if __name__ == "__main__": + main() diff --git a/scripts/manual_assembly_input.json b/scripts/manual_assembly_input.json new file mode 100644 index 0000000..05dab93 --- /dev/null +++ b/scripts/manual_assembly_input.json @@ -0,0 +1,24 @@ +[ + { + "Product": "https://SBOL2Build.org/composite_1/1", + "Backbone": "https://sbolcanvas.org/pSB1C3/1", + "PartsList": [ + "https://sbolcanvas.org/J23101/1", + "https://sbolcanvas.org/B0034/1", + "https://sbolcanvas.org/GFP/1", + "https://sbolcanvas.org/B0015/1" + ], + "Restriction Enzyme": "https://SBOL2Build.org/BsaI/1" + }, + { + "Product": "https://SBOL2Build.org/composite_2/1", + "Backbone": "https://sbolcanvas.org/pSB1C3/1", + "PartsList": [ + "https://sbolcanvas.org/J23106/1", + "https://sbolcanvas.org/B0034/1", + "https://sbolcanvas.org/RFP/1", + "https://sbolcanvas.org/B0015/1" + ], + "Restriction Enzyme": "https://SBOL2Build.org/BsaI/1" + } +] diff --git a/scripts/manual_assembly_protocol.md b/scripts/manual_assembly_protocol.md new file mode 100644 index 0000000..4854647 --- /dev/null +++ b/scripts/manual_assembly_protocol.md @@ -0,0 +1,71 @@ +# Golden Gate Manual Assembly Protocol + +## Overview +This document provides human-readable Golden Gate assembly instructions from SBOL-style JSON input. +It is an instruction sheet for manual execution and is not an Opentrons OT-2 script. + +## Inputs +- Number of target products: 2 +- `composite_1` (https://SBOL2Build.org/composite_1/1) +- `composite_2` (https://SBOL2Build.org/composite_2/1) + +## Default reagent assumptions +- Total reaction volume: 20 µL +- Per DNA component volume (backbone or part): 2 µL +- Restriction enzyme volume: 2 µL +- T4 DNA ligase volume: 4 µL +- T4 DNA ligase buffer volume: 2 µL +- Water volume is calculated per reaction from the configured defaults. + +## Reaction summary +| Product | Backbone | Parts | Restriction Enzyme | # DNA Components | Water (µL) | Total (µL) | +| --- | --- | --- | --- | ---: | ---: | ---: | +| composite_1 | pSB1C3 | J23101, B0034, GFP, B0015 | BsaI | 5 | 2 | 20 | +| composite_2 | pSB1C3 | J23106, B0034, RFP, B0015 | BsaI | 5 | 2 | 20 | + +## Per-reaction instructions + +### Product: composite_1 +URI: https://SBOL2Build.org/composite_1/1 + +1. Label one tube as `composite_1`. +2. Add 2 µL nuclease-free water. +3. Add 2 µL 10X T4 DNA Ligase Buffer. +4. Add 4 µL T4 DNA Ligase. +5. Add 2 µL BsaI (URI: https://SBOL2Build.org/BsaI/1). +6. Add 2 µL backbone `pSB1C3` (URI: https://sbolcanvas.org/pSB1C3/1). +7. Add 2 µL part `J23101` (URI: https://sbolcanvas.org/J23101/1). +8. Add 2 µL part `B0034` (URI: https://sbolcanvas.org/B0034/1). +9. Add 2 µL part `GFP` (URI: https://sbolcanvas.org/GFP/1). +10. Add 2 µL part `B0015` (URI: https://sbolcanvas.org/B0015/1). +11. Mix gently by pipetting. Do not vortex unless explicitly intended. +12. Briefly spin down if appropriate. + +### Product: composite_2 +URI: https://SBOL2Build.org/composite_2/1 + +1. Label one tube as `composite_2`. +2. Add 2 µL nuclease-free water. +3. Add 2 µL 10X T4 DNA Ligase Buffer. +4. Add 4 µL T4 DNA Ligase. +5. Add 2 µL BsaI (URI: https://SBOL2Build.org/BsaI/1). +6. Add 2 µL backbone `pSB1C3` (URI: https://sbolcanvas.org/pSB1C3/1). +7. Add 2 µL part `J23106` (URI: https://sbolcanvas.org/J23106/1). +8. Add 2 µL part `B0034` (URI: https://sbolcanvas.org/B0034/1). +9. Add 2 µL part `RFP` (URI: https://sbolcanvas.org/RFP/1). +10. Add 2 µL part `B0015` (URI: https://sbolcanvas.org/B0015/1). +11. Mix gently by pipetting. Do not vortex unless explicitly intended. +12. Briefly spin down if appropriate. + +## Thermocycling +- Program a Golden Gate cycling profile suitable for your Type IIS enzyme and ligase system. +- Typical high-level pattern: + - 25-35 cycles alternating between digestion and ligation temperatures. + - Follow with a final digestion/inactivation step as appropriate for enzyme cleanup. + - Hold at 4°C until samples are recovered. +- Use your lab's validated Golden Gate settings for the selected restriction enzyme. + +## Notes +- If the assembly was designed correctly, the final product should lack the Type IIS recognition sites used during assembly. +- This generated document is a manual instruction sheet and not an automated OT-2 protocol. +- Assumes all DNA parts are available at suitable concentrations and added at equal per-part volume. diff --git a/src/pudu/assembly.py b/src/pudu/assembly.py index b5ab761..1eaa6d3 100644 --- a/src/pudu/assembly.py +++ b/src/pudu/assembly.py @@ -5,8 +5,29 @@ from itertools import product import json from abc import ABC, abstractmethod +from dataclasses import dataclass, field from pudu.utils import Camera, colors + +@dataclass +class ManualReactionRecord: + """Structured representation of one Golden Gate manual assembly reaction.""" + product_uri: str + product_name: str + backbone_uri: str + backbone_name: str + part_uris: List[str] + part_names: List[str] + restriction_enzyme_uri: str + restriction_enzyme_name: str + number_of_dna_components: int + total_dna_volume: float + fixed_reagent_volume: float + water_volume: float + total_reaction_volume: float + reagent_additions: List[Dict[str, str]] = field(default_factory=list) + notes: List[str] = field(default_factory=list) + class BaseAssembly(ABC): """ Abstract base class for Loop Assembly protocols. @@ -1292,6 +1313,263 @@ def _validate_assembly_requirements(self): self._validate_reaction_volumes(num_parts) +class ManualAssembly(BaseAssembly): + """ + Manual Golden Gate assembly protocol generator from SBOL-style JSON input. + Produces structured reaction records and renders human-readable Markdown. + """ + + def __init__(self, + assembly_data: Optional[Dict] = None, + json_params: Optional[str] = None, + assemblies: Optional[List[Dict]] = None, + *args, **kwargs): + if assembly_data is not None: + if isinstance(assembly_data, dict) and 'assemblies' in assembly_data: + assemblies = assembly_data['assemblies'] + else: + assemblies = assembly_data + + if assemblies is None: + raise ValueError("Must provide assemblies either via assembly_data or assemblies parameter") + if not isinstance(assemblies, list) or not assemblies: + raise ValueError("assemblies must be a non-empty list of SBOL-style assembly dictionaries") + + super().__init__(json_params=json_params, *args, **kwargs) + self.assemblies = assemblies + self.reaction_records: List[ManualReactionRecord] = [] + + def process_assemblies(self): + """Parse and validate input assemblies, then build reaction records.""" + self._validate_input_assemblies() + self.reaction_records = self._build_reaction_records() + return self.reaction_records + + def _load_parts_and_enzymes(self, protocol, alum_block) -> int: + raise NotImplementedError("ManualAssembly does not load reagents onto OT-2 modules.") + + def _process_assembly_combinations(self, protocol, pipette, thermo_plate, alum_block, + dd_h2o, t4_dna_ligase_buffer, t4_dna_ligase, + volume_reagents, thermocycler_well_counter) -> int: + raise NotImplementedError("ManualAssembly does not generate OT-2 liquid handling commands.") + + def _calculate_total_tips_needed(self, number_of_constant_reagents: int = 0) -> int: + return 0 + + def _validate_input_assemblies(self): + required_keys = {'Product', 'Backbone', 'PartsList', 'Restriction Enzyme'} + + for idx, assembly in enumerate(self.assemblies, start=1): + if not isinstance(assembly, dict): + raise ValueError(f"Assembly #{idx} is not a dictionary.") + + missing = required_keys - set(assembly.keys()) + if missing: + raise ValueError( + f"Assembly #{idx} is missing required keys: {sorted(missing)}. " + f"Expected keys: {sorted(required_keys)}" + ) + + if not isinstance(assembly['PartsList'], list) or not assembly['PartsList']: + raise ValueError(f"Assembly #{idx} has an invalid 'PartsList'. Expected a non-empty list.") + + def _extract_name_from_uri(self, uri: str) -> str: + """Extract display name from URI; falls back safely to raw input if needed.""" + if not isinstance(uri, str): + return str(uri) + + segments = [segment for segment in uri.rstrip('/').split('/') if segment] + if not segments: + return uri + + if len(segments) >= 2 and segments[-1].isdigit(): + return segments[-2] + return segments[-1] + + def _calculate_reaction_volumes(self, number_of_dna_components: int) -> Dict[str, float]: + total_dna_volume = number_of_dna_components * self.volume_part + fixed_reagent_volume = ( + self.volume_restriction_enzyme + + self.volume_t4_dna_ligase + + self.volume_t4_dna_ligase_buffer + ) + water_volume = self.volume_total_reaction - fixed_reagent_volume - total_dna_volume + + if water_volume < 0: + raise ValueError( + f"Reaction volume error: Cannot fit {number_of_dna_components} DNA components into " + f"{self.volume_total_reaction}µL reaction.\n" + f" Required volumes:\n" + f" - DNA ({number_of_dna_components} × {self.volume_part}µL): {total_dna_volume}µL\n" + f" - Restriction enzyme: {self.volume_restriction_enzyme}µL\n" + f" - T4 DNA ligase: {self.volume_t4_dna_ligase}µL\n" + f" - T4 DNA ligase buffer: {self.volume_t4_dna_ligase_buffer}µL\n" + f" Total required: {total_dna_volume + fixed_reagent_volume}µL" + ) + + return { + 'total_dna_volume': total_dna_volume, + 'fixed_reagent_volume': fixed_reagent_volume, + 'water_volume': water_volume + } + + def _build_reaction_records(self) -> List[ManualReactionRecord]: + records: List[ManualReactionRecord] = [] + for assembly in self.assemblies: + product_uri = assembly["Product"] + backbone_uri = assembly["Backbone"] + part_uris = assembly["PartsList"] + enzyme_uri = assembly["Restriction Enzyme"] + + product_name = self._extract_name_from_uri(product_uri) + backbone_name = self._extract_name_from_uri(backbone_uri) + part_names = [self._extract_name_from_uri(uri) for uri in part_uris] + enzyme_name = self._extract_name_from_uri(enzyme_uri) + + number_of_dna_components = 1 + len(part_uris) + volume_data = self._calculate_reaction_volumes(number_of_dna_components) + + reagent_additions = [ + {'name': 'nuclease-free water', 'volume_uL': self._fmt_volume(volume_data['water_volume'])}, + {'name': '10X T4 DNA Ligase Buffer', 'volume_uL': self._fmt_volume(self.volume_t4_dna_ligase_buffer)}, + {'name': 'T4 DNA Ligase', 'volume_uL': self._fmt_volume(self.volume_t4_dna_ligase)}, + {'name': enzyme_name, 'volume_uL': self._fmt_volume(self.volume_restriction_enzyme)}, + {'name': f"backbone `{backbone_name}`", 'volume_uL': self._fmt_volume(self.volume_part)}, + ] + + for part_uri, part_name in zip(part_uris, part_names): + reagent_additions.append({ + 'name': f"part `{part_name}`", + 'volume_uL': self._fmt_volume(self.volume_part), + 'uri': part_uri + }) + + record = ManualReactionRecord( + product_uri=product_uri, + product_name=product_name, + backbone_uri=backbone_uri, + backbone_name=backbone_name, + part_uris=part_uris, + part_names=part_names, + restriction_enzyme_uri=enzyme_uri, + restriction_enzyme_name=enzyme_name, + number_of_dna_components=number_of_dna_components, + total_dna_volume=volume_data['total_dna_volume'], + fixed_reagent_volume=volume_data['fixed_reagent_volume'], + water_volume=volume_data['water_volume'], + total_reaction_volume=self.volume_total_reaction, + reagent_additions=reagent_additions + ) + records.append(record) + + return records + + def _fmt_volume(self, value: float) -> str: + return f"{int(value)}" if float(value).is_integer() else f"{value:.2f}" + + def _render_thermocycling_section(self) -> str: + """High-level Golden Gate thermocycling instructions. Can be parameterized later.""" + return ( + "## Thermocycling\n" + "- Program a Golden Gate cycling profile suitable for your Type IIS enzyme and ligase system.\n" + "- Typical high-level pattern:\n" + " - 25-35 cycles alternating between digestion and ligation temperatures.\n" + " - Follow with a final digestion/inactivation step as appropriate for enzyme cleanup.\n" + " - Hold at 4°C until samples are recovered.\n" + "- Use your lab's validated Golden Gate settings for the selected restriction enzyme.\n" + ) + + def render_markdown(self) -> str: + """Render a complete manual protocol in Markdown format.""" + if not self.reaction_records: + self.process_assemblies() + + lines = [ + "# Golden Gate Manual Assembly Protocol", + "", + "## Overview", + "This document provides human-readable Golden Gate assembly instructions from SBOL-style JSON input.", + "It is an instruction sheet for manual execution and is not an Opentrons OT-2 script.", + "", + "## Inputs", + f"- Number of target products: {len(self.reaction_records)}", + ] + for record in self.reaction_records: + lines.append(f"- `{record.product_name}` ({record.product_uri})") + + lines.extend([ + "", + "## Default reagent assumptions", + f"- Total reaction volume: {self._fmt_volume(self.volume_total_reaction)} µL", + f"- Per DNA component volume (backbone or part): {self._fmt_volume(self.volume_part)} µL", + f"- Restriction enzyme volume: {self._fmt_volume(self.volume_restriction_enzyme)} µL", + f"- T4 DNA ligase volume: {self._fmt_volume(self.volume_t4_dna_ligase)} µL", + f"- T4 DNA ligase buffer volume: {self._fmt_volume(self.volume_t4_dna_ligase_buffer)} µL", + "- Water volume is calculated per reaction from the configured defaults.", + "", + "## Reaction summary", + "| Product | Backbone | Parts | Restriction Enzyme | # DNA Components | Water (µL) | Total (µL) |", + "| --- | --- | --- | --- | ---: | ---: | ---: |", + ]) + + for record in self.reaction_records: + lines.append( + f"| {record.product_name} | {record.backbone_name} | {', '.join(record.part_names)} | " + f"{record.restriction_enzyme_name} | {record.number_of_dna_components} | " + f"{self._fmt_volume(record.water_volume)} | {self._fmt_volume(record.total_reaction_volume)} |" + ) + + lines.append("") + lines.append("## Per-reaction instructions") + lines.append("") + + for record in self.reaction_records: + lines.append(f"### Product: {record.product_name}") + lines.append(f"URI: {record.product_uri}") + lines.append("") + lines.append(f"1. Label one tube as `{record.product_name}`.") + lines.append(f"2. Add {self._fmt_volume(record.water_volume)} µL nuclease-free water.") + lines.append(f"3. Add {self._fmt_volume(self.volume_t4_dna_ligase_buffer)} µL 10X T4 DNA Ligase Buffer.") + lines.append(f"4. Add {self._fmt_volume(self.volume_t4_dna_ligase)} µL T4 DNA Ligase.") + lines.append( + f"5. Add {self._fmt_volume(self.volume_restriction_enzyme)} µL " + f"{record.restriction_enzyme_name} (URI: {record.restriction_enzyme_uri})." + ) + lines.append( + f"6. Add {self._fmt_volume(self.volume_part)} µL backbone " + f"`{record.backbone_name}` (URI: {record.backbone_uri})." + ) + + step_counter = 7 + for part_name, part_uri in zip(record.part_names, record.part_uris): + lines.append( + f"{step_counter}. Add {self._fmt_volume(self.volume_part)} µL part " + f"`{part_name}` (URI: {part_uri})." + ) + step_counter += 1 + + lines.append(f"{step_counter}. Mix gently by pipetting. Do not vortex unless explicitly intended.") + lines.append(f"{step_counter + 1}. Briefly spin down if appropriate.") + lines.append("") + + lines.append(self._render_thermocycling_section().rstrip()) + lines.extend([ + "", + "## Notes", + "- If the assembly was designed correctly, the final product should lack the Type IIS recognition sites used during assembly.", + "- This generated document is a manual instruction sheet and not an automated OT-2 protocol.", + "- Assumes all DNA parts are available at suitable concentrations and added at equal per-part volume." + ]) + + return "\n".join(lines) + "\n" + + def write_markdown(self, output_path: str): + """Write rendered Markdown protocol to disk.""" + markdown = self.render_markdown() + with open(output_path, "w", encoding="utf-8") as file_handle: + file_handle.write(markdown) + + class LoopAssembly: """ Factory class that auto-detects input format and returns appropriate subclass. diff --git a/tests/test_manual_assembly.py b/tests/test_manual_assembly.py new file mode 100644 index 0000000..05e430e --- /dev/null +++ b/tests/test_manual_assembly.py @@ -0,0 +1,59 @@ +import unittest + +from pudu.assembly import ManualAssembly + + +class TestManualAssembly(unittest.TestCase): + def setUp(self): + self.assemblies = [ + { + "Product": "https://SBOL2Build.org/composite_1/1", + "Backbone": "https://sbolcanvas.org/pSB1C3/1", + "PartsList": [ + "https://sbolcanvas.org/J23101/1", + "https://sbolcanvas.org/B0034/1", + "https://sbolcanvas.org/GFP/1", + "https://sbolcanvas.org/B0015/1", + ], + "Restriction Enzyme": "https://SBOL2Build.org/BsaI/1", + } + ] + + def test_extract_name_from_uri(self): + assembly = ManualAssembly(assemblies=self.assemblies) + self.assertEqual(assembly._extract_name_from_uri("https://sbolcanvas.org/GFP/1"), "GFP") + self.assertEqual(assembly._extract_name_from_uri("https://SBOL2Build.org/composite_1/1"), "composite_1") + + def test_volume_calculation(self): + assembly = ManualAssembly(assemblies=self.assemblies) + volumes = assembly._calculate_reaction_volumes(number_of_dna_components=5) + self.assertEqual(volumes["water_volume"], 2) + self.assertEqual(volumes["fixed_reagent_volume"], 8) + self.assertEqual(volumes["total_dna_volume"], 10) + + def test_invalid_overfilled_reaction(self): + assembly = ManualAssembly( + assemblies=self.assemblies, + volume_total_reaction=10, + volume_part=2, + volume_restriction_enzyme=2, + volume_t4_dna_ligase=4, + volume_t4_dna_ligase_buffer=2, + ) + with self.assertRaises(ValueError) as error: + assembly._calculate_reaction_volumes(number_of_dna_components=5) + self.assertIn("Cannot fit", str(error.exception)) + + def test_markdown_rendering_contains_sections_and_parts(self): + assembly = ManualAssembly(assemblies=self.assemblies) + markdown = assembly.render_markdown() + + self.assertIn("# Golden Gate Manual Assembly Protocol", markdown) + self.assertIn("## Reaction summary", markdown) + self.assertIn("### Product: composite_1", markdown) + self.assertIn("Add 2 µL part `J23101`", markdown) + self.assertIn("## Thermocycling", markdown) + + +if __name__ == "__main__": + unittest.main() From bee04f8c0dc161d5170cde7d3c5903943b3efbd6 Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Wed, 8 Apr 2026 12:38:12 -0600 Subject: [PATCH 099/100] Refine ManualAssembly markdown sections and thermocycling defaults --- .../manual_assembly_protocol_example.md | 32 ++++----- scripts/manual_assembly_protocol.md | 32 ++++----- src/pudu/assembly.py | 66 +++++++++++++------ tests/test_manual_assembly.py | 2 + 4 files changed, 72 insertions(+), 60 deletions(-) diff --git a/documentation/manual_assembly_protocol_example.md b/documentation/manual_assembly_protocol_example.md index 4854647..716291d 100644 --- a/documentation/manual_assembly_protocol_example.md +++ b/documentation/manual_assembly_protocol_example.md @@ -1,27 +1,20 @@ # Golden Gate Manual Assembly Protocol ## Overview -This document provides human-readable Golden Gate assembly instructions from SBOL-style JSON input. -It is an instruction sheet for manual execution and is not an Opentrons OT-2 script. +Golden Gate assembly is a one-pot DNA cloning method that uses a Type IIS restriction enzyme, such as BsaI, together with DNA ligase to assemble multiple DNA fragments in a predefined order. +Because Type IIS enzymes cut outside their recognition sites, they generate custom overhangs that direct fragment assembly and allow the recognition sites to be removed from the final construct. +In this protocol, plasmids containing DNA parts and a destination backbone are combined with the restriction enzyme and ligase in a single tube, then cycled in a thermocycler between digestion and ligation temperatures. Repetition of these cycles enriches for the correctly assembled composite plasmid, after which the enzymes are heat-inactivated and the reaction is held at 4 °C until collection. ## Inputs - Number of target products: 2 - `composite_1` (https://SBOL2Build.org/composite_1/1) - `composite_2` (https://SBOL2Build.org/composite_2/1) -## Default reagent assumptions -- Total reaction volume: 20 µL -- Per DNA component volume (backbone or part): 2 µL -- Restriction enzyme volume: 2 µL -- T4 DNA ligase volume: 4 µL -- T4 DNA ligase buffer volume: 2 µL -- Water volume is calculated per reaction from the configured defaults. - ## Reaction summary -| Product | Backbone | Parts | Restriction Enzyme | # DNA Components | Water (µL) | Total (µL) | -| --- | --- | --- | --- | ---: | ---: | ---: | -| composite_1 | pSB1C3 | J23101, B0034, GFP, B0015 | BsaI | 5 | 2 | 20 | -| composite_2 | pSB1C3 | J23106, B0034, RFP, B0015 | BsaI | 5 | 2 | 20 | +| Product | Backbone | Parts | Restriction Enzyme | # DNA Components | DNA each (µL) | Enzyme (µL) | Ligase (µL) | Buffer (µL) | Water (µL) | Total (µL) | +| --- | --- | --- | --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: | +| composite_1 | pSB1C3 | J23101, B0034, GFP, B0015 | BsaI | 5 | 2 | 2 | 4 | 2 | 2 | 20 | +| composite_2 | pSB1C3 | J23106, B0034, RFP, B0015 | BsaI | 5 | 2 | 2 | 4 | 2 | 2 | 20 | ## Per-reaction instructions @@ -58,14 +51,13 @@ URI: https://SBOL2Build.org/composite_2/1 12. Briefly spin down if appropriate. ## Thermocycling -- Program a Golden Gate cycling profile suitable for your Type IIS enzyme and ligase system. -- Typical high-level pattern: - - 25-35 cycles alternating between digestion and ligation temperatures. - - Follow with a final digestion/inactivation step as appropriate for enzyme cleanup. - - Hold at 4°C until samples are recovered. -- Use your lab's validated Golden Gate settings for the selected restriction enzyme. +- Use a cycling profile that holds 42°C for 2 minutes and 16°C for 5 minutes; repeat this profile 75 times. +- Denature/inactivate proteins by holding 60°C for 10 minutes followed by 80°C for 10 minutes. +- Hold at 4°C until samples are collected. ## Notes - If the assembly was designed correctly, the final product should lack the Type IIS recognition sites used during assembly. - This generated document is a manual instruction sheet and not an automated OT-2 protocol. - Assumes all DNA parts are available at suitable concentrations and added at equal per-part volume. +- Store the assembly product at 4 °C for better stability until used for downstream applications. +- Validate assembled plasmids by restriction digest and gel electrophoresis, Sanger sequencing, or whole-plasmid sequencing. diff --git a/scripts/manual_assembly_protocol.md b/scripts/manual_assembly_protocol.md index 4854647..716291d 100644 --- a/scripts/manual_assembly_protocol.md +++ b/scripts/manual_assembly_protocol.md @@ -1,27 +1,20 @@ # Golden Gate Manual Assembly Protocol ## Overview -This document provides human-readable Golden Gate assembly instructions from SBOL-style JSON input. -It is an instruction sheet for manual execution and is not an Opentrons OT-2 script. +Golden Gate assembly is a one-pot DNA cloning method that uses a Type IIS restriction enzyme, such as BsaI, together with DNA ligase to assemble multiple DNA fragments in a predefined order. +Because Type IIS enzymes cut outside their recognition sites, they generate custom overhangs that direct fragment assembly and allow the recognition sites to be removed from the final construct. +In this protocol, plasmids containing DNA parts and a destination backbone are combined with the restriction enzyme and ligase in a single tube, then cycled in a thermocycler between digestion and ligation temperatures. Repetition of these cycles enriches for the correctly assembled composite plasmid, after which the enzymes are heat-inactivated and the reaction is held at 4 °C until collection. ## Inputs - Number of target products: 2 - `composite_1` (https://SBOL2Build.org/composite_1/1) - `composite_2` (https://SBOL2Build.org/composite_2/1) -## Default reagent assumptions -- Total reaction volume: 20 µL -- Per DNA component volume (backbone or part): 2 µL -- Restriction enzyme volume: 2 µL -- T4 DNA ligase volume: 4 µL -- T4 DNA ligase buffer volume: 2 µL -- Water volume is calculated per reaction from the configured defaults. - ## Reaction summary -| Product | Backbone | Parts | Restriction Enzyme | # DNA Components | Water (µL) | Total (µL) | -| --- | --- | --- | --- | ---: | ---: | ---: | -| composite_1 | pSB1C3 | J23101, B0034, GFP, B0015 | BsaI | 5 | 2 | 20 | -| composite_2 | pSB1C3 | J23106, B0034, RFP, B0015 | BsaI | 5 | 2 | 20 | +| Product | Backbone | Parts | Restriction Enzyme | # DNA Components | DNA each (µL) | Enzyme (µL) | Ligase (µL) | Buffer (µL) | Water (µL) | Total (µL) | +| --- | --- | --- | --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: | +| composite_1 | pSB1C3 | J23101, B0034, GFP, B0015 | BsaI | 5 | 2 | 2 | 4 | 2 | 2 | 20 | +| composite_2 | pSB1C3 | J23106, B0034, RFP, B0015 | BsaI | 5 | 2 | 2 | 4 | 2 | 2 | 20 | ## Per-reaction instructions @@ -58,14 +51,13 @@ URI: https://SBOL2Build.org/composite_2/1 12. Briefly spin down if appropriate. ## Thermocycling -- Program a Golden Gate cycling profile suitable for your Type IIS enzyme and ligase system. -- Typical high-level pattern: - - 25-35 cycles alternating between digestion and ligation temperatures. - - Follow with a final digestion/inactivation step as appropriate for enzyme cleanup. - - Hold at 4°C until samples are recovered. -- Use your lab's validated Golden Gate settings for the selected restriction enzyme. +- Use a cycling profile that holds 42°C for 2 minutes and 16°C for 5 minutes; repeat this profile 75 times. +- Denature/inactivate proteins by holding 60°C for 10 minutes followed by 80°C for 10 minutes. +- Hold at 4°C until samples are collected. ## Notes - If the assembly was designed correctly, the final product should lack the Type IIS recognition sites used during assembly. - This generated document is a manual instruction sheet and not an automated OT-2 protocol. - Assumes all DNA parts are available at suitable concentrations and added at equal per-part volume. +- Store the assembly product at 4 °C for better stability until used for downstream applications. +- Validate assembled plasmids by restriction digest and gel electrophoresis, Sanger sequencing, or whole-plasmid sequencing. diff --git a/src/pudu/assembly.py b/src/pudu/assembly.py index 1eaa6d3..2c04b83 100644 --- a/src/pudu/assembly.py +++ b/src/pudu/assembly.py @@ -1323,6 +1323,10 @@ def __init__(self, assembly_data: Optional[Dict] = None, json_params: Optional[str] = None, assemblies: Optional[List[Dict]] = None, + thermocycling_profile: Optional[List[Dict[str, float]]] = None, + thermocycling_cycles: int = 75, + denaturation_profile: Optional[List[Dict[str, float]]] = None, + hold_temperature: float = 4, *args, **kwargs): if assembly_data is not None: if isinstance(assembly_data, dict) and 'assemblies' in assembly_data: @@ -1338,6 +1342,16 @@ def __init__(self, super().__init__(json_params=json_params, *args, **kwargs) self.assemblies = assemblies self.reaction_records: List[ManualReactionRecord] = [] + self.thermocycling_profile = thermocycling_profile or [ + {'temperature': 42, 'hold_time_minutes': 2}, + {'temperature': 16, 'hold_time_minutes': 5} + ] + self.thermocycling_cycles = thermocycling_cycles + self.denaturation_profile = denaturation_profile or [ + {'temperature': 60, 'hold_time_minutes': 10}, + {'temperature': 80, 'hold_time_minutes': 10} + ] + self.hold_temperature = hold_temperature def process_assemblies(self): """Parse and validate input assemblies, then build reaction records.""" @@ -1468,15 +1482,25 @@ def _fmt_volume(self, value: float) -> str: return f"{int(value)}" if float(value).is_integer() else f"{value:.2f}" def _render_thermocycling_section(self) -> str: - """High-level Golden Gate thermocycling instructions. Can be parameterized later.""" + """High-level Golden Gate thermocycling instructions.""" + profile_descriptions = [ + f"{step['temperature']}°C for {step['hold_time_minutes']} minutes" + for step in self.thermocycling_profile + ] + denaturation_descriptions = [ + f"{step['temperature']}°C for {step['hold_time_minutes']} minutes" + for step in self.denaturation_profile + ] + + profile_sentence = " and ".join(profile_descriptions) + denaturation_sentence = " followed by ".join(denaturation_descriptions) + return ( "## Thermocycling\n" - "- Program a Golden Gate cycling profile suitable for your Type IIS enzyme and ligase system.\n" - "- Typical high-level pattern:\n" - " - 25-35 cycles alternating between digestion and ligation temperatures.\n" - " - Follow with a final digestion/inactivation step as appropriate for enzyme cleanup.\n" - " - Hold at 4°C until samples are recovered.\n" - "- Use your lab's validated Golden Gate settings for the selected restriction enzyme.\n" + f"- Use a cycling profile that holds {profile_sentence}; " + f"repeat this profile {self.thermocycling_cycles} times.\n" + f"- Denature/inactivate proteins by holding {denaturation_sentence}.\n" + f"- Hold at {self.hold_temperature}°C until samples are collected.\n" ) def render_markdown(self) -> str: @@ -1488,8 +1512,14 @@ def render_markdown(self) -> str: "# Golden Gate Manual Assembly Protocol", "", "## Overview", - "This document provides human-readable Golden Gate assembly instructions from SBOL-style JSON input.", - "It is an instruction sheet for manual execution and is not an Opentrons OT-2 script.", + "Golden Gate assembly is a one-pot DNA cloning method that uses a Type IIS restriction enzyme, " + "such as BsaI, together with DNA ligase to assemble multiple DNA fragments in a predefined order.", + "Because Type IIS enzymes cut outside their recognition sites, they generate custom overhangs that " + "direct fragment assembly and allow the recognition sites to be removed from the final construct.", + "In this protocol, plasmids containing DNA parts and a destination backbone are combined with the " + "restriction enzyme and ligase in a single tube, then cycled in a thermocycler between digestion and " + "ligation temperatures. Repetition of these cycles enriches for the correctly assembled composite " + "plasmid, after which the enzymes are heat-inactivated and the reaction is held at 4 °C until collection.", "", "## Inputs", f"- Number of target products: {len(self.reaction_records)}", @@ -1498,24 +1528,18 @@ def render_markdown(self) -> str: lines.append(f"- `{record.product_name}` ({record.product_uri})") lines.extend([ - "", - "## Default reagent assumptions", - f"- Total reaction volume: {self._fmt_volume(self.volume_total_reaction)} µL", - f"- Per DNA component volume (backbone or part): {self._fmt_volume(self.volume_part)} µL", - f"- Restriction enzyme volume: {self._fmt_volume(self.volume_restriction_enzyme)} µL", - f"- T4 DNA ligase volume: {self._fmt_volume(self.volume_t4_dna_ligase)} µL", - f"- T4 DNA ligase buffer volume: {self._fmt_volume(self.volume_t4_dna_ligase_buffer)} µL", - "- Water volume is calculated per reaction from the configured defaults.", "", "## Reaction summary", - "| Product | Backbone | Parts | Restriction Enzyme | # DNA Components | Water (µL) | Total (µL) |", - "| --- | --- | --- | --- | ---: | ---: | ---: |", + "| Product | Backbone | Parts | Restriction Enzyme | # DNA Components | DNA each (µL) | Enzyme (µL) | Ligase (µL) | Buffer (µL) | Water (µL) | Total (µL) |", + "| --- | --- | --- | --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: |", ]) for record in self.reaction_records: lines.append( f"| {record.product_name} | {record.backbone_name} | {', '.join(record.part_names)} | " f"{record.restriction_enzyme_name} | {record.number_of_dna_components} | " + f"{self._fmt_volume(self.volume_part)} | {self._fmt_volume(self.volume_restriction_enzyme)} | " + f"{self._fmt_volume(self.volume_t4_dna_ligase)} | {self._fmt_volume(self.volume_t4_dna_ligase_buffer)} | " f"{self._fmt_volume(record.water_volume)} | {self._fmt_volume(record.total_reaction_volume)} |" ) @@ -1558,7 +1582,9 @@ def render_markdown(self) -> str: "## Notes", "- If the assembly was designed correctly, the final product should lack the Type IIS recognition sites used during assembly.", "- This generated document is a manual instruction sheet and not an automated OT-2 protocol.", - "- Assumes all DNA parts are available at suitable concentrations and added at equal per-part volume." + "- Assumes all DNA parts are available at suitable concentrations and added at equal per-part volume.", + "- Store the assembly product at 4 °C for better stability until used for downstream applications.", + "- Validate assembled plasmids by restriction digest and gel electrophoresis, Sanger sequencing, or whole-plasmid sequencing." ]) return "\n".join(lines) + "\n" diff --git a/tests/test_manual_assembly.py b/tests/test_manual_assembly.py index 05e430e..1f36e54 100644 --- a/tests/test_manual_assembly.py +++ b/tests/test_manual_assembly.py @@ -50,9 +50,11 @@ def test_markdown_rendering_contains_sections_and_parts(self): self.assertIn("# Golden Gate Manual Assembly Protocol", markdown) self.assertIn("## Reaction summary", markdown) + self.assertIn("DNA each (µL)", markdown) self.assertIn("### Product: composite_1", markdown) self.assertIn("Add 2 µL part `J23101`", markdown) self.assertIn("## Thermocycling", markdown) + self.assertIn("repeat this profile 75 times", markdown) if __name__ == "__main__": From 64448ed34303843b07f762212f079262a6a53af1 Mon Sep 17 00:00:00 2001 From: Gonzalo Vidal <35148159+Gonza10V@users.noreply.github.com> Date: Wed, 8 Apr 2026 12:53:00 -0600 Subject: [PATCH 100/100] Update assembly notes and instructions in assembly.py Removed outdated notes and updated instructions for thermocycler iterations and DNA part concentrations. --- src/pudu/assembly.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/pudu/assembly.py b/src/pudu/assembly.py index 2c04b83..9960fe5 100644 --- a/src/pudu/assembly.py +++ b/src/pudu/assembly.py @@ -1580,9 +1580,8 @@ def render_markdown(self) -> str: lines.extend([ "", "## Notes", - "- If the assembly was designed correctly, the final product should lack the Type IIS recognition sites used during assembly.", - "- This generated document is a manual instruction sheet and not an automated OT-2 protocol.", - "- Assumes all DNA parts are available at suitable concentrations and added at equal per-part volume.", + "- Thermocylcer iterations can be increased to improve the reaction efficiency.", + "- Assumes all DNA parts are available at suitable concentrations and added at equal molarity. Suggested molarities are 20 fmol/µL for parts and 10 fmol/µL for backbones.", "- Store the assembly product at 4 °C for better stability until used for downstream applications.", "- Validate assembled plasmids by restriction digest and gel electrophoresis, Sanger sequencing, or whole-plasmid sequencing." ])

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wp4{`!86EX04vGeOWUL4R_2f6tm3mh~y!07! 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

lcAn%|$>w8GN6Cvpi?Urh)tIH~(0?5| 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�txYu&X#Hc@zPay|=|WCmaCMTpbWu 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