
# path of programs, change to your paths
PLINK=p-link
TREEMIX=~/Documents/Software/treemix-1.12/src/treemix

# convert to binary
$PLINK --file batch_1.plink --make-bed --out data

# [optional] use only unlinked sites
#$PLINK --bfile data --indep-pairwise 50 5 0.5 --out data
#$PLINK --bfile data --extract data.prune.in --make-bed --out data
# this can be done only if you convert Scaffold0 Scaffold1 in number 1,2...
# however you don't have many sites (~2.7k) so that should be OK

# [optional] filter out sites/individuals with many missing data

# create a cluster file in plink format (ID Family Cluster/Pop)
cut -f 2 38k.plink.ped > tmp1
cut -f 1 38k.plink.ped > tmp2
paste -d " " tmp2 tmp1 tmp2 | tail -n +2 > data.clst
rm tmp*

# get frequency files in plink format
$PLINK --bfile data --freq --within data.clst --out data

# zip it
gzip -c data.frq.strat > data.frq.strat.gz

# convert plink to treemix format
python plink2treemix.py data.frq.strat.gz data.frq.strat.treemix.gz

# you should run it at least 100 times and record the result with highest likelihood
# you may also want to test different gene flow events, say from 0 to 5 (?); then visually inspect the residuals plots and check that indeed you see no substantial better fit with more gene flow events (you can also check likelihood values)

# this is with 100 runs and mig events 0-5
# if you have a root, set it as -root ID

# I put temporary trees in this folder
mkdir Data

for K in {1..100};
        do treemix -i data.frq.strat.treemix.gz -o Data/data.frq.strat.tree.0.${K}  -root OUTGROUP ;
	treemix -i data.frq.strat.treemix.gz -o Data/data.frq.strat.tree.1.${K} -root OUTGROUP -m 1;
	treemix -i data.frq.strat.treemix.gz -o Data/data.frq.strat.tree.2.${K} -root OUTGROUP -m 2;
	treemix -i data.frq.strat.treemix.gz -o Data/data.frq.strat.tree.3.${K} -root OUTGROUP -m 3;
	treemix -i data.frq.strat.treemix.gz -o Data/data.frq.strat.tree.4.${K} -root OUTGROUP -m 4;
	treemix -i data.frq.strat.treemix.gz -o Data/data.frq.strat.tree.5.${K} -root OUTGROUP -m 5;
done

tail -n 1 Data/data.frq.strat.tree.*.*.llik | cut -d \: -f 2 > Data/data.likes






