# ElementaryFunctionLODESolver(R, F, L)¶

odeef.spad line 563 [edit on github]

R: Join(Comparable, PolynomialFactorizationExplicit, RetractableTo Integer, LinearlyExplicitOver Integer, CharacteristicZero)

F: Join(AlgebraicallyClosedFunctionSpace R, TranscendentalFunctionCategory, PrimitiveFunctionCategory)

`ElementaryFunctionLODESolver`

provides the top-level functions for finding closed form solutions of linear ordinary differential equations and initial value problems.

- solve: (L, F, Symbol) -> Union(Record(particular: F, basis: List F), failed)
`solve(op, g, x)`

returns either a solution of the ordinary differential equation`op y = g`

or “failed” if no non-trivial solution can be found; When found, the solution is returned in the form`[h, [b1, ..., bm]]`

where`h`

is a particular solution and and`[b1, ...bm]`

are linearly independent solutions of the associated homogenuous equation`op y = 0`

. A full basis for the solutions of the homogenuous equation is not always returned, only the solutions which were found;`x`

is the dependent variable.