(reference)=

# API Reference

```{eval-rst}
.. currentmodule:: tstrait
```

This page provides a detailed explanation of all public tstrait objects and functions.

## Summary

### Simulation functions

```{eval-rst}
.. autosummary::

   sim_phenotype
   sim_trait
   sim_genetic
   sim_env
```

(effect_size_distribution)=

### Effect size distributions

```{eval-rst}
.. autosummary::

   trait_model
   TraitModel
   TraitModelNormal
   TraitModelT
   TraitModelFixed
   TraitModelExponential
   TraitModelGamma
   TraitModelMultivariateNormal
```

### Result data classes

```{eval-rst}
.. autosummary::

   PhenotypeResult
   GeneticResult
```

## Reference documentation

### Simulation functions

```{eval-rst}
.. autofunction:: tstrait.sim_phenotype
```

```{eval-rst}
.. autofunction:: tstrait.sim_trait
```

```{eval-rst}
.. autofunction:: tstrait.sim_genetic
```

```{eval-rst}
.. autofunction:: tstrait.sim_env
```

### Effect size distributions

```{eval-rst}
.. autofunction:: tstrait.trait_model
```

```{eval-rst}
.. autoclass:: tstrait.TraitModel
```

```{eval-rst}
.. autoclass:: tstrait.TraitModelNormal
```

```{eval-rst}
.. autoclass:: tstrait.TraitModelT
```

```{eval-rst}
.. autoclass:: tstrait.TraitModelFixed
```

```{eval-rst}
.. autoclass:: tstrait.TraitModelExponential
```

```{eval-rst}
.. autoclass:: tstrait.TraitModelGamma
```

```{eval-rst}
.. autoclass:: tstrait.TraitModelMultivariateNormal
```

### Result data classes

```{eval-rst}
.. autoclass:: tstrait.PhenotypeResult
```

```{eval-rst}
.. autoclass:: tstrait.GeneticResult
```
