Contents | SAS Program | PDF

The %MktRuns autocall macro suggests reasonable sizes for experimental designs. It tries to find sizes in which perfect balance and orthogonality can occur, or at least sizes in which violations of orthogonality and balance are minimized.

%MktRuns(list <, optional arguments>)

You can specify either of the following to display the option names and simple examples of the macro syntax:

%mktruns(help) %mktruns(?)

This macro specifies `options nonotes`

throughout most of its execution. If you want to see all the notes, submit the following statement before running the macro:

%let mktopts = notes;

To see the macro version, submit the following statement before running the macro:

%let mktopts = version;

When you invoke the macro, you usually specify one argument, a list of the number of levels of each factor. For example, with three 2-level and four 3-level factors, you can specify either of the following:

%mktruns(2 2 2 3 3 3 3)

%mktruns(2 ** 3 3 ** 4)

The output from the macro is shown in Figure 1.

Figure 1: %MktRuns Output

n | Design | Reference |
---|---|---|

36 | 2 ** 16 3 ** 4 | Orthogonal Array |

36 | 2 ** 11 3 ** 12 | Orthogonal Array |

36 | 2 ** 10 3 ** 8 6 ** 1 | Orthogonal Array |

36 | 2 ** 9 3 ** 4 6 ** 2 | Orthogonal Array |

36 | 2 ** 4 3 ** 13 | Orthogonal Array |

36 | 2 ** 3 3 ** 9 6 ** 1 | Orthogonal Array |

72 | 2 ** 52 3 ** 4 | Orthogonal Array |

72 | 2 ** 49 3 ** 4 4 ** 1 | Orthogonal Array |

72 | 2 ** 47 3 ** 12 | Orthogonal Array |

72 | 2 ** 46 3 ** 8 6 ** 1 | Orthogonal Array |

72 | 2 ** 45 3 ** 4 6 ** 2 | Orthogonal Array |

72 | 2 ** 44 3 ** 12 4 ** 1 | Orthogonal Array |

72 | 2 ** 43 3 ** 8 4 ** 1 6 ** 1 | Orthogonal Array |

72 | 2 ** 42 3 ** 4 4 ** 1 6 ** 2 | Orthogonal Array |

72 | 2 ** 40 3 ** 13 | Orthogonal Array |

72 | 2 ** 39 3 ** 9 6 ** 1 | Orthogonal Array |

72 | 2 ** 38 3 ** 12 6 ** 1 | Orthogonal Array |

72 | 2 ** 38 3 ** 5 6 ** 2 | Orthogonal Array |

72 | 2 ** 37 3 ** 13 4 ** 1 | Orthogonal Array |

72 | 2 ** 37 3 ** 8 6 ** 2 | Orthogonal Array |

72 | 2 ** 36 3 ** 12 12 ** 1 | Orthogonal Array |

72 | 2 ** 36 3 ** 9 4 ** 1 6 ** 1 | Orthogonal Array |

72 | 2 ** 36 3 ** 7 6 ** 3 | Orthogonal Array |

72 | 2 ** 35 3 ** 12 4 ** 1 6 ** 1 | Orthogonal Array |

72 | 2 ** 35 3 ** 5 4 ** 1 6 ** 2 | Orthogonal Array |

72 | 2 ** 34 3 ** 8 4 ** 1 6 ** 2 | Orthogonal Array |

72 | 2 ** 29 3 ** 11 6 ** 2 | Orthogonal Array |

72 | 2 ** 27 3 ** 11 6 ** 1 12 ** 1 | Orthogonal Array |

72 | 2 ** 27 3 ** 6 6 ** 4 | Orthogonal Array |

72 | 2 ** 23 3 ** 24 | Orthogonal Array |

72 | 2 ** 22 3 ** 20 6 ** 1 | Orthogonal Array |

72 | 2 ** 21 3 ** 16 6 ** 2 | Orthogonal Array |

72 | 2 ** 20 3 ** 24 4 ** 1 | Orthogonal Array |

72 | 2 ** 20 3 ** 12 6 ** 3 | Orthogonal Array |

72 | 2 ** 19 3 ** 20 4 ** 1 6 ** 1 | Orthogonal Array |

