# World Builder does not read the composition

**URL:** <https://community.geodynamics.org/t/world-builder-does-not-read-the-composition/4378>\
**Category:** ASPECT\
**Created:** [December 8, 2025, 4:59pm UTC](https://community.geodynamics.org/t/world-builder-does-not-read-the-composition/4378 "2025-12-08T16:59:53Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![xiang](https://avatars.discourse-cdn.com/v4/letter/x/9fc348/32.png) [@xiang](https://community.geodynamics.org/u/xiang)\
**Post date:** [December 8, 2025, 4:59pm UTC](https://community.geodynamics.org/t/world-builder-does-not-read-the-composition/4378/1 "2025-12-08T16:59:53Z")

</div>

Hi all!

I am running the cookbook “Mantle convection with continents in an annulus”. I tries simplifying the model by only using visco plastic and turns of compressibility. However, the output does not show composition 1\_mantle and 3\_continent. I did another test by changing the solver to “no Advection, no Stokes”, however, those compositions showed up suprisingly.

I attached my two input files (original\_singleAdv\_itrSto.prm original\_NoAdv\_NoSto.prm) and the original cookbook file (modelR.prm) here.

My ASPECT version is v3.0.0 and I also ran the original cookbook file, it works and shows the 3\_continent composition too. (Only the original\_singleAdv\_itrSto.prm does not generate any composition)

I’d appreciate any possible ideas about this problem. Thanks!

Best regards,  
Xiang

(single Advection, iterated Stokes)(original\_singleAdv\_itrSto.prm)

 ![image](https://canada1.discourse-cdn.com/flex036/uploads/geodynamics/original/2X/f/fcbfdd5750b83b77f349c7a98a071605ef382cf6.png)

(No Advection, No Stokes)(original\_Adv\_itrSto.prm)

 ![image](https://canada1.discourse-cdn.com/flex036/uploads/geodynamics/original/2X/1/135206b766d642558e5793278502a7fd3c39b76f.png)

Below is the world.wb file (which could be found also in the cookbook “Mantle convection with continents in an annulus”)  
{  
“version”:“1.0”,  
“coordinate system”:{“model”:“spherical”, “depth method”:“begin segment”},  
“cross section”:[[0,0],[360,0]],  
“features”:  
[

```
 /*0-10km*/
 {"model":"mantle layer", "name":"mantle", "min depth":0e3, "max depth":10e3, "coordinates":[[0,-1],[360,-1],[360,1],[0,1]],
 "temperature models":[{"model":"linear", "min depth":0e3, "max depth":10e3, "top temperature":300, "bottom temperature":300}],
 "composition models":[{"model":"uniform", "compositions":[0]}]}, 

 /*10-120km*/
 {"model":"mantle layer", "name":"mantle", "min depth":10e3, "max depth":120e3, "coordinates":[[0,-1],[360,-1],[360,1],[0,1]],
 "temperature models":[{"model":"linear", "min depth":10e3, "max depth":120e3, "top temperature":300, "bottom temperature":1700}],
 "composition models":[{"model":"uniform", "compositions":[0]}]}, 

 /*120-2700km*/
 {"model":"mantle layer", "name":"mantle", "min depth":120e3, "max depth":2700e3, "coordinates":[[0,-1],[360,-1],[360,1],[0,1]],
 "temperature models":[{"model":"linear", "min depth":120e3, "max depth":2700e3, "top temperature":1700, "bottom temperature":2700}],
 "composition models":[{"model":"uniform", "compositions":[0]}]},

 /*2700-3000km*/
 {"model":"mantle layer", "name":"mantle", "min depth":2700e3, "max depth":3000e3, "coordinates":[[0,-1],[360,-1],[360,1],[0,1]],
 "temperature models":[{"model":"linear", "min depth":2700e3, "max depth":3000e3, "top temperature":2700, "bottom temperature":3700}],
 "composition models":[{"model":"uniform", "compositions":[0]}]},

 / ***************** /

 /*raft 1 between 0 and 27 - 3000km long continent*/ 
 {"model":"continental plate", "name":"raft1", "min depth":0e3, "max depth":[[0e3],[150e3,[[3,-1],[3,1],[3,0],[24,-1],[24,0],[24,1]]]], "coordinates":[[0,-1],[27,-1],[27,1],[0,1]],
 "temperature models":[{"model":"linear", "max depth":[[0e3],[150e3,[[3,-1],[3,1],[3,0],[24,-1],[24,0],[24,1]]]]}],
 "composition models":[{"model":"uniform", "compositions":[1]}]},

 /*raft 2 between 100 and 145 - 5000km long continent*/ 
 {"model":"continental plate", "name":"raft2", "min depth":0e3, "max depth":[[0e3],[150e3,[[103,-1],[103,1],[103,0],[142,-1],[142,0],[142,1]]]], "coordinates":[[100,-1],[145,-1],[145,1],[100,1]],
 "temperature models":[{"model":"linear", "max depth":[[0e3],[150e3,[[103,-1],[103,1],[103,0],[142,-1],[142,0],[142,1]]]]}],
 "composition models":[{"model":"uniform", "compositions":[1]}]},

 /*raft 3 between 200 and 245 - 5000km long continent*/ 
 {"model":"continental plate", "name":"raft3", "min depth":0e3, "max depth":[[0e3],[150e3,[[203,-1],[203,1],[203,0],[242,-1],[242,0],[242,1]]]], "coordinates":[[200,-1],[245,-1],[245,1],[200,1]],
 "temperature models":[{"model":"linear", "max depth":[[0e3],[150e3,[[203,-1],[203,1],[203,0],[242,-1],[242,0],[242,1]]]]}],
 "composition models":[{"model":"uniform", "compositions":[1]}]},

 / ***************** /

 /* slab of raft 1*/
 {"model":"subducting plate", "name":"oceanic", "coordinates":[[-6,-1],[-6,1]], "dip point":[10,0],
 "segments":[{"length":400e3, "thickness":[150e3], "angle":[0]},
             {"length":1200e3, "thickness":[150e3], "angle":[0,30]}],
 "temperature models":[{"model":"linear", "max distance slab top":120e3, "top temperature":300, "bottom temperature":1700}],
 "composition models":[{"model":"uniform", "compositions":[0]}]},

 /* slab of raft 2*/
 {"model":"subducting plate", "name":"oceanic", "coordinates":[[94,-1],[94,1]], "dip point":[110,0],
 "segments":[{"length":400e3, "thickness":[150e3], "angle":[0]},
             {"length":1200e3, "thickness":[150e3], "angle":[0,30]}],
 "temperature models":[{"model":"linear", "max distance slab top":120e3, "top temperature":300, "bottom temperature":1700}],
 "composition models":[{"model":"uniform", "compositions":[0]}]},

 /* slab of raft 3*/
 {"model":"subducting plate", "name":"oceanic", "coordinates":[[194,-1],[194,1]], "dip point":[210,0],
 "segments":[{"length":400e3, "thickness":[150e3], "angle":[0]},
             {"length":1200e3, "thickness":[150e3], "angle":[0,30]}],
 "temperature models":[{"model":"linear", "max distance slab top":120e3, "top temperature":300, "bottom temperature":1700}],
 "composition models":[{"model":"uniform", "compositions":[0]}]}

```

]  
}

[original\_NoAdv\_NoSto.prm](https://community.geodynamics.org/uploads/short-url/xlQLSdiDiEJ0rr4Jrde0FnQms1l.prm) (8.6 KB)  
[original\_singleAdv\_itrSto.prm](https://community.geodynamics.org/uploads/short-url/fiRnbBcm9YwjZ1NedaBP3oMThf0.prm) (8.6 KB)  
[modelR.prm](https://community.geodynamics.org/uploads/short-url/76EPw8sH3fpEEquOm9rYI9eIXKr.prm) (8.5 KB)

---

<div class="post-metadata">

**Author:** ![ljhwang](https://yyz2.discourse-cdn.com/flex036/user_avatar/community.geodynamics.org/ljhwang/32/8_2.png) [@ljhwang](https://community.geodynamics.org/u/ljhwang)\
**Post date:** [December 10, 2025, 4:40pm UTC](https://community.geodynamics.org/t/world-builder-does-not-read-the-composition/4378/2 "2025-12-10T16:40:47Z")

</div>

reposted to ASPECT forum to see if there is someone here who can help.

---

<div class="post-metadata">

**Author:** ![xiang](https://avatars.discourse-cdn.com/v4/letter/x/9fc348/32.png) [@xiang](https://community.geodynamics.org/u/xiang)\
**Post date:** [December 10, 2025, 6:06pm UTC](https://community.geodynamics.org/t/world-builder-does-not-read-the-composition/4378/3 "2025-12-10T18:06:20Z")

</div>

Thanks!

---

<div class="post-metadata">

**Author:** ![arushi\_saxena](https://yyz2.discourse-cdn.com/flex036/user_avatar/community.geodynamics.org/arushi_saxena/32/3119_2.png) [@arushi\_saxena](https://community.geodynamics.org/u/arushi_saxena)\
**Post date:** [December 16, 2025, 12:04am UTC](https://community.geodynamics.org/t/world-builder-does-not-read-the-composition/4378/4 "2025-12-16T00:04:44Z")

</div>

Hello Xiang,

Thank you for sharing the ASPECT prm files!  
I think you need to select ‘particles’ in the ``set List of postprocessors``.

I’m not an expert with particles, and it was quite confusing to me why not solving for advection would interpolate particle properties onto the solution field.  
A discussion with @YiminJin suggested that the issue might lie in the ``solver_schemes.cc` file` and how ``initial_conditions.cc`` is called for a particular nonlinear solver scheme. After digging a bit more, I’m reasonably sure that the issue (?) comes because `particles_managers` are not initialized (line 474 in ``simulator/core.cc``), which is used in the function ``interpolate_particle_properties` in file `initial_conditions.cc``.  
You don’t have to worry about these details—I’m mostly posting them in case this is indeed an issue, since I lack the knowledge to fully assess it.

Best,  
Arushi
