# How can I equate coefficients of the like powers from rhs and lhs in an equation to obtain a system of ODEs?

12 views (last 30 days)
Silvia Ceccacci on 17 Jul 2020
Commented: Silvia Ceccacci on 22 Jul 2020
Hi everyone, I have a long equation EQ12. Is there a way of getting this from Symbolic Math Toolbox? I have tried to play around with coeffs but no luck. Thank you in advance for any help. Cheers.
Walter Roberson on 17 Jul 2020
See coeffs() . You might want to use the 'all' option to make it easier to match up.
But have you considered using odeFunction ? I recommend following the workflow given in the first example there.

Devineni Aslesha on 20 Jul 2020
Hi Silvia,
You can use the coeffs function to equate like powers of t and obtain the corresponding ODEs.
eqn = lhs(EQ12)-rhs(EQ12) == 0
c = coeffs(eqn,t)
Here, c is a 1*6 symbol in which c(1,1) = "- diff(F(z), z, z) + diff(F(z), z) + F(z)^2" which is the coefficient of t. Similarly, you have coefficients for other powers of t. Now, you can use the equation c(1,1) == 0 for further calculations.
Silvia Ceccacci on 22 Jul 2020
Hi Aslesha,
I have tried wht you suggested, but it doesn't seem to tidy up the equations.
EQ12 = collect(EQ11,t);
EQ13 = lhs(EQ12)-rhs(EQ12) == 0;
coef = coeffs(EQ13,t);
coef_t = coef(1,1) == 0 So basically it has put all the term on the lhs but not given me the system of ODEs by equating the powers of t. Thank you for your help. Silvia