One of the [studies we reproduced](/writing/interface-studies-reproduced) for [Questions we need Emily to answer](/writing/questions-for-emily-testing-a-theory-of-the-interface), the companion to [the essay](/writing/testing-a-theory-of-the-interface-with-an-ontology). Generated by `scripts/reproduce_studies.py` from `reproductions/david_2015.py`. Every value from the paper was read by an AI agent and has not been checked by a person; the sample and history were re-read from the PDF alone by a second agent that had not seen our earlier transcription.
The study and why we depend on it
T. David, A. Benkouider, J.-N. Aqua, M. Cabie, L. Favre, T. Neisius, M. Abbarchi, M. Naffouti, A. Ronda, K. Liu and I. Berbezier, “Kinetics and Energetics of Ge Condensation in SiGe Oxidation”, J. Phys. Chem. C 119, 24606 (2015); HAL hal-01473115 (accepted manuscript, the copy read).
The dry-oxidation test of the interface enrichment relation (germanium under the oxide settles at a floor plus a share of the starting fraction), which was fitted on Müller 2023's wet oxidations. David's statement that the germanium-rich layer holds 50% at every temperature up to 900 °C is the relation's main held-out evidence. The 34 nm film on thin SOI adds what no planar program of ours describes: an alloy that is used up.
How well can this study be reproduced?
Moderate. Two stacks, one gas, a stated temperature and duration for every sample. A simulation must still supply the RTO ramps, the gas during them, whether the 750 °C series is one sample re-oxidized in 30 min steps, and the starting surface. The numbers that matter are sentences (50% germanium up to 900 °C; 5 nm and 10 nm of germanium-rich layer; 70% at 14 h, pure germanium at 15 h); thicknesses at 800 to 950 °C exist only as a graph of thickness squared over time.
| Sample described | 0 of 5 properties we need are stated and encoded the same |
| History described | 3 of 8 steps are stated and encoded the same; 2 are stated by the paper and absent from our history; 2 are ours because the paper is silent |
| Timing | 1 of 3 simulated steps have a stated duration; 4 of 4 other steps have none; 5 timing gaps listed below |
| How the results are given | Germanium content and layer thickness as sentences in the text; oxide and layer thickness only as Figure 4 (thickness² over time against 1/T); profiles as Figures 3b and 5a |
| Repeatability stated by the authors | Not stated. EDS is called “semi-quantitative”; the germanium lost is “less than 10 %” |
| Internal consistency | Fair. 50% “up to 900 °C” while the 900 °C profile in Figure 3b peaks near 45%; activation energies 2.1 and 2.56 eV in the text, 2.3 ± 0.3 eV in the conclusions; the germanium balance from the stated thicknesses loses about 26%, not under 10% |
| Is our model independent of this paper's data? | Yes for the germanium at the interface: the relation was fitted to Müller 2023's two planar values and has never seen these. The growth programs were never fitted to dry oxidation of SiGe at all |
| Outcome | 7 of 21 numbers within tolerance |
The grade is ours and is about the paper as a source for simulation, not about the quality of the experiment: high means the sample, every step and its timing are stated well enough that a simulation needs no choices of ours; moderate that some choices are ours and are listed; low that the result depends on choices the paper does not constrain.
The sample and its history, played back
The sample is drawn from the simulation: layer heights and the read-outs are what the ISL programs compute at each moment of the history. Steps the language cannot state (a clean, a metallization, a measurement) are on the clock and marked as recorded, not simulated.
“a 1µm thick Si0.8Ge0.2 relaxed layer on a graded SiGe buffer layer epitaxially grown on silicon”
| oxide thickness | 0 nm | |
| germanium at the interface | 22.2 % | 50 |
| enriched layer, e-folding depth | 13 nm | |
| alloy consumed | 0.562 nm |
Does our sample and history match the paper's?
Left: the paper's own words, with the page of the PDF. Right: what we simulate. 3 same, 2 approximated, 4 assumed, 1 differs, 3 not in ours.
The timing of the history
Time is counted from the start of the first simulated step. A step the language cannot state takes no simulated time; where the paper gives its duration, the duration is in the last column. Stated means the paper gives the duration; partly stated that it gives a bound or a range; not stated; assumed that the duration in our history is ours.
Structure 1 (1 µm relaxed Si0.8Ge0.2), 750 °C, 90 min
| # | Step | Starts at | Lasts | Ends at | Temperature | Rate | Gas | Is the timing in the paper? |
|---|---|---|---|---|---|---|---|---|
| 1 | Graded SiGe buffer and 1 µm relaxed Si0.8Ge0.2, epitaxial | 0 s | not simulated | not stated. Growth time, rate and temperature not stated | ||||
| 2 | Into the JIPELEC rapid thermal oxidation furnace | 0 s | not simulated | not stated. Storage time and any clean before oxidation: not stated | ||||
| 3 | Ramp to temperature (not described) | 0 s | 1 min | 1 min | 25 → 750 °C | +12.1 °C/s | dry_O2 | not stated; assumed. Ramp rate and gas not stated |
| 4 | Dry oxidation, 750 °C, 1.5 h | 1 min | 1 h 30 min | 1 h 31 min | 750 → 750 °C | held | dry_O2 | stated. 90 min, stated |
| 5 | Cool down (not described) | 1 h 31 min | 2 min | 1 h 33 min | 750 → 300 °C | -3.75 °C/s | dry_O2 | not stated; assumed. Cooling rate and gas not stated |
| 6 | Cross section by FIB, or tripod polishing and ion thinning | 1 h 33 min | not simulated | not stated | ||||
| 7 | STEM-EDS germanium profile; TEM thicknesses | 1 h 33 min | not simulated | not stated |
Simulated time in this history: 1 h 33 min.
Across the samples
| Sample | RampUp | Oxidation | RampDown | Total |
|---|---|---|---|---|
| Structure 1 (1 µm relaxed Si0.8Ge0.2), 750 °C, 90 min | 1 min at 25→750 °C | 1 h 30 min at 750 °C | 2 min at 750→300 °C | 1 h 33 min |
| Structure 1 (1 µm relaxed Si0.8Ge0.2), 800 °C, 90 min | 1 min at 25→800 °C | 1 h 30 min at 800 °C | 2 min at 800→300 °C | 1 h 33 min |
| Structure 1 (1 µm relaxed Si0.8Ge0.2), 850 °C, 90 min | 1 min at 25→850 °C | 1 h 30 min at 850 °C | 2 min at 850→300 °C | 1 h 33 min |
| Structure 1 (1 µm relaxed Si0.8Ge0.2), 900 °C, 90 min | 1 min at 25→900 °C | 1 h 30 min at 900 °C | 2 min at 900→300 °C | 1 h 33 min |
| Structure 1 (1 µm relaxed Si0.8Ge0.2), 950 °C, 90 min | 1 min at 25→950 °C | 1 h 30 min at 950 °C | 2 min at 950→300 °C | 1 h 33 min |
| Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 1.5 h | 1 min at 25→750 °C | 1 h 30 min at 750 °C | 2 min at 750→300 °C | 1 h 33 min |
| Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 6 h | 1 min at 25→750 °C | 6 h 00 min at 750 °C | 2 min at 750→300 °C | 6 h 03 min |
| Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 13 h | 1 min at 25→750 °C | 13 h 00 min at 750 °C | 2 min at 750→300 °C | 13 h 03 min |
| Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 14 h | 1 min at 25→750 °C | 14 h 00 min at 750 °C | 2 min at 750→300 °C | 14 h 03 min |
| Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 15 h | 1 min at 25→750 °C | 15 h 00 min at 750 °C | 2 min at 750→300 °C | 15 h 03 min |
Timing the paper does not give
- RTO ramp up and ramp down rates, and the gas during the ramps.
- Whether time counts from reaching the set point.
- Whether the 750 °C series is separate samples or one sample re-oxidized “by steps of 30 min in accordance with the RTO technical specifications”.
- Storage and any native oxide before oxidation.
- 700 and 750 °C are missing from Figure 4 without a reason; 11 h in the Figure 5a legend is 12 h in Figure 5c; a 13 h state is described with no profile.
What the second reading changed
- The dataset holds two rows of this paper (50% at 800 °C, 90 min; 50% at 750 °C, 6 h). The text supports the same 50% at 750, 850 and 900 °C too, but Figure 3b peaks near 45% at 900 °C, so the 900 °C row is the paper's sentence against its own figure.
- The stored recipe of the 6 h row is one 6 h hold. The paper's sample is a 34 nm film on 12 nm of silicon on oxide; by 6 h all the alloy is consumed. No stored field says so.
- Ramps, the gas during them and the 30 min stepping are absent from the stored recipes; they are VARY ranges and a variant here.
- The paper says germanium is not oxidized (PDF p. 9) and that under 10% was lost as GeO2 (PDF p. 12); from its own thicknesses the loss is about 26%. Our inventory program conserves germanium exactly.
- The predictor runs the Rabie wet-oxygen program (800 °C, 14% constants) for these dry oxidations and labels the thickness “direction only”, not outside its scope.
Their terms and ours
| The paper says | We write | Kind in our vocabulary | Note |
|---|---|---|---|
| GRL: germanium-rich layer | Ge_at_interface; Enriched_layer_efold_width | observable (target: composition_profile) | A box of 50% germanium has the same germanium dose as the inventory program's exponential with the same peak when its thickness equals the e-folding depth; that is the comparison made here. |
| Ge concentration x in the GRL | Ge_at_interface | observable; quantity germanium-at-interface | |
| dry thermal oxidation (in O2 atmosphere) | dry_O2 | ambient | Pressure and flow not stated. |
| rapid thermal oxidation (RTO) furnace | RUN RampUp / Oxidation / RampDown | three RUNs | The language has no furnace or tool; the ramps are ours. |
| by steps of 30 min | (none) | nearest: several RUNs | If it means one sample re-oxidized, each step needs its own ramps; tried as a variant below. |
| relaxed / fully strained (compressive) | FILM: …_relaxed / …_compressive | sample field, read by no program | Strain is the paper's subject (Eqs. 1-2); no program of ours reads it. |
| UTSOI: 12 nm Si on 10 nm BOX | FILM: …_on_Si_12nm_on_BOX_10nm | sample field, read by no program | The language has no layered sample. |
| activation energy of oxidation 2.1 eV; of GRL growth 2.56 eV | (none) | derived quantity, not compared | Our dry growth on SiGe is the Rabie wet program (0.71 eV in the oxide). |
| STEM-EDS semi-quantitative profile | Ge_at_interface | observable | No observation model of EDS (probe 1 to 4 nm) is written. |
The simulation in our language
Each sample is one history file: a SAMPLE and a CONTROL_TRAJECTORY. This is the whole input; run it with PYTHONPATH=. python -m isl_harness.predict <file>.
Structure 1 (1 µm relaxed Si0.8Ge0.2), 750 °C, 90 min
# Structure 1 (1 µm relaxed Si0.8Ge0.2), 750 °C, 90 min
SAMPLE Relaxed_750C {
FAMILY: SiGe_oxide
COMPOSITION: Si0.80Ge0.20
CLEAN: not_stated
FILM: Si0.8Ge0.2_1um_relaxed_on_graded_SiGe_5um_on_Si
}
CONTROL_TRAJECTORY History {
EVENT Growth KIND deposition TIMING assumed # Graded SiGe buffer and 1 µm relaxed Si0.8Ge0.2, epitaxial
EVENT Load KIND load TIMING assumed # Into the JIPELEC rapid thermal oxidation furnace
RUN RampUp DURATION 60 TEMP 25->750 AMBIENT dry_O2 TIMING assumed VARY duration 10..600
RUN Oxidation DURATION 5400 TEMP 750->750 AMBIENT dry_O2 TIMING stated
RUN RampDown DURATION 120 TEMP 750->300 AMBIENT dry_O2 TIMING assumed VARY duration 20..900
EVENT Section KIND other TIMING assumed # Cross section by FIB, or tripod polishing and ion thinning
EVENT Measure KIND measurement TIMING assumed # STEM-EDS germanium profile; TEM thicknesses
}Structure 1 (1 µm relaxed Si0.8Ge0.2), 800 °C, 90 min
# Structure 1 (1 µm relaxed Si0.8Ge0.2), 800 °C, 90 min
SAMPLE Relaxed_800C {
FAMILY: SiGe_oxide
COMPOSITION: Si0.80Ge0.20
CLEAN: not_stated
FILM: Si0.8Ge0.2_1um_relaxed_on_graded_SiGe_5um_on_Si
}
CONTROL_TRAJECTORY History {
EVENT Growth KIND deposition TIMING assumed # Graded SiGe buffer and 1 µm relaxed Si0.8Ge0.2, epitaxial
EVENT Load KIND load TIMING assumed # Into the JIPELEC rapid thermal oxidation furnace
RUN RampUp DURATION 60 TEMP 25->800 AMBIENT dry_O2 TIMING assumed VARY duration 10..600
RUN Oxidation DURATION 5400 TEMP 800->800 AMBIENT dry_O2 TIMING stated
RUN RampDown DURATION 120 TEMP 800->300 AMBIENT dry_O2 TIMING assumed VARY duration 20..900
EVENT Section KIND other TIMING assumed # Cross section by FIB, or tripod polishing and ion thinning
EVENT Measure KIND measurement TIMING assumed # STEM-EDS germanium profile; TEM thicknesses
}Structure 1 (1 µm relaxed Si0.8Ge0.2), 850 °C, 90 min
# Structure 1 (1 µm relaxed Si0.8Ge0.2), 850 °C, 90 min
SAMPLE Relaxed_850C {
FAMILY: SiGe_oxide
COMPOSITION: Si0.80Ge0.20
CLEAN: not_stated
FILM: Si0.8Ge0.2_1um_relaxed_on_graded_SiGe_5um_on_Si
}
CONTROL_TRAJECTORY History {
EVENT Growth KIND deposition TIMING assumed # Graded SiGe buffer and 1 µm relaxed Si0.8Ge0.2, epitaxial
EVENT Load KIND load TIMING assumed # Into the JIPELEC rapid thermal oxidation furnace
RUN RampUp DURATION 60 TEMP 25->850 AMBIENT dry_O2 TIMING assumed VARY duration 10..600
RUN Oxidation DURATION 5400 TEMP 850->850 AMBIENT dry_O2 TIMING stated
RUN RampDown DURATION 120 TEMP 850->300 AMBIENT dry_O2 TIMING assumed VARY duration 20..900
EVENT Section KIND other TIMING assumed # Cross section by FIB, or tripod polishing and ion thinning
EVENT Measure KIND measurement TIMING assumed # STEM-EDS germanium profile; TEM thicknesses
}Structure 1 (1 µm relaxed Si0.8Ge0.2), 900 °C, 90 min
# Structure 1 (1 µm relaxed Si0.8Ge0.2), 900 °C, 90 min
SAMPLE Relaxed_900C {
FAMILY: SiGe_oxide
COMPOSITION: Si0.80Ge0.20
CLEAN: not_stated
FILM: Si0.8Ge0.2_1um_relaxed_on_graded_SiGe_5um_on_Si
}
CONTROL_TRAJECTORY History {
EVENT Growth KIND deposition TIMING assumed # Graded SiGe buffer and 1 µm relaxed Si0.8Ge0.2, epitaxial
EVENT Load KIND load TIMING assumed # Into the JIPELEC rapid thermal oxidation furnace
RUN RampUp DURATION 60 TEMP 25->900 AMBIENT dry_O2 TIMING assumed VARY duration 10..600
RUN Oxidation DURATION 5400 TEMP 900->900 AMBIENT dry_O2 TIMING stated
RUN RampDown DURATION 120 TEMP 900->300 AMBIENT dry_O2 TIMING assumed VARY duration 20..900
EVENT Section KIND other TIMING assumed # Cross section by FIB, or tripod polishing and ion thinning
EVENT Measure KIND measurement TIMING assumed # STEM-EDS germanium profile; TEM thicknesses
}Structure 1 (1 µm relaxed Si0.8Ge0.2), 950 °C, 90 min
# Structure 1 (1 µm relaxed Si0.8Ge0.2), 950 °C, 90 min
SAMPLE Relaxed_950C {
FAMILY: SiGe_oxide
COMPOSITION: Si0.80Ge0.20
CLEAN: not_stated
FILM: Si0.8Ge0.2_1um_relaxed_on_graded_SiGe_5um_on_Si
}
CONTROL_TRAJECTORY History {
EVENT Growth KIND deposition TIMING assumed # Graded SiGe buffer and 1 µm relaxed Si0.8Ge0.2, epitaxial
EVENT Load KIND load TIMING assumed # Into the JIPELEC rapid thermal oxidation furnace
RUN RampUp DURATION 60 TEMP 25->950 AMBIENT dry_O2 TIMING assumed VARY duration 10..600
RUN Oxidation DURATION 5400 TEMP 950->950 AMBIENT dry_O2 TIMING stated
RUN RampDown DURATION 120 TEMP 950->300 AMBIENT dry_O2 TIMING assumed VARY duration 20..900
EVENT Section KIND other TIMING assumed # Cross section by FIB, or tripod polishing and ion thinning
EVENT Measure KIND measurement TIMING assumed # STEM-EDS germanium profile; TEM thicknesses
}Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 1.5 h
# Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 1.5 h
SAMPLE OnSOI_1p5h {
FAMILY: SiGe_oxide
COMPOSITION: Si0.80Ge0.20
CLEAN: not_stated
ORIENTATION: Si100
FILM: Si0.8Ge0.2_34nm_compressive_on_Si_12nm_on_BOX_10nm
}
CONTROL_TRAJECTORY History {
EVENT Growth KIND deposition TIMING assumed # 34 nm Si0.8Ge0.2 by MBE at 450 °C on thin SOI
EVENT Load KIND load TIMING assumed # Into the JIPELEC rapid thermal oxidation furnace
RUN RampUp DURATION 60 TEMP 25->750 AMBIENT dry_O2 TIMING assumed VARY duration 10..600
RUN Oxidation DURATION 5400 TEMP 750->750 AMBIENT dry_O2 TIMING stated
RUN RampDown DURATION 120 TEMP 750->300 AMBIENT dry_O2 TIMING assumed VARY duration 20..900
EVENT Section KIND other TIMING assumed # Cross section by FIB, or tripod polishing and ion thinning
EVENT Measure KIND measurement TIMING assumed # STEM-EDS germanium profile; TEM thicknesses
}Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 6 h
# Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 6 h
SAMPLE OnSOI_6h {
FAMILY: SiGe_oxide
COMPOSITION: Si0.80Ge0.20
CLEAN: not_stated
ORIENTATION: Si100
FILM: Si0.8Ge0.2_34nm_compressive_on_Si_12nm_on_BOX_10nm
}
CONTROL_TRAJECTORY History {
EVENT Growth KIND deposition TIMING assumed # 34 nm Si0.8Ge0.2 by MBE at 450 °C on thin SOI
EVENT Load KIND load TIMING assumed # Into the JIPELEC rapid thermal oxidation furnace
RUN RampUp DURATION 60 TEMP 25->750 AMBIENT dry_O2 TIMING assumed VARY duration 10..600
RUN Oxidation DURATION 21600 TEMP 750->750 AMBIENT dry_O2 TIMING stated
RUN RampDown DURATION 120 TEMP 750->300 AMBIENT dry_O2 TIMING assumed VARY duration 20..900
EVENT Section KIND other TIMING assumed # Cross section by FIB, or tripod polishing and ion thinning
EVENT Measure KIND measurement TIMING assumed # STEM-EDS germanium profile; TEM thicknesses
}Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 13 h
# Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 13 h
SAMPLE OnSOI_13h {
FAMILY: SiGe_oxide
COMPOSITION: Si0.80Ge0.20
CLEAN: not_stated
ORIENTATION: Si100
FILM: Si0.8Ge0.2_34nm_compressive_on_Si_12nm_on_BOX_10nm
}
CONTROL_TRAJECTORY History {
EVENT Growth KIND deposition TIMING assumed # 34 nm Si0.8Ge0.2 by MBE at 450 °C on thin SOI
EVENT Load KIND load TIMING assumed # Into the JIPELEC rapid thermal oxidation furnace
RUN RampUp DURATION 60 TEMP 25->750 AMBIENT dry_O2 TIMING assumed VARY duration 10..600
RUN Oxidation DURATION 46800 TEMP 750->750 AMBIENT dry_O2 TIMING stated
RUN RampDown DURATION 120 TEMP 750->300 AMBIENT dry_O2 TIMING assumed VARY duration 20..900
EVENT Section KIND other TIMING assumed # Cross section by FIB, or tripod polishing and ion thinning
EVENT Measure KIND measurement TIMING assumed # STEM-EDS germanium profile; TEM thicknesses
}From here the alloy is used up: the oxide is eating the thin silicon underneath, then the germanium-rich layer itself. No program of ours knows that.
Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 14 h
# Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 14 h
SAMPLE OnSOI_14h {
FAMILY: SiGe_oxide
COMPOSITION: Si0.80Ge0.20
CLEAN: not_stated
ORIENTATION: Si100
FILM: Si0.8Ge0.2_34nm_compressive_on_Si_12nm_on_BOX_10nm
}
CONTROL_TRAJECTORY History {
EVENT Growth KIND deposition TIMING assumed # 34 nm Si0.8Ge0.2 by MBE at 450 °C on thin SOI
EVENT Load KIND load TIMING assumed # Into the JIPELEC rapid thermal oxidation furnace
RUN RampUp DURATION 60 TEMP 25->750 AMBIENT dry_O2 TIMING assumed VARY duration 10..600
RUN Oxidation DURATION 50400 TEMP 750->750 AMBIENT dry_O2 TIMING stated
RUN RampDown DURATION 120 TEMP 750->300 AMBIENT dry_O2 TIMING assumed VARY duration 20..900
EVENT Section KIND other TIMING assumed # Cross section by FIB, or tripod polishing and ion thinning
EVENT Measure KIND measurement TIMING assumed # STEM-EDS germanium profile; TEM thicknesses
}Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 15 h
# Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 15 h
SAMPLE OnSOI_15h {
FAMILY: SiGe_oxide
COMPOSITION: Si0.80Ge0.20
CLEAN: not_stated
ORIENTATION: Si100
FILM: Si0.8Ge0.2_34nm_compressive_on_Si_12nm_on_BOX_10nm
}
CONTROL_TRAJECTORY History {
EVENT Growth KIND deposition TIMING assumed # 34 nm Si0.8Ge0.2 by MBE at 450 °C on thin SOI
EVENT Load KIND load TIMING assumed # Into the JIPELEC rapid thermal oxidation furnace
RUN RampUp DURATION 60 TEMP 25->750 AMBIENT dry_O2 TIMING assumed VARY duration 10..600
RUN Oxidation DURATION 54000 TEMP 750->750 AMBIENT dry_O2 TIMING stated
RUN RampDown DURATION 120 TEMP 750->300 AMBIENT dry_O2 TIMING assumed VARY duration 20..900
EVENT Section KIND other TIMING assumed # Cross section by FIB, or tripod polishing and ion thinning
EVENT Measure KIND measurement TIMING assumed # STEM-EDS germanium profile; TEM thicknesses
}The programs the predictor ran on these histories: experiments/rabie_sige/legoues_800C_14Ge.isl, experiments/sige_interface/interface_enrichment.isl.template, experiments/sige_inventory/conserved_germanium.isl.template.
The model itself, experiments/sige_interface/interface_enrichment.isl.template, as it is written. Every equation the simulation uses is in this text; the runtime holds no physics.
# ==============================================================================
# ISL MODEL: GERMANIUM AT THE OXIDE INTERFACE OF A SiGe ALLOY
#
# While the alloy is being oxidized, the germanium fraction just under the oxide moves to a
# value set by the starting alloy: a floor plus a share of the starting fraction. The two
# numbers are fitted to one laboratory's two planar measurements (Mueller et al. 2023, 20% and
# 50% alloys) and the program is then scored on other laboratories.
#
# This is a relation written as a relaxation, not a transport model: it says where the
# interface composition settles, not why. How fast it settles is not measured by any source we
# hold (the shortest oxidation is two minutes), so the settling time is a hypothesis.
# Fields in {{braces}} are filled by scripts/run_sige_interface.py.
# ==============================================================================
SAMPLE {sample_id} {{
FAMILY: SiGe_oxide
COMPOSITION: {composition}
}}
STATE ge_i {{ UNIT: 1; INITIAL: ge_start; MIN: 0; MAX: 1 }}
CONTROL T {{ UNIT: K }}
CONTROL p_N2 {{ UNIT: atm }}
CONTROL p_Ar {{ UNIT: atm }}
PARAMETER ge_start {{ VALUE: {ge_start}; UNIT: 1; STATUS: sourced; SOURCE: the sample's stated composition }}
PARAMETER floor_ge {{ VALUE: 0.3; UNIT: 1; STATUS: fitted }}
PARAMETER share_ge {{ VALUE: 0.8; UNIT: 1; STATUS: fitted }}
# No source measures the interface earlier than two minutes into an oxidation.
PARAMETER settle_time {{ VALUE: 30.0; UNIT: s; STATUS: hypothesis }}
PARAMETER p_ref {{ VALUE: 1.0; UNIT: atm; STATUS: constant }}
# The interface moves only while the alloy is being oxidized: not during a hold in nitrogen or argon.
QUANTITY oxidizing {{ UNIT: 1; EQUATION: oxidizing = 1 - (p_N2 + p_Ar) / p_ref }}
CONTROL_TRAJECTORY {trajectory_id} {{
{runs}
}}
OPERATOR F_InterfaceEnrichment : Relaxation {{
EQUATION: d(ge_i)/dt = -oxidizing * (ge_i - (floor_ge + share_ge * ge_start)) / settle_time
}}
OBSERVATION_MODEL Obs_Ge_At_Interface {{ TARGET: Ge_at_interface; UNIT: 1; EQUATION: Ge_at_interface = ge_i }}
EVALUATION_CONTRACT {contract_id} {{
FROZEN: true
DATASET: data/derived/sige_interface_germanium.csv
DATASET_DIGEST: sha256:{dataset_sha256}
SPLIT: {split}
TARGET: Ge_at_interface = {target} +/- {tolerance} abs
}}Our simulation against the paper
7 within, 1 near, 13 off of 21 numbers. Tolerance is stated per row; nothing was fitted for this page.
| Sample and history | Quantity | The paper | Our simulation | Difference | Verdict | What the program's own evaluation says | Where in the paper |
|---|---|---|---|---|---|---|---|
| Structure 1 (1 µm relaxed Si0.8Ge0.2), 750 °C, 90 min | germanium at the interface | 50 % | 48.7 % | -3% | within (±10%) | supported within scope | text, PDF p. 8: “A constant concentration of 50 % is measured for the samples oxidized up to Tox ≤900 ◦C” |
| Structure 1 (1 µm relaxed Si0.8Ge0.2), 800 °C, 90 min | germanium at the interface | 50 % | 48.7 % | -3% | within (±10%) | supported within scope | text, PDF p. 8: “A constant concentration of 50 % is measured for the samples oxidized up to Tox ≤900 ◦C” (dataset row david_20_800C_90min) |
| Structure 1 (1 µm relaxed Si0.8Ge0.2), 800 °C, 90 min | oxide thickness | 37 nm | 77.5 nm | +109% | off (±10%) | outside the tested scope | Figure 4, oxide thickness² over time read from the graph and multiplied by 90 min (the second reader's arithmetic, not printed) |
| Structure 1 (1 µm relaxed Si0.8Ge0.2), 800 °C, 90 min | germanium-rich layer thickness | 11 nm | 1.87 nm | -83% | off (±10%) | outside the tested scope | Figure 4, GRL thickness² over time read from the graph and multiplied by 90 min (not printed) |
| Structure 1 (1 µm relaxed Si0.8Ge0.2), 850 °C, 90 min | germanium at the interface | 50 % | 48.7 % | -3% | within (±10%) | supported within scope | text, PDF p. 8: “A constant concentration of 50 % is measured for the samples oxidized up to Tox ≤900 ◦C” |
| Structure 1 (1 µm relaxed Si0.8Ge0.2), 850 °C, 90 min | oxide thickness | 65 nm | 78.4 nm | +21% | off (±10%) | outside the tested scope | Figure 4, oxide thickness² over time read from the graph and multiplied by 90 min (the second reader's arithmetic, not printed) |
| Structure 1 (1 µm relaxed Si0.8Ge0.2), 850 °C, 90 min | germanium-rich layer thickness | 21 nm | 4.24 nm | -80% | off (±10%) | outside the tested scope | Figure 4, GRL thickness² over time read from the graph and multiplied by 90 min (not printed) |
| Structure 1 (1 µm relaxed Si0.8Ge0.2), 900 °C, 90 min | germanium at the interface | 50 % | 48.7 % | -3% | within (±10%) | supported within scope | text, PDF p. 8: “A constant concentration of 50 % is measured for the samples oxidized up to Tox ≤900 ◦C”; Figure 3b peaks near 44-45% at 900 °C |
| Structure 1 (1 µm relaxed Si0.8Ge0.2), 900 °C, 90 min | oxide thickness | 101 nm | 79.1 nm | -22% | off (±10%) | outside the tested scope | Figure 4, oxide thickness² over time read from the graph and multiplied by 90 min (the second reader's arithmetic, not printed) |
| Structure 1 (1 µm relaxed Si0.8Ge0.2), 900 °C, 90 min | germanium-rich layer thickness | 37 nm | 9.22 nm | -75% | off (±10%) | outside the tested scope | Figure 4, GRL thickness² over time read from the graph and multiplied by 90 min (not printed) |
| Structure 1 (1 µm relaxed Si0.8Ge0.2), 950 °C, 90 min | germanium at the interface | 43 % | 48.7 % | +13% | near (±10%) | supported within scope | Figure 3b, read from the graph by the second reader: about 43% at the peak, with a tail; the text says only that the profile broadens |
| Structure 1 (1 µm relaxed Si0.8Ge0.2), 950 °C, 90 min | oxide thickness | 150 nm | 79.5 nm | -47% | off (±10%) | outside the tested scope | Figure 4, oxide thickness² over time read from the graph and multiplied by 90 min (the second reader's arithmetic, not printed) |
| Structure 1 (1 µm relaxed Si0.8Ge0.2), 950 °C, 90 min | germanium-rich layer thickness | 60 nm | 17.9 nm | -70% | off (±10%) | outside the tested scope | Figure 4, GRL thickness² over time read from the graph and multiplied by 90 min (not printed) |
| Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 1.5 h | germanium-rich layer thickness | 5 nm | 1 nm | -80% | off (±10%) | outside the tested scope | text, PDF p. 11: “After 1.5 hours of oxidation, we observe the formation of a 5 nm thick GRL while part of the Si0.8Ge0.2 layer is still present.” |
| Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 6 h | germanium at the interface | 50 % | 48.7 % | -3% | within (±10%) | supported within scope | text, PDF p. 11: “all the Si0.8Ge0.2 is transformed into a 10 nm thick Si0.5Ge0.5 GRL” (dataset row david_20_750C_6h) |
| Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 6 h | germanium-rich layer thickness | 10 nm | 2.42 nm | -76% | off (±10%) | outside the tested scope | text, PDF p. 11: “a 10 nm thick Si0.5Ge0.5 GRL” |
| Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 13 h | germanium at the interface | 50 % | 48.7 % | -3% | within (±10%) | supported within scope | text, PDF p. 11: after 13 hours the GRL is still 10 nm of Si0.5Ge0.5 and the underlying silicon is oxidized |
| Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 13 h | germanium-rich layer thickness | 10 nm | 4.75 nm | -53% | off (±10%) | outside the tested scope | text, PDF p. 11 |
| Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 14 h | germanium at the interface | 70 % | 48.7 % | -30% | off (±10%) | supported within scope | text, PDF p. 11: “Si0.3Ge0.7” after 14 h |
| Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 15 h | germanium at the interface | 100 % | 48.7 % | -51% | off (±10%) | supported within scope | text, PDF p. 11: 5 nm of pure germanium after 15 h |
| Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 15 h | germanium-rich layer thickness | 5 nm | 5.41 nm | +8% | within (±10%) | outside the tested scope | text, PDF p. 11: “5 nm pure Ge” |
Aligning the simulation: what the unstated things would have to be
Every step whose timing or temperature the paper leaves open carries a range in the history above (VARY). scripts/align_study.py searched those ranges against the paper's numbers through the same predictor, first one unknown at a time, then all together. No parameter a program declares fitted was touched. The unknowns were chosen on s1_750C, s1_800C, s1_850C, s1_900C, s1_950C only; every other number is a test they played no part in.
| Unknown | What the paper says | Range searched | The reproduction used | Best alone | Score at the reproduction's value | Best score alone |
|---|---|---|---|---|---|---|
| Ramp to temperature (not described): duration | Ramp rate and gas not stated | 10 to 600 s | 60 s | 10 s | 4 of 13 within tolerance, median error 21.7% | 4 of 13 within tolerance, median error 22.2% |
| Cool down (not described): duration | Cooling rate and gas not stated | 20 to 900 s | 120 s | 37.72 s | 4 of 13 within tolerance, median error 21.7% | 4 of 13 within tolerance, median error 22.4% |
Together: RampUp duration 77.46 s (was 60); RampDown duration 37.72 s (was 120).
As reproduced: 7 of 21 within tolerance, median error 30.4%. Aligned: 7 of 21 within tolerance, median error 30.4%. On the held-out samples only: 3 of 8 within tolerance, median error 40.8% as reproduced, 3 of 8 within tolerance, median error 40.8% aligned.
Choices of program or material property, each scored on its own and on top of the aligned history:
| Variant | Alone | With the aligned history |
|---|---|---|
| one sample re-oxidized in 30 min steps (structure 2) | 7 of 21 within tolerance, median error 30.4% | 7 of 21 within tolerance, median error 30.4% |
| ramps in nitrogen | 7 of 21 within tolerance, median error 30.4% | 7 of 21 within tolerance, median error 30.4% |
Two timing unknowns were searched, the RTO ramp up (10 s to 10 min) and ramp down (20 s to 15 min), chosen on the five relaxed (structure 1) samples; the thin film on SOI (structure 2) is the test. Two variants were tried: the ramps in nitrogen instead of oxygen, and the 750 °C series as one sample re-oxidized in 30 min steps, each with its own ramps (36 RUNs for 6 h, 90 for 15 h).
None of them changes a verdict. On structure 1, 4 of 13 numbers are within tolerance at every ramp length; the median error moves between 21.5% and 30% and is smallest near one minute up and two minutes down, the values the reproduction assumed. The combined search settles on 77 s up and 38 s down, with the same 4 of 13. On the test, 3 of 8 within tolerance (median error 41%) before and after. Ramps in nitrogen change the germanium-rich layer by a few hundredths of a nanometre; 30 min re-oxidation steps add 3% to the oxide (268 to 276 nm at 6 h) and under 2% to the layer.
What the data do pin down is not timing. The germanium at the interface is 48.7% for every sample, every ramp and every variant: the enrichment relation has no temperature, no time beyond a 30 s settling, and no layer thickness. That is within 3 points of David's 50% at 750 to 900 °C and after 6 and 13 h, on data the relation never saw, and 6 points high at 950 °C, where the paper reports the germanium spreading out.
3 within, 5 off of 8 numbers with the aligned settings (the samples used to choose the unknowns are left out).
| Sample | Quantity | The paper | As reproduced above | Aligned | Difference | Verdict | How |
|---|---|---|---|---|---|---|---|
| Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 1.5 h | germanium-rich layer thickness | 5 nm | 1 | 1 | -80% | off (±10%) | test |
| Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 6 h | germanium at the interface | 50 % | 48.7 | 48.7 | -3% | within (±10%) | test |
| Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 6 h | germanium-rich layer thickness | 10 nm | 2.42 | 2.42 | -76% | off (±10%) | test |
| Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 13 h | germanium at the interface | 50 % | 48.7 | 48.7 | -3% | within (±10%) | test |
| Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 13 h | germanium-rich layer thickness | 10 nm | 4.75 | 4.75 | -53% | off (±10%) | test |
| Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 14 h | germanium at the interface | 70 % | 48.7 | 48.7 | -30% | off (±10%) | test |
| Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 15 h | germanium at the interface | 100 % | 48.7 | 48.7 | -51% | off (±10%) | test |
| Structure 2 (34 nm strained Si0.8Ge0.2 on SOI), 750 °C, 15 h | germanium-rich layer thickness | 5 nm | 5.41 | 5.41 | +8% | within (±10%) | test |
What alignment cannot fix. Three things, each a model or language gap. (1) The oxide thickness on these dry oxidations comes from the Rabie program, which carries wet-oxygen constants chosen for 800 °C and does not read the gas: it gives 77.5 to 79.5 nm from 800 to 950 °C, almost no temperature dependence, against 37 to 150 nm (activation energy 2.1 eV in the paper). On the 34 nm film it gives 268 nm of oxide after 6 h and 569 nm after 15 h, more than the whole film and silicon layer could make (about 91 nm in the paper's Figure 5b). (2) The germanium-rich layer thickness comes from the inventory program, whose dry growth is silicon's 1965 law: it consumes 2.7 nm of alloy in 90 min at 800 °C, so the layer is 1.9 nm against 11 nm, 70 to 83% low at every temperature. The two programs that run on one history disagree with each other about how much oxide grew by a factor of about 16 (77.5 against about 5 nm). (3) After 13 h the alloy on SOI is used up and the layer condenses to 70% and then pure germanium; no program of ours has a finite alloy, so the 14 h and 15 h values are 30 and 51% low. The 15 h layer thickness (5.4 against 5 nm) is within tolerance by coincidence.
The inventory's layer rows are labelled outside the tested scope because the ramps start at 25 °C, below the 750 to 900 °C its scope names: the predictor reads every step's temperature for scope, so a ramp written as stated makes a tested oxidation look untested.
What our language and ontology cannot yet say
- A layered sample. “34 nm Si0.8Ge0.2 on 12 nm Si on 10 nm BOX” is recorded as a FILM string that nothing reads. The sample needs layers with thickness and composition (
LAYER SiGe { COMPOSITION: Si0.8Ge0.2; THICKNESS: 34 nm; STRAIN: compressive }) and programs that stop consuming a layer when it is gone. This paper's whole second half (6 h, 13 h, 14 h, 15 h) depends on it. - Constants tied to a gas and a condition, with a refusal outside them. The predictor answers a dry 950 °C oxidation with wet 800 °C constants and labels it “direction only”. Parameters should carry the conditions they were chosen for, and a history outside them should be labelled or refused.
- One oxide per history. Two programs report on one SiGe history and grow oxide 16 times apart (Rabie 77.5 nm, inventory about 5 nm at 800 °C, 90 min). The predictor should take the oxide from one program and feed it to the others, or report the disagreement.
- Scope read from the oxidation, not from every step. A ramp from room temperature puts every number “outside the tested scope”. Scope should be judged on the steps that do the work (the hold), with ramps reported separately.
- A furnace cycle as a unit. “By steps of 30 min in accordance with the RTO technical specifications” is a repeated cycle (ramp, 30 min, ramp). A
REPEAT n { … }block, or a tool with its own ramp law, would write it in one line instead of 90 RUNs. - VARY on a time constant. A cooling written as
PROFILE exponential TAUcannot have its TAU searched; here the cooling had to be written as a straight line to make it an unknown. - Germanium lost as GeO2. The paper reports under 10% lost by oxidation (about 26% from its own thicknesses); the inventory conserves germanium exactly. A loss flux, or at least a declared bound on it, belongs in the inventory program.
- Strain as a sample property. Relaxed against fully strained is the paper's subject (Eqs. 1 and 2); the language has no field for it that a program could read.
With heating and cooling transitions
No paper we hold states how its wafers heated up or cooled down. The project owner specified scenarios for one Vitkavage wafer (isl_harness/vitkavage_transitions.py); isl_harness/thermal_transitions.py applies the same numbers to every sample here: a heat-up in nitrogen before the first furnace step (a hot push of 1 to 5 min, or a cold-furnace ramp of 60 to 120 min), the owner's radiative cooling knots after the last furnace step or after the paper's own pull (fast, or every time multiplied by 5), and ramps around an anneal at 300 to 500 °C. The paper's own steps are kept as written. All transitions are assumptions, written in the history with TIMING assumed.
| History | Within tolerance | Median error | Changed numbers |
|---|---|---|---|
| as the paper states it (above) | 7 of 21 | 30.4% | |
| heat-up A (hot push), fast cooling | 7 of 21 | 30.4% | 0 of 21 moved by more than 2% |
| heat-up A (hot push), slow cooling | 7 of 21 | 30.4% | 0 of 21 moved by more than 2% |
| heat-up B (cold-furnace ramp), fast cooling | 7 of 21 | 30.4% | 0 of 21 moved by more than 2% |
| heat-up B (cold-furnace ramp), slow cooling | 7 of 21 | 30.4% | 0 of 21 moved by more than 2% |
The paper's own conclusions
| The paper states | What we find | |
|---|---|---|
| Up to 900 °C the germanium-rich layer holds a fixed 50% germanium, whatever the temperature | The enrichment relation gives 48.7% for a 20% alloy at any temperature and time: within 3 points everywhere up to 900 °C | reproduced (held out) |
| Above 900 °C the germanium spreads out (homogenization) | Nothing in the relation depends on temperature; 48.7% at 950 °C against about 43% | not described |
| Oxide and GRL grow as the square root of time with 2.1 and 2.56 eV | The only dry SiGe growth we run is the Rabie wet program (or silicon's 1965 dry constants in the inventory); see the thickness rows | not reproduced |
| On thin SOI: the alloy becomes 10 nm of Si0.5Ge0.5 by 6 h, stays so while the silicon below oxidizes, then condenses to 70% at 14 h and pure germanium at 15 h | Our programs have no finite layer: 48.7% forever | not described |
What we would like Emily to check
- Is a 50% germanium-rich layer at 900 °C right, given Figure 3b's 45% peak?
- “By steps of 30 min in accordance with the RTO technical specifications”: does a JIPELEC RTO limit a run to 30 min, so that a 15 h oxidation is thirty runs with ramps between?
- Is the GRL thickness of Figure 4 the full width of the 50% plateau, or a width at half height?
- Should a model of the interface carry the strain of a 34 nm film on SOI, or is the 50% plateau a property of the alloy alone, as the relaxed structure suggests?