Документация Engee

sawtooth

Страница в процессе разработки.

Пилообразная или треугольная волна.

Библиотека

EngeeDSP

Синтаксис

Вызов функции

  • x = sawtooth(t) — генерирует пилообразную волну с периодом для элементов временного массива t. Функция sawtooth генерирует пилообразную волну с пиками -1 и 1. Пилообразная волна равна -1 при значениях времени, кратных , и линейно возрастает со временем с наклоном во все остальные моменты времени.

  • x = sawtooth(t,xmax) — генерирует модифицированную треугольную волну с положением максимума на каждом периоде, определяемым xmax. Установите xmax равным 0.5, чтобы сгенерировать стандартную треугольную волну.

Аргументы

Входные аргументы

# t — значения времени
вектор | матрица

Details

Значения времени, заданные в виде вектора или матрицы. Функция sawtooth работает с первым измерением массива из t с размером больше 1.

Типы данных

Float64

# xmax — максимальное значение волны
1 (по умолчанию) | скаляр от 0 до 1

Details

Максимальное значение волны, заданное как скаляр от 0 до 1. Значение xmax определяет точку между 0 и , в которой волна достигает своего максимума. Функция увеличивается с -1 до 1 на интервале от 0 до xmax, затем линейно уменьшается от 1 до -1 на интервале xmax до . Затем форма повторяется с периодом в .

Например, xmax = 0.5 определяет стандартную треугольную волну, симметричную относительно значения времени , с амплитудой от пика до пика, равной 1.

Типы данных

Float64

Выходные аргументы

# x — пилообразная волна
вектор | матрица

Details

Пилообразная волна, возвращаемая в виде вектора или матрицы.

Типы данных

Float64

Примеры

Пилообразная волна 50 Гц

Details

Сгенерируем 10 периодов пилообразного сигнала с основной частотой 50 Гц. Частота дискретизации — 1 кГц.

import EngeeDSP.Functions: sawtooth

T = 10 * (1/50)
fs = 1000
t = 0:1/fs:T-1/fs

x = sawtooth.(2*pi*50 .* t)

plot(t, x, grid = true)
xlabel!("Time (s)")
ylabel!("Amplitude")

func sawtooth 1

Треугольная волна 50 Гц

Details

Сгенерируем 10 периодов треугольного сигнала с основной частотой 50 Гц. Частота дискретизации — 1 кГц.

import EngeeDSP.Functions: sawtooth

T = 10 * (1/50)
fs = 1000
t = 0:1/fs:T-1/fs

x = sawtooth.(2*pi*50 .* t, 0.5)

plot(t, x, grid = true)
xlabel!("Time (s)")
ylabel!("Amplitude")

func sawtooth 2