Sometimes EMOD3D produces duplicate stations in output. When it does this broadband simulation will crash with a ValueError. When people ask me about this issue I have suggested manually loading the low frequency outputs, de-duplicating them, and dumping them into broadband outputs. This is based on the observation that the waveforms are identical for all cases of this issue I have observed. While I think the current behaviour of bb-sim, i.e. crashing, is consistent with the idea that silently dropping stations is dangerous I believe we should have a more ergonomic alternate behaviour.
What to change
Introduce a flag to bb-sim that, when toggled, drops duplicates using the xarray drop_duplicates method. It should report when it drops duplicates. The default behaviour is the current code which crashes.
Sometimes EMOD3D produces duplicate stations in output. When it does this broadband simulation will crash with a
ValueError. When people ask me about this issue I have suggested manually loading the low frequency outputs, de-duplicating them, and dumping them into broadband outputs. This is based on the observation that the waveforms are identical for all cases of this issue I have observed. While I think the current behaviour ofbb-sim, i.e. crashing, is consistent with the idea that silently dropping stations is dangerous I believe we should have a more ergonomic alternate behaviour.What to change
Introduce a flag to
bb-simthat, when toggled, drops duplicates using the xarraydrop_duplicatesmethod. It should report when it drops duplicates. The default behaviour is the current code which crashes.