Mag constrained inversion

I am trying to run a SimPEG inversion of airborne mag data using the REGULARIZATION option for defining constraints,
(Regularization - Reference effective susceptibility - Model)
using an object & value created by an import of a DXF (iso), type Surface (under a Container Group) … and not getting anywhere.

The question (probably…) is
What object type is required for the Object for the Model?

Hi George,

So if I get you right, you are trying to go from a Surface object in geoh5 representing an iso value of susc, and want to use it in your 3D mesh as a reference model. Yes?

For starter, Simpeg expects everything to already be in your inversion mesh (i.e. an array of values for each cells of the 3D mesh). The tricky part here will be the conversion from triangulated surface to 3D raster of values. Looking for points inside/outside a non-convex surface has always be en a pretty fundamental and difficult problem for everybody. The short answer is that we (Simpeg) don’t have a canned function to do that, but I would be very interested in looking for solutions. This comes back all the time. I did use VTK at some point to do it, but haven’t tried in a while. Here’s an old script to start back from…

Right now it is going from GOCAD ts files to 3D model… but it should be easy to adapt to GA-Surface.

Hello Dominic,
thanks for the reply & clarification.

You’re correct, I am trying to use a Surface object imported from a DXF file representing a susceptibility iso-surface (created elswhere).
In the GA, it looks like this:

(see if the screenshot uploaded…)
When entering the object (spar_su…etc) into the Reference susceptibility, it offers only the Z for a Value (the Z coord), which is obviously not the correct vallue I want to assign to the surface, but for the testing perhaps good enough.
The inversion procedure gets past the Tiling to Creating Global Octree, Calculating global active cells from topo… then crashes with Index Error: List index out of range.

At this point, rather than creating a function that would be capable of handling just about any surface, I guess a more expedient solution would be to follow a tested and proven path, e.g. using a data format/ object type that’s known to work for the constraint definition.
I haven’t been able to find any demos /tutorials for running the inversion with constraints - anything publicly available?

ok - 3D raster of values.
sorry it took so long for the coin to drop.

Hi George,

It’s in our list of requests to have a generic 3D model builder/ forward modeler, we just haven’t got around to work on it. Hopefully within the summer…