61 lines
1.1 KiB
Markdown
61 lines
1.1 KiB
Markdown
---
|
|
sidebar_position: 1
|
|
---
|
|
|
|
# Squiggle Language
|
|
|
|
## Distributions
|
|
```js
|
|
normal(a,b)
|
|
uniform(a,b)
|
|
lognormal(a,b)
|
|
lognormalFromMeanAndStdDev(mean, stdev)
|
|
beta(a,b)
|
|
exponential(a)
|
|
triangular(a,b,c)
|
|
mm(a,b,c, [1,2,3])
|
|
cauchy() //todo
|
|
pareto() //todo
|
|
```
|
|
|
|
## Functions
|
|
```js
|
|
trunctate() //todo
|
|
leftTrunctate() //todo
|
|
rightTrunctate()//todo
|
|
```
|
|
|
|
## Functions
|
|
```js
|
|
pdf(distribution, float)
|
|
inv(distribution, float)
|
|
cdf(distribution, float)
|
|
mean(distribution)
|
|
sample(distribution)
|
|
scaleExp(distribution, float)
|
|
scaleMultiply(distribution, float)
|
|
scaleLog(distribution, float)
|
|
```
|
|
|
|
## Example Functions
|
|
|
|
```js
|
|
ozzie_estimate(t) = lognormal({mean: 3 + (t+.1)^2.5, stdev: 8})
|
|
nuño_estimate(t) = lognormal({mean: 3 + (t+.1)^2, stdev: 10})
|
|
combined(t) = mm(ozzie_estimate(t) .+ nuño_estimate(t))
|
|
combined
|
|
```
|
|
|
|
```js
|
|
us_economy_2018 = (10.5 to 10.9)T
|
|
growth_rate = 1.08 to 1.2
|
|
us_economy(t) = us_economy_2018 * (growth_rate^t)
|
|
|
|
us_population_2019 = 320M to 330M
|
|
us_population_growth_rate = 1.01 to 1.1
|
|
us_population(t) = us_population_2019 * (us_population_growth_rate^t)
|
|
gdp_per_person(t) = us_economy(t)/us_population(t)
|
|
gdp_per_person
|
|
|
|
gdp_per_person
|
|
``` |