@sym: children (f) ¶Return "children" (terms, lhs/rhs, etc) of symbolic expression.
For a scalar expression, return a row vector of sym expressions:
syms x y f = 2*x*y + sin(x); C = children(f) ⇒ C = (sym) [2⋅x⋅y sin(x)] (1×2 matrix) children(C(1)) ⇒ ans = (sym) [2 x y] (1×3 matrix) children(C(2)) ⇒ ans = (sym) x
A symbol/number/boolean has itself as children:
children(x) ⇒ ans = (sym) x
For matrices/vectors, return a cell array where each entry is a row vector. The cell array is the same shape as the input.
A = [x*y 2; 3 x]
⇒ A = (sym 2×2 matrix)
⎡x⋅y 2⎤
⎢ ⎥
⎣ 3 x⎦
C = children (A)
⇒ C = { ... }
class (C), size (C)
⇒ ans = cell
⇒ ans =
2 2
C{:}
⇒ ans = (sym) [x y] (1×2 matrix)
⇒ ans = (sym) 3
⇒ ans = (sym) 2
⇒ ans = (sym) x
For sets, children can be used to extract
an matrix (array) containing the set elements, see ‘finiteset’.
This is useful for accessing the elements of a set.
See also: @@sym/lhs, @@sym/rhs, @@sym/eq, @@sym/lt, finiteset.
Package: symbolic