Fisher-KPP-type models of biological invasion: Open source computational tools, key concepts and analysis
Abstract
This review provides open-access computational tools that support a range of mathematical approaches to analyse three related scalar reaction-diffusion models used to study biological invasion. Starting with the classic Fisher-Kolmogorov (Fisher-KPP) model, we illustrate how computational methods can be used to explore time-dependent partial differential equation (PDE) solutions in parallel with phase plane and regular perturbation techniques to explore invading travelling wave solutions moving with dimensionless speed . To overcome the lack of a well-defined sharp front in solutions of the Fisher-KPP model, we also review two alternative modeling approaches. The first is the Porous-Fisher model where the linear diffusion term is replaced with a degenerate nonlinear diffusion term. Using phase plane and regular perturbation methods, we explore the distinction between sharp- and smooth-fronted invading travelling waves that move with dimensionless speed . The second alternative approach is to reformulate the Fisher-KPP model as a moving boundary problem on , leading to the Fisher-Stefan model with sharp-fronted travelling wave solutions arising from a PDE model with a linear diffusion term. Time-dependent PDE solutions and phase plane methods show that travelling wave solutions of the Fisher-Stefan model can describe both biological invasion and biological recession . Open source Julia code to replicate all computational results in this review is available on GitHub; we encourage researchers to use this code directly or to adapt the code as required for more complicated models.
1 Introduction
Population biology can involve examining populations of individuals undergoing some form of migration mechanism together with a birth-death process. The combination of these two individual-level mechanisms can lead to the spatial expansion of that population in the form of moving density fronts. In certain contexts, these moving fronts are referred to as biological invasion or waves of biological colonisation. There are many biological and ecological applications in which biological invasion is important. These range from continental-scale ( km2) colonisation of human populations over thousands of years [1] (Figure 1(a)); forest-scale ( hectare) colonisation and growth of tropical rainforests over several decades [2] (Figure 1(b)); and tissue-scale (1-2 mm2) colonisation of populations of biological cells over two days [3, 4] (Figure 1(c)). As these three very disparate motivating examples indicate, the study of biological invasion, and hence the motivation to use mathematical models to explore and interrogate biological invasion, is particularly important in the field of ecology [5, 6, 7] and cell biology [9, 8]. In the field of cell biology, in particular, invasion fronts of motile and proliferative cells is important in tissue repair [10, 11, 12, 13, 14], embryonic development [15, 16, 17, 18] and disease progression, such as cancer [19, 20, 21, 22].

Continuum models of biological invasion are often extensions of the well-known Fisher-Kolmogorov (Fisher-KPP) model that was independently proposed by Fisher [23] as well as Kolmogorov, Petrovskii and Piskunov [24] in 1937,
(1) |
where is a dimensional density , is the diffusivity coefficient that is proportional to the rate at which individuals in the population undergo random, undirected migration, is a growth rate associated with the logistic source term, and is a carrying capacity density . This simple reaction–diffusion model supposes that random movement of individuals in the population corresponds to a macroscopic linear diffusion term, and that the proliferation of individuals is described by a logistic growth term. While this model was first proposed as a theoretical modelling tool in 1937, it was not until 1990 that generalisations of this model were first used to explicitly study wound healing processes where represents a density of epithelial cells that close a wound as a result of random migration and carrying capacity-limite logistic proliferation [10]. While the Fisher-KPP model involves a logistic source term, it is possible to work with a different sigmoid growth function, such as the Richards’, Gompertz or generalised logistic models [25, 26, 27].
An important feature of the Fisher-KPP model, and generalisations thereof, is the ability of these time-dependent partial differential equation (PDE) models to support travelling wave solutions. Travelling wave solutions are the long-time limit of a time-dependent solution, [28], where the time-dependent problem is posed on an infinite (or semi-infinite) domain with appropriate boundary conditions. The analysis of travelling wave solutions is a key topic within the applied mathematics literature [29, 30, 31, 32, 33, 34, 35, 36]. Within this context, the Fisher-KPP model is often viewed as a prototype model of high interest, especially in terms of senior undergraduate and graduate-level training in mathematical sciences [7, 9, 8]. While many methods of analysis have been deployed to interrogate and understand travelling wave solutions of the Fisher-KPP model, computational methods for solving the underlying time-dependent PDE model remain of central importance because travelling wave solutions arise as a long-time limit of the time-dependent solution of the nonlinear PDE model.
One well-known feature of travelling wave solutions of the Fisher-KPP model is that the travelling wave solutions are smooth, and do not have compact support as illustrated by the schematic travelling wave profile in Figure 1(d). This feature is at odds with many biological observations that involve a clear front position [37, 38]. This limitation of the Fisher-KPP model has been dealt with in two different ways. The first approach for introducing a sharp-fronted travelling wave solution is to generalise the linear diffusion term to a degenerate porous-media type nonlinear diffusivity [39, 40, 41, 42], giving rise to the Porous-Fisher model [9, 14, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49]. A second way of introducing a sharp-fronted travelling wave solution is to re-formulate the Fisher-KPP model, with linear diffusion and logistic growth, as a moving boundary model on together with a Stefan-type boundary condition at [50, 51]. This second type of generalisation has been referred to as the Fisher-Stefan model of biological invasion [52, 53, 54, 55, 56, 57, 58]. As we will show, these three relatively simple scalar reaction-diffusion models give rise to a range of interesting and partly tractable travelling wave solutions that include smooth and sharp-fronted travelling waves as illustrated in Figure 1(d)-(e). Furthermore, these models can be used to draw a distinction between invading travelling waves where is an increasing function of time at a fixed location , as well as receding travelling waves where is a decreasing function of time at a fixed location .
The aims of this review are broadly two-fold. First, we aim to provide an introduction to the well-known Fisher-KPP (Section 2) model together with details of the two lesser-known alternatives mentioned above, namely the Porous-Fisher (Section 3) and Fisher-Stefan (Section 5) models. As mentioned already, a recurring theme in our discussion will be ability of each model to describe sharp or smooth moving fronts. While all of these issues have been addressed in the literature, a feature of this review is that we will compare and contrast these three models in a single document that is accessible to graduate students and more experienced researchers alike. Second we present a series of intuitive and easy-to-use open access computational tools to generate time-dependent PDE solutions for the Fisher-KPP, Porous-Fisher and Fisher-Stefan models. Using computational tools we relate long-time PDE solutions with associated phase plane analysis and provide open access computational tools to visualise and explore the associated phase planes for travelling wave solutions of each model. We review and derive a range of various perturbation solutions that provide insight into important features of the travelling wave solutions in various asymptotic limits. Finally, we also provide, in the Appendix, another set of results for a fourth model that poses the Porous-Fisher model as a moving boundary problem which we call the Porous-Fisher-Stefan model [59, 60, 61]. Again, by providing all of our code written in the open source Julia programming language on GitHub, we aim to provide all researchers a suite of clear and practical tools to study PDE models for biological invasion that may be used directly or adapted as required.
2 Fisher-KPP model: Smooth initial conditions
Starting with the dimensional Fisher-KPP model, Equation (1), we re–scale density , time and space to give a non-dimensional PDE model,
(2) |
whose solution can be re-scaled to correspond to particular choices of dimensional parameters , and for a particular application.
Relevant boundary conditions are at and as . For convenience, all time-dependent PDE problems on considered in this review focus on initial distributions of that are concentrated near the origin. To generate numerical solutions of Equation (2) we work on a truncated domain, , where is chosen to be sufficiently large that we see clear numerical evidence of travelling wave solutions within a sufficiently long, but necessarily finite duration of time. For this study, we consider the initial condition
(3) |
where is the exponential decay rate of the initial density, is the initial maximum population density, and is an initial domain length where . For computational purposes we specify no flux boundary conditions at , noting that if is chosen to be sufficiently large the boundary condition at does not play an important role in the time-dependent solution.
To explore the time-dependent solution of Equation (2) we discretize uniformly with mesh spacing so that the location of the th mesh point is given by for . For simplicity, we will write as to represent the density at the th mesh point at time . Taking a method-of-lines approach [62, 63], we approximate the spatial derivative terms in Equation (2) using a central difference approximation to give a system of semi-discrete coupled nonlinear ordinary differential equations (ODE),
(4) |
Evaluating (3) on the finite difference mesh gives the initial condition for the solution of the semi-discrete system (4). This system of ODEs can be efficiently integrated through time to give for using the DifferentialEquations.jl package in Julia [64]. Using standard convergence tolerance options, this package implements a range of numerical methods to incorporate automatic time stepping and truncation error control; for this work we implement a standard 4–5 Runge-Kutta approximation [65].
Before presenting time-dependent solutions of the Fisher-KPP model, it is worth noting that the only parameters we specify are the initial decay rate , the initial length of the domain occupied by the density profile , and the initial maximum density . Preliminary numerical results (not shown) support the well-known results that the long-time travelling wave solutions are independent of and , so we focus on the impact of different choices of for a fixed choice of and . Results in Figure 2 show four different time-dependent solutions with different values of ; we will explain how we chose these particular values later. Results in the upper panel of Figure 2(a) correspond to where we show at with the arrow showing the direction of increasing time. The initial condition shows the initial decay of with position and the short-time solution shows the impact of the logistic growth term as the density near the origin increases. The subsequent time-dependent solutions at illustrates that the time-dependent solution approaches a constant shape wave that appears to move with constant speed. To quantify the speed of the wave, we store the solution at , and at each of the 51 time points we use linear interpolation to compute the value of so that . This computational procedure implicitly defines a function, , describing the time evolution of the position of the wave front. The lower panel of each subfigure in Figure 2 gives a scatter plot of for where we see that these points settle to a straight line with positive slope that represents the speed of the wave front during the simulation period. We quantify the speed of the front by taking late-time data, here chosen to be the last five time points (i.e. ) and fitting a straight line to this data to give an estimate of the speed of the front, .

