More scilab help. Actually the online help for `dot' and `star' gives more details If one excutes: a=0:5 a*a In scilab (or other matlab clones) expecting the answer ans = 0. 1. 4. 9. 16. 25. But instead one gets the following error message -->a*a !--error 10 inconsistent multiplication What just happened and how do you fix it? What happened is scilab reserves `*' for matrix multiplication and you cannot multiply a 1x6 matrix by a 1x6 matrix. [Try the 6x1 multipled by 1x6 a'*a or the 1x6 multipled by 6x1 a*a']. The fix is to use elementwise multiplication which is .* ; that is a .* a gives the expected answer. There is also an elementwise .^ compare (with b=[0 1; 2 3]) b*b vs b.*b vs b^2 vs b.^2 diary: -->a=0:5 a = 0. 1. 2. 3. 4. 5. -->a*a !--error 10 inconsistent multiplication -->a.*a ans = 0. 1. 4. 9. 16. 25. -->a' ans = 0. 1. 2. 3. 4. 5. -->a'*a ans = 0. 0. 0. 0. 0. 0. 0. 1. 2. 3. 4. 5. 0. 2. 4. 6. 8. 10. 0. 3. 6. 9. 12. 15. 0. 4. 8. 12. 16. 20. 0. 5. 10. 15. 20. 25. -->a*a' ans = 55. -->b=[0 1; 2 3] b = 0. 1. 2. 3. -->b*b ans = 2. 3. 6. 11. -->b.*b ans = 0. 1. 4. 9. -->b^2 ans = 2. 3. 6. 11. -->b.^2 ans = 0. 1. 4. 9.