Class DecayChain
java.lang.Object
org.episteme.natural.physics.nuclear.DecayChain
Solves decay chain problems using Bateman equations.
For chain: N₠→ N₂ → N₃ → ... → Stable
- Since:
- 1.0
- Author:
- Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classRepresents a nuclide in a decay chain. -
Constructor Summary
ConstructorsConstructorDescriptionDecayChain(List<DecayChain.Nuclide> nuclides, Vector<Real> initialAmounts) Creates a decay chain. -
Method Summary
Modifier and TypeMethodDescriptiongetActivity(int nuclideIndex, Real time) Get activity of a specific nuclide at time t.Bateman equation solution for the amount of nuclide i at time t.getChain()static DecayChaintwoNuclide(String parent, Real parentHalfLife, String daughter, Real daughterHalfLife, Real initialParent) Creates a simple two-nuclide decay chain.static DecayChainuranium238Chain(Real initialU238) Creates the Uranium-238 decay chain (simplified).
-
Constructor Details
-
DecayChain
Creates a decay chain.- Parameters:
nuclides- Ordered list of nuclides in the chaininitialAmounts- Initial number of atoms for each nuclide
-
-
Method Details
-
getAmount
Bateman equation solution for the amount of nuclide i at time t. N_i(t) = Σ_{j=1}^{i} c_{ij} * exp(-λ_j * t) For simplicity, this implementation handles the common case where only the parent nuclide is initially present.- Parameters:
nuclideIndex- Index of nuclide in chain (0 = parent)time- Time elapsed (seconds)- Returns:
- Number of atoms of the specified nuclide
-
getActivity
-
twoNuclide
-
uranium238Chain
Creates the Uranium-238 decay chain (simplified). U-238 → Th-234 → Pa-234 → U-234 → ... → Pb-206 (stable) -
getChain
-