diff --git a/onedimensiontensor.tex b/onedimensiontensor.tex index b18750f..3432d60 100644 --- a/onedimensiontensor.tex +++ b/onedimensiontensor.tex @@ -157,6 +157,9 @@ So the correspondant one order tensor of $T_{\gamma}^{\{k+q\}}$ is $T_{\gamma}^{ &={\alpha}_{\left( \sum_{j=1}^{k} i_{j}\prod_{l=1}^{j-1}d_{i_{l}} \right)_{1}} \cdot b_{\left( \sum_{j=k+1}^{k+q} i_{j}\prod_{l=1}^{j-1}d_{i_{l}} \right)_{1} }\\ &={\alpha}_{\left(i_{1},\ldots,i_{k}\right)_{k}} \cdot b_{\left( i_{k+1},\ldots,{k+q} \right)_{q} }\\ \end{align*} +Then, +${\gamma}_{\left(\sum_{j=1}^{k+q} i_{j}\prod_{l=1}^{j-1}d_{i_{l}}\right)_{1} }= +{\alpha}_{\left( \sum_{j=1}^{k} i_{j}\prod_{l=1}^{j-1}d_{i_{l}} \right)_{1}} \cdot b_{\left( \sum_{j=k+1}^{k+q} i_{j}\prod_{l=1}^{j-1}d_{i_{l}} \right)_{1} }$ \subsection{tensor contraction} @@ -249,6 +252,12 @@ then &= {\gamma}_{\left(\sum_{j=1}^{k-k_0}i_{j}\prod_{u=1}^{j-1}d_{u}+\sum_{j=k_0+1}^k i_{j}\prod_{u=1}^{j-1}b_{u}\right)_{1}} \\ &={\gamma}_{\left(i_{1},i_{2},\ldots,i_{k-k_0},i_{k_0+1},i_{k_0+2},\ldots,i_{q}\right)_{k+q-2\cdot k_0}} \end{align*} +Then +$$ +{\gamma}_{\left(\sum_{j=1}^{k-k_0}i_{j}\prod_{u=1}^{j-1}d_{u}+\sum_{j=k_0+1}^k i_{j}\prod_{u=1}^{j-1}b_{u}\right)_{1}} += \sum_{l=0}^{\prod_{t=1}^{k_0}b_{t}} {\alpha}_{\left(\sum_{j=1}^{k-k_0}i_{j}\prod_{u=1}^{j-1}d_{u}+l\cdot\prod_{s=1}^{k-k_0}d_{s}\right)_{1}} b_{\left(l+\sum_{j=k_0+1}^k i_{j}\prod_{u=1}^{j-1}b_{u}\right)_{1}} +$$ + \section{Advantages using tensor order one} The most advantage is computation, only one loop to browse all tensor elements! If we can compute in parallele, as we know the size and it is on a line, each threads or compute units available can have the same number of elements to compute!