# Solve a symbolic equation in more than one variables

2 views (last 30 days)

Show older comments

Hi,

There is an ODE equation in terms of "u(r)". And there are several other variables in the equation, one of them is called "m" which could be zero.

The problem is, the "Solve" command gives me a symbolic solution which is great, but with "m" in the denominator, namely, I cannot substitute m with zero later.

Is there anyway I could rewrite the solution without m in the denominator, or define "m" to be a possible zero value (I tried "assume(m>=0)" and it's not working) ?

Here is the equation:

clc

clear

syms u(r) alpha r m omega Omega U_j0 Uinf R0

syms U W(r)

eqn=diff(u, r, r)*(omega*r + Omega*R0*m - U_j0*alpha*r - Omega*m*r)^2 == r^2*diff(u, r)*(((2*Omega*R0*(omega*r + Omega*R0*m - U_j0*alpha*r - Omega*m*r)^2*(2*Omega*R0 - 3*Omega*r - m*omega*r - Omega*R0*m^2 + Omega*m^2*r + U_j0*alpha*m*r))/(r^5*((omega*r + Omega*R0*m - U_j0*alpha*r - Omega*m*r)^2/r^2 - (2*Omega^2*(R0 - r)*(R0 - 2*r))/r^2)^2) + (Omega*m*(R0 + 2*r)*(omega*r + Omega*R0*m - U_j0*alpha*r - Omega*m*r))/(r^3*((omega*r + Omega*R0*m - U_j0*alpha*r - Omega*m*r)^2/r^2 - (2*Omega^2*(R0 - r)*(R0 - 2*r))/r^2)))*((omega*r + Omega*R0*m - U_j0*alpha*r - Omega*m*r)^2/r^2 - (2*Omega^2*(R0 - r)*(R0 - 2*r))/r^2) - (omega*r + Omega*R0*m - U_j0*alpha*r - Omega*m*r)^2/r^3 + (Omega*m*(R0 - 2*r)*(omega*r + Omega*R0*m - U_j0*alpha*r - Omega*m*r))/r^3);

sol=dsolve(eqn);

u2_exp=simplify(sol);

I really appreciate your help!

(By the way, since "m" could be any real value for my problem, i.e., -1, 0, 1 , 2 ....., it would be great to get a geneal solutions rather than just defining m = 0. )

##### 0 Comments

### Answers (1)

Chaitanya Mallela
on 25 Jun 2021

##### 0 Comments

### See Also

### Categories

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!