High-level description

The LineageTracingDataSimulator class in LineageTracingDataSimulator.py is an abstract base class for simulating lineage tracing data on a CassiopeiaTree. It provides a framework for overlaying lineage tracing data onto a tree structure, enabling the exploration of different lineage tracing technologies and their impact on reconstructing cell phylogenies.

Code Structure

The LineageTracingDataSimulator class inherits from the abstract base class DataSimulator and defines a single abstract method, overlay_data. This method is intended to be implemented by concrete subclasses to perform the actual data overlay based on the specific lineage tracing technology being simulated.

References

This code references the following symbols:

  • cassiopeia.data.CassiopeiaTree
  • cassiopeia.simulator.DataSimulator.DataSimulator

Symbols

LineageTracingDataSimulator

Description

This is an abstract class that serves as a base for all lineage tracing data simulators. It defines the common interface for simulating lineage tracing data on a CassiopeiaTree.

Inputs

This class does not have its own constructor and therefore does not accept any direct inputs.

Outputs

This class is an abstract class and does not directly produce outputs.

Internal Logic

This class does not have any internal logic as it is an abstract class.

Side Effects

This class does not have any side effects as it is an abstract class.

Performance Considerations

This class does not have any performance considerations as it is an abstract class.


Dependencies

This code depends on the following external libraries:

DependencyPurpose
abcProvides the abstract base class functionality.

Configuration

This code does not define any configuration options.

Error Handling

This code does not implement specific error handling beyond basic exception raising.

Logging

This code does not implement logging.

API/Interface Reference

This code does not expose an API.