This sampler function for BAMLSS uses estimated `parameters`

and the Hessian
information to create samples from a multivariate normal distribution. Note that smoothing
variance uncertainty is not accounted for, therefore, the resulting credible intervals
are most likely too narrow.

```
sam_MVNORM(x, y = NULL, family = NULL, start = NULL,
n.samples = 500, hessian = NULL, ...)
MVNORM(x, y = NULL, family = NULL, start = NULL,
n.samples = 500, hessian = NULL, ...)
```

## Arguments

- x
The `x`

list, as returned from
function `bamlss.frame`

, holding all model matrices and other information that is
used for fitting the model. Or an object returned from function `bamlss`

.

- y
The model response, as returned from function `bamlss.frame`

.

- family
A bamlss family object, see `family.bamlss`

.

- start
A named numeric vector containing possible starting values, the names are based on
function `parameters`

.

- n.samples
Sets the number of samples that should be generated.

- hessian
The Hessian matrix that should be used. Note that the row and column names
must be the same as the names of the `parameters`

. If `hessian = NULL`

the function uses `optim`

to compute the Hessian if it is not provided
within `x`

.

- ...
Arguments passed to function `optim`

.

## Value

Function `MVNORM()`

returns samples of parameters. The samples are provided as a

`mcmc`

matrix.

## Examples

```
## Simulated data example illustrating
## how to call the sampler function.
## This is done internally within
## the setup of function bamlss().
d <- GAMart()
f <- num ~ s(x1, bs = "ps")
bf <- bamlss.frame(f, data = d, family = "gaussian")
## First, find starting values with optimizer.
o <- with(bf, opt_bfit(x, y, family))
#> AICc 325.6348 logPost -153.671 logLik -155.980 edf 6.7313 eps 1.2399 iteration 1
#> AICc 325.4626 logPost -153.585 logLik -155.894 edf 6.7313 eps 0.0058 iteration 2
#> AICc 325.4626 logPost -153.585 logLik -155.894 edf 6.7313 eps 0.0000 iteration 3
#> AICc 325.4626 logPost -153.585 logLik -155.894 edf 6.7313 eps 0.0000 iteration 3
#> elapsed time: 0.03sec
## Sample.
samps <- with(bf, sam_MVNORM(x, y, family, start = o$parameters))
#>
plot(samps)
```