how to set a unit to variable?
Show older comments
I encounter the error after run this :
30*unit::mm
2 Comments
Devarshi Patel
on 19 Apr 2020
Check below link if you have version greater than or equal to R2017A
Walter Roberson
on 20 Apr 2020
Discussion of character strings is not very relevant to the question of whether MATLAB can handle units.
Accepted Answer
More Answers (2)
the cyclist
on 27 Dec 2015
1 vote
In general, MATLAB variables do not have units, and what you have written is not a valid MATLAB syntax (to my knowledge).
There is a contribution to the File Exchange that allows for assigning unit to variables: http://www.mathworks.com/matlabcentral/fileexchange/29621-units-conversion-toolbox/content/UnitConversion-rev2/html/defining.html.
1 Comment
Karan Gill
on 7 Apr 2017
Edited: Karan Gill
on 7 Apr 2017
Units are now in MATLAB if you have Symbolic Math Toolbox. See the tutorial: https://www.mathworks.com/help/symbolic/units-of-measurement-tutorial.html
Posted a separate answer below so that OP can accept.
Steven Lord
on 27 Dec 2015
0 votes
That syntax is specifically for use in the MuPAD Notebook Interface (as stated by the note at the top of this documentation page) not in MATLAB.
3 Comments
fred bnm
on 29 Dec 2015
Walter Roberson
on 29 Dec 2015
You should consider instead using (at the MATLAB level)
30 * sym('unit::mm')
Walter Roberson
on 13 Oct 2020
30 * sym('unit::mm')
is no longer supported. These days you should use symunit . Or if you are despairate,
30 * feval(symengine, 'unit::mm')
Categories
Find more on Functional Programming in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!