Skip to content
This repository has been archived by the owner on Jul 12, 2023. It is now read-only.

Unstable solution: Vertical Magnetic Dipole source as r --> 0 #40

Open
dccowan opened this issue Jun 29, 2020 · 6 comments
Open

Unstable solution: Vertical Magnetic Dipole source as r --> 0 #40

dccowan opened this issue Jun 29, 2020 · 6 comments

Comments

@dccowan
Copy link
Member

dccowan commented Jun 29, 2020

We are currently solving equations 4.45 and 4.46 from Ward and Hohman to compute the horizontal and vertical response due to a vertical magnetic dipole source.
image

As the radial distance goes to zero, the 0th and 1st order Bessel functions go to 1 and 0, respectively. The linear digital filter that evaluates the Hankel transform does not appear to be stable in this case. I have checked to make sure the exponential term is such that the kernel function is decaying with respect to lambda.

Although we could use a horizontal loop source for this special case, it would be good to validate the horizontal loop source and vertical magnetic dipole source against one another.

To test this:

  • Check out update_to_simulation branch
  • Look at the python script tutorials/plot_1_fdem_fwd_sources.py
@dccowan
Copy link
Member Author

dccowan commented Jun 29, 2020

@sgkang @prisae I am hoping to get your input if possible.

@prisae
Copy link
Member

prisae commented Jun 30, 2020

Hi @dccowan I tried to run the example, but your branch errors out for me when importing simpegEM1D with

ModuleNotFoundError: No module named 'simpegEM1D.waveforms'

@sgkang
Copy link
Contributor

sgkang commented Jul 1, 2020

Hi @dccowan, it is expected. So offset between tx and rx must be greater than 0.
Therefore, when handling VTEM like system (co-located loops), the loop source can be used.

Fundamentally speaking implementing quadrature scheme to handle arbitrary loop will be beneficial.
I believe @prisae has implemented this in empymod, so we can follow what he did.

@prisae
Copy link
Member

prisae commented Jul 1, 2020

Ah, it is offset, not loop radius! Yes, this has to be greater than 0, I agree with @sgkang, otherwise it is not defined.

@dccowan
Copy link
Member Author

dccowan commented Jul 1, 2020

Hi @dccowan I tried to run the example, but your branch errors out for me when importing simpegEM1D with

ModuleNotFoundError: No module named 'simpegEM1D.waveforms'

I think you need to run the setup.py so to avoid the import error.

@prisae
Copy link
Member

prisae commented Jul 2, 2020

Good point @dccowan, I forgot that it has compiled functions. Anyhow, installing it via python setup.py install just changes the error though:

ModuleNotFoundError: No module named 'simpegEM1D.supporting_functions'

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants