Проверяйте, конечны ли элементы символьного массива
Используя isfinite, определите, какими элементами этой символьной матрицы являются конечные значения:
isfinite(sym([pi NaN Inf; 1 + i Inf + i NaN + i]))
ans =
2×3 logical array
1 0 0
1 0 0Аппроксимируйте эти символьные значения 50-разрядной точностью:
V = sym([pi, 2*pi, 3*pi, 4*pi]); V_approx = vpa(V, 50);
Котангенсы точных значений не конечны:
cot(V) isfinite(cot(V))
ans =
[ Inf, Inf, Inf, Inf]
ans =
1×4 logical array
0 0 0 0Тем не менее, котангенсы аппроксимированных значений конечны из-за ошибок округления:
isfinite(cot(V_approx))
ans = 1×4 logical array 1 1 1 1
Для любого A, точно одно из этих трех количеств isfinite(A), isinf(A), или isnan(A) 1 для каждого элемента.
Элементы A распознаны конечным, если они
Не символьный NaN
Не символьный Inf или -Inf
Не суммы или продукты, содержащие символьные бесконечности Inf или -Inf