- Subsample the ecDNA distribution at the end of the simulation
- Save based on the number of cells not time
- Increase the number of max iterations and cells
- Save at the end of the simulation
- Specify either years or cells to simulate in the app
Huge update to remove useless stuff and keep only the content relevant for the PhD thesis.
Remove abc
in rust, do it in python.
change the way we save the data at the end of the simulations to simplify subsampling.
Assign idx such that it corresponds to the seed used.
Fix saving names: replace .
by dot
in the birth-death case.
change files and dir names after saving the data.
Now: {SAMPLE}samples{CELLS}population/{MEASUREMENT}/{B0}b0_{B1}b1_{D0}d0_{D1}d1_0idx.json
.
remove bin abc
.
Save the absolute gillespie time at the last iteration. Takes 300 timepoints, that is save the dynamics max until time is equal to 30.
Fix the dynamics as plotting a subset of them over time by binning gillespie time using fixed sized bins of time for all simulations
Process PureBirthMeanTime
.
Process BirthDeathMeanTimeVarianceEntropy
.
ecdna_lib
version: 2.0.6
ecdna_lib
version: 2.0.5
ecdna_lib
version: 2.0.4
- Subsampling in the
dynamics
was incorrect, we now update the state after subsampling. - Take a reference of the process and the state instead of cloning it in the
dynamics
Subsampling for BirthDeathNMinusNPlusTime
.
Do not sample in BirthDeath
process if there are not enough cells
ecdna_lib
version: 2.0.0
New flag drop_nminus
for abc and ABCResult::run
takes drop_nminus
bool arg.
ABC with cell-death assuming same rates for both cells with and without ecDNAs.
- saving twice the dynamics in some processes
- not storing the NPlus and NMinus cells in processes
BirthDeathMeanTimeVariance
andBirthDeathMeanTime
Remove restarting when cell-death, see issue #104.
Update readme.
Update readme.
ecdna_lib
version: 1.0.0
ssa
version: 1.0.0
The pure-birth process with time, nplus and nminus cells.
Fix the birth-death process with time, nplus and nminus cells.
The birth-death process with time, nplus and nminus cells.
Saving times
only once.
The birth-death process with time, mean and variance.
ecdna_lib
version: 0.5.4
The birth-death process with time and mean.
Remove simulate
.
ecdna_lib
version: 0.5.3
ssa
version: 0.6.0
Using git tag
attribute in Cargo.toml
.
ecdna_lib
version: 0.3.2
When subsample
arg of clap is 0, take the full ecDNA distribution as a sample, which makes sense only if --sampling-strategy
is not uniform
.
ecdna_lib
version: 0.3.0
New clap arg sampling_strategy
and update ecdna-lib
version to sample the ecDNA distributions according to different sampling strategies.
ssa
version: 0.5.0
Refactor: rename PureBirthNoDynamics
to PureBirth
and PureBirth
to PureBirthNMinusNPlus
. The default process simulated by the dynamics
is now PureBirth
not PureBirthNoDynamics
.
New flag nplus-nminus
to generate PureBirthNMinusNPlus
.
ssa
version: 0.4.0
Update ecdna-evo
version in Cargo.toml
This crate has now also its library, since in ssa
v0.3.0 enum_dispatch
ed heterogenous collection of processes has been removed.
ssa
version: 0.3.0
Save a single abc.csv
file for all runs instead of the abc
folder with inside all runs.
Update ssa
version
ssa
version: 0.2.1
There are two main changes:
- refactor: create a new lib
ecdna-lib
and movedabc.rs
and the ecDNA distribution there. - Use
ChaCha8
as rng instead ofPcg
, so we can set the stream in independent threads, see here.
ssa
version: 0.2.0
Update ssa
version.
ssa
version: 0.1.2
Some many bug fixes. The previous version (v.0.7.0) contains so much bugs that it should not be used.
ssa
version: 0.1.1
The code uses now the ssa
lib.
Perform ABC with subsampling (one timepoint only for now) with only pure-birth.
ABC infers only the fitness coefficient, that is the birth-rate of cells with
ecDNAs b1
.
Advantages:
- reduced by approximatively one half the code base
- more general, should be directly applicable the other problems/processes (see
ssa::hsc
)
- Fix path to save data with cell death
- Fix computation of the variance
- Save ecDNA statistics also before subsampling
dynamics
- Add segregation mode to perform the nonminus experiment
- Ignore the test
data::tests::ecdna_undersample_reproducible_different_trials
. - Add new dynamics
Uneven
which tracks the number of complete uneven segregation events. - Simplify
any_individual_left
by removing overflow checks.
- Sampling was performed with replacement, now without replacement (might need more memory)
- Remove
results
folder from preprocess app - The computation of the
ks_distance
has changed by taking into account the loss of precision in convertingu16
tof16
- Dont panic when computing the variance when there are no N+ cells, but return 0
Remove data from the project: folder results
is now in ~/ecdna-results
.
- Option
--savedir
forpreprocess
- Avoid sample twice when multiple timepoints before saving the statistics (
both
abc
andsimulate
). - Bug in the cell culture experiment with subsampling: restarting from one
subsample from the whole distribution with correct
idx
, issue #65
Removed plotting library into another git folder
- When plotting abc results, the flag
--export
can save the runs that been filtered based on the thresholds (to for instance make the plots in Mathematica)
- Remove the
CONFIG
options frompreprocess
subcommand.
- Merged
preprocess
intoecdna
whihc has now three commands:simulate
,abc
andpreprocess
.
- New file
timepoint
in output of abc inferenceabc.tar.gz
.
-
Subsample option.
-
New binary
preprocess
. -
Inference of multiple timepoints (longitudinal analysis) with patient and cell lines.
-
The patient growth strategy implies that after the first timepoint, tumour growth is restarted from the whole population. Whereas cell line growth strategy implies that the tumour growth restart from the subsample.
-
New python plots.
-
Codecov
- Tarballs with relative paths
-
The ecDNA distribution is a vector of
u16
The ecDNA distribution is a vector where each entries is a cell and the content is the number of ecDNA copies the cell has. -
The ecDNA distribution is saved as a JSON, i.e. as a mapping where the keys are the ecDNA copies and the entries are the number of cells for each key (histogram).
-
Implement the state pattern to pass the ecDNA distribution by consuming the
Run
instead of deep copy. -
Introduce subsampling: run the simulations for a number of cells, then run ABC with 100 subsamples for each run. In the end, the number of tested simulations will be 100 * the number of runs.
- Fix bug in the computation of the ks distance.