Effacer les filtres
Effacer les filtres

How can I use syms like theta_(i-1)?

7 vues (au cours des 30 derniers jours)
서호 이
서호 이 le 12 Avr 2023
Commenté : 서호 이 le 25 Avr 2023
I like to express theta_(i-1) in matlab like theta_i, how can I solve this?
If i use 'theta_i_minus_1' results theta_(i,1) ...

Réponse acceptée

Walter Roberson
Walter Roberson le 12 Avr 2023
Unfortunately, the current notation does not support subscripts that are general expressions. The current notion supports only (groups of) A to Z and a to z and 0 to 9 as subscripts (does not support underscore in a subscript), with multiple subscripts automatically being spliced together with commas.
I was going to say that "You can have multiple annotations on the main variable but you cannot have annotations on the subscripts. You cannot, for example, construct (theta x double dot)" but that turns out to be at least partly wrong
syms theta_ddot_x theta_x_ddot theta__ddot_x theta_ddot__x theta__ddot__x theta_x_ddot theta_x__ddot theta__x_ddot theta__x__ddot
[theta_ddot_x theta_x_ddot theta__ddot_x theta_ddot__x theta__ddot__x theta_x_ddot theta_x__ddot theta__x_ddot theta__x__ddot]
ans = 
  3 commentaires
Walter Roberson
Walter Roberson le 14 Avr 2023
parts = ["theta", "x", "ddot"];
j = ["_", "__"];
orders = [1 2 3; 1 3 2; 2 1 3; 2 3 1; 3 1 2; 3 2 1];
for oidx = 1 : size(orders,1)
tp = parts(orders(oidx,:));
s = [tp(1) + j(1) + tp(2) + j(1) + tp(3), ...
tp(1) + j(1) + tp(2) + j(2) + tp(3), ...
tp(1) + j(2) + tp(2) + j(1) + tp(3), ...
tp(1) + j(2) + tp(2) + j(2) + tp(3)];
disp(s); disp(sym(s));
end
"theta_x_ddot" "theta_x__ddot" "theta__x_ddot" "theta__x__ddot"
"theta_ddot_x" "theta_ddot__x" "theta__ddot_x" "theta__ddot__x"
"x_theta_ddot" "x_theta__ddot" "x__theta_ddot" "x__theta__ddot"
"x_ddot_theta" "x_ddot__theta" "x__ddot_theta" "x__ddot__theta"
"ddot_theta_x" "ddot_theta__x" "ddot__theta_x" "ddot__theta__x"
"ddot_x_theta" "ddot_x__theta" "ddot__x_theta" "ddot__x__theta"
서호 이
서호 이 le 25 Avr 2023
Thank you for your effort! I learned more about this :)

Connectez-vous pour commenter.

Plus de réponses (0)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by