• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

.github/workflows/H14-Oct-2021-129116

Examples/H14-Oct-2021-6,2293,509

cmake/H14-Oct-2021-10291

contrib/H14-Oct-2021-156,81092,284

res/H14-Oct-2021-125,201106,569

src/H14-Oct-2021-119,24778,437

tests/H14-Oct-2021-66,08462,530

.coveralls.condarcH A D14-Oct-202180 65

.coveralls.env.ymlH A D14-Oct-202155 54

.gitattributesH A D14-Oct-202129 21

.gitignoreH A D14-Oct-2021849 6253

.travis.ymlH A D14-Oct-20213.7 KiB153141

CONTRIBUTING.mdH A D14-Oct-20211.5 KiB5328

LICENSEH A D14-Oct-20211.4 KiB3528

README.mdH A D14-Oct-20214.7 KiB11971

run_unit_tests.shH A D14-Oct-20211.2 KiB5234

README.md

1[![Build Status](https://travis-ci.org/veg/hyphy.svg?branch=master)](https://travis-ci.org/veg/hyphy)
2
3# HyPhy - Hypothesis testing using Phylogenies
4
5HyPhy is an open-source software package for the analysis of genetic sequences using techniques in phylogenetics, molecular evolution, and machine learning. It features a complete graphical user interface (GUI) and a rich scripting language for limitless customization of analyses. Additionally, HyPhy features support for parallel computing environments (via message passing interface (MPI)) and it can be compiled as a shared library and called from other programming environments such as Python and R. HyPhy is the computational backbone powering datamonkey.org. Additional information is available at hyphy.org.
6
7## Quick Start
8
9#### Install
10`conda install hyphy`
11
12#### Run with Command Line Arguments
13`hyphy <method_name> --alignment <path_to_alignment_file> <additional_method_specific_arguments>`
14+ _`<method_name>` is the name of the analysis you wish to run (can be: absrel, bgm, busted, fade, fel, fubar, gard, meme, relax or slac)_
15+ _`<path_to_alignment_file>` is the relative or absolute path to a fasta, nexus or phylib file containing an alignment and tree_
16+ _A list of the available `<additional_method_specific_arguments>` can be seen by running `hyphy <method_name> --help`_
17
18or
19
20#### Run in Interactive Mode
21`hyphy -i`
22
23## Building from Source
24
25#### Requirements
26* cmake >= 3.12
27* gcc >= 4.9
28* libcurl
29* libpthread
30* openmp (can be installed on mac via `brew install libomp`)
31
32#### Download
33You can download a specific release [here](https://github.com/veg/hyphy/releases) or clone this repo with
34
35`git clone https://github.com/veg/hyphy.git`
36
37Change your directory to the downloaded/cloned directory
38
39`cd hyphy`
40
41#### Build
42`cmake .`
43
44`make install`
45
46## Additional Options for Building from Source
47
48#### Build Systems
49If you prefer to use other build systems, such as Xcode, configure using the -G switch
50
51`cmake -G Xcode .`
52
53CMake supports a number of build system generators, feel free to peruse these and use them if you wish.
54
55If you are on an OS X platform, you can specify which OS X SDK to use
56
57`cmake -DCMAKE_OSX_SYSROOT=/Developer/SDKs/MacOSX10.9.sdk/ .`
58
59If building on a heterogeneous cluster with some nodes that do not support auto-vectorization
60
61`cmake -DNOAVX=ON .`.
62
63If you're on a UNIX-compatible system, and you're comfortable with GNU make, then run `make` with one of the following build targets:
64
65+   MP or hyphy - build a HyPhy executable (This used to be "HYPHYMP" but is now just "hyphy") using pthreads to do multiprocessing
66+   MPI - build a HyPhy executable (HYPHYMPI) using MPI to do multiprocessing
67+   HYPHYMPI - build a HyPhy executable (HYPHYMPI) using openMPI
68+   LIB - build a HyPhy library (libhyphy_mp) using pthreads to do multiprocessing
69-   GTEST - build HyPhy's gtest testing executable (HYPHYGTEST)
70
71#### Example (MPI build of hyphy using openMPI)
72Ensure that you have openmpi installed and available on your  path. You can check if this is the case after running `cmake .` you should see something similar to this in your output
73
74`-- Found MPI_C: /opt/scyld/openmpi/1.6.3/gnu/lib/libmpi.so;/usr/lib64/libibverbs.so;/usr/lib64/libdat.so;/usr/lib64/librt.so;/usr/lib64/libnsl.so;/usr/lib64/libutil.so;/usr/lib64/libm.so;/usr/lib64/libtorque.so;/usr/lib64/libm.so;/usr/lib64/libnuma.so;/usr/lib64/librt.so;/usr/lib64/libnsl.so;/usr/lib64/libutil.so;/usr/lib64/libm.so `
75
76`-- Found MPI_CXX: /opt/scyld/openmpi/1.6.3/gnu/lib/libmpi_cxx.so;/opt/scyld/openmpi/1.6.3/gnu/lib/libmpi.so;/usr/lib64/libibverbs.so;/usr/lib64/libdat.so;/usr/lib64/librt.so;/usr/lib64/libnsl.so;/usr/lib64/libutil.so;/usr/lib64/libm.so;/usr/lib64/libtorque.so;/usr/lib64/libm.so;/usr/lib64/libnuma.so;/usr/lib64/librt.so;/usr/lib64/libnsl.so;/usr/lib64/libutil.so;/usr/lib64/libm.so `
77
78Then run
79
80`make HYPHYMPI`
81
82And then run make install to install the software
83
84`make install`
85
86+   hyphy will be installed at  `/location/of/choice/bin`
87+   libhyphy_mp.(so/dylib/dll) will be installed at `/location/of/choice/lib`
88+   HyPhy's standard library of batchfiles will go into `/location/of/choice/lib/hyphy`
89
90
91#### Testing
92
93Use `make test` after running `cmake .`.
94
95#### Benchmarks for CMake Tests
96
97Benchmarks, using Github Actions, can be found at http://hyphy.org/bench
98
99#### Executable Location
100
101By default, HyPhy installs into `/usr/local` but it can be installed on any location of your system by providing an installation prefix
102
103`cmake -DCMAKE_INSTALL_PREFIX:PATH=/location/of/choice`
104
105For example, this configuration will install hyphy at /opt/hyphy
106
107`mkdir -p /opt/hyphy`
108
109`cmake -DCMAKE_INSTALL_PREFIX:PATH=/opt/hyphy .`
110
111#### Building Documentation
112
113```
114make docs
115cd docs
116python3 -m http.server
117```
118
119