예제 #1
0
 def __create_worklist_series(self):
     # Generates the buffer transfer worklists.
     self.add_debug('Create worklist series ...')
     if self.create_pool_racks:
         pool_buf_vol = get_pool_buffer_volume()
         prep_trf_vol = get_preparation_plate_transfer_volume(
                             preparation_plate_volume=
                                     self.preparation_plate_volume)
         prep_buf_vol = self.preparation_plate_volume - prep_trf_vol
     else:
         pool_buf_vol = None
         prep_buf_vol = \
             self.preparation_plate_volume \
             - self.__stock_transfer_volume * self.number_designs
     generator = LibraryCreationWorklistGenerator(
                                         self.__base_layout,
                                         self.__stock_concentration,
                                         self.library_name,
                                         prep_buf_vol,
                                         pool_buffer_volume=pool_buf_vol,
                                         parent=self)
     self.__worklist_series = generator.get_result()
     if self.__worklist_series is None:
         msg = 'Error when trying to generate worklist series.'
         self.add_error(msg)
예제 #2
0
 def __create_worklist_series(self):
     # Generates the buffer transfer worklists.
     self.add_debug("Create worklist series ...")
     if self.create_pool_racks:
         pool_buf_vol = get_pool_buffer_volume()
         prep_trf_vol = get_preparation_plate_transfer_volume(preparation_plate_volume=self.preparation_plate_volume)
         prep_buf_vol = self.preparation_plate_volume - prep_trf_vol
     else:
         pool_buf_vol = None
         prep_buf_vol = self.preparation_plate_volume - self.__stock_transfer_volume * self.number_designs
     generator = LibraryCreationWorklistGenerator(
         self.__base_layout,
         self.__stock_concentration,
         self.library_name,
         prep_buf_vol,
         pool_buffer_volume=pool_buf_vol,
         parent=self,
     )
     self.__worklist_series = generator.get_result()
     if self.__worklist_series is None:
         msg = "Error when trying to generate worklist series."
         self.add_error(msg)
예제 #3
0
파일: writer.py 프로젝트: helixyte/TheLMA
 def __write_pool_creation_section(self):
     # This is the stock transfer part (creating pools from single molecule
     # designs).
     self.add_debug('Writing pool section.')
     self._write_headline(header_text=self.HEADER_POOL_CREATION,
                          preceding_blank_lines=0)
     lines = []
     volume_line = self.VOLUME_LINE \
         % get_pool_transfer_volume(number_designs=
                                      self.iso.iso_request.number_designs)
     volume_line += ' each'
     lines.append(volume_line)
     buffer_line = self.BUFFER_LINE % get_pool_buffer_volume()
     lines.append(buffer_line)
     for sector_index in sorted(self.single_stock_rack_map.keys()):
         lines.append('')
         lines.append(self.QUADRANT_LINE % (sector_index + 1))
         barcodes = self.single_stock_rack_map[sector_index]
         target_rack = self.pool_stock_rack_map[sector_index]
         src_line = self.SOURCE_LINE_PLURAL % (', '.join(sorted(barcodes)))
         lines.append(src_line)
         lines.append(self.TARGET_LINE % (target_rack))
     self._write_body_lines(lines)
예제 #4
0
 def __write_pool_creation_section(self):
     # This is the stock transfer part (creating pools from single molecule
     # designs).
     self.add_debug('Writing pool section.')
     self._write_headline(header_text=self.HEADER_POOL_CREATION,
                          preceding_blank_lines=0)
     lines = []
     volume_line = self.VOLUME_LINE \
         % get_pool_transfer_volume(number_designs=
                                      self.iso.iso_request.number_designs)
     volume_line += ' each'
     lines.append(volume_line)
     buffer_line = self.BUFFER_LINE % get_pool_buffer_volume()
     lines.append(buffer_line)
     for sector_index in sorted(self.single_stock_rack_map.keys()):
         lines.append('')
         lines.append(self.QUADRANT_LINE % (sector_index + 1))
         barcodes = self.single_stock_rack_map[sector_index]
         target_rack = self.pool_stock_rack_map[sector_index]
         src_line = self.SOURCE_LINE_PLURAL % (', '.join(sorted(barcodes)))
         lines.append(src_line)
         lines.append(self.TARGET_LINE % (target_rack))
     self._write_body_lines(lines)