Help please, I cant use Dsolve and dont understand why :(

3 vues (au cours des 30 derniers jours)
Sebastian Morales
Sebastian Morales le 12 Oct 2021
Commenté : Walter Roberson le 12 Oct 2021
Hi,
I really need help with this error please. I do not know what is causing it, in my opinion I have 4 variables and 4 equations, it should work fine.
Thanks in advance.
  2 commentaires
Paul
Paul le 12 Oct 2021
Modifié(e) : Paul le 12 Oct 2021
ode3 and ode4 aren't differential equations. Are you intending that ode3 and ode4 should subsitute into ode2?
Sebastian Morales
Sebastian Morales le 12 Oct 2021
Modifié(e) : Sebastian Morales le 12 Oct 2021
I thought that dsolve worked for differential and algebraic equations. Do I always need to separate the equationsto solve them. Dsolve for differential and subs for algebraic?

Connectez-vous pour commenter.

Réponse acceptée

Walter Roberson
Walter Roberson le 12 Oct 2021
syms o_r(r) o_t(r) e_r(r) e_t(r)
e_t = o_t - o_r
e_t(r) = 
e_r = o_r - o_t
e_r(r) = 
ode1 = diff(o_r.*r) == o_t
ode1(r) = 
ode2 = diff(e_t.*r) == e_r
ode2(r) = 
temp1 = ode1(r) - o_r(r)
temp1 = 
ode1b = lhs(temp1)/r == rhs(temp1)/r
ode1b = 
temp2 = simplify(subs(ode2, lhs(ode1b), rhs(ode1b)))
temp2(r) = 
ode2b = simplify((temp2(r) - o_t(r))/r)
ode2b = 
odes = [ode1b; ode2b]
odes = 
sol = dsolve(odes)
sol = struct with fields:
o_t: C1/2 - C2/r^2 o_r: C1/2 + C2/r^2
  4 commentaires
Sebastian Morales
Sebastian Morales le 12 Oct 2021
Okay. Thank you :)
Walter Roberson
Walter Roberson le 12 Oct 2021
E=210000;
v=0.4;
syms o_r(r) o_t(r) e_r(r) e_t(r )
eqn1 = e_t == (o_t - v.*o_r)./E
eqn1(r) = 
eqn2 = e_r == (o_r - v.*o_t)./E
eqn2(r) = 
ode1 = diff(o_r*r) == o_t
ode1(r) = 
ode1b = (ode1 - o_r)/r
ode1b(r) = 
ode2 = diff(e_t*r) == e_r
ode2(r) = 
ode2b = (ode2 - e_t)/r
ode2b(r) = 
odes = [ode1b; ode2b]
odes(r) = 
sol = dsolve(odes)
sol = struct with fields:
e_t: C2/r + int(e_r(r), r, 'IgnoreSpecialCases', true, 'IgnoreAnalyticConstraints', true)/r o_r: C1/r + int(o_t(r), r, 'IgnoreSpecialCases', true, 'IgnoreAnalyticConstraints', true)/r
You cannot resolve more than this without additional information that allows e_r and o_t to be defined.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Numerical Integration and Differential Equations dans Help Center et File Exchange

Produits


Version

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by