diff --git a/docs/parameter_tables/SusScr/EUW_4Z22.csv b/docs/parameter_tables/SusScr/EUW_4Z22.csv new file mode 100644 index 000000000..767cde73f --- /dev/null +++ b/docs/parameter_tables/SusScr/EUW_4Z22.csv @@ -0,0 +1,119 @@ +Population size,"185,569",Ancestral population size +Population size,"185,569",Pop. size during 1st time interval +Population size,"185,569",Pop. size during 2nd time interval +Population size,"185,569",Pop. size during 3rd time interval +Population size,"227,322",Pop. size during 4th time interval +Population size,"244,366",Pop. size during 5th time interval +Population size,"257,709",Pop. size during 6th time interval +Population size,"266,139",Pop. size during 7th time interval +Population size,"269,079",Pop. size during 8th time interval +Population size,"266,737",Pop. size during 9th time interval +Population size,"260,037",Pop. size during 10th time interval +Population size,"250,383",Pop. size during 11th time interval +Population size,"239,404",Pop. size during 12th time interval +Population size,"228,687",Pop. size during 13th time interval +Population size,"219,431",Pop. size during 14th time interval +Population size,"212,188",Pop. size during 15th time interval +Population size,"206,885",Pop. size during 16th time interval +Population size,"203,122",Pop. size during 17th time interval +Population size,"200,394",Pop. size during 18th time interval +Population size,"198,227",Pop. size during 19th time interval +Population size,"196,421",Pop. size during 20th time interval +Population size,"195,313",Pop. size during 21th time interval +Population size,"195,519",Pop. size during 22th time interval +Population size,"197,046",Pop. size during 23th time interval +Population size,"198,505",Pop. size during 24th time interval +Population size,"196,750",Pop. size during 25th time interval +Population size,"187,892",Pop. size during 26th time interval +Population size,"170,202",Pop. size during 27th time interval +Population size,"145,672",Pop. size during 28th time interval +Population size,"118,313",Pop. size during 29th time interval +Population size,"91,987",Pop. size during 30th time interval +Population size,"69,317",Pop. size during 31th time interval +Population size,"51,412",Pop. size during 32th time interval +Population size,"38,124",Pop. size during 33th time interval +Population size,"28,668",Pop. size during 34th time interval +Population size,"22,151",Pop. size during 35th time interval +Population size,"17,894",Pop. size during 36th time interval +Population size,"15,508",Pop. size during 37th time interval +Population size,"14,837",Pop. size during 38th time interval +Population size,"15,815",Pop. size during 39th time interval +Population size,"18,286",Pop. size during 40th time interval +Population size,"21,804",Pop. size during 41th time interval +Population size,"25,457",Pop. size during 42th time interval +Population size,"27,863",Pop. size during 43th time interval +Population size,"27,640",Pop. size during 44th time interval +Population size,"24,556",Pop. size during 45th time interval +Population size,"19,965",Pop. size during 46th time interval +Population size,"15,571",Pop. size during 47th time interval +Population size,"12,347",Pop. size during 48th time interval +Population size,"10,218",Pop. size during 49th time interval +Population size,"8,576",Pop. size during 50th time interval +Population size,"7,333",Pop. size during 51th time interval +Population size,"6,554",Pop. size during 52th time interval +Population size,"6,541",Pop. size during 53th time interval +Population size,"3,441",Pop. size during 54th time interval +Population size,"3,441",Pop. size during 55th time interval +Population size,"5,547",Pop. size during 56th time interval +Population size,"5,547",Pop. size during 57th time interval +Time (gen.),"1,172,152.6",Beginning of 1st time interval +Time (gen.),"1,063,269.9",Beginning of 2nd time interval +Time (gen.),"964,461.4",Beginning of 3rd time interval +Time (gen.),"874,795.2",Beginning of 4th time interval +Time (gen.),"793,425.3",Beginning of 5th time interval +Time (gen.),"719,584.0",Beginning of 6th time interval +Time (gen.),"652,574.9",Beginning of 7th time interval +Time (gen.),"591,765.8",Beginning of 8th time interval +Time (gen.),"536,583.0",Beginning of 9th time interval +Time (gen.),"486,505.9",Beginning of 10th time interval +Time (gen.),"441,062.2",Beginning of 11th time interval +Time (gen.),"399,823.1",Beginning of 12th time interval +Time (gen.),"362,399.6",Beginning of 13th time interval +Time (gen.),"328,438.8",Beginning of 14th time interval +Time (gen.),"297,620.1",Beginning of 15th time interval +Time (gen.),"269,652.9",Beginning of 16th time interval +Time (gen.),"244,273.4",Beginning of 17th time interval +Time (gen.),"221,242.1",Beginning of 18th time interval +Time (gen.),"200,341.7",Beginning of 19th time interval +Time (gen.),"181,375.1",Beginning of 20th time interval +Time (gen.),"164,163.4",Beginning of 21th time interval +Time (gen.),"148,544.2",Beginning of 22th time interval +Time (gen.),"134,370.2",Beginning of 23th time interval +Time (gen.),"121,507.6",Beginning of 24th time interval +Time (gen.),"109,835.1",Beginning of 25th time interval +Time (gen.),"99,242.6",Beginning of 26th time interval +Time (gen.),"89,630.2",Beginning of 27th time interval +Time (gen.),"80,907.1",Beginning of 28th time interval +Time (gen.),"72,991.2",Beginning of 29th time interval +Time (gen.),"65,807.6",Beginning of 30th time interval +Time (gen.),"59,288.7",Beginning of 31th time interval +Time (gen.),"53,373.0",Beginning of 32th time interval +Time (gen.),"48,004.6",Beginning of 33th time interval +Time (gen.),"43,132.9",Beginning of 34th time interval +Time (gen.),"38,712.0",Beginning of 35th time interval +Time (gen.),"34,700.1",Beginning of 36th time interval +Time (gen.),"31,059.4",Beginning of 37th time interval +Time (gen.),"27,755.6",Beginning of 38th time interval +Time (gen.),"24,757.4",Beginning of 39th time interval +Time (gen.),"22,036.7",Beginning of 40th time interval +Time (gen.),"19,567.7",Beginning of 41th time interval +Time (gen.),"17,327.1",Beginning of 42th time interval +Time (gen.),"15,293.9",Beginning of 43th time interval +Time (gen.),"13,448.7",Beginning of 44th time interval +Time (gen.),"11,774.3",Beginning of 45th time interval +Time (gen.),"10,254.8",Beginning of 46th time interval +Time (gen.),"8,875.9",Beginning of 47th time interval +Time (gen.),"7,624.6",Beginning of 48th time interval +Time (gen.),"6,489.0",Beginning of 49th time interval +Time (gen.),"5,458.5",Beginning of 50th time interval +Time (gen.),"4,523.4",Beginning of 51th time interval +Time (gen.),"3,674.8",Beginning of 52th time interval +Time (gen.),"2,904.7",Beginning of 53th time interval +Time (gen.),"2,205.9",Beginning of 54th time interval +Time (gen.),"1,571.7",Beginning of 55th time interval +Time (gen.),"996.2",Beginning of 56th time interval +Time (gen.),"473.9",Beginning of 57th time interval +Time (gen.),"0",Beginning of 58th time interval +Generation time (yrs.),3,Generation time +Mutation rate,3.6e-9,Per-base per-generation mutation rate +Recombination rate,1e-8,Per-base per-generation recombination rate diff --git a/docs/parameter_tables/SusScr/NCW_4Z22.csv b/docs/parameter_tables/SusScr/NCW_4Z22.csv new file mode 100644 index 000000000..54adf8bb9 --- /dev/null +++ b/docs/parameter_tables/SusScr/NCW_4Z22.csv @@ -0,0 +1,119 @@ +Population size,"157,604",Ancestral population size +Population size,"157,604",Pop. size during 1st time interval +Population size,"157,604",Pop. size during 2nd time interval +Population size,"157,604",Pop. size during 3rd time interval +Population size,"157,958",Pop. size during 4th time interval +Population size,"158,874",Pop. size during 5th time interval +Population size,"160,382",Pop. size during 6th time interval +Population size,"162,594",Pop. size during 7th time interval +Population size,"165,602",Pop. size during 8th time interval +Population size,"169,471",Pop. size during 9th time interval +Population size,"174,219",Pop. size during 10th time interval +Population size,"179,786",Pop. size during 11th time interval +Population size,"186,032",Pop. size during 12th time interval +Population size,"192,720",Pop. size during 13th time interval +Population size,"199,534",Pop. size during 14th time interval +Population size,"206,099",Pop. size during 15th time interval +Population size,"212,005",Pop. size during 16th time interval +Population size,"216,828",Pop. size during 17th time interval +Population size,"220,150",Pop. size during 18th time interval +Population size,"221,589",Pop. size during 19th time interval +Population size,"220,830",Pop. size during 20th time interval +Population size,"217,677",Pop. size during 21th time interval +Population size,"212,105",Pop. size during 22th time interval +Population size,"204,305",Pop. size during 23th time interval +Population size,"194,696",Pop. size during 24th time interval +Population size,"183,895",Pop. size during 25th time interval +Population size,"172,654",Pop. size during 26th time interval +Population size,"161,743",Pop. size during 27th time interval +Population size,"151,873",Pop. size during 28th time interval +Population size,"143,635",Pop. size during 29th time interval +Population size,"137,496",Pop. size during 30th time interval +Population size,"133,793",Pop. size during 31th time interval +Population size,"132,773",Pop. size during 32th time interval +Population size,"134,604",Pop. size during 33th time interval +Population size,"139,407",Pop. size during 34th time interval +Population size,"147,192",Pop. size during 35th time interval +Population size,"157,649",Pop. size during 36th time interval +Population size,"169,846",Pop. size during 37th time interval +Population size,"181,982",Pop. size during 38th time interval +Population size,"191,547",Pop. size during 39th time interval +Population size,"195,884",Pop. size during 40th time interval +Population size,"193,154",Pop. size during 41th time interval +Population size,"183,211",Pop. size during 42th time interval +Population size,"167,371",Pop. size during 43th time interval +Population size,"147,268",Pop. size during 44th time interval +Population size,"124,769",Pop. size during 45th time interval +Population size,"102,492",Pop. size during 46th time interval +Population size,"82,821",Pop. size during 47th time interval +Population size,"66,767",Pop. size during 48th time interval +Population size,"54,119",Pop. size during 49th time interval +Population size,"44,466",Pop. size during 50th time interval +Population size,"37,881",Pop. size during 51th time interval +Population size,"33,474",Pop. size during 52th time interval +Population size,"29,425",Pop. size during 53th time interval +Population size,"23,458",Pop. size during 54th time interval +Population size,"23,458",Pop. size during 55th time interval +Population size,"96,756",Pop. size during 56th time interval +Population size,"96,756",Pop. size during 57th time interval +Time (gen.),"2,681,025.5",Beginning of 1st time interval +Time (gen.),"2,453,801.1",Beginning of 2nd time interval +Time (gen.),"2,245,706.5",Beginning of 3rd time interval +Time (gen.),"2,055,131.1",Beginning of 4th time interval +Time (gen.),"1,880,600.1",Beginning of 5th time interval +Time (gen.),"1,720,762.8",Beginning of 6th time interval +Time (gen.),"1,574,382.0",Beginning of 7th time interval +Time (gen.),"1,440,324.8",Beginning of 8th time interval +Time (gen.),"1,317,553.8",Beginning of 9th time interval +Time (gen.),"1,205,118.8",Beginning of 10th time interval +Time (gen.),"1,102,149.6",Beginning of 11th time interval +Time (gen.),"1,007,849.2",Beginning of 12th time interval +Time (gen.),"921,487.9",Beginning of 13th time interval +Time (gen.),"842,397.3",Beginning of 14th time interval +Time (gen.),"769,965.2",Beginning of 15th time interval +Time (gen.),"703,631.1",Beginning of 16th time interval +Time (gen.),"642,881.6",Beginning of 17th time interval +Time (gen.),"587,246.7",Beginning of 18th time interval +Time (gen.),"536,295.4",Beginning of 19th time interval +Time (gen.),"489,633.8",Beginning of 20th time interval +Time (gen.),"446,900.7",Beginning of 21th time interval +Time (gen.),"407,765.0",Beginning of 22th time interval +Time (gen.),"371,924.3",Beginning of 23th time interval +Time (gen.),"339,100.9",Beginning of 24th time interval +Time (gen.),"309,040.9",Beginning of 25th time interval +Time (gen.),"281,511.6",Beginning of 26th time interval +Time (gen.),"256,300.0",Beginning of 27th time interval +Time (gen.),"233,210.9",Beginning of 28th time interval +Time (gen.),"212,065.6",Beginning of 29th time interval +Time (gen.),"192,700.6",Beginning of 30th time interval +Time (gen.),"174,966.0",Beginning of 31th time interval +Time (gen.),"158,724.3",Beginning of 32th time interval +Time (gen.),"143,850.0",Beginning of 33th time interval +Time (gen.),"130,228.0",Beginning of 34th time interval +Time (gen.),"117,752.8",Beginning of 35th time interval +Time (gen.),"106,327.8",Beginning of 36th time interval +Time (gen.),"95,864.8",Beginning of 37th time interval +Time (gen.),"86,282.7",Beginning of 38th time interval +Time (gen.),"77,507.2",Beginning of 39th time interval +Time (gen.),"69,470.4",Beginning of 40th time interval +Time (gen.),"62,110.3",Beginning of 41th time interval +Time (gen.),"55,370.0",Beginning of 42th time interval +Time (gen.),"49,196.9",Beginning of 43th time interval +Time (gen.),"43,543.7",Beginning of 44th time interval +Time (gen.),"38,366.3",Beginning of 45th time interval +Time (gen.),"33,624.8",Beginning of 46th time interval +Time (gen.),"29,282.6",Beginning of 47th time interval +Time (gen.),"25,305.9",Beginning of 48th time interval +Time (gen.),"21,664.0",Beginning of 49th time interval +Time (gen.),"18,328.7",Beginning of 50th time interval +Time (gen.),"15,274.2",Beginning of 51th time interval +Time (gen.),"12,476.8",Beginning of 52th time interval +Time (gen.),"9,915.0",Beginning of 53th time interval +Time (gen.),"7,568.9",Beginning of 54th time interval +Time (gen.),"5,420.1",Beginning of 55th time interval +Time (gen.),"3,452.5",Beginning of 56th time interval +Time (gen.),"1,650.4",Beginning of 57th time interval +Time (gen.),"0",Beginning of 58th time interval +Generation time (yrs.),3,Generation time +Mutation rate,3.6e-9,Per-base per-generation mutation rate +Recombination rate,1e-8,Per-base per-generation recombination rate diff --git a/docs/parameter_tables/SusScr/SCW_4Z22.csv b/docs/parameter_tables/SusScr/SCW_4Z22.csv new file mode 100644 index 000000000..7bc66c196 --- /dev/null +++ b/docs/parameter_tables/SusScr/SCW_4Z22.csv @@ -0,0 +1,119 @@ +Population size,"167,462",Ancestral population size +Population size,"167,462",Pop. size during 1st time interval +Population size,"167,462",Pop. size during 2nd time interval +Population size,"167,462",Pop. size during 3rd time interval +Population size,"167,076",Pop. size during 4th time interval +Population size,"167,230",Pop. size during 5th time interval +Population size,"167,699",Pop. size during 6th time interval +Population size,"168,579",Pop. size during 7th time interval +Population size,"169,978",Pop. size during 8th time interval +Population size,"172,003",Pop. size during 9th time interval +Population size,"174,756",Pop. size during 10th time interval +Population size,"178,297",Pop. size during 11th time interval +Population size,"182,639",Pop. size during 12th time interval +Population size,"187,720",Pop. size during 13th time interval +Population size,"193,390",Pop. size during 14th time interval +Population size,"199,411",Pop. size during 15th time interval +Population size,"205,477",Pop. size during 16th time interval +Population size,"211,220",Pop. size during 17th time interval +Population size,"216,231",Pop. size during 18th time interval +Population size,"220,072",Pop. size during 19th time interval +Population size,"222,294",Pop. size during 20th time interval +Population size,"222,488",Pop. size during 21th time interval +Population size,"220,336",Pop. size during 22th time interval +Population size,"215,704",Pop. size during 23th time interval +Population size,"208,686",Pop. size during 24th time interval +Population size,"199,623",Pop. size during 25th time interval +Population size,"189,072",Pop. size during 26th time interval +Population size,"177,722",Pop. size during 27th time interval +Population size,"166,325",Pop. size during 28th time interval +Population size,"155,600",Pop. size during 29th time interval +Population size,"146,157",Pop. size during 30th time interval +Population size,"138,474",Pop. size during 31th time interval +Population size,"132,892",Pop. size during 32th time interval +Population size,"129,664",Pop. size during 33th time interval +Population size,"129,003",Pop. size during 34th time interval +Population size,"131,158",Pop. size during 35th time interval +Population size,"136,399",Pop. size during 36th time interval +Population size,"144,929",Pop. size during 37th time interval +Population size,"156,701",Pop. size during 38th time interval +Population size,"171,195",Pop. size during 39th time interval +Population size,"187,279",Pop. size during 40th time interval +Population size,"203,076",Pop. size during 41th time interval +Population size,"216,006",Pop. size during 42th time interval +Population size,"223,082",Pop. size during 43th time interval +Population size,"222,119",Pop. size during 44th time interval +Population size,"214,028",Pop. size during 45th time interval +Population size,"202,479",Pop. size during 46th time interval +Population size,"188,417",Pop. size during 47th time interval +Population size,"170,674",Pop. size during 48th time interval +Population size,"153,983",Pop. size during 49th time interval +Population size,"143,358",Pop. size during 50th time interval +Population size,"137,971",Pop. size during 51th time interval +Population size,"133,968",Pop. size during 52th time interval +Population size,"122,471",Pop. size during 53th time interval +Population size,"42,415",Pop. size during 54th time interval +Population size,"42,415",Pop. size during 55th time interval +Population size,"33,850",Pop. size during 56th time interval +Population size,"33,850",Pop. size during 57th time interval +Time (gen.),"2,925,019.5",Beginning of 1st time interval +Time (gen.),"2,682,963.6",Beginning of 2nd time interval +Time (gen.),"2,460,786.9",Beginning of 3rd time interval +Time (gen.),"2,256,857.4",Beginning of 4th time interval +Time (gen.),"2,069,676.2",Beginning of 5th time interval +Time (gen.),"1,897,867.7",Beginning of 6th time interval +Time (gen.),"1,740,169.4",Beginning of 7th time interval +Time (gen.),"1,595,422.8",Beginning of 8th time interval +Time (gen.),"1,462,563.7",Beginning of 9th time interval +Time (gen.),"1,340,616.1",Beginning of 10th time interval +Time (gen.),"1,228,684.0",Beginning of 11th time interval +Time (gen.),"1,125,944.5",Beginning of 12th time interval +Time (gen.),"1,031,642.7",Beginning of 13th time interval +Time (gen.),"945,085.7",Beginning of 14th time interval +Time (gen.),"865,637.6",Beginning of 15th time interval +Time (gen.),"792,714.4",Beginning of 16th time interval +Time (gen.),"725,780.2",Beginning of 17th time interval +Time (gen.),"664,343.2",Beginning of 18th time interval +Time (gen.),"607,951.7",Beginning of 19th time interval +Time (gen.),"556,191.7",Beginning of 20th time interval +Time (gen.),"508,682.7",Beginning of 21th time interval +Time (gen.),"465,075.5",Beginning of 22th time interval +Time (gen.),"425,049.4",Beginning of 23th time interval +Time (gen.),"388,310.8",Beginning of 24th time interval +Time (gen.),"354,589.6",Beginning of 25th time interval +Time (gen.),"323,637.7",Beginning of 26th time interval +Time (gen.),"295,227.8",Beginning of 27th time interval +Time (gen.),"269,151.1",Beginning of 28th time interval +Time (gen.),"245,216.0",Beginning of 29th time interval +Time (gen.),"223,246.8",Beginning of 30th time interval +Time (gen.),"203,081.8",Beginning of 31th time interval +Time (gen.),"184,572.8",Beginning of 32th time interval +Time (gen.),"167,584.0",Beginning of 33th time interval +Time (gen.),"151,990.5",Beginning of 34th time interval +Time (gen.),"137,677.7",Beginning of 35th time interval +Time (gen.),"124,540.4",Beginning of 36th time interval +Time (gen.),"112,481.9",Beginning of 37th time interval +Time (gen.),"101,413.8",Beginning of 38th time interval +Time (gen.),"91,254.6",Beginning of 39th time interval +Time (gen.),"81,929.8",Beginning of 40th time interval +Time (gen.),"73,370.9",Beginning of 41th time interval +Time (gen.),"65,514.9",Beginning of 42th time interval +Time (gen.),"58,304.2",Beginning of 43th time interval +Time (gen.),"51,685.6",Beginning of 44th time interval +Time (gen.),"45,610.6",Beginning of 45th time interval +Time (gen.),"40,034.5",Beginning of 46th time interval +Time (gen.),"34,916.4",Beginning of 47th time interval +Time (gen.),"30,218.5",Beginning of 48th time interval +Time (gen.),"25,906.4",Beginning of 49th time interval +Time (gen.),"21,948.7",Beginning of 50th time interval +Time (gen.),"18,315.8",Beginning of 51th time interval +Time (gen.),"14,981.4",Beginning of 52th time interval +Time (gen.),"11,920.8",Beginning of 53th time interval +Time (gen.),"9,111.6",Beginning of 54th time interval +Time (gen.),"6,533.0",Beginning of 55th time interval +Time (gen.),"4,166.4",Beginning of 56th time interval +Time (gen.),"1,994.0",Beginning of 57th time interval +Time (gen.),"0",Beginning of 58th time interval +Generation time (yrs.),3,Generation time +Mutation rate,3.6e-9,Per-base per-generation mutation rate +Recombination rate,1e-8,Per-base per-generation recombination rate diff --git a/docs/parameter_tables/SusScr/SMW_4Z22.csv b/docs/parameter_tables/SusScr/SMW_4Z22.csv new file mode 100644 index 000000000..248fb93f2 --- /dev/null +++ b/docs/parameter_tables/SusScr/SMW_4Z22.csv @@ -0,0 +1,119 @@ +Population size,"177,796",Ancestral population size +Population size,"177,796",Pop. size during 1st time interval +Population size,"177,796",Pop. size during 2nd time interval +Population size,"177,796",Pop. size during 3rd time interval +Population size,"219,719",Pop. size during 4th time interval +Population size,"238,998",Pop. size during 5th time interval +Population size,"255,602",Pop. size during 6th time interval +Population size,"267,869",Pop. size during 7th time interval +Population size,"274,517",Pop. size during 8th time interval +Population size,"274,910",Pop. size during 9th time interval +Population size,"269,176",Pop. size during 10th time interval +Population size,"258,150",Pop. size during 11th time interval +Population size,"243,141",Pop. size during 12th time interval +Population size,"225,653",Pop. size during 13th time interval +Population size,"207,099",Pop. size during 14th time interval +Population size,"188,647",Pop. size during 15th time interval +Population size,"171,127",Pop. size during 16th time interval +Population size,"155,055",Pop. size during 17th time interval +Population size,"140,717",Pop. size during 18th time interval +Population size,"128,223",Pop. size during 19th time interval +Population size,"117,580",Pop. size during 20th time interval +Population size,"108,697",Pop. size during 21th time interval +Population size,"101,382",Pop. size during 22th time interval +Population size,"95,327",Pop. size during 23th time interval +Population size,"90,121",Pop. size during 24th time interval +Population size,"85,281",Pop. size during 25th time interval +Population size,"80,318",Pop. size during 26th time interval +Population size,"74,824",Pop. size during 27th time interval +Population size,"68,519",Pop. size during 28th time interval +Population size,"61,330",Pop. size during 29th time interval +Population size,"53,429",Pop. size during 30th time interval +Population size,"45,251",Pop. size during 31th time interval +Population size,"37,379",Pop. size during 32th time interval +Population size,"30,345",Pop. size during 33th time interval +Population size,"24,476",Pop. size during 34th time interval +Population size,"19,850",Pop. size during 35th time interval +Population size,"16,361",Pop. size during 36th time interval +Population size,"13,810",Pop. size during 37th time interval +Population size,"11,973",Pop. size during 38th time interval +Population size,"10,648",Pop. size during 39th time interval +Population size,"9,670",Pop. size during 40th time interval +Population size,"8,915",Pop. size during 41th time interval +Population size,"8,299",Pop. size during 42th time interval +Population size,"7,769",Pop. size during 43th time interval +Population size,"7,291",Pop. size during 44th time interval +Population size,"6,835",Pop. size during 45th time interval +Population size,"6,379",Pop. size during 46th time interval +Population size,"5,931",Pop. size during 47th time interval +Population size,"5,521",Pop. size during 48th time interval +Population size,"5,175",Pop. size during 49th time interval +Population size,"4,882",Pop. size during 50th time interval +Population size,"4,602",Pop. size during 51th time interval +Population size,"4,407",Pop. size during 52th time interval +Population size,"4,897",Pop. size during 53th time interval +Population size,"13,416",Pop. size during 54th time interval +Population size,"13,416",Pop. size during 55th time interval +Population size,"1,779,489",Pop. size during 56th time interval +Population size,"1,779,489",Pop. size during 57th time interval +Time (gen.),"957,493.4",Beginning of 1st time interval +Time (gen.),"862,249.7",Beginning of 2nd time interval +Time (gen.),"776,455.6",Beginning of 3rd time interval +Time (gen.),"699,173.4",Beginning of 4th time interval +Time (gen.),"629,558.7",Beginning of 5th time interval +Time (gen.),"566,850.8",Beginning of 6th time interval +Time (gen.),"510,364.4",Beginning of 7th time interval +Time (gen.),"459,482.3",Beginning of 8th time interval +Time (gen.),"413,648.4",Beginning of 9th time interval +Time (gen.),"372,361.9",Beginning of 10th time interval +Time (gen.),"335,171.5",Beginning of 11th time interval +Time (gen.),"301,671.0",Beginning of 12th time interval +Time (gen.),"271,494.2",Beginning of 13th time interval +Time (gen.),"244,311.4",Beginning of 14th time interval +Time (gen.),"219,825.5",Beginning of 15th time interval +Time (gen.),"197,768.9",Beginning of 16th time interval +Time (gen.),"177,900.7",Beginning of 17th time interval +Time (gen.),"160,003.7",Beginning of 18th time interval +Time (gen.),"143,882.3",Beginning of 19th time interval +Time (gen.),"129,360.4",Beginning of 20th time interval +Time (gen.),"116,279.2",Beginning of 21th time interval +Time (gen.),"104,495.9",Beginning of 22th time interval +Time (gen.),"93,881.7",Beginning of 23th time interval +Time (gen.),"84,320.5",Beginning of 24th time interval +Time (gen.),"75,708.0",Beginning of 25th time interval +Time (gen.),"67,949.9",Beginning of 26th time interval +Time (gen.),"60,961.6",Beginning of 27th time interval +Time (gen.),"54,666.6",Beginning of 28th time interval +Time (gen.),"48,996.1",Beginning of 29th time interval +Time (gen.),"43,888.3",Beginning of 30th time interval +Time (gen.),"39,287.2",Beginning of 31th time interval +Time (gen.),"35,142.6",Beginning of 32th time interval +Time (gen.),"31,409.2",Beginning of 33th time interval +Time (gen.),"28,046.2",Beginning of 34th time interval +Time (gen.),"25,016.8",Beginning of 35th time interval +Time (gen.),"22,288.1",Beginning of 36th time interval +Time (gen.),"19,830.0",Beginning of 37th time interval +Time (gen.),"17,615.9",Beginning of 38th time interval +Time (gen.),"15,621.3",Beginning of 39th time interval +Time (gen.),"13,824.8",Beginning of 40th time interval +Time (gen.),"12,206.4",Beginning of 41th time interval +Time (gen.),"10,748.6",Beginning of 42th time interval +Time (gen.),"9,435.4",Beginning of 43th time interval +Time (gen.),"8,252.5",Beginning of 44th time interval +Time (gen.),"7,187.0",Beginning of 45th time interval +Time (gen.),"6,227.2",Beginning of 46th time interval +Time (gen.),"5,362.6",Beginning of 47th time interval +Time (gen.),"4,583.8",Beginning of 48th time interval +Time (gen.),"3,882.3",Beginning of 49th time interval +Time (gen.),"3,250.3",Beginning of 50th time interval +Time (gen.),"2,681.1",Beginning of 51th time interval +Time (gen.),"2,168.4",Beginning of 52th time interval +Time (gen.),"1,706.5",Beginning of 53th time interval +Time (gen.),"1,290.4",Beginning of 54th time interval +Time (gen.),"915.6",Beginning of 55th time interval +Time (gen.),"578.0",Beginning of 56th time interval +Time (gen.),"273.9",Beginning of 57th time interval +Time (gen.),"0",Beginning of 58th time interval +Generation time (yrs.),3,Generation time +Mutation rate,3.6e-9,Per-base per-generation mutation rate +Recombination rate,1e-8,Per-base per-generation recombination rate diff --git a/docs/parameter_tables/SusScr/WildBoar_6W25.csv b/docs/parameter_tables/SusScr/WildBoar_6W25.csv new file mode 100644 index 000000000..b6c1e1a78 --- /dev/null +++ b/docs/parameter_tables/SusScr/WildBoar_6W25.csv @@ -0,0 +1,19 @@ +Population size,"87,338",CAW pop. size +Population size,"87,275",EUW pop. size +Population size,"85,535",NAW pop. size +Population size,"88,237",SCW pop. size +Population size,"1,158",OUT (Sus Cebifrons) pop. size +Population size,"81,722",NEW pop. size +Migration rate,"1.29e-2",OUT-SCW migration rate (per gen.) +Migration rate,"4.0e-4",SCW-NAW migration rate (per gen.) +Migration rate,"1.01e-1",NAW-CAW migration rate (per gen.) +Migration rate,"5.8e-3",CAW-EUW migration rate (per gen.) +Migration rate,"1.0e-4",CAW-NEW migration rate (per gen.) +Migration rate,"2.48e-2",EUW-NEW migration rate (per gen.) +Epoch Time (gen.),"3,662,321",T1: SCW branches off from OUT (Sus Cebifrons) +Epoch Time (gen.),"1,826,091",T2: CAW branches off from SCW +Epoch Time (gen.),"1,064,310",T3: NAW branches off from SCW +Epoch Time (gen.),"948,246",T4: NEW branches off from CAW +Epoch Time (gen.),"682,571.5",T5: EUW branches off from CAW +Generation time (yrs.),6.5,Generation time +Mutation rate,2.5e-8,Per-base per-generation mutation rate diff --git a/stdpopsim/catalog/SusScr/__init__.py b/stdpopsim/catalog/SusScr/__init__.py index 3a3fb4d6c..8dbff5fa4 100644 --- a/stdpopsim/catalog/SusScr/__init__.py +++ b/stdpopsim/catalog/SusScr/__init__.py @@ -3,3 +3,4 @@ """ from . import species # noqa: F401 +from . import demographic_models # noqa: F401 diff --git a/stdpopsim/catalog/SusScr/demographic_models.py b/stdpopsim/catalog/SusScr/demographic_models.py new file mode 100644 index 000000000..486d5f88a --- /dev/null +++ b/stdpopsim/catalog/SusScr/demographic_models.py @@ -0,0 +1,893 @@ +import msprime +import stdpopsim +import numpy as np + +_species = stdpopsim.get_species("SusScr") + +_ZhangEtAl = stdpopsim.Citation( + doi="https://doi.org/10.1016/j.gpb.2022.02.001", + year=2022, + author="Zhang et al.", + reasons={stdpopsim.CiteReason.DEM_MODEL}, + # Figure 3A Demographic history of four wild boar populations using PSMC. +) + + +def _WildBoar_4Z22_SMW(): + id = "SMW_4Z22" + description = "Piecewise size model for Sumatran wild boar (Zhang et al. 2022)" + long_description = """ + This demographic model is a piecewise size model for Sumatran wild boar + from Zhang et al. (2022). + Use the following assumptions: + a generation interval of 3 years (page 1042), + a mutation rate of 3.6e-9 (pages 1042), and + a recombination rate of 1.0e-8. + Effective population sizes are given in Figure 3A of Zhang et al. (2022), + """ + populations = [ + stdpopsim.Population(id="SMW", description="Sumatran wild boar"), + ] + + # Recombination rate used in simulations by Zhang et al. (2022). + recombination_rate = 1.0e-8 + + # Mutation rate as reported by Zhang et al. (2022, p. 1042). + mutation_rate = 3.6e-9 + + # generation time as reported by Zhang et al. (2022, p. 1042). + generation_time = 3 + + # Arrays of time intervals and effective population sizes (Ne) + # extracted from Figure 3A of Zhang et al. (2022). + times_SMW = np.array( + [ + 2.73927358e02, + 5.78023037e02, + 9.15644600e02, + 1.29042319e03, + 1.70646249e03, + 2.16836360e03, + 2.68112557e03, + 3.25034434e03, + 3.88228734e03, + 4.58381894e03, + 5.36262421e03, + 6.22720899e03, + 7.18699932e03, + 8.25254043e03, + 9.43542214e03, + 1.07485773e04, + 1.22063812e04, + 1.38247512e04, + 1.56213455e04, + 1.76158620e04, + 1.98300377e04, + 2.22880719e04, + 2.50168500e04, + 2.80461921e04, + 3.14091764e04, + 3.51425621e04, + 3.92871621e04, + 4.38882663e04, + 4.89961137e04, + 5.46665891e04, + 6.09615960e04, + 6.79499271e04, + 7.57079856e04, + 8.43205313e04, + 9.38817004e04, + 1.04495925e05, + 1.16279229e05, + 1.29360367e05, + 1.43882272e05, + 1.60003671e05, + 1.77900673e05, + 1.97768912e05, + 2.19825486e05, + 2.44311369e05, + 2.71494220e05, + 3.01670997e05, + 3.35171512e05, + 3.72361864e05, + 4.13648392e05, + 4.59482304e05, + 5.10364447e05, + 5.66850835e05, + 6.29558737e05, + 6.99173418e05, + 7.76455553e05, + 8.62249706e05, + 9.57493383e05, + ] + ) + + sizes_SMW = np.array( + [ + 1779489.40969792, + 1779489.40969792, + 13416.26015625, + 13416.26015625, + 4897.87538542, + 4407.55934167, + 4602.38501458, + 4882.16945417, + 5175.03595208, + 5521.00167917, + 5931.53208958, + 6379.94077917, + 6835.21381875, + 7291.75527083, + 7769.6234625, + 8299.03645625, + 8915.17404583, + 9670.28985208, + 10648.26076042, + 11973.82643542, + 13810.97271667, + 16361.98652708, + 19850.04628958, + 24476.4067875, + 30345.97319583, + 37379.65626458, + 45251.64807708, + 53429.50139792, + 61330.81592292, + 68519.9417, + 74824.37462917, + 80318.72721042, + 85281.27919792, + 90121.39207292, + 95327.01915, + 101382.3458125, + 108697.15634583, + 117580.74443333, + 128223.79475417, + 140717.28481667, + 155055.94200417, + 171127.08900625, + 188647.94444792, + 207099.76492292, + 225653.40658958, + 243141.8429, + 258150.88096458, + 269176.84263542, + 274910.67647083, + 274517.54320833, + 267869.51971667, + 255602.00604583, + 238998.64808125, + 219719.2630625, + 177796.99883125, + 177796.99883125, + 177796.99883125, + 177796.99883125, + ] + ) + + demographic_events = [] + population_configurations = [ + msprime.PopulationConfiguration( + # SMW + initial_size=sizes_SMW[0], + metadata=populations[0].asdict(), + ) + ] + + for i, t in enumerate(times_SMW): + curr_time = t + demographic_events.append( + msprime.PopulationParametersChange( + time=curr_time, initial_size=sizes_SMW[i + 1], population_id=0 + ) + ) + citations = [ + _ZhangEtAl, + ] + return stdpopsim.DemographicModel( + id=id, + description=description, + long_description=long_description, + populations=populations, + citations=citations, + generation_time=generation_time, + mutation_rate=mutation_rate, + recombination_rate=recombination_rate, + population_configurations=population_configurations, + demographic_events=demographic_events, + ) + + +_species.add_demographic_model(_WildBoar_4Z22_SMW()) + + +def _WildBoar_4Z22_SCW(): + id = "SCW_4Z22" + description = "Piecewise size model for South Chinese wild boar (Zhang et al. 2022)" + long_description = """ + This demographic model is a piecewise size model for South Chinese wild boar + from Zhang et al. (2022). + Use the following assumptions: + a generation interval of 3 years (page 1042), + a mutation rate of 3.6e-9 (pages 1042), and + a recombination rate of 1.0e-8. + Effective population sizes are given in Figure 3A of Zhang et al. (2022), + """ + populations = [ + stdpopsim.Population(id="SCW", description="South Chinese wild boar"), + ] + + # Recombination rate used in simulations by Zhang et al. (2022). + recombination_rate = 1.0e-8 + + # Mutation rate as reported by Zhang et al. (2022, p. 1042). + mutation_rate = 3.6e-9 + + # generation time as reported by Zhang et al. (2022, p. 1042). + generation_time = 3 + + # Arrays of time intervals and effective population sizes (Ne) + # extracted from Figure 3A of Zhang et al. (2022). + times_SCW = np.array( + [ + 1.99403694e03, + 4.16635167e03, + 6.53298917e03, + 9.11155438e03, + 1.19207665e04, + 1.49813502e04, + 1.83158132e04, + 2.19486686e04, + 2.59064353e04, + 3.02185290e04, + 3.49163713e04, + 4.00345035e04, + 4.56105867e04, + 5.16856248e04, + 5.83041873e04, + 6.55148549e04, + 7.33708880e04, + 8.19297812e04, + 9.12546004e04, + 1.01413760e05, + 1.12481913e05, + 1.24540399e05, + 1.37677688e05, + 1.51990497e05, + 1.67584008e05, + 1.84572766e05, + 2.03081788e05, + 2.23246787e05, + 2.45215958e05, + 2.69151087e05, + 2.95227777e05, + 3.23637678e05, + 3.54589597e05, + 3.88310839e05, + 4.25049432e05, + 4.65075467e05, + 5.08682658e05, + 5.56191680e05, + 6.07951735e05, + 6.64343225e05, + 7.25780199e05, + 7.92714367e05, + 8.65637555e05, + 9.45085710e05, + 1.03164269e06, + 1.12594450e06, + 1.22868398e06, + 1.34061613e06, + 1.46256370e06, + 1.59542276e06, + 1.74016939e06, + 1.89786767e06, + 2.06967619e06, + 2.25685739e06, + 2.46078689e06, + 2.68296356e06, + 2.92501955e06, + ] + ) + + sizes_SCW = np.array( + [ + 33850.15878472, + 33850.15878472, + 42415.73746528, + 42415.73746528, + 122471.26215278, + 133968.84173611, + 137971.28927083, + 143358.39802083, + 153983.53072917, + 170674.89909722, + 188417.32638889, + 202479.8775, + 214028.48909722, + 222119.29177083, + 223082.21461806, + 216006.36961806, + 203076.21666667, + 187279.35704861, + 171195.58163194, + 156701.04118056, + 144929.35951389, + 136399.5478125, + 131158.73826389, + 129003.69420139, + 129664.10194444, + 132892.7125, + 138474.47829861, + 146157.35913194, + 155600.39875, + 166325.92413194, + 177722.21965278, + 189072.05152778, + 199623.53322917, + 208686.39548611, + 215704.30020833, + 220336.06829861, + 222488.32677083, + 222294.56111111, + 220072.32861111, + 216231.4453125, + 211220.05697917, + 205477.84118056, + 199411.93979167, + 193390.05072917, + 187720.14885417, + 182639.90072917, + 178297.72260417, + 174756.79166667, + 172003.29138889, + 169978.50152778, + 168579.8009375, + 167699.88868056, + 167230.23815972, + 167076.80784722, + 167462.11069444, + 167462.11069444, + 167462.11069444, + 167462.11069444, + ] + ) + + demographic_events = [] + population_configurations = [ + msprime.PopulationConfiguration( + # SCW + initial_size=sizes_SCW[0], + metadata=populations[0].asdict(), + ) + ] + + for i, t in enumerate(times_SCW): + curr_time = t + demographic_events.append( + msprime.PopulationParametersChange( + time=curr_time, initial_size=sizes_SCW[i + 1], population_id=0 + ) + ) + citations = [ + _ZhangEtAl, + ] + return stdpopsim.DemographicModel( + id=id, + description=description, + long_description=long_description, + populations=populations, + citations=citations, + generation_time=generation_time, + mutation_rate=mutation_rate, + recombination_rate=recombination_rate, + population_configurations=population_configurations, + demographic_events=demographic_events, + ) + + +_species.add_demographic_model(_WildBoar_4Z22_SCW()) + + +def _WildBoar_4Z22_NCW(): + id = "NCW_4Z22" + description = "Piecewise size model for North Chinese wild boar (Zhang et al. 2022)" + long_description = """ + This demographic model is a piecewise size model for North Chinese wild boar + from Zhang et al. (2022). + Use the following assumptions: + a generation interval of 3 years (page 1042), + a mutation rate of 3.6e-9 (pages 1042), and + a recombination rate of 1.0e-8. + Effective population sizes are given in Figure 3A of Zhang et al. (2022), + """ + populations = [ + stdpopsim.Population(id="NCW", description="North Chinese wild boar") + ] + + # Recombination rate used in simulations by Zhang et al. (2022). + recombination_rate = 1.0e-8 + + # Mutation rate as reported by Zhang et al. (2022, p. 1042). + mutation_rate = 3.6e-9 + + # generation time as reported by Zhang et al. (2022, p. 1042). + generation_time = 3 + + # Arrays of time intervals and effective population sizes (Ne) + # extracted from Figure 3A of Zhang et al. (2022). + + times_NCW = np.array( + [ + 1.65039886e03, + 3.45249869e03, + 5.42012314e03, + 7.56889111e03, + 9.91496011e03, + 1.24768215e04, + 1.52742233e04, + 1.83287089e04, + 2.16639760e04, + 2.53058765e04, + 2.92825963e04, + 3.36248347e04, + 3.83663428e04, + 4.35437444e04, + 4.91968946e04, + 5.53699572e04, + 6.21103276e04, + 6.94704279e04, + 7.75071684e04, + 8.62826658e04, + 9.58647814e04, + 1.06327840e05, + 1.17752808e05, + 1.30228014e05, + 1.43850043e05, + 1.58724278e05, + 1.74965977e05, + 1.92700628e05, + 2.12065572e05, + 2.33210892e05, + 2.56299960e05, + 2.81511584e05, + 3.09040912e05, + 3.39100864e05, + 3.71924286e05, + 4.07765032e05, + 4.46900652e05, + 4.89633828e05, + 5.36295431e05, + 5.87246671e05, + 6.42881612e05, + 7.03631119e05, + 7.69965196e05, + 8.42397294e05, + 9.21487897e05, + 1.00784920e06, + 1.10214957e06, + 1.20511881e06, + 1.31755382e06, + 1.44032479e06, + 1.57438195e06, + 1.72076280e06, + 1.88060015e06, + 2.05513113e06, + 2.24570651e06, + 2.45380111e06, + 2.68102546e06, + ] + ) + sizes_NCW = np.array( + [ + 96756.31630556, + 96756.31630556, + 23458.80495833, + 23458.80495833, + 29425.85947222, + 33474.83920833, + 37881.70756944, + 44466.247875, + 54119.27695833, + 66767.63725, + 82821.19066667, + 102492.677625, + 124769.92051389, + 147268.88020833, + 167371.86218056, + 183211.86730556, + 193154.92351389, + 195884.55361111, + 191547.07273611, + 181982.01226389, + 169846.56283333, + 157649.26608333, + 147192.93995833, + 139407.98716667, + 134604.18288889, + 132773.80743056, + 133793.61497222, + 137496.10609722, + 143635.95609722, + 151873.229125, + 161743.12776389, + 172654.01822222, + 183895.50908333, + 194696.07972222, + 204305.66308333, + 212105.24738889, + 217677.25102778, + 220830.11786111, + 221589.25106944, + 220150.69498611, + 216828.44369444, + 212005.34018056, + 206099.23534722, + 199534.26356944, + 192720.28676389, + 186032.24869444, + 179786.74659722, + 174219.32091667, + 169471.61906944, + 165602.61593056, + 162594.35872222, + 160382.21744444, + 158874.45340278, + 157958.32315278, + 157604.38413889, + 157604.38413889, + 157604.38413889, + 157604.38413889, + ] + ) + + demographic_events = [] + population_configurations = [ + msprime.PopulationConfiguration( + # NCW + initial_size=sizes_NCW[0], + metadata=populations[0].asdict(), + ) + ] + + for i, t in enumerate(times_NCW): + curr_time = t + demographic_events.append( + msprime.PopulationParametersChange( + time=curr_time, initial_size=sizes_NCW[i + 1], population_id=0 + ) + ) + citations = [ + _ZhangEtAl, + ] + return stdpopsim.DemographicModel( + id=id, + description=description, + long_description=long_description, + populations=populations, + citations=citations, + generation_time=generation_time, + mutation_rate=mutation_rate, + recombination_rate=recombination_rate, + population_configurations=population_configurations, + demographic_events=demographic_events, + ) + + +_species.add_demographic_model(_WildBoar_4Z22_NCW()) + + +def _WildBoar_4Z22_EUW(): + id = "EUW_4Z22" + description = "Piecewise size model for European wild boar (Zhang et al. 2022)" + long_description = """ + This demographic model is a piecewise size model for European wild boar + from Zhang et al. (2022). + Use the following assumptions: + a generation interval of 3 years (page 1042), + a mutation rate of 3.6e-9 (pages 1042), and + a recombination rate of 1.0e-8. + Effective population sizes are given in Figure 3A of Zhang et al. (2022), + """ + populations = [ + stdpopsim.Population(id="EUW", description="European wild boar"), + ] + + # Recombination rate used in simulations by Zhang et al. (2022). + recombination_rate = 1.0e-8 + + # Mutation rate as reported by Zhang et al. (2022, p. 1042). + mutation_rate = 3.6e-9 + + # generation time as reported by Zhang et al. (2022, p. 1042). + generation_time = 3 + + # Arrays of time intervals and effective population sizes (Ne) + # extracted from Figure 3A of Zhang et al. (2022). + + times_EUW = np.array( + [ + 4.73944067e02, + 9.96184317e02, + 1.57169447e03, + 2.20586658e03, + 2.90469702e03, + 3.67478640e03, + 4.52343262e03, + 5.45853783e03, + 6.48902685e03, + 7.62456820e03, + 8.87589953e03, + 1.02547811e04, + 1.17742748e04, + 1.34486974e04, + 1.52938534e04, + 1.73270808e04, + 1.95676705e04, + 2.20366792e04, + 2.47574417e04, + 2.77555702e04, + 3.10594196e04, + 3.47000872e04, + 3.87120172e04, + 4.31329076e04, + 4.80045934e04, + 5.33730000e04, + 5.92887014e04, + 6.58076171e04, + 7.29911514e04, + 8.09071236e04, + 8.96301860e04, + 9.92426139e04, + 1.09835096e05, + 1.21507619e05, + 1.34370208e05, + 1.48544232e05, + 1.64163422e05, + 1.81375131e05, + 2.00341726e05, + 2.21242073e05, + 2.44273403e05, + 2.69652931e05, + 2.97620093e05, + 3.28438776e05, + 3.62399639e05, + 3.99823091e05, + 4.41062175e05, + 4.86505909e05, + 5.36582961e05, + 5.91765790e05, + 6.52574915e05, + 7.19584033e05, + 7.93425272e05, + 8.74795183e05, + 9.64461440e05, + 1.06326985e06, + 1.17215260e06, + ] + ) + sizes_EUW = np.array( + [ + 5547.85555833, + 5547.85555833, + 3441.95138333, + 3441.95138333, + 6541.99460833, + 6554.498625, + 7333.81495, + 8576.63983333, + 10218.268475, + 12347.62349167, + 15571.03348333, + 19965.80023333, + 24556.33154167, + 27640.593675, + 27863.434775, + 25457.68985833, + 21804.402, + 18286.82223333, + 15815.00125833, + 14837.34055, + 15508.11829167, + 17894.224, + 22151.841675, + 28668.64231667, + 38124.11929167, + 51412.077375, + 69317.2482, + 91987.3558, + 118313.02894167, + 145672.11955, + 170202.141525, + 187892.04803333, + 196750.74873333, + 198505.42484167, + 197046.38273333, + 195519.707375, + 195313.25165, + 196421.64673333, + 198227.826375, + 200394.78640833, + 203122.56785833, + 206885.76555833, + 212188.14263333, + 219431.71019167, + 228687.02993333, + 239404.45968333, + 250383.241975, + 260037.1563, + 266737.61259167, + 269079.62885833, + 266139.37209167, + 257709.20124167, + 244366.97386667, + 227322.813825, + 185569.531525, + 185569.531525, + 185569.531525, + 185569.531525, + ] + ) + + demographic_events = [] + population_configurations = [ + msprime.PopulationConfiguration( + # EUW + initial_size=sizes_EUW[0], + metadata=populations[0].asdict(), + ) + ] + + for i, t in enumerate(times_EUW): + curr_time = t + demographic_events.append( + msprime.PopulationParametersChange( + time=curr_time, initial_size=sizes_EUW[i + 1], population_id=0 + ) + ) + citations = [ + _ZhangEtAl, + ] + return stdpopsim.DemographicModel( + id=id, + description=description, + long_description=long_description, + populations=populations, + citations=citations, + generation_time=generation_time, + mutation_rate=mutation_rate, + recombination_rate=recombination_rate, + population_configurations=population_configurations, + demographic_events=demographic_events, + ) + + +_species.add_demographic_model(_WildBoar_4Z22_EUW()) + +_WangEtAl = stdpopsim.Citation( + doi="https://doi.org/10.1016/j.xgen.2025.100954", + year=2025, + author="Wang et al.", + reasons={stdpopsim.CiteReason.DEM_MODEL}, + # Figure 2b Demographic history of four geographical populations using MSMC. +) + + +def _WildBoar_6W25(): + id = "WildBoar_6W25" + description = "The demographic model for wild boar (Wang et al. 2025)" + long_description = """ + This demographic model of wild boar with Sus Cebifrons (outgroup) and 5 wild boar + populations including Central Asian wild boars (CAW), European wild boars (EUW), + Southern Chinese wild boar (NAW), Northeast Asian wild boars (SCW), + and Near East wild boars (NEW), from Wang et al. (2025). + SVDquartets estimated the branching pattern among the five populations + (SAW, SCW, NAW, CAW, and EUW). + Fastsimcoal2 analysed more recent demographic fluctuations and respective + divergence times based on the species tree. + Model parameters were a generation interval of 6.5 years (Figure S11) and + a mutation rate of 2.5e-8 (page e2). + Estimated effective population sizes, divergence times, + and migration rates are given in Figure S11. + """ + # Mutation rate used by Wang et al. (2025). + mutation_rate = 2.5e-8 + # generation time declaimed in Figure S11 by Wang et al. (2025). + generation_time = 6.5 + + # Estimated effective population sizes. from Figure S11D + N_CAW = 87338 + N_EUW = 87275 + N_NAW = 85535 + N_SCW = 88237 + N_OUT = 1158 + N_NEW = 81722 + # Estimated divergence times, from Figure S11B + T1 = 3_662_321 # SCW branches off from OUT (Sus Cebifrons) + T2 = 1_826_091 # CAW branches off from SCW + T3 = 1_064_310 # NAW branches off from SCW + T4 = 948_246 # NEW branches off from CAW + T5 = 682571.5 # EUW branches off from CAW + + # Migration rates, from Figure S11B + # migration is bidirectional. + m_OUT_SCW = 1.29e-2 + m_SCW_NAW = 4e-4 + m_NAW_CAW = 1.01e-1 + m_CAW_EUW = 5.8e-3 + m_CAW_NEW = 1e-4 + m_EUW_NEW = 2.48e-2 + + model = msprime.Demography() + model.add_population( + initial_size=N_CAW, + name="CAW", + description="Central Asian wild boars", + initially_active=True, + ) + model.add_population( + initial_size=N_EUW, + name="EUW", + description="European wild boars", + ) + model.add_population( + initial_size=N_NAW, + name="NAW", + description="Northeast Asian wild boars", + ) + model.add_population( + initial_size=N_SCW, + name="SCW", + description="Southern Chinese wild boar", + initially_active=True, + ) + model.add_population( + initial_size=N_OUT, + name="OUT", + description="Sus Cebifrons", + initially_active=True, + ) + model.add_population( + initial_size=N_NEW, + name="NEW", + description="Near East wild boars", + ) + + model.set_symmetric_migration_rate(populations=["OUT", "SCW"], rate=m_OUT_SCW) + model.set_symmetric_migration_rate(rate=m_SCW_NAW, populations=["SCW", "NAW"]) + model.set_symmetric_migration_rate(rate=m_NAW_CAW, populations=["NAW", "CAW"]) + model.set_symmetric_migration_rate(rate=m_CAW_EUW, populations=["CAW", "EUW"]) + model.set_symmetric_migration_rate(rate=m_CAW_NEW, populations=["CAW", "NEW"]) + model.set_symmetric_migration_rate(rate=m_EUW_NEW, populations=["EUW", "NEW"]) + + # Modeling Strategy: + # Although Figures 2C and S11A depict a standard tree structure, Figure 2D and the + # main text (Wang et al. 2025) suggest a "budding" or "successive divergence" model + # where lineages emerge from a central ancestral trunk. + # From figure 2D and main text (Wang et al. 2025), Asian wild boars and Southeast + # Asian Suids split ∼3.6 million years ago (mya), + # with Central Asian and Southern Chinese ancestors diverging ∼1.8 mya. + # The split between Central Asian and European-Near East ancestors occurred ∼0.9 mya, + # followed by a European-Near East divergence ∼0.6 mya. + + model.add_population_split(time=T1, derived=["SCW"], ancestral="OUT") + model.add_population_split(time=T2, derived=["CAW"], ancestral="SCW") + model.add_population_split(time=T3, derived=["NAW"], ancestral="SCW") + model.add_population_split(time=T4, derived=["EUW"], ancestral="CAW") + model.add_population_split(time=T5, derived=["NEW"], ancestral="CAW") + model.sort_events() + citations = [ + _WangEtAl, + ] + return stdpopsim.DemographicModel( + id=id, + description=description, + long_description=long_description, + citations=citations, + generation_time=generation_time, + mutation_rate=mutation_rate, + model=model, + ) + + +_species.add_demographic_model(_WildBoar_6W25())