MathCAD — это просто! Часть 18. Символьные преобразования
Источник: http://www.nestor.minsk.by/kg
Особое место в символьной математике MathCAD'а занимают символьные преобразования. Этот вид символьных вычислений используется по сравнению с другими не слишком часто, но, тем не менее, его роль в ряде вычислений трудно переоценить.
Вы скажете, что то, что мы делали до этого, тоже можно назвать символьными преобразованиями. Что же, это будет, несомненно, вполне справедливо, так как рассматриваемые нами операторы действительно преобразовывали тем или иным образом исходное выражение. Тем не менее, символьными преобразованиями применительно к MathCAD'у называется, как правило, группа вполне конкретных преобразований, в которую входят прямое и обратное преобразование Фурье, прямое и обратное преобразование Лапласа, а также прямое и обратное Z-преобразование. В общем-то, конечно же, эти преобразования по своей сути довольно просты, но если заниматься ими без компьютера (то есть вооружившись исключительно бумагой и ручкой), то может возникнуть ряд проблем, поскольку данные преобразования предполагают интегрирование преобразуемых выражений, хотя, конечно же, существуют специальные правила (например, для того же преобразования Лапласа), которые дают возможность вычислить результат преобразований и без интегрирования. Пользуясь MathCAD'ом, вы избавите себя от необходимости как интегрировать все эти выражения, так и заучивать громоздкую систему правил более простого применения преобразований. Впрочем, конечно же, MathCAD не избавит вас от необходимости понимания сути данных преобразований и интерпретации их результатов. Впрочем, думаю, пора уже перейти к рассказу о самих преобразованиях, а не о том, как легко их выполнять в MathCAD — вы сами сможете убедиться в том, что это действительно легко, на практике.
Преобразование Лапласа
Преобразование Лапласа — основа операционного исчисления — довольно большого раздела математики, занимающегося решением дифференциальных уравнений с помощью перевода их в алгебраические. Операционное исчисление было придумано в конце 19-го столетия английским физиком Оливером Хевисайдом для расчета свойств электрических цепей. Первоначально встреченное со скепсисом из-за отсутствия строгого математического обоснования производимых действий, к нашему времени операционное исчисление стало одним из удобнейших способов решения дифференциальных уравнений. В терминах операционного исчисления функция, которая подвергается преобразованию Лапласа, называется оригиналом, а та, которая получается в результате этого преобразования, изображением. Оригинал и изображение определены на различных множествах: изображение — функция комплексной переменной, в то время как оринигал — функция переменной действительной. Хотя мы с вами еще не говорили о работе в MathCAD'е с комплексными переменными, думаю, для того, чтобы освоиться с выполнением символьных преобразований, специальных знаний по этому вопросу вам не понадобится. Записывается преобразование Лапласа в виде математической формулы следующим образом:
Еще одна ремарка: в качестве простейшей функции для проведения над ней преобразования Лапласа обычно рассматривается функция Хевисайда. Это функция, значение которой определяется следующим образом: если аргумент меньше нуля, то ее значение равно нулю; если аргумент равен нулю, то ее значение равно одной второй; если аргумент больше нуля, то ее значение равно единице. Впрочем, поскольку мы с вами вооружены мощнейшей математической средой MathCAD, нет нужды начинать с функции Хевисайда — мы сразу можем обратиться к более сложным примерам. Что ж, давайте теперь посмотрим, как применять преобразование Лапласа в MathCAD'е. Для этого обратимся к успевшей уже, наверное, вам надоесть панели Symbolic (ничего, потерпите — скоро мы с ней уже разберемся окончательно!).
Прямое преобразование Лапласа, как вполне логично было бы предположить, выполняет оператор laplace — так оно, собственно, и есть. Этот оператор нужно поместить следом за функцией, которую нужно преобразовать (и которая, таким образом, будет оригиналом), а в качестве единственного параметра нужно указать переменную, относительно которой эта функция будет преобразовываться.
Обратное преобразование Лапласа делает все то же самое, только наоборот. То есть оно позволяет перейти от изображения функции к ее оригиналу, в связи с чем имеет очень высокую востребованность все в том же операционном исчислении. Применяется обратное преобразование Лапласа в MathCAD’е совершенно точно таким же образом, что и прямое, только для этого нужно использовать оператор invlaplace.
Преобразование Фурье
Преобразование Лапласа, несмотря на всю свою полезность и относительную простоту, далеко не единственное символьное преобразование, с которым вам наверняка придется столкнуться в реальных расчетах с помощью MathCAD'а. Не менее значимо в математике преобразование Фурье. Самое известное использование преобразования Фурье — это переход от временного представления спектральной функции к ее частотному представлению. Для этого преобразование Фурье используется в радиоэлектронике, оптике и других сферах прикладной науки, связанных с обработкой и использованием периодических сигналов. Вообще же преобразование Фурье с математической точки зрения не связано никак с частотой или временем — это просто разложение периодической функции на сумму (в предельном случае — интеграл) синусоидальных слагаемых (т.е. синусов и косинусов), которые имеют различные коэффициенты при аргументах и при самих функциях. При частотно-временной интерпретации, когда синусы и косинусы рассматриваются как некие колебания, мы как раз и получаем периодическую функцию как сумму колебаний с различными амплитудами и частотами. Если же рассматривать все в комплексных числах, то вместо синусов и косинусов будут комплексные экспоненты — т.е. базисными функциями будут уже не тригонометрические, а показательные. Записывается преобразование Фурье в виде формулы следующим образом:
Что ж… Давайте, пожалуй, перейдем к вопросу о том, каким образом можно применять преобразование Фурье в MathCAD'е. Собственно говоря, делать это не сильно сложнее, чем в случае с преобразованием Лапласа, поскольку в этом мощном математическом пакете для преобразования Фурье также предусмотрен специальный оператор. Думаю, будет довольно просто догадаться, что из всех операторов на панели Symblolic за преобразование Фурье отвечает именно оператор fourier. Он точно так же, как и оператор laplace, имеет один параметр — переменную, относительно которой будет проводиться преобразование.
В нашем примере, когда мы пытаемся преобразовать экспоненту, в результате получаем дельта-функцию Дирака. Эта функция является производной функции Хевисайда и определяется как равная нулю везде, кроме точки ноль и бесконечности в этой точке. Обратное преобразование Фурье в MathCAD'е осуществляет оператор invfourier. Его использование, собственно говоря, совершенно аналогично использованию оператора обратного преобразования Лапласа, а потому надолго на нем я останавливаться не буду.
Z-преобразование
Итак, нам с вами осталось рассмотреть последнее на сегодня преобразование, которым мы с вами и завершим разговор о символьных преобразованиях в MathCAD'е. Z-преобразованием называется такое преобразование, при котором ряд вещественных чисел преобразуется в аналитическую комплексную функцию. Если опять брать иллюстрацию из теории сигналов, то выборка вещественных чисел будет временным рядом, а получаемая в результате преобразования функция в качестве аргумента будет использовать комплексную частоту. Формулой Z-преобразование записывается таким вот образом:
Для применения Z-преобразования в проектах MathCAD'а нужно воспользоваться оператором ztrans. Думаю, вы уже догадываетесь, что у этого оператора, как и у остальных операторов символьных преобразований, всего один параметр, в который для успешного проведения преобразования нужно записать имя переменной, относительно которой это самое преобразование будет проводиться.
Для обратного Z-преобразования используется оператор invztrans, который по своему использованию совершенно аналогичен всем остальным MathCAD'овским оператором символьных преобразований.
Стоит отметить, что не следует путать Z-преобразование в том смысле, в котором оно используется сейчас в разговоре о символьных преобразованиях, с Z-преобразованием Фишера — преобразованием выборки величин с тем, чтобы приблизить их к нормальному распределению. Впрочем, поскольку эти формулы относятся к различным разделам математики, думаю, особых проблем и путаницы у вас возникнуть не должно.
Подводя итоги сказанному выше о символьных преобразованиях, можно еще раз упомянуть, что MathCAD существенно облегчает и упрощает работу с ними (кто не верит — попробуйте решить на листочке какой-нибудь пример к статье). Благодаря поддержке преобразования Лапласа в MathCAD'е можно проводить вычисления с использованием всей мощи операционного исчисления, а поддержка других преобразований позволяет проводить расчеты, связанные с теорией сигналов.
SF, spaceflyer@tut.by