the Creative Commons Attribution 4.0 License.
the Creative Commons Attribution 4.0 License.
PlanetBuilder 1.0: An open-source model to analyse the geochemical evolution of rocky planets during accretion and core formation
Abstract. The chemical compositions of the silicate mantle and iron-rich metallic core of rocky planets are primarily determined by core formation during planetary accretion. For large planetary bodies, such as the Earth, accretion and core formation are complex, continuous processes that take place over millions of years, accompanied by increases in interior pressures and temperatures, changes in compositions and sizes of impactors and variations in the extent of core-mantle equilibration. PlanetBuilder is a new open-source Python-based geochemical multi-stage core formation program, designed to model these complex core formation processes. Using experimentally-derived metal-silicate element partitioning and mass-balance equations, the chemical equilibration between multiple series of (differentiated) impactors and the planetary body can be calculated to derive the bulk core and mantle compositions of continuously growing rocky planetary bodies. Our model combines methodologies from several established geochemical tools, and uses a thermodynamic oxygen partitioning model to verify if the metal-silicate equilibration is complete. PlanetBuilder is designed to handle different planetary and impactor compositions and conditions, as well as multiple elements simultaneously. Due to its reliance on oxygen partitioning, the model is not equipped to handle very oxidised impactors or volatile elements well. One of the main features of PlanetBuilder is the option to correct metal-silicate distribution for non-ideal behaviour of elements in metallic iron-rich liquids. Using a canonical Earth formation model as an example, we show that incorporating non-ideality can change predicted mantle element abundances after core formation by tens of percents, well outside the accuracy of terrestrial mantle abundance estimates. Due to our model's sensitivity to small changes in key parameters (e.g. equilibrium constants and exchange coefficients), it can be a valuable tool for reviewing a parameter's influence on predicted core and mantle compositions.
- Preprint
(735 KB) - Metadata XML
-
Supplement
(851 KB) - BibTeX
- EndNote
Status: final response (author comments only)
- CC1: 'Comment on egusphere-2026-1915', Rob Spaargaren, 14 Aug 2026
-
RC1: 'Comment on egusphere-2026-1915', Anonymous Referee #1, 15 Aug 2026
Review of Seegers et al., “PlanetBuilder 1.0: An open-source model to analyse the geochemical evolution of rocky planets during accretion and core formation” submitted to EGUsphere (egusphere-2026-1915)
The compositions of a rocky planet’s mantle and core are set by metal–silicate equilibration during accretion, and multi-stage core formation models are the principal means of turning experimental partitioning data into predictions testable against samples.
Seegers et al. present PlanetBuilder, an open-source modular Python implementation combining the methodologies of Wade and Wood (2005) and Rubie et al. (2011). Mantle and impactor core are equilibrated at a user-defined effective pressure and temperature; the major-element problem (Fe, Si, Ni, O) is closed by mass balance and partitioning, solved with MIDACO, and tested against the oxygen partitioning model of Frost et al. (2010). The distinguishing feature is the option to correct exchange coefficients for non-ideal behaviour in the metallic liquid using the ε-approach of Ma (2001), which shifts predicted mantle abundances by tens of per cent.
The manuscript is clearly written, Figs. 1 and 2 convey the algorithm well, and the contribution is timely and appropriate for the journal. The implemented model appears correct, and the equation problems I found are typographical and collected at the end of this report. Key issues include an underspecified validation and an unbenchmarked activity module. A more improved description of thermodynamic quantities could also help.
Supplement S.2: It is not stated what the three series in Fig. S.2 are. I infer that “Normalised Rubie et al. (2011)” is Rubie’s published output re-normalised to PlanetBuilder’s convention, and that “PlanetBuilder baseline” is a model run using HET-2 conditions and Rubie’s exchange coefficients, but neither is stated; the alternative reading, that the green curve is itself a PlanetBuilder run, would leave no independent benchmark. The published Rubie series is also visibly quantised in Fig. S.2q (Co, core), sitting flat at exactly 2300 ppm before stepping to 2200 and 2400, which indicates two-significant-figure values from which a mole-level renormalisation should not be possible. It would be helpful to state which series are model output and which are reprocessed literature data, how the renormalisation was performed and from what source, and that the baseline run sets all γ = 1. The last is nowhere stated.
Sect. 2.1 (Eqs. 7–11): The manuscript defines K_D^M (Eq. 7), K_A^M (Eq. 8) and K_M^App (Eq. 9) and fits K_M^App in Eq. (10), whereas Rubie et al. (2011) parameterise log K_D directly, assuming ideal metal activity. The authors have chosen the more physically realistic of the two, K^App. It carries the non-ideal activity coefficients of the metal, whereas Rubie’s K_D absorbs them into the fitted constants. The label “apparent” therefore implies the opposite of what the quantity is. I recommend renaming it (e.g. metal-activity-corrected equilibrium constant), stating at Eq. (10) that the two coincide only for γ = 1, and adding a symbol table distinguishing D_M, K_D^M, K_A^M and K_M^App.
Table 1: Following from the above, the caption states that a, b and c are fits to log K^App. If any of the source regressions (Fischer et al., 2015; Mann et al., 2009; Cottrell et al., 2009, 2010) were performed on uncorrected exchange coefficients, or already absorb the metal non-ideality of the experimental charges, then applying Eq. (9) on counts the effect twice. And, the size of that effect is the headline result of the paper. Please state for each source which quantity was fitted and if no double-counting occurs.
Standard states are unspecified, yet an equilibrium constant is not defined without them. Eq. (48) introduces γ_i^0 as the infinite-dilution coefficient in liquid Fe (Henrian) while γ_Fe and γ_FeO are evidently Raoultian. Mixing reference states is legitimate but must be declared, and the reader needs to know which convention each γ in Eqs. (8), (9) and (11) follows.
Thermodynamic terminology could be improved. Line 346 calls x_FeO and γ_FeO “the concentration and activity of FeO”; γ is the activity coefficient and x a mole fraction. See also “molar fraction” (line 148) against “mole fraction” elsewhere, and “the activity … describes the effective concentrations” (line 164). The partition coefficient is defined by weight in the Introduction (line 42) but in mole fractions in Eq. (2), and D_M is then never used again. It is recommended to either use it or remove it. Related, please state which of Eqs. (4) and (5) the model reports as fO2, and whether it uses the nonideal γ values when activity corrections are on; Rubie et al. compute ΔIW from magnesiowüstite assuming ideality, which is neither.
Sect. 2.4 and 3.2: The paper’s central claim rests entirely on the metal activity module, yet the only validation offered is against a model that assumed ideality, so this branch appears unbenchmarked. An independent check could be performed to reproduce published γ values (Wade and Wood, 2005; Rubie et al., 2015) at 1873 K for a stated metal composition, or tabulating γ_Fe, γ_Si, γ_Ni and γ_O for one accretion step. This would considerably strengthen the paper.
Lines 432–436 and Fig. S.2d: Normalisation accounts for the offsets in Fe and Si in the core, SiO2, NiO, Ni, Cr, W and Nb, but not for oxygen. The normalised and published Rubie curves are indistinguishable in panel d. PlanetBuilder gives roughly 0.34 wt% O against the HET-2 value of 0.48 wt% (Rubie et al., 2011, Table 2), rising to a factor of three to four between 20% and 40% accretion. This is the largest discrepancy in the comparison, in a headline quantity, and belongs in the main text. The main text also attributes it to “a more accurate MIDACO solver” while the supplement attributes it to a different thermodynamic expression; these should be reconciled.
Supplement Eqs. (S.1) and (S.2): Eq. (S.2) is not an arbitrary “adjustment” by Rubie et al. For a strict Fe-FeO binary, the framework in which Frost et al.’s Margules parameters were fitted, x_FeO = x_O and x_Fe = 1 − x_FeO, and (S.1) becomes (S.2) identically. The real difference is that PlanetBuilder applies the binary expression to a quaternary Fe–Ni–Si–O metal in which x_Fe ≈ 0.79 but x_FeO < 1e-4, so the prefactor is ≈ 1 rather than ≈ 0.05, some 20x in RT ln γ_FeO? This needs justifying rather than presenting as a correction, particularly as x_FeO < 0.01% lies far outside the calibration range of W. Benchmarking against Rubie et al. (2015), which the authors state uses (S.1), would settle it.
Lines 510–514 and Fig. 3b: The text states that core oxygen “stabilises at approximately 9.6 wt%”, but Fig. 3b shows O never exceeding about 7000 ppm (0.7 wt%) in any model, including “Combined”, if I am not mistaken. If 9.6 wt% refers to a different quantity, say so; if it is a genuine output it lies well outside published estimates and warrants discussion.
Line 507: Eq. (3) is used as the operational criterion for declaring an impactor core too oxidised. Since it is unbalanced as printed, please confirm which O/Fe ratio the code applies, as this cutoff determines when the impactor core is reassigned to the mantle and thus the behaviour discussed throughout Sect. 3.3.
Eq. (12) is merely the sum of Eqs. (13)–(15), does not encode the oxygen balance (SiO2 enters with a coefficient of 1 rather than 2), and sums moles of chemically distinct species. It has no counterpart in Rubie’s Eqs. S7–S10; I would drop it and present (13)–(16) as the mass balance.
Code availability and lines 240–242 contradict each other: the availability statement says MIDACO “is not included”, while Sect. 2.3 says the published code includes a limited version licensed.
Supplement Fig. S.2p (Co, mantle): the normalised Rubie curve departs from both other series, reaching about 135 ppm against about 107 ppm and lying some 60% high at 55% accretion. For every other element normalisation moves the Rubie curve towards PlanetBuilder; here it moves away, which may suggest a calculation error in that series, which is worth investigating.
Typos in the equations and text that I could identify:
Eq. (3), 2Fe + O2 = FeO is unbalanced and should read 2FeO.
Eq. (21) needs a minus sign before NiO_new to satisfy Eq. (15), as Eq. (22) confirms.
Eq. (25) as written asserts SiO2 new = 0, and should carry SiO2 new in the denominator of the residual.
Line 291, Eq. (31) follows by multiplying rather than dividing by Fe²_new·x(D+x).
Eq. (36) should read a = 3FeO²_new − K_D^Si Fe²_new and b = −(3FeO²_new A + FeO²_new E + K_D^Si Fe²_new D), as follows from Eq. (35), which is identical to Rubie’s Eq. (S17), as printed both roots are negative, and the root taken should be stated.
Eq. (49) reduces as printed to 1/(T ln γ_i) and should read ln γ_i^0(T) = (T0/T) ln γ_i^0(T0).
Eq. (50), the trailing “T0” should label the reference value, not multiply.
Eqs. (34) and (45) are numbers attached to blank lines.
Eq. (27) uses a colon rather than an equals sign and “+O” should read “+O_old”.
Eq. (47), the interaction parameter is set as a roman e rather than ε?
Eq. (48), the reference term carries subscript l rather than i.
Line 151, “(Eq. 1)” should read Eq. (2).
Line 261, Fe_new follows from Eq. (13), not (14).
Line 264, the mole conversion in Eq. (18) is attributed to Eq. (12), which does not supply the phase mole totals.
Line 318, K_D^O (PlanetBuilder) comes from Eq. (40), not (38).
Table 2 caption, “for Ni, O and S” should read Si?
Line 185 is missing “is”.
Line 298, “quadric” should read “quadratic”.
Line 443, “experiemental”.
Line 481, “It is worth to note”.
Citation: https://doi.org/10.5194/egusphere-2026-1915-RC1 -
RC2: 'Comment on egusphere-2026-1915', Anonymous Referee #2, 17 Aug 2026
This manuscript presents PlanetBuilder 1.0, an open-source Python-based model for calculating the evolution of the bulk chemical compositions of the mantle and core of rocky bodies during multi-stage accretion and core formation. The model combines metal-silicate partitioning parameterisations, mass-balance calculations, a thermodynamic treatment of oxygen partitioning, and an optional correction for non-ideal activity behaviour in Fe-rich metallic liquids. The model is designed to accommodate different planetary and impactor compositions, accretion histories, equilibration conditions, and partitioning parameterisations.
I find the manuscript potentially suitable for publication in GMD. The model addresses a relevant problem in planetary geochemistry and provides a useful open-source model for investigating how different partitioning parameterisations and non-ideal behaviour of metallic liquids affect predicted planetary compositions. In particular, the demonstration that non-ideal activity corrections can substantially modify predicted mantle and core compositions is potentially important for future core-formation modelling. Additionally, the manuscript is very well written.
I therefore recommend publication after the authors have addressed the points raised below:
1. I found the role of the thermodynamic (K_D^O) model of Frost et al. (2010) in the PlanetBuilder solver somewhat difficult to understand.
As I understand the procedure, PlanetBuilder first calculates a hypothetical equilibrated composition from the mass-balance and metal–silicate partitioning equations. The resulting (K_D^O) is then compared with the thermodynamically calculated (K_D^O) from Frost et al. (2010), and the FeO abundance is adjusted until the two values agree.
Could the authors explain more explicitly why this two-step approach is used? In particular, what is the conceptual or computational advantage of deriving (K_D^O) from the PlanetBuilder composition and then using the Frost et al. (2010) thermodynamic calculation as an independent equilibrium constraint, rather than formulating the thermodynamic equilibrium condition directly together with the mass-balance and partitioning equations?
I do not necessarily suggest that the present approach is incorrect. Rather, I think the rationale for this architecture should be made clearer, particularly because the Frost et al. (2010) model appears to provide the thermodynamic equilibrium condition for oxygen partitioning.
2. There appears to be a possible inconsistency between the description of the solver and Fig. 2B–G.
The manuscript states that the seven unknown variables are “solved simultaneously”. However, the subsequent description states that the solver first selects a value for the FeO abundance in the planetary mantle, which is then used to derive the other abundances from the mass-balance and metal–silicate partitioning equations. This latter description, together with Fig. 2B–G, appears to suggest that the abundances are derived sequentially.
Could the authors clarify whether all seven variables are actually independent variables optimized simultaneously by MIDACO, or whether FeO is the only variable directly varied by the solver and the other abundances are subsequently derived from it?
If the latter is the case, I suggest revising the wording in Sect. 2.3. The seven quantities may constitute the unknown abundances of the final equilibrium state, but they would not necessarily be seven independent optimization variables.
Clarifying this point would also make Fig. 2B–G considerably easier to understand.
3. The use of a single effective pressure and temperature for each accretion step is a reasonable modelling simplification, but it is potentially important because the partition coefficients are strongly dependent on pressure and temperature.
Could the authors discuss more explicitly how the choice of effective P–T conditions affects the model results? If possible, a sensitivity test using plausible variations around the adopted effective P–T conditions, or a P–T contour plot showing the resulting partition coefficients, would help quantify the importance of this approximation relative to the effects of the partitioning parameters and metal activity corrections.
4. The claim of “excellent agreement” with Rubie et al. (2011) (Sect. 3, l. 432–433) may be somewhat overstated. As shown in Supplementary Material S2, there are noticeable discrepancies between the PlanetBuilder results and those of Rubie et al. (2011), particularly for core O and, to a lesser extent, core Fe. The discrepancy in core O reaches approximately 30% relative to the Rubie et al. (2011) result.
I recognize that the authors discuss possible sources of these differences in the Supplementary Material, however, given their magnitude, I think they should be quantified and acknowledged more explicitly in the main text. Could the authors clarify whether they consider these differences sufficiently small to justify the description of “excellent agreement”?
Additional comments:
Eq. (33)/(34), p.13: Eq. (34) is blank, apparently a LaTeX numbering artefact from a dropped line. Please remove the empty equation number or restore the intended content.
l.600 (Author contributions): "orignal draft" → "original draft"
l.444: "experiemental" → "experimental"
l.481: "It is worth to note" → "It is worth noting"
Reference list: Rubie et al. (2004), p.30, l.714-715: DOI given as 10.1038/nature0247 is truncated and leads to an error page.
Reference list: Drake et al. (1989), p.28, l.641-642: the title given ("Turbulent mixing of metal and silicate during planet accretion - And interpretation of the Hf-W chronometer") is identical to the Dahl and Stevenson (2010) entry directly above it. Please check the references again and correct this.
Reference list, Walter and Cottrell (2013), p.32, l.767-768: like for Rubie et al., the DOI leads to an error page, perhaps due to a typo.
Fig. 3 caption / Supplementary Fig. S1 z-panel (K_Si^D): the "Metal activity corr." curve shows a sharp, non-monotonic spike near 80% accretion. If this is solver behaviour near the oxidised-impactor transition (Sect. 3.3) rather than a plotting artefact, a brief caption note would help readers interpret it correctly
Citation: https://doi.org/10.5194/egusphere-2026-1915-RC2
Viewed
| HTML | XML | Total | Supplement | BibTeX | EndNote | |
|---|---|---|---|---|---|---|
| 299 | 97 | 28 | 424 | 52 | 19 | 22 |
- HTML: 299
- PDF: 97
- XML: 28
- Total: 424
- Supplement: 52
- BibTeX: 19
- EndNote: 22
Viewed (geographical distribution)
| Country | # | Views | % |
|---|
| Total: | 0 |
| HTML: | 0 |
| PDF: | 0 |
| XML: | 0 |
- 1
Dear authors,
Congratulations for this manuscript and model! PlanetBuilder seems like an excellent addition to several fields of study because of its easily adaptable nature as a modular, open access model. You do a wonderful job at describing the chemistry behind the model, as well as its inner workings. I would like to share a few questions and suggestions for improving the manuscript.
Overall, I consider PlanetBuilder to represent a novel and important contribution to the field, and the inner workings of the model are described clearly and comprehensively in the manuscript. I believe that a more explicit discussion of the scientific context and the niche that this model is intended to occupy would considerably strengthen the manuscript and help ensure that the significance and potential impact of this work are fully recognised by the community.
Best regards,
Rob Spaargaren
References:
Schlichting, H. E., & Young, E. D. (2022). Chemical equilibrium between cores, mantles, and atmospheres of super-Earths and sub-Neptunes and implications for their compositions, interiors, and evolution. The Planetary Science Journal, 3(5), 127.