ElementaryFunctionODESolver(R, F)

odeef.spad line 831 [edit on github]

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

solve : (F, BasicOperator, Equation(F), List(F)) -> Union(F, "failed")

solve(eq, y, x = a, [y0, ..., ym]) returns either the solution of the initial value problem eq, y(a) = y0, y'(a) = y1, ... or "failed" if the solution cannot be found; error if the equation is not one linear ordinary or of the form dy/dx = f(x, y).

solve : (Equation(F), BasicOperator, Equation(F), List(F)) -> Union(F, "failed")

solve(eq, y, x = a, [y0, ..., ym]) returns either the solution of the initial value problem eq, y(a) = y0, y'(a) = y1, ... or "failed" if the solution cannot be found; error if the equation is not one linear ordinary or of the form dy/dx = f(x, y).

solve : (Matrix(F), Symbol) -> Union(List(Vector(F)), "failed")

solve(m, x) returns a basis for the solutions of D y = m y. x is the dependent variable.

solve : (F, BasicOperator, Symbol) -> Union(Record(particular : F, basis : List(F)), F, "failed")

solve(eq, y, x) returns either a solution of the ordinary differential equation eq or "failed" if no non-trivial solution can be found; If the equation is linear ordinary, a solution is of the form [h, [b1, ..., bm]] where h is a particular solution and and [b1, ...bm] are linearly independent solutions of the associated homogeneous equation f(x, y) = 0; A full basis for the solutions of the homogeneous equation is not always returned, only the solutions which were found; If the equation is of the form dy/dx = f(x, y), a solution is of the form h(x, y) where h(x, y) = c is a first integral of the equation for any constant c.

solve : (Equation(F), BasicOperator, Symbol) -> Union(Record(particular : F, basis : List(F)), F, "failed")

solve(eq, y, x) returns either a solution of the ordinary differential equation eq or "failed" if no non-trivial solution can be found; If the equation is linear ordinary, a solution is of the form [h, [b1, ..., bm]] where h is a particular solution and [b1, ...bm] are linearly independent solutions of the associated homogeneous equation f(x, y) = 0; A full basis for the solutions of the homogeneous equation is not always returned, only the solutions which were found; If the equation is of the form dy/dx = f(x, y), a solution is of the form h(x, y) where h(x, y) = c is a first integral of the equation for any constant c; error if the equation is not one of those 2 forms.

solve : (List(F), List(BasicOperator), Symbol) -> Union(Record(particular : Vector(F), basis : List(Vector(F))), "failed")

solve([eq_1,...,eq_n], [y_1,...,y_n], x) returns either "failed" or, if the equations form a fist order linear system, a solution of the form [y_p, [b_1, ..., b_n]] where h_p is a particular solution and [b_1, ...b_m] are linearly independent solutions of the associated homogeneous system. error if the equations do not form a first order linear system

solve : (List(Equation(F)), List(BasicOperator), Symbol) -> Union(Record(particular : Vector(F), basis : List(Vector(F))), "failed")

solve([eq_1,...,eq_n], [y_1,...,y_n], x) returns either "failed" or, if the equations form a fist order linear system, a solution of the form [y_p, [b_1, ..., b_n]] where h_p is a particular solution and [b_1, ...b_m] are linearly independent solutions of the associated homogeneous system. error if the equations do not form a first order linear system

solve : (Matrix(F), Vector(F), Symbol) -> Union(Record(particular : Vector(F), basis : List(Vector(F))), "failed")

solve(m, v, x) returns [v_p, [v_1, ..., v_m]] such that the solutions of the system D y = m y + v are v_p + c_1 v_1 + ... + c_m v_m where the c_i's are constants, and the v_i's form a basis for the solutions of D y = m y. x is the dependent variable.