!pip install --upgrade pip
!pip install em_examples
Requirement already up-to-date: pip in c:\users\devin\anaconda2\lib\site-packages Requirement already satisfied: em_examples in c:\users\devin\anaconda2\lib\site-packages Requirement already satisfied: scipy>=0.13 in c:\users\devin\anaconda2\lib\site-packages (from em_examples) Requirement already satisfied: SimPEG in c:\users\devin\documents\simpeg (from em_examples) Requirement already satisfied: future in c:\users\devin\anaconda2\lib\site-packages (from em_examples) Requirement already satisfied: ipywidgets in c:\users\devin\anaconda2\lib\site-packages (from em_examples) Requirement already satisfied: numpy>=1.7 in c:\users\devin\anaconda2\lib\site-packages (from em_examples) Requirement already satisfied: cython in c:\users\devin\anaconda2\lib\site-packages (from SimPEG->em_examples) Requirement already satisfied: ipython in c:\users\devin\anaconda2\lib\site-packages (from SimPEG->em_examples) Requirement already satisfied: matplotlib in c:\users\devin\anaconda2\lib\site-packages (from SimPEG->em_examples) Requirement already satisfied: properties[math] in c:\users\devin\anaconda2\lib\site-packages (from SimPEG->em_examples) Requirement already satisfied: six>=1.10 in c:\users\devin\anaconda2\lib\site-packages (from matplotlib->SimPEG->em_examples) Requirement already satisfied: python-dateutil in c:\users\devin\anaconda2\lib\site-packages (from matplotlib->SimPEG->em_examples) Requirement already satisfied: functools32 in c:\users\devin\anaconda2\lib\site-packages (from matplotlib->SimPEG->em_examples) Requirement already satisfied: pytz in c:\users\devin\anaconda2\lib\site-packages (from matplotlib->SimPEG->em_examples) Requirement already satisfied: cycler>=0.10 in c:\users\devin\anaconda2\lib\site-packages (from matplotlib->SimPEG->em_examples) Requirement already satisfied: pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=1.5.6 in c:\users\devin\anaconda2\lib\site-packages (from matplotlib->SimPEG->em_examples) Requirement already satisfied: vectormath>=0.1.1; extra == "math" in c:\users\devin\anaconda2\lib\site-packages (from properties[math]->SimPEG->em_examples)
from em_examples.Base import widgetify
import em_examples.InductionSphereFEM as IND
from ipywidgets import interact, FloatSlider, FloatText, ToggleButtons
Efficiency Warning: Interpolation will be slow, use setup.py! python setup.py build_ext --inplace
Here, we simulate the response observed over a conductive and magnetically permeable sphere by an EM-31. In the leftmost plot, the regional primary or secondary field is plotted in 2D along with the survey geometry. In the rightmost plot, the response at the receiver coil is plotted as a function of frequency. The parameters for the app are summarized below:
widgetify(IND.fcn_FDEM_InductionSphereProfileEM31Widget,xtx=FloatSlider(min=-20, max=20., value=0., step=2., continuous_update=False, description = "$x_{Tx}$"),\
ztx=FloatSlider(min=0., max=10., value=2., step=1., continuous_update=False, description = "$z_{Tx}$"),\
L=FloatSlider(min=0., max=25., value=20., step=5., continuous_update=False, description = "$L$"),\
m=FloatSlider(min=1., max=5.,value=1.,step=1.,continuous_update=False,description = "$m$"),\
orient=ToggleButtons(options=['Vert. Coaxial','Horiz. Coplanar'],value='Horiz. Coplanar',description = "$Configuration$"),\
x0=FloatSlider(min=-20., max=20., value=0., step=1., continuous_update=False, description = "$x_s$"),\
z0=FloatSlider(min=-20., max=0., value=-8., step=1., continuous_update=False, description = "$z_s$"),\
a=FloatSlider(min=0.5, max=5., value=3., step=0.5, continuous_update=False, description = "$R$"),\
sig=FloatSlider(min=0., max=6., value=2., step=0.5, continuous_update=False, description = "$log_{10}(\sigma)$"),\
mur=FloatSlider(min=1., max=5., value=1., step=0.25, continuous_update=False, description = "$\mu_r$"),\
logf=FloatSlider(min=0., max=8., value=5., step=1., continuous_update=False, description = "$log_{10}(f)$"),\
Flag=ToggleButtons(options=['Hp','Hs_real','Hs_imag'],value='Hp',description = "$Field \; Type$"))
Here, we simulate the response observed over a conductive and magnetically permeable sphere. The parameters are relaxed so that the transmitter-receiver separation is no longer fixed. In the leftmost plot, the regional primary or secondary field is plotted in 2D along with the survey geometry. In the rightmost plot, the response at the receiver coil is plotted as a function of frequency. The parameters for the app are summarized below:
widgetify(IND.fcn_FDEM_InductionSphereProfileWidget,xtx=FloatSlider(min=-20, max=20., value=-10., step=2., continuous_update=False, description = "$x_{Tx}$"),\
ztx=FloatSlider(min=0., max=10., value=2., step=1., continuous_update=False, description = "$z_{Tx}$"),\
m=FloatSlider(min=1., max=5.,value=1.,step=1.,continuous_update=False,description = "$m$"),\
orient=ToggleButtons(options=['Vert. Coaxial','Horiz. Coplanar'],value='Horiz. Coplanar',description = "$Configuration$"),\
x0=FloatSlider(min=-20., max=20., value=0., step=1., continuous_update=False, description = "$x_s$"),\
z0=FloatSlider(min=-20., max=0., value=-10., step=1., continuous_update=False, description = "$z_s$"),\
a=FloatSlider(min=0.5, max=5., value=3., step=0.5, continuous_update=False, description = "$R$"),\
sig=FloatSlider(min=0., max=6., value=2., step=0.5, continuous_update=False, description = "$log_{10}(\sigma)$"),\
mur=FloatSlider(min=1., max=5., value=1., step=0.25, continuous_update=False, description = "$\mu_r$"),\
xrx=FloatSlider(min=-20., max=20., value=10., step=1., continuous_update=False, description = "$x_{Rx}$"),\
zrx=FloatSlider(min=0., max=10., value=2., step=1., continuous_update=False, description = "$z_{Rx}$"),\
logf=FloatSlider(min=0., max=8., value=5., step=1., continuous_update=False, description = "$log_{10}(f)$"),\
Flag=ToggleButtons(options=['Hp','Hs_real','Hs_imag'],value='Hp',description = "$Field \; Type$"))
Here, we simulate the response observed over a conductive and magnetically permeable sphere. The transmitter, receiver and sphere locations can be set anywhere in 3D space. The orientation of the transmitter can also be changed. In the leftmost plot, FEM anomaly is plotted on the XY-plane at the same height as the receiver coil. In the rightmost plot, the response at the receiver coil is plotted as a function of frequency. The parameters for the app are summarized below:
widgetify(IND.fcn_FDEM_InductionSpherePlaneWidget,xtx=FloatSlider(min=-20, max=20., value=0., step=1., continuous_update=False, description = "$x_{Tx}$"),\
ytx=FloatSlider(min=-20, max=20., value=0., step=1., continuous_update=False, description = "$y_{Tx}$"),\
ztx=FloatSlider(min=0., max=10., value=2., step=1., continuous_update=False, description = "$z_{Tx}$"),\
m=FloatSlider(min=1., max=5.,value=2.,step=1.,continuous_update=False,description = "$m$"),\
orient=ToggleButtons(options=['x','y','z'],value='z'),\
x0=FloatSlider(min=-20., max=20., value=0., step=1., continuous_update=False, description = "$x_s$"),\
y0=FloatSlider(min=-20., max=20., value=0., step=1., continuous_update=False, description = "$y_s$"),\
z0=FloatSlider(min=-20., max=-2., value=-5., step=1., continuous_update=False, description = "$z_s$"),\
a=FloatSlider(min=0.5, max=5., value=2., step=0.5, continuous_update=False, description = "$R$"),\
sig=FloatSlider(min=0., max=6., value=2., step=0.5, continuous_update=False, description = "$log_{10}(\sigma)$"),\
mur=FloatSlider(min=1., max=5., value=1., step=0.25, continuous_update=False, description = "$\mu_r$"),\
xrx=FloatSlider(min=-20., max=20., value=10., step=1., continuous_update=False, description = "$x_{Rx}$"),\
yrx=FloatSlider(min=-20., max=20., value=10., step=1., continuous_update=False, description = "$y_{Rx}$"),\
zrx=FloatSlider(min=0., max=10., value=2., step=1., continuous_update=False, description = "$z_{Rx}$"),\
logf=FloatSlider(min=0., max=8., value=5., step=1., continuous_update=False, description = "$log_{10}(f)$"),\
Comp=ToggleButtons(options=['x','y','z'],value='z',description = "$Component$"),\
Phase=ToggleButtons(options=['Real','Imag'],value='Real',description = "$Field \; Type$"))