*Memos:
- My post explains add().
- My post explains sub().
- My post explains mul().
- My post explains div().
- My post explains remainder().
fmod() can do the modulo(mod) calculation of C++’s std::fmod with two of the 0D or more D tensors of zero or more elements or the 0D or more D tensor of zero or more elements and a scalar, getting the 0D or more D tensor of zero or more elements as shown below:
*Memos:
-
fmod()can be used with torch or a tensor. - The 1st argument(
input) withtorchor using a tensor(Required-Type:tensorofintorfloat). - The 2nd argument with
torchor the 1st argument with a tensor isother(Required-Type:tensororscalarofintorfloat). - There is
outargument withtorch(Optional-Default:None-Type:tensor): *Memos:-
out=must be used. -
My post explains
outargument.
-
- Setting
0(int) toothergetsZeroDivisionError. - The result has the same sign as the original tensor.
import torch
tensor1 = torch.tensor([9, 7, 6])
tensor2 = torch.tensor([[4, -4, 3], [-2, 5, -5]])
torch.fmod(input=tensor1, other=tensor2)
tensor1.fmod(other=tensor2)
# tensor([[1, 3, 0], [1, 2, 1]])
torch.fmod(input=tensor1, other=4)
# tensor([1, 3, 2])
tensor1 = torch.tensor([-9, -7, -6])
tensor2 = torch.tensor([[4, -4, 3], [-2, 5, -5]])
torch.fmod(input=tensor1, other=tensor2)
# tensor([[-1, -3, 0], [-1, -2, -1]])
torch.fmod(input=tensor1, other=4)
# tensor([-1, -3, -2])
tensor1 = torch.tensor([9.75, 7.08, 6.26])
tensor2 = torch.tensor([[4.26, -4.54, 3.37], [-2.16, 5.43, -5.98]])
torch.fmod(input=tensor1, other=tensor2)
# tensor([[1.2300, 2.5400, 2.8900], [1.1100, 1.6500, 0.2800]])
torch.fmod(input=tensor1, other=4.26)
# tensor([1.2300, 2.8200, 2.0000])
Top comments (0)