@@ -50,8 +50,14 @@ def test_field_map_ctf():
50
50
evoked = Epochs (raw , events ).average ()
51
51
evoked .pick (evoked .ch_names [:50 ]) # crappy mapping but faster
52
52
# smoke test - passing trans_fname as pathlib.Path as additional check
53
+ # set origin to "(0.0, 0.0, 0.04)", which was the default until v1.12
54
+ # estimating origin from "auto" impossible due to missing digitization points
53
55
make_field_map (
54
- evoked , trans = Path (trans_fname ), subject = "sample" , subjects_dir = subjects_dir
56
+ evoked ,
57
+ trans = Path (trans_fname ),
58
+ subject = "sample" ,
59
+ subjects_dir = subjects_dir ,
60
+ origin = (0.0 , 0.0 , 0.04 ),
55
61
)
56
62
57
63
@@ -128,11 +134,13 @@ def test_make_field_map_eeg():
128
134
evoked .info ["bads" ] = ["MEG 2443" , "EEG 053" ] # add some bads
129
135
surf = get_head_surf ("sample" , subjects_dir = subjects_dir )
130
136
# we must have trans if surface is in MRI coords
131
- pytest .raises (ValueError , _make_surface_mapping , evoked .info , surf , "eeg" )
137
+ pytest .raises (
138
+ ValueError , _make_surface_mapping , evoked .info , surf , "eeg" , origin = "auto"
139
+ )
132
140
133
141
evoked .pick (picks = "eeg" )
134
142
fmd = make_field_map (
135
- evoked , trans_fname , subject = "sample" , subjects_dir = subjects_dir
143
+ evoked , trans_fname , subject = "sample" , subjects_dir = subjects_dir , origin = "auto"
136
144
)
137
145
138
146
# trans is necessary for EEG only
@@ -143,10 +151,11 @@ def test_make_field_map_eeg():
143
151
None ,
144
152
subject = "sample" ,
145
153
subjects_dir = subjects_dir ,
154
+ origin = "auto" ,
146
155
)
147
156
148
157
fmd = make_field_map (
149
- evoked , trans_fname , subject = "sample" , subjects_dir = subjects_dir
158
+ evoked , trans_fname , subject = "sample" , subjects_dir = subjects_dir , origin = "auto"
150
159
)
151
160
assert len (fmd ) == 1
152
161
assert_array_equal (fmd [0 ]["data" ].shape , (642 , 59 )) # maps data onto surf
@@ -163,31 +172,37 @@ def test_make_field_map_meg():
163
172
# let's reduce the number of channels by a bunch to speed it up
164
173
info ["bads" ] = info ["ch_names" ][:200 ]
165
174
# bad ch_type
166
- pytest .raises (ValueError , _make_surface_mapping , info , surf , "foo" )
175
+ pytest .raises (ValueError , _make_surface_mapping , info , surf , "foo" , origin = "auto" )
167
176
# bad mode
168
- pytest .raises (ValueError , _make_surface_mapping , info , surf , "meg" , mode = "foo" )
177
+ pytest .raises (
178
+ ValueError , _make_surface_mapping , info , surf , "meg" , mode = "foo" , origin = "auto"
179
+ )
169
180
# no picks
170
181
evoked_eeg = evoked .copy ().pick (picks = "eeg" )
171
- pytest .raises (RuntimeError , _make_surface_mapping , evoked_eeg .info , surf , "meg" )
182
+ pytest .raises (
183
+ RuntimeError , _make_surface_mapping , evoked_eeg .info , surf , "meg" , origin = "auto"
184
+ )
172
185
# bad surface def
173
186
nn = surf ["nn" ]
174
187
del surf ["nn" ]
175
- pytest .raises (KeyError , _make_surface_mapping , info , surf , "meg" )
188
+ pytest .raises (KeyError , _make_surface_mapping , info , surf , "meg" , origin = "auto" )
176
189
surf ["nn" ] = nn
177
190
cf = surf ["coord_frame" ]
178
191
del surf ["coord_frame" ]
179
- pytest .raises (KeyError , _make_surface_mapping , info , surf , "meg" )
192
+ pytest .raises (KeyError , _make_surface_mapping , info , surf , "meg" , origin = "auto" )
180
193
surf ["coord_frame" ] = cf
181
194
182
195
# now do it with make_field_map
183
196
evoked .pick (picks = "meg" )
184
197
evoked .info .normalize_proj () # avoid projection warnings
185
- fmd = make_field_map (evoked , None , subject = "sample" , subjects_dir = subjects_dir )
198
+ fmd = make_field_map (
199
+ evoked , None , subject = "sample" , subjects_dir = subjects_dir , origin = "auto"
200
+ )
186
201
assert len (fmd ) == 1
187
202
assert_array_equal (fmd [0 ]["data" ].shape , (304 , 106 )) # maps data onto surf
188
203
assert len (fmd [0 ]["ch_names" ]) == 106
189
204
190
- pytest .raises (ValueError , make_field_map , evoked , ch_type = "foobar" )
205
+ pytest .raises (ValueError , make_field_map , evoked , ch_type = "foobar" , origin = "auto" )
191
206
192
207
# now test the make_field_map on head surf for MEG
193
208
evoked .pick (picks = "meg" )
@@ -198,6 +213,7 @@ def test_make_field_map_meg():
198
213
meg_surf = "head" ,
199
214
subject = "sample" ,
200
215
subjects_dir = subjects_dir ,
216
+ origin = "auto" ,
201
217
)
202
218
assert len (fmd ) == 1
203
219
assert_array_equal (fmd [0 ]["data" ].shape , (642 , 106 )) # maps data onto surf
@@ -210,6 +226,7 @@ def test_make_field_map_meg():
210
226
meg_surf = "foobar" ,
211
227
subjects_dir = subjects_dir ,
212
228
trans = trans_fname ,
229
+ origin = "auto" ,
213
230
)
214
231
215
232
@@ -221,12 +238,15 @@ def test_make_field_map_meeg():
221
238
picks = picks [::10 ]
222
239
evoked .pick ([evoked .ch_names [p ] for p in picks ])
223
240
evoked .info .normalize_proj ()
241
+ # set origin to "(0.0, 0.0, 0.04)", which was the default until v1.12
242
+ # estimated origin from "auto" fails the assertions below
224
243
maps = make_field_map (
225
244
evoked ,
226
245
trans_fname ,
227
246
subject = "sample" ,
228
247
subjects_dir = subjects_dir ,
229
248
verbose = "debug" ,
249
+ origin = (0.0 , 0.0 , 0.04 ),
230
250
)
231
251
assert_equal (maps [0 ]["data" ].shape , (642 , 6 )) # EEG->Head
232
252
assert_equal (maps [1 ]["data" ].shape , (304 , 31 )) # MEG->Helmet
0 commit comments