123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- from sympy.core.add import Add
- from sympy.core.kind import NumberKind, UndefinedKind
- from sympy.core.mul import Mul
- from sympy.core.numbers import pi, zoo, I, AlgebraicNumber
- from sympy.core.singleton import S
- from sympy.core.symbol import Symbol
- from sympy.integrals.integrals import Integral
- from sympy.core.function import Derivative
- from sympy.matrices import (Matrix, SparseMatrix, ImmutableMatrix,
- ImmutableSparseMatrix, MatrixSymbol, MatrixKind, MatMul)
- comm_x = Symbol('x')
- noncomm_x = Symbol('x', commutative=False)
- def test_NumberKind():
- assert S.One.kind is NumberKind
- assert pi.kind is NumberKind
- assert S.NaN.kind is NumberKind
- assert zoo.kind is NumberKind
- assert I.kind is NumberKind
- assert AlgebraicNumber(1).kind is NumberKind
- def test_Add_kind():
- assert Add(2, 3, evaluate=False).kind is NumberKind
- assert Add(2,comm_x).kind is NumberKind
- assert Add(2,noncomm_x).kind is UndefinedKind
- def test_mul_kind():
- assert Mul(2,comm_x, evaluate=False).kind is NumberKind
- assert Mul(2,3, evaluate=False).kind is NumberKind
- assert Mul(noncomm_x,2, evaluate=False).kind is UndefinedKind
- assert Mul(2,noncomm_x, evaluate=False).kind is UndefinedKind
- def test_Symbol_kind():
- assert comm_x.kind is NumberKind
- assert noncomm_x.kind is UndefinedKind
- def test_Integral_kind():
- A = MatrixSymbol('A', 2,2)
- assert Integral(comm_x, comm_x).kind is NumberKind
- assert Integral(A, comm_x).kind is MatrixKind(NumberKind)
- def test_Derivative_kind():
- A = MatrixSymbol('A', 2,2)
- assert Derivative(comm_x, comm_x).kind is NumberKind
- assert Derivative(A, comm_x).kind is MatrixKind(NumberKind)
- def test_Matrix_kind():
- classes = (Matrix, SparseMatrix, ImmutableMatrix, ImmutableSparseMatrix)
- for cls in classes:
- m = cls.zeros(3, 2)
- assert m.kind is MatrixKind(NumberKind)
- def test_MatMul_kind():
- M = Matrix([[1,2],[3,4]])
- assert MatMul(2, M).kind is MatrixKind(NumberKind)
- assert MatMul(comm_x, M).kind is MatrixKind(NumberKind)
|