Skip to content

Commit 06b9e45

Browse files
Declare TorchSharp.Scalar explicitly.
* Update src/TorchSharp/Tensor/Tensor.Math.cs. + Declare TorchSharp.Scalar explicitly. + Add FIXMEs.
1 parent 512a2ba commit 06b9e45

File tree

1 file changed

+24
-6
lines changed

1 file changed

+24
-6
lines changed

src/TorchSharp/Tensor/Tensor.Math.cs

Lines changed: 24 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,10 @@ public Tensor abs_()
5555
/// <returns></returns>
5656
public Tensor add(Tensor target)
5757
{
58-
return add(target, 1);
58+
// FIXME: Consider implement another THSTensor_add variant that takes no alpha?
59+
// at::Tensor::add has default c10::Scalar alpha = 1.
60+
using Scalar one_scalar = 1.ToScalar();
61+
return add(target, one_scalar);
5962
}
6063

6164
/// <summary>
@@ -79,7 +82,10 @@ public Tensor add(Tensor target, Scalar alpha)
7982
/// <returns></returns>
8083
public Tensor add(Scalar scalar)
8184
{
82-
return add(scalar, 1);
85+
// FIXME: Consider implement another THSTensor_add_scalar variant that takes no alpha?
86+
// at::Tensor::add has default c10::Scalar alpha = 1.
87+
using Scalar one_scalar = 1.ToScalar();
88+
return add(scalar, one_scalar);
8389
}
8490

8591
/// <summary>
@@ -103,7 +109,10 @@ public Tensor add(Scalar scalar, Scalar alpha)
103109
/// <returns></returns>
104110
public Tensor add_(Tensor target)
105111
{
106-
return add_(target, 1);
112+
// FIXME: Consider implement another THSTensor_add_ variant that takes no alpha?
113+
// at::Tensor::add_ has default c10::Scalar alpha = 1.
114+
using Scalar one_scalar = 1.ToScalar();
115+
return add_(target, one_scalar);
107116
}
108117

109118
/// <summary>
@@ -126,7 +135,10 @@ public Tensor add_(Tensor target, Scalar alpha)
126135
/// <returns></returns>
127136
public Tensor add_(Scalar scalar)
128137
{
129-
return add_(scalar, 1);
138+
// FIXME: Consider implement another THSTensor_add_scalar_ variant that takes no alpha?
139+
// at::Tensor::add_ has default c10::Scalar alpha = 1.
140+
using Scalar one_scalar = 1.ToScalar();
141+
return add_(scalar, one_scalar);
130142
}
131143

132144
/// <summary>
@@ -200,7 +212,10 @@ public Tensor addcdiv(Tensor tensor1, Tensor tensor2, Scalar value)
200212
/// <returns></returns>
201213
public Tensor addcdiv(Tensor tensor1, Tensor tensor2)
202214
{
203-
return addcdiv(tensor1, tensor2, 1);
215+
// FIXME: Consider implement another THSTensor_addcdiv variant that takes no value?
216+
// at::Tensor::addcdiv has default c10::Scalar value = 1.
217+
using Scalar one_scalar = 1.ToScalar();
218+
return addcdiv(tensor1, tensor2, one_scalar);
204219
}
205220

206221
/// <summary>
@@ -225,7 +240,10 @@ public Tensor addcdiv_(Tensor tensor1, Tensor tensor2, Scalar value)
225240
/// <returns></returns>
226241
public Tensor addcdiv_(Tensor tensor1, Tensor tensor2)
227242
{
228-
return addcdiv_(tensor1, tensor2, 1);
243+
// FIXME: Consider implement another THSTensor_addcdiv variant that takes no value?
244+
// at::Tensor::addcdiv has default c10::Scalar value = 1.
245+
using Scalar one_scalar = 1.ToScalar();
246+
return addcdiv_(tensor1, tensor2, one_scalar);
229247
}
230248

231249
/// <summary>

0 commit comments

Comments
 (0)