How to plug in one symbolic equation into another
13 次查看(过去 30 天)
显示 更早的评论
If I have a system of differential equations:
(1) d A(t) / dt = 2*A(t)
(2) d B(t) / dt = 3*B(t)
And now, I also have:
(3) C(t) = A(t) + (B(t)^2)
--> I tell Matlab to differentiate C(t):
d C(t) / dt = A'(t) + 2*B(t)*B'(t)
where A'(t) = d A(t) / dt, same for B'(t)
How do I tell Matlab to "plug in" for C'(t) using equations 1 and 2?
0 个评论
采纳的回答
Aylin
2016-12-27
编辑:Aylin
2016-12-27
Hello,
The subs function can be used to "plug in" values for the C'(t) equation.
In this answer, I use the Symbolic Math toolbox syntax from MATLAB R2016b. If you are using a previous version of MATLAB, you may have to adjust the syntax before using this code.
To elaborate further on your example, if A, B, and C are defined as symbolic functions of t:
syms A(t) B(t) C(t)
and eqA, eqB, eqC, and eqDC are the defined symbolic equations:
eqA = diff(A) == 2*A
eqB = diff(B) == 3*B
eqC = C == A + (B*B)
eqDC = diff(eqC)
then the subs function can be used as follows to substitute eqA for dA/dt:
eqDC_subA = subs(eqDC, diff(A), eqA)
and can be used for eqB too:
eqDC_subA_subB = subs(eqDC_subA, diff(B), eqB)
Please refer to the Symbolic Math Toolbox documentation for the subs function for more information:
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Calculus 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!