Multiple Constrained Minimum Variance¶
Solver ID: MCMV
Usage¶
from invert import Solver
# fwd = ... (mne.Forward object)
# evoked = ... (mne.Evoked object)
solver = Solver("MCMV")
solver.make_inverse_operator(fwd)
stc = solver.apply_inverse_operator(evoked)
stc.plot()
Overview¶
Multiple-constrained extension of LCMV that imposes additional linear constraints (e.g., to improve robustness with correlated sources).
References¶
- Nunes, A. S., Moiseev, A., Kozhemiako, N., Cheung, T., Ribary, U., & Doesburg, S. M. (2020). Multiple constrained minimum variance beamformer (MCMV) performance in connectivity analyses. NeuroImage, 208, 116386.
API Reference¶
Bases: BaseSolver
Class for the Multiple Constrained Minimum Variance (MCMV) Beamformer inverse solution [1].
MCMV extends LCMV by applying multiple linear constraints simultaneously. This improves robustness in the presence of correlated sources.
References
[1] Nunes, A. S., Moiseev, A., Kozhemiako, N., Cheung, T., Ribary, U., & Doesburg, S. M. (2020). Multiple constrained minimum variance beamformer (MCMV) performance in connectivity analyses. NeuroImage, 208, 116386.
Source code in invert/solvers/beamformers/mcmv.py
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 | |
__init__ ¶
make_inverse_operator ¶
make_inverse_operator(
forward,
mne_obj,
*args,
weight_norm=True,
noise_cov=None,
alpha="auto",
k_constraints=3,
verbose=0,
**kwargs,
)
Calculate inverse operator using MCMV formula.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
forward
|
Forward
|
The mne-python Forward model instance. |
required |
mne_obj
|
[Evoked, Epochs, Raw]
|
The MNE data object. |
required |
weight_norm
|
bool
|
Normalize the filter weight matrix W to unit length of the columns. |
True
|
alpha
|
float
|
The regularization parameter. |
'auto'
|
k_constraints
|
int
|
Number of constraints per source. When k=1, reduces to LCMV. For k>1, includes k-1 nearest neighbors in constraint matrix. |
3
|
Return
self : object returns itself for convenience
Notes
Implements the MCMV formula: w = C_inv @ G @ inv(G.T @ C_inv @ G) @ f where G is the constraint matrix (m × k) and f is the constraint vector.
Source code in invert/solvers/beamformers/mcmv.py
41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 | |