[comment]: # attributes: notoc

[comment]: # translation:outdated

[comment]: # ({666e2f6b-ef4bef6c})
# 6. Математические функции

Все перечисленные здесь функции поддерживаются в:

-   [выражениях триггера](/manual/config/triggers/expression)
-   [вычисляемых элементах данных](/manual/config/items/itemtypes/calculated)
-   [макросах выражений](/manual/config/macros/expression_macros)

Математические функции поддерживаются с дробными и целочисленными типами значений, если не оговорено иначе.

Функции перечислены без подробных сведений. Нажмите на функцию, чтобы увидеть полную информацию.

|Функция|Описание|
|--|--------|
|[abs](#abs)|Абсолютное значение (по модулю) значения.|
|[acos](#acos)|Арккосинус значения как угол, выраженный в радианах.|
|[asin](#asin)|Арксинус значения как угол, выраженный в радианах.|
|[atan](#atan)|Арктангенс значения как угол, выраженный в радианах.|
|[atan2](#atan2)|Арктангенс указанных координат ординаты (значение) и абсцисса как угол, выраженный в радианах.|
|[avg](#avg)|Среднее из значений, на которые ссылаются перечисленные элементы данных.|
|[cbrt](#cbrt)|Кубический корень из значения.|
|[ceil](#ceil)|Округление значения вверх до ближайшего целого.|
|[cos](#cos)|Косинус значения, где значение воспринимается как угол, выраженный в радианах.|
|[cosh](#cosh)|Гиперболический косинус значения.|
|[cot](#cot)|Котангенс значения, где значение воспринимается как угол, выраженный в радианах.|
|[degrees](#degrees)|Конвертация значения из радиан в градусы.|
|[e](#e)|Число Эйлера (2.718281828459045).|
|[exp](#exp)|Число Эйлера (e) в степени значения.|
|[expm1](#expm1)|Число Эйлера (e) в степени значения, минус один.|
|[floor](#floor)|Округление вниз до ближайшего целого.|
|[log](#log)|Натуральный логарифм.|
|[log10](#log10)|Десятичный логарифм.|
|[max](#max)|Наибольшее из значений, на которые ссылаются перечисленные элементы данных.|
|[min](#min)|Наименьшее из значений, на которые ссылаются перечисленные элементы данных.|
|[mod](#mod)|Остаток от деления.|
|[pi](#pi)|Константа пи (3.14159265358979).|
|[power](#power)|Возведение в степень.|
|[radians](#radians)|Конвертация значения из градусов в радианы.|
|[rand](#rand)|Вернуть случайное целое число.|
|[round](#round)|Округлить значение до десятичных знаков.|
|[signum](#signum)|Возвращает «-1» для отрицательного значения, «0» для нуля, «1» для положительного значения.|
|[sin](#sin)|Синус значения, воспринимаемого как угол, выраженный в радианах.|
|[sinh](#sinh)|Гиперболический синус значения, воспринимаемого как угол, выраженный в радианах.|
|[sqrt](#sqrt)|Квадратный корень значения.|
|[sum](#sum)|Сумма значений, на которые ссылаются перечисленные элементы данных.| 
|[tan](#tan)|Тангенс значения.|
|[truncate](#truncate)|Усечение значения до указанного числа десятичных знаков.|

[comment]: # ({/666e2f6b-ef4bef6c})

[comment]: # ({e635e2a6-f932d69d})
### Подробности функций

Некоторые общие замечания о параметрах функций:

-   параметры функций разделяются запятыми
-   в качестве параметров допустимы выражения
-   необязательные параметры функций (или части параметров) обозначаются угловыми скобками
    `<` `>`

[comment]: # ({/e635e2a6-f932d69d})

[comment]: # ({39973c9a-89cbc486})
##### abs(значение) {#abs}

Абсолютное значение (по модулю) значения.

Параметр: 

-   **значение** — проверяемое значение

Например, абсолютное значение как «3», так и «-3»  будет «3».

Пример:

    abs(last(/узел_сети/ключ))>10

[comment]: # ({/39973c9a-89cbc486})

[comment]: # ({754d73c7-f40a2e61})
##### acos(значение) {#acos}

Арккосинус значения как угол, выраженный в радианах.

Параметр: 

-   **значение** — проверяемое значение

Значение должно быть в диапазоне от -1 до 1. Например, арккосинус значения «0.5» будет «2.0943951».

Пример:

    acos(last(/узел_сети/ключ))

[comment]: # ({/754d73c7-f40a2e61})

[comment]: # ({f32d79d9-b44dbca5})
##### asin(значение) {#asin}

Арксинус значения как угол, выраженный в радианах.

Параметр: 

-   **значение** — проверяемое значение

Значение должно быть в диапазоне от -1 до 1. Например, арксинус значения «0.5» будет «-0.523598776».

Пример:

    asin(last(/узел_сети/ключ)) 

[comment]: # ({/f32d79d9-b44dbca5})

[comment]: # ({debc5495-08e0843c})
##### atan(значение) {#atan}

Арктангенс значения как угол, выраженный в радианах.

Параметр: 

-   **значение** — проверяемое значение

Например, арктангенс значения «1» будет «0.785398163».

Пример:

    atan(last(/узел_сети/ключ))

[comment]: # ({/debc5495-08e0843c})

[comment]: # ({1c279561-6df7b343})
##### atan2(значение,абсцисса) {#atan2}

Арктангенс указанных координат ординаты (значение) и абсцисса как угол, выраженный в радианах.

Параметры: 

-   **значение** — проверяемое значение;
-   **абсцисса** — значение абсциссы.

Например, арктангенс координат, где ордината и абсцисса имеют значение «1», будет «2.21429744».

Пример:

    atan2(last(/узел_сети/ключ),2)

[comment]: # ({/1c279561-6df7b343})

[comment]: # ({94ba0bc0-6d42ceda})
##### avg(<значение1>,<значение2>,...) {#avg}

Среднее из значений, на которые ссылаются перечисленные элементы данных.

Параметр: 

-   **значениеX** — значение, возвращаемое другой функцией, работающей с историей элементов данных.

Пример:

    avg(avg(/узел_сети/ключ,1h),avg(/узел_сети2/ключ2,1h))

[comment]: # ({/94ba0bc0-6d42ceda})

[comment]: # ({ef0cb9ef-65742fe9})
##### cbrt(значение) {#cbrt}

Кубический корень из значения.

Параметр: 

-   **значение** — проверяемое значение

Например, кубический корень из «64» будет «4», а из «63» будет «3.97905721».

Пример:

    cbrt(last(/узел_сети/ключ))

[comment]: # ({/ef0cb9ef-65742fe9})

[comment]: # ({696b523c-4290a457})
##### ceil(значение) {#ceil}

Округлить  значение вверх до ближайшего целого.

Параметр: 

-   **значение** — проверяемое значение

Например, «2.4» будет округлено до «3». Смотрите также [floor()](#floor).

Пример:

    ceil(last(/узел_сети/ключ))

[comment]: # ({/696b523c-4290a457})

[comment]: # ({dee428c3-b07f5dfa})
##### cos(значение) {#cos}

Косинус значения, где значение воспринимается как угол, выраженный в радианах.

Параметр: 

-   **значение** — проверяемое значение

Например, косинус значения «1» будет «0.54030230586».

Пример:

    cos(last(/узел_сети/ключ))

[comment]: # ({/dee428c3-b07f5dfa})

[comment]: # ({a9e4704e-4df693f6})
##### cosh(значение) {#cosh}

Гиперболический косинус значения.
Возвращает значение как действительное число, не в научной нотации.

Параметр: 

-   **значение** — проверяемое значение

Например, гиберболический косинус значения «1» будет «1.54308063482».

Пример:

    cosh(last(/узел_сети/ключ))

[comment]: # ({/a9e4704e-4df693f6})

[comment]: # ({b169abdb-7b0480bb})
##### cot(значение) {#cot}

Котангенс значения, где значение воспринимается как угол, выраженный в радианах.

Параметр: 

-   **значение** — проверяемое значение

Например, котангенс значения «1» будет «0.54030230586».

Пример:

    cot(last(/узел_сети/ключ))

[comment]: # ({/b169abdb-7b0480bb})

[comment]: # ({49d843a0-552d8ac9})
##### degrees(значение) {#degrees}

Конвертация значения из радиан в градусы.

Параметр: 

-   **значение** — проверяемое значение

Например, значение «1», сконвертированное в градусы, будет «57.2957795».

Пример:

    degrees(last(/узел_сети/ключ))

[comment]: # ({/49d843a0-552d8ac9})

[comment]: # ({7078d3f3-790837bf})
##### e {#e}

Число Эйлера (2.718281828459045).

Пример:

    e()

[comment]: # ({/7078d3f3-790837bf})

[comment]: # ({329513b5-5f0104cf})
##### exp(значение) {#exp}

Число Эйлера (e) в степени значения.

Параметр: 

-   **значение** — проверяемое значение

Например, число Эйлера, возведённое в степень «2», будет «7.38905609893065».

Пример:

    exp(last(/узел_сети/ключ))

[comment]: # ({/329513b5-5f0104cf})

[comment]: # ({ae4a884c-fa7bce72})
##### expm1(значение) {#expm1}

Число Эйлера (e) в степени значения, минус один.

Параметр: 

-   **значение** — проверяемое значение

Например, число Эйлера, возведённое в степень «2», после вычитания единицы будет «6.38905609893065».

Пример:

    expm1(last(/узел_сети/ключ))

[comment]: # ({/ae4a884c-fa7bce72})

[comment]: # ({d6651028-367cea41})
##### floor(значение) {#floor}

Округление вниз до ближайшего целого.

Параметр: 

-   **значение** — проверяемое значение

Например, «2.6» будет округлено вниз до «2». Смотрите также [ceil()](#ceil).

Пример:

    floor(last(/узел_сети/ключ))

[comment]: # ({/d6651028-367cea41})

[comment]: # ({fb4ffc82-02960b00})
##### log(значение) {#log}

Натуральный логарифм.

Параметр: 

-   **значение** — проверяемое значение

Например, натуральный логарифм значения «2» будет «0.69314718055994529».

Пример:

    log(last(/узел_сети/ключ))

[comment]: # ({/fb4ffc82-02960b00})

[comment]: # ({e44235f6-9eb02241})
##### log10(значение) {#log10}

Десятичный логарифм.

Параметр: 

-   **значение** — проверяемое значение

Например, десятичный логарифм значения «5» will be «0.69897000433».

Пример:

    log10(last(/узел_сети/ключ))

[comment]: # ({/e44235f6-9eb02241})

[comment]: # ({3b20d32e-9b8efc17})
##### max(<значение1>,<значение2>,...) {#max}

Наибольшее из значений, на которые ссылаются перечисленные элементы данных.

Параметр: 

-   **значениеX** — значение, возвращаемое другой функцией, работающей с историей элементов данных.

Пример:

    max(avg(/узел_сети/ключ,1h),avg(/узел_сети2/ключ2,1h))

[comment]: # ({/3b20d32e-9b8efc17})

[comment]: # ({f8d47c9b-5e82e822})
##### min(<значение1>,<значение2>,...) {#min}

Наименьшее из значений, на которые ссылаются перечисленные элементы данных.

Параметр: 

-   **значениеX** — значение, возвращаемое другой функцией, работающей с историей элементов данных.

Пример:

    min(avg(/узел_сети/ключ,1h),avg(/узел_сети2/ключ2,1h))

[comment]: # ({/f8d47c9b-5e82e822})

[comment]: # ({0c1c211e-120dd48b})
##### mod(значение,делитель) {#mod}

Остаток от деления.

Параметры: 

-   **значение** — проверяемое значение;
-   **делитель** — знаменатель деления.

Например, остаток от деления значения «5» с делителем «2» будет «1».

Пример:

    mod(last(/узел_сети/ключ),2)

[comment]: # ({/0c1c211e-120dd48b})

[comment]: # ({5fae5f18-d8cd6290})
##### pi {#pi}

Константа пи (3.14159265358979).

Пример:

    pi()

[comment]: # ({/5fae5f18-d8cd6290})

[comment]: # ({e5f39714-617a0fc5})
##### power(значение,степень) {#power}

Возведение в степень.

Параметры: 

-   **значение** — проверяемое значение;
-   **степень** — используемый показатель степени.

Например, третья степень значения «2» будет «8».

Пример:

    power(last(/узел_сети/ключ),3)

[comment]: # ({/e5f39714-617a0fc5})

[comment]: # ({2e3144c2-c94a9d57})
##### radians(значение) {#radians}

Конвертация значения из градусов в радианы.

Параметр: 

-   **значение** — проверяемое значение

Например, значение «1», сконвертированное в радианы, будет «0.0174532925».

Пример:

    radians(last(/узел_сети/ключ))

[comment]: # ({/2e3144c2-c94a9d57})

[comment]: # ({91941daf-16f1713f})
##### rand {#rand}

Вернуть случайное целое число. Псевдослучайное число, сгенерированное с использованием времени в качестве seed (достаточно для математичеких целей, но не для криптографии).

Пример:

    rand()

[comment]: # ({/91941daf-16f1713f})

[comment]: # ({d95689d5-e19fd7cb})
##### round(значение,дес_знаков) {#round}

Округлить значение до десятичных знаков.

Параметры: 

-   **значение** — проверяемое значение;
-   **дес_знаков** — количество десятичных знаков для округления (0 также допустим).

Например, значение «2.5482», округлённое до 2 десятичных знаков, будет «2.55».

Пример:

    round(last(/узел_сети/ключ),2)

[comment]: # ({/d95689d5-e19fd7cb})

[comment]: # ({12a89282-9668b2dc})
##### signum(значение) {#signum}

Возвращает «-1» для отрицательного значения, «0» для нуля, «1» для положительного значения.

Параметр: 

-   **значение** — проверяемое значение.

Пример:

    signum(last(/узел_сети/ключ))

[comment]: # ({/12a89282-9668b2dc})

[comment]: # ({8b506ba0-1c54e7c1})
##### sin(значение) {#sin}

Синус значения, воспринимаемого как угол, выраженный в радианах.

Параметр: 

-   **значение** — проверяемое значение

Например, синус значения «1» будет «0.8414709848».

Пример:

    sin(last(/узел_сети/ключ))

[comment]: # ({/8b506ba0-1c54e7c1})

[comment]: # ({8e4e9ad3-f2223e46})
##### sinh(значение) {#sinh}

Гиперболический синус значения.

Параметр: 

-   **значение** — проверяемое значение

Например, гиперболический синус значения «1» будет «1.17520119364».

Пример:

    sinh(last(/узел_сети/ключ))

[comment]: # ({/8e4e9ad3-f2223e46})

[comment]: # ({b3339bb1-a732b60e})
##### sqrt(значение) {#sqrt}

Квадратный корень значения.<br>
Эта функция выдаст ошибку для отрицательного значения.

Параметр: 

-   **значение** — проверяемое значение

Например, квадратный корень из значения «3.5» will be «1.87082869339».

Пример:

    sqrt(last(/узел_сети/ключ))

[comment]: # ({/b3339bb1-a732b60e})

[comment]: # ({f850beb9-0bbc007d})
##### sum(<значение1>,<значение2>,...) {#sum}

Сумма значений, на которые ссылаются перечисленные элементы данных.

Параметр: 

-   **значениеX** — значение, возвращаемое другой функцией, работающей с историей элементов данных.

Пример:

    sum(avg(/узел_сети/ключ,1h),avg(/узел_сети2/ключ2,1h))

[comment]: # ({/f850beb9-0bbc007d})

[comment]: # ({f06f407d-49e10a41})
##### tan(значение) {#tan}

Тангенс значения.

Параметр: 

-   **значение** — проверяемое значение

Например, тангенс значения «1» будет «1.55740772465».

Пример:

    tan(last(/узел_сети/ключ))

[comment]: # ({/f06f407d-49e10a41})

[comment]: # ({4a3d082a-53de5a0f})
##### truncate(значение,дес_знаков) {#truncate}

Усечение значения до указанного числа десятичных знаков.

Параметры: 

-   **значение** — проверяемое значение;
-   **дес_знаков** — количество десятичных знаков, оставляемых после усечения (0 также допустим).

Например, значение как «2.5482», усечённое до 2 десятичных знаков, будет «2.54».

Пример:

    truncate(last(/узел_сети/ключ),2)

[comment]: # ({/4a3d082a-53de5a0f})

[comment]: # ({544a48ff-92620b8c})

См. [все поддерживаемые функции](/manual/appendix/functions).  

[comment]: # ({/544a48ff-92620b8c})
