In [ ]:
from geoscilabs.em.PlanewaveWidgetTD import PlanewaveWidget, InteractivePlaneProfile
from geoscilabs.em.VolumeWidgetPlane import InteractivePlanes, plotObj3D


# Purpose¶

We visualizae downward propagating planewave in the homogeneous earth medium with impulse excitation. With the two apps: a) Plane wave app and b) Profile app, we understand fundamental concepts of planewave propagation in time-domain.

# Set up¶

Planewave EM solutions for homogeneous earth with impulse exictation can be expressed as

$$\mathbf{e}(t) = -E_0 \frac{(\mu\sigma)^{1/2}z}{2 \pi^{1/2} t^{3/2}} e^{-\mu\sigma z^2 / (4t)} \mathbf{u_x}$$$$\mathbf{h}(t) = E_0 \sqrt{\dfrac{\sigma}{\pi\mu t}}\, e^{-\mu\sigma z^2/4t} \, \mathbf{u_y}$$

Note that this dervation based upon quasi-static approximation, which ignores displacement currents. For detailed derivation see EM geosci.

In [ ]:
ax = plotObj3D()


# Planewave app¶

## Parameters:¶

• Field: Type of EM fields ("Ex": electric field, "Hy": magnetic field)
• Time: Time (s)
• Sigma: Conductivity of homogeneous earth (S/m)
• Scale: Choose "log" or "linear" scale
In [ ]:
dwidget = PlanewaveWidget()
dwidget.InteractivePlaneWave()


# Profile app¶

We visualize EM fields at vertical profile

## Parameters:¶

• Field: Ex, Hy, and Impedance
• $\sigma$ : Conductivity (S/m)
• Scale: Log10 or Linear scale
• $t$: Time
In [ ]:
InteractivePlaneProfile()

In [ ]: