Symbolic matlab: how to set a variable as a function of time?

77 ビュー (過去 30 日間)
Sebastian D'Amico
Sebastian D'Amico 2012 年 2 月 15 日
コメント済み: Sergei Sergienko 2020 年 6 月 13 日
Hello to all! I'm trying to set a symbolic variable as a function of "t". This is because I need to obtain something like this:
K>> diff(sin(theta),t)
ans = diff(theta,t)*cos(theta)
or
ans= theta_dot*cos(theta)
but how to tell Matlab that variable theta is a function of time "t"?
Thank you!
  1 件のコメント
Ezequiel Garcia
Ezequiel Garcia 2017 年 4 月 18 日
編集済み: Ezequiel Garcia 2017 年 4 月 18 日
You need to declare t as a "symbolic"
syms t;

サインインしてコメントする。

回答 (4 件)

Walter Roberson
Walter Roberson 2012 年 2 月 15 日
syms theta t
diff(sin(theta(t)),t)
  2 件のコメント
Walter Roberson
Walter Roberson 2017 年 4 月 19 日
In newer versions of MATLAB, you can use
syms theta(t)
diff(sin(theta),t)
Sergei Sergienko
Sergei Sergienko 2020 年 6 月 13 日
Is it possible to make vector function of t? Something like this
sym('q(t)', [3 1])
diff(sin(q),t)

サインインしてコメントする。


sharara rehimi
sharara rehimi 2018 年 8 月 16 日
thanks a lot..great for my problem

Wayne King
Wayne King 2012 年 2 月 15 日
Hi Sebastian, do you know the expression for theta(t)?
syms theta t;
theta(t) = t^2;
diff(cos(theta),t)

Sebastian D'Amico
Sebastian D'Amico 2012 年 2 月 15 日
Wayne, thank you for your answer! I don't have the expression of theta because I don't need it. This is the reason I need to tell Matlab that theta is a function of "t" so, when derivate is computed, it should consider that, for example, diff(sin(theta),t) is equal to diff(theta,t)*cos(theta). But, how to set it?
Seabstian
  1 件のコメント
Wayne King
Wayne King 2012 年 2 月 15 日
Do you really need that if you do not know the expression for theta(t), you know df(theta)/dt = df/dtheta*dtheta/dt

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeSymbolic Variables, Expressions, Functions, and Preferences についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by