MATLAB: Differential Equation with Array Coefficient

differential equations with array coefficicents

Consider the following differential equation:
where c represents a set of coefficients as an arrays of length n. The equation in this case will have n solutions. Is it possible to solve this equation without running a loop over the c(i) coefficient set?

Best Answer

Are a and b known? Do you have an initial value? Or do you pray this equation has an analytical solution? For example, dsolve only finds an implicit solution.
syms y(t) a b c t
Dy = diff(y);
sol = dsolve(Dy == y^3/(y^2 + a)*(b-c*y));
Two trivial solutions were found: y=0, and y=b/c. The third one is implicit, so no simple form is found.
sol(3)
ans =
solve(2*atanh((2*c*y)/b - 1)*(b^2 + a*c^2) - (b^3*(a/(2*b) + (a*c*y)/b^2))/y^2 == b^3*(C5 + t), y)
Sorry, but in the end, you still need to solve that equation for each value of c. And since no explicit solution exists for general a and b, and given no initial value to establish a value for C5, don't expect a simple answer.