Method to simulate multivariate normal parameters for an a4aM object.

# S4 method for class 'numeric,a4aM,missing,missing,missing,missing'
mvrnorm(n = 1, mu)

Arguments

n

the number of iterations to be generated

mu

an a4aM object

Value

an a4aM object with n iterations

Examples

mod1 <- FLModelSim(model=~exp(-age-0.5))
mod2 <- FLModelSim(model=~k^0.66*t^0.57, params=FLPar(matrix(c(0.4,10,0.5,11),
 ncol=2, dimnames=list(params=c("k","t"), iter=1:2))),
 vcov=array(c(0.004,0.,0.,0.001,0.006,0.,0.,0.003), dim=c(2,2,2)))
mod3 <- FLModelSim(model=~1+b*v, params=FLPar(b=0.05))
mObj <- a4aM(shape=mod1, level=mod2, trend=mod3,
 range=c(min=0,max=15,minyear=2000,maxyear=2003,minmbar=0,maxmbar=0))
mObj <- mvrnorm(100, mObj)
# Generate 100 iterations with no trend over time
  m(mObj, v=c(1,1,1,1))
#> An object of class "FLQuant"
#> iters:  100 
#> 
#> , , unit = unique, season = all, area = unique
#> 
#>     year
#> age  2000               2001               2002              
#>   0  2.34e+00(2.68e-01) 2.34e+00(2.68e-01) 2.34e+00(2.68e-01)
#>   1  8.59e-01(9.86e-02) 8.59e-01(9.86e-02) 8.59e-01(9.86e-02)
#>   2  3.16e-01(3.63e-02) 3.16e-01(3.63e-02) 3.16e-01(3.63e-02)
#>   3  1.16e-01(1.33e-02) 1.16e-01(1.33e-02) 1.16e-01(1.33e-02)
#>   4  4.28e-02(4.91e-03) 4.28e-02(4.91e-03) 4.28e-02(4.91e-03)
#>   5  1.57e-02(1.81e-03) 1.57e-02(1.81e-03) 1.57e-02(1.81e-03)
#>   6  5.79e-03(6.64e-04) 5.79e-03(6.64e-04) 5.79e-03(6.64e-04)
#>   7  2.13e-03(2.44e-04) 2.13e-03(2.44e-04) 2.13e-03(2.44e-04)
#>   8  7.84e-04(8.99e-05) 7.84e-04(8.99e-05) 7.84e-04(8.99e-05)
#>   9  2.88e-04(3.31e-05) 2.88e-04(3.31e-05) 2.88e-04(3.31e-05)
#>   10 1.06e-04(1.22e-05) 1.06e-04(1.22e-05) 1.06e-04(1.22e-05)
#>   11 3.90e-05(4.47e-06) 3.90e-05(4.47e-06) 3.90e-05(4.47e-06)
#>   12 1.44e-05(1.65e-06) 1.44e-05(1.65e-06) 1.44e-05(1.65e-06)
#>   13 5.28e-06(6.06e-07) 5.28e-06(6.06e-07) 5.28e-06(6.06e-07)
#>   14 1.94e-06(2.23e-07) 1.94e-06(2.23e-07) 1.94e-06(2.23e-07)
#>   15 7.15e-07(8.20e-08) 7.15e-07(8.20e-08) 7.15e-07(8.20e-08)
#>     year
#> age  2003              
#>   0  2.34e+00(2.68e-01)
#>   1  8.59e-01(9.86e-02)
#>   2  3.16e-01(3.63e-02)
#>   3  1.16e-01(1.33e-02)
#>   4  4.28e-02(4.91e-03)
#>   5  1.57e-02(1.81e-03)
#>   6  5.79e-03(6.64e-04)
#>   7  2.13e-03(2.44e-04)
#>   8  7.84e-04(8.99e-05)
#>   9  2.88e-04(3.31e-05)
#>   10 1.06e-04(1.22e-05)
#>   11 3.90e-05(4.47e-06)
#>   12 1.44e-05(1.65e-06)
#>   13 5.28e-06(6.06e-07)
#>   14 1.94e-06(2.23e-07)
#>   15 7.15e-07(8.20e-08)
#> 
#> units:  NA 
# Generate replicates based on iteration-specific multivariate distributions
# (as defined by params() and vcov())
  params(mod2)
#> An object of class "FLPar"
#> iters:  2 
#> 
#> params
#>             k             t 
#>  0.45(0.0741) 10.50(0.7413) 
#> units:  NA NA 
  vcov(mod2)
#> , , 1
#> 
#>       [,1]  [,2]
#> [1,] 0.004 0.000
#> [2,] 0.000 0.001
#> 
#> , , 2
#> 
#>       [,1]  [,2]
#> [1,] 0.006 0.000
#> [2,] 0.000 0.003
#> 
  m1<-mvrnorm(mod2)
  c(params(m1))
#> [1]  0.2998597  9.9624101  0.3836950 11.0720633
# Generate replicates based on a single multivariate distribution (here the
# median of params() and vcov() is used)
  mvrnorm(2,mod2)
#> An object of class "FLModelSim"
#> Slot "model":
#> ~k^0.66 * t^0.57
#> <environment: 0x55ea5128a348>
#> 
#> Slot "params":
#> An object of class "FLPar"
#> iters:  2 
#> 
#> params
#>                 k                 t 
#>  0.49639(0.04938) 10.49084(0.00067) 
#> units:  NA NA 
#> 
#> Slot "vcov":
#> numeric(0)
#> 
#> Slot "distr":
#> [1] "norm"
#> 
  m2<-mvrnorm(2,mod2)
  c(params(m2))
#> [1]  0.4648643 10.4906358  0.3823313 10.4594138