Skip to contents

This function looks at all combinations of specified design parameters for central-composite designs, calculates other quantities such as the alpha values for rotatability and orthogonal blocking, imposes specified restrictions, and outputs the best combinations in a specified order. This serves as an aid in identifying good designs. The design itself can then be generated using ccd, or in pieces using cube, star, etc.

Usage

ccd.pick(k, n.c = 2^k, n0.c = 1:10, blks.c = 1, n0.s = 1:10, bbr.c = 1, 
         wbr.s = 1, bbr.s = 1, best = 10, sortby = c("agreement", "N"), 
         restrict)

Arguments

k

Number of factors in the design

n.c

Number(s) of factorial points in each cube block

n0.c

Numbers(s) of center points in each cube block

blks.c

Number(s) of cube blocks that together comprise one rep of the cube portion

n0.s

Numbers(s) of center points in each star (axis-point) block

bbr.c

Number(s) of copies of each cube block

wbr.s

Number(s) of replications of each star poit within a block

bbr.s

Number(s) of copies of each star block

best

How many designs to list. Use best=NULL to list them all

sortby

String(s) containing numeric expressions that are each evaluated and used as sorting key(s). Specify sortby=NULL if no sorting is desired.

restrict

Optional string(s) containing Boolean expressions that are each evaluated. Only combinations where all expressions are TRUE are retained.

Details

A grid is created with all combinations of n.c, n0.c, ..., bbr.s. Then for each row of the grid, several additional variables are computed:

n.s

The total number of axis points in each star block

N

The total number of observations in the design

alpha.rot

The position of axis points that make the design rotatable. Rotatability is achieved when design moment [iiii] = 3[iijj] for i and j unequal.

alpha.orth

The position of axis points that make the blocks mutually orthogonal. This is achieved when design moments [ii] within each block are proprtional to the number of observations within the block.

agreement

The absolute value of the log of the ratio of alpha.rot and alpha.orth. This measures agreement between the two alphas.

If restrict is provided, only the cases where the expressions are all TRUE are kept. (Regardless of restrict, rows are eliminated where there are insufficient degrees of freedom to estimate all needed effects for a second-order model.) The rows are sorted according to the expressions in sortby; the default is to sort by agreement and N, which is suitable for finding designs that are both rotatable and orthogonally blocked.

Value

A data.frame containing best or fewer rows, and variables

n.c, n0.c, blks.c, n.s, n0.s, bbr.c,

wbr.s, bbr.s, N, alpha.rot, and alpha.orth, as described above.

References

Lenth RV (2009) ``Response-Surface Methods in R, Using rsm'', Journal of Statistical Software, 32(7), 1--17. doi:10.18637/jss.v032.i07

Myers, RH, Montgomery, DC, and Anderson-Cook, CM (2009) Response Surface Methodology (3rd ed.), Wiley.

Author

Russell V. Lenth

See also

Examples

library(rsm)

### List CCDs in 3 factors with between 10 and 14 runs per block
ccd.pick(3, n0.c=2:6, n0.s=2:8)
#>    n.c n0.c blks.c n.s n0.s bbr.c wbr.s bbr.s  N alpha.rot alpha.orth
#> 1    8    6      1   6    4     1     1     1 24  1.681793   1.690309
#> 2    8    5      1   6    3     1     1     1 22  1.681793   1.664101
#> 3    8    3      1   6    2     1     1     1 19  1.681793   1.705606
#> 4    8    4      1   6    2     1     1     1 20  1.681793   1.632993
#> 5    8    4      1   6    3     1     1     1 21  1.681793   1.732051
#> 6    8    5      1   6    4     1     1     1 23  1.681793   1.754116
#> 7    8    6      1   6    3     1     1     1 23  1.681793   1.603567
#> 8    8    6      1   6    5     1     1     1 25  1.681793   1.772811
#> 9    8    2      1   6    2     1     1     1 18  1.681793   1.788854
#> 10   8    5      1   6    2     1     1     1 21  1.681793   1.568929
# (Generate the design that is listed first:) 
# ccd(3, n0=c(6,4))

### Find designs in 5 factors containing 1, 2, or 4 cube blocks
### of 8 or 16 runs, 1 or 2 reps of each axis point,
### and no more than 70 runs altogether
ccd.pick(5, n.c=c(8,16), blks.c=c(1,2,4), wbr.s=1:2, restrict="N<=70")
#>    n.c n0.c blks.c n.s n0.s bbr.c wbr.s bbr.s  N alpha.rot alpha.orth
#> 1   16    6      1  10    1     1     1     1 33  2.000000   2.000000
#> 2   16    8      1  10    2     1     1     1 36  2.000000   2.000000
#> 3   16   10      1  10    3     1     1     1 39  2.000000   2.000000
#> 4   16    5      2  20    1     1     2     1 63  2.000000   2.000000
#> 5   16    6      2  20    2     1     2     1 66  2.000000   2.000000
#> 6    8    3      4  20    2     1     2     1 66  2.000000   2.000000
#> 7   16    7      2  20    3     1     2     1 69  2.000000   2.000000
#> 8   16    8      2  10    7     1     1     1 65  2.378414   2.380476
#> 9    8    4      4  10    7     1     1     1 65  2.378414   2.380476
#> 10  16    1      2  10    2     1     1     1 46  2.378414   2.376354