MHB Matrix multiplication simplified to Vector multiplication

AI Thread Summary
The discussion focuses on optimizing matrix multiplication by avoiding unnecessary conversions from vectors to matrices in computational tasks. A user illustrates their problem using a vector and its matrix form, seeking a more efficient way to achieve the same result without conversion. Another participant provides an algebraic approach to calculate the sum of elements directly from the vector, suggesting a formula that can be implemented in code. This method could significantly speed up computations compared to traditional matrix multiplication. The conversation highlights the importance of mathematical manipulation for efficiency in programming tasks.
CyanBC
Messages
2
Reaction score
0
Hello, I'm not sure where to put this. I have spent the last week (14+ hour days) editing some code I have for selecting representative spectra for a remote sensing masters thesis I'm working on. The program is very-very slow, and I've been trying to speed it up as much as possible by NOT performing any conversions that are unnecessary. Which leads me to the problem I've been struggling with for the last 10 hours.

I'll use a simple example:

I have a vector (V1)
[0,1,2,3]
Which I reform into a matrix (M1)
[0,1
2,3]

and perform matrix multiplication on itself, M1*M1
which returns a matrix
[2,3
6,11]
from which I take the sum total of all items in the matrix. So the desired answer is = 22

Is there any way I can do this directly with the original vector (V1), without having to convert the original vector to a matrix? I know conversion is the easiest way - but not the most computationally efficient. And I'm nor so good at the maths.
 
Mathematics news on Phys.org
CyanBC said:
Hello, I'm not sure where to put this. I have spent the last week (14+ hour days) editing some code I have for selecting representative spectra for a remote sensing masters thesis I'm working on. The program is very-very slow, and I've been trying to speed it up as much as possible by NOT performing any conversions that are unnecessary. Which leads me to the problem I've been struggling with for the last 10 hours.

I'll use a simple example:

I have a vector (V1)
[0,1,2,3]
Which I reform into a matrix (M1)
[0,1
2,3]

and perform matrix multiplication on itself, M1*M1
which returns a matrix
[2,3
6,11]
from which I take the sum total of all items in the matrix. So the desired answer is = 22

Is there any way I can do this directly with the original vector (V1), without having to convert the original vector to a matrix? I know conversion is the easiest way - but not the most computationally efficient. And I'm nor so good at the maths.
Hi Cyan and welcome to MHB! Suppose you do that same sequence of calculations algebraically, starting with a vector $[a,b,c,d].$ Then the matrix is $\begin{bmatrix} a&b \\c&d \end{bmatrix}.$ When you square it you get $\begin{bmatrix} a^2 + bc&b(a+d) \\c(a+d)&bc +d^2 \end{bmatrix}.$ The sum of the elements is $\Sigma = a^2 + 2bc + d^2 + (b+c)(a+d).$ With a little bit of algebraic manipulation you can write that as $\Sigma = (a+d)(a+b+c+d) - 2(ad-bc).$

Presumably you can write a little subroutine to input $[a,b,c,d]$ and get out $\Sigma.$ That ought to be a bit faster than going via a matrix computation.
 
Thanks for illuminating that for me. Now that I see it, I think the original method may be more efficient.
 
Suppose ,instead of the usual x,y coordinate system with an I basis vector along the x -axis and a corresponding j basis vector along the y-axis we instead have a different pair of basis vectors ,call them e and f along their respective axes. I have seen that this is an important subject in maths My question is what physical applications does such a model apply to? I am asking here because I have devoted quite a lot of time in the past to understanding convectors and the dual...
Insights auto threads is broken atm, so I'm manually creating these for new Insight articles. In Dirac’s Principles of Quantum Mechanics published in 1930 he introduced a “convenient notation” he referred to as a “delta function” which he treated as a continuum analog to the discrete Kronecker delta. The Kronecker delta is simply the indexed components of the identity operator in matrix algebra Source: https://www.physicsforums.com/insights/what-exactly-is-diracs-delta-function/ by...
Back
Top