Skip to content

iscc.data.reads.emit_dna_reads

emit_dna_reads(cell_data, reference=None, simulator='dwgsim', breadth='wgs', modality='bulk', outdir='reads_out', seed=42, n_cells=20, cell_subset=None, mean_coverage=None, emit_bam=False, read_length=150, genome_seed=20240601, **dna_kwargs)

End-to-end DNA read emission: cell_data -> per-cell FASTA -> FASTQ (+ BAM).

reference a Reference instance, or None for the SyntheticReference default. simulator "dwgsim" (default) or "art". modality "bulk" (pool cells into one reference) or "sc" (per-cell FASTA + FASTQ). mean_coverage uniform fold coverage handed to the simulator (CN scaling already baked into the FASTA); defaults from the C1 budget if None. emit_bam also align the FASTQ to a sorted/indexed BAM (needs bwa + samtools).

Returns a result dict with the FASTA path(s), the per-segment coverage budget, the chosen mean_coverage, the true/observed allele split (from variants.inject), and — when the binary is installed — fastq/bam paths. status is "emitted" or "skipped:" so the count-level path and CI stay green without the optional binaries.