Skip to content

Commit

Permalink
Added test for custom pop output
Browse files Browse the repository at this point in the history
  • Loading branch information
vincent-noel committed Oct 2, 2024
1 parent 51fedf8 commit 8c8438d
Show file tree
Hide file tree
Showing 4 changed files with 425 additions and 0 deletions.
76 changes: 76 additions & 0 deletions engine/tests/popmaboss/ICD_phenomenologicalPM.pbnd
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
node TumorCell
{
rate_up = 0.0;
rate_down = 0.0;
}

node DyingTumorCell
{
rate_up = TumorCell ? $chemotherapy : 0.0 ;
rate_down = 0.0;
}

node CALR
{
rate_up = DyingTumorCell ? $u_CALR : 0.0;
// rate_down = Death ? $d_CALR : 0.0 ;
rate_down = 0.0;
}

node ATP
{
rate_up = DyingTumorCell ? $u_ATP : 0.0 ;
rate_down = DyingTumorCell ? 0.0 : $d_ATP ;
}

node HMGB1
{
rate_up = DyingTumorCell ? $u_HMGB1 : 0.0 ;
rate_down = DyingTumorCell ? 0.0 : $d_HMGB1 ;
}

node DC
{
rate_up = 0.0;
rate_down = 0.0;
}

node ActDC
{
rate_up = DC ? ((#cell(CALR)/#cell(1)) * (#cell(ATP)/#cell(1)) *(#cell(HMGB1)/#cell(1))) : 0.0 ;
rate_down = 0.0;
}

node MigrDC
{
rate_up = ActDC ? $migrDC : 0.0;
rate_down = 0.0;
}

node LNodeDC
{
rate_up = MigrDC ? $lNodeDC : 0.0;
rate_down = 0.0;
}

node TCell
{
rate_up = LNodeDC ? $primingTCell : 0.0 ;
rate_down = 0.0 ;
}

node CTL
{
rate_up = TCell ? $activateCTL : 0.0 ;
rate_down = 0.0 ;
}

death
{
rate = (TumorCell ? (-log(1- (#cell(CTL)/#cell(1)))) : 0.0) + (CTL ? (-log(1- (#cell(TumorCell)/#cell(1)))) : 0.0) + (DyingTumorCell ? $deathChemotherapy : 0.0);
}

division
{
rate = (TumorCell ? $growthFactor : 0.0) + ((TCell & !(CTL)) ? (#cell(TumorCell)/#cell(1)*$clonalExpansion) : 0.0) ;
}
74 changes: 74 additions & 0 deletions engine/tests/popmaboss/ICD_phenomenological_TDC_ratio.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
//
// MaBoSS 2.0 configuration template generated at Wed Nov 20 11:08:24 2019
//

// global configuration variables
time_tick = 1;
//max_time = 720;
max_time = 266;
//sample_count = 100000;
sample_count = 1000;
discrete_time = 0;
use_physrandgen = 0;
seed_pseudorandom = 0;
display_traj = 0;
statdist_traj_count = 0;
statdist_cluster_threshold = 1;
thread_count = 2;
statdist_similarity_cache_max_size = 20000;
// init_pop = 20;

// variables to be set in the configuration file or by using the --config-vars option
$u_CALR = 1/4;
$d_CALR = 50;
$u_ATP = 1/4;
$d_ATP = 50;
$u_HMGB1 = 1/6;
$d_HMGB1 = 50;
$migrDC = 1/(2*24);
$lNodeDC = 1/(3*24);
$activateCTL = 1/24;
$primingTCell = 1/(24);
$chemotherapy = .5;
$deathChemotherapy = 1/100;
$clonalExpansion = 1/12;
// $expCALR = 0; // define in upp
$growthFactor = 1/(240);
// $secrATP = 0; // define in upp
// $secrHMGB1 = 0; // defined in upp
$popCTL = 0; // defined in upp
// $popTumorCell = 0; // defined in upp
// set is_internal attribute value to 1 if node is an internal node
TumorCell.is_internal = 1;
DyingTumorCell.is_internal = 1;
CALR.is_internal = 1;
ATP.is_internal = 1;
HMGB1.is_internal = 1;
DC.is_internal = 0;
ActDC.is_internal = 1;
MigrDC.is_internal = 1;
LNodeDC.is_internal = 1;
TCell.is_internal = 0;
CTL.is_internal = 1;
// if NODE initial state is:
// - equals to 1: NODE.istate = 1;
// - equals to 0: NODE.istate = 0;
// - random: NODE.istate = -1; OR [NODE].istate = 0.5 [0], 0.5 [1]; OR skip NODE.istate declaration
// - weighted random: [NODE].istate = P0 [0], P1 [1]; where P0 and P1 are arithmetic expressions

[TumorCell,DC].pop_istate = 1.0 [{[1,0]:18} , {[0,1]:2}];

TumorCell.istate = 0;
DC.istate = 0;
DyingTumorCell.istate = 0;
CALR.istate = 0;
ATP.istate = 0;
HMGB1.istate = 0;
ActDC.istate = 0;
MigrDC.istate = 0;
LNodeDC.istate = 0;
TCell.istate = 0;
CTL.istate = 0;

custom_pop_output = #cell(DC) > 0 ? (#cell(DC -- TCell)+#cell(TCell))/#cell(DC) : 0.0;
// custom_pop_output = #cell(TCell);
Loading

0 comments on commit 8c8438d

Please sign in to comment.