# partial contract

**URL:** <https://itensor.discourse.group/t/partial-contract/1493>\
**Category:** ITensor Julia Questions\
**Created:** [February 20, 2024, 3:26pm UTC](https://itensor.discourse.group/t/partial-contract/1493 "2024-02-20T15:26:48Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![TongTongYee](https://yyz2.discourse-cdn.com/free1/user_avatar/itensor.discourse.group/tongtongyee/32/467_2.png) [@TongTongYee](https://itensor.discourse.group/u/TongTongYee)\
**Post date:** [February 20, 2024, 3:26pm UTC](https://itensor.discourse.group/t/partial-contract/1493/1 "2024-02-20T15:26:48Z")

</div>

Hi,

I have a simple question. Maybe this question is duplicate, but I can’t find any same question.

Can ITensor calculate the following summation?

A\_{ n } = SUM\_{ m } B\_{m, n} C\_{m, n}

If I do simple tensor contraction, then  
A = B\*C → A is scalar

But I don’t want to sum ‘n’ index.

Thank you a lot any answer!

---

<div class="post-metadata">

**Author:** ![mtfishman](https://yyz2.discourse-cdn.com/free1/user_avatar/itensor.discourse.group/mtfishman/32/11_2.png) [@mtfishman](https://itensor.discourse.group/u/mtfishman)\
**Post date:** [February 20, 2024, 4:25pm UTC](https://itensor.discourse.group/t/partial-contract/1493/2 "2024-02-20T16:25:54Z")

</div>

This is the most convenient way to do that operation right now in ITensor:

```julia
using ITensors
m = Index(2)
n = Index(2)
B = randomITensor(m, n)
C = randomITensor(m, n)
A = prime(B, n) * prime(C, 2, n) * delta(n', n'', n)

```

---

<div class="post-metadata">

**Author:** ![TongTongYee](https://yyz2.discourse-cdn.com/free1/user_avatar/itensor.discourse.group/tongtongyee/32/467_2.png) [@TongTongYee](https://itensor.discourse.group/u/TongTongYee)\
**Post date:** [February 21, 2024, 4:27am UTC](https://itensor.discourse.group/t/partial-contract/1493/3 "2024-02-21T04:27:09Z")

</div>

Thank you!!
