Build an N×N block-circulant orthogonal matrix.
The matrix is block-diagonal with N/K blocks of size K×K, then
row-shifted by K to produce the block-circulant structure.
- Parameters:
N (int) – Total matrix size.
K (int | None) – Block size. Defaults to the smallest prime factor of N.
matrix_type (str) – Type string passed to fdn_matrix_gallery() for each
block (default "Hadamard").
- Return type:
ndarray
- Returns:
Orthogonal matrix of shape (N, N).