I cannot find the distance between two matrices with respect to the Frobenius inner product.

39 visualizaciones (últimos 30 días)
Hello everyone,
I am doing an assignment in MatLAB and I do not understand how to get the dist_AB value. I have tried using the norm command with inside the difference between A - B and the difference between the Frobenius form, but in each case the asnwer is not correct. I do not understand if I am using a wrong Matlab command or my math logic is wrong. Can someone help me?
%To find the Euclidean distance between two vectors, find the 2-norm of the difference of
%those vectors. Enter column vectors u and v. Then use the norm() command to find d(u,v), storing
%it in dist_uv.
u = [4; 3]
v = [-4; -12]
two_norm_u = norm(u, 2)
two_norm_v = norm(v, 2)
dist_uv = norm(u - v)
%To find the distance between two matrices with respect to the Frobenius inner product,
%find the Frobenius norm of the difference of those matrices. Enter matrices A and B.
%Then use the norm() command to find d(A,B), storing it in dist_AB.
A = [3 -7 4 3; -2 4 -5 0]
B = [1 -7 2 5; 0 0 -5 2]
fro_A = norm(A, 'fro')
fro_B = norm(B, 'fro')
%Below are the variables used for the last requirement, each are wrong.
fro_difference = norm(fro_A - fro_B)
dist_AB = norm(A - B)

Respuesta aceptada

Bruno Luong
Bruno Luong el 4 de Ag. de 2020
Editada: Bruno Luong el 4 de Ag. de 2020
Distance in frobenius scalar product:
dist_AB = norm(A - B, 'fro')
which is the same as this
norm(A(:)-B(:),2)
  2 comentarios
Bruno Luong
Bruno Luong el 4 de Ag. de 2020
Editada: Bruno Luong el 4 de Ag. de 2020
norm(a) - norm(b)
doesn't measure the distance between a and b; regardless a, b are vector or matrix, or even number:
a = 1
b = -1
norm(a)-norm(b)

Iniciar sesión para comentar.

Más respuestas (0)

Productos


Versión

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by