# Does the “.full.aln” file produced by snippy-core contain all bases of my input sequences aligned to the reference genome?

I have a number of sequences and a reference genome. I used snippy to align each individual sequence with the reference genome. I then used snippy-core on the *.aln files from snippy which produced a new *.aln file, and a *.full.aln. It is my understanding that the new *.aln file contains a core SNP alignment with only bases shared by all of my sequences, and that the *.full.aln file contains the core genome alignment with all bases of each sequence aligned to the reference genome - regardless of variation between sequences. Is my understanding correct? If not where am I going wrong?

Further, the program snp-sites uses both the new *.aln and *.full.aln file to produce a file which can be run through FastTree to produce a phylogenetic tree. Does this just process the files to give the phylogenetic distance between each of my sequences? I don't really understand what this step achieves at all...

Thanks

• Welcome to bioinformatics SE @Fabien! This post asks some nice and specific questions. However, the policy of this site is to try and have one post ask one question. Do you think you could take the second paragraph about FastTree and make a separate post about it? – winni2k Nov 25 '18 at 8:57

snippy-core is a tool that processes the snippy_outdir_{1..n} folders and produces the following files:
1. core.aln – a fasta format file that contains only the polymorphic sites (of {'A', 'C', 'T' and 'G'}) in your input set, whose length tends to decrease asymptotically as more isolates are added
2. core.full.aln – a fasta format file that contains all the core sites and base calls at any site where the reference has a site. The reference is not padded but the sequences mapped to it may be padded with gaps and 'N's to match the length of the reference. The alignment length does not change as more isolates are added.
snippy{-core} was written by Torsten Seemann et al. snp-sites was written by Andrew Page et al. snp-sites will reduce any alignment to the core polymorphic sites (columns) and will still output a fasta. Therefore the output of a core.aln processed through snp-sites should be the identical the input. All fasta alignments can then be processed downstream using your tree inference package of choice (e.g., FastTree, IQ-Tree, MrBayes, BEAST ...). If you want a distance matrix output from a fasta alignment, use something like snp-dists, also written by Torsten Seemann, or the APE package in R. Be sure to consider how gaps and Ns are treated during this step.