Skip to content

Gradient Calculation

Alexey Dobrovolskiy edited this page Jan 8, 2026 · 6 revisions

MagNIMBUS is a lightweight magnetometer system designed for flexible deployment across a range of survey conditions. Depending on operational needs and processing requirements, it can be configured either as a gradiometer or as a single-sensor unit with a foldable mount.

When using gradiometer configuration, this setup streamlines data processing and eliminates the need for a magnetometer base station (when searching for man-made objects). In addition, gradiometric measurements enable magnetic surveys in close proximity to external electromagnetic field sources (e.g., power lines), where single-sensor measurements may be more susceptible to interference.

Currently, MagNIMBUS is the only lightweight magnetometer system on the market that supports a gradiometer configuration. As a result, it offers a distinct operational advantage by both simplifying processing workflows and enabling reliable surveying in environments influenced by external electromagnetic noise.

Data used in this tutorial can be downloaded here.
Data was gathered using a MagNIMBUS atomic total-field magnetometer over the SPH Engineering's test range with buried pipes and barrels.

Category Parameter Description
Flight parameters Flight altitude 1.5 m (True Terrain Following altimeter)
Flight parameters Magnetometer sensor altitude from ground 0.5 m (lower QuSpin sensor); 2.0 m (upper QuSpin sensor)
Flight parameters Flight velocity 5 m/s
Hardware Magnetometer setup SPH Engineering’s QuSpin Gradiometer setup
Hardware Drone platform DJI M300 RTK drone
Hardware Onboard computer & navigation SkyHub onboard computer with True Terrain Following system and RTK GPS


  1. Use the “Open files” toolbar button or drag and drop the required file for processing.
image
  1. Use the “Select Area” button to choose desired survey area and click “Apply Crop”.
image
  1. In the data processing zone, you can select between the TMI (lower sensor) or TMI_S (upper sensor). First we will select TMI and apply Low-Pass filter of 50 fiducials. After you have applied the LP-filter to TMI, do the same process with TMI_S.
image
  1. After both of the sensors have been filtered, you will end up with two more data columns - TMI_LPF and TMI_S_LPF.
image
  1. In the scripts menu, choose 'Gradient Calculation'. If your data columns (for lower and upper sensor) are the same as the ones we just made, they should automatically be linked:
    Lower sensor column - TMI_LPF and Upper senor column - TMI_S_LPF.
image
  1. When you have chosen the correct columns, click 'Apply'. The script will automatically download all the required dependencies for it to work. If everything worked properly, a message in the log will be shown:

[Gradient calculation] Done
[Gradient calculation] Script executed successfully.

Now go back to processing area and you will find a new column, called 'Gradient'. Check it and remove everything else. Now let's apply gridding to it.
For cell size we'll put 0.1 and for the blanking distance 1m. For smoother interpolation, check 'Enable smoothing' box and click apply.

image
image

Why it’s useful?

Magnetic signals from buried objects or geology get weaker with distance. The lower sensor “sees” them more strongly than the upper sensor. Subtracting:

  • Enhances shallow/near-surface anomalies (buried metal, UXO, pipelines, near-surface geology)
  • Reduces common noise that affects both sensors similarly (diurnal variations, some regional field effects, some platform noise)

That’s why gradiometers are often better near power lines and other EM-disturbed areas: a lot of unwanted variation shows up in both sensors, and subtraction cancels part of it.

One small technical note!

This script computes a difference, not a “per meter” gradient. If you want the gradient in physical units like nT/m, you’d divide by the vertical separation between sensors:

(TMI_lower − TMI_upper) / Δz

If your lower sensor is at 0.5 m and upper at 2.0 m, then Δz=1.5 m.

Clone this wiki locally