MATLAB Answers

symfun to sym conversion error only in a Function (not Script)

조회 수: 22(최근 30일)
amin ya
amin ya 13 Mar 2019
댓글: amin ya 14 Mar 2019
When I use the following code as a script it works without any error.
% function [A]=myFun()
syms t real %time
syms w(t)
w=formula(w);
% I use this to convert symFun to sym
% so I can access to "A" matrix elements which uses w
A=[sin(w);cos(w)]; % "A" matrix is now a 2*1 sym instead of a 1*1 symfun
% end
But when I want to use the code inside a function which passes A matrix as an output, and I call the function I get this error:
"w" previously appeared to be
used as a function or command,
conflicting with its use here as
the name of a variable.
A possible cause of this error is
that you forgot to initialize the
variable, or you have initialized
it implicitly using load or eval.

  댓글 수: 2

Walter Roberson
Walter Roberson 13 Mar 2019
Try using W=formula(w) and referring to W afterwards -- so that you are not overwriting function w with non-function w.
amin ya
amin ya 14 Mar 2019
Thank you, it works! It was as easy as changing the name.

로그인 to comment.

답변(0개)

이 질문에 답변하려면 로그인을(를) 수행하십시오.


Translated by