Ok, so I think this works now, but I don’t understand why.
> array1[index1[:,np.newaxis], index2 + index3[:,np.newaxis]]-= array2
If you understand why this works, maybe you can explain it and we can mark this as solved for others.
I’m not even sure if I had a pytorch problem, though as I said seems numpy has an easier time doing this broadcasting.
Thanks so much for your help.
Cat