Fractional Diffusion Memory, Discretisation and Parameter Recovery Study
A completed mathematics study of memory in Caputo time-fractional diffusion, L1 discretisation error, inverse recovery and conditional uncertainty.

Software compatibility
The retained release results use Python 3.14.6. The Docker workflow uses Python 3.12 and reproduces the numerical evidence within the declared tolerance.
Project definition
Problem statement
Classical diffusion assumes an exponential loss of memory, while many heterogeneous systems show slower relaxation and history-dependent transport.
The mathematical problem is to solve a Caputo time-fractional diffusion equation accurately and recover both fractional order and diffusivity from sparse noisy observations without confusing numerical error with measurement uncertainty.
Project objectives
- Implement an implicit L1 approximation for the Caputo derivative with centred spatial differences.
- Verify the solver against an independent Mittag-Leffler eigenmode solution.
- Measure coupled space-time grid error and the observed convergence order.
- Recover fractional order and diffusivity with weighted nonlinear least squares.
- Map the joint objective surface and study identifiability.
- Measure sensitivity to noise, sensor layout and inverse-grid resolution.
- Estimate conditional parameter intervals with a residual bootstrap.
Project structure
Project components
Fractional solver
Builds the L1 memory weights and advances the one-dimensional diffusion equation with a banded tridiagonal solve.
Analytical benchmark
Evaluates the Mittag-Leffler eigenmode with arbitrary precision for an independent final-time comparison.
Inverse solver
Fits fractional order and diffusivity to scaled synthetic observations under declared bounds.
Sensitivity studies
Runs noise, sensor-layout, inverse-grid, objective-surface and runtime experiments.
Uncertainty analysis
Uses 120 residual-bootstrap refits to retain joint parameter variation and percentile intervals.
Evidence builder
Writes CSV, NPZ, JSON, checksums and seventeen labelled figures from one versioned configuration.
Methodology
Project workflow
- 01Load the study
The program reads the physical, grid, observation, inverse and experiment settings.
- 02Generate observations
A fine-grid truth model creates forty seeded noisy values at five sensors and eight times.
- 03Verify the solver
The implementation is compared with the independent eigenmode and across five coupled refinements.
- 04Recover parameters
Weighted least squares estimates alpha and diffusivity on the declared inverse grid.
- 05Test sensitivity
Noise, sensor positions, grid resolution and the full two-parameter objective surface are evaluated.
- 06Quantify variation
Residual bootstrap fits and runtime measurements complete the retained evidence.
Demonstration scenario
A Gaussian pulse evolves to time 1 with truth alpha 0.72 and diffusivity 0.065. Forty one-percent-noise observations recover alpha 0.714740 and diffusivity 0.066544. The final exact-profile error is 0.000556 and the finest coupled-grid error is 0.000358.
Engineering
Tools and method
- Tools
- The project uses Python, NumPy, SciPy, Pandas, Matplotlib, mpmath, Jupyter for subject analysis, simulation, and results.
- Governing equation
- One-dimensional Caputo time-fractional diffusion with a Gaussian initial pulse and fixed zero boundaries.
- Discretisation
- Implicit L1 time history with second-order centred spatial differences and a banded solve.
- Inverse method
- Bounded weighted nonlinear least squares for fractional order and diffusivity.
- Verification
- Mittag-Leffler exact profile, grid refinement, structural tests, checksums and cross-version Docker execution.
- Uncertainty
- Separated numerical, observational and design sensitivities with conditional residual-bootstrap intervals.
Testing
Evaluation
Evaluation measures
- Final relative L2 error against the Mittag-Leffler eigenmode
- Grid error and observed coupled convergence order
- Recovered fractional order and diffusivity error against synthetic truth
- Concentration RMSE across forty observations
- Objective-surface geometry and joint parameter tradeoff
- Recovery variation across five noise levels and five sensor layouts
- Parameter bias across five inverse grids
- Residual-bootstrap percentile intervals and joint scatter
- Measured direct-history runtime scaling
Project boundaries
- All observations and recovery results are synthetic.
- The model is one dimensional, linear and homogeneous with known initial and boundary conditions.
- The bootstrap interval is conditional on the retained model, residuals and observation design.
- The study does not identify the constitutive law or parameters of a real material.
Included
- 01Complete Python source code
- 02Caputo time-fractional diffusion model and implicit L1 solver
- 03Arbitrary-precision Mittag-Leffler benchmark
- 04Five-level coupled grid-convergence study
- 05Fractional order and diffusivity recovery from forty synthetic observations
- 06Objective-surface, noise, sensor-layout and inverse-grid studies
- 07One hundred and twenty residual-bootstrap fits
- 08Seventeen reproducible project figures and complete retained evidence
- 0997-page project report in PDF and editable Word formats
- 1012-page setup and usage guide in PDF and editable Word formats
- 1145 annotated references and two attributed literature figures
- 1214 automated tests with 99.11 percent branch-aware coverage
Project record
No information is collected on this page.
- Permanent project ID
- GP-MA-1T4TGVZ
- Catalogued
- 21 Aug 2026
- Completed
- 28 Aug 2026
- Verified
- 28 Aug 2026
- Demonstration
- Included in repository
Handover
After purchase
- 01Payment is confirmed
The project is marked unavailable and cannot be purchased again.
- 02Repository access is granted
The buyer's submitted GitHub account receives access to the private repository.
- 03The purchase record is delivered
The certification sheet is prepared from the reviewed buyer details and sent privately by email.