choclo.dipole.magnetic_field#

choclo.dipole.magnetic_field(easting_p, northing_p, upward_p, easting_q, northing_q, upward_q, magnetic_moment)[source]#

Magnetic field due to a dipole

Returns the three components of the magnetic field due to a single dipole a single computation point.

Note

Use this function when all the three component of the magnetic fields are needed. Running this function is faster than computing each component separately. Use one of magnetic_e, magnetic_n, magnetic_u if you need only one of them.

Parameters
  • easting_p (float) – Easting coordinate of the observation point in meters.

  • northing_p (float) – Northing coordinate of the observation point in meters.

  • upward_p (float) – Upward coordinate of the observation point in meters.

  • easting_q (float) – Easting coordinate of the dipole in meters.

  • northing_q (float) – Northing coordinate of the dipole in meters.

  • upward_q (float) – Upward coordinate of the dipole in meters.

  • magnetic_moment (1d-array) – Magnetic moment of the dipole. It should have three components in the following order: mag_moment_easting, mag_moment_northing, mag_moment_upward. Should be in \(A m^2\).

Returns

b (array) – Array containing the three components of the magnetic field generated by the dipole on the observation point in \(\text{T}\). The components are returned in the following order: b_e, b_n, b_u.

Notes

Returns the three components of the magnetic field \(\mathbf{B}\) on the observation point \(\mathbf{p} = (x_p, y_p, z_p)\) generated by a single dipole located in \(\mathbf{q} = (x_q, y_q, z_q)\) and magnetic moment \(\mathbf{m}=(m_x, m_y, m_z)\).

\[\mathbf{B}(\mathbf{p}) = \frac{\mu_0}{4\pi} \left[ \frac{ 3 (\mathbf{m} \cdot \mathbf{r}) \mathbf{r} }{ \lVert r \rVert^5 } - \frac{ \mathbf{m} }{ \lVert r \rVert^3 } \right]\]

where \(\mathbf{r} = \mathbf{p} - \mathbf{q}\), \(\lVert \cdot \rVert\) refer to the \(L_2\) norm and \(\mu_0\) is the vacuum magnetic permeability.