2D models

2D models#

2D models in the world builder are nothing more than a cross section through a 3D model. This means that what you need to do to be able to create a 2D model is to state in the world builder file the origin of the cross section (where x=0 and depth=0) and in what direction the cross section should go (the positive x direction). You can set this with the global parameter cross section. It takes two points. The first point is the origin, and the second point is the direction of the cross section.

Note

The origin of the 3D model doesn’t have to be the same as the origin of the 2D cross section. In the model below the origin of the 2D cross section is located at [0,200e3] (plane view, depth=0).

Note

Even if you have a cross section defined in your world builder file, you can still use it for 3D models. If you want to use 2D models, you will need to have a cross section defined.

Now, let’s add a cross section through the slab in our model.

1{
2  "version": "1.0",
3  "coordinate system":{"model":"cartesian"},
4  "cross section":[[0,450e3],[10e3,450e3]],
5  "features":
6  [
BST_18_2D_models.wb
BST_18_2D_models.grid
Paraview 2D state file
 1{
 2  "version": "1.0",
 3  "coordinate system":{"model":"cartesian"},
 4  "cross section":[[0,450e3],[10e3,450e3]],
 5  "features":
 6  [
 7    {
 8      "model":"mantle layer", "name":"upper mantle", "max depth":660e3,
 9      "coordinates":[[-1000e3,0],[-1000e3,1000e3],[3000e3,1000e3],[3000e3,0]],
10      "composition models":[{"model":"uniform", "compositions":[4]}]
11   },
12   {
13      "model":"oceanic plate", "name":"Overriding Plate", "max depth":100e3, 
14      "coordinates":[[0,0],[0,1000e3],[1500e3,1000e3],[1600e3,350e3],[1500e3,0]],
15      "temperature models":
16        [
17          {"model":"half space model", "max depth":100e3, "spreading velocity":0.04, 
18           "ridge coordinates":[[[400e3,-1],[-100e3,2000e3]]]}
19        ],
20      "composition models":[{"model":"uniform", "compositions":[0], "max depth":50e3}]
21   },
22   {
23      "model":"continental plate", "name":"Passive margin", "max depth":[[200e3]], 
24      "coordinates":[[-1000e3,0],[-1000e3,1000e3],[0,1000e3],[0,0]],
25      "temperature models":
26        [
27          {"model":"linear", "max depth":[[100e3],[200e3,[[-250e3,0],[-750e3,1000e3]]]]}
28        ],
29      "composition models":
30        [
31          {"model":"uniform", "compositions":[3], 
32           "max depth":[[100e3],[200e3,[[-250e3,0],[-750e3,1000e3]]]]},
33          {"model":"uniform", "compositions":[1], 
34           "min depth":[[100e3],[200e3,[[-250e3,0],[-750e3,1000e3]]]]}
35        ]
36   },
37   {
38     "model":"oceanic plate", "name":"Subducting Oceanic plate", "max depth":300e3, 
39     "coordinates":[[2000e3,0],[2000e3,1000e3],[1500e3,1000e3],[1600e3,350e3],[1500e3,0]],
40     "temperature models":[{"model":"half space model", "max depth":300e3,"spreading velocity":0.02,
41                            "ridge coordinates":[[[5e6,-1],[5e6,2000e3]]]}],
42      "composition models":[{"model":"uniform", "compositions":[3], "max depth":50e3},
43                            {"model":"uniform", "compositions":[1], "min depth":50e3, "max depth":100e3}]
44   },
45   { 
46     "model":"subducting plate", "name":"Slab", "dip point":[0,0],
47     "coordinates":[[1500e3,1000e3],[1600e3,350e3],[1500e3,0]],
48     "segments":
49       [
50         {"length":300e3, "thickness":[300e3], "top truncation":[-100e3], "angle":[0,60],
51          "composition models":[
52            {"model":"uniform", "compositions":[3], "max distance slab top":50e3},
53            {"model":"uniform", "compositions":[2], "min distance slab top":50e3, "max distance slab top":100e3}]},
54         {"length":500e3, "thickness":[300e3], "top truncation":[-100e3], "angle":[60,20]}
55       ],
56     "sections":
57       [
58         {"coordinate":0,
59          "segments":[{"length":300e3, "thickness":[300e3], "top truncation":[-100e3], "angle":[0,60]},
60                      {"length":400e3, "thickness":[300e3], "top truncation":[-100e3], "angle":[60]}],
61                       "composition models":[{"model":"uniform", "compositions":[1],"max distance slab top":100e3}]}
62       ],
63     "temperature models":[{"model":"mass conserving", "density":3300, "spreading velocity":0.02, "subducting velocity":0.02,
64                            "ridge coordinates":[[[5e6,-1],[5e6,2000e3]]],"coupling depth":50e3,
65                            "min distance slab top":-200e3, "max distance slab top":300e3}],
66     "composition models":[{"model":"uniform", "compositions":[2], "max distance slab top":100e3}]
67   },
68   {
69     "model":"plume", "name":"Hot spot",
70     "coordinates":[[200e3,450e3],[150e3,450e3],[110e3,450e3],[70e3,450e3],[50e3,450e3],[0e3,450e3]],
71     "cross section depths":[50e3,100e3,200e3,400e3,500e3,600e3],
72     "semi-major axis":[250e3, 150e3, 50e3,50e3,50e3,50e3],
73     "eccentricity":[0.75, 0.75, 0.5, 0.5, 0.5,0.5],
74     "rotation angles":[50, 50, 5, 25, 50, 50],
75     "temperature models":
76     [
77       {"model":"gaussian", "operation":"add",
78         "centerline temperatures":[225, 175, 185, 195, 205, 215],
79         "gaussian sigmas":[0.3, 0.3, 0.3,0.3,0.3,0.3],
80         "depths":[50e3,100e3,200e3,400e3,500e3,600e3]}
81     ], 
82     "composition models":[{"model":"uniform","compositions":[5], "min depth":0}]
83   }
84  ]
85}
BST_18_2D_models.wb
BST_18_2D_models.grid
Paraview 2D state file

Note

You need to change the gridfile to a 2D grid to be able to see the difference.

Basic Starter Tutorial section 18 highres result.

The location of the 2D cross-section in the 3D model. The turquoise arrow show at the dot [0,450e3] and at the arrow head [100e3,450e3], where [0,450e3] is the origin of the 2D plane. The semi-transparent turquoise plane show the full cross section location.#

Basic Starter Tutorial section 18 highres result.

Basic Starter Tutorial section 18 high resolution result. This has 4 times the resolution than the grid file above. Note that some of the issues with the slab, like it’s abrubt ending can be solved by using the mass conserving temperature model instead of the McKenzie plate model.#