def test_example(self): v = Vector([-9.88, -3.264, -8.159]) b = Vector([-2.155, -9.353, -9.473]) assert ( -8.350081043195763, 3.376061254287722, -1.4337460427811841, ) == v.orthogonal_component(b).coords
def test_example(self): v = Vector([3.009, -6.172, 3.692, -2.51]) b = Vector([6.404, -9.144, 2.759, 8.718]) cs = v.components(b) assert ( 1.04048383278591, -3.3612392515606433, 2.8439150366421497, -5.189813233256158, ) == cs["othogonal"].coords assert ( 1.9685161672140898, -2.8107607484393564, 0.8480849633578503, 2.679813233256158, ) == cs["parallel"].coords
def test_diff_dim(self, v1): u = Vector([1, 2, 3, 4]) with pytest.raises(DimensionError) as excinfo: new_v = v1 + u assert ( f"Cannot add Vector with self.dimension=3 to Vector with other.dimension=4." == str(excinfo.value))
def test_diff_dim(self, v1): v = Vector([ 3, ] * 5) with pytest.raises(DimensionError) as excinfo: v * v1 assert ( f"Cannot multiply Vector with self.dimension=5 to Vector with other.dimension=3." == str(excinfo.value))
def test_example_3(self): v = Vector([1.5, 9.547, 3.691]) u = Vector([-6.007, 0.124, 5.772]) result = v.cross_product(u) assert (54.647600000000004, -30.829836999999998, 57.534829) == result.coords
def test_parallel_componet_x(self, v1): b = Vector([1, 0, 0]) assert (1, 0, 0) == v1.parallel_component(b).coords
def test_example_2(self): v = Vector([-8.987, -9.838, 5.031]) u = Vector([-4.268, -1.861, -8.866]) result = v.cross_product(u) assert (96.58639899999999, -101.15105, -25.263776999999997) == result.coords
def test_equal(self): v = Vector([1, 2, 3]) u = Vector([1, 2, 3]) assert v == u
def v1(): return Vector([1, 2, 3])
def test_example_2(self): v = Vector([-8.987, -9.838, 5.031]) u = Vector([-4.268, -1.861, -8.866]) assert 142.12222140184633 == v.area(u)
def test_example_3(self): v = Vector([1.5, 9.547, 3.691]) u = Vector([-6.007, 0.124, 5.772]) assert 42.56493739941894 == v.area(u) / 2
def test_orthogonal_componet_z(self, v1): b = Vector([0, 0, 1]) assert (1, 2, 0) == v1.orthogonal_component(b).coords
def test_example_3(self): v = Vector([-2.328, -7.284, -1.214]) w = Vector([-1.821, 1.072, -2.940]) assert v.is_orthogonal(w) assert w.is_orthogonal(v)
def test_orthogonal_componet_x(self, v1): b = Vector([1, 0, 0]) assert (0, 2, 3) == v1.orthogonal_component(b).coords
def test_orthogonal_componet_y(self, v1): b = Vector([0, 1, 0]) assert (1, 0, 3) == v1.orthogonal_component(b).coords
def test_example(self): v = Vector([3.039, 1.879]) b = Vector([0.825, 2.036]) assert (1.0826069624844668, 2.671742758325302) == v.parallel_component(b).coords
def test_parallel_componet_z(self, v1): b = Vector([0, 0, 1]) assert (0, 0, 3) == v1.parallel_component(b).coords
def test_parallel_componet_y(self, v1): b = Vector([0, 1, 0]) assert (0, 2, 0) == v1.parallel_component(b).coords
def test_valid_vectors(self): v = Vector([1, 7, 74]) u = Vector([-26, -4, 5]) assert 1965.2699560111328 == v.area(u)
def test_componets_z(self, v1): b = Vector([0, 0, 1]) cs = v1.components(b) assert (1, 2, 0) == cs["othogonal"].coords assert (0, 0, 3) == cs["parallel"].coords
def test_example_1(self): v = Vector([8.462, 7.893, -8.187]) u = Vector([6.984, -5.975, 4.778]) assert 144.30003269663322 == v.area(u)
def test_example_2(self): v = Vector([-2.029, 9.97, 4.172]) w = Vector([-9.231, -6.639, -7.245]) assert not v.is_orthogonal(w) assert not w.is_orthogonal(v)
def test_empty_coords(self): with pytest.raises(ValueError) as excinfo: v = Vector([]) assert "Coords must not be empty." == str(excinfo.value)
def test_example_1(self): v = Vector([-7.579, -7.88]) w = Vector([22.737, 23.64]) assert not v.is_orthogonal(w) assert not w.is_orthogonal(v)
def test_str_coords(self): with pytest.raises(TypeError) as excinfo: v = Vector("123") assert "Coords must be a list or tuple." == str(excinfo.value)
def test_vaild_vectors(self): v = Vector([1, 7, 74]) u = Vector([-26, -4, 5]) result = v.cross_product(u) assert (331, -1929, 178) == result.coords
def test_unequal(self): v = Vector([3, 2, 1]) u = Vector([1, 2, 3]) assert v != u
def test_example_1(self): v = Vector([8.462, 7.893, -8.187]) u = Vector([6.984, -5.975, 4.778]) result = v.cross_product(u) assert (-11.204570999999994, -97.609444, -105.68516199999999) == result.coords
def test_valid(self): v = Vector([1, 2, 3]) assert v.coords == (1, 2, 3) assert v.dimension == 3
def test_example_4(self): v = Vector([2.118, 4.827]) w = Vector([0, 0]) assert v.is_orthogonal(w) assert w.is_orthogonal(v)