Error using str2sym (line 213)

Hello!
I receive an error while running the following section:
syms V I R fR L dI Ka I w
str2sym('V == I*(R+fR) + L*dI + Ka*I*w')
I get the error
Error using str2sym (line 213)
Unable to convert string to symbolic expression:
Error: Unexpected MATLAB expression.
After looking inside the error with dbstop if error, I found the variable 'I' is treated as special character. why so?

3 个评论

Would you mind explaining why you want str2sym command when you have already defined the variables using syms command?
I am using a MATLAB toolbox which take symbolic equations as input. I have the equations as strings in a cell array and using a loop I need to use str2sym.
Cool good that you found an answer.:)

请先登录,再进行评论。

 采纳的回答

Walter Roberson
Walter Roberson 2018-8-29

1 个投票

This is a bug involving use of the variables I or J or 'Pi' or 'PI' or 'pI'. Also, you cannot use if in an expression, and i and j will be translated into 1i .
Those are the only one-character and two-character variable names that are affected.

更多回答(0 个)

Community Treasure Hunt

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

Start Hunting!

Translated by