ĽOhana
A suite of software for analyzing population structure and admixture history using unsupervised learning methods.
Data Structures
Here are the data structures with brief descriptions:
[detail level 123]
 Njade
 Cbasic_agi_controllerA template for a class that encodes and decodes parameters for the Nelder-Mead algorithm. This class uses an admixture graph input file
 Cbasic_agi_readerA template for a class that reads an AGI (Admixture Graph Input) file. The file provides the following information: A set of branch length variable names, a set of admixture proportion parameter names, a component size (K), and K*(K-1)/2 number of expressions representing C matrix entries
 Cbasic_argsA template for a class that helps process command-line arguments
 Cbasic_assertionA template for a class that asserts valid conditions
 Cbasic_bgl2lgmA template for a class that converts BEAGLE-formatted data to likelihood genotype matrices
 Cbasic_bgl_readerA template for a class that reads BEAGLE data and is capable of writing it to a stream as a likelihood genotype matrix
 Cbasic_controllerA template for a class that performs the Nelder-Mead optimization. This class implements shared features of the two concrete controllers of this module, one that uses a Newick tree as input and another that does not
 Cbasic_controller_factoryA template for a class that creates controllers that use or do not use Newick trees specified on the command line
 Cbasic_cov2nwkA template for a class that approximates covariance matrices as Newick-formatted trees
 Cbasic_discrete_genotype_matrixA template for a class implementing operations for a discrete genotype matrix
 Cbasic_errorA template for a class representing an exception thrown from this namespace
 Cbasic_forced_groupingA template for a class that implements the forced grouping feature
 Cbasic_genotype_matrixA template for an abstract class implementing operations for a genotype matrix
 Cbasic_genotype_matrix_factoryA template for a class that creates genotype matrices based on files and their file extensions
 Cbasic_improverA template for a class that improves the Q and F matrices
 Cbasic_lemkeA template for a class that implements Lemke's algorithm
 CstatePossible states of the algorithm
 Cbasic_likelihoodA template for a class that efficiently computes a log-likelihood based on 1) the log of the determinant for a covariance matrix and 2) the inverse of the covariance matrix. The class caches values based on a [K-1 x J] rooted F matrix for major allele frequencies and a [J x 1] mu vector
 Cbasic_likelihood_genotype_matrixA template class implementing operations for a likelihood genotype matrix type
 Cbasic_matrixA template class for a matrix
 Cbasic_neighbor_joiningA template for a class that implements the neighbor joining algorithm
 Cbasic_neoscanA template for a class implementing the neoscan algorithm. This algorithm scans for positive selection between ancient and modern data. It can take advantage of the dating for each individual ancient sample
 CoutputOutput for one column
 Cbasic_newick_nodeA template class representing a node from a Newick tree
 Cbasic_nwk2covA template for a class that converts Newick-formatted trees to covariance matrices
 Cbasic_nwk2svgA template for a class that converts Newick-formatted trees to SVG representations
 Cbasic_openblasA template for a class providing access to OpenBLAS
 Cbasic_optimizerA template for a class that optimizes the Q and F matrices
 Cbasic_optionsA template for a class encapsulating the program options
 Cbasic_ped2dgmA template for a class that converts PED-formatted data to discrete genotype matrices
 Cbasic_ped_readerA template for a class that reads PED data
 Cbasic_qpasA template for a class that implements the Quadratic Programming for Active Set algorithm
 Cbasic_randomizerA template for a class that randomizes matrices
 Cbasic_remaA template for a class that reduces columns of matrices given to it. The columns to keep are chosen at random, but their relative order is not changed
 Cbasic_rerooted_treeA template for a class that maintains a list of paths from all leaf nodes to the rerooted node with the name "0"
 Cbasic_scannerA template class that parses text and throws meaningful error messages
 Cbasic_selscanA template for a class implementing the selscan program
 Cbasic_settingsA template for a class encapsulating the settings provided to the optimizer
 Cbasic_shunting_yardA template for a class that implements the shunting-yard algorithm. The implementation supports '+', '-', '*', and '/' operators; the '(' and ')' parentheses; floating-point numbers; and variables. After parsing an expression, the instance can evaluate the expression if given a table of variable values
 Cbasic_simplexA template for a class that implements the Nelder-Mead Simplex Method, which attempts to minimize an objective function in a many-dimensional space by continually refining a simplex
 Cexecute_argsArguments to the execute method
 Cexit_conditionAn indication of what caused the execute to temrinate
 Clog_argsArguments passed to the logging function
 CoperationAn operation performed during an iteration
 CoptionsA data structure used to initialize the Nelder-Mead algorithm
 CstatsStatistics about the behavior of the algorithm
 Cbasic_stopwatchA template class imlementing a stopwatch
 Cbasic_svg_treeA template for a class that renders newick trees as SVG
 Cbasic_tree_controllerA template for a class that encodes and decodes parameters for the Nelder-Mead algorithm. This class uses a user-specified Newick tree
 Cbasic_tree_pathA template for a class that maintains a table of nodes indicating a distance to the root of the tree
 Cbasic_treeless_controllerA template for a class that encodes and decodes parameters for the Nelder-Mead algorithm. This class does not use a user-specified Newick tree
 Cbasic_vec2A template for a class that implements rank-two vector operations
 Cbasic_verificationA template for a class that performs validation on various types of matrices
 Cbasic_versionA template for a class that displays version and build information