simple multiplication / summation using matlab
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
i want to do some complicate calculations by matlab of following
![](https://www.mathworks.com/matlabcentral/images/broken_image.png)
n=0:65119;
x = cos(3.6*n)*sin(3.6*n);
y = x*x
it shows errors however, saying
Error in ==> ex3_1_2 at 3 x = cos(3.6*n)*sin(3.6*n);
what's happening?
2 comentarios
Respuesta aceptada
Walter Roberson
el 4 de Oct. de 2012
The MATLAB operator "*" is matrix multiplication. Element-by-element multiplication is ".*"
cos(3.6*n) .* sin(3.6*n)
5 comentarios
Walter Roberson
el 4 de Oct. de 2012
You did not happen to show us the mathematical notation for what you are trying to do.
In MATLAB, 0:65119 is a row vector, 1 x 65120 in length. Matrix multiplication of two row vectors cannot be done: Matrix multiplication (mathematically) requires that the "inner dimensions" must be equal. Matrix multiplication is defined for (1 x 65120) * (65120 x 1) (giving a 1 x 1 result), and is defined for (65120 x 1) * (1 x 65120) (giving a 65120 x 65120 result), but it is not defined for (1 x 65120) * (1 x 65120)
It is mathematically possible to dot-product or cross-product vectors that have the same orientation; we cannot tell whether that is your intention.
Más respuestas (0)
Ver también
Categorías
Más información sobre Matrix Indexing en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!