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

12 views (last 30 days)
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 Comments
Walter Roberson
Walter Roberson on 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 on 14 Mar 2019
Thank you, it works! It was as easy as changing the name.

Sign in to comment.

Answers (0)

Products


Release

R2018b

Community Treasure Hunt

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

Start Hunting!