Magnus: neutrino oscillation probabilities for any Hermitian Hamiltonian, any number of flavors, and any matter profile
Magnus: neutrino oscillation probabilities for any Hermitian Hamiltonian, any number of flavors, and any matter profile
核心课题、机制与切入建议 Problem, Method & Entry
物理假设、图表与结果边界 Physical Models, Figures & Results
- 在伪狄拉克(pseudo-Dirac)模型中,分裂态假设由有效质量平方差分别为 与 的质量本征态叠加构成 。
- 解析旋转波近似(RWA)忽略了耦合中快速振荡项,仅在跨越多倍振荡长度的长距离演化中准确,在单振荡波长尺度下误差显著。
学术脉络、进展比较与前置建议 Lineage, Context & Progress
自动筛选未建立论文与组内 Work 的科学关系。
- ... and 0.18 ms: “Each split state \nu_{j} is replaced by two mass states, (\nu_{j}\pm s_{j})/\sqrt{2}, where s_{j} is its sterile partner, with masses squared m_{j}^{2} and m_{j}^{2}+\delta m^{2}_{j}.”
- [0.332 0.323 0.345]: “Crossing the core changes the composition by at most , at 1 TeV, and by less than above 10 TeV: at these energies, the matter potential exceeds the vacuum term by orders of magnitude, and it is diagonal in flavor,”
- transition between levels 2 and 3: “The closed form relies on the rotating-wave approximation, which neglects a rapidly oscillating part of the coupling; that part averages out only over many oscillation lengths. Hence, it is accurate only in long regions”
证据审计与信源材料 覆盖:正文指定部分 展开核验 ▾
覆盖范围:已检查正文中支撑判断的指定章节;版本 arXiv:2610.07159v1
- 📦 arXiv TeX 源码包 位置:Introduction; Mag$nu$s: neutrino oscillation probabilities for any Hermitian Hamiltonian, any number of flavors, and any matter profile; 1 Introduction; 2 Synopsis; Standard oscillation parameters; Active-sterile mixing; Exponentially falling density: 3e3 g/cm^3 at the; origin, scale height 10 km, 25 km baseline.; Every mixing parameter left out defaults to zero.; 3 Neutrino oscillations: units, notation, conventions; 4 The method; 4.1 History and context; 4.2 Where the method applies and where it does not; 4.3 The Magnus expansion; 4.4 Truncation is exactly unitary; 4.5 Two quadrature rules for the Magnus expansion; 4.6 Slab composition; 4.7 Tolerance and adaptive refinement; 4.8 The matrix exponential; 4.9 Adiabatic transport with exact Magnus patches; 4.10 The phase-averaged probability; 4.10.1 The averaged probability; 4.10.2 Coherent blocks; 4.10.3 The phase average; 4.10.4 A varying Hamiltonian; 5 Code description; 5.1 Scope and interface; 5.2 The Mag$nu$s architecture; 5.3 The seven engines; 5.4 Example: one request, through the layers; ---- What the user writes: the whole request ----; One energy, one chord, and two refinement keywords; ---- Inside Magnus: what the call runs through ----; Top layer: the named wrapper; Second layer: builds H, tries its engines; Third layer: the scan over (energy, baseline); Base layer: the refinement ladder, one point; 5.5 Batching and parallelization; 5.6 Declaring the structure of a profile; 24 slabs of 250 km, alternating 2 and 8 g/cm^3; The jumps declared: the ladder keeps its own grid,; adds an edge at each of the 23 jumps, then refines; to the tolerance; The grid given in full, as [start, end] pairs: one; slab per layer, no refinement, a single evaluation; A grid of 12 slabs, each straddling one jump: the; user owns this grid, and nothing repairs it; P1 = P2 = 0.0240046, exact: the profile is constant; within every slab. P3 = 0.0246158, off by 6e-4; 5.7 Documentation and executable examples; 5.8 Installation; The package:; Plus what the notebooks need:; Plus what the tests need:; 5.9 Code availability; 5.10 Code validation; 5.10.1 Against the derivation; 5.10.2 Against closed forms; 5.10.3 Against an independent solver; 5.10.4 Against itself, where meaningful; 5.10.5 Against a population; 5.10.6 Continuous integration; 5.11 Limitations; 5.11.1 Limitations of the method; 5.11.2 Limitations of the implementation; 6 Mag$nu$s usage and examples; 6.1 The full application programming interface (API); 6.2 A minimal example in vacuum, step-by-step; Natural units: energies in eV, lengths in eV^-1; Pme = 0.03127, Pmm = 0.39231, Pmt = 0.57643; The amplitude is indexed the other way; 6.3 Choosing the oscillation parameters; 6.3.1 Three flavors; Pme = 0.05166, against 0.03127 by default; Pme = 0.05579; ’LEM’ gives 0.05558; Pme = 0.04998; ’freefluxesrsbl’; gives 0.04552; 53 lines, e.g.,; OSCPARAMSNUFIT10IO | NuFIT 1.0, IO; The releases the loader reads, and the; categories of each; 18 lines, e.g., NuFIT 2.1 [’LEM’, ’LID’]; Pme = 0.05098; the other five stay at; their defaults; The other five stay at their NuFIT 6.1 IO; values. Pme = 0.01800, against; 0.05241 with the set’s own dCP; 6.3.2 Specifying angle conventions; s12 reads 0.5557, 0.3088, 0.5892, 33.759; and Pme = 0.03127 in all four cases; 6.3.3 Two flavors; P[0][1] = 0.013089; The same point, angles in degrees; 6.3.4 Four flavors; Pme = 0.02801, Pmm = 0.39958; 6.3.5 Five flavors; Pme = 0.03984, Pmm = 0.40684; 6.3.6 Default non-standard parameters; 6.4 Batched calls; P[-1] equals the single call at 1300 km; 6.5 Constant density; ’NuFIT 6.1’ is the default; re-loaded for clarity only; Three flavors, one energy and one baseline; 0.0 g/cm3 Pme = 0.003773; 3.0 g/cm3 Pme = 0.013589; 8.0 g/cm3 Pme = 0.050497; 13.0 g/cm3 Pme = 0.113343; Two flavors: one angle and one splitting; P[0][1] = 0.005766; Two hundred energies in one call; P.shape = (200, 3, 3); 6.6 Using wrappers vs. scenario calls vs. direct calls; --- 1. With the named wrappers; Pme = 0.00377306 in vacuum, 0.01358909 in; matter, in 0.15 ms; Pscan.shape = (200, 3, 3), in 0.13 ms; --- 2. With a scenario function; The same number, to 1e-16, in 3.6 ms; --- 3. With a Hamiltonian built by hand; The same two numbers, in 0.043 ms; The same 200 points, in 5.8 ms; 6.6.1 Through a wrapper; Pme = 0.017126. Dropping epsem gives; 0.013589, the standard wrapper’s answer; 6.6.2 Through a scenario function; Pme = 0.017126, the same number the; wrapper above returns; 6.6.3 Through a direct call; proj for three flavors is diag(1, 0, 0); 1. mixing, 2. matter, 3. new physics; Pme = 0.017126 again; 6.6.4 Which to use; 6.6.5 Returning the evolution operator; P is the matrix the call returns without; the keyword; U is complex and unitary.; Both of these hold:; the second denser than the first; 6.6.6 Asking for the averaged probability; P[0, 0] = 0.5481, P[1, 0] = 0.2155: the; familiar sumi |Uei|^2 |Umi|^2, from the; eigenvectors alone; PhaseAveragingWarning: the phase-averaged; probability depends on the energy spread; at 1 of 1 (energy, L) point(s) ...; P[0, 0] = 0.9844, P[1, 1] = 0.9088;; P[0, 0] = 0.8934: the decohered limit,; now from the eigenvectors in matter; 6.7 The Hamiltonians; 6.7.1 Shipped Hamiltonians; Over 200 energies: 3.7 ms; ... and 0.18 ms; 6.7.2 Building a new Hamiltonian from scratch; Pme = 0.021309; Pme = 0.004865; 6.8 Pre-packaged plotting routines; 6.9 Probability vs. energy and distance; 0.082635, as in the listing; 0.071325, as in the listing; One mole of electrons per cubic centimeter, in the; natural units that magnus works in; Give a constant profile as a single number, and; a varying one as a function of the distance; traveled, returning the electron number density; there. The distance arrives in eV^-1, like; every length in magnus; The first keyword says that the functions return; an electron number density, not a mass density; Left column: 5,000 distances at one energy. The; list of distances goes where a single one would; Right column: 3,000 energies at one distance; The vacuum curves, for reference; 6.10 Layered matter; The slab edges are declared, so no slab straddles a; jump; within each, one term of the expansion is exact; 6.11 Bi-probability plot; DUNE: 2 GeV, 1300 km; a crust-like 3 g/cm^3; With the shipped plotter; With matplotlib directly; 6.12 The Earth; 6.12.1 Neutrinos & antineutrinos, 2–5 flavors; Two flavors is the (nue, numu) reduction of the 1-3; sector, so it takes that one angle and splitting by; name. Every wrapper above two flavors defaults to; the same NuFIT 6.1 set, so it needs none passed.; The sterile pairs run three decades higher, where an; eV-scale splitting places its resonance; 6.12.2 Probabilities between two locations; positive, south and west negative; Two site names replace costhz and L: the chord; between them is the baseline; The chord itself, in km, for a legend; 6.12.3 New physics; Three decades up is where an eV-scale splitting; places its matter resonance; The same call each time, a different extra term; Change between 3nu and 3+1 survival probability; 6.12.4 Earth oscillograms; With the shipped plotter, one call per panel; Or with matplotlib directly, one axes per panel; 6.12.5 Underground sources and detectors; On the surface, the baseline is given; 0.911587; 2 km down, the depth fixes the baseline; 0.911600; Horizontal: no path at all at the surface; 1.000000; 2 km down it crosses 160 km of rock; 0.997560; 0.020930; Under ice, as at IceCube; Under rock, as at SNOLAB; 0.021325; 6.12.6 Using a custom Earth density profile; Four shells for PREM’s ten, each at the mass-weighted; mean density of the region it replaces; Those four edges are PREM boundaries, so their; crossings come straight out of the helper; 6.13 Strategy report after a call; [’certified’, ’declined’, ’engine’,; ’family’, ’hiddenfeature’, ’sampling’,; ’trace’]; 3227.2; [(’hybrid’, ’the profile is not; resolved at the probe scale’)]; 6.14 The Sun; The table ships with Magnus. Its columns are read; only to plot the density (top panel of the figure); The solar spectrum, 0.1 to 20 MeV; Shared by the four calls: the model by name, from; the center to its last row, nue to nue, the average; Standard three-flavor oscillations; The same, with non-standard interactions; One and two sterile states. nn/np is read from; the table; passing rationumberneutronstoprotons; overrides it; P3 = 0.5449 at 0.1 MeV, 0.2993 at 20 MeV; P = 0.666, 0.092, 0.259 in about 2 s; 6.14.1 Varying the production point; P = 0.389, against 0.375 from the center; 6.14.2 Probability averaging; 6.14.3 Comparing solar models; 6.14.4 Comparing against approximations; Fold theta13 back in; 6.15 A supernova shock front; UnmarkedDiscontinuityWarning: the; Hamiltonian is discontinuous at the scale; of the grid this scan builds, and no; tbreakpoints were given. A slab; straddling a density jump degrades the; quadrature no matter how many slabs are; used; pass tbreakpoints at the; discontinuities.; Both fronts, 0.07 km wide, centered on the contact; discontinuity and on the forward shock: declare; where each begins and ends; 4000 baselines from 10,200 to 80,000 km, at one; energy: the cumulative engine answers; One and two sterile states; PhaseAveragingWarning: average=True on a; profile with discontinuities has no closed; form, so the probability was propagated; across an energy window of +/-10.0% and; averaged over 41 samples. This is the; average over that window, not the L/E ->; infinity limit, and it depends on the; window: the largest standard error of the; mean here is 4.47e-02.; Pass averagespread to set the half-width; of the window to the resolution of the; measurement, and averagensamples to; reduce the error, which falls as the; inverse square root of the number of; samples.; P = 0.56; P = 0.584; 6.16 High-energy astrophysical neutrinos; The standard case at 1 Mpc and at 1 Gpc; Largest difference over all energies; and channels: none; PhaseAveragingWarning: depends on; the energy spread at 46 of 60 points; [0.333 0.666 0.001]; A source 100 Mpc away: far enough for every phase; to average away at every energy. The average; depends on the baseline through the phases; Standard: the averaged matrix at each energy; LIV: the n = 1 operator, aligned with the PMNS; angles, sized to equal the vacuum term at 100 TeV; NSI through the Earth: the flux arrives decohered,; then crosses the Earth coherently, so the two legs; compose as probability matrices. The ladder starts; at 32 slabs: the matter term alone winds more than; pi across a coarser one; 3+1: one sterile state, sin^2 of both active-; sterile angles 0.1, Dm41^2 = 1 eV^2; Pseudo-Dirac: the second mass state is paired; with a partner split by 1e-13 eV^2; from 100 Mpc, as in the fifth panel; splittings of nu2, at 100 TeV and; 100 Mpc, from coherent to decohered; [0.326 0.343 0.33 ] Coherent: standard; [0.328 0.338 0.334] Between: warns; [0.332 0.323 0.345] Decohered; Inputs of the vacuum part: the PMNS; matrix and the three m^2 [eV^2]; PREM along the chord through the core:; at position l, VCC and the neutron-; to-proton ratio of the local layer; The Hamiltonian, of energy and position:; vacuum part plus matter part; Through the core, with the PREM layer; boundaries declared as breakpoints; The averaged vacuum leg, then the Earth; [0.332 0.323 0.345]; 6.17 Assorted long examples; 6.17.1 A cavity in the Earth’s crust; An empty crust needs no profile, only a number; Water, iron, a mineral deposit, a zone of faults:; (rho, Ye, w) for each; 6.17.2 Geoneutrinos; The mantle chord: cosine of the zenith; angle at the detector, and the depths of; the production point and of Borexino [km]; Length of the chord [km]; Density along the chord [g/cm^3]: PREM,; with its ocean layer replaced by rock; Radius at distance l along the chord; Phase-averaged survival probability in; matter, at electron fraction of the mantle; 0.551; The same, in vacuum; 0.548; Twelve energies per cycle of the pair split by; Dm31^2 on the longest chord, 7,300 km; Borexino, 1.4 km underground. A production point; enters as its depth and the cosine of its zenith; angle at the detector; the call declares the PREM; boundaries on the chord by itself. The oscillation; parameters are the defaults, NuFIT 6.1.; The local point, 10 km deep and 100 km away,; run in reverse, from the detector (see text); 6.17.3 Neutrino tomography of the Sun; The chord above: b = 0.3 Rsun; 6.17.4 Astrophysical relativistic jet; Evolve from the jet head (L0) to the; surface (L); also return the operator; Probabilities and evolution operator; Weights, w[i, alpha]; The three envelopes, g/cm3, r in cm; Production points spread over one oscillation; length at the jet head; Drawn: Psmooth[:, gd.NUE, gd.NUE], and the others; 6.17.5 Long-range interactions in the Sun; Average over them, then scale by the 8B; spectrum and total flux, cm^-2 s^-1 MeV^-1; The B16-GS98 model that ships with Magnus,; on its tabulated radii and on to 20 Rsun; Two mediator ranges, one coupling: g’^2 makes Vemu; a tenth of VCC at R0 when 1/m = Rsun; The standard part from the shipped builders; the; new term is the only line written here; 6.17.6 Turbulent matter profile; H at the mean density: vacuum plus matter; Eigenvalues w, matter eigenvectors Vm, and; the gap the mode has to match; Coupling of levels 2 and 3, and the length; of complete conversion, in units of LOSC; VCC follows the density; One operator per slab, from 9 nodes at; Magnus order 6; Ordered product, earliest slab first; Rotate to the matter basis, then read the; transition between levels 2 and 3; Two flavors: the 1-3 sector; Three flavors; The same call with a sterile state added; 6.18 Running a scan in parallel; Every point has its own baseline, so no; batched engine takes this scan; engine takes it, at the default njobs = 1; nothing; the call runs in one process; 6.19 Using Mag$nu$s from the command line; 7 Performance, precision, and reach; 7.1 Timing measurement protocol; 7.2 Slab width follows the profile, not the phase; 7.3 What a probability costs; 7.4 Precision, accuracy, and tolerance; 7.5 Accuracy and speed: smooth density profile; 7.6 Accuracy and speed: a supernova shock front; 7.7 Accuracy and speed: the Sun; 8 Comparison to other codes; 8.1 Relation to other oscillation codes; 8.2 Speed-accuracy comparison; 8.3 When to use Mag$nu$s; 9 Conclusions; Declaration of generative AI and AI-assisted technologies in the manuscript preparation process; Acknowledgments; References; Appendix A Magnus expansion at any order; A.1 Computing Magnus terms; A.2 Why the collocation orders are even; Appendix B Predefined oscillation-parameter sets; Appendix C The tutorial notebooks; Appendix D The test suite; Instructions for reporting errorsComplete, revision-matched arXiv TeX source package
sha256:acef7efe9a4338f4...
- 未进行独立同行评审或逐项复算。
- 源文件中的图像未进行视觉核对。
原始摘要与来源Original abstract and source
阅读范围与依据Coverage and evidence
实际阅读范围:已检查正文中支撑判断的指定章节;版本 arXiv:2610.07159v1;检查材料:Introduction、Mag$nu$s: neutrino oscillation probabilities for any Hermitian Hamiltonian, any number of flavors, and any matter profile、1 Introduction、2 Synopsis、Standard oscillation parameters、Active-sterile mixing、Exponentially falling density: 3e3 g/cm^3 at the、origin, scale height 10 km, 25 km baseline.、Every mixing parameter left out defaults to zero.、3 Neutrino oscillations: units, notation, conventions、4 The method、4.1 History and context、4.2 Where the method applies and where it does not、4.3 The Magnus expansion、4.4 Truncation is exactly unitary、4.5 Two quadrature rules for the Magnus expansion、4.6 Slab composition、4.7 Tolerance and adaptive refinement、4.8 The matrix exponential、4.9 Adiabatic transport with exact Magnus patches、4.10 The phase-averaged probability、4.10.1 The averaged probability、4.10.2 Coherent blocks、4.10.3 The phase average、4.10.4 A varying Hamiltonian、5 Code description、5.1 Scope and interface、5.2 The Mag$nu$s architecture、5.3 The seven engines、5.4 Example: one request, through the layers、---- What the user writes: the whole request ----、One energy, one chord, and two refinement keywords、---- Inside Magnus: what the call runs through ----、Top layer: the named wrapper、Second layer: builds H, tries its engines、Third layer: the scan over (energy, baseline)、Base layer: the refinement ladder, one point、5.5 Batching and parallelization、5.6 Declaring the structure of a profile、24 slabs of 250 km, alternating 2 and 8 g/cm^3、The jumps declared: the ladder keeps its own grid,、adds an edge at each of the 23 jumps, then refines、to the tolerance、The grid given in full, as [start, end] pairs: one、slab per layer, no refinement, a single evaluation、A grid of 12 slabs, each straddling one jump: the、user owns this grid, and nothing repairs it、P1 = P2 = 0.0240046, exact: the profile is constant、within every slab. P3 = 0.0246158, off by 6e-4、5.7 Documentation and executable examples、5.8 Installation、The package:、Plus what the notebooks need:、Plus what the tests need:、5.9 Code availability、5.10 Code validation、5.10.1 Against the derivation、5.10.2 Against closed forms、5.10.3 Against an independent solver、5.10.4 Against itself, where meaningful、5.10.5 Against a population、5.10.6 Continuous integration、5.11 Limitations、5.11.1 Limitations of the method、5.11.2 Limitations of the implementation、6 Mag$nu$s usage and examples、6.1 The full application programming interface (API)、6.2 A minimal example in vacuum, step-by-step、Natural units: energies in eV, lengths in eV^-1、Pme = 0.03127, Pmm = 0.39231, Pmt = 0.57643、The amplitude is indexed the other way、6.3 Choosing the oscillation parameters、6.3.1 Three flavors、Pme = 0.05166, against 0.03127 by default、Pme = 0.05579; ’LEM’ gives 0.05558、Pme = 0.04998; ’freefluxesrsbl’、gives 0.04552、53 lines, e.g.,、OSCPARAMSNUFIT10IO | NuFIT 1.0, IO、The releases the loader reads, and the、categories of each、18 lines, e.g., NuFIT 2.1 [’LEM’, ’LID’]、Pme = 0.05098; the other five stay at、their defaults、The other five stay at their NuFIT 6.1 IO、values. Pme = 0.01800, against、0.05241 with the set’s own dCP、6.3.2 Specifying angle conventions、s12 reads 0.5557, 0.3088, 0.5892, 33.759、and Pme = 0.03127 in all four cases、6.3.3 Two flavors、P[0][1] = 0.013089、The same point, angles in degrees、6.3.4 Four flavors、Pme = 0.02801, Pmm = 0.39958、6.3.5 Five flavors、Pme = 0.03984, Pmm = 0.40684、6.3.6 Default non-standard parameters、6.4 Batched calls、P[-1] equals the single call at 1300 km、6.5 Constant density、’NuFIT 6.1’ is the default; re-loaded for clarity only、Three flavors, one energy and one baseline、0.0 g/cm3 Pme = 0.003773、3.0 g/cm3 Pme = 0.013589、8.0 g/cm3 Pme = 0.050497、13.0 g/cm3 Pme = 0.113343、Two flavors: one angle and one splitting、P[0][1] = 0.005766、Two hundred energies in one call、P.shape = (200, 3, 3)、6.6 Using wrappers vs. scenario calls vs. direct calls、--- 1. With the named wrappers、Pme = 0.00377306 in vacuum, 0.01358909 in、matter, in 0.15 ms、Pscan.shape = (200, 3, 3), in 0.13 ms、--- 2. With a scenario function、The same number, to 1e-16, in 3.6 ms、--- 3. With a Hamiltonian built by hand、The same two numbers, in 0.043 ms、The same 200 points, in 5.8 ms、6.6.1 Through a wrapper、Pme = 0.017126. Dropping epsem gives、0.013589, the standard wrapper’s answer、6.6.2 Through a scenario function、Pme = 0.017126, the same number the、wrapper above returns、6.6.3 Through a direct call、proj for three flavors is diag(1, 0, 0)、1. mixing, 2. matter, 3. new physics、Pme = 0.017126 again、6.6.4 Which to use、6.6.5 Returning the evolution operator、P is the matrix the call returns without、the keyword; U is complex and unitary.、Both of these hold:、the second denser than the first、6.6.6 Asking for the averaged probability、P[0, 0] = 0.5481, P[1, 0] = 0.2155: the、familiar sumi |Uei|^2 |Umi|^2, from the、eigenvectors alone、PhaseAveragingWarning: the phase-averaged、probability depends on the energy spread、at 1 of 1 (energy, L) point(s) ...、P[0, 0] = 0.9844, P[1, 1] = 0.9088;、P[0, 0] = 0.8934: the decohered limit,、now from the eigenvectors in matter、6.7 The Hamiltonians、6.7.1 Shipped Hamiltonians、Over 200 energies: 3.7 ms、... and 0.18 ms、6.7.2 Building a new Hamiltonian from scratch、Pme = 0.021309、Pme = 0.004865、6.8 Pre-packaged plotting routines、6.9 Probability vs. energy and distance、0.082635, as in the listing、0.071325, as in the listing、One mole of electrons per cubic centimeter, in the、natural units that magnus works in、Give a constant profile as a single number, and、a varying one as a function of the distance、traveled, returning the electron number density、there. The distance arrives in eV^-1, like、every length in magnus、The first keyword says that the functions return、an electron number density, not a mass density、Left column: 5,000 distances at one energy. The、list of distances goes where a single one would、Right column: 3,000 energies at one distance、The vacuum curves, for reference、6.10 Layered matter、The slab edges are declared, so no slab straddles a、jump; within each, one term of the expansion is exact、6.11 Bi-probability plot、DUNE: 2 GeV, 1300 km; a crust-like 3 g/cm^3、With the shipped plotter、With matplotlib directly、6.12 The Earth、6.12.1 Neutrinos & antineutrinos, 2–5 flavors、Two flavors is the (nue, numu) reduction of the 1-3、sector, so it takes that one angle and splitting by、name. Every wrapper above two flavors defaults to、the same NuFIT 6.1 set, so it needs none passed.、The sterile pairs run three decades higher, where an、eV-scale splitting places its resonance、6.12.2 Probabilities between two locations、positive, south and west negative、Two site names replace costhz and L: the chord、between them is the baseline、The chord itself, in km, for a legend、6.12.3 New physics、Three decades up is where an eV-scale splitting、places its matter resonance、The same call each time, a different extra term、Change between 3nu and 3+1 survival probability、6.12.4 Earth oscillograms、With the shipped plotter, one call per panel、Or with matplotlib directly, one axes per panel、6.12.5 Underground sources and detectors、On the surface, the baseline is given、0.911587、2 km down, the depth fixes the baseline、0.911600、Horizontal: no path at all at the surface、1.000000、2 km down it crosses 160 km of rock、0.997560、0.020930、Under ice, as at IceCube、Under rock, as at SNOLAB、0.021325、6.12.6 Using a custom Earth density profile、Four shells for PREM’s ten, each at the mass-weighted、mean density of the region it replaces、Those four edges are PREM boundaries, so their、crossings come straight out of the helper、6.13 Strategy report after a call、[’certified’, ’declined’, ’engine’,、’family’, ’hiddenfeature’, ’sampling’,、’trace’]、3227.2、[(’hybrid’, ’the profile is not、resolved at the probe scale’)]、6.14 The Sun、The table ships with Magnus. Its columns are read、only to plot the density (top panel of the figure)、The solar spectrum, 0.1 to 20 MeV、Shared by the four calls: the model by name, from、the center to its last row, nue to nue, the average、Standard three-flavor oscillations、The same, with non-standard interactions、One and two sterile states. nn/np is read from、the table; passing rationumberneutronstoprotons、overrides it、P3 = 0.5449 at 0.1 MeV, 0.2993 at 20 MeV、P = 0.666, 0.092, 0.259 in about 2 s、6.14.1 Varying the production point、P = 0.389, against 0.375 from the center、6.14.2 Probability averaging、6.14.3 Comparing solar models、6.14.4 Comparing against approximations、Fold theta13 back in、6.15 A supernova shock front、UnmarkedDiscontinuityWarning: the、Hamiltonian is discontinuous at the scale、of the grid this scan builds, and no、tbreakpoints were given. A slab、straddling a density jump degrades the、quadrature no matter how many slabs are、used; pass tbreakpoints at the、discontinuities.、Both fronts, 0.07 km wide, centered on the contact、discontinuity and on the forward shock: declare、where each begins and ends、4000 baselines from 10,200 to 80,000 km, at one、energy: the cumulative engine answers、One and two sterile states、PhaseAveragingWarning: average=True on a、profile with discontinuities has no closed、form, so the probability was propagated、across an energy window of +/-10.0% and、averaged over 41 samples. This is the、average over that window, not the L/E ->、infinity limit, and it depends on the、window: the largest standard error of the、mean here is 4.47e-02.、Pass averagespread to set the half-width、of the window to the resolution of the、measurement, and averagensamples to、reduce the error, which falls as the、inverse square root of the number of、samples.、P = 0.56、P = 0.584、6.16 High-energy astrophysical neutrinos、The standard case at 1 Mpc and at 1 Gpc、Largest difference over all energies、and channels: none、PhaseAveragingWarning: depends on、the energy spread at 46 of 60 points、[0.333 0.666 0.001]、A source 100 Mpc away: far enough for every phase、to average away at every energy. The average、depends on the baseline through the phases、Standard: the averaged matrix at each energy、LIV: the n = 1 operator, aligned with the PMNS、angles, sized to equal the vacuum term at 100 TeV、NSI through the Earth: the flux arrives decohered,、then crosses the Earth coherently, so the two legs、compose as probability matrices. The ladder starts、at 32 slabs: the matter term alone winds more than、pi across a coarser one、3+1: one sterile state, sin^2 of both active-、sterile angles 0.1, Dm41^2 = 1 eV^2、Pseudo-Dirac: the second mass state is paired、with a partner split by 1e-13 eV^2、from 100 Mpc, as in the fifth panel、splittings of nu2, at 100 TeV and、100 Mpc, from coherent to decohered、[0.326 0.343 0.33 ] Coherent: standard、[0.328 0.338 0.334] Between: warns、[0.332 0.323 0.345] Decohered、Inputs of the vacuum part: the PMNS、matrix and the three m^2 [eV^2]、PREM along the chord through the core:、at position l, VCC and the neutron-、to-proton ratio of the local layer、The Hamiltonian, of energy and position:、vacuum part plus matter part、Through the core, with the PREM layer、boundaries declared as breakpoints、The averaged vacuum leg, then the Earth、[0.332 0.323 0.345]、6.17 Assorted long examples、6.17.1 A cavity in the Earth’s crust、An empty crust needs no profile, only a number、Water, iron, a mineral deposit, a zone of faults:、(rho, Ye, w) for each、6.17.2 Geoneutrinos、The mantle chord: cosine of the zenith、angle at the detector, and the depths of、the production point and of Borexino [km]、Length of the chord [km]、Density along the chord [g/cm^3]: PREM,、with its ocean layer replaced by rock、Radius at distance l along the chord、Phase-averaged survival probability in、matter, at electron fraction of the mantle、0.551、The same, in vacuum、0.548、Twelve energies per cycle of the pair split by、Dm31^2 on the longest chord, 7,300 km、Borexino, 1.4 km underground. A production point、enters as its depth and the cosine of its zenith、angle at the detector; the call declares the PREM、boundaries on the chord by itself. The oscillation、parameters are the defaults, NuFIT 6.1.、The local point, 10 km deep and 100 km away,、run in reverse, from the detector (see text)、6.17.3 Neutrino tomography of the Sun、The chord above: b = 0.3 Rsun、6.17.4 Astrophysical relativistic jet、Evolve from the jet head (L0) to the、surface (L); also return the operator、Probabilities and evolution operator、Weights, w[i, alpha]、The three envelopes, g/cm3, r in cm、Production points spread over one oscillation、length at the jet head、Drawn: Psmooth[:, gd.NUE, gd.NUE], and the others、6.17.5 Long-range interactions in the Sun、Average over them, then scale by the 8B、spectrum and total flux, cm^-2 s^-1 MeV^-1、The B16-GS98 model that ships with Magnus,、on its tabulated radii and on to 20 Rsun、Two mediator ranges, one coupling: g’^2 makes Vemu、a tenth of VCC at R0 when 1/m = Rsun、The standard part from the shipped builders; the、new term is the only line written here、6.17.6 Turbulent matter profile、H at the mean density: vacuum plus matter、Eigenvalues w, matter eigenvectors Vm, and、the gap the mode has to match、Coupling of levels 2 and 3, and the length、of complete conversion, in units of LOSC、VCC follows the density、One operator per slab, from 9 nodes at、Magnus order 6、Ordered product, earliest slab first、Rotate to the matter basis, then read the、transition between levels 2 and 3、Two flavors: the 1-3 sector、Three flavors、The same call with a sterile state added、6.18 Running a scan in parallel、Every point has its own baseline, so no、batched engine takes this scan、engine takes it, at the default njobs = 1、nothing; the call runs in one process、6.19 Using Mag$nu$s from the command line、7 Performance, precision, and reach、7.1 Timing measurement protocol、7.2 Slab width follows the profile, not the phase、7.3 What a probability costs、7.4 Precision, accuracy, and tolerance、7.5 Accuracy and speed: smooth density profile、7.6 Accuracy and speed: a supernova shock front、7.7 Accuracy and speed: the Sun、8 Comparison to other codes、8.1 Relation to other oscillation codes、8.2 Speed-accuracy comparison、8.3 When to use Mag$nu$s、9 Conclusions、Declaration of generative AI and AI-assisted technologies in the manuscript preparation process、Acknowledgments、References、Appendix A Magnus expansion at any order、A.1 Computing Magnus terms、A.2 Why the collocation orders are even、Appendix B Predefined oscillation-parameter sets、Appendix C The tutorial notebooks、Appendix D The test suite、Instructions for reporting errors。
This guide uses the recorded body material; inspected sections: Introduction, Mag$nu$s: neutrino oscillation probabilities for any Hermitian Hamiltonian, any number of flavors, and any matter profile, 1 Introduction, 2 Synopsis, Standard oscillation parameters, Active-sterile mixing, Exponentially falling density: 3e3 g/cm^3 at the, origin, scale height 10 km, 25 km baseline., Every mixing parameter left out defaults to zero., 3 Neutrino oscillations: units, notation, conventions, 4 The method, 4.1 History and context, 4.2 Where the method applies and where it does not, 4.3 The Magnus expansion, 4.4 Truncation is exactly unitary, 4.5 Two quadrature rules for the Magnus expansion, 4.6 Slab composition, 4.7 Tolerance and adaptive refinement, 4.8 The matrix exponential, 4.9 Adiabatic transport with exact Magnus patches, 4.10 The phase-averaged probability, 4.10.1 The averaged probability, 4.10.2 Coherent blocks, 4.10.3 The phase average, 4.10.4 A varying Hamiltonian, 5 Code description, 5.1 Scope and interface, 5.2 The Mag$nu$s architecture, 5.3 The seven engines, 5.4 Example: one request, through the layers, ---- What the user writes: the whole request ----, One energy, one chord, and two refinement keywords, ---- Inside Magnus: what the call runs through ----, Top layer: the named wrapper, Second layer: builds H, tries its engines, Third layer: the scan over (energy, baseline), Base layer: the refinement ladder, one point, 5.5 Batching and parallelization, 5.6 Declaring the structure of a profile, 24 slabs of 250 km, alternating 2 and 8 g/cm^3, The jumps declared: the ladder keeps its own grid,, adds an edge at each of the 23 jumps, then refines, to the tolerance, The grid given in full, as [start, end] pairs: one, slab per layer, no refinement, a single evaluation, A grid of 12 slabs, each straddling one jump: the, user owns this grid, and nothing repairs it, P1 = P2 = 0.0240046, exact: the profile is constant, within every slab. P3 = 0.0246158, off by 6e-4, 5.7 Documentation and executable examples, 5.8 Installation, The package:, Plus what the notebooks need:, Plus what the tests need:, 5.9 Code availability, 5.10 Code validation, 5.10.1 Against the derivation, 5.10.2 Against closed forms, 5.10.3 Against an independent solver, 5.10.4 Against itself, where meaningful, 5.10.5 Against a population, 5.10.6 Continuous integration, 5.11 Limitations, 5.11.1 Limitations of the method, 5.11.2 Limitations of the implementation, 6 Mag$nu$s usage and examples, 6.1 The full application programming interface (API), 6.2 A minimal example in vacuum, step-by-step, Natural units: energies in eV, lengths in eV^-1, Pme = 0.03127, Pmm = 0.39231, Pmt = 0.57643, The amplitude is indexed the other way, 6.3 Choosing the oscillation parameters, 6.3.1 Three flavors, Pme = 0.05166, against 0.03127 by default, Pme = 0.05579; ’LEM’ gives 0.05558, Pme = 0.04998; ’freefluxesrsbl’, gives 0.04552, 53 lines, e.g.,, OSCPARAMSNUFIT10IO | NuFIT 1.0, IO, The releases the loader reads, and the, categories of each, 18 lines, e.g., NuFIT 2.1 [’LEM’, ’LID’], Pme = 0.05098; the other five stay at, their defaults, The other five stay at their NuFIT 6.1 IO, values. Pme = 0.01800, against, 0.05241 with the set’s own dCP, 6.3.2 Specifying angle conventions, s12 reads 0.5557, 0.3088, 0.5892, 33.759, and Pme = 0.03127 in all four cases, 6.3.3 Two flavors, P[0][1] = 0.013089, The same point, angles in degrees, 6.3.4 Four flavors, Pme = 0.02801, Pmm = 0.39958, 6.3.5 Five flavors, Pme = 0.03984, Pmm = 0.40684, 6.3.6 Default non-standard parameters, 6.4 Batched calls, P[-1] equals the single call at 1300 km, 6.5 Constant density, ’NuFIT 6.1’ is the default; re-loaded for clarity only, Three flavors, one energy and one baseline, 0.0 g/cm3 Pme = 0.003773, 3.0 g/cm3 Pme = 0.013589, 8.0 g/cm3 Pme = 0.050497, 13.0 g/cm3 Pme = 0.113343, Two flavors: one angle and one splitting, P[0][1] = 0.005766, Two hundred energies in one call, P.shape = (200, 3, 3), 6.6 Using wrappers vs. scenario calls vs. direct calls, --- 1. With the named wrappers, Pme = 0.00377306 in vacuum, 0.01358909 in, matter, in 0.15 ms, Pscan.shape = (200, 3, 3), in 0.13 ms, --- 2. With a scenario function, The same number, to 1e-16, in 3.6 ms, --- 3. With a Hamiltonian built by hand, The same two numbers, in 0.043 ms, The same 200 points, in 5.8 ms, 6.6.1 Through a wrapper, Pme = 0.017126. Dropping epsem gives, 0.013589, the standard wrapper’s answer, 6.6.2 Through a scenario function, Pme = 0.017126, the same number the, wrapper above returns, 6.6.3 Through a direct call, proj for three flavors is diag(1, 0, 0), 1. mixing, 2. matter, 3. new physics, Pme = 0.017126 again, 6.6.4 Which to use, 6.6.5 Returning the evolution operator, P is the matrix the call returns without, the keyword; U is complex and unitary., Both of these hold:, the second denser than the first, 6.6.6 Asking for the averaged probability, P[0, 0] = 0.5481, P[1, 0] = 0.2155: the, familiar sumi |Uei|^2 |Umi|^2, from the, eigenvectors alone, PhaseAveragingWarning: the phase-averaged, probability depends on the energy spread, at 1 of 1 (energy, L) point(s) ..., P[0, 0] = 0.9844, P[1, 1] = 0.9088;, P[0, 0] = 0.8934: the decohered limit,, now from the eigenvectors in matter, 6.7 The Hamiltonians, 6.7.1 Shipped Hamiltonians, Over 200 energies: 3.7 ms, ... and 0.18 ms, 6.7.2 Building a new Hamiltonian from scratch, Pme = 0.021309, Pme = 0.004865, 6.8 Pre-packaged plotting routines, 6.9 Probability vs. energy and distance, 0.082635, as in the listing, 0.071325, as in the listing, One mole of electrons per cubic centimeter, in the, natural units that magnus works in, Give a constant profile as a single number, and, a varying one as a function of the distance, traveled, returning the electron number density, there. The distance arrives in eV^-1, like, every length in magnus, The first keyword says that the functions return, an electron number density, not a mass density, Left column: 5,000 distances at one energy. The, list of distances goes where a single one would, Right column: 3,000 energies at one distance, The vacuum curves, for reference, 6.10 Layered matter, The slab edges are declared, so no slab straddles a, jump; within each, one term of the expansion is exact, 6.11 Bi-probability plot, DUNE: 2 GeV, 1300 km; a crust-like 3 g/cm^3, With the shipped plotter, With matplotlib directly, 6.12 The Earth, 6.12.1 Neutrinos & antineutrinos, 2–5 flavors, Two flavors is the (nue, numu) reduction of the 1-3, sector, so it takes that one angle and splitting by, name. Every wrapper above two flavors defaults to, the same NuFIT 6.1 set, so it needs none passed., The sterile pairs run three decades higher, where an, eV-scale splitting places its resonance, 6.12.2 Probabilities between two locations, positive, south and west negative, Two site names replace costhz and L: the chord, between them is the baseline, The chord itself, in km, for a legend, 6.12.3 New physics, Three decades up is where an eV-scale splitting, places its matter resonance, The same call each time, a different extra term, Change between 3nu and 3+1 survival probability, 6.12.4 Earth oscillograms, With the shipped plotter, one call per panel, Or with matplotlib directly, one axes per panel, 6.12.5 Underground sources and detectors, On the surface, the baseline is given, 0.911587, 2 km down, the depth fixes the baseline, 0.911600, Horizontal: no path at all at the surface, 1.000000, 2 km down it crosses 160 km of rock, 0.997560, 0.020930, Under ice, as at IceCube, Under rock, as at SNOLAB, 0.021325, 6.12.6 Using a custom Earth density profile, Four shells for PREM’s ten, each at the mass-weighted, mean density of the region it replaces, Those four edges are PREM boundaries, so their, crossings come straight out of the helper, 6.13 Strategy report after a call, [’certified’, ’declined’, ’engine’,, ’family’, ’hiddenfeature’, ’sampling’,, ’trace’], 3227.2, [(’hybrid’, ’the profile is not, resolved at the probe scale’)], 6.14 The Sun, The table ships with Magnus. Its columns are read, only to plot the density (top panel of the figure), The solar spectrum, 0.1 to 20 MeV, Shared by the four calls: the model by name, from, the center to its last row, nue to nue, the average, Standard three-flavor oscillations, The same, with non-standard interactions, One and two sterile states. nn/np is read from, the table; passing rationumberneutronstoprotons, overrides it, P3 = 0.5449 at 0.1 MeV, 0.2993 at 20 MeV, P = 0.666, 0.092, 0.259 in about 2 s, 6.14.1 Varying the production point, P = 0.389, against 0.375 from the center, 6.14.2 Probability averaging, 6.14.3 Comparing solar models, 6.14.4 Comparing against approximations, Fold theta13 back in, 6.15 A supernova shock front, UnmarkedDiscontinuityWarning: the, Hamiltonian is discontinuous at the scale, of the grid this scan builds, and no, tbreakpoints were given. A slab, straddling a density jump degrades the, quadrature no matter how many slabs are, used; pass tbreakpoints at the, discontinuities., Both fronts, 0.07 km wide, centered on the contact, discontinuity and on the forward shock: declare, where each begins and ends, 4000 baselines from 10,200 to 80,000 km, at one, energy: the cumulative engine answers, One and two sterile states, PhaseAveragingWarning: average=True on a, profile with discontinuities has no closed, form, so the probability was propagated, across an energy window of +/-10.0% and, averaged over 41 samples. This is the, average over that window, not the L/E ->, infinity limit, and it depends on the, window: the largest standard error of the, mean here is 4.47e-02., Pass averagespread to set the half-width, of the window to the resolution of the, measurement, and averagensamples to, reduce the error, which falls as the, inverse square root of the number of, samples., P = 0.56, P = 0.584, 6.16 High-energy astrophysical neutrinos, The standard case at 1 Mpc and at 1 Gpc, Largest difference over all energies, and channels: none, PhaseAveragingWarning: depends on, the energy spread at 46 of 60 points, [0.333 0.666 0.001], A source 100 Mpc away: far enough for every phase, to average away at every energy. The average, depends on the baseline through the phases, Standard: the averaged matrix at each energy, LIV: the n = 1 operator, aligned with the PMNS, angles, sized to equal the vacuum term at 100 TeV, NSI through the Earth: the flux arrives decohered,, then crosses the Earth coherently, so the two legs, compose as probability matrices. The ladder starts, at 32 slabs: the matter term alone winds more than, pi across a coarser one, 3+1: one sterile state, sin^2 of both active-, sterile angles 0.1, Dm41^2 = 1 eV^2, Pseudo-Dirac: the second mass state is paired, with a partner split by 1e-13 eV^2, from 100 Mpc, as in the fifth panel, splittings of nu2, at 100 TeV and, 100 Mpc, from coherent to decohered, [0.326 0.343 0.33 ] Coherent: standard, [0.328 0.338 0.334] Between: warns, [0.332 0.323 0.345] Decohered, Inputs of the vacuum part: the PMNS, matrix and the three m^2 [eV^2], PREM along the chord through the core:, at position l, VCC and the neutron-, to-proton ratio of the local layer, The Hamiltonian, of energy and position:, vacuum part plus matter part, Through the core, with the PREM layer, boundaries declared as breakpoints, The averaged vacuum leg, then the Earth, [0.332 0.323 0.345], 6.17 Assorted long examples, 6.17.1 A cavity in the Earth’s crust, An empty crust needs no profile, only a number, Water, iron, a mineral deposit, a zone of faults:, (rho, Ye, w) for each, 6.17.2 Geoneutrinos, The mantle chord: cosine of the zenith, angle at the detector, and the depths of, the production point and of Borexino [km], Length of the chord [km], Density along the chord [g/cm^3]: PREM,, with its ocean layer replaced by rock, Radius at distance l along the chord, Phase-averaged survival probability in, matter, at electron fraction of the mantle, 0.551, The same, in vacuum, 0.548, Twelve energies per cycle of the pair split by, Dm31^2 on the longest chord, 7,300 km, Borexino, 1.4 km underground. A production point, enters as its depth and the cosine of its zenith, angle at the detector; the call declares the PREM, boundaries on the chord by itself. The oscillation, parameters are the defaults, NuFIT 6.1., The local point, 10 km deep and 100 km away,, run in reverse, from the detector (see text), 6.17.3 Neutrino tomography of the Sun, The chord above: b = 0.3 Rsun, 6.17.4 Astrophysical relativistic jet, Evolve from the jet head (L0) to the, surface (L); also return the operator, Probabilities and evolution operator, Weights, w[i, alpha], The three envelopes, g/cm3, r in cm, Production points spread over one oscillation, length at the jet head, Drawn: Psmooth[:, gd.NUE, gd.NUE], and the others, 6.17.5 Long-range interactions in the Sun, Average over them, then scale by the 8B, spectrum and total flux, cm^-2 s^-1 MeV^-1, The B16-GS98 model that ships with Magnus,, on its tabulated radii and on to 20 Rsun, Two mediator ranges, one coupling: g’^2 makes Vemu, a tenth of VCC at R0 when 1/m = Rsun, The standard part from the shipped builders; the, new term is the only line written here, 6.17.6 Turbulent matter profile, H at the mean density: vacuum plus matter, Eigenvalues w, matter eigenvectors Vm, and, the gap the mode has to match, Coupling of levels 2 and 3, and the length, of complete conversion, in units of LOSC, VCC follows the density, One operator per slab, from 9 nodes at, Magnus order 6, Ordered product, earliest slab first, Rotate to the matter basis, then read the, transition between levels 2 and 3, Two flavors: the 1-3 sector, Three flavors, The same call with a sterile state added, 6.18 Running a scan in parallel, Every point has its own baseline, so no, batched engine takes this scan, engine takes it, at the default njobs = 1, nothing; the call runs in one process, 6.19 Using Mag$nu$s from the command line, 7 Performance, precision, and reach, 7.1 Timing measurement protocol, 7.2 Slab width follows the profile, not the phase, 7.3 What a probability costs, 7.4 Precision, accuracy, and tolerance, 7.5 Accuracy and speed: smooth density profile, 7.6 Accuracy and speed: a supernova shock front, 7.7 Accuracy and speed: the Sun, 8 Comparison to other codes, 8.1 Relation to other oscillation codes, 8.2 Speed-accuracy comparison, 8.3 When to use Mag$nu$s, 9 Conclusions, Declaration of generative AI and AI-assisted technologies in the manuscript preparation process, Acknowledgments, References, Appendix A Magnus expansion at any order, A.1 Computing Magnus terms, A.2 Why the collocation orders are even, Appendix B Predefined oscillation-parameter sets, Appendix C The tutorial notebooks, Appendix D The test suite, Instructions for reporting errors.
- arXiv body material Introduction; Mag$nu$s: neutrino oscillation probabilities for any Hermitian Hamiltonian, any number of flavors, and any matter profile; 1 Introduction; 2 Synopsis; Standard oscillation parameters; Active-sterile mixing; Exponentially falling density: 3e3 g/cm^3 at the; origin, scale height 10 km, 25 km baseline.; Every mixing parameter left out defaults to zero.; 3 Neutrino oscillations: units, notation, conventions; 4 The method; 4.1 History and context; 4.2 Where the method applies and where it does not; 4.3 The Magnus expansion; 4.4 Truncation is exactly unitary; 4.5 Two quadrature rules for the Magnus expansion; 4.6 Slab composition; 4.7 Tolerance and adaptive refinement; 4.8 The matrix exponential; 4.9 Adiabatic transport with exact Magnus patches; 4.10 The phase-averaged probability; 4.10.1 The averaged probability; 4.10.2 Coherent blocks; 4.10.3 The phase average; 4.10.4 A varying Hamiltonian; 5 Code description; 5.1 Scope and interface; 5.2 The Mag$nu$s architecture; 5.3 The seven engines; 5.4 Example: one request, through the layers; ---- What the user writes: the whole request ----; One energy, one chord, and two refinement keywords; ---- Inside Magnus: what the call runs through ----; Top layer: the named wrapper; Second layer: builds H, tries its engines; Third layer: the scan over (energy, baseline); Base layer: the refinement ladder, one point; 5.5 Batching and parallelization; 5.6 Declaring the structure of a profile; 24 slabs of 250 km, alternating 2 and 8 g/cm^3; The jumps declared: the ladder keeps its own grid,; adds an edge at each of the 23 jumps, then refines; to the tolerance; The grid given in full, as [start, end] pairs: one; slab per layer, no refinement, a single evaluation; A grid of 12 slabs, each straddling one jump: the; user owns this grid, and nothing repairs it; P1 = P2 = 0.0240046, exact: the profile is constant; within every slab. P3 = 0.0246158, off by 6e-4; 5.7 Documentation and executable examples; 5.8 Installation; The package:; Plus what the notebooks need:; Plus what the tests need:; 5.9 Code availability; 5.10 Code validation; 5.10.1 Against the derivation; 5.10.2 Against closed forms; 5.10.3 Against an independent solver; 5.10.4 Against itself, where meaningful; 5.10.5 Against a population; 5.10.6 Continuous integration; 5.11 Limitations; 5.11.1 Limitations of the method; 5.11.2 Limitations of the implementation; 6 Mag$nu$s usage and examples; 6.1 The full application programming interface (API); 6.2 A minimal example in vacuum, step-by-step; Natural units: energies in eV, lengths in eV^-1; Pme = 0.03127, Pmm = 0.39231, Pmt = 0.57643; The amplitude is indexed the other way; 6.3 Choosing the oscillation parameters; 6.3.1 Three flavors; Pme = 0.05166, against 0.03127 by default; Pme = 0.05579; ’LEM’ gives 0.05558; Pme = 0.04998; ’freefluxesrsbl’; gives 0.04552; 53 lines, e.g.,; OSCPARAMSNUFIT10IO | NuFIT 1.0, IO; The releases the loader reads, and the; categories of each; 18 lines, e.g., NuFIT 2.1 [’LEM’, ’LID’]; Pme = 0.05098; the other five stay at; their defaults; The other five stay at their NuFIT 6.1 IO; values. Pme = 0.01800, against; 0.05241 with the set’s own dCP; 6.3.2 Specifying angle conventions; s12 reads 0.5557, 0.3088, 0.5892, 33.759; and Pme = 0.03127 in all four cases; 6.3.3 Two flavors; P[0][1] = 0.013089; The same point, angles in degrees; 6.3.4 Four flavors; Pme = 0.02801, Pmm = 0.39958; 6.3.5 Five flavors; Pme = 0.03984, Pmm = 0.40684; 6.3.6 Default non-standard parameters; 6.4 Batched calls; P[-1] equals the single call at 1300 km; 6.5 Constant density; ’NuFIT 6.1’ is the default; re-loaded for clarity only; Three flavors, one energy and one baseline; 0.0 g/cm3 Pme = 0.003773; 3.0 g/cm3 Pme = 0.013589; 8.0 g/cm3 Pme = 0.050497; 13.0 g/cm3 Pme = 0.113343; Two flavors: one angle and one splitting; P[0][1] = 0.005766; Two hundred energies in one call; P.shape = (200, 3, 3); 6.6 Using wrappers vs. scenario calls vs. direct calls; --- 1. With the named wrappers; Pme = 0.00377306 in vacuum, 0.01358909 in; matter, in 0.15 ms; Pscan.shape = (200, 3, 3), in 0.13 ms; --- 2. With a scenario function; The same number, to 1e-16, in 3.6 ms; --- 3. With a Hamiltonian built by hand; The same two numbers, in 0.043 ms; The same 200 points, in 5.8 ms; 6.6.1 Through a wrapper; Pme = 0.017126. Dropping epsem gives; 0.013589, the standard wrapper’s answer; 6.6.2 Through a scenario function; Pme = 0.017126, the same number the; wrapper above returns; 6.6.3 Through a direct call; proj for three flavors is diag(1, 0, 0); 1. mixing, 2. matter, 3. new physics; Pme = 0.017126 again; 6.6.4 Which to use; 6.6.5 Returning the evolution operator; P is the matrix the call returns without; the keyword; U is complex and unitary.; Both of these hold:; the second denser than the first; 6.6.6 Asking for the averaged probability; P[0, 0] = 0.5481, P[1, 0] = 0.2155: the; familiar sumi |Uei|^2 |Umi|^2, from the; eigenvectors alone; PhaseAveragingWarning: the phase-averaged; probability depends on the energy spread; at 1 of 1 (energy, L) point(s) ...; P[0, 0] = 0.9844, P[1, 1] = 0.9088;; P[0, 0] = 0.8934: the decohered limit,; now from the eigenvectors in matter; 6.7 The Hamiltonians; 6.7.1 Shipped Hamiltonians; Over 200 energies: 3.7 ms; ... and 0.18 ms; 6.7.2 Building a new Hamiltonian from scratch; Pme = 0.021309; Pme = 0.004865; 6.8 Pre-packaged plotting routines; 6.9 Probability vs. energy and distance; 0.082635, as in the listing; 0.071325, as in the listing; One mole of electrons per cubic centimeter, in the; natural units that magnus works in; Give a constant profile as a single number, and; a varying one as a function of the distance; traveled, returning the electron number density; there. The distance arrives in eV^-1, like; every length in magnus; The first keyword says that the functions return; an electron number density, not a mass density; Left column: 5,000 distances at one energy. The; list of distances goes where a single one would; Right column: 3,000 energies at one distance; The vacuum curves, for reference; 6.10 Layered matter; The slab edges are declared, so no slab straddles a; jump; within each, one term of the expansion is exact; 6.11 Bi-probability plot; DUNE: 2 GeV, 1300 km; a crust-like 3 g/cm^3; With the shipped plotter; With matplotlib directly; 6.12 The Earth; 6.12.1 Neutrinos & antineutrinos, 2–5 flavors; Two flavors is the (nue, numu) reduction of the 1-3; sector, so it takes that one angle and splitting by; name. Every wrapper above two flavors defaults to; the same NuFIT 6.1 set, so it needs none passed.; The sterile pairs run three decades higher, where an; eV-scale splitting places its resonance; 6.12.2 Probabilities between two locations; positive, south and west negative; Two site names replace costhz and L: the chord; between them is the baseline; The chord itself, in km, for a legend; 6.12.3 New physics; Three decades up is where an eV-scale splitting; places its matter resonance; The same call each time, a different extra term; Change between 3nu and 3+1 survival probability; 6.12.4 Earth oscillograms; With the shipped plotter, one call per panel; Or with matplotlib directly, one axes per panel; 6.12.5 Underground sources and detectors; On the surface, the baseline is given; 0.911587; 2 km down, the depth fixes the baseline; 0.911600; Horizontal: no path at all at the surface; 1.000000; 2 km down it crosses 160 km of rock; 0.997560; 0.020930; Under ice, as at IceCube; Under rock, as at SNOLAB; 0.021325; 6.12.6 Using a custom Earth density profile; Four shells for PREM’s ten, each at the mass-weighted; mean density of the region it replaces; Those four edges are PREM boundaries, so their; crossings come straight out of the helper; 6.13 Strategy report after a call; [’certified’, ’declined’, ’engine’,; ’family’, ’hiddenfeature’, ’sampling’,; ’trace’]; 3227.2; [(’hybrid’, ’the profile is not; resolved at the probe scale’)]; 6.14 The Sun; The table ships with Magnus. Its columns are read; only to plot the density (top panel of the figure); The solar spectrum, 0.1 to 20 MeV; Shared by the four calls: the model by name, from; the center to its last row, nue to nue, the average; Standard three-flavor oscillations; The same, with non-standard interactions; One and two sterile states. nn/np is read from; the table; passing rationumberneutronstoprotons; overrides it; P3 = 0.5449 at 0.1 MeV, 0.2993 at 20 MeV; P = 0.666, 0.092, 0.259 in about 2 s; 6.14.1 Varying the production point; P = 0.389, against 0.375 from the center; 6.14.2 Probability averaging; 6.14.3 Comparing solar models; 6.14.4 Comparing against approximations; Fold theta13 back in; 6.15 A supernova shock front; UnmarkedDiscontinuityWarning: the; Hamiltonian is discontinuous at the scale; of the grid this scan builds, and no; tbreakpoints were given. A slab; straddling a density jump degrades the; quadrature no matter how many slabs are; used; pass tbreakpoints at the; discontinuities.; Both fronts, 0.07 km wide, centered on the contact; discontinuity and on the forward shock: declare; where each begins and ends; 4000 baselines from 10,200 to 80,000 km, at one; energy: the cumulative engine answers; One and two sterile states; PhaseAveragingWarning: average=True on a; profile with discontinuities has no closed; form, so the probability was propagated; across an energy window of +/-10.0% and; averaged over 41 samples. This is the; average over that window, not the L/E ->; infinity limit, and it depends on the; window: the largest standard error of the; mean here is 4.47e-02.; Pass averagespread to set the half-width; of the window to the resolution of the; measurement, and averagensamples to; reduce the error, which falls as the; inverse square root of the number of; samples.; P = 0.56; P = 0.584; 6.16 High-energy astrophysical neutrinos; The standard case at 1 Mpc and at 1 Gpc; Largest difference over all energies; and channels: none; PhaseAveragingWarning: depends on; the energy spread at 46 of 60 points; [0.333 0.666 0.001]; A source 100 Mpc away: far enough for every phase; to average away at every energy. The average; depends on the baseline through the phases; Standard: the averaged matrix at each energy; LIV: the n = 1 operator, aligned with the PMNS; angles, sized to equal the vacuum term at 100 TeV; NSI through the Earth: the flux arrives decohered,; then crosses the Earth coherently, so the two legs; compose as probability matrices. The ladder starts; at 32 slabs: the matter term alone winds more than; pi across a coarser one; 3+1: one sterile state, sin^2 of both active-; sterile angles 0.1, Dm41^2 = 1 eV^2; Pseudo-Dirac: the second mass state is paired; with a partner split by 1e-13 eV^2; from 100 Mpc, as in the fifth panel; splittings of nu2, at 100 TeV and; 100 Mpc, from coherent to decohered; [0.326 0.343 0.33 ] Coherent: standard; [0.328 0.338 0.334] Between: warns; [0.332 0.323 0.345] Decohered; Inputs of the vacuum part: the PMNS; matrix and the three m^2 [eV^2]; PREM along the chord through the core:; at position l, VCC and the neutron-; to-proton ratio of the local layer; The Hamiltonian, of energy and position:; vacuum part plus matter part; Through the core, with the PREM layer; boundaries declared as breakpoints; The averaged vacuum leg, then the Earth; [0.332 0.323 0.345]; 6.17 Assorted long examples; 6.17.1 A cavity in the Earth’s crust; An empty crust needs no profile, only a number; Water, iron, a mineral deposit, a zone of faults:; (rho, Ye, w) for each; 6.17.2 Geoneutrinos; The mantle chord: cosine of the zenith; angle at the detector, and the depths of; the production point and of Borexino [km]; Length of the chord [km]; Density along the chord [g/cm^3]: PREM,; with its ocean layer replaced by rock; Radius at distance l along the chord; Phase-averaged survival probability in; matter, at electron fraction of the mantle; 0.551; The same, in vacuum; 0.548; Twelve energies per cycle of the pair split by; Dm31^2 on the longest chord, 7,300 km; Borexino, 1.4 km underground. A production point; enters as its depth and the cosine of its zenith; angle at the detector; the call declares the PREM; boundaries on the chord by itself. The oscillation; parameters are the defaults, NuFIT 6.1.; The local point, 10 km deep and 100 km away,; run in reverse, from the detector (see text); 6.17.3 Neutrino tomography of the Sun; The chord above: b = 0.3 Rsun; 6.17.4 Astrophysical relativistic jet; Evolve from the jet head (L0) to the; surface (L); also return the operator; Probabilities and evolution operator; Weights, w[i, alpha]; The three envelopes, g/cm3, r in cm; Production points spread over one oscillation; length at the jet head; Drawn: Psmooth[:, gd.NUE, gd.NUE], and the others; 6.17.5 Long-range interactions in the Sun; Average over them, then scale by the 8B; spectrum and total flux, cm^-2 s^-1 MeV^-1; The B16-GS98 model that ships with Magnus,; on its tabulated radii and on to 20 Rsun; Two mediator ranges, one coupling: g’^2 makes Vemu; a tenth of VCC at R0 when 1/m = Rsun; The standard part from the shipped builders; the; new term is the only line written here; 6.17.6 Turbulent matter profile; H at the mean density: vacuum plus matter; Eigenvalues w, matter eigenvectors Vm, and; the gap the mode has to match; Coupling of levels 2 and 3, and the length; of complete conversion, in units of LOSC; VCC follows the density; One operator per slab, from 9 nodes at; Magnus order 6; Ordered product, earliest slab first; Rotate to the matter basis, then read the; transition between levels 2 and 3; Two flavors: the 1-3 sector; Three flavors; The same call with a sterile state added; 6.18 Running a scan in parallel; Every point has its own baseline, so no; batched engine takes this scan; engine takes it, at the default njobs = 1; nothing; the call runs in one process; 6.19 Using Mag$nu$s from the command line; 7 Performance, precision, and reach; 7.1 Timing measurement protocol; 7.2 Slab width follows the profile, not the phase; 7.3 What a probability costs; 7.4 Precision, accuracy, and tolerance; 7.5 Accuracy and speed: smooth density profile; 7.6 Accuracy and speed: a supernova shock front; 7.7 Accuracy and speed: the Sun; 8 Comparison to other codes; 8.1 Relation to other oscillation codes; 8.2 Speed-accuracy comparison; 8.3 When to use Mag$nu$s; 9 Conclusions; Declaration of generative AI and AI-assisted technologies in the manuscript preparation process; Acknowledgments; References; Appendix A Magnus expansion at any order; A.1 Computing Magnus terms; A.2 Why the collocation orders are even; Appendix B Predefined oscillation-parameter sets; Appendix C The tutorial notebooks; Appendix D The test suite; Instructions for reporting errors; Complete, revision-matched arXiv TeX source package
Interpreting neutrino oscillation measurements requires computing the probability that a neutrino born with one flavor is detected with another. In vacuum and in matter of constant density, this probability has exact formulas. Where the density varies along the path, as in the Earth, the Sun, or a supernova, it does not. There, the usual approaches either replace the profile by constant-density steps, whose error falls only as the square of their width, or integrate the evolution equation with a general-purpose solver, which must shorten its steps to meet a tighter tolerance. Both become slow at high accuracy, yet an analysis needs the probability at many energies, directions, and parameter values. Each new experiment or model often requires writing and validating a new solver. We present Magnus, an open-source Python code that avoids these limitations. It uses the Magnus expansion, whose error falls as a high power of its step width and whose cost is set by how fast the density varies, not by how many oscillations the path holds. Magnus accepts any density profile, any number of flavors, and any Hermitian Hamiltonian, such as those of non-standard interactions, sterile neutrinos, Lorentz-invariance violation, and pseudo-Dirac neutrinos. Where a cheaper route exists, it takes it automatically. For example, where the density varies slowly, as in the Sun, it follows the instantaneous eigenstates and applies the expansion only at resonances. Besides oscillating probabilities, Magnus returns phase-averaged ones, which describe solar and astrophysical neutrinos. A typical probability takes a few milliseconds, and batched scans are one to two orders of magnitude cheaper per point. Among the public codes we compared, Magnus is the fastest at high accuracy on a varying profile. Magnus shifts the effort of studying a new experiment or model from writing a solver to specifying its physics.
这里保留 arXiv 提供的原始摘要;它是来源材料,不表示独立验证。
This is the original arXiv abstract used as source material; it does not represent independent verification.
打开 arXiv:2610.07159v1 原文页面Open arXiv:2610.07159v1 source page 在 NASA ADS 查看NASA ADS ↗
Click the button above to view full quantitative analysis and verbatim evidence in dialog.