MATLAB Answers

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

3 ビュー (過去 30 日間)
amin ya
amin ya 2019 年 3 月 13 日
コメント済み: amin ya 2019 年 3 月 14 日
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 2019 年 3 月 13 日
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 2019 年 3 月 14 日
Thank you, it works! It was as easy as changing the name.

Sign in to comment.

回答 (0 件)

製品


リリース

R2018b

Translated by