$$ u_t = \nabla \cdot (k(u) \nabla u) $$
I have read some posts on FDM for $k=k(x)$. How does the method extend in the non-linear case: $k = k(u)$.
I have attempted the following: \begin{align*} \frac{\partial }{\partial x}\left( k(u) \frac{\partial u }{\partial x}\right) &= k(u) \frac{\partial^2 u}{\partial x^2} + k'(u)\left(\frac{\partial u}{\partial x} \right)^2\\ &= k(u_i)\frac{u_{i+1}-2u_i+u_{i-1}}{h^2} + k'(u_i)\left(\frac{u_{i+1}-u_{i-1}}{2h}\right)^2 \end{align*}
Is this appropriate? Please suggest some further reading. Thanks.
It is usually unwise do such splitting. $q = k(u) \frac{\partial u}{\partial x}$ is a physical quantity, usually referred to as "flux". This spatial operator usually is discretized using $$ \frac{\partial}{\partial x} \left( k(u) \frac{\partial u}{\partial x} \right) \sim \frac{q_{i+1/2} - q_{i-1/2}}{h} = \frac{k_{i+1/2} (u_{i+1} - u_i) - k_{i-1/2} (u_i - u_{i-1})}{h^2}. \tag{*} $$ One may notice resemblance with finite volume approach.
This is a second order discretization provided that $k_{i\pm1/2}$ approximates $k(u_{i\pm1/2})$ with second order. There are several ways to approximate $k_{i\pm1/2}$. Common cases include: $$k_{i+1/2} = \frac{k(u_i) + k(u_{i+1})}{2}\\ k_{i+1/2} = k\left(\frac{u_i + u_{i+1}}{2}\right)\\ k_{i+1/2} = \frac{2k(u_i) k(u_{i+1})}{k(u_i) + k(u_{i+1})}.$$ For different problems different choice for $k_{i+1/2}$ may be preferred. Choice may be done by running method against test problems with known solutions.
The (*) approximation has some good properties: