Skip to content

Releases: abacus-gene/paml

4.10.10

29 Jan 17:09
4c7902f

Choose a tag to compare

List of updates included in PAML v4.10.10:

  • Files src/README.txt, src/Makefile, src/Makefile.VC have been updated to include more details about how to compile all PAML programs.
  • Input tree files and control files in examples/dating-cross-bracing have been updated so that variables match the format followed from PAML v4.10.9. A README.txt file has been included with instructions to run the example data.
  • Updates that affect PAML program MCMCtree:
    • Issue #90: we address the issue reported by @dongzhang0725 and @yetong-z regarding the usage of the multiplicative or conditional constructions when variable TipDate is enabled. We note that this issue had been fixed in the master branch four months ago but had not been made available in a new release yet.
    • Users can now combine the content of various MCMC files (i.e., these files contain the samples collected during MCMC runs) in a unique file for subsequent MCMC diagnostics. Users must create a directory where all these text files are saved and run MCMCtree as mcmctree --combine <directory_name>. A new file called mcmc_combined.txt will be created. Example data to combine various MCMC files resulting from independent MCMCtree runs into a unique text file has been included in examples/combine-mcmc. A README.txt file has been included with instructions to run the example data.
  • Updates affecting PAML program MCMCtree have also been logged in doc/pamlHistory.txt.

PAML versions prior to v4.10

27 Jan 14:13
e0b8b64

Choose a tag to compare

📝 Support and Maintenance

This release contains all PAML versions prior to v4.10. Please note that these versions are no longer actively maintained and may include issues that have been addressed in later releases. They are provided here as legacy software for reference and backward compatibility.

For the most up-to-date and supported version, please use the latest release. Bug reports and feature requests should also be directed to the latest supported release.

🔧 Installation details

All compressed files for PAML versions earlier than v3.0a include Windows executable files and the relevant C source code in the main directory. Releases from PAML v3.0b onward include a src directory containing the source code to be compiled, as well as Windows executable files (either in the main directory or in the bin directory).

To compile the source code, please download and extract the archive for the PAML version you wish to use, open a terminal in the main directory, and run the following commands (either from the main directory or from the src directory, depending on where the source code is located):

# Move to the directory where you find the source code 
# and run:
make -f Makefile
# List all the compiled programs that are part of PAML and
# remove unnecessary files.
ls -lF
rm *.o
# Create a `bin` directory (or similar), which you can then export to your PATH.
mkdir ../bin
# Move the compiled programs to `bin`.
mv baseml basemlg chi2 codeml evolver infinitesites mcmctree pamp yn00 ../bin
# Test that you can run some PAML programs such as BASEML, CODEML, or evolver.
bin/baseml
bin/codeml
bin/evolver

If you wish to install paml-x (which is no longer maintained and is provided as-is), you can download the file pamlX1.3.1-src.tgz and follow the installation instructions in the PAML Wiki. Please download pamlX-windows.tar.gz to access the Windows executable.

⚠️ About the source code archive

The Source code (zip) and Source code (tar.gz) files are automatically generated by GitHub and contain the current main branch code (v4.10.9), NOT the legacy versions. The rest of the attached archives are legacy versions (i.e., PAML versions prior to v4.10).

4.10.9

12 May 13:15
163ba57

Choose a tag to compare

List of updates in PAML v4.10.9:

  • Updates that affect PAML program MCMCtree:

    • Issue #75: following @mariodosreis's suggestion 1, users must now choose either the conditional (add option c or C in variable BDparas) or the multiplicative (add option m or M in variable BDparas) construction. Please note that the old control files will not work anymore and shall trigger the following error message: error: Flag for birth-death process prior expected: C for conditional, M for multiplicative.
    • Issue #76: following @mariodosreis's suggestion, the test has been relaxed. Instead of using 1e-3, now 0.1 is used and a warning stating may be wrong (instead of error is wrong) will be printed, which may be ignored. In theory, the log-likelihood difference is more meaningful than the relative log-likelihood difference.
  • Update that affects PAML program ds:

    • Program ds can be used to carry out summaries such as 1-D and 2-D density estimates as described in the PAML Wiki. For instance, at the end of an MCMCtree run, you could run this program by typing ds <mcmc.out>, where <mcmc.out> needs to be replaced with the path to the output file generated by MCMCtree with all the samples collected (i.e., path specified with variable mcmcfile in the control file). The code has been updated by @xflouris so that zopen is used instead of gfopen, which fixes the issue that avoided this program to be compiled as files could not be opened. If you do not use the pre-compiled binaries and generate the binaries available as part of this release and you are compiling the source code, please note that you will not generate the binaries for the ds program with the Makefile file (e.g., make -f Makefile). In addition to running the aforementioned command, please use command cc -o ds -O3 ds.c tools.c -lm if you want to compile the program ds too.

