proj2.efficiency {dae} | R Documentation |

## Computes the canonical efficiency factors for the joint decomposition of two projectors

### Description

Computes the canonical efficiency factors for the joint decomposition of two projectors (James and Wilkinson, 1971).

### Usage

`proj2.efficiency(Q1, Q2)`

### Arguments

`Q1` |
An object of class " |

`Q2` |
An object of class " |

### Details

The nonzero canonical efficiency factors are the nonzero eigenvalues of
Q1 %*% Q2 %*% Q1 (James and Wilkinson, 1971). An eigenvalue is regarded as
zero if it is less than `daeTolerance`

, which is initially set to
`.Machine$double.eps ^ 0.5`

(about 1.5E-08).
The function `set.daeTolerance`

can be used to change
`daeTolerance`

.

### Value

A `vector`

containing the nonzero canonical efficiency factors.

### Author(s)

Chris Brien

### References

James, A. T. and Wilkinson, G. N. (1971) Factorization of the
residual operator and canonical decomposition of nonorthogonal
factors in the analysis of variance. *Biometrika*, **58**, 279-294.

### See Also

`efficiency.criteria`

, `proj2.eigen`

, `proj2.combine`

in package dae,
`eigen`

.

`projector`

for further information about this class.

### Examples

```
## PBIBD(2) from p. 379 of Cochran and Cox (1957) Experimental Designs.
## 2nd edn Wiley, New York
PBIBD2.unit <- list(Block = 6, Unit = 4)
PBIBD2.nest <- list(Unit = "Block")
trt <- factor(c(1,4,2,5, 2,5,3,6, 3,6,1,4, 4,1,5,2, 5,2,6,3, 6,3,4,1))
PBIBD2.lay <- designRandomize(allocated = trt,
recipient = PBIBD2.unit,
nested.recipients = PBIBD2.nest)
## obtain sets of projectors
unit.struct <- pstructure(~ Block/Unit, data = PBIBD2.lay)
trt.struct <- pstructure(~ trt, data = PBIBD2.lay)
## save intrablock efficiencies
eff.intra <- proj2.efficiency(unit.struct$Q[["Block"]], trt.struct$Q[["trt"]])
```

*dae*version 3.2.28 Index]