72 | 2 ** 19 3 ** 8 6 ** 4 | Orthogonal Array |

72 | 2 ** 18 3 ** 16 4 ** 1 6 ** 2 | Orthogonal Array |

72 | 2 ** 18 3 ** 7 6 ** 5 | Orthogonal Array |

72 | 2 ** 17 3 ** 12 4 ** 1 6 ** 3 | Orthogonal Array |

72 | 2 ** 16 3 ** 25 | Orthogonal Array |

72 | 2 ** 16 3 ** 8 4 ** 1 6 ** 4 | Orthogonal Array |

72 | 2 ** 15 3 ** 21 6 ** 1 | Orthogonal Array |

72 | 2 ** 15 3 ** 7 4 ** 1 6 ** 5 | Orthogonal Array |

72 | 2 ** 14 3 ** 24 6 ** 1 | Orthogonal Array |

72 | 2 ** 14 3 ** 17 6 ** 2 | Orthogonal Array |

72 | 2 ** 13 3 ** 25 4 ** 1 | Orthogonal Array |

72 | 2 ** 13 3 ** 20 6 ** 2 | Orthogonal Array |

72 | 2 ** 13 3 ** 13 6 ** 3 | Orthogonal Array |

72 | 2 ** 12 3 ** 24 12 ** 1 | Orthogonal Array |

72 | 2 ** 12 3 ** 21 4 ** 1 6 ** 1 | Orthogonal Array |

72 | 2 ** 12 3 ** 16 6 ** 3 | Orthogonal Array |

72 | 2 ** 12 3 ** 9 6 ** 4 | Orthogonal Array |

72 | 2 ** 11 3 ** 24 4 ** 1 6 ** 1 | Orthogonal Array |

72 | 2 ** 11 3 ** 20 6 ** 1 12 ** 1 | Orthogonal Array |

72 | 2 ** 11 3 ** 17 4 ** 1 6 ** 2 | Orthogonal Array |

72 | 2 ** 11 3 ** 12 6 ** 4 | Orthogonal Array |

72 | 2 ** 11 3 ** 8 6 ** 5 | Orthogonal Array |

72 | 2 ** 10 3 ** 20 4 ** 1 6 ** 2 | Orthogonal Array |

72 | 2 ** 10 3 ** 16 6 ** 2 12 ** 1 | Orthogonal Array |

72 | 2 ** 10 3 ** 13 4 ** 1 6 ** 3 | Orthogonal Array |

72 | 2 ** 10 3 ** 4 6 ** 6 | Orthogonal Array |

72 | 2 ** 9 3 ** 16 4 ** 1 6 ** 3 | Orthogonal Array |

72 | 2 ** 9 3 ** 12 6 ** 3 12 ** 1 | Orthogonal Array |

72 | 2 ** 9 3 ** 9 4 ** 1 6 ** 4 | Orthogonal Array |

72 | 2 ** 9 3 ** 7 6 ** 6 | Orthogonal Array |

72 | 2 ** 8 3 ** 12 4 ** 1 6 ** 4 | Orthogonal Array |

72 | 2 ** 8 3 ** 8 4 ** 1 6 ** 5 | Orthogonal Array |

72 | 2 ** 8 3 ** 8 6 ** 4 12 ** 1 | Orthogonal Array |

72 | 2 ** 7 3 ** 7 6 ** 5 12 ** 1 | Orthogonal Array |

72 | 2 ** 7 3 ** 4 4 ** 1 6 ** 6 | Orthogonal Array |

72 | 2 ** 6 3 ** 7 4 ** 1 6 ** 6 | Orthogonal Array |

The macro reports that the saturated design has 12 runs and that 36 and 72 are optimal design sizes. The macro picks 36, because it is the smallest integer greater than or equal to 12 that can be divided by 2, 3, , , and . The macro also reports 18 as a reasonable size. There are three violations with 18, because 18 cannot be divided by each of the three pairs of , so perfect orthogonality in the 2-level factors is not possible with 18 runs. Larger sizes are also reported. The macro displays orthogonal designs that are available from the %MktEx macro that match your specification.