--- sidebar_position: 7 --- import { SquiggleEditor } from '../src/components/SquiggleEditor' # Squiggle Functions Reference ## Distributions ### Normal distribution The `normal(mean, sd)` function creates a normal distribution with the given mean and standard deviation. ### Uniform distribution The `uniform(low, high)` function creates a uniform distribution between the two given numbers: ### Lognormal distribution The `lognormal(mu, sigma)` returns the log of a normal distribution with parameters mu and sigma. The log of lognormal(mu, sigma) is a normal distribution with parameters mean mu and standard deviation sigma. An alternative format is also available. The "to" notation creates a lognormal distribution with a 90% confidence interval between the two numbers. We add this convinience as lognormal distributions are commonly used in practice Furthermore, it's also possible to create a lognormal from it's actual mean and standard deviation, using `lognormalFromMeanAndStdDev`: ### Beta distribution The `beta(a, b)` function creates a beta distribution with parameters a and b: ### Exponential distribution The `exponential(mean)` function creates an exponential distribution with the given mean. ### The Triangular distribution The `triangular(a,b,c)` function creates a triangular distribution with lower bound a, mode b and upper bound c: ### Multimodal distriutions The multimodal function combines 2 or more other distributions to create a weighted combination of the two. The first positional arguments represent the distributions to be combined, and the last argument is how much to weigh every distribution in the combination. It's possible to create discrete distributions using this method: As well as mixed distributions: ## Other Functions ### PDF of a distribution The `pdf(distribution, x)` function returns the density of a distribution at the given point x: ### Inverse of a distribution The `inv(distribution, prob)` gives the value x or which the probability for all values lower than x is equal to prob. It is the inverse of `cdf` ### CDF of a distribution The `cdf(distribution,x)` gives the cumulative probability of the distribution or all values lower than x. It is the inverse of `inv`: ### Mean of a distribution The `mean(distribution)` function gives the mean (expected value) of a distribution: ### Sampling a distribution The `sample(distribution)` samples a given distribution: