This code works well.

DSolve[{y''[x] + 10 y'[x] == 0, y[0] == 0}, y[x], x]
    (*{{y[x] -> 1/10 E^(-10 x) (-1 + E^(10 x)) C[1]}}*)

But why mma gives warnings when I add one duplicate condition?

DSolve[{y''[x] + 10 y'[x] == 0, y[0] == 0, y[0] == 0}, y[x], x]

DSolve::bvsing: Unable to resolve some of the arbitrary constants in the general solution using the given boundary conditions. It is possible that some of the conditions have been specified at a singular point for the equation. >>

{{y[x] -> 1/10 E^(-10 x) (-1 + E^(10 x)) C[1]}}

I notice that this code doesn't give warnings though there are duplicate conditions:

DSolveValue[{10 y'[x] == 10, y[0] == 1, y[0] == 1}, y[x], x]
(*{{y[x] -> 1 + x}}*)

Could I conclude that mma never deletes duplicate conditions while evaluating?

  • $\begingroup$ interesting observation, but it is just a warning. You could do Quiet@DSolve ... $\endgroup$
    – george2079
    Jun 12 '15 at 14:14
  • $\begingroup$ By trial and error, I have observed that this warning message occurs if and only if the number of BCs equals the order of the equation and one or more of the BCs are redundant. For instance, the error message occurs for DSolve[{y''''[x] == 0, y''[0] == 0, y'[0] == 0, y[0] == 0, y[0] + y'[0] == 0}, y[x], x] but not for DSolve[{y''''[x] == 0, y''[0] == 0, y''[0] == 0, y'[0] == 0, y[0] == 0, y[0] + y'[0] == 0}, y[x], x] or DSolve[{y''''[x] == 0, y'[0] == 0, y[0] == 0, y[0] + y'[0] == 0}, y[x], x]. $\endgroup$
    – bbgodfrey
    Jun 13 '15 at 4:25

As of Version 10.3, the DSolve::bvsing warning is no longer emitted for

DSolve[{y''[x] + 10 y'[x] == 0, y[0] == 0, y[0] == 0}, y[x], x]

One can surmise that two conditions for a second-order ODE made Mathematica try to solve for both constants of integration, as well as complain when it could not. I don't know if that's true. As @george2079 remarked, it was only a warning in any case. I would say it was a bug, which has been fixed.


I wouldn't have called this a bug. My guess is that, when Mathematica is given two additional equations, it will try to solve for the two integration constants using these equations. It realizes the resulting system is singular and issues a corresponding warning. It doesn't do this if only one, or no BCs are given, since in that case the intention of obtaining a general solution with unresolved integration constant(s) is clear. Makes sense to me. Of course, the warning is perhaps not strictly necessary, so the decision not to issue a warning in Mma 11 is fine, too.

  • $\begingroup$ Your guess is the same as mine....I suggested "bug" because WRI changed the behavior, since it's a bit ridiculous to suggest the equation has a singularity when it is merely that the user has given a redundant system of BCs, something quite easily detectable. I would argue, though, that the present state is not entirely satisfactory either: The user probably ought to be warned that the BCs are redundant. (Maybe there is a message that is off by default, but probably not.) $\endgroup$
    – Michael E2
    Sep 2 '16 at 1:34
  • $\begingroup$ Yeah, we're in agreement I think. $\endgroup$
    – Pirx
    Sep 2 '16 at 11:25

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.