As suggested by the computational results in Figure 2, the long-time travelling wave speed is related to the spatial decay rate of the initial condition, . It is possible to formalise this putative relationship by supposing we have as , and considering the motion of the leading edge where . Under these conditions the evolution of the leading edge can be approximated by the solution of a linear PDE [5] by writing , so that
(5) |
Assuming the long-time solution takes the form of a constant speed travelling wave with an exponentially decaying front, , where is the travelling wave speed, we substitute this solution into the linearised PDE to give
(6) |
which relates the decay rate of the initial condition to the long-time travelling wave speed, . This expression is consistent with the results in Figure 2(a)–(c), however the computational results in Figure 2(d) lead to a slower observed travelling wave speed that indicated by Equation (6). The reason for the slow than expected travelling wave in Figure 2(d) is that for , a comparison principle limits travelling wave speeds to be [66]. Furthermore, a travelling wave analysis (below) shows that the minimum travelling wave speed possible is , Therefore, for we have . Together, these conditions give a continuous piecewise relationship
(7) |
where for sufficiently large the long-time travelling wave speed is independent of the initial decay rate. This explains the results in Figure 2 where we see that slowly decaying initial conditions lead to travelling wave solutions with , whereas rapidly decaying initial conditions with lead to travelling wave solutions that eventually move with the same minimum wave speed . Equation (7) is often called the dispersion relationship.
To provide more insight into travelling wave solutions of the Fisher-KPP model, we explore the phase plane by writing the long time travelling wave solution as , where . It is important to emphasise that working in the travelling wave coordinate implicitly assumes that we are dealing with a long-time solution of the time-dependent PDE where a constant speed and constant shape travelling wave solution has developed. Under these conditions, transforming the time-dependent PDE model into the travelling wave coordinate gives
(8) |
with boundary conditions
(9) |
Note that (8)–(9) is invariant under translation in , which means that we may fix the solution by setting , for example. Exact, closed-form solutions of this boundary value problem for are unknown except for the special case of where (8) has the Painlevé property [30, 36].
To make progress, we study the solution of (8)–(9) in the phase plane, where
(10) | ||||
(11) |
At this point it is interesting to comment on the differences between studying travelling wave solutions of the Fisher-KPP model using the phase plane as opposed to considering long-time solutions of the time-dependent PDE model. As we pointed out previously, the latter involves specifying details of the initial condition, such as the decay rate , and then solving the PDE to estimate the long-time travelling wave speed as an output of this computational task. In contrast, working with the phase plane implicitly assumes that we have moved to the long–time limit where a travelling wave solution is relevant, which involves specifying the travelling wave speed as an input to this separate computational task. This means that we can visualise the phase plane for any value of that we choose, regardless of whether that value arises as a long–time output of a time–dependent PDE solution. This includes travelling wave solutions that are physically unrealistic, as we will explain and demonstrate later.
The dynamical system governing the phase plane (10)–(11) has two equilibrium points: and . Linear stability indicates that is a saddle point for all values of . The unstable and stable manifolds near the saddle point tend to straight lines passing through with slopes given by
(12) |
Linear stability analysis indicates that is a stable spiral for and a stable node for . As we shall explain, this bifurcation at shows that all physically realistic travelling wave solution to the Fisher-KPP model have .
With this information, we can now visualise various phase planes and explore the consequences of varying . Results in Figure 3 illustrate key features of the phase planes for , respectively. Trajectories in the phase planes are obtained by solving (10)–(11) numerically using DifferentialEquations.jl in Julia. The phase plane in Figure 3(a) for shows the two equilibria and a range of trajectories in blue that are included to provide visual interpretation of the full dynamical system. Each blue trajectory is a valid solution of (10)–(11), but these solutions are not relevant in the sense that they are not related to travelling wave solutions of the Fisher-KPP model since they do not satisfy the boundary conditions (9). We also show three yellow trajectories and one red trajectory. These four trajectories enter and leave the equilibrium point at along the stable and unstable manifolds and plotting these four trajectories on the phase plane makes the point that is a saddle point. The red trajectory that leaves along the unstable manifold into the fourth quadrant of the phase plane enters the origin to form a heteroclinic orbit. Of all the trajectories plotted in the phase plane, it is only this red heteroclinic orbit that has a physical interpretation in terms of the travelling wave solution since it satisfies the boundary conditions (9).

We can interpret this red heteroclinic orbit in the phase plane as a parametric curve from which we can plot and compare the shape of this curve, after applying an appropriate shift in , with a long-time solution of the time-dependent PDE. The dashed red curve in Figure 2(b) corresponds to generated in the phase plane, appropriately shifted and superimposed on the late-time PDE solution . Comparing these two curves shows that the shape of the travelling wave solution obtained from the phase plane is visually indistinguishable from the shape of the late-time PDE solution on this scale. Indeed, each upper panel in the four subplots in Figure 2 compares the shape of a late-time PDE solution with the shape of , appropriately shifted, obtained from the phase plane for the corresponding value of .
Results in Figure 3(b) shows a similar phase plane, together with many illustrative blue solution trajectories and the three yellow and one red solution trajectory for . Linear stability indicates that the solution of (10)–(11) locally near the origin bifurcates at since the origin is a stable node for and a stable spiral for . The borderline case of , shown in Figure 3(b) indicates that the heteroclinic orbit enters the origin with as . Taking the shape of the solution from the phase plane, shifting this profile and superimposing on the late-time PDE solutions in Figure 2(c)–(d) shows that the shape of the wave obtained from the phase plane is visually indistinguishable from these two late-time PDE solutions that evolved from different initial conditions.
The phase plane in Figure 2(c) for shows similar features to the two previous phase planes with the exception that we now see the solution of (10)–(11) spirals into the origin, which implies that over infinitely many subintervals for . While this trajectory is a valid solution of the dynamical system together with the boundary conditions (9), the heteroclinic orbit is not physical in the sense that it does not relate to a late-time solution of the Fisher-KPP model. Therefore, we see that from phase-plane analysis alone, we must have . Furthermore, this example makes the point we alluded to earlier that working in the phase plane allows us to specify a value of regardless of whether that value relates to a long-time output of a time-dependent PDE solution. This observation has often led researchers to discard this phase plane for , however we will revisit this question later in Section 5 when we consider the Fisher-Stefan model.
Computational explorations of the time-dependent solutions of the Fisher-KPP model, along with our leading edge and phase plane analysis confirm that travelling wave solutions of the Fisher-KPP model involve . We will now show that it is possible to develop some mathematical insight into the shape of these travelling waves in the limit by following Canosa [28]. Introducing the change of coordinates allows us to re-write Equation (8) as
(13) |
with boundary conditions
(14) |
Identifying the small parameter and assuming the solution can be written as a regular perturbation expansion [67]
(15) |
we substitute this expansion into (13) to give
(16) | ||||
(17) |
whose solutions, and , can be written in terms of the original independent variable as
(18) | ||||
(19) |
With these expressions for and , we now have a two-term perturbation solution that provides insight into how the shape of the travelling wave solution relates to the travelling wave speed . Profiles in Figure 4(a) compare the leading order solution , and the two-term perturbation solution with a late-time solution of the time-dependent PDE for . In this case we see that the leading order solution provides a very good approximation of the full travelling wave solution since the differences between the numerical result and the perturbation solution barely evident at this scale. Further, we see that the two-term perturbation solution is visually indistinguishable from the numerical solution at this scale. Profiles in Figure 4(b) are for the minimum travelling wave speed, , where again we see that the two-term perturbation solution accurately matches the numerical result. The fact that the perturbation solution performs very well for the minimum travelling wave speed illustrates how useful perturbation solutions can be as we are unable to obtain closed form exact solutions for arbitrary values of , yet these approximate solutions valid in the limit that turn out to be relatively accurate for just .

