View Single Post
  #1   Report Post  
peter dmz
 
Posts: n/a
Default Performing a convolution in a worksheet

I have data in the first two rows of my spreadsheet.
In the third row, I would like to compute a convolution:

X(3,j) = sum for i = 1 to j of X(2,i)*X(1,j+1-i)

where X(i,j) is the data in the ith row and jth column of the spreadsheet.

The following array formula, entered in cell C3 almost works:

{=SUM($A$2:C$2*INDEX($A$1:$Z$1,0,COLUMN(D$1)-COLUMN($A$1:C$1)))}

I say almost because it only works if I enter it in multiple cells, i.e.,
C3:C4 (in which case it gives the same number, which is the correct result
for C3, in both C3 and C4).

If I enter it cell C3 only, it seems to "forget" it is an array formula and
produces the wrong result.

Any thoughts on how to fix this problem, or on how to solve it another way,
are much appreciated.