Exemplo n.º 1
0
	def writeCode(self):
                run_assemblies=set()
		assembly_summaries=set()
		run_merges=set()
		run_ref_alignment_inputs=set()
		run_ref_alignments=set()
		run_ref=None
                for assembly in self.assemblies:
                        if not assembly.isComplete():
                                run_assemblies.add(assembly)
				assembly_summaries.add(Summarize(self.workspace, assembly))
			merge=Merge(self.workspace, assembly)
			if not merge.isComplete():
				run_merges.add(merge)
			if hasattr(self, "ref_file_name"):
				ref_alignment=ReferenceAlignment(self.workspace, merge, self.ref_file_name)
				if not ref_alignment.isComplete():
					run_ref_alignments.add(ref_alignment)
				ref_alignment_input=ref_alignment.query
				if not ref_alignment_input.isComplete():
					run_ref_alignment_inputs.add(ref_alignment_input)
				run_ref=ref_alignment.anchor

                necessary_sorts=set()
                necessary_splits=set()
                necessary_pas=set()
                for assembly in run_assemblies:
                        self.educateAssembly(assembly)
                        necessary_sorts.add(assembly.sort)
                        necessary_splits.add(assembly.split)
                        necessary_pas.add(assembly.pairwise_alignment)

                run_sorts=set()
                for sort in necessary_sorts:
                        if not sort.isComplete():
                                run_sorts.add(sort)

                run_splits=set()
                split_summaries=set()
                for split in necessary_splits:
                        if not split.isComplete():
                                run_splits.add(split)
                                split_summaries.add(Summarize(self.workspace, split))

                run_pas=set()
                pairwise_summaries=set()
                for pairwise in necessary_pas:
                        if not pairwise.isComplete():
                                run_pas.add(pairwise)
                                pairwise_summaries.add(Summarize(self.workspace, pairwise))

                return [run_sorts,run_splits,split_summaries,run_pas,pairwise_summaries,run_assemblies,assembly_summaries,run_merges,[run_ref],run_ref_alignment_inputs,run_ref_alignments]
Exemplo n.º 2
0
work_dir="/path/to/work/dir" ### SET ME
input_file="input.bnx" ### SET ME
workspace=Workspace(work_dir, input_file)

ref_file="reference.cmap" ### SET ME

false_positive=0.5 ### SET ME
false_negative=0.15 ### SET ME
genome_size_mb=900 ### SET ME
p_val=1e-05/genome_size_mb
min_len=100 ### SET ME
min_sites=6 ### SET ME

vital_parameters=VitalParameters(false_positive, false_negative, p_val, min_len, min_sites)
merge=Merge(workspace, vital_parameters)

alignment=ReferenceAlignment(workspace, merge, ref_file)

with CD(work_dir):
	len_file_path=alignment.anchor.getStepDir()+"/"+alignment.output_prefix+".len"
	with open(len_file_path,'w'):
	len_file_converter=FileConverter(CmapFile(alignment.anchor.getOutputFile()), LenFile(len_file_path))
	len_file_converter.convert()

        bed_file_path=alignment.getStepDir()+"/"+alignment.output_prefix+".bed"
	with open(bed_file_path,'w'):
		pass
	bed_file_converter=FileConverter(XmapFile(alignment.getOutputFile()), BedFile(bed_file_path))
	bed_file_converter.convert()