From OpenSCADAWiki
Модуль | Имя | Версия | Лицензия | Источник | Языки | Платформы | Тип | Автор | Описание |
---|---|---|---|---|---|---|---|---|---|
FLibMath | Математические функции | 0.6 | GPL2 | spec_FLibMath.so | en,uk,ru,de | x86,x86_64,ARM | Специальные | Роман Савоченко | Предоставляет библиотеку стандартных математических функций. |
Модуль предоставляет в OpenSCADA статичную библиотеку стандартных математических функций.
Для адресации к функциям этой библиотеки можно использовать статический адрес вызова Special.FLibMath.{Func}() или динамический SYS.Special.FLibMath["{Func}"].call(), SYS.Special.FLibMath.{Func}(). Где {Func} — идентификатор функции в библиотеке.
1 Функции
В таблице 1 приведено описание каждой функции библиотеки.
Таблица 1: Функции библиотеки стандартных математических функций
Id | Имя | Описание | Время (мкс) |
---|---|---|---|
abs | Модуль | Мат. функция — модуль от числа. | 81 |
acos | Арккосинус | Мат. функция — арккосинус. | 149 |
asin | Арксинус | Мат. функция — арксинус. | 140 |
atan | Арктангенс | Мат. функция — арктангенс. | 109 |
ceil | Округл. до большего | Мат. функция — округление до большего целого. | 96 |
cos | Косинус | Мат. функция — косинус. | 93 |
cosh | Косинус гиперболический | Мат. функция — косинус гиперболический. | 121 |
exp | Экспонента | Мат. функция — экспонента. | 145 |
floor | Округл. до меньшего | Мат. функция — округление до меньшего целого | 95 |
if | Условие Если | Функция условие — "Если". | 92 |
lg | Десятичный логарифм | Мат. функция — десятичный логарифм. | 168 |
ln | Натуральный логарифм | Мат. функция — натуральный логарифм. | 185 |
pow | Степень | Мат. функция — возведение в степень. | 157 |
rand | Случ. число | Мат. функция — генератор случайных чисел. | 147 |
sin | Синус | Мат. функция — синус. | 127 |
sinh | Синус гиперболический | Мат. функция — синус гиперболический. | 199 |
sqrt | Корень квадратный | Мат. функция — корень квадратный. | 94 |
tan | Тангенс | Мат. функция — тангенс. | 153 |
tanh | Тангенс гиперболический | Мат. функция — тангенс гиперболический. | 177 |
2 API пользовательского программирования
Некоторые объекты модуля предоставляют функции пользовательского программирования.
Объект "Библиотека функций" (SYS.Special.FLibMath)
- ElTp {funcID}(ElTp prm1, ...) — вызов функции библиотеки {funcID}. Возвращает результат вызываемой функции.
Объект "Пользовательская функция" (SYS.Special.FLibMath["funcID"])
- ElTp call(ElTp prm1, ...) — вызов данной функции с параметрами <prm{N}>. Возвращает результат вызываемой функции.