2

I am working on a "reaction-advection-diffusion" type epidemiological model using a system of partial differential equations (PDEs). From this PDE model, I would like to numerically compute the basic reproduction number (R0) to represent its relationship with the diffusion and advection terms.

I calculated R0 numerically for the ordinary differential equations (ODEs) of my model using the dominant eigenvalue of the next-generation matrix, K, which is given by enter image description here (where the matrices F and V are defined from the partial derivatives of matrices capturing the rates at which new infections occur in the infection compartments and the rates at which individuals move among the infection compartments, respectively).

Is there a method available to numerically compute R0 for PDE models? Any advice or even just a link towards a reference would be greatly appreciated.

Here is the system of PDEs: enter image description here

Nell
  • 63

1 Answers1

1

Adding area, boundary conditions and a start distribution, such models are easily solved by the NDSolve package in Mathematica.

Coding about 20 minutes, solving about 20 sec, error correction one week, nice plots about 1 week.

Learning to use Mathematica about 3 months.

For a more conventional language use matlab.

In both cases say goodby to subscripts, just combine symbols and indices (for a simple cut and paste). If you use tool {} or if you indent the lines by 4 blanks, the stackexchange browser interface prints the input as code

[copy first equation only from question2

Explicit model description by variable names instead of comments is helpful and renders obsolete any symbol index.

 NDSolveValue[  
 {D[SV[x,y,z,t],t] == BirthV[NV[t,x,y,z]]*NV[t,x,y,z] -
       DeathNV[t,x,y,z]SV[t,x,y,z] - 
       InfectionV SV[t,x,y,z]+
        Div[ DiffusionV[t,x,y,z] Grad[SV[t,x,y,z]- 
             DriftV[x,y,z,t] SV[t,x,y,z]],{x,y,z}] + NeumannCondition[???] ] ,
        ... , DirchletCondition[????]},
      { SV[x,y,z,t], ...},{t,0,1},{x,0,1},...}}
      (*consequent unique order of independent variables is important, see Drift*)
Roland F
  • 5,122
  • @ Roland F A big thank you for your response. Mathematica seems to be very useful. I was actually looking to numerically solve for R0 because I am interested in being able to represent the relationship between R0 and the advection rate (and also with the diffusion rate). I found this article: https://www.sciencedirect.com/science/article/pii/S0022247X18307030#se0090. The interesting section is Appendix A. I was wondering if the methodology is adequate considering that my system of PDEs might be a bit too complex. Perhaps there might be more suitable methods. I am quite new to this field. – Nell Jul 31 '24 at 15:35
  • The article seems to concentrate on eigensystems, proposing a Finite Elements Method. Numerical EigenSystem and DSolve methods in CAS system are not more than state of the art FEM methods on machine numerical coprocessor or even GPU level, very fast, very efficient. The advance is the interface, the algebraic environment and the imemdiate graphics control of the numerical functions produced. Your system appears to be non-linear, so only direct lattice discretization methods apply. – Roland F Jul 31 '24 at 16:14