I have no idea if this is best practice or not, but I am using Pytorch as an optimization library rather than a Neural Network Library. I have a function in python where I take a previously defined pytorch tensor

```
R_wrist = torch.eye(3)
```

and I need to make a new tensor from it to keep track of its gradients, so in a separate function I create a new tensor based on the one I built

```
R = torch.tensor(R, requires_grad=True)
```

This works for what I need, but now I am trying to convert this code to C++, unfortunatley I cannot convert a Tensor into a Tensor there either through `torch::tensor()`

or `torch::from_blob()`

How would I go about solving this problem. Should I even be creating a new tensor that requires gradient? should I initialize the original tensor to require gradient and avoid it all together? If not should i be converting the first tensor into an array and passing that array into `torch::from_blob()`

?