initialize_arcade_simulations#

Workflow for initializing ARCADE simulations.

Working location structure:

(name)
├── images
│   └── (name)_(key).(extension)
├── inits
│   └── inits.ARCADE
│       ├── (name)_(key)_(margin)_(resolution).CELLS.json
│       ├── (name)_(key)_(margin)_(resolution).LOCATIONS.json
│       └── (name)_(key)_(margin)_(resolution).xml
├── plots
│   └── plots.SAMPLE
│       └── (name)_(key).SAMPLE.png
└── samples
    ├── samples.PROCESSED
       └── (name)_(key).PROCESSED.csv
    └── samples.RAW
        └── (name)_(key).RAW.csv

Images are loaded from images, which are then sampled and processed into samples. ARCADE initialization files are then generated and placed into inits.ARCADE.

Flows

get_docker_arguments

Compile Docker arguments for the given context.

run_flow

Main initialize ARCADE simulations flow.

run_flow_convert_to_arcade

Initialize ARCADE simulations subflow for converting to ARCADE.

run_flow_process_samples

Initialize ARCADE simulations subflow for processing samples.

run_flow_sample_images

Initialize ARCADE simulations subflow for sampling images.

get_docker_arguments(context: ContextConfig) dict[source]#

Compile Docker arguments for the given context.

run_flow(context: ContextConfig, series: SeriesConfig, parameters: ParametersConfig) None[source]#

Main initialize ARCADE simulations flow.

Calls the following subflows, in order:

  1. run_flow_sample_images()

  2. run_flow_process_samples()

  3. run_flow_convert_to_arcade()

run_flow_convert_to_arcade(context: ContextConfig, series: SeriesConfig, parameters: ParametersConfig) None[source]#

Initialize ARCADE simulations subflow for converting to ARCADE.

Converted processed samples into the ARCADE .CELLS and .LOCATIONS formats, along with a basic simulation setup XML file.

run_flow_process_samples(context: ContextConfig, series: SeriesConfig, parameters: ParametersConfig) None[source]#

Initialize ARCADE simulations subflow for processing samples.

Iterate through conditions to process samples for each specified channel. The subflow process_sample is run via Docker for each condition and channel combination by passing in the subflow configuration as a dotlist.

run_flow_sample_images(context: ContextConfig, series: SeriesConfig, parameters: ParametersConfig) None[source]#

Initialize ARCADE simulations subflow for sampling images.

Iterate through conditions to sample images for each specified channel. The subflow sample_image is run via Docker for each condition and channel combination by passing in the subflow configuration as a dotlist.

Configs

ContextConfig

Context configuration for initialize ARCADE simulations flow.

ParametersConfig

Parameter configuration for initialize ARCADE simulations flow.

ParametersConfigConvertToArcade

Parameter configuration for initialize ARCADE simulations subflow - convert to ARCADE.

SeriesConfig

Series configuration for initialize ARCADE simulations flow.

class ContextConfig[source]#

Context configuration for initialize ARCADE simulations flow.

working_location: str#

Location for input and output files (local path or S3 bucket).

reference_location: str#

Location of reference file (local path or S3 bucket).

access_key_id: str | None = None#

AWS access key id for accessing S3 in Docker image.

secret_access_key: str | None = None#

AWS secret access key for accessing S3 in Docker image.

class ParametersConfig[source]#

Parameter configuration for initialize ARCADE simulations flow.

image: str#

Name of pipeline image.

resolution: float#

Distance between samples in um.

sample_images: dict[str, cell_abm_pipeline.flows.sample_image.ParametersConfig]#

Configs for sample images flow, keyed by region.

process_samples: dict[str, cell_abm_pipeline.flows.process_sample.ParametersConfig]#

Configs for process samples flow, keyed by region.

convert_to_arcade: ParametersConfigConvertToArcade = ParametersConfigConvertToArcade(regions={'DEFAULT': '%s'}, margins=(0, 0, 0), volumes={'DEFAULT': (1865.0, 517.0), 'NUCLEUS': (543.0, 157.0)}, heights={'DEFAULT': (9.75, 2.4), 'NUCLEUS': (6.86, 1.7)}, critical_volumes={'DEFAULT': (1300.0, 200.0), 'NUCLEUS': (400.0, 50.0)}, critical_heights={'DEFAULT': (9.0, 2.0), 'NUCLEUS': (6.5, 1.5)}, state_thresholds={'APOPTOTIC_LATE': 0.25, 'APOPTOTIC_EARLY': 0.9, 'PROLIFERATIVE_G1': 1.124, 'PROLIFERATIVE_S': 1.726, 'PROLIFERATIVE_G2': 1.969, 'PROLIFERATIVE_M': 2}, potts_terms=['volume', 'adhesion'])#

Convert to ARCADE configuration instance.

class ParametersConfigConvertToArcade[source]#

Parameter configuration for initialize ARCADE simulations subflow - convert to ARCADE.

regions: dict[str, str]#

Subcellular region samples used to initialize voxels.

margins: tuple[int, int, int] = (0, 0, 0)#

Margins around initial voxel positions.

volumes: dict#

Volume means and standard deviations in um^3.

heights: dict#

Height means and standard deviations in um.

critical_volumes: dict#

Critical volume means and standard deviations in um^3.

critical_heights: dict#

Critical height means and standard deviations in um.

state_thresholds: dict[str, float]#

Cell state phase thresholds.

potts_terms: list[str]#

List of Cellular Potts Model Hamiltonian terms.

class SeriesConfig[source]#

Series configuration for initialize ARCADE simulations flow.

name: str#

Name of the simulation series.

reference_key: str#

Key for reference file.

conditions: list#

List of series condition dictionaries (must include unique condition “key”).