More generally, our perturbation solution provides insight into the relationship between the shape of the travelling wave solution and the speed of the wave, . For example, evaluating the perturbation solution at gives
(20) |
indicating that the faster the travelling wave speed, the flatter the shape of the wave since we have as [9].
3 Porous-Fisher model: Smooth initial conditions
As explained in Section 2, one of the limitations of travelling wave solutions of the Fisher-KPP model is that they are smooth with for all , which means that it is difficult to unambiguously identify the precise position of the leading edge of the moving front. This is a challenge because experimental observations often lead to clearly defined sharp fronts that are incompatible with this feature of the Fisher-KPP model [11, 12, 42]. As such, considerable effort has been spent in developing and understanding alternative reaction-diffusion models that lead to travelling wave solutions with compact support so that these solutions can be used to clearly identify the position of the moving front. Possibly the most common approach is to work with the Porous-Fisher model, which can be written in non-dimensional form as
(21) |
with at and as . The key difference is that the linear diffusion flux in the Fisher-KPP model is replaced with a degenerate nonlinear diffusive flux so that vanishes when [39, 41, 49]. For numerical purposes, we will replace the far-field condition with at , where the value of is chosen to be sufficiently large so that this does not affect our numerical solution. We will consider the same initial condition as for the Fisher-KPP model, namely (3). To explore time-dependent solutions of the Porous-Fisher model we discretise Equation (21) on the same equally-spaced finite difference mesh to give,
(22) |
which can be integrated through time using the same Julia package as for the Fisher-KPP model. The inputs into these time-dependent PDE solutions are the parameters governing the initial condition , and ; long-time PDE solutions can be used to estimate the travelling wave speed, . Again, as for the Fisher-KPP model, preliminary explorations (now shown) indicate that depends upon , but is independent of and .
Results in Figure 5 illustrate time-dependent solutions of the Porous-Fisher model with the initial condition given by Equation (3) with . In each case, we see the eventual formation of a constant speed, constant shape travelling wave. Using the same approach as for the Fisher-KPP model, we trace the evolution of , where , to generate a time series of data which eventually falls on a straight line with a positive slope. Fitting a straight line regression model to the last five points in this time series gives us an estimate of . Details of the data and the straight line regression plot are not shown here as they look almost identical to those shown in Figure 2 for the Fisher-KPP model. More information can be obtained by exploring the time-dependent PDE codes available on GitHub.

An important point illustrated by the time-dependent PDE solutions in Figure 5 is that solutions with sufficiently slow initial decay rates lead to fast, smooth-fronted travelling wave solutions that qualitatively resemble travelling wave solutions to the Fisher-KPP model in Figure 2. Later in this Section we will provide a mathematical explanation of this observation. On the other hand, highlighted in Figure 5(d) is that the smooth initial condition with a sufficiently fast exponential decay appears to evolve into a sharp-fronted travelling wave with a well-defined front position. This is a very different outcome to the Fisher-KPP case and may be interpreted as a favourable feature in terms of mathematical modelling. We will investigate the sharp-fronted solution later when we explore these travelling wave solutions in the phase plane, and then provide a more detailed explanation of these results in Section 4.
From a numerical point of view it is worth noting that results in Figures 2 and 3 are obtained on the same domain, , but we have used a much finer discretisation to explore time-dependent solutions of the Porous-Fisher model. Our explorations (not shown) indicate that smooth-fronted solutions of the Porous-Fisher model and the Fisher-KPP model can be obtained using a relatively coarse discretisation (e.g. ) leading to grid-independent results when plotted on this scale. The situation is different, however, with the apparent sharp-fronted solution of the Porous-Fisher model in Figure 3(d) where we require a much finer numerical discretisation to accurately resolve the shape of the leading edge of the travelling wave, and to provide an accurate estimate of . Therefore, unlike the Fisher-KPP model where we find that it is possible to make an appropriate choice of so that the numerical algorithm performs reasonably well for a range of values, much greater care needs to be exercised when solving the Porous-Fisher model numerically because the possibility of sharp-fronted solutions requires much finer resolution. For simplicity, all results in Figure 5 are generated with a much finer mesh resolution than the results in Figure 2 for the Fisher-KPP model. We encourage the reader to explore the impact of choosing different values of using the code provided as it is straightforward to show that smooth travelling wave solutions of the Porous-Fisher model can be very accurate with a much coarser mesh.
Just as we did for the smooth-fronted travelling wave solutions of the Fisher-KPP model, it is possible to relate the long-time travelling wave speed to the decay rate of the initial condition for smooth-fronted travelling wave solutions of the Porous-Fisher model. Supposing we have as for , we can examine the motion of the leading edge by writing so that
(23) |
If the travelling wave solution of (21) takes the form , substituting this solution into the linearised PDE (23) gives the dispersion relationship for the Porous-Fisher model
(24) |
which is consistent with the smooth-fronted travelling wave solutions presented in Figure 5(a)–(c).
Unlike the Fisher-KPP model, the minimum travelling wave speed for travelling wave solutions of the Porous-Fisher model cannot be determined solely by examining the dispersion relationship and we now turn to the phase plane by writing the long-time travelling wave solution as , where . Transforming the time-dependent PDE model into the travelling-wave coordinate gives
(25) |
with boundary conditions
(26) |
As for travelling wave solutions of the Fisher-KPP model, it is not obvious how to solve Equation (25) for arbitrary values of , so we study the solution of this boundary value problem in the phase plane where we have [9]
(27) | ||||
(28) |
This dynamical system is singular when . The singularity can be removed by introducing a transformed independent variable that we write implicitly as [9]
(29) |
which gives a de-singularised system
(30) | ||||
(31) |
This desingularised phase plane is has three equilibria: , and . Linear stability analysis indicates that both and are saddle points for all values of , while the origin is a stable nonlinear node. Similar to the Fisher-KPP model, smooth travelling waves are associated with a heteroclinic orbit between and , but we now have the possibility of a sharp-fronted heteroclinic orbit between and . In this case the heteroclinic orbit terminates at meaning that the contact point, where , has a finite negative slope for .
Computationally-generated phase planes with various trajectories highlighted are given in Figure 6 for key choices of . The phase plane in Figure 6(a) for shows a range of blue trajectories obtained by solving (30)–(31) numerically using codes provided on GitHub. These blue trajectories provide a visual picture of the phase plane within the vicinity of the three equilibrium points. The phase plane also includes seven yellow trajectories that either enter or leave and along the associated unstable and stable manifolds of these saddle node points. Finally, in red we show the heteroclinic orbit leaving along the unstable manifold into the fourth quadrant of the phase plane, eventually entering the origin. This heteroclinic orbit corresponds to the smooth travelling wave solution in Figure 5(c).

Exploring various phase planes by gradually reducing indicates that smooth travelling wave solutions, corresponding to a heteroclinic orbit between and , persist until we reach some critical value of where, as the equilibrium point at moves up the -axis, it becomes possible to have a straight-line heteroclinic orbit between and , as illustrated in Figure 6(b). The straight-line heteroclinic orbit, , can be substituted into (30)–(31) to show that the corresponding special travelling wave speed is [9]. This orbit corresponds to a sharp-fronted travelling wave solution like the results we obtained numerically in Figure 5(d). Since we now have a mathematical expression for the straight line heteroclinic orbit in the phase plane, we can give a closed-form expression for this special sharp-fronted solution
(32) |
where this solution has been arbitrarily shifted so the position of the front is . This solution is significant because, unlike the Fisher-KPP model, the Porous-Fisher model leads to travelling wave solutions with a natural front position meaning that this feature can be used to match with experimental observations more easily than working with a smooth–fronted travelling wave solution [14, 47]. To complete the picture, Figure 6(c) shows a phase plane and associated trajectories for where we now see that there is no longer any possibility of a heteroclinic orbit, indicating that is the minimum travelling wave speed for the Porous-Fisher model.
For smooth-fronted travelling wave solutions with we can numerically integrate (30)–(31) to give numerical estimates of the trajectory in the phase plane. This trajectory can be interpreted as a parameterised curve with parameter . Our numerical algorithms on GitHub solve for and , recording values of these quantities at equally-spaced intervals of , with spacing . To compare our numerical estimate of with numerical solutions of the full time-dependent PDE model in Figure 5 we use (29) to relate and , noting that
(33) |
can be evaluated numerically to give a relationship between and . Since we store values of at equally-spaced intervals of , it is straightforward to compute by applying the trapezoid rule to evaluate the integral in (33). While other quadrature methods could be implemented, our approach is simple to implement, and leads to estimates of that, after appropriate shifting, compare well with various late-time PDE solutions. Each smooth-fronted time-dependent PDE solution in Figure 5(a)–(c) includes a dashed red line superimposed on . These dashed red lines correspond to the appropriately shifted profile obtained from the phase planes; we see that the shape of the travelling wave solution from the time-dependent PDE solution is visually indistinguishable from the profile obtained using the phase plane trajectories. The result in Figure 5(d) for the sharp-fronted travelling wave moving with the minimum travelling wave speed compares the late time PDE solution with the shifted exact solution, Equation (32). Again, as for the smooth-fronted travelling wave solutions, here we see that the time-dependent PDE solutions at late time are visually indistinguishable, at least at this scale, from the exact phase plane result.
To conclude this investigation into travelling wave solutions of the Porous-Fisher model evolving from smooth initial conditions, we now develop approximate perturbation solutions to describe the shape of smooth-fronted travelling wave solutions in the limit . Introducing the change of coordinates, , gives
(34) |
with boundary conditions
(35) |
Treating as a small parameter, we assume that the solution can be written as
(36) |
Substituting this expansion into (34) gives
(37) | ||||
(38) |
whose solutions, and can be written in terms of the original independent variable as,
(39) | ||||
(40) |
These expressions give a two-term perturbation solution which provides insight into how the shape of the travelling wave solution relates to , as we will now explore.
Profiles in Figure 7(a) compare the leading order solution , and the two-term perturbation solution with a late-time solution of the time-dependent PDE for . As for the Fisher-KPP model, we see that the leading order solution provides a good approximation of the numerical solution of the full problem. It is useful to recall that travelling wave solutions of the Fisher-KPP model are restricted to and in Figure 4(b) we saw that a large asymptotic approximation performed well, even for . With the Porous-Fisher model we have smooth travelling wave solutions for which means we can explore the accuracy of a large asymptotic approximation for even smaller values of than was possible with the Fisher-KPP model. Profiles in Figure 7(b) for illustrate that the solution is visually-distinct from the full time-dependent solution whereas the two term solution gives a reasonably accurate approximation of the shape of the wave, which is remarkable given that we have and the perturbation approximation is valid for .

