# How can NDSolve be used to solve the heat equation as a first order system? For reasons that have not been mentioned, I have attempted to approximate the solution of heat equation with initial and boundary data as a first order system using the following code block:

``````clear[u, v, t, x, tend]
tend = 5;
pde = {D[u[t, x]t]== v[t, x], D[u[t, x], x]== v[t, x]};
bc = {u[0, x] == 1,0 - x ^ 2, v[0, x] == 0, v[t, 0.0] == 0,0,
u[t, 1.0] == 0,0};
{usol, vsol} =
NDSolveValue[{pde, bc}, {u, v}, {x, 0, 1}, {t, 0, tend},
Method -> {"PDEDiscretization" -> {"MethodOfLines",
"SpatialDiscretization" -> {"TensorProductGrid",
"MinPoints" -> 30}}}]
grflux = plot[usol[t, 0], {t, 0, tend}, PlotRange -> All,
Frame -> True]
``````

This results in a PDE being treated as a DAE, but does not give the correct answer, as evidenced by the execution of the code.
For example, a handcrafted Mathematica code that uses the MacCormak method can be easily written to approximate the first-order system's solution to DAE and obtain the correct answer. Is there a better way to position the system for Mathematica so that the DAE solver returns the correct result? 