Multiplying two vectors to form a matrix
Mostrar comentarios más antiguos
Hello, I have two vectors x and y, both 601x1. I want to multiply them to form a matrix of 601x601, but the values inside the matrix have to be sqrt(x^2+y^2). How do I do this? Thanks.
Respuesta aceptada
Más respuestas (2)
x = rand(601,1) ;
y = rand(601,1) ;
iwant = sqrt(x.^2+y'.^2) ;
size(iwant)
Walter Roberson
el 25 de Feb. de 2022
D = sqrt(x.'.^2 + y.^2)
4 comentarios
Walter Roberson
el 25 de Feb. de 2022
Nikola Segedin
el 25 de Feb. de 2022
Jan
el 25 de Feb. de 2022
@Nikola Segedin: Which Matlab versionare you using? Since R2016b an "implicit expanding" is applied. For former versions:
D = sqrt(bsxfun(@plus, x.'.^2, y.^2))
Nikola Segedin
el 25 de Feb. de 2022
Categorías
Más información sobre Logical en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!