TDeme::implementCoalEventCT() : deme size of population 0 is zero !

76 views
Skip to first unread message

Lily Huang

unread,
Jan 3, 2024, 4:57:26 AM1/3/24
to fastsimcoal2
Hi!
I am trying to model the historical population demography of two sister species with gene flow using fsc26, and I want to simulate a model like this:
mix-isolation-mix model.jpg
In this scenario, Pop0 and Pop1 diverged at TDIV, followed by gene flow between T1 and T2. There was no gene flow between them after T2, but gene flow resumed between the two populations after T3.

However, when I tried to simulate this model, I got this message in the log file:TDeme::implementCoalEventCT() : deme size of population 0 is zero !

It seems like the simulation has something wrong.
Is there any problem in my .tpl and .est file ?

.tpl file and .est file were pasted below
-----------------------------------------------tpl file-------------------------------------------
//Parameters for the coalescence simulation program : fsimcoal2.exe
2 samples to simulate :
//Population effective sizes (number of genes)
$Pop0$
$Pop1$
//Samples sizes and samples age
80
86
//Growth rates  : negative growth implies population expansion
0
0
//Number of migration matrices : 0 implies no migration between demes
5
//Migration matrix 0
0 $MIG1$
$MIG2$ 0
//Migration matrix 1
0 0
0 0
//Migration matrix 2
0 $MIG3$
$MIG4$ 0
//Migration matrix 3
0 0
0 0
//Migration matrix 4
0 0
0 0
//historical event: time, source, sink, migrants, new deme size, new growth rate, migration matrix index
2   historical event
$T3$ 0 0 1 1 0 1
$T2$ 0 0 0 0 0 2
$T1$ 0 0 1 1 0 3
$TDIV$ 0 1 1 $RESIZE$ 0 4
//Number of independent loci [chromosome]

-------------------------------------------------------est file----------------------------------------------------------------------------
// Search ranges and rules file
// ****************************

[PARAMETERS]
//#isInt? #name   #dist.#min  #max
//all Ns are in number of haploid individuals
1  $Pop0$       logunif  26000   322000   output bounded
1  $Pop1$     logunif  37000   1763000   output bounded
0  $RESIZE$      unif  1   40   output bounded
1  $TDIV$        unif  225000   625000   output bounded
1  $T3$        logunif  5000  220000   output bounded
1  $T1$       logunif  6000  620000   output bounded
1  $T2$      logunif  5500  619500   output bounded
0  $MIG1$        unif  1e-6 1e-3   output bounded
0  $MIG2$        unif  1e-6 1e-3   output bounded
0  $MIG3$        unif  1e-6 1e-3   output bounded
0  $MIG4$        unif  1e-6 1e-3   output bounded

[RULES]
$T1$ > $T2$
$TDIV$ > $T1$
$TDIV$ > $T2$
$T1$ > $T3$
$T2$ > $T3$
[COMPLEX PARAMETERS]

Laurent Excoffier

unread,
Jan 8, 2024, 4:37:00 PM1/8/24
to fastsimcoal2
The problem is that you say 
$T2$ 0 0 0 0 0 2
which sets deme 0 to be of size zero... not good if there are still some lineages in there

Also do not use rules... and use the new syntax of fsc27 or fsc28

best

laurent

Reply all
Reply to author
Forward
0 new messages