ILW-WENO: Fortran code and data for one-step improved Lax–Wendroff time discretization of WENO schemes for nonlinear degenerate parabolic equations

Published: 12 November 2026| Version 1 | DOI: 10.17632/fnhjp6vv9h.1
Contributor:
Liang Li

Description

Fortran 90 implementation of four time integrators (SSP-RK3, ILW3, classical RK4, ILW4) sharing the same mapped-WENO spatial operator of sixth or eighth order, for the porous medium equation, the Buckley–Leverett equation and strongly degenerate diffusion, in one and two space dimensions. The archive contains the source modules, 36 self-contained programs (nine benchmark examples × four schemes), the JSON files with the timings and differences reported in the paper, and the scripts that post-process the output.

Files

Steps to reproduce

The archive contains the Fortran 90 sources (src/), 36 self-contained programs (examples/), the result files (results/) and the post-processing scripts (scripts/). 1. Compile and run one of the 36 programs, for example cd examples/ex6_1/ILW3-WENO6 f90 /optimize:4 /real_size:64 ilw_ex6_1_ILW3_WENO6.f90 (Compaq/Intel Fortran) gfortran -O3 -fdefault-real-8 ilw_ex6_1_ILW3_WENO6.f90 (gfortran) The six modules are inlined and the parameters of the example are assigned in the source, so nothing else is needed. The program prints, for each grid level, the L1 and Linf errors, the convergence rate, the number of steps and the CPU time, and writes results.csv and profile.plt. 2. Alternatively, compile the six modules of src/ together and run the executable in a directory that contains input.nml; the namelist switches are idim, iorder, nq, icase, ischeme, nlev, nx0, ny0, cfl, tend, tini, pmem, ipos, ibc, kconv, sconv, iops, nsrc, ieq, epsbl, iblflux, ubcl, ubcr. 3. Table 1 of the paper: results/nine_results.json holds the number of steps, the errors and the CPU times of the four schemes on the nine examples. 4. The pointwise differences between the ILW and RK solutions quoted in the text: run scripts/diffnorm.py on the profile.plt files written by the programs. README.md describes the nine examples, the four integrators and the expected output.

Categories

Mathematics

Funders

Licence