has
Testa se uma expressão simbólica contém uma dada subexpressão.
Categoria: Symbolic Computations in MATLAB > Symbolic Variables, Expressions, Functions, and Preferences
Sintaxe
tf = has(expr, sub)
Retorna true quando sub ocorre dentro de expr.
Descrição
has pesquisa a árvore inteira da expressão, então has(x^2 + y, y) é verdadeiro mesmo que y seja apenas uma parcela de uma soma. Compara estrutura, não valor, então has(2*x, x) é verdadeiro e has(x^2, 4) é falso.
Um uso típico é decidir se uma expressão ainda depende de uma variável antes de derivar ou resolver em relação a ela.
Argumentos de entrada
expr- Expressão simbólica escalar a pesquisar.
sub- Variável ou subexpressão a procurar.
Argumentos de saída
tf- Escalar lógico.
Exemplo
A expressão depende de uma variável
syms x y
has(x^2 + y, y)
has(sin(x)*2, y)
has(sin(x)*2, sin(x))
Saída
ans = logical
1
ans = logical
0
ans = logical
1
Observações
No MatLivre sub deve ser uma expressão simbólica escalar; passar um array simbólico como sub gera erro. expr pode ser um array.