Discussion Overview
The discussion focuses on calculating the triple scalar product of three vectors in MATLAB, specifically addressing the correct syntax and dimensionality of vectors involved in the operation.
Discussion Character
- Homework-related
- Technical explanation
- Debate/contested
Main Points Raised
- One participant attempts to calculate the triple scalar product using the command b'*cross(c,a) but receives a 3x3 matrix instead of a scalar value, expressing confusion about the expected output.
- Another participant suggests that the command '*' may be incorrect and recommends using dot(A,cross(B,C)) for the scalar triple product, asserting that this will yield a scalar if A, B, and C are vectors.
- A further reply clarifies that the cross product produces a vector of the same type as the inputs, and if A, B, and C are column vectors, the notation A.'*cross(B,C) will yield the scalar triple product. However, if they are row vectors, the product results in a 3x3 matrix.
- One participant provides specific vector definitions and asks for confirmation on whether to use A*cross(B,C) or dot(A,cross(B,C)), leaning towards the latter.
- Another participant confirms that dot(A,cross(B,C)) will always work and emphasizes the importance of ensuring proper dimensions for matrix multiplication.
- A participant briefly acknowledges the explanation with gratitude.
Areas of Agreement / Disagreement
Participants generally agree that the scalar triple product should yield a single number, but there is some uncertainty regarding the correct MATLAB syntax and the implications of using row versus column vectors.
Contextual Notes
There are unresolved questions about the dimensionality of the vectors and the appropriate use of matrix multiplication operators in MATLAB, which may depend on whether the vectors are defined as row or column vectors.