Skip to content

Commit 5771d69

Browse files
committed
Add failing test (scalar, vector & matrix output from Lambdify)
1 parent 6deb3b1 commit 5771d69

File tree

1 file changed

+32
-0
lines changed

1 file changed

+32
-0
lines changed

symengine/tests/test_lambdify.py

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -526,6 +526,38 @@ def test_Lambdify_heterogeneous_output():
526526
return
527527
_Lambdify_heterogeneous_output(se.Lambdify)
528528

529+
def test_Lambdify_scalar_vector_matrix():
530+
if not have_numpy:
531+
return
532+
args = x, y = symbols('x y')
533+
vec = Matrix([x+y, x*y])
534+
jac = vec.jacobian(Matrix(args))
535+
f = Lambdify(args, x**y, vec, jac)
536+
s, v, m = f([2,3])
537+
assert s == 2**3
538+
assert np.allclose(v, [2+3, 2*3])
539+
assert np.allclose(v, [
540+
[1, 1],
541+
[3, 2]
542+
])
543+
544+
s2, v2, m2 = f([[2,3], [5, 7]])
545+
assert np.allclose(s2, [2**3, 5**7])
546+
assert np.allclose(v2, [
547+
[2+3, 2*3],
548+
[5+7, 5*7]
549+
])
550+
assert np.allclose(m2, [
551+
[
552+
[1, 1],
553+
[3, 2]
554+
],
555+
[
556+
[1, 1],
557+
[7, 5]
558+
]
559+
])
560+
529561

530562
def test_LambdifyCSE_heterogeneous_output():
531563
if not have_numpy:

0 commit comments

Comments
 (0)