compute_update_UD
- pyoptex.doe.fixed_structure.splitk_plot.formulas.compute_update_UD(level, grp, Xi_old, X, plot_sizes, c, thetas, thetas_inv)[source]
Compute the update to the information matrix after making a single coordinate adjustment. This update is expressed in the form: \(M^* = M + U^T D U\). D is a diagonal matrix in this case.
Parameters
- level: int
The stratum at which the update occurs (0 for the lowest).
- grpint
The group within this stratum for which the update occurs.
- Xi_oldnp.array(2d)
The old runs after the update.
- Xnp.array(2d)
The new design matrix X (after the update).
- plot_sizesnp.array(1d)
The size of each stratum b_i.
- cnp.array(2d)
The coefficients c (every row specifies one set of a priori variance ratios). The second dimension is added for Bayesian approaches.
- thetasnp.array(1d)
The array of thetas. thetas = np.cumprod(np.concatenate((np.array([1]), plot_sizes)))
- thetas_invnp.array(1d)
The array of 1/thetas. thetas_inv = np.cumsum(np.concatenate((np.array([0], dtype=np.float64), 1/thetas[1:])))
Returns
- Unp.array(2d)
The U-matrix of the update
- Dnp.array(2d)
The set of diagonal matrices corresponding to the c parameter. To first row of D specifies a diagonal matrix corresponding to the first row of c.