Magnitude of a vector with unit

3 visualizzazioni (ultimi 30 giorni)
RH
RH il 12 Mar 2023
Commentato: RH il 12 Mar 2023
I am having a trouble getting the numerical value of the magnitude of a vector with a unit.
clearvars;
u=symunit;
x=[1 2 3]*(u.m);
norm(x)
ans = 
x=[1 2 3];
norm(x)
ans = 3.7417
x=[1 2 3]*(u.m);
y=[5 6 7]*(u.m);
z=norm(x)/norm(y)
z = 
vpa(z)
ans = 
As it can be seen above, Matlab does not give me the numerical value of the magnitude when units are present.

Risposta accettata

Paul
Paul il 12 Mar 2023
Looks like simplify pulls the unit^2 out of the root
u=symunit;
x=[1 2 3]*(u.m);
norm(x)
ans = 
simplify(norm(x))
ans = 
vpa(ans)
ans = 
x=[1 2 3]*(u.m);
y=[5 6 7]*(u.m);
z=simplify(norm(x)/norm(y))
z = 

Più risposte (0)

Categorie

Scopri di più su MATLAB in Help Center e File Exchange

Tag

Prodotti


Release

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by