4.10.8

21 Apr 17:26
8509ca5

Choose a tag to compare

The PAML Wiki is now available! Please make sure that you navigate through all the different sections to understand what PAML programs can and cannot do, how to install these programs, how to format your input data so that it is compatible with PAML programs, and how to run the various PAML programs:

List of updates in PAML v4.10.8:

  • Updates that affect PAML program MCMCtree:

    • Option print = -1 was printing out the wrong tree (i.e., different tree from the one specified by users in the input tree file), when summarising the MCMC sample. The error was introduced in PAML v4.10.7 (June 2023), but PAML v4.10.3 (Dev 2021) was correct. This issue is now fixed in PAML v4.10.8.
    • The output FigTree.tre NEXUS file generated by MCMCtree now includes 95% HPD CIs instead of 95% equal-tail CIs that previous PAML versions were printing. You shall see the difference as the new label is &95%HPD instead of &95%.
    • When enabling variable duplication in the control file, and if the MCMC runs is not interrupted (i.e., all samples specified in variable nsample are collected), the output FigTree.tre file included labels next to the nodes that were identified as "driver nodes" (e.g., #7.000000, 8.000000; the number would change depending on the node label). This issue has now been fixed and the output FigTree.tre file can be properly read without issues in GUIs such as FigTree, TreeViewer, etc.
    • The multiplicative construction has now been made the default for the birth-death prior (current versions used the conditional construction). All details regarding these changes have been documented in the MCMCtree section in the PAML Wiki. If the conditional construction is to be enabled, you will need to use a fourth (or fifth, if you are using BDSS and setting parameter psi) argument in variable BDparas: BDparas = lambda mu rho psi c. Without the last argument being c, the multiplicative construction will be triggered. You can also write BDparas = lambda mu rho psi m for the multiplicative construction, but this has been made the default.
    • Option checkpoint has been updated so that now users can specify how often they want to save the current state of the Markov chain in the ckpt output file (i.e., third argument). All the details regarding checkpointing in MCMCtree can be found under the bullet point checkpoint in the MCMCtree section in the PAML Wiki.
  • Updates that affect PAML programs BASEML and CODEML:

    • The Tipdate-clock (clock = 1, tipdate = 1 100) option in BASEML/CODEML was broken when multiple trees were given in the tree file (i.e., the program analysed the first tree multiple times). The error shows up when one changes the first line in the input tree file examples/TipDate.HIV2/HIV2ge.tre from 33 1 to 33 3. The bug is now fixed, but note that some of the trees in the tree file are bootstrap consensus trees, which are multifurcating trees. Thanks to jtmccr1 for reporting the bug under issue #43, which is now resolved.
  • Updates that resolve issues that Mac users with ARM-based processors were facing with PAML v4.10.7: Mac users with the latest chips were experiencing issues when running some PAML programs (e.g., "trace trap", "segfault", "illegal hardware instruction [...]" errors). This issue was due to invalid memory access problems (conditional jumps depending on uninitialized values). It is possible those values are automatically initialised by other binaries to 0, and so Linux, Windows, WSL, and Mac intel users did not experience such problems. Nevertheless, arm64 initialises them differently (or in a stricter way) because it is a RISC processor, and so Mac users with ARM-based architectures were affected by this problem. This issue was fixed when reported but was available only in the dev branch. PAML v4.10.8 incorporates these changes, and thus addresses the (now closed) following issues: issue #45 and issue #47.

NOTE: fixed issues have also been recorded in file pamlHistory.txt.

4.10.7

29 Jun 16:19

Choose a tag to compare

Updated doc, about equality and inequality constraints on node ages in mcmctree

fixed det calculation in matinv.

paml-4.10.5

09 Jul 11:13

Choose a tag to compare

changed ndata option in baseml/codeml.

paml-4.10.6

11 Nov 11:40

Choose a tag to compare

Changed

Changed ndata option in baseml/codeml, and added back the old option of one tree block for all datasets/alignments.

Edited the document.

v4.10.3

23 Dec 19:57

Choose a tag to compare

Changes

Changed ndata option in baseml and codeml.

Fixed a bug in the TipDate option in mcmctree which caused the program to fail to read the sampling dates.

Fixed bugs in pamp for ancestral sequence reconstruction.

Changed the default MCMC proposal to Bactrian-Laplace with m = 0.90.

The source code is inside the tgz files.

paml v4.10.0

09 Sep 10:09

Choose a tag to compare

Changes

  • Edited code to remove compiler warnings
  • Changed the calculation of initial values for mcmctree so that the ages are not too old.
  • Fixed a bug which causes the tip-dating analysis in baseml and codeml to fail to print out a block of output including substitution rate per time unit and absolute age estimates.