# List of mathematical functions known to Dynare

The Dynare preprocessor knows only how to derive automatically a finite list of mathematical functions. We are currently working on dealing with arbitrary, unknown, functions.

Here is the list of functions that can currently be used in the `model` block (for setting the value of parameters, or in the `initval` type blocks, you can still use any function known to Matlab/Octave, provided that you only use scalar arguments).

## Arithmetic operators

`+ - * / ^`

## Logical operators

` < > <= >= != == `

These operators evaluate to 1 if the logical expression is true, 0 if the logical expression is false.

Note: the derivative isn't defined on the kink point and these operators shouldn't be used in stochastic models

## Exponential and logarithm

- exp()
- log() can also be written ln()
- log10()

## Trigonometric functions

- sin()
- cos()
- tan()
- asin()
- acos()
- atan()

## Cumulative distribution functions

normcdf(x,m,s) normal cumulative distribution function with mean

`m`and standard deviation`s`normcdf(x) normal cumulative distribution function with mean

`0`and standard deviation`1`

For the normal density function, you need to enter the formula explicitly

## Miscellaneous

- sqrt()
- max(a,b) not to be used in stochastic models
- min(a,b) not to be used in stochastic models