BLOCKS
blockspecification ;
You use the BLOCKS statement to specify the blocks or splitplot units in the design. By default, the FACTEX procedure constructs
designs that do not contain blocks. If you use the BLOCKS statement, you also need to use the MODEL statement or SIZE statement.
In particular, if you use the BLOCKS statement and your design is a fractional factorial design, you must use the MODEL statement.
The two simplest explicit blockspecifications that you can use are as follows:

NBLOCKS=b, which specifies the number of blocks (b) in the design

SIZE=k, which specifies the number of runs (k) in each block
Use only one of these two options. In all, there are seven mutually exclusive blockspecifications that you can use, as described by the following list.

NBLKFACS=s

specifies the number of block pseudofactors for the design. The design contains a different block for each possible combination
of the levels of the block pseudofactors. Values of s are the integers 1, 2, and so on. See the section Block Size Restrictions for details.
If each factor in the design has q levels, then NBLKFACS=s specifies a design with blocks. The size of each block depends on the number of runs in the design, as specified in the SIZE statement. If the design
has n runs, then each block has runs.
The following statement illustrates how to request a twolevel factorial design arranged in eight () blocks:
blocks nblkfacs=3;
For more information about pseudofactors, see the section Types of Factors.

NBLOCKS=b

specifies the number of blocks in the design. The values of b must be a power of q, the number of levels of each factor in the design. See the section Block Size Restrictions for details. The size of each block depends on the number of runs in the design, as specified in the SIZE statement. If the
design has n runs, then each block has runs. See the section Example of a Full Factorial Design in Two Blocks for an illustration of this option.
The following statement illustrates how to specify a design arranged in four blocks:
blocks nblocks=4;

SIZE=k

specifies the number of runs per block in the design. The value k must be a power of q, the number of levels for each factor in the design. The number of blocks depends on the number of runs in the design, as
specified in the SIZE statement. If the design has n runs, then it has blocks.
CAUTION: Do not confuse the SIZE= option in the BLOCKS statement with the SIZE statement, which you use to specify the overall
size of the design. See the section SIZE Statement for details of the SIZE statement.
The following statement illustrates how to specify blocks of size two:
blocks size=2;

NBLKFACS=MAXIMUM
NBLOCKS=MAXIMUM
SIZE=MINIMUM

constructs a blocked design with the minimum number of runs per block, given all the other characteristics of the design.
In other words, the block size is optimized. You cannot specify this option if you specify any of the design size optimization
options in the SIZE statement (see DESIGN=MINIMUM).

UNITS=(unitsspecifications)

specifies unit factors that index the runs of the experiment. Each unitspecification has the form
unitfactor = numberoflevels
where the number of levels for each unit factor must be a power of the number of levels specified in the FACTORS statement
(2 by default). You can give multiple unitspecifications in the UNITS= option; the product of their numbers of levels must be less than the size of the experiment, as specified in
the SIZE statement.
Unit factors are not involved in the model structure of the design. Instead, you use a UNITS=() blocks specification in conjunction
with one or more UNITEFFECT statements to constrain how the factor levels can change across the runs of the experiment.
The following statement illustrates how to specify two unit factors:
blocks units=(Unit1=4 Unit2=8);
See the section SplitPlot Designs for details about how to use the UNITS= option and the UNITEFFECT statement to construct splitplot designs.
Equivalent BLOCK Specifications
The three explicit blockspecifications are related to each other, as demonstrated by the following example.
Suppose you want to construct a design for 11 twolevel factors in 128 runs in blocks of size 8. Since , three equivalent block specifications are as follows:
blocks nblkfacs=4;
blocks nblocks=16;
blocks size=8;
The number of blocks and the number of runs in each block must be less than the total number of runs in the design. Hence,
there are some restrictions on the block size.

If you use SIZE=k or NBLOCKS=b, the numbers you specify for k and b must be less than or equal to the size of the design, as specified in the SIZE statement. Or, if you do not use a SIZE statement,
k and b must be less than or equal to the number of runs for a full replication of all possible combinations of the factors.
For example, for a design you cannot specify a design arranged in 8 blocks (NBLOCKS=8). Likewise, you cannot construct a design with block size
greater than 8 (SIZE=8).

If you use NBLKFACS=s, the value of s can be no greater than the number of runindexing factors, which give the number of runs needed to index the design. For
details, see Types of Factors and Theory of Orthogonal Designs.
Copyright © SAS Institute Inc. All Rights Reserved.