Формирование сигналов в среде MathCAD
В Mathcad для задания различных функций y(x)=f(x) для описания f(x) используются как встроенные в пакет различные функции (тригонометрические, специальные и т.п.), так и введенные пользователем.
При этом для вычисления y(x) (и графического представления результатов) следует задать значения аргумента, при которых и рассчитывается функция.
Аргумент x задается как последовательность значений, при которых и выполняется расчет:
x:=x0, x1.. xk
x0 - начальное значение; x1 - следующее значение; xk - конечное значение;
Δx =(x1 - x0) – шаг изменения аргумента;
N = (xk - x0)/Δx +1 – число точек аргумента (рассчитываемой функции).
Количество расчетных точек N выбирается из соображений получения «гладких» зависимостей при построении графиков. При задании опции Traces – lines – solid рассчитанные точки на графике соединяются отрезками прямых линий и для «гладкости» графиков обычно достаточно 100…200 расчетных точек.
Иногда может быть удобнее задать N и по заданному диапазону [ x_min, x_max ]
|
|
вычислить Δx и значения расчетных точек задать в форме:
x:=x_min,x_min+ Δx.. Δx*N
Например, для построения функций (полиномов) Чебышева, ортогональных на интервале {-1..+1} с Δx=0.01 (число расчетных точек 200), следует задать:
Требуемые операторы можно ввести как с соответствующих панелей инструментов, так и с клавиатуры:
- оператор присвоения (:=) – двоеточие;
- задание диапазона значений аргумента (..) – точка с запятой;
- двухмерный график – Shift-2 (@).
Рис. 1. Графики некоторых функций Чебышева.
Сигналы во временной области описываются функциями времени u(t), поэтому логично аргумент обозначить через t (выражаемый в единицах времени).
Однако, в ряде случаев, в частности, при использовании встроенных функций: преобразования Фурье (FFT(u)), статистических, и др., необходимо, чтобы участвующие в этих функциях величины u были бы представлены в виде векторов (индексированных переменных). Поэтому далее в приводимых примерах формирования сигналов будем представлять их в виде векторов ut.
Для описания сигналов - векторов ut следует в начале определить:
T:= - количество расчетных точек, т.е. число элементов вектора.
Если далее в расчетах будет использоваться спектральное преобразование FFT(u), то значение T должно быть равно 2m (m>2).
Например: T:=256 или m=8 T:=2m
При этом T можно рассматривать как интервал формирования (моделирования) сигнала, выраженного в относительном времени (например, считая, что T=1 мсек).
Далее следует задать изменение времени – расчетные точки, т.е. задать индексацию элементов вектора (текущее время):
t:=0..T-1 (если второй элемент при задании диапазона опущен, то шаг равен 1).
|
|
Примечание: индексы элементов вектора – порядковые числа 0,1,2..T-1. Начальный индекс по умолчанию равен 0. При необходимости начало индексации может быть изменено присвоением требуемого значения:
ORIGIN:= (присвоенное таким образом значение начального индекса действует на весь документ).
Далее определяется функция, описывающая формируемый сигнал.
Приведем примеры формирования некоторых типовых сигналов.