It is insightful to note that the term in the large perturbation solution is identical for the Fisher-KPP and Porous-Fisher models. There are several inferences that can be drawn from this observation. First, we have the same qualitative relationship between the shape and speed of the travelling wave, namely the faster the travelling wave the flatter the shape of the travelling wave for sufficiently large for both models. Second, this indicates that the shape of a fast-moving travelling wave is primarily determined by the source term in the PDE model rather than the flux term because the influence of the diffusive flux term arises as a correction term whereas the proliferation mechanism controls the leading order features. This is biologically insightful because while both diffusion and a source term are required to form a travelling wave solution, it is the proliferation term that largely controls the shape of the travelling wave [16].
4 Fisher-KPP and Porous-Fisher models: Initial conditions with compact support
All time-dependent PDE solutions considered in Sections 2–3 are mathematically convenient since they have as for . This means that the initial conditions shown in Figures 2 and 5 are smooth with for all . This form of initial condition allows us derive a dispersion relationship that relates the exponential decay rate to the long-time travelling wave speed , and our time-dependent PDE solutions in Figures 2 and 5 are consistent with the dispersion relationship in both cases. This approach, however, is not always preferred since real applications of biological invasion are unlikely to involve an initial distribution that decays exponentially with position [3, 1]. An alternative approach is to consider an initial condition of the form
(41) |
which is far more practical because it models some initial region that is occupied at density , that is adjacent to another region, , which is completely vacant with . This is precisely the kind of initial condition that is used in the case of applications in cell biology, such as modelling scratch assay experiments [14, 16, 11, 12].
Using our time-dependent PDE algorithms we can confirm that long-time shape and speed of the Fisher-KPP and Porous-Fisher solution profiles with the initial condition (41) are independent of the choice of and (not shown). For example, typical time-dependent solutions are shown in Figure 8 where we see that the long-time travelling wave solution of the Fisher-KPP model evolves to the travelling wave solution with the minimum wave speed , while the long time travelling wave solution of the Porous-Fisher model also evolves to the travelling wave solution with the minimum wave speed with .

It is useful to know that travelling wave solutions evolving from initial conditions with compact support lead to travelling wave solutions with the minimum wave speed. For the Fisher-KPP model this is consistent with the observation that (41) can be interpreted as taking in (3) which leads to . The situation for the Porous-Fisher model is more subtle, as we now explain. The results in Figure 5 for the Porous-Fisher model involve for all , leading to time-dependent solutions that, despite the apparent sharp front in Figure 5(d) strictly speaking all have at all and . This is different to the situation in Figure 8(b), where we have for and for . In this case, the initial condition with compact support leads to a genuine sharp-fronted time-dependent solution that evolves to the sharp-fronted travelling wave (32). Therefore, strictly speaking the results in Figure 8(b) are the only initial conditions considered so far where there is a clear front position, and the time-dependent solution in Figure 8(b) is the only time-dependent PDE solution where the clear front position persists for . The case in Figure 5(d) where at all is very interesting because we do not expect to have a time-dependent solution with compact support; we do, however, see the formation of an apparently sharp-fronted travelling wave form at late time, and this travelling wave has the same speed and shape as the minimum speed sharp-front solution (32). This observation turns out to be a computational artefact arising because of finite precision arithmetic where the far-field values of the initial condition, , are eventually truncated to zero for sufficiently large values of , thereby effectively turning the smooth initial condition into one with compact support.
5 Fisher-Stefan model
The second approach to model travelling wave solutions with a well-defined front is to consider the Fisher-Stefan model [52, 53, 54, 55, 56, 57, 58] that is obtained by re-formulating the usual Fisher-KPP model as a moving boundary problem:
(42) |
with at and . Here the sharp-front at the leading edge arises because of the homogeneous Dirichlet boundary condition. In the moving boundary framework, the position of the leading edge is explicitly determined as part of the solution and evolves according to a one-phase Stefan condition
(43) |
This boundary condition involves specifying a constant, , so that the velocity of the moving front is determined by both the choice of and at the moving front. In the heat and mass transfer literature, the constant is related to the Stefan number [50, 51]. All travelling wave solutions of the Fisher–Stefan problem are sharp–fronted, and there is no longer have the possibility of having smooth travelling wave solutions with this modelling framework.
Another point of interest is that the Fisher-KPP and Porous-Fisher models with initial conditions of the form (3) always lead to invading travelling wave solutions ). In contrast, we will demonstrate that the Fisher-Stefan model supports both invading travelling wave solutions by setting and receding travelling waves by setting . For the special case of , the Fisher-Stefan model leads to a stationary wave with [54]. This flexibility in modelling biological invasion and recession is not possible with the Fisher-KPP or Porous-Fisher models. One interpretation of this difference is that the Fisher-Stefan model allows us to model a wider range of biologically plausible outcomes than either the Fisher-KPP or Porous-Fisher models [54, 57].
It is worth noting that previous research has established various properties of the solution of the Fisher-Stefan model, such as existence and uniqueness [52, 53], as well as stability considerations [58]. Our approach, as demonstrated for the Fisher-KPP and Porous-Fisher models in Section 2–4, is to focus on using computational methods to explore time-dependent PDE solutions with the view to studying long-time travelling wave behaviour using a mixture of computational, phase plane and perturbation methods [54, 57, 56]. To illustrate our approach, we begin by solving Equation (42) numerically by specifying initial condition of the form
(44) |
for some choice of . The first step is to transform the moving boundary problem to a fixed domain by writing , giving
(45) |
with at and , and
(46) |
To solve the time-dependent PDE problem we employ a uniform discretisation of with grid spacing . Applying central difference approximations gives
(47) |
which is closed by discretising the moving boundary condition
(48) |
noting that because of the homogeneous Dirichlet boundary condition at . Integrating these coupled nonlinear ODEs using DifferentialEquations.jl leads to time-dependent PDE solutions shown in Figure 9, each with and .

