program main !! This is our program use mod_ppm, only: adv1d_by_ppm, fp implicit none ! CFL = u*dt/dx < 1 real(fp), parameter :: dt = 1.0 real(fp), parameter :: dx = 5.0 real(fp), parameter :: v = 1.0 real(fp), parameter :: x = 80. real(fp), parameter :: t = (x/v)*2.0 integer, parameter :: nx = int(x/dx)+2 real(fp), dimension(nx) :: u, c, dc, ds integer :: i integer :: nt c = 0. u = v ds = dx nt = int(t/dt) do i = 0, nt c(1) = 8. write(*, "(100F6.2)") i*dt, c call adv1d_by_ppm(dt, u, c, dc, ds=ds) end do end program main