Serum Введите некоторую математику, чтобы сделать звук

Версия от 17:27, 29 января 2017; Sergey Live (обсуждение | вклад)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)

Данная статья является частью цикла статей Serum

Синтаксический анализатор формулы (текстовое поле находящееся в редакторе формы сигнала) позволяет вводить математические функции для генеративного построения таблиц.

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

К счастью, есть много пресетов формул, и довольно легко вставить формулы, предоставленных другими пользователями (мы уверены, что хороший список будет сделан на форуме пользователей Serum!)

Основные функции[править]

Название

Аргументы

Объяснение

sin

1

функция синусоида

cos

1

функция косинуса

tan

1

функция тангенса

asin

1

функция арксинуса

acos

1

функция арккосинуса

atan

1

функция арктангенса

sinh

1

функция гиперболического синуса

cosh

1

функция гиперболического косинуса

tanh

1

функция гиперболического тангенса

asinh

1

функция гиперболического арксинуса

acosh

1

функция гиперболического арккосинуса

atanh

1

функция гиперболического арктангенса

log2

1

логарифм 2

log10

1

логарифм 10

log

1

логарифм 10

ln

1

логарифм, e (2.71828...)

exp

1

e, возведенное в степень х

sqrt

1

квадратный корень из значения

sign

1

функция знака: -1, если х < 0; 1 если х > 0

rint

1

округление до ближайшего целого числа

abs

1

абсолютная величина

min

переменно

минимум всех аргументов

max

переменно

максимум всех аргументов

sum

переменно

сумма всех аргументов

avg

переменно

среднее значение всех аргументов

Встраиваемое в бинарные операторы[править]

В следующей таблице перечислены двоичные операторы, по умолчанию поддерживаемые анализатором.

Оператор

Значение

Приоритет

&&

логический и

1

||

логический или

2

<=

меньше или равно

4

>=

больше или равно

4

!=

не равно

4

==

ровно

4

>

больше

4

<

менее

4

+

сложение

5

-

вычитание

5

умножение

6

/

деление

6

^

возвести x в степень y

7

Константы и переменные[править]

sel - относится к текущему ("старому") значению сигнала из выбранной таблицы (не изменяется в каждой таблице при использовании много-табличной формулы, другими словами, формула содержит y или z) как раз относится к выбранной таблице при начале обработки формулы.

rand - случайное число от -1,0 до 1,0 остается одинаковым для всех таблиц.

Название

Объяснение

pi

pi (3.141592658979323846264338)

e

e (2.718281828182818281828)

w

текущее значение-времени получаемое графиком, от 0,0 до 1,0
также как (х+1)/2

x

текущее значение-времени получаемое графиком, от -1,0 до 1,0

y

текущий номер таблицы, от 0,0 до 1,0 *Смотри ниже

z

текущий номер таблицы, от -1,0 до 1,0 *Смотри ниже
эквивалент: (у*2)-1

q

Когда 'q' предустановлено в формуле, происходят функции участков FFT, вместо черчения формы сигнала. q проходит от 1 до 512 для соответствующих гармоник.**

in

текущее ("старое") видимое значение сигнала черчения таблицы (изменения в каждой из старых таблиц, при использовании 'Y' или 'Z' на который строит все таблицы)

sel

подобно "in", но только выбранная в данный момент таблица (не изменяется в каждой таблице, использует выбранную таблицу при начале обработки формулы)

rand

случайное число от -1,0 до 1,0, остается одинаковым для всех таблиц (предвычислено для каждого временного положения).

* 'y' и 'z' относятся к текущему номеру таблицы. Таким образом, когда у или z находится в выражении, все таблицы для текущего генератора будет регенерированы!

** 'q', как уже упоминалось выше, делает функцию FFT вместо отображения сигнала. Там нет никаких оснований для включения 'х или у' в формуле, содержащей 'Q'