Операции в выражениях для расчета вычислимых тегов
Аргументом функции может быть тег, число или вектор, который может быть либо окном, взятым из значений явно указанного тега, либо результатом применения другой вложенной функции. Функция принимает произвольное число аргументов, если явно не указано иное. Длина входного окна функции по умолчанию равна 1, если не задан общий параметр w выражения или не определен параметр w самой функции.
Функция-редуктор всегда возвращает одно число, независимо от числа аргументов и длины входного окна функции. Другие функции возвращают окно из одной или нескольких последовательностей значений. В таком случае операция выполняется поэлементно, то есть отдельно на каждом шаге окна, при этом результатом операции также является окно. Размерность результата зависит от выполняемого вычисления, числа аргументов функции и/или длины ее входного окна.
Размерности аргументов (длины окон) должны быть одинаковы. Если результат одной функции используется в качестве аргумента другой, то длина окна результата первой должна быть не меньше размера входного окна второй. Если один из аргументов операции является окном, а второй – числом, то число автоматически превращается в окно необходимой длины, состоящее из одинаковых значений.
Действия, которые вы можете использовать в выражениях для расчета перечислены в таблице ниже.
Операции в выражениях для расчета вычислимых тегов
Операция | Описание | Пример выражения |
|---|---|---|
Арифметические действия | ||
Сложение | Сложение двух или более аргументов. |
|
Вычитание | Вычитание двух или более аргументов. |
|
Умножение | Умножение двух или более аргументов. |
|
Деление | Деление двух или более аргументов. |
|
Возведение в степень | Возведение аргумента в степень. |
|
Операции сравнения | ||
Равно (==) | Возвращает 1.0, если части выражения равны, иначе возвращает 0.0. |
|
Больше (>) | Возвращает 1.0, если левая часть выражения больше правой части выражения, иначе возвращает 0.0. |
|
Меньше (<) | Возвращает 1.0, если левая часть выражения меньше правой части выражения, иначе возвращает 0.0. |
|
Больше или равно (>=) | Возвращает 1.0, если левая часть больше или равна правой части выражения, иначе возвращает 0.0. |
|
Меньше или равно (<=) | Возвращает 1.0, если левая часть меньше или равна правой части выражения, иначе возвращает 0.0. |
|
Не равно (!=) | Возвращает 1.0, если части выражения не равны, иначе возвращает 0.0. |
|
Логические операции | ||
ИЛИ (|) | Возвращает значение 1.0, если хотя бы один из операндов истинен. Возвращает 0.0, если все операнды ложны. |
|
И (&) | Возвращает значение 1.0, если все операнды выражения истинны. Возвращает 0.0, если хотя бы один из операндов ложен. |
|
Функции | ||
| Функция-редуктор. Возвращает значение 1.0, если значения всех аргументов функции истинны в каждом узле РИВС в рамках окна. Возвращает значение 0.0, если хотя бы в одном узле РИВС какое-либо значение аргумента функции ложно. |
|
| Функция-редуктор. Возвращает значение 1.0, если значение хотя бы одного аргумента функции истинно хотя бы в одном узле РИВС. Возвращает 0.0, если значение всех аргументов функции ложно во всех узлах РИВС. |
|
| Функция-редуктор. Возвращает наибольшее из значений, переданных в функцию аргументов. Рассматриваются все значения аргументов в рамках заданного окна. |
|
| Функция-редуктор. Возвращает наименьшее из значений, переданных в функцию аргументов. Рассматриваются все значения аргументов в рамках заданного окна. |
|
| Функция-редуктор. Возвращает среднее арифметическое значение набора переданных в функцию аргументов. Рассматриваются все значения аргументов в рамках заданного окна. |
|
| Для каждого узла РИВС в рамках окна возвращает наибольшее значение среди переданных в функцию аргументов. Результатом работы функции является вектор длиной |
Результатом вычисления функции будет вектор наибольших значений для тегов |
| Для каждого узла РИВС в рамках окна возвращает наименьшее значение среди переданных в функцию аргументов. Результатом работы функции является вектор длиной |
Результатом вычисления функции будет вектор наименьших значений для тегов |
| Для каждого узла РИВС в рамках окна возвращает среднее арифметическое значение среди переданных в функцию аргументов. Результатом работы функции является вектор длиной |
Результатом вычисления функции будет вектор средних арифметических значений для тегов |
| Вычисляет градиент массива переданных в функцию аргументов. Под градиентом аргумента в узле РИВС понимается разность между значением аргумента в этом узле и значением этого же аргумента в предыдущем узле РИВС. Функция может быть использована с параметрами Градиент первого порядка (order=1) вычисляется над значениями аргументов функции (над каждым аргументом отдельно). Результат представляет собой вектор длины w – 1. Градиент более высокого порядка вычисляется над результатами вычисления градиента предыдущего порядка. Результатов применения функции является один или несколько (по числу аргументов) векторов длиной w – order.
|
|
| Вычисляет попарные расстояния между аргументами, переданными в функцию. Попарные расстояния вычисляются в произвольном порядке. Функция используется с параметрами Параметр
Параметр
|
|
| Возвращает значения аргументов в заданном окне. Функция используется с параметрами Параметр Параметр |
Результатом функции будет вектор со значениями тега |
| Возвращает абсолютное значение аргумента, не изменяя его размерности. |
|
| Возвращает последнее (текущее) значение аргумента. Функция принимает только один аргумент. Функция |
|
Примеры вычисления комбинированных функций см. в Приложении.
.png)