ChangeLog

($Id$)

Version  date		what has been changed

TODO:
	- positive 'penalties' for the non-penalized subtree
	- missing quartet handling
	- missing quartet counting in parallel case
	- primes-lcg64.c: int offset  <=>  unsigned MAXPRIMEOFFSET ??? (HAS) 
	- user defined substitution matrices
	- more protein substitution matrices (cf. MrBayes)
	- AA models: Poisson, Equalin, mtMAM, rtREV, cpREV, BLOSUM, GTR, LG
	  (Jones, Dayhoff, mtREV, WAG, VT exist already)
	- SeqFault by -wsl auf consensus
	- branchlength correction for ML evaluation of rooted usertrees
	  (currently one of the two branchlengths at the root is lost
	  when the root bifurcation is removed)

	- lcg64 -> mlfg (done?!?)
	- SPRNG for the sequential run (cmdline: number of runs/current 
	  number/seed), if parallel run are run sequentially
	- CHECK: continuous *.ptall file for parallel version
	- split rate-heterogeneity block in *.puzzle file
	  order: rate-heterogeneity parameters, quartet statistic, site 
	  specific rate categories
	- check MP-, ME-, NJ-quartet code
	- quartet distances for trees: 2 trees (branch lengths=1) -> 
	  2 matrices -> quart-topol easy to compute.
	- column aliasing on quartet level to speed up likelihood calculation
	- fix mem leakage in SPRNG (init)
	- implement '-m100', '-m50', '-mrel', '-mlrel', '-mext'
		'-m100'  include Si, if P(Si) == 100%
		'-m50'   include Si, if P(Si) > 50% [default]
		'-mrel'  include Si, if Si congruent to all Sj (j<i), else stop (done)
		'-mlrel' include Si, if Si congruent to all Sj (j<i)
		'-mext'  include Si, if Si congruent to all Sj in current Tree

	- check EPS creation in clustered likelihood mapping (done, SVG implemented)
	- check for output of additional top string on likelihood mapping 
	  triangle
	- commandline option to increase CHAR_PER_TREENODE

DONE:

5.3.rc16  05.12.2014	- sliding windows informative sites output in VisRec 
			  format implemented 
			- use compiler switch USE_RECDETEC in puzzle.h to 
			  switch between RecDetec and VisRec format
			- implemented -statsonly flag to stop after alignment
			  statistics
			- removed a few debug outputs

5.3.rc15  26.05.2014	- clean up of a number of compiler warnings

5.3.rc14  04.10.2013	- informative site counts added

5.3.rc13  13.08.2013	- informative sites (now correct double casts)

5.3.rc12  26.06.2013	- LG model added

5.3.rc11  27.02.2013	- autotools files updated
			- options -prefix= and -param= fixed for paths 
			  with space characters

5.3.rc10  03.01.2013	- nasty realloc error fixed, led to occasional
			  crashes in the realloc of myrealloc due to data
			  corruption
			- some debug messages removed or commented out

5.3.rc9   17.08.2012	- output of the number of nt/aa-pairs of two seqs 
			  in tstv output
			- writing aliinfo file behind savealiinfo_optn 
			  check (was writing almost empty file before)
			- some debug messages commented out
	  20.08.2012	- edit dist added to tstv output
			- a few compiler switches added to lcg64.c to 
			  prevent compile-time warnings

5.3.rc8   20.01.2012	- aliinfo output
			- split occurence 

5.3.rc7   14.07.2010	- Increased CHAR_PER_TREENODE in ml2.c from 53 to 64.

