The following code demonstrates how to solve ordinary differential equations with Sage:
var('x, x1, x2, t') # Finding a general solution print("General solution:") y = function('y', x) ode = 4*diff(y, x, 2) + 36 * y == csc(3 * x) y(x) = desolve(ode, y) y.show() # Solving an initial-value problem print("Solving an initial-value problem:") y = function('y', x) ode = diff(y, x, 2) - 4 * diff(y, x) + 13 * y == 0 y(x) = desolve(ode, y, [0, -1, 2], ivar=x) y.show() # Solving a system of first-order equations print("Solving a system of first-order ODEs:") x1 = function('x1', t) x2 = function('x2', t) ode1 = 2 * diff(x1, t) + diff(x2, t) - x2 == t ode2 = diff(x1, t) + diff(x2, t) == t^2 y1, y2 = desolve_system([ode1, ode2], [x1, x2], ics=[0, 0, 0]) y1.show() y2.show()
The results are shown in the following screenshot: