Преобразование Хартли

На главную

Данная библиотека написана для демонстрации возможности замены широко используемого преобразования Фурье на менее известное, но не менее интересное преобразование Хартли. Для вычисления спектра мощности (т.к. именно он используется в большинстве случаев) с использованием преобразования Фурье приходится переводить действительную функцию в комплексную область, а затем вновь в действительную, на что используется дополнительное машинное время и память. Использование преобразования Хартли позволяет избежать этих переходов т.к. оно определено в действительной области. Для ознокомления с преобразованием Хартли могу рекомендовать книгу Р.Брейсуелла "Преобразование Хартли".

Основные дастоинства преобразования Хартли:

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

    Впервые описание преобразования было опубликовано в статье Р.Хартли в журнале Proceedings of the Institute of Radio Engineers в 1942 г.

    Основы преобразования Хартли:
    Основные соотношения определяющие прямое и обратное преобразования Хартли:

    - прямое преобразование Хартли.

    - обратное преобразование Хартли.

    - определение функции cas.

    В предлагаемую вашему вниманию библиотеку включены функции вычисления одномерного преобразования Хартли (дискретного, быстрого), функции вычисления спектра мощности, фазового спектра и функции перевода вычисленного преобразования Хартли в преобразование Фурье (и обратно).

    Библиотека скомпилирована в VisualC++ 6 в виде динамической библиотеки (dll), для использования данной библиотеки с Ваших проектах необходимо подключить к проекту на VC++ 6 библиотеку hartly.lib (вписав ее в Project/ Settings/ Link/ Object/library modules, или просто добавив к проекту Project/ Add to project/ Files). Саму библиотеку hartly.dll необходимо поместить в каталог вместе с исполняемой программой. В файле hartly.h приведены прототипы и краткое описание функций библиотеки.

    Для демонстрации применения библиотеки написан небольшой пример позволяющий вычислять преобразование Хартли, спектр мощности и фазовый спектр произвольного массива данных (*.dat). Файл данных должен содержать в первой строке количество элементов, причем оно должно быть равно 2 в целой степени.

    Библиотека преобразования Хартли - 25003 байт.

    Пример использования библиотеки - 56536 байт.

    Пример массивов данных - 11104 байт.


    На главную

    (C) 2002 Vallen

    Hosted by uCoz