# differential equations – (Possibly bugs? ) Wrong results provided by `DEigensystem`

I was trying `DEigensystem` with the following code:

``````DEigensystem({-u''(x) + x u'(x), DirichletCondition(u(x) == 0, True)},u(x), {x, 0, 1}, 2)
``````

And after a period of time of calculation, it returns the following results:

It surprised me that the first eigen value is a complex `Root` expression while the second one is a simple integer 10, however after a while I realized that the second solution was actually zero:
So 10 should not be the eigen value of this operator. The plot of the following code shows that every even integer is the solution of `u(1)==0` with boundary condition `u(0)==0`

``````Plot(Log@RealAbs(DSolveValue({-u''(x) + x u'(x) - (Lambda) u(x) == 0, u(0) == 0}, u(x), x) /. {C(_) :> 1, x :> 1} // Evaluate), {(Lambda), 0, 15})
``````

However, when `(Lambda)` equals to even numbers, the general solution is actually zero, and the special solution is not zero at point `x==1`:

``````Limit(DSolveValue({-u''(x) + x u'(x) - (Lambda) u(x) == 0, u(0) == 0}, u(x), x) /. {C(_) :> 1}, (Lambda) -> 10) // Simplify

(*0*)

DSolveValue({-u''(x) + x u'(x) - (Lambda) u(x) == 0, u(0) == 0} /. (Lambda) -> 10, u(x), ) /. {C(_) :> 1} // Simplify

(*(-2 E^(x^2/2) x (2895 - 2640 x^2 + 588 x^4 - 44 x^6 + x^8) +
Sqrt(2 (Pi)) (-945 + 4725 x^2 - 3150 x^4 + 630 x^6 - 45 x^8 + x^10) Erfi(x/Sqrt(2)))/7257600*)

% /. x -> 1

(*(-1600 Sqrt(E) + 1216 Sqrt(2 (Pi)) Erfi(1/Sqrt(2)))/7257600*)
``````

So my question is: How to get the right `DEigensystem` result of the operator above automatically? By the way, all of the codes give the same result in version 12.1, 12.2 and 12.3.