How do I discretize this nonlinear differential equation using standard finite difference approach?

62 Views Asked by At

I am trying to discretize a nonlinear differential equation using central finite-difference $$\frac{∂A}{∂t}=\frac{∂^2 A}{∂y^2} +\frac{∂}{∂y} \Biggl(\frac{A+k}{B+r}\Biggl)\frac{∂B}{∂y} \tag1$$
if $$A=f(B,y,t)$$ we introduce a rectangular mesh of points $(i∆y,j∆t)$ in the channel $[0,1]$ with $0=y_0<y_1<⋯y_n=1$ and $0=t_0<t_1<t_2<⋯$ and having a uniform mesh along both axes of $∆y=y_{i+1}-y_i$ and $∆t=t_{j+1}-t_j=\frac{1}{N}$. Using a popular standard-order central difference scheme by Sincovec and Madsen (1975) for the term $$\frac{∂}{∂y} \biggl(\frac{A+k}{B+r}\biggr)\frac{∂B}{∂y}$$ I arrived at \begin{multline}\frac{∂}{∂y} \biggl(\frac{A+k}{B+r}\biggr)\frac{∂B}{∂y}\\=\frac{1}{y_{i+\frac12}-y_{i-\frac12}}\Biggl(\biggl(\frac{A+k}{B+r}\biggr)_{i+\frac12}\frac{B_{i+1}-B_i}{∆y}-\biggl(\frac{A+k}{B+r}\biggr)_{i-\frac12}\frac{B_i-B_{i-1}}{∆y}\Biggr)\tag2 \end{multline} where $$B_i=B(y_i,t)$$ $$B_{i+\frac{1}{2}}=\frac {B_{i+1}+B_i }{2}$$ $$y_{i+\frac12}=\frac {y_{i+1}+y_i }{2}$$ $$\biggl(\frac{A+k}{B+r}\biggr)_{i+\frac12}=f(B_{i+(1/2)},y_{i+\frac12},t)$$ How do I deal with the Quotient $\frac{A+k}{B+r}$ by expanding equation (2)?