Simulations in Figure 9(a)–(b) for lead to constant-speed, constant shape invading travelling wave solutions moving in the positive -direction. The travelling wave speed of these solutions can be estimated numerically like we did in Figure 2 by tracking the position of some density contour and using regression. Since the Fisher-Stefan model is a moving boundary problem, there is a more obvious second approach to determine as we can use our numerical estimates of and to evaluate Equation (48) to give a direct estimate of without needing to use front tracking and regression. Using this approach at indicates that settles to a constant speed that agrees very well with the result obtained by front tracking and regression (not shown). In this Section we simply report estimates of by evaluating (48) using late-time data. The two invading solutions in Figure 9(a)–(b) indicate that appears to increase with ; we will formalise the relationship between these quantities later when we turn to the phase plane. Interestingly, we have for and for , indicating that these two travelling wave speeds are slower than the minimum travelling wave speed for the Fisher-KPP or Porous-Fisher models. Results in Figure 9(c)–(d) for lead to receding travelling wave solutions with . Overall, we see that is an increasing function of regardless of whether there is an invading or receding travelling wave; again we note that modelling biological recession is simply not possible using the Fisher-KPP or Porous-Fisher models, whereas in the moving boundary framework it is straightforward to model biological recession.
It is very interesting that travelling wave solutions of the Fisher-Stefan PDE model involve the same dynamical system as the Fisher-KPP model, namely
(49) | ||||
(50) |
which we have already established has two equilibrium points and , where is a saddle point for all values of . We have previously established that the origin is a stable spiral for , but we can anticipate from the time-dependent PDE solutions in Figure 9 that the origin of the phase plane plays no role in these travelling wave solutions since the leading edge of the travelling wave has a negative finite slope, whereas a heteroclinic orbit entering the origin would have zero slope as . We will now explore some specific phase planes to provide additional insight.
Results in Figure 10 present numerically-generated phase plane trajectories for and . The upper panel in each subfigure shows the phase plane with the two equilibrium points highlighted, and special yellow trajectories entering and leaving the equilibrium point along the stable and unstable manifolds. Each phase plane shows a red trajectory leaving the equilibrium point along the unstable manifold into the fourth quadrant of the phase plane until it eventually intersects with the -avis at a special point which we highlight using a green square. The trajectory between and corresponds to the travelling wave solution; we have chosen to terminate this trajectory at the point where it intersects with the -axis. Of course, since , we know from linear stability analysis that the trajectory will eventually spiral into the origin but we do not show this here as this part of the trajectory is not associated with the travelling wave solution from the time-dependent PDE model.

To develop analytical insight into these travelling waves, we re-write (49)–(50) as a single differential equation that directly describes the shape of the trajectory in the phase plane,
(51) |
While we are unable to solve (51) to give a general expression for for arbitrary values of , we can solve for in the special case [68]. Our approach will be to use this result to construct a perturbation solution of the form
(52) |
Substituting (52) into (51) gives
(53) | ||||
(54) |
which can be solved to give
(55) | ||||
(56) |
We choose the negative term in (55) since our numerical phase plane trajectories in Figure 10 involve . Therefore, (56) is relevant for the negative square root in (55). We now have a two–term approximation describing the trajectory in the phase plane for . To illustrate how this approximation performs we superimpose plots of in each phase plane in Figure 10 where we see that this approximate solution is visually indistinguishable from the full numerical solution of the dynamical system for . In contrast, for we see a small difference between the perturbation solution and the full numerically–generated trajectory, as we might expect.
To explore the relationship between and , we evaluate our two-term perturbation expression at to derive an expression for . Substituting this expression into the moving boundary condition
(57) |
gives a relationship between and , noting that as . Rearranging this expression gives
(58) |
confirming that increases with for both slowly invading and receding travelling wave solutions with .
It is interesting to note that we have made analytic progress for slow travelling wave solutions by developing approximate expressions for certain trajectories in the phase plane rather than working directly to obtain approximate expressions for like we were able to do for fast travelling wave solutions of the Fisher-KPP and Porous-Fisher models when . Our approach here of working in the phase plane is advantageous since we are able to use these perturbation solutions to derive an expression relating to through the moving boundary condition. To compare the shape of the travelling wave solution with our time-dependent PDE solutions, we take our numerical estimates of and recall that by definition. Integrating this ODE numerically, again using the trapezoid rule, provides us with estimates of . This approach can be used to determine either using the numerically generated phase plane trajectory for any value of or the two-term perturbation approximation for . Using this approach we computed , and compared the two profiles in the lower panel of each subfigure in Figure 10. Here we see that the perturbation approach leads to very accurate profiles of for . We also note that the late-time PDE solutions in Figure 8 are superimposed with red dashed curves that are indistinguishable from the late-time PDE solution. These red dashed curves are obtained by generating the phase plane for the approximate value of and using the trajectory in the phase plane to estimate the curve in the same way as described here.
Numerical simulations of time-dependent PDE solutions in Figure 10(c)–(d) show PDE solutions with that lead to receding travelling wave solutions with . The shape of the trajectories in the phase plane are given by Equation (51), which has the property that as , suggesting that the relevant phase plane trajectories approach a straight line as . For this limiting straight line trajectory we have , indicating that as . Note that for , instead of evolving to a travelling wave profile, the time-dependent solution of (42)–(43) may undergo a form of finite-time blow-up [69], which is not the subject of this review.
To explore the shape of the travelling wave solution as we consider
(59) |
which is singular as and motivates us to consider a matched asymptotic expansion [67] treating as a small parameter. The boundary conditions for this problem are and as . Setting and solving the resulting ODE gives the outer solution
(60) |
to match the far–field boundary condition. We construct the inner solution near by re-scaling the independent variable , giving
(61) |
Treating as a small parameter, we seek a perturbation solution of the form , giving
(62) | |||
(63) |
The solution of these two boundary value problems, written in terms of the variable is
(64) | ||||
(65) |
gives us a two-term perturbation solution that directly approximates the shape of the travelling wave profile.
Recalling that as , we generate time-dependent PDE solutions, shown in Figure 11, for and . In both cases we see that the initial profile forms a receding travelling wave with a steep boundary layer forming near . In each figure we plot a late-time solution, focussing in on the shape of the leading edge over the interval and compare the shape of the receding travelling wave generated by the time-dependent PDE solver with our two-term perturbation solution. As expected, we see some small discrepancy between the profiles when , but the numerical and perturbation results are visually indistinguishable, at this scale, for . The accuracy of the two-term matched asymptotic perturbation solution in Figure 11(b) is remarkable given that this approximation is valid in the limit and yet we find it provides a reasonable approximation for just .

