Matlab не заменяет символическую функцию в другой символической функции
У меня есть символическая функция, зависящая от r, которая называется u (r). Я получаю эту функцию из дифференциального уравнения в и.
В противном случае у меня есть другая символическая функция с именем sigma_r, которая является функцией от вас, а также от производных от вас.
Когда я показываю сигму, она появляется как функция от u (r) и D (u) (r).
u (r) является функцией от r и 2 константы интегрирования C1 и C2.
Я хотел бы выразить sigma_r как функцию от r, C1 и C2.
Я пытаюсь sigma_r = subs(sigma_r,u(r)), но похоже, что Matlab не может заменить его и не может вычислить производную.
Вот скрипт
u(r) = dsolve(diff(sigma_r) + (sigma_r - sigma_theta)/r + rho*w^2*r ==0,'IgnoreAnalyticConstraints', true) % In this differential equation sigma_r, sigma_theta are function of u, and Matlab replace their expression as function of u and solve for u. it works well.
sigma_r(r) = subs(sigma_r,u(r))
Вот что Matlab отображает в командном окне:
u(r) =
C1/r^2.2107342132367193698883056640625 + 0.97655737574677914381027221679688*r^3 + C2*r^6.50236464850604534149169921875
sigma_r(r) =
(9671406556917033397649408*((33290247625219093223312621495090757213591748336283774753774513840*u(**0.97655737574677914381027221679688*(C7/r^2.2107342132367193698883056640625 + 0.97655737574677914381027221679688*r^3 + C8*r^6.50236464850604534149169921875)^3 +
Как видите, выражение sigma_r все еще содержит u.
Спасибо за помощь,
Нидаль Кохрад