what does this error mean?

3 views (last 30 days)
frwmetric
frwmetric on 23 May 2013
hi do you have any idea what does it mean???
??? Attempt to reference field of non-structure array.
Error in ==> sym.symsum at 74
r = mupadmex('symobj::map',f.s,'symobj::symsum',x.s,a.s,b.s);
is it about my symbols which are
syms x y Mi q B alp
or summation of series...
Probably not easy to answer it with this insufficient information but my whole function consist multiple functions so not easy to introduce here...
And the last question is that is there any difference b/w
syms x & x=sym('x')

Answers (2)

Iain
Iain on 23 May 2013
You will get that error if you set up a variable eg:
x = [];
and then try to access it using "dots", or getfield eg.:
x.s
To get rid of it, you need to delete the multiple ".s" you have in your code.

David Sanchez
David Sanchez on 23 May 2013
-As the message says, you are trying to get a field from a non-structure object. It seems either your x is not a structure or it does not have a .s field
"??? Attempt to reference field of non-structure array.
Error in ==> sym.symsum at 74 r = mupadmex('symobj::map',f.s,'symobj::symsum',x.s,a.s,b.s);"
- syms x & x=sym('x') Any of them work syms is usually used to declare multiple symbolic variables in a single call
ex:
syms x y z

Community Treasure Hunt

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

Start Hunting!