@@ -10,33 +10,33 @@ lav_partable_random <- function(lavpartable = NULL,
10
10
# needed if we still need to compute bounds:
11
11
lavh1 = NULL , lavdata = NULL ,
12
12
lavsamplestats = NULL , lavoptions = NULL ) {
13
- # check if we have bounds; if not, add them
13
+
14
14
lavpta <- lav_partable_attributes(lavpartable )
15
- if (is.null(lavpartable $ lower ) ||
16
- is.null(lavpartable $ upper )) {
17
- lavoptions2 <- lavoptions
18
- lavoptions2 $ bounds <- " standard"
19
- lavoptions2 $ optim.bounds <-
20
- list (
21
- lower = c(
22
- " ov.var" , " lv.var" , " loadings" ,
23
- " covariances"
24
- ),
25
- upper = c(
26
- " ov.var" , " lv.var" , " loadings" ,
27
- " covariances"
28
- ),
29
- lower.factor = c(1.0 , 1.0 , 1.0 , 0.999 ),
30
- upper.factor = c(1.0 , 1.0 , 1.0 , 0.999 ),
31
- min.reliability.marker = 0.1 ,
32
- min.var.lv.endo = 0.005
33
- )
34
- lavpartable <- lav_partable_add_bounds(
35
- partable = lavpartable ,
36
- lavh1 = lavh1 , lavdata = lavdata ,
37
- lavsamplestats = lavsamplestats , lavoptions = lavoptions2
15
+
16
+ # ALWAYS (recompute) bounds, as user may have provide other
17
+ # bounds (eg "pos.var") (0.6-20)
18
+ lavoptions2 <- lavoptions
19
+ lavoptions2 $ bounds <- " standard"
20
+ lavoptions2 $ optim.bounds <-
21
+ list (
22
+ lower = c(
23
+ " ov.var" , " lv.var" , " loadings" ,
24
+ " covariances"
25
+ ),
26
+ upper = c(
27
+ " ov.var" , " lv.var" , " loadings" ,
28
+ " covariances"
29
+ ),
30
+ lower.factor = c(1.0 , 1.0 , 1.0 , 0.999 ),
31
+ upper.factor = c(1.0 , 1.0 , 1.0 , 0.999 ),
32
+ min.reliability.marker = 0.1 ,
33
+ min.var.lv.endo = 0.005
38
34
)
39
- }
35
+ lavpartable <- lav_partable_add_bounds(
36
+ partable = lavpartable ,
37
+ lavh1 = lavh1 , lavdata = lavdata ,
38
+ lavsamplestats = lavsamplestats , lavoptions = lavoptions2
39
+ )
40
40
41
41
# replace -Inf/Inf by -1/1 * .Machine$double.eps (for runif)
42
42
inf.idx <- which(lavpartable $ lower < - 1e+16 )
0 commit comments