Universal and robust algorithm for solving the total alkalinity-pH equation presented in G. Munhoven (2013) <doi:10.5194/gmd-6-1367-2013> and G. Munhoven (2021) <doi:10.5194/gmd-2020-447>. The total alkalinity-pH equation relates total alkalinity and pH for a given set of acid-base concentrations in a given water sample, among which carbonic acid. This package is particularly useful in marine chemistry involving dissolved inorganic carbon. Original package in Fortran can be found at <doi:10.5281/zenodo.4328965>.

Self-Organizing Map (with application in gene clustering).

A topological version of k-NN: An abstract model is build
             as 2-dimensional self-organising map. Samples of unknown
             class are predicted by mapping them on the SOM and analysing
             class membership of neurons in the neighbourhood.

An R implementation of the Self-Organising Migrating Algorithm, a general-purpose, stochastic optimisation algorithm. The approach is similar to that of genetic algorithms, although it is based on the idea of a series of ``migrations'' by a fixed set of individuals, rather than the development of successive generations. It can be applied to any cost-minimisation problem with a bounded parameter space, and is robust to local minima.

Load and export 'SomaScan' data via the
    'SomaLogic Operating Co., Inc.' structured text file
    called an ADAT ('*.adat'). For file format see
    <https://github.com/SomaLogic/SomaLogic-Data/blob/master/README.md>.
    The package also exports auxiliary functions for
    manipulating, wrangling, and extracting relevant
    information from an ADAT object once in memory.

The stochastic (also called on-line) version of the Self-Organising
             Map (SOM) algorithm is provided. Different versions of the
             algorithm are implemented, for numeric and relational data and for
             contingency tables as described, respectively, in Kohonen (2001)
             <isbn:3-540-67921-9>, Olteanu & Villa-Vialaneix (2005)
             <doi:10.1016/j.neucom.2013.11.047> and Cottrell et al (2004)
             <doi:10.1016/j.neunet.2004.07.010>. The package also contains many
             plotting features (to help the user interpret the results), can 
             handle (and impute) missing values and is delivered with a 
             graphical user interface based on 'shiny'.