Remove pytorch3d's wrappers for eigh, solve, lstsq, qr

Summary: Remove the compat functions eigh, solve, lstsq, and qr. Migrate callers to use torch.linalg directly.

Reviewed By: bottler

Differential Revision: D39172949

fbshipit-source-id: 484230a553237808f06ee5cdfde64651cba91c4c
This commit is contained in:
Chris Lambert
2022-08-31 13:04:07 -07:00
committed by Facebook GitHub Bot
parent 9a1213e0e5
commit d4a1051e0f
9 changed files with 11 additions and 67 deletions

View File

@@ -9,7 +9,6 @@ import unittest
import numpy as np
import torch
from pytorch3d.common.compat import lstsq
from pytorch3d.transforms import acos_linear_extrapolation
from .common_testing import TestCaseMixin
@@ -66,7 +65,7 @@ class TestAcosLinearExtrapolation(TestCaseMixin, unittest.TestCase):
bound_t = torch.tensor(bound, device=x.device, dtype=x.dtype)
# fit a line: slope * x + bias = y
x_1 = torch.stack([x, torch.ones_like(x)], dim=-1)
slope, bias = lstsq(x_1, y[:, None]).view(-1)[:2]
slope, bias = torch.linalg.lstsq(x_1, y[:, None]).solution.view(-1)[:2]
desired_slope = (-1.0) / torch.sqrt(1.0 - bound_t**2)
# test that the desired slope is the same as the fitted one
self.assertClose(desired_slope.view(1), slope.view(1), atol=1e-2)