Added a warning when constructing a Matrix without bracket + test modified
[sympy.git] / sympy / core / tests / test_multidimensional.py
blob6e26602881b671e4d49db21a59356d5d0306b45a
1 from sympy import Symbol, Function, Number, diff, Derivative, expand, sin, cos, exp, log
3 def test_simplemulti():
4 f = Function("f")
5 x = Symbol("x")
6 y = Symbol("y")
7 z = Symbol("z")
8 a = Number(1)
9 b = Number("1.1")
10 c = Number(1)/4
11 res = [f(x),f(y),f(z)]
12 assert f([x,y,z])==res
13 assert f((x,y,z))==res
14 assert f([x, [y, [a, 1], [b, z]], [[c]]])==[f(x), [f(y), [f(a), f(1)], [f(b), f(z)]], [[f(c)]]]
16 def test_somefuncs():
17 x = Symbol("x")
18 y = Symbol("y")
19 for f in (sin, cos, exp, log):
20 f([x,y])==[f(x), f(y)]
22 def test_diffmulti():
23 f = Function("f")
24 g = Function("g")
25 h = Function("h")
26 x = Symbol("x")
27 y = Symbol("y")
28 z = Symbol("z")
29 r = [x, y, z]
30 assert diff(f(r), x)==[Derivative(f(x),x), 0, 0]
31 assert diff(f(*r), r)==[Derivative(f(*r),x), Derivative(f(*r),y), Derivative(f(*r),z)]
32 assert diff([f(*r), g(*r), h(*r)], r)==[
33 [Derivative(f(*r), x), Derivative(f(*r), y), Derivative(f(*r), z)],
34 [Derivative(g(*r), x), Derivative(g(*r), y), Derivative(g(*r), z)],
35 [Derivative(h(*r), x), Derivative(h(*r), y), Derivative(h(*r), z)]]
36 assert diff(f(x),x,[0,1,2,3])==[diff(f(x),x,0), diff(f(x),x,1), diff(f(x),x,2), diff(f(x),x,3)]
38 def test_expandmulti():
39 x = Symbol("x")
40 y = Symbol("y")
41 assert expand([(x+y)**2, (x-1)**2])==[expand((x+y)**2), expand((x-1)**2)]