You see things; and you say “Why?”
But I dream things that never were; and I say “Why not?”
George Bernard Shaw in Back to Methuselah
The Wolfram Language function DSolve and NDSolve can solve differential equations.
Let’s look at a few examples.
Example 1 Solving an ODE symbolically. The solution, a function, is evaluated at a given point.
Example 2 Solving an ODE symbolically. Redefine a function and evaluate it at a given point.
Example 3 Solving an ODE initial-value problem symbolically. Get the value at a given point from the symbolic solution.
Example 4 Solving an ODE initial-value problem numerically. Get the value at a given point from the numerical solution.
Regarding whether to specify ‘y‘ or ‘y[x]‘ in DSolve, the only decent explanation I can find is in Stephen Wolfram’s book “The Mathematica Book”. This is straight from horse’s mouth:
“When you ask DSolve to get you a solution for y[x], the rule it returns specify how to replace y[x] in any expression. However, these rules do not specify how to replace objects such as y'[x]. If you want to manipulate solutions that you get from DSolve, you will often find it better to ask for solutions for y, rather than y[x].”
He then proceeds to give an illustration:
Had you started with DSolve[y'[x]==x+y[x], y[x], x], the result would be
As expected, only y[x] is replaced.