In addition to providing an understanding of the shape of fast receding travelling wave solutions, our perturbation solutions also provide insight into the relationship between and as . For all travelling wave solutions we have , and as we can estimate using our perturbation solutions by evaluating at by differentiating our expressions for and with respect to and evaluating the resulting expressions at , giving
(66) |
which shows precisely how relates to as . These results for correspond to . Time-dependent PDE solutions can be generated for , but in this case we see the formation of receding fronts that appear to accelerate in the negative -direction rather than settle to a constant speed travelling wave solution [69].
Before concluding our discussion about the Fisher-Stefan model it is insightful to note that using both the time-dependent PDE model and phase plane tools provides us with opportunities to independently check the accuracy of our numerical algorithms. For example, generating the time-dependent PDE solutions in Figure 9 involves specifying as an input and observing as an output. This process involves several different approximations since we must discretise the governing PDE, solve the resulting system of semi-discrete ODEs for a sufficiently long period of time before using the discretised boundary condition to provide estimate . For example, time-dependent solutions in Figure 9(a) involve specifying , and our estimate of is impacted by several choices we have made in implementing our numerical algorithm, such as truncation error. One way of testing the accuracy of our approximation is to repeat the calculation by re-solving the time-dependent PDE model on a finer mesh and examine how our estimate of depends upon the choice of . A different approach is to use the phase plane where we specify as an input, generate the trajectory leaving along the unstable manifold and to use this trajectory to estimate , from which we can apply the moving boundary condition, to give as an output of the phase plane calculations. To demonstrate this approach we generated the phase plane with as an input, solved for the appropriate trajectory to give , and then applied the moving boundary condition to find that , which is within 0.26% of the expected result, . This inter-code comparison is convenient since it gives us confidence that both the time-dependent PDE algorithm and the numerical phase plane algorithm are giving consistent results. In addition, if we repeat this inter-code comparison by re-solving the time-dependent PDE model with more mesh points we obtain an improved estimate of which, when used as an input into the phase plane, leads to an improved estimate of (results not shown).
Another point of interest about the Fisher-Stefan model is that our results in Figure 9 all lead to long-time travelling wave solutions. There is another possibility that we have not focused on in this review, which is motivated by the observation that the boundary condition is associated with a diffusive loss of material at , where the outward flux is . This loss of material can lead to the population going extinct and as [52, 54, 56]. These two different outcomes have given rise to what has been called the spreading-vanishing dichotomy for the Fisher-Stefan model [52, 54, 56]. The eventual growth or extinction of the initial population is governed by the diffusive loss at and the increase in mass driven by the logistic source term, and the balance of these two processes is determined by the initial length of the population, . Simple conservation arguments show that lead to spreading and long-time travelling wave behaviour, whereas leads to eventual extinction of the population. Since this review focuses on travelling wave solutions, we have intentionally focused on time-dependent PDE solutions with ; however, our time-dependent PDE codes available on GitHub can be used to explore different initial conditions leading to extinction simply by changing . Details of the analysis explaining how to arrive at the critical value of is provided in our previous work [54, 56].
6 Discussion
In this review we have presented open access computational tools written in Julia for three reaction-diffusion models of biological invasion, namely the Fisher-KPP, Porous-Fisher and Fisher-Stefan models. The first of these, the Fisher-KPP model, is very well-studied in the literature, while the latter two can be motivated in part to address certain limitations of the Fisher-KPP model, including the preference for well-defined fronts and the possibility of invading of receding populations. We anticipate that these computational tools could be used to support senior undergraduate and graduate-level teaching and learning about mathematical modelling of biological invasion. Moreover, we anticipate that the computational tools will be straightforward to adapt to other reaction-diffusion models, as required. For each PDE model we generate time-dependent solutions, paying particular attention to relate late-time PDE solutions to properties of the travelling wave phase plane. Using perturbation methods we provide mathematical insight into the shape of various travelling wave solutions in certain asymptotic limits. Using a range of computation and visualisation, we relate these approximate solutions to numerical solutions of the full PDE problems. Finally, in Appendix A, we include equivalent details for an additional model, the Porous-Fisher-Stefan model, that combined features of the Porous-Fisher and Fisher-Stefan models.
This review deliberately focuses on three important types of reaction-diffusion models of biological invasion. It is obvious that there are many opportunities for extending the material in this review. For example, we do not discuss any source terms other than logistic growth; however, it is relatively straightforward to implement different forms of sigmoid source terms in the time-dependent PDE algorithms, such as the broad family of generalised logistic source terms reviewed by Tsoularis and Wallace [26]. These modified algorithms can be used to explore how the resulting travelling wave solutions and their interpretation in the phase plane. Another clear restriction in this review is that we only consider nonlinear degenerate diffusion of the form , whereas others have considered a more general terms such as for some exponent [10, 3, 42]. Both of these generalisations can be explored by adapting the open source computational tools provided as part of this review.
A more mathematically challenging but biologically realistic extension of the work covered in this review is to relax the constraint of focusing on scalar reaction–diffusion models. Working with coupled problems, sometimes called multispecies models, brings new opportunities for developing more realistic mathematical models as real applications of biological invasions typically involve interactions of multiple subpopulations. Multispecies models have been formulated and analysed from the point of view of considering general interactions between different subpopulations [70] as well as more specific models of biological processes such as trophoblast invasion during pregnancy [71], malignant invasion into surrounding tissues [19, 22] and many more. Such multi-species models can be formulated either as classical PDE problems that directly generalise the Fisher-KPP model [72] or as multi-species analogues of moving boundary problems similar to the Fisher-Stefan model [73]. While extending the computational tools provide here for solving time-dependent PDE models is relatively straightforward for multispecies models, our ability to extend the phase plane tools becomes limited. For example, travelling wave solutions arising in a two–species reaction–diffusion model of biological invasion typically leads to a four-dimensional phase space problem which is far more difficult to analyse as a dynamical system and more challenging to visualise than types of simpler phase planes explored here.
Acknowledgements Key algorithms used to generate results are available on GitHub. This work is supported by the Australian Research Council (DP230100025).
7 Appendix: Porous–Fisher–Stefan model
As we point out in the main document, two common approaches for developing simple reaction-diffusion models that lead to sharp-fronted travelling waves are to either introduce a degenerate nonlinear diffusion mechanism into the classical Fisher-KPP model or to re-formulate the Fisher-KPP model as a moving boundary problem. Interestingly, it is also possible to combine both of these approaches by reformulating the Porous-Fisher model as a moving boundary problem,
(67) |
with at and . As for the Fisher-Stefan model we have a moving boundary problem where is determined as part of the solution by specifying [59]
(68) |
This model has been referred to as the Porous-Fisher-Stefan model [59] Similar to the Fisher-Stefan model, here the moving boundary condition involves specifying a constant that determines the velocity of the leading edge. The Porous-Fisher-Stefan model is closely related to both the Porous-Fisher and Fisher-Stefan models; accordingly our analysis of travelling wave solutions of the Porous-Fisher-Stefan model will borrow ideas previously employed for the Porous-Fisher and Fisher-Stefan models. As we will show later, as the velocity of the moving boundary in the Porous-Fisher-Stefan model is finite, (68) implies that the gradient of the density profile, , must be infinite at the leading edge as we have .
To explore time-dependent solutions of the Porous-Fisher-Stefan model, we introduce a transformed variable , for , which gives
(69) |
with at and . Re-writing the time-dependent PDE in terms of may, at first, seem unhelpful since the PDE is re-cast in an unfamiliar form that cannot be written as a standard conservation PDE. The benefit of working in the variable becomes clear when we consider the moving boundary condition
(70) |
which avoids the indeterminate form in (68) for the original variable. To solve the moving boundary problem for numerically, we first transform to the fixed boundary by writing which gives
(71) |
with at and . In the fixed-domain coordinates we have
(72) |
To solve the time-dependent PDE problem we consider a uniform discretisation of with grid spacing . Applying central difference approximations gives
(73) |
which is closed by specifying
(74) |
noting that by definition. This system of coupled nonlinear ODEs can be integrated through time using DifferentialEquations.jl to give estimates of and . Recalling that , we can plot the solution in terms of . Note that the appropriate boundary condition on the moving boundary is to enforce . Computationally, however, it necessary to approximate this as , with otherwise the discretised system of ODEs does not evolve with time. All numerical results in Figure 12 are obtained by setting . These time-dependent PDE results are reminiscent of those in Figure 9 for the Fisher-Stefan problem as we see a series of sharp-fronted moving fronts that, in the long-time limit, approach a constant-speed and constant-shape travelling wave. Moreover, we see that setting leads to invading travelling waves with , whereas setting we obtain receding travelling wave with .

To study the travelling wave solutions of the Porous-Fisher-Stefan model we turn to the phase plane. Working in the travelling wave coordinate , we note that travelling wave solutions are invariant with respect to a translation in so we are free to choose to represent the location of the moving boundary which gives
(75) |
with boundary conditions
(76) |
We explore solutions to this boundary value problem by considering the phase plane
(77) | ||||
(78) |
which is equivalent to the dynamical system for travelling wave solutions of the Porous-Fisher model written in terms of the variables instead of the usual variables like we had in Section 3. We are unable to find exact solutions of (77)-(78) for arbitrary values of . Instead, inspired by our approach for studying travelling waves of the Fisher-Stefan model, we re-write (77)-(78) as an ODE that describes the trajectory shape , in the phase plane giving
(79) |
As noted in Section 3, travelling wave solutions of the Porous-Fisher model only occur for and our numerical exploration of time-dependent PDE solutions for the Porous-Fisher-Stefan model in Figure 12 suggests that we have travelling wave solutions with . Guided by our experience with the Fisher-Stefan model in Section 5, we note that it is possible to find an exact solution of Equation (79) for the special case of . These two observations motivate us to consider (79) in two asymptotic limits: and .
To explore solutions of Equation (79) for we expand in a regular perturbation expansion
(80) |
which, when substituted into (79) gives,
(81) | ||||
(82) |
with exact solutions
(83) | ||||
(84) |
where the integral in (84) can be evaluated using quadrature. Results in Figure 13 compare a range of phase planes and associated travelling wave profile shapes for and . The upper panel in each subfigure shows the phase plane with a numerical trajectory obtained by solving (79) using DifferentialEquations.jl in Julia. Each trajectory leaves the saddle point along the unstable manifold into the fourth quadrant, eventually intersecting the axis at a special point denoted with the green square. Each phase plane also includes a plot of the two-term perturbation solution which gives curves that are indistinguishable from the numerically-generated trajectories for whereas there is a small difference between the two trajectories for , as expected. As for the Fisher-Stefan phase plane analysis in Figure 10, we use numerical integration to construct the profile from the phase plane trajectories, and these profiles are then plotted as in the lower panel of each subfigure where we compare the shape of the travelling wave profile obtained using a numerical solution and perturbation solutions of (79).
Evaluating our two-term perturbation solution at allows us to relate and through the moving boundary condition which gives
(85) |
where . A notable feature of the phase planes in Figure 13 is that remains as . Noting that and , then as confirming that is infinite at . This property is very different to sharp-fronted solutions of the Porous-Fisher model or the Fisher-Stefan model. In both these previous cases is finite at the leading edge of the population. This is a new feature that the previous models covered in this review do not share.

For the special travelling wave speed , Equation (79) has the solution that , meaning that as . The moving boundary condition requires that the quantity is zero, and since we must have as . The leading-order behaviour of this limit can be explored by writing , for so that (79) can be written as
(86) |
Substituting a regular perturbation solution of the form
(87) |
into (86) gives,
(88) | ||||
(89) |
with exact solutions
(90) | ||||
(91) |
Results in Figure 14 explore the accuracy of this limit by generating phase planes for for where we see the numerically-generated trajectory obtained by solving (79) using DifferentialEquations.jl is visually indistinguishable from our two-term perturbation solution for , whereas we see some small discrepancy between the trajectories for . The lower panel in each subfigure compares the numerically-generated phase plane trajectories with the two-term perturbation solution in terms of the travelling wave profiles.

