Adding a passive margin with variable depth

Adding a passive margin with variable depth#

Although we have hinted towards it before, there is also an area feature called continental plate. It works as you would expect based on what you have seen with the oceanic plate, but we are going to use it to do something very cool in our model: have variable depths of a feature or even of layers within a given feature!

To showcase this, we will be adding a passive margin to our model at the overriding plate side of our model. To start out, we need to know that both the min depth and max depth accept two types of values: a number and an array of values at points.

Note

For an example of what this looks like in technical terms, see /features/items/oneOf/1/max depth.

The number input we have seen before, and just sets the maximum depth to a single value. The value at points system works a bit differently, but can be used to achieve the same result. To start out easy, this is exactly what we are going to to for the max depth of the continental feature.

The value at points system creates a list of points, which at least include all the edge points of an object and assigns a value to them. Then to get the actual value at the rest of the points, max depth in our case, an interpolation between some close points is performed to get the value at that point.

Below are two examples of how to first set the depth of two points to 200 km, and then an example of how to also set a third point to a value of 100 km.

1    "max depth":[[200e3, [[10e3,0],[20e3,10e3]]]],
2    
3    "max depth":[[200e3, [[10e3,0],[20e3,10e3]]],[100e3,[[15e3,0]]]]

A common operation is to set all the corners to a single value, and then maybe overwrite individual corners. To make life easy, there is a quick way to (re)set the value at the corner points: just pass a value with no points. This is what is done in the code sample below at the emphasized lines. The first entry is a value without points. That means that all the corner points are set to that value.

Note

If you provide a point twice, explicitly, or implicitly through the use of the corner values shortcut (e.g. [200]), the last defined value is used. This follows the painting analogy used before, where you overpaint older values.

16    {
17       "model":"continental plate", "name":"Passive margin", "max depth":[[200e3]], 
18       "coordinates":[[-1000e3,0],[-1000e3,1000e3],[0,1000e3],[0,0]],
19       "temperature models":
20         [
21           {"model":"linear", "max depth":[[100e3],[200e3,[[-250e3,0],[-750e3,1000e3]]]]}
22         ],
23       "composition models":
24         [
25           {"model":"uniform", "compositions":[3], 
26            "max depth":[[100e3],[200e3,[[-250e3,0],[-750e3,1000e3]]]]},
27           {"model":"uniform", "compositions":[1], 
28            "min depth":[[100e3],[200e3,[[-250e3,0],[-750e3,1000e3]]]]}
29         ]
30    },
BST_08_passive_margin_variable_depth.wb
BST_08_passive_margin_variable_depth.grid
Paraview v2 state file
 1{
 2  "version": "1.0",
 3  "coordinate system":{"model":"cartesian"},
 4  "features":
 5  [
 6    {
 7       "model":"oceanic plate", "name":"Overriding Plate", "max depth":100e3, 
 8       "coordinates":[[0,0],[0,1000e3],[1500e3,1000e3],[1600e3,350e3],[1500e3,0]],
 9       "temperature models":
10         [
11           {"model":"half space model", "max depth":100e3, "spreading velocity":0.04, 
12            "ridge coordinates":[[[400e3,-1],[-100e3,2000e3]]]}
13         ],
14       "composition models":[{"model":"uniform", "compositions":[0], "max depth":50e3}]
15    },
16    {
17       "model":"continental plate", "name":"Passive margin", "max depth":[[200e3]], 
18       "coordinates":[[-1000e3,0],[-1000e3,1000e3],[0,1000e3],[0,0]],
19       "temperature models":
20         [
21           {"model":"linear", "max depth":[[100e3],[200e3,[[-250e3,0],[-750e3,1000e3]]]]}
22         ],
23       "composition models":
24         [
25           {"model":"uniform", "compositions":[3], 
26            "max depth":[[100e3],[200e3,[[-250e3,0],[-750e3,1000e3]]]]},
27           {"model":"uniform", "compositions":[1], 
28            "min depth":[[100e3],[200e3,[[-250e3,0],[-750e3,1000e3]]]]}
29         ]
30    },
31    {
32      "model":"oceanic plate", "name":"Subducting Oceanic plate", "max depth":100e3, 
33      "coordinates":[[2000e3,0],[2000e3,1000e3],[1500e3,1000e3],[1600e3,350e3],[1500e3,0]],
34      "temperature models":[{"model":"linear", "max depth":100e3}],
35       "composition models":[{"model":"uniform", "compositions":[3], "max depth":50e3},
36                             {"model":"uniform", "compositions":[1], "min depth":50e3}]
37    }
38  ]
39}
BST_08_passive_margin_variable_depth.wb
BST_08_passive_margin_variable_depth.grid
Paraview v2 state file
Basic Starter Tutorial section 8.

Basic Starter Tutorial section 8. The top part of the figure shows where the composition as been assigned as an object. Currently it shows composition 0 as green, composition 1 as yellow and composition 3 as blue. The bottom part shows the temperature as seen slightly from below where only temperatures between 300K and 1600K are shown. The added continental plate with variable thickness of it’s two layers is now visible on the left side of the image.#