sim_config Documentation
Documentation for the simulation configuration file of the same name#
- Simulation Configuration File
- Latest version supported: v.0.1
Simulation Configuration File#
- version: string
- version of the simulation configuration file
- length_unit: string
- length unit of the simulation (e.g. nm, um, mm)
- space_unit: string
- space unit of the simulation (this is just pixel, should not change)
- time_unit: string
- time unit of the simulation (e.g. s, ms, us)
- intensity_unit: string
- intensity unit of the simulation (AUD only supported)
-
diffusion_unit: string
- diffusion unit of the simulation (e.g. um^2/s, mm^2/s)
-
Cell_Parameters: dict
cell_type#
- Type: Union[str, CellType]
- Description: Defines the type of the cell to simulate.
- Supported: RectangularCell, SphericalCell, OvoidCell, RodCell, BuddingCell
params#
- Type: dictionary of parameter names (String) and values (Any)
- Description: Values for the cell_type specified above. The following the general structure:
# SphericalCell
params = {
"center": [0, 0, 0], # 3D center coordinates
"radius": 10.0 # Radius of sphere
}
# RodCell
params = {
"center": [0, 0, 0], # 3D center coordinates
"direction": [0, 0, 1], # Direction vector (will be normalized)
"height": 20.0, # Length of the rod
"radius": 5.0 # Radius of the rod
}
# RectangularCell
params = {
"bounds": [-10, 10, -10, 10, -10, 10] # [xmin, xmax, ymin, ymax, zmin, zmax]
}
# OvoidCell
params = {
"center": [0, 0, 0], # 3D center coordinates
"xradius": 10.0, # Radius in x-direction
"yradius": 15.0, # Radius in y-direction
"zradius": 20.0 # Radius in z-direction
}
-
Track_Parameters: dict
- num_tracks: int
- number of tracks to simulate
- track_type: string
- type of track to simulate ("fbm")
- track_length_mean: int (frames)
- mean length of the track
- track_distribution: string
- distribution of the track lengths ("exponential","constant")
- diffusion_coefficient: list of floats (units of diffusion_unit)
- diffusion coefficient of the track, the length of the list is the unique type of diffusion coefficients
- diffusion_track_amount: list of floats
- Only viable if allow_transition_probability is False
- length is the total number of diffusion coefficients
- each element is the probability of the track having the diffusion coefficient at the same index in the diffusion_coefficient list (add up to 1.0)
- hurst_exponent: list of floats
- hurst exponent of the track, the length of the list is the unique type of hurst exponents
- hurst_track_amount: list of floats
- Only viable if allow_transition_probability is False
- length is the total number of hurst exponents
- each element is the probability of the track having the hurst exponent at the same index in the hurst_exponent list (add up to 1.0)
- allow_transition_probability: bool
- whether to allow transition probabilities between different diffusion coefficients and hurst exponents within a track
- if false, the track will have a single diffusion coefficient and hurst exponent
- transition_matrix_time_step: int
- time step at which the diffusion and hurst exponent transition matrices are supplied in the following parameters
- the units are in time_unit (so 100 ms would be 100)
- diffusion_transition_matrix: 2D array (discrete state probabilitiy at the transition_matrix_time_step = dt)
- transition matrix between different diffusion coefficients
- rows are the current diffusion coefficient
- columns are the next diffusion coefficient
- rows must sum to 1.0
- hurst_transition_matrix: 2D array (discrete state probabilitiy at the transition_matrix_time_step = dt)
- transition matrix between different hurst exponents
- rows are the current hurst exponent
- columns are the next hurst exponent
- rows must sum to 1.0
- state_probability_diffusion: 1D array (probability)
- probability of a track being in a certain diffusion coefficient state
- length is the number of unique diffusion coefficients
- state_probability_hurst: 1D array (probability)
- probability of a track being in a certain hurst exponent state
- length is the number of unique hurst exponents
- num_tracks: int
-
Global_Parameters: dict
- field_of_view_dim: 1D array (units of space_unit)
- field of view dimensions (x,y (pixels))
- frame_count: int
- number of frames to simulate
- exposure_time: float or int (units of time_unit)
- exposure time of the camera
- interval_time: float or int (units of time_unit)
- time between frames that the camera is on
- oversample_motion_time: float or int (units of time_unit)
- oversampling the motion for motion blur
- if oversample_motion_time == frame_time == exposure_time, then there is no motion blur
- cannot be greater than frame_time or exposure_time
- pixel_size: float (units of length_unit)
- size of the pixel
- axial_detection_range: float (units of length_unit)
- from z=0, the distance in either direction that the camera can detect a single molecule excitation
- base_noise: float (units of intensity_unit)
- base noise of the camera (offset)
- point_intensity: float (units of intensity_unit)
- intensity of a single molecule excitation
- psf_sigma: float (units of length_unit)
- size of the psf (assumed to be gaussian)
- axial_function: string ("exponential","ones"(no effect))
- function used to determine how the intensity of the single molecule changes with z
- field_of_view_dim: 1D array (units of space_unit)
-
Condensate_Parameters: dict
- initial_centers: 2D array (units of space_unit)
- initial centers of the condensates
- [x,y,z] coordinates per row
- number of rows is the number of condensates
- initial_scale: 1D (units of space_unit)
- initial radius of the condensates
- number of elements is the number of condensates
- must be the same length as initial_centers
- diffusion_coefficient: 1D array (units of diffusion_unit)
- diffusion coefficient of the condensates
- number of elements is the number of condensates
- must be the same length as initial_centers
- hurst_exponent: 1D array
- hurst exponent of the condensates
- number of elements is the number of condensates
- must be the same length as initial_centers
- density_dif: float
- density difference between the condensates and the rest of the cell
- initial_centers: 2D array (units of space_unit)
-
Output_Parameters: dict
- output_path: string
- path to save the output, directory
- output_name: string
- name of the output file *subsegment_type: string
- function used to do projections ("mean","max","sum")
- subsegment_number: int
- number of subsegments to divide the cell frames into
- if total movie is 500 frames and this is 5 then there will be 100 frames per subsegment and 5 subsegments in total
- Make sure that the total number of frames is divisible by the number of subsegments (modulus is 0)
- output_path: string