Evaluating our two term perturbation solution at gives
(92) |
which shows how relates to for and .
References
- [1] Steele J, Adams J, Sluckin T. 1998. Modelling paleoindian dispersals. World Archaeology. 30, 286–305. (doi:http://doi.org/10.1080/00438243.1998.9980411).
- [2] Acevedo MA, Marcano A, Fletcher Jr RJ. 2012. A diffusive logistic growth model to describe forest recovery. Ecological Modelling. 244, 13–19. (https://doi.org/10.1016/j.ecolmodel.2012.07.012).
- [3] Jin W, Shah ET, Penington CJ, McCue SW, Chopin LK, Simpson MJ. 2016. Reproducibility of scratch assays is affected by the initial degree of confluence: experiments, modelling and model selection. Journal of Theoretical Biology. 390:136–145. (https://doi.org/10.1016/j.jtbi.2015.10.040).
- [4] Simpson MJ, Murphy RJ, Maclaren OJ. 2024. Modelling count data with partial differential equations models in biology. Journal of Theoretical Biology. 580, 111732. (https://doi.org/10.1016/j.jtbi.2024.111732).
- [5] Skellam JG. 1951. Random dispersal in theoretical populations. Biometrika. 38, 196–218. (doi:http://doi.org/10.1093/biomet/38.1-2.196).
- [6] Shigesada N, Kawasaki K, Takeda Y. 1995. Modeling stratified diffusion in biological invasions. American Naturalist. 146, 229–251. (doi:http://doi.org/10.1086/285796).
- [7] Kot M. 2003. Elements of Mathematical Ecology. Cambridge University Press, Cambridge.
- [8] Edelstein-Keshet L. 2005. Mathematical Models in Biology. SIAM, Philadelphia.
- [9] Murray JD. 2002. Mathematical Biology I. An Introduction. New York: Springer.
- [10] Sherratt JA, Murray JD. 1990. Models of epidermal wound healing. Proceedings of the Royal Society of London Series B. 241, 29–36. (doi:http://doi.org/10.1098/rspb.1990.0061).
- [11] Maini PK, McElwain DLS, Leavesley DI. 2004. Traveling wave model to interpret a wound-healing cell migration assay for human peritoneal mesothelial cells. Tissue Engineering. 10, 475–482. (doi:http://doi.org/10.1089/107632704323061834).
- [12] Maini PK, McElwain DLS, Leavesley D. 2004. Travelling waves in a wound healing assay. Appied Mathematics Letters. 17, 575–580. (doi:http://doi.org/10.1016/S0893-9659(04)90128-0).
- [13] Cai AQ, Landman KA, Hughes BD. 2007. Multi-scale modeling of a wound-healing cell migration assay. Journal of Theoretical Biology. 245, 576–594. (doi:http://doi.org/10.1016/j.jtbi.2006.10.024).
- [14] Sengers BG, Please CP, Oreffo ROC. 2007. Experimental characterization and computational modelling of two-dimensional cell spreading for skeletal regeneration. Journal of Royal Society Interface. 4, 1107–1117. (doi:http://doi.org/10.1098/rsif.2007.0233).
- [15] Landman KA, Pettet GJ, Newgreen DF. 2003. Mathematical models of cell colonization of uniformly growing domains. Bulletin of Mathematical Biology. 65, 232–265. (doi:https://doi.org/10.1016/S0092-8240(02)00098-8).
- [16] Simpson MJ, Landman KA, Hughes BD, Newgreen DF. 2006. Looking inside an invasion wave of cells using continuum models: Proliferation is the key. Journal of Theroretical Biology. 243, 343–360. (doi:http://doi.org/10.1016/j.jtbi.2006.06.021).
- [17] Simpson MJ, Zhang DC, Mariani M, Landman KA, Newgreen DF. 2007. Cell proliferation drives neural crest cell invasion of the intestine. Developmental Biology. 302: 553–568. (doi:https://doi.org/10.1016/j.ydbio.2006.10.017).
- [18] Di Talia S, Vergassola M. 2022. Waves in embryonic development. Annual Review of Biophysics. 51, 327–353. (doi:http://doi.org/10.1146/annurev-biophys-111521-102500).
- [19] Gatenby RA, Gawlinski ET (1996) A reaction–diffusion model of cancer invasion. Cancer Research. 56, 5745–5753. (doi:https://aacrjournals.org/cancerres/article-pdf/56/24/5745/2462558/cr0560245745.pdf).
- [20] Perumpanani AJ, Sherratt JA, Norbury J, Byrne H. 1999. A two parameter family of travelling waves with a singular barrier arisi from the modelling of matrix mediated malignant invasion. Physica D: Nonlinear Phenomena. 126, 145–159. (doi:http://doi.org/10.1016/S0167-2789(98)00272-3).
- [21] Swanson KR, Bridge C, Murray JD, Alvord EC Jr. 2003. Virtual and real brain tumors: using mathematical modeling to quantify glioma growth and invasion. Journal of the Neurological Sciences. 216, 1–10. (doi:http://doi.org/10.1016/j.jns.2003.06.001).
- [22] Browning AP, Haridas P, Simpson MJ. 2019. A Bayesian sequential learning framework to parameterise continuum models of melanoma invasion into human skin. Bulletin of Mathematical Biology. 81, 676–698. (doi:https://doi.org/10.1007/s11538-018-0532-1).
- [23] Fisher RA. 1937. The wave of advance of advantageous genes. Annals of Eugenics. 7, 355–369. (doi:http://doi.org/10.1111/j.1469-1809.1937.tb02153.x).
- [24] Kolmogorov AN, Petrovskii IG, Piskunov NS. 1937. A study of the diffusion equation with increase in the amount of substance, and its application to a biological problem. Moscow University Mathematics Bulletin. 1, 1–26.
- [25] Richards FJ. 1959. A flexible growth function for empirical use. Journal of Experimental Biology. 10, 290-301. (doi: doi.org/10.1093/jxb/10.2.290).
- [26] Tsoularis A, Wallace J. 2002. Analysis of logistic growth models. Mathematical Biosciences. 179:21–55. (https://doi.org/10.1016/S0025-5564(02)00096-2).
- [27] Simpson MJ, Browning AP, Warne DJ, Maclaren OJ, Baker RE (2022) Parameter identifiability and model selection for sigmoid population growth models. Journal of Theoretical Biology. 535, 1100998. (doi: doi.org/10.1016/j.jtbi.2021.110998).
- [28] Canosa J. 1973. On a nonlinear diffusion equation describing population growth. IBM Journal of Research and Development. 17, 307–313. (doi:http://doi.org/10.1147/rd.174.0307).
- [29] Fife PC, McLeod JC. 1977. The approach of solutions of nonlinear diffusion equations to travelling front solutions. Archives for Rational Mechanics and Analysis. 65, 335–361. (doi:https://doi.org/10.1007/BF00250432).
- [30] Ablowitz MJ, Zeppetella A. 1979. Explicit solutions of Fisher’s equation for a special wave speed. Bulletin of Mathematical Biology 41, 835-–840. (doi:https://doi.org/10.1016/S0092-8240(79)80020-8).
- [31] Aronson DG. 1980. Density-dependent interaction–diffusion systems. In: Dynamics and modelling of reactive systems. Elsevier. 161–-176. (doi:https://doi.org/10.1016/B978-0-12-669550-2.50010-5).
- [32] Bramson M, Calderoni P, DeMasi A, Ferrari P, Lebowitz J, Schonmann RH. 1986. Microscopic selection principle for a diffusion–reaction equation. Journal of Statistical Physics. 45(5–6), 905–920. (doi:https://doi.org/10.1007/BF01020581).
- [33] van Saarloos W. 2003. Front propagation into unstable states. Physics Reports. 386(2–6), 29–222. (doi:https://doi.org/10.1016/j.physrep.2003.08.001).
- [34] Berestycki J, Brunet E, Derrida B. 2018. Exact solution and precise asymptotics of a Fisher–KPP type front. Journal of Physics A: Mathematical and Theoretical. 51, 035204. (doi.org/10.1088/1751-8121/aa899f).
- [35] Berestycki J, Brunet E, Derrida B. 2018. A new approach to computing the asymptotics of the position of Fisher-KPP fronts. Europhysics Letters. 122, 10001. (doi.org/10.1209/0295-5075/122/10001).
- [36] McCue SW, El-Hachem M, Simpson MJ. 2021. Exact sharp-fronted travelling waves of the Fisher-KPP equation. Applied Mathematics Letters. 114, 106918. (doi:https://doi.org/10.1016/j.aml.2020.106918).
- [37] Simpson MJ, Treloar KK, Binder BJ, Haridas P, Manton KJ, Leavesley DI, McElwain DLS, Baker RE. 2013. Quantifying the roles of cell motility and cell proliferation in a circular barrier assay. Journal of the Royal Society Interface. 10, 20130007. (doi:http://doi.org/10.1098/rsif.2013.0007).
- [38] Johnston ST, Shah ET, Chopin LK, McElwain DLS, Simpson MJ. 2015. Estimating cell diffusivity and cell proliferation rate by interpreting IncuCyte ZOOMTM assay data using the Fisher–Kolmogorov model. BMC Systems Biology. 9:38. (https://doi.org/10.1186/s12918-015-0182-y).
- [39] Pattle RE. 1959. Diffusion from an instantaneous point source with a concentration-dependent coefficient. The Quarterly Journal of Mechanics and Applied Mathematics. 12, 407–409. (doi.org/10.1093/qjmam/12.4.407).
- [40] Harris S. 2004. Fisher equation with density-dependent diffusion: special solutions. 37, 62–67. Journal of Physics A: Mathematical and General. (doi.org/10.1088/0305-4470/37/24/005).
- [41] Vázquez JL. 2006. The porous medium equation: Mathematical theory. Oxford University Press.
- [42] McCue SW, Jin W, Moroney TJ, Lo K-Y, Chou S-E, Simpson MJ. 2019. Hole-closing model reveals exponents for nonlinear degenerate diffusivity functions in cell biology. Physica D: Nonlinear Phenomena. 398, 130–140. (doi:https://doi.org/10.1016/j.physd.2019.06.005).
- [43] Sánchez-Garduño F, Maini PK. 1994. Existence and uniqueness of a sharp travelling wave in degenerate non-linear diffusion Fisher-KPP equations. Journal of Mathematical Biology. 33, 163–192. (doi:http://doi.org/10.1007/BF00160178).
- [44] Witelski TP. 1995. Merging traveling waves for the porous-Fisher’s equation. Applied Mathematics Letters. 8, 57–62. (doi:https://doi.org/10.1016/0893-9659(95)00047-T).
- [45] Witelski TP. 1997. Segregation and mixing in degenerate diffusion in population dynamics. Journal of Mathematical Biology. 35, 695–712. (doi:https://doi.org/10.1007/s002850050072).
- [46] Sherratt JA, Marchant BP. 1996. Non-sharp travelling wave fronts in the Fisher equation with degenerate nonlinear diffusion. Applied Mathematics Letters. 9, 33–38. (doi:http://doi.org/10.1016/0893-9659(96)00069-9).
- [47] Buenzli PR, Lanaro M, Wong C, McLaughlin MP, Allenby MC, Woodruff MA, Simpson MJ. 2020. Cell proliferation and migration explain pore bridging dynamics in 3D printed scaffolds of different pore size. Acta Biomaterialia. 114:285–295. (https://doi.org/10.1016/j.actbio.2020.07.010).
- [48] Johnston ST, Simpson MJ. 2023. Exact sharp-fronted solutions for nonlinear diffusion on evolving domains. Journal of Physics A: Mathematical and Theoretical. 56, 48LT01. (doi.org/10.1088/1751-8121/ad0699).
- [49] Simpson MJ, Murphy KM, McCue SW, Buenzli PR. 2024. Discrete and continuous mathematical models of sharp-fronted collective cell migration and invasion. Royal Society Open Science. 11: 240126. (https://doi.org/10.1098/rsos.240126).
- [50] Crank J. 1987. Free and Moving Boundary Problems. Oxford University Press, Oxford.
- [51] Gupta SC. 2017. The Classical Stefan Problem. Basic Concepts, Modelling and Analysis with Quasi-analytical Solutions and Methods. Second edition. Elsevier, Amsterdam.
- [52] Du Y, Lin Z. 2010. Spreading-vanishing dichotomy in the diffusive logistic model with a free boundary. SIAM Journal of Mathematical Analysis. 42, 377–405. (doi:http://doi.org/10.1137/090771089).
- [53] Du Y, Guo Z. 2011. Spreading-vanishing dichotomy in a diffusive logistic model with a free boundary, II. Journal of Differential Equations. 250, 4336–4366. (doi:http://doi.org/10.1016/j.jde.2011.02.011).
- [54] El-Hachem M, McCue SW, Jin W, Du Y, Simpson MJ. 2019. Revisiting the Fisher-Kolmogorov-Petrovsky-Piskunov equation to interpret the spreading-extinction dichotomy. Proceedings of the Royal Society A: Mathematical, Physical and Engineering Sciences. 475, 20190378. (doi:https://doi.org/10.1098/rspa.2019.0378).
- [55] El-Hachem M, McCue SW, Simpson MJ. 2021. Invading and receding sharp-fronted travelling waves. Bulletin of Mathematical Biology. 83, 35. (doi:https://doi.org/10.1007/s11538-021-00862-y).
- [56] Simpson MJ. 2020. Critical length for the spreading-vanishing dichotomy in higher dimensions. ANZIAM Journal. 62, 3-17. (doi:https://doi.org/10.1017/S1446181120000103).
- [57] El-Hachem M, McCue SW, Simpson MJ. 2022. Non-vanishing sharp-fronted travelling wave solutions of the Fisher-Kolmogorov model. Mathematical Medicine and Biology: A Journal of the IMA. 39: 226-250. (doi:https://doi.org/10.1093/imammb/dqac004).
- [58] Bui T, van Heijster P, Marangell R. 2024. Stability of asymptotic waves in the Fisher-Stefan equation. arXiv: 2402.10361. (https://arxiv.org/abs/2402.10361).
- [59] Fadai NT, Simpson MJ. 2020. New travelling wave solutions for the Porous-Fisher model with a moving boundary. Journal of Physics A: Mathematical and Theoretical. 53, 095601. (doi:https://doi.org/10.1088/1751-8121/ab6d3c).
- [60] Simpson MJ, Rahman N, McCue SW, Tam AKY. 2023. Survival, extinction, and interface stability in a two-phase moving boundary model of biological invasion. Physica D: Nonlinear Phenomena. 456: 133912. (doi:https://doi.org/10.1016/j.physd.2023.133912).
- [61] Simpson MJ, Rahman N, Tam AKY. 2024. Front stability of infinitely steep travelling waves in population biology. arXiv 2312.13601. (https://arxiv.org/abs/2312.13601).
- [62] Kreyszig E. 2006. Advanged engineering mathematics. Wiley.
- [63] Morton KW, Mayers DF. 2011. Numerical solution of partial differential equations. Cambridge.
- [64] Rackauckas C, Nie Q. 2017. DifferentialEquations.jl - a performant and feature-rich ecosystem for solving differential equations in Julia. Journal of Open Research Software. 5, 15. (http://doi.org/10.5334/jors.151).
- [65] Tsitouras Ch. 2011. Runge–Kutta pairs of order 5(4) satisfying only the first column simplifying assumption. Computers and Mathematics with Applications. 62, 770–775. (https://doi.org/10.1016/j.camwa.2011.06.002).
- [66] Larson DA. 1978. Transient bounsa and time-asymptotic behavior of solutions to nonlinear equations of Fisher type. SIAM Journal on Applied Mathematics. 34, 98–104. (https://doi.org/10.1137/0134008).
- [67] Murray JD. 1984. Asymptotic analysis. Springer, New York.
- [68] Witelski TP. 1994. An asymptotic solution for traveling waves of a nonlinear-diffusion Fisher’s equation. Journal of Mathematical Biology. 33, 1–16. (doi:https://doi.org/10.1007/BF00160171).
- [69] McCue SW, El-Hachem M, Simpson MJ. 2022. Traveling waves, blow-up and extinction in the Fisher-Stefan model. Studies in Applied Mathematics. 148, 964–986. (doi:https://doi.org/10.1111/sapm.12465).
- [70] Painter KJ, Sherratt JA. 2003. Modelling the movement of interacting cell populations. Journal of Theoretical Biology. 225:327–339. (https://doi.org/10.1016/S0022-5193(03)00258-3).
- [71] Landman KA, Pettet GJ (1998) Modelling the action of proteinase and inhibitor in tissue invasion. Mathematical Biosciences. 154: 23–37. (https://doi.org/10.1016/S0025-5564(98)10038-X).
- [72] Haridas P, Penington CJ, McGovern JA, McElwain DLS, Simpson MJ (2017) Quantifying rates of cell migration and cell proliferation in co-culture barrier assays reveals how skin and melanoma cells interact during melanoma spreading and invasion. Journal of Theoretical Biology. 423:13–25. (https://doi.org/10.1016/j.jtbi.2017.04.017).
- [73] El-Hachem M, McCue SW, Simpson MJ. 2020. A sharp-front moving boundary model for malignant invasion. Physica D: Nonlinear Phenomena. 412, 132639. (doi:https://doi.org/10.1016/j.physd.2020.132639).