← Back to project catalogue
GP-MA-1T4TGVZMathematicsReady

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.

Fractional Diffusion Memory, Discretisation and Parameter Recovery Study project visual
GP-MA-1T4TGVZ · Mathematics
  • Python
  • NumPy
  • SciPy
  • Pandas
  • Matplotlib
  • mpmath
  • Jupyter

Software compatibility

Python 3.12 and 3.14

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

01

Fractional solver

Builds the L1 memory weights and advances the one-dimensional diffusion equation with a banded tridiagonal solve.

02

Analytical benchmark

Evaluates the Mittag-Leffler eigenmode with arbitrary precision for an independent final-time comparison.

03

Inverse solver

Fits fractional order and diffusivity to scaled synthetic observations under declared bounds.

04

Sensitivity studies

Runs noise, sensor-layout, inverse-grid, objective-surface and runtime experiments.

05

Uncertainty analysis

Uses 120 residual-bootstrap refits to retain joint parameter variation and percentile intervals.

06

Evidence builder

Writes CSV, NPZ, JSON, checksums and seventeen labelled figures from one versioned configuration.

Methodology

Project workflow

  1. 01
    Load the study

    The program reads the physical, grid, observation, inverse and experiment settings.

  2. 02
    Generate observations

    A fine-grid truth model creates forty seeded noisy values at five sensors and eight times.

  3. 03
    Verify the solver

    The implementation is compared with the independent eigenmode and across five coupled refinements.

  4. 04
    Recover parameters

    Weighted least squares estimates alpha and diffusivity on the declared inverse grid.

  5. 05
    Test sensitivity

    Noise, sensor positions, grid resolution and the full two-parameter objective surface are evaluated.

  6. 06
    Quantify 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

  1. 01Complete Python source code
  2. 02Caputo time-fractional diffusion model and implicit L1 solver
  3. 03Arbitrary-precision Mittag-Leffler benchmark
  4. 04Five-level coupled grid-convergence study
  5. 05Fractional order and diffusivity recovery from forty synthetic observations
  6. 06Objective-surface, noise, sensor-layout and inverse-grid studies
  7. 07One hundred and twenty residual-bootstrap fits
  8. 08Seventeen reproducible project figures and complete retained evidence
  9. 0997-page project report in PDF and editable Word formats
  10. 1012-page setup and usage guide in PDF and editable Word formats
  11. 1145 annotated references and two attributed literature figures
  12. 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

  1. 01
    Payment is confirmed

    The project is marked unavailable and cannot be purchased again.

  2. 02
    Repository access is granted

    The buyer's submitted GitHub account receives access to the private repository.

  3. 03
    The purchase record is delivered

    The certification sheet is prepared from the reviewed buyer details and sent privately by email.