You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
`ZonalFastBasisGenerator` groups actuators into binary poke patterns such that no two actuators in the same mode are closer than a user-defined distance `D`. This is useful when you want a compact calibration basis that reduces the number of measurements compared with pure zonal pokes.
114
+
115
+
```python
116
+
from aobasis import ZonalFastBasisGenerator, make_circular_actuator_grid
The returned matrix still has the standard `(n_actuators, n_modes)` layout, but each column is now a sparse binary pattern rather than a single-actuator poke. Every actuator appears in exactly one column of the full basis.
131
+
110
132
## Performance
111
133
112
134
Generation times for 100 modes benchmarked on the following system:
@@ -121,6 +143,7 @@ Generation times for 100 modes benchmarked on the following system:
121
143
|**Zernike**| 0.001s | 0.002s | 0.005s |
122
144
|**Fourier**| <0.001s | 0.001s | 0.003s |
123
145
|**Zonal**| <0.001s | <0.001s | 0.003s |
146
+
|**Zonal Fast**| depends on spacing threshold | depends on spacing threshold | depends on spacing threshold |
124
147
|**Hadamard**| <0.001s | 0.001s | 0.031s |
125
148
126
149
*Note: KL basis generation is computationally intensive ($O(N^3)$) due to the dense covariance matrix diagonalization. GPU acceleration provides significant speedup (8-15x) for larger grids.*
@@ -129,7 +152,7 @@ Generation times for 100 modes benchmarked on the following system:
129
152
130
153
We provide Jupyter notebooks to help you get started.
131
154
132
-
1.**Getting Started**: `tutorials/getting_started.ipynb` covers all supported basis types and features.
155
+
1.**Getting Started**: `tutorials/getting_started.ipynb` covers all supported basis types, including zonal fast grouped pokes.
133
156
134
157
To run the tutorials:
135
158
```bash
@@ -171,7 +194,7 @@ If you encounter any bugs or have feature requests, please file an issue on the
0 commit comments