vectorization for loop when computing sensitivity for time domain
Requires modification in empymod I guess at the moment, but make another speed up.
@sgkang Which loop are you talking about here?
Hi @leonfoks, just my 2 cents, @sgkang might correct me if I remember it wrong. This issue was opened when we improved the speed through improving the implementation of the Hankel and Fourier transform filters using empymod. By comparing then runtimes of simpegEM1D and empymod I saw that most time is wasted by looping over frequencies and wavenumbers. In empymod, the kernel is calculated in one go for all frequencies, offsets, and wavenumbers (matrix of dimension [nfreq, noff, nk]), which is significantly faster. I think we put somewhere some numbers/runtimes, but I cannot remember... (@sgkang, did we talk about that on Slack, in emails, or on a GitHub issue/pull request?). I'll write a separate comment in your pull request #19 with some further comments.
Hi @leonfoks and @prisae sorry for being late. I meant for the loop for each layer, in def projectFields for time-domain code.
Not sure if I understand @sgkang , so you still think there are modifications required in empymod (and if so, please expand a bit), or is it something you have to modify en simpegEM1D?