MATLAB implementation of Wave-Front Tracking algorithm for Hughes' pedestrian flow model



The Matlab code "WFTcrowd 1.0" solves numerically a 1D system coupling a conservation law and an eikonal equation, which was introduced by R. L. Hughes in [2] to model crowd movements. The algorithm is based on the wave-front tracking method, as described in [1] and referencies therein. To launch a simulation, use the input line
> WFTcrowd(x,rho,T,epsilon);
where:
  • 'x' is the vector (of length 'n-1') of discontinuity points of the initial density (to be taken piecewise constant);
  • 'rho' is the vector (of length 'n') of values of the initial density (to be taken piecewise constant);
  • 'T'>0 is the computation time (to compute the solution in the time interval [0,T]);
  • 'epsilon'>0 is mesh size of the density discretization.

  • DOWNLOAD v1.0


    We have fixed some bugs and added an instruction computing the error in the cost balance equation [1, eq. (1.6)]. Executing the code now displays the 'cost integral balance error', which is the maximum absolute value of the error, computed over all interaction times.

    DOWNLOAD v1.1


    Example

    To solve a Riemann problem:
    > WFTcrowd(0,[0,0.9],3,1/250)


    References

    [1] P. Goatin and M. Mimault, The wave-front tracking algorithm for Hughes' model of pedestrian motion, SIAM J. Sci. Comput., 35(3) (2013), B606-B622.

    [2] R. L. Hughes, A continuum theory for the flow of pedestrians, Transpn. Res. B, 36 (2002), pp. 507-535.