Changes in version 0.9.1 (2026-05-17) New features - New output format (format = 4) in getParams(). This produces a list of lists, suitable for programmatic use. Changes in version 0.9.0 (2025-04-29) New features - New function lumpMutSpecial() implementing special lumping of mutation models. Only some cases are implemented so far, more may be added in the future. - mutationMatrix() gains argument validate. - New function makeStationary() replaces the previous stabilize() for PM-transformation to stationarity. - As a shortcut for makeStationary(), the PM transformation may also be applied directly with mutationMatrix(..., transform = "PM") or mutationModel(..., transform = "PM"). Bug fixes - Fixed a bug in makeReversible(..., method = "PR") failing to catch non-reversible inputs. - Various minor fixes and code simplifications. Changes in version 0.8.0 (2025-04-01) New features - New function makeReversible() implementing three transformations to reversibility. - mutationMatrix() and mutationModel() gain a transform argument for applying transformations to reversibility on the fly. - New function adjustRate() for adjusting the overall mutation rate of a mutation matrix. - mutationModel(model = "dawid", ...) replaces the function stepwiseReversible(). - Random mutation models can now condition on a fixed overall mutation rate. - Include info on boundedness in the print method for mutation models. Other - Refactored mutationMatrix() for better code maintainability. - Bug fix: Don't trivialise model name when there is only 1 allele. - Several minor improvements in documentation and examples. - Use rhub v2. Changes in version 0.7.0 New features - New function mutRate() computing the overall mutation rate of a mutation model. - New function isBounded() checking if a mutation matrix M is bounded by the allele frequencies, i.e., that M[i,j] <= afreq[j] for all i != j. - New function stepwiseReversible(). - Added Thore Egeland as package contributor. Bug fixes - Fixed a floating point bug in the creation of stepwise models. - Fix broken URLs. Changes in version 0.6.0 (2023-04-12) New features - Implement the PM stabilisation method of Simonsson & Mostad; liftover from Familias:::stabilize. - Implement more general lumping (multiple lumps!) under strong lumpability. - New utility getParams() for extracting model parameters. - Extend isStationary(), isReversible() and alwaysLumpable() to full models. - New functions isMutationMatrix() and isMutationModel(). - New S3 method as.matrix() for classes mutationMatrix and mutationModel. - New function findStationary() for obtaining the stationary distribution of a mutation matrix. Changes in version 0.5.0 (2023-02-11) New features - Various speedups, mainly concerning lumped models. These improvements should give better performance in other parts of the pedsuite, especially in likelihood calculations with many markers. - New function lumpedModel() which is a convenient wrapper of lumpedMatrix(). - New function sexEqual() for reading the sexEqual attribute of a mutation model. Changes in version 0.4.0 (2022-11-16) New features - mutationModel() gains a new parameter validate. - Various code improvements in validateMutationModel() and validateMutationMatrix(), making them significantly faster. Changes in version 0.3.0 (2021-10-22) This is maintenance release with mostly minor changes. Changes in version 0.2.0 (2020-07-30) New features - Added onestep model. - Added toString() method producing a short description of a mutation model. This is used in pedtools::print.marker(). Other changes - Updated README. - Minor bug fixes. Changes in version 0.1.0 (2019-10-01) - Initial CRAN release