how to set a unit to variable?
20 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
fred bnm
il 27 Dic 2015
Commentato: Walter Roberson
il 13 Ott 2020
I encounter the error after run this :
30*unit::mm
2 Commenti
Walter Roberson
il 20 Apr 2020
Discussion of character strings is not very relevant to the question of whether MATLAB can handle units.
Risposta accettata
Karan Gill
il 7 Apr 2017
Modificato: Karan Gill
il 17 Ott 2017
Units are now in MATLAB if you have Symbolic Math Toolbox. Try:
>> u = symunit;
>> x = 2*u.meter
x =
2*[m]
>> x = rewrite(x,u.ft)
x =
(2500/381)*[ft]
>> double(separateUnits(x))
ans =
6.5617
1 Commento
Walter Roberson
il 8 Apr 2017
Note: the implementation of units has difficulty with quantity 0, which tends to make the most difference with temperature (e.g., 0C and 0F)
Più risposte (2)
the cyclist
il 27 Dic 2015
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 Commento
Karan Gill
il 7 Apr 2017
Modificato: Karan Gill
il 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
il 27 Dic 2015
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 Commenti
Walter Roberson
il 29 Dic 2015
You should consider instead using (at the MATLAB level)
30 * sym('unit::mm')
Walter Roberson
il 13 Ott 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')
Vedere anche
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!