Skip to content

API Reference

iscc's Python API mirrors the CLI pipeline — grow → sample → assay, with treatment applied during growth and optional inference of parameters from real data. Import the package as import iscc; see the Overview for how the stages connect.

Tumor

Grow a selection-driven tumor on a grid of demes — small tissue patches, each holding up to a carrying capacity of cells. Both engines are spatially explicit at the deme level and simulate the same process (birth, death, mutation, and dispersal under a CINner fitness model); they differ only in how the cell population is represented.

iscc.tumor.GenotypeTumor Represents each deme as genotype counts. Fast and scalable — the default.
iscc.tumor.GlandularTumor Represents each cell as its own object. Exact, but does not scale to large tumors.
iscc.tumor.Tumor Shared base of the two engines — the common construction parameters.

Treatment

Therapies applied to the tumor during growth.

iscc.treatment.Chemotherapy Cytotoxic therapy acting on dividing cells.
iscc.treatment.TargetedTherapy Therapy against a driver-defined subclone.
iscc.treatment.Immunotherapy Immune-cell–mediated killing in the microenvironment.
iscc.treatment.Surgery Resect a compartment (e.g. the primary).
iscc.treatment.Treatment Shared base of the therapies — dosing schedule + per-cell effect.

Sample

Draw cells from the grown tumor before assaying.

iscc.sample.Biopsy Spatially-localized sample of cells.
iscc.sample.Dissociation Whole-tumor dissociation into a cell suspension.

Data

Generate single-cell and bulk molecular data from the sampled cells.

iscc.data.bulkDNA Bulk DNA-seq.
iscc.data.scDNA Single-cell DNA (copy number + SNV).
iscc.data.scRNA Single-cell RNA expression.
iscc.data.Visium 10x Visium spatial transcriptomics.
iscc.data.DNA Shared base of the DNA assays — breadth + coverage core.

Each assay page also lists technology presets — the parameter settings that approximate named platforms (MALBAC / DLP / Tapestri for scDNA, WGS / WES / panel for bulk DNA, and 10x / Smart-seq3 for scRNA). The assays' technical defaults live in these hyper-parameter containers (the targets of the Calibration estimators, overridable per assay):

iscc.data.DNABatchHyperParams DNA technical parameters.
iscc.data.RNABatchHyperParams scRNA technical parameters.
iscc.data.VisiumBatchHyperParams Visium technical parameters.

Reads

Generate sequencing reads (FASTQ, optionally aligned BAM) from the assayed counts. DNA reads use DWGSIM/ART; RNA reads use a synthetic 10x transcriptome or the scReadSim template. These call external read simulators, so the corresponding binaries must be installed.

iscc.data.reads.emit_dna_reads Bulk / single-cell DNA reads (→ FASTQ, optional BAM).
iscc.data.reads.emit_scrna_reads Mutation-aware single-cell RNA reads.
iscc.data.reads.emit_visium_reads Spatial (Visium) reads.

Inference

Fit the tumor's evolutionary parameters (division / mutation / dispersal / selection rates) to real data by Approximate Bayesian Computation over the growth simulator.

iscc.inference.ABC Approximate Bayesian computation over evolutionary rates.
iscc.inference.Prior Product prior over the named parameters to infer.
iscc.inference.Posterior Result of an ABC run — samples and point estimates.

Calibration

Fit each assay's technical parameters (library size, dispersion, dropout, capture field, …) to a real reference dataset, so simulated data matches a target platform.

iscc.data.estimate_dna Calibrate the DNA assay from coverage / allele statistics.
iscc.data.estimate_rna Calibrate the scRNA assay from a real count matrix.
iscc.data.estimate_visium Calibrate the Visium assay from a real section.