5.3.rc6   30.09.2009	- informative site evaluation extended: count and output
			  also variable but uninformative and fully informative site;
			  discarded all taxon-wise informative counting except
			  informative and uninformative (all others are equal to 
			  that of the alignment.
			- corrections in SVG: colors added; stroke removed in 
			  circles (too large due to the stroke line);
			  coordinates corrected in plotlmpointcolor (x1000)

5.3.rc5   28.09.2009	- computation of pairwise edit distances (incl. gaps+
			  ambiguous chars as separate state / excl. sites
			  with gaps or amiguous characters) and out put
			  to *.editdist file (flag '-weditdist')
			- output format of *.rdstats streamlined
			- corrections in the help/usage output
	  29.09.2009	- ChangeLog file and TODOs checked and updated
			- exit character 'q' in cluster selection for 
			  likelihood mapping to get back to menu.

5.3.rc4   14.09.2009	- hint at ts/tv parameter input: "0.5 for JC69/F81"
	  22.09.2009	- evaluation of parsimony informative sites of
			  the of alignment summary and per sequence
			- output to RecDetec stats file (-wrdsf: *.rdstats)

5.3.rc3   13.09.2009	- SVG code corrected:
			  - using rotate instead on transform in rectangles,
			  - using text-anchor="middle" to center,
			  - order of x and y coordinates exchanged,
			  - output of corner labels of upper triangle

5.3.rc2   30.08.2009	- SVG code scaled up from 0-1 to 0-1000

5.3.rc1   29.08.2008	- command line parameter, if click-started
			- little bug fix in KH-test if tree are equal
			- SVG output of likelihood mapping
			- outgroup option added for consensus

CODE FREEZE for 5.3
===================

5.2.pl21  11.04.2008	- file pointer error fixed (writing final check double)

5.2.pl20  07.04.2008	- check double added before and after binary block in 
			  binary quartet likelihood and quartet files
	  10.04.2008	- debug messages eliminated with compiler switch
			  BININPUTDEBUG

5.2.pl19  26.03.2008	- bus error bug fixed, for -wsl bei consensus
			- plain split output added

5.2.pl18  20.10.2007	- site character frequencies output to *.sitefreqs
          07.02.2008	- general substitution counts output to *.tstv
			  for visualization with R, not only TS:TV
			- several cmdline options added to "-h" help.
			- default # of Gamma rates numcats = 4 (8 before).

5.2.pl17  18.10.2007	- output of character frequencies per site added
			  currently to output.sitefreqs (for visualization with R)
          20.10.2007	- superqp fixes added
			  - re-read of names via *.subsetmat file corrected
			  - consistency check *.subsetmat file added
			  - handling of quartet info 15=(1111) for missing data

5.2.pl16  05.06.2007	- ts:tv data output added for visualization with R

5.2.pl15  27.09.2006	- quarted puzzling with only those quartets which 
			  contain the root taxon.
			- added: -rootstart, rootstart_optn
			- added: -rootqonly, rootquartsonly_optn

5.2.pl14  11.09.2006	- tp_exit added for click-started sessions
			- consensus debugged, many comments added

5.2.pl13  11.09.2006	- fix 'Unable to proceed' exits for *-click*
			- memory allocation for >257 species (works on 64bit)
			- output of quartet statistics sums added
			- likelihood mapping: output mappings per sequence

5.2.pl12  26.11.2005	- quartet statistics output to file added

5.2.pl11  21.11.2005	- sequence-wise likelihood mapping (almost) finished
          22.11.2005	- final fixes in sequence-wise likelihood mapping

5.2.pl10  14.06.2005	- changing from hard wired voting scheme to 
			  command line controlled (-voting)
			- add '-voting' to '-hhh'

5.2.pl9   11.06.2005	- all different voting schemes (penalty, bonus, 
			  bonus-penalty) implemented for path/subtree
			  normalized/absolute in pstep-tripl.c
	  14.06.2005	- memory leakage fixed (freeing node-penalty arrays)
			- weighted voting (partly =1*2 / partyl resolved =2*1)

5.2.pl8   18.03.2005	- "identical seq <- zero dist" remark outside loop fix
          03.04.2005	- minedges array size: Maxspc -> Maxbrnch
			- checkquartet outputs the neighbor to the addition 
			  sequence besides the penalty neighbor
          04.04.2005	- implementation of a penalty/bonus weighting method
			  (triplbonus)
          22.04.2005	- renamed mrca.c recur.c split.c triplbonus.c to
			  pstep-*.c
          04.05.2005	- ... fixed Makefile.am accordingly
          05.06.2005	- pstep-tripl.c: triplet based subtree votings finished
			  (currently with test output, todo path bonus)
			  (switch off output: define QUIET)
			  (switch on output: define PSTEP_TRIPL)

5.2.pl7   02.03.2005	- output of chi-square values added (for Ross)

5.2.pl6   28.01.2005	- trees in treefile don't contain LFs
			- continuous *.ptall file for parallel version
			- (c)-Notices updated to 2005
          01.02.2004	- MPI bug fixed, called twice MPI_Finalized 
          		- tp_exit's fixed

5.2.pl5   21.10.2004	- RNG type output changed from stderr to stdout
          27.01.2005	- new flags (mainly for parallel/batch processing)
			  -wallptrees - write successively all puzzling 
			                trees to PREFIX.allquart
			  -param=YYY  - use file 'YYY' for parameter input 
			                (instead of stdin)

5.2.pl4   14.09.2004    - warnings fixed in SPRNG
			- autotools updated (automake 1.7)
          17.09.2004	- NEXUS fprintfsortedpstrees: context checking, whether
			  allowed
			- output of MLStep+PuzStep time only when doing QP
			- Output of inner branch lench added (-wqltb/-wqlta)

5.2.pl3   13.09.2004    - ME/NJ/MP quartets hidden by "QUART_TEST define"
			- menu item "Approximate quartet likelihood" replaced
			  by "Quartet evaluation criterion"
			- 'identical sequence' comment added to report
			- likelihood mapping color added test-wise (COL_TEST)
          14.09.2004	- comma added after last nexus split (for SplitsTree)
			- distributed for GfBS 2004 workshop, Stuttgart

5.2.pl2   01.09.2004    - NEXUS output refined (distances added)
			- temporariy '9' option added to menu for NEXUS
			- distributed for VEME 2004 workshop, Helsinki

5.2.pl1   12.07.2004    - quartet criteria ME, MP, NJ added (MP - to be finished)
          11.08.2004    - quartet criteria added to cmdline/menu
          13.08.2004    - treesort.c: taxon IDs in treestring 0..n-1 -> 1..n
			  for NEXUS output
			- 'sed' corrected to 'sed -e'; 'sed' for VERSION 
			  corrected for empty VERSION and for the '.' -> '\.'
          23.08.2004    - ml2.c: prepared for computation/output of posterior
			  site rate likelihood for best site rate.
			  Marked with 'posterior sitelhl' in the comment.
			- ml2.c: output fixed of invariant rates (Rates[0 - 1])
          29.08.2004    - NEXUS output (trees and splits) todo: simple files
          30.08.2004    - doc/fig/Makefile deleted from configure.ac
			- compiler warnings fixed



5.2       12.07.2004    - Version 5.2 !!!

NEW RELEASE
===========

5.2.rc16  12.07.2004    - Makefile.am: double distclean rule removed
			- fflush added before mygets() - because of Windows 
			- manual spell-checked
			- '-consmrel' fixed
			- usage message extended

5.2.rc15  09.07.2004    - many changes to the manual

5.2.rc14  01.07.2004    - test suite checked, notice about results added

5.2.rc13  01.07.2004    - a number of small fixes (alloc and dealloc in epe)
			- convergence output for user branches fixed
			- G-T rate output precision fixed
			- tests checked and fixed

5.2.rc12  30.06.2004    - branch length convergence output corrected for 
			  user set branch lengths (i.e. no estimate)
			- avergedist updated: output of min/max/var/std.dev.
			- tstvratio and yrtsratio - no output for GTR
			- some future cmdline flags added to help
			- -prefix, -sub50, -randseed moved to usage output
			- -randseed=# added
			- release date changed in code

5.2.rc11  18.06.2004    - flags to set epsilon values added for debugging
			  (dependent on USE_ADJUSTABLE_EPS compiler switch)
          19.06.2004    - quartet percent computation fixed:
			  quartet sums moved qinfomatr[0] -> qinfomatr[8]
			  qinfomatr[0]=missing qs. (release 5.2.rc9)
			- character state output added to R/Q matrix output
			- average computation of dist-matrix changed:
			  mean=average, variance, std deviation
			  TODO: proper output / use Korbis S.E. method
          25.06.2004    - GTR model ready, menu order HKY, TN, GTR, (SH), HKY
          29.06.2004    - many changes to the manual

5.2.rc10  11.06.2004    - fixed no quartets in parameter estimtion for <4 seqs
          15.06.2004    - computation of Bayesian weights moved into 
			  subroutine loglkl2weight.
			- use subroutine loglkl2weight in parallel code 
			   -> fixing division by zero bug

5.2.rc9   11.06.2004    - sequence number check for <4 and >257 added
			  <4   - no quartet methods available
			  >257 - no quartet puzzling available
			- counting for missing quartets added for parallel
			  message checking (TODO: handling and checking)
			- output of root branch name added for clock analysis
			  (sequence name or "internal branch")

5.2.rc8   04.05.2004    - tree tests move to treetest.c/treetest.h
			- comments added
			- typo corrected (suset -> subset)
          08.06.2004	- ELW: continue counting p, when significantly worse
			- 1sKH/2sKH: restrict tests to 3 digits (0.00)
			  (test behaviour: seems not to use some trees (KH),
			  see above - used, but too low variance)

5.2.rc7   12.02.2004    - corrected typos in usage/README
          20.02.2004    - cmdline: prefix flag fixed 
          22.02.2004    - '-wsr/-wsl' flags fixed: output file
			  and file name output

5.2.rc6   25.11.2003    - 'FPRINTF...' changed to 'fprintf(STDOUT,' 
			- strcpy added in openfile-routines

5.2.rc5   25.11.2003    - filename length chack added
			- typo FILENAMELENTH corrected

5.2.rc4   19.11.2003    - minor corrections: int/uli comparisons
			- SPRNG added to src/sprng
			- src/sprng autoconf/automake setup
			- Parallel Parameter Estimation (JPDC, Ekki 1)

5.2.rc3   07.11.2003    - WAG Matrix code/docu corrected (Goldman)
			  TODO: remove additional output for printrmat
			  TODO: make PEPS* smaller to have better accuracy
			        in parameter estimation.

5.2.rc2   01.09.2003    - bug from 5.1.pl29 found and eliminated
			  alloc size wrong: worked if Maxsubset<=Maxspc
			  TODO: remove out-commented debug messages

5.2.rc1   20.08.2003    - first release candidate for tree-puzzle 5.2

CODE FREEZE
===========

5.1.pl30   20.08.2003   - naming convention changed for manual name input to
			  use FILENAME.puzzle, ... 

5.1.pl29   23.07.2003   - new compiler warnings fixed
			- index error naming fixed
			- debugging of matrix based permutation (not finished)

5.1.pl28   01.07.2003   - cmdline flags to switch off ml branch lengths
			  (-notreelh), tree tests (-notreetest)

5.1.pl27   24.06.2003   - output quartet support for incorporated split in
			  report file

5.1.pl26   06.06.2003   - menu order of tree reconstruction methods altered to
			  QP, user tree, consensus, dist (no tree)
			  (last two switched)

5.1.pl25   05.06.2003   - small changes to fix compiler warnings

5.1.pl24   04.06.2003   - changes from benchmark-branch merged:
			  debug output removed
			- checktime fixed: sumtodo <-> done for quartets

5.1.pl23   26.05.2003   - puzzle.c: CONSENSUS -> QUARTPUZ, 
			  allocated unnecessary memory
			- additional malloc-checks added (if buffer == NULL)
           01.06.2003   - mlmode conditions with readable constants (ml2.c,ml.h)
           		- garbage collection in tree2bipart/subtree2bipart

5.1.pl22   16.05.2003   - fixing Array Bound Read in fputid 
			  (bug had no effect, but was read before check)
			- garbage collection completed in p-step algorithms
			  and node-label (free_tree/internalnode),
			  trueIDtmp (allpstep), 
			- small fix in test script and rebuild of check-files

5.1.pl21   14.05.2003   - fixing free of all allocations in puzzling step
			  (mrca, recur, split, orig)

5.1.pl20   05.05.2003   - small fix in recursive Alg. (recur.c)
			- debug output removed
			- cross check removed from (recur.c,mrca.c)

5.1.pl19   27.04.2003   - recursive Alg. (recur.c) fixed:
			  edge cluster has not to be reconstructed after 
			  adding new leaves only updated.
			- debug output removed from recur.c, split.c
			- MRCA-based (mrca.c) finished

5.1.pl18   26.04.2003   - recursive (recur.c) finished
			  TODO: remove debug output
			- MRCA (mrca.c) startet

5.1.pl17   25.04.2003   - split-based (split.c) finished
			  TODO: remove debug output
			- recursive (recur.c) startet

5.1.pl16   22.04.2003   - orig pstep alg: updating of edgemap outsourced to
			  updateedgemap_orig
			- writeOTU_orig, writetree_orig, resetedgeinfo_orig,
			  minimumedgeinfo_orig:
			  _orig removed, since independent of algorithm type
			- onepstep: _orig added (onepstep_orig)
			- time check/status output moved to checktime routine.
			  added to ml step of parallel version
			- split.c temporarily added to release

5.1.pl15   18.04.2003   - trueID dependent procedures 'de-trueID-ed'
			  trueID saved in the tips of the tree.

5.1.pl14   10.04.2003   - consensus stuff moved to consensus.h/.c
			- unique tree sorting moved to treesort.h/.c
			- changes to pstep-split.h/.c
			- changed names of procedures using trueID to
			  *_trueID

5.1.pl13   07.04.2003   - subsetmatr.[hc] added to process missing data
			  analyses. (old version, functions in puzzle2)
			- deglobalized: guessdatatype, readsequencefile, 
			                getsizesites, initid, getseqs
			  removed obsolete: getdataset
			- moved: output of taxa after input 
			- computation of Maxbrnch moved from readsequencefile
			  to inputandinit
			- readsubsetfile, permutetaxa_ss added, '-rssm' works
			- empty quartets fixed in checkquartet
			  missing data -> OK, HALT error otherwise

5.1.pl12   04.04.2003   - tests: check-qp-clock regenerated, changes in
			  Makefile.am and template-test
			- obsolete stuff removed: global trueID_orig + alloc,
			  inittree_orig/freetree_orig from PP_SendDoPermutBlock
			  PP_slave_do_puzzling (ppuzzle), global _orig 
			  variables (pstep), makenewsplitentries (old),
			  kh_test (old)
			- column variable in tree output routines deglobalized
			- copyright headers added to pstep.[hc]
			- pstep copied to pstep-{split | mrca | recursive}
			- implementation of pstep-split.[ch] started
			  (done: structure/init, todo: remove _orig stuff)

5.1.pl11   03.04.2003   - tests/Makefile.am: 'build-puzzle failed' fixed
			- some changes in test script template
			- cleanup: removed obsolete routines
			  - puzzle module:  makenewsplitentriesnew
			  - ppuzzle module: PP_do_puzzling, PP_SendPermut, 
			    PP_RecvPermut, PP_SendSplits, PP_RecvSplits
			- deglobalized: makenewsplitentries, makepart, 
			  computebiparts, copysplit
			- parallel puzzling step based on allpstep, onepstep
			- time check/status output added to parallel version
			  (inaccurate since current slave progress not known)
			- TIMECHECK_INTERVAL for setting time interval 
			  of status output in ML/puzzling step
			- Header when printing 1 PAM rate matrix (-printrmat)
			- final pstep copied to pstep-{split | mrca | recursive}

5.1.pl10   02.04.2003   - tests/Makefile.am fixed (TODO: build-puzzle.test)
			- Dates/Version adjusted: April 2003/TREE-PUZZLE 5.2
			- Dates/Version fixed in doc/*.html, doc/*.tex
			- number added to outgroup(menu)/sequence(start) output
			- Time measurement only done after each completed 
			  intermediate tree to reduce the the number from 
			  O(Numtrial*n^4) to O(Numtrial) -> less overhead,
			  but 15min met less accurate.
			- quartet support output for splits added in 
			  writeoutputfile for later use (TODO: '#if0'ed)
			- (sequential) puzzling step moved from puzzle1.c 
			  to pstep.c: allpstep, onepstep
			  TODO: parallel puzzling step in ppuzzle.c
			        (works but with old PP_slave_do_puzzling)

5.1.pl9   31.03.2003    - consensus construction added to menu
			- support value computation fixed for phylip tree, 
			  wrong divisor used in consensus
			- test directory/Makefile.am/tests created 
			  (make check)

5.1.pl8   30.03.2003    - puzzling step proc's: most variables 'deglobalized'

5.1.pl7   26.03.2003    - original puzzling step out-sourced to pstep-orig.c
			  and pstep-orig.h
			  pstep.c, pstep.h (and above) added to Makefile.am


5.1.pl6   25.03.2003    - '-usebranch' option added fr later use
			- 'SONJA' added for external parameter estimation

5.1.pl5   24.03.2003    - ml branch length estimation added to consensus option
			  (todo: plausibility check - is tree file available)
			- output for reportfile fixed
			- output of likelihood to clocklike tree in treefile
			  added/fixed

5.1.pl4   21.03.2003    - consensus option added to compute usertree consensus
			  (only consensus is computed and printed to stdin)
			- usertreefile PREFIX fixed

5.1.pl3   20.03.2003    - TP_MAX_EXP_DIFF=b-a>0 introduced, such that 
			  (1.0+exp(a-b) == 1.0) to avoid the computation
			  as well as possible FPE, when a-b gets very small.
			- flag '-prefix=XXX' added: use 'XXX' as filename 
			  prefix instead of 'Infilename'


5.1.pl2   05.12.2002    - PP_Finalized before exit in parallel programs.

5.1.pl1   05.12.2002    - FPE in Brent's algorithm fixed: ()/0, when x=w=v.

5.1       05.11.2002    - Version 5.1 !!!

NEW RELEASE
===========

5.1.rc9   02.11.2002    - CPBI datasets (EF.phy, EF.3trees) added to data
			- manual updates (statistics, Acknowledgments)
			- latex2html added to Makefile.am
			- Date changed from September to November 2002

5.1.rc8   24.10.2002    - manual updated: quartet statistics, gap/ambiguous
			  character statistics, 1sKH, 2sKH, SH test, ELW.
			- fixes in manual (not finished: XXX)

5.1.rc7   24.10.2002    - printversion: ALPHA compiler warning fixed
			- HHH only for unimplemented stuff

5.1.rc6   15.09.2002    - small fixes: compiler warnings fixed
			- debug output removed
			- 2sKH moved to the end of test output
			  (1sKH, SH, ELW, 2sHK)
			- save site rates ('-wsr') added

5.1.rc5   15.09.2002    - small fixes: printf -> PRINTF

5.1.rc4   10.09.2002    - site likelihoods output to file added (PHYLIP-like)
			  TODO: binary
			- in preparation:-wslb, -wparam, -usebranch, -rssm, 
			  -consensus 

5.1.rc3   10.09.2002    - SH test, ELW test added.
			- one sided KH test, based on pairwise SH added
			- fflush added to utree output.

5.1.rc2   06.09.2002    - likelihood mapping: simplex labels moved to upper 
			  triangle, removed at lower right triangle

5.1.rc1   02.09.2002    - first release candidate for tree-puzzle 5.1
			- Changes to the LaTeX manual.

CODE FREEZE
===========

5.0.pl30  02.09.2002    - usertree CR bug changed, now accepts trees also 
			  in Mac and DOS format (CR or CR+LF).
			- Q-Support not used in this release (set to FALSE)

5.0.pl29  01.09.2002    - comment added, obsolete/unused functions removed

5.0.pl28  30.08.2002    - Version-no./Copyright changed in the file headers

5.0.pl27  29.08.2002    - Quartet support for inner edges added.
			  Q-Support is computed and added to consensus tree.
			  [todo: Q-Support output in final tree (fputphylogeny)]

5.0.pl26  15.08.2002    - Changes for CodeWarrior added (thanx to Andrew)

5.0.pl25  05.08.2002    - Ambiguous Characters Statistics changed: sum added

5.0.pl24  17.05.2002    - Quartet statistics changed; badqs and badtaxon removed

5.0.pl23  17.05.2002    - find all congruent splits below 50%
			- output congruent splits below 50% to puzzle file

5.0.pl22  16.05.2002    - cmdline flag '-sub50' added: computation of consensus
			  with splits below 50%, until incongruence or ambiguity

5.0.pl21  13.05.2002    - badtaxon moved from ml.h to puzzle.h and ...
			- quartet statistics extended from to unresoved (bad)
			  quartets to also fully and partly resolved quartets.
			- TODO: remove badqs and badtaxon from sources
			  obsolete by fullresqs, partresqs, unresqs, qinfomatr

5.0.pl20  07.05.2002    - a few comments added
			- '\0' delimited species name array Namestr added for 
			  better access. Copied from undelimited Identif after
			  read in.
			- check for name match while reading in quartets added.
			  exit if mismatch.

5.0.pl19  07.05.2002    - gaps and ambiguous characters added to puzzle report
			- abort when ambiguous characters = 100%
			- warning removed from translatedataset, because it 
			  ambiguity depends on datatype - might change in menu

5.0.pl18  03.04.2002    - src/test* removed from configure.ac and source tree

5.0.pl17  26.03.2002    - fflush added to evaluatetree after printing tree to
			  treefile

5.0.pl16  20.03.2002    - files adapted for CVS (Id tag added to files)
			- manual converted from HTML to LaTeX, pdflatex added
			  to Makefile.am

5.0.pl15  19.03.2002    - parameters added (translatedatas,getseqs,getdataset)
			- all malloc substituted by calloc.

5.0.pl14  15.03.2002    - counting gaps and ambiguous characters in sequence.
			  print warning if > 50 percent.

5.0.pl13  29.02.2002    - exchange O(n^2) chooser by one using O(n)
			- ml3.c renamed to mlparam.c to collect routines
			  for parameter estimation.
			- estimateparametersnotree, estimateparameterstree
			  moved to mlparam.c/ml.h
			- optimseqevolparamsq/optimseqevolparamst renamed to
			  optimseqevolparamsquart/optimseqevolparamstree

5.0.pl12  20.12.2001    - migration to automake 1.5/autoconf 2.52-minor changes
			- configure changed to use src/config.h
			- $(srcdir) added to allow build in other directories

5.0.pl11  19.12.2001    - alignment input fixed to accept also Mac format (CR)
			- removed debug message from 5.0.pl10
			- dependencies on Makefile added

5.0.pl10  18.12.2001    - root root search bug, the kept root fixed after 
			  first root search. Was introduced in 5.0.pl5.

5.0.pl9   18.12.2001    - possible number of charcters per node in tree 
			  strings enlarged from 23/2 to 50.
			  CHAR_PER_TREENODE introduced
			- typo basian, fixed to Bayesian

5.0.pl8   18.12.2001    - added parameter -achim
			- fixed doubly opened treefile
			- adopted to new autoconf/automake (e.g. EXEEXT added)

5.0.pl7   14.11.2001    - computation of rate categories moved to appropriate
			  place in workflow. in some cases categories were 
			  computed without likelihoods from tree ready.
			  consequently the output RATE HETEROGENEITY parameter
			  had to move further to the end.
			- comments added to code
			- cc added to MPICC (CRAY MPI compiler)

5.0.pl6   20.08.2001    - inputfile name output in the puzzle report for
 			  interactive case corrected. was: infile

5.0.pl5   18.08.2001    - minor clock bug corrected, that set the location
			  of the clocked root to first sequence. 

5.0.pl4   19.07.2001    - VT matrix corrected, printratematrix added
			- minor compile time warnings fixed

5.0.pl3   05.07.2001    - radixsort renamed to tp_radixsort to avoid name 
			  clashes on Mac OS X
			- manual replaced by corrected version

5.0.pl2   09.01.2001    - LIBS moved to the end of the linker statement
			  in the Makefile

5.0.pl1   15.11.2000    - Maxspc casted to double for log10
			- 200% bug fixed by adding fabs(), log-likelihood 
                          differences should not become negative

5.0       26.08.2000    - changes to manual, Makefile.in
                        - cpREV hidden by -DCPREV flag
                        - chi2test, quartio included into source code files
                        - generic scr/Makefile.generic
                        - src/makefile.com for VAX
			- AUTHORS, README, ChangeLog updated
			- INSTALL checked
          27.08.2000	- test code excluded
			- '-randseed#' added for debugging purposes
			- ./data added to autoconf/automake
			- warning output if cmdline parameter unknown
          11.10.2000	- fixed output of rate categories of sites before 
			  computing them
			- check whether rate categories were computed by
			  1st user tree or NJ tree fixed in the output
          12.10.2000	- invariant site model normalization fixed


CODE FREEZE
===========

5.0.a33   15.08.2000    - changes for autoconf/automake

5.0.a32   01.08.2000	- a FPE error fixed (badq == 0)
			- small error in -bestq fixed
			- fflush's added at several places

5.0.a31   01.08.2000	- comments added to tree structure sorting puzzle2.c
			- changes in configure.in, Makefile.in

5.0.a30   23.07.2000	- some debugging in checkquart
			- changed to autoconf

5.0.a29   13.07.2000	- some debugging in checkquart

5.0.a28   13.07.2000	- use best quartet topology option (-bestq) implemented

5.0.a27   13.07.2000	- further developement to checkquart 
			- ascii/binary quartet values (-wqla/-wqlb)
			- typo correction

5.0.a26   11.07.2000	- fflush at all checktimer 
			- further developement at checkquart
			- possibility to write quartet values to file (-wqlh)

5.0.a25   06.07.2000	- fflush at checktimer 

5.0.a24   02.07.2000	- further debugging of checkquart 

5.0.a23   02.07.2000	- further developement to checkquart 

5.0.a22   29.06.2000	- checkquart added to makefile
			- bad quartet stats added after reading in *.allquarts

5.0.a21   27.06.2000	- site pattern statistics implemented and added to 
			  SEQUENCE ALIGNMENT section in puzzle report

5.0.a20   26.06.2000	- cpREV45 implemented

5.0.a19   26.06.2000	- for debugging purposes: typo "MPE" changed to "FPE"
			- fflush(stdout) added in chi2test

5.0.a18   20.06.2000	- checkquart implemented

5.0.a17   19.06.2000	- FPRINTF(STDOUTFILE and STDOUT definition changed 
			  and moved; fputid/fputid10 writes to STDOUT instead
			  of stdout
			- ppuzzle checks slaves enough slave-processes
			- numquarts, num2quart, quart2num moved from ppuzzle.c
			  to puzzle1.c
			- read/writeallquart implemented (undocumented feature)
			  to be used by -wqf/-rqf at comandline
			  -wqf = write quartet file (infilename.allquart) after
			         quartet evaluation
			  -rqf = read quartet file (infilename.allquart), no
			         quartet evaluation, unless -wqf is used as
			         well, then quartets are written and read in 
			- '-h' option at comandline -> printusage

5.0.a16   31.05.2000	- chi2test bug fixed
			- WAG matrix added, model choice adopted
	  13.06.2000	- date set to June 2000
			- author order changed to Schmidt, Strimmer, Vingron,
			  v.Haeseler
			- CPU time output stopped, due to overflow errors
	  16.06.2000	- sequence composition chi2test moved before
			  parameter output.
			- output of chi2test and bad quartet statistics split,
			  to do the chi2test output earlier.

5.0.a15   02.05.2000	- Names changed back from TREE-PUZZLE to PUZZLE
          09.05.2000	- and to TREE-PUZZLE again ;-)

5.0.a14   13.03.2000	- Changes to the manual.
			- Executable names changed to (p)treepuzzle. 
			  (changes in the makefiles)
          15.03.2000	- Output of parameters after estimation added.

5.0.a13   18.02.2000	- ALPHA version number removed from the code 

5.0.a12   18.02.2000	- CPU time measurement problems fixed for case where
			  clock_t is an unsigned type.

5.0.a11   17.02.2000	- time measure problems (CPU/wallclock) fixed
			  not all features in addtimes are used at the moment.
			- unnecessary and unused routines removed fron source 
			  code.

5.0.a10   20.01.2000	- Name changes from PUZZLE to TREE-PUZZLE
			- Chi2-fit model guessing for VT model added
			- little model printing bug fixed

5.0.a9    22.12.1999	- VT Model incorporated (Mueller, Vingron (2000) 
			  JCB, to appear).
			- TODO: Chi2-fit model guessing for VT model

5.0.a8    21.12.1999	- 'sys/times.h' and 'sys/types.h' removed from
			  puzzle.h. They were neither ANSI conform nor
			  necessary, but occured in the SUN man pages.
			- Definition and call of writetimesstat eliminated
			  from the sequention version by compiler switched,
			  and not just the function body as before.
			- '-O4' canged to '-O' to be more generic.

5.0.a7    21.12.1999	- Macro constants introduced for data_optn
			  (NUCLEOTIDE, AMINOACID, BINARY)
			- round robbing of datatype and AA model option changed 
			  in menu to make adjustment of the model possible by a
			  determined sequence of letters:
			  'd':  Auto -> Nucleotides 
			             -> Amino acids
			             -> Binary states 
			             -> Auto
			  ('m' && data_optn == AMINOACID):  
			        Auto -> Dayhoff
			             -> JTT 
			             -> mtREV24 
			             -> BLOSUM62 
			             -> Auto 
			- manual.html adjusted

5.0.a6    20.12.1999	- new manual.html added

5.0.a5    07.12.1999	- output bug fixed (bestrates were written before they
			  were computed)

5.0.a4    02.12.1999	- header file inclusion ajusted:
			  added:  #include<string.h>
			  changed from:  #include "ppuzzle.h"
			          to:    #ifdef PARALLEL
			                 #  include "ppuzzle.h"
			                 #endif

5.0.a3    27.11.1999	- '-h' comandline option removed, because of problems
			  with MPICH under LINUX
			- new memory leaks of 5.0.a2 closed in PP_Finalize

5.0.a2    27.11.1999	- Cleanup of the source code
			- Measurement of CPU time added
			- Parallel load statistics added (quartets, trees, time)
			  to puzzle report.
			- Cleanup debug messages
			- Comments "[...]" are removed from usertrees now.
			- single quotes will only be printed arount species 
			  names if -DUSEQUOTES is set at compiletime.
			- tree likelihood is printed infront of a tree as a
			  comment, [ lh=-xx.xxxxx ](...);

5.0.a1    26.11.1999	- Cleanup of the directories
			- Copyright changes
			- Version changes


VERSION CHANGE
==============

4.1.a26   25.11.1999	- Makefile made universal for pauzzle and ppuzzle
			- lines not needed removed from puzzle.h

4.1.a25   19.11.1999	- Output file prefixes for distances, trees, and 
			  puzzlereport changed in user trees analysis case 
			  to user tree file name
			- Temporary output of likelihood to treefile added

4.1.a24   11.11.1999	- Output of puzzling step trees changed
			  ptorder: [ orderno # % ID #UniqTopos #Steps ]PHYLIP
			  pstep:   chunk #InChunk sum ID #UniqTopos #Steps
			- preliminary leap frog RNG implemented, i.e. uses
			  the rand4 in the usual way in the sequential case.
			  If run in parallel all rand4 are initialized with
			  the same seed and started with PP_Myid-th random
			  number. after that each process uses the every
			  PP_NumProcs-th random number to make sure that these
			  unique.

4.1.a23   08.11.1999	- output of sequential and parallel version to *.pstep
			  made identical

4.1.a22   05.11.1999	- two different puzzle step tree outputs intruduced
			  and added to the menu ("[ 1. 35 ](...);":
			  - ordered unique tree list -> *.ptorder 
			    Format: "[ 1. 35 ]"  (Ordernumber, Amount)
			  - chronological tree list  -> *.pstep
			    Format: "[ 1. 35 ]"  (Chunknumber, Amount in chunk)
			  (the last is a problem in parallel, because the come
			  in chunks, as scheduled)
			- debugged the output
4.1.a21   04.11.1999	- Makefile adjustments for other Plattforms
			- pstep tree output changed. unique treestructures
			  printed to *.pstep file with a leading comment
			  containing an order number and the ammount padded
			  with blanks (e.g. "[ 1. 356 ]('mouse'...").
			  output is done right before writing the puzzle file.
			- controlled MPI finish to the Quit menu option added

4.1.a20   03.11.1999	- some garbage collection (free) added
			- makefile adjusted, OFLAGS for optimization added
			  (ppuzzle/MPICH has problems with -O, so the
			  ppuzzle is created without optimization)
			  Some minor changes in the makefiles
			- still to do: garbage collection from 'internalnode'
			  in master process

4.1.a19   13.10.1999	- adding the output of standardized (i.e. sorted) 
			  puzzling step trees. Those are printed to the 
			  standard output at the moment. (Routines to sort 
			  and print the trees implemented)
	  14.10.1999	- routines for printing the sorted trees to a string.
			  needed to send them between Master and Worker, and
			  to have a unique key to sort and count the trees.
          21.10.1999	- counting of sorted trees implemented by doubly linked
			  list, sort routine, print to stdout
          25.10.1999	- change place of writing distances to file right after 
			  distances have been computed.
			- output of puzzling step trees now with true name, 
			  not numbers
          02.11.1999	- parallel counting and sending of puzzling step trees
			- some parallel sending bugs fixed

4.1.a18   14.09.1999	- adding possibility to specify input file at 
			  command line, this specifies also the output
			  filenames (puzzle output: *.puzzle; treefile:
			  *.tree; distances: *.dist; Triangel EPS: *.eps;
			  unresolved: *.qlist; puzzling step trees: *.pstep)
			  If an unexisting name is given, one has to reenter
			  the right name, but the wrong one is used as prefix.
          15.09.1999	- sending back of bad quartets from slaves added
			- bug in quart2num fixed (not used before; was shifted 
			  by 1)
			- first version of a README added ;-)

4.1.a17   03.08.1999	- Recv-Error in receiving DoPuzzleBlock fixed
			- double freeing of same MPI_Datatype fixed
			- changing of scheduling algorithm to smaller chunks 
			  in gss -> sgss
          13.09.1999	- bug fixed in optimization routine in ml2.c:
			  boundary check added

4.1.a16   12.07.1999	- slight changes in verbosity levels
			- changed all printf to FPRINTF(STDOUTFILE to
			  change easily from stdout to a file.

4.1.a15   08.07.1999	- scheduler for both parallel parts
			- several small changes

4.1.a14   25.06.1999	- computation of tree parallel, scheduler dependent,
			  sending all biparts in one message instead of one
			  by one 
			- several small changes since a13 in sched.c, et al.

4.1.a13   10.06.1999	- computation of tree parallel (chunk = #trees/#slaves)
			- scheduling schemes implemented for minimum chunk sizes

4.1.a12   07.06.1999	- computation of quartets properly parallel
			- scheduling implemented
			- counting of quartets by slave ajusted
			- TODO: sending of bad quartets (array + list)
			- distinction between '1st user tree' and 'NJ tree'
			  in result output removed again

4.1.a11   28.05.1999	- PP_SendDoQuartBlock, PP_RecvDoQuartBlock,
			  PP_SendQuartBlock, PP_RecvQuartBlock
			- mallocquartets() changed from global to local
			  variables to be more flexible
			- Quartet computation moved to slave (badquartet
			  handling missing: output, badquartet vector);
			- distinction between '1st user tree' and 'NJ tree'
			  added in result output (puzzle1.c around l.1756)

4.1.a10   20.05.1999	- num2quart, numquarts, quart2num introduced
			- parallel init/finalize, quartets computed on
			  master and slave, compared -> equal -> all necessary
			  parameter exported

4.1.a9    19.05.1999	- 'dvector forg' removed from onepamratematrix
			  cmdline, because it's not used in the function.

4.1.a8    18.05.1999	- add _GAMMA_ (not necessary) to gamma.h and _PUZZLE_
			  to puzzle.h to avoid dublicate includes, possible
			  due to ppuzzle.h
			- ppuzzle added to makefile and to check
			- 1st parallel version but no slave computations
			  only sending parameters and done signals.

4.1.a7    18.05.1999	- export reevaluation of tree and evaluation of
			  usertrees to evaluatetree.

4.1.a6    17.05.1999	- -DNEWFORLOOP added to fixed.src, because the changed
			  for loop structure changes the sequence of randomized 
			  quartets during likelihood mapping
			- change 'int main()' to 'int main(argc, argv)'
			- export more functionalities from main:
			  memcleanup(), inputandinit(&argc, &argv)
			- grouping if's (excluding eachother) together in 
			  switch() 
			- split treereavaluation and 1st usertree, 
			  evaluate all usertrees together (TODO: both,
			  treereavaluation and usertrees in one loop)
			- MAKE CHECK added to ./makefile

4.1.a5    16.05.1999	- adding ´dvector Brnlength´ to lslength cmdline to 
			  reduce globality of Brnlength. (Later better to *Tree)

4.1.a4    11.05.1999	- structure of for loops changed in computeallquartets
			  and recon_tree, so that the quarted addresses are in 
			  one contigous sequence (for a<b<c<d). This reduces 
			  swapping on low memory machines and is easier to 
			  parallelize.

4.1.a3    07.05.1999	- export likelihood mapping from main to map_lklhd()
			- export tree reconstuction from main to recon_tree()

4.1.a2    06.05.1999	- moving all quartet_(a)lklhd calls to a general 
			  purpose routine compute_quartlklhds()

4.1.a1    06.05.1999	- Macro constants for typ_optn and puzzlemode
			  for better readability.
			- Ring counter for typ_optn and puzzlemode in
			  the menu realized with mod (%) instead of IF.
			- Possibility added to switch to a fixed random 
			  seed (-1) or/and fixed 'random' integers (0)
			  by using -DFIXEDRANDSEED and -DFIXEDINTRAND options.


