Skip to content

vortexmethods/pod

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

POD: algorithm of Proper orthogonal decomposition for 2D data storing and analyzing

Repo Size License

Copyright (C) 2020-2022 Ilia Marchevsky, Soldatova Irina, Sokol Kseniia

Программная реализация (с открытым исходным кодом) метода ортогональных разложений для для хранения и анализа расчетных двумерных данных.

Версия 1.0 от 01 августа 2022 г.

ЛИЦЕНЗИЯ

Программа распространяется на условиях свободной лицензии GNU GPLv3

ИСПОЛЬЗУЕМЫЕ МЕТОДЫ

В репозитории представлены программные реализации следующего метода:

  • POD - метод ортогональных разложений, POD, впервые был описан J.L. Lumley в 1967 г., как попытка разложить случайное векторное поле турбулентного движения жидкости как набор детерминированных функций, каждая из которых улавливает некоторую часть общей колебательной кинетической энергии в потоке.

СТРУКТУРА РЕПОЗИТОРИЯ

  • include/Eigen - общие библиотеки (eigen и вспомогательные типы данных)

  • run - папка, в которой хранится файл "info.txt" и вспомогательный файл для обработки собственных чисел

  • src - исходные коды метода POD

УСТАНОВКА

Для запуска программы POD на комьютере необходимо загрузить исходные коды программы. Если на Вашем компьютере установлен "Git", достаточно исполнить команду

  git clone https://github.com/vortexmethods/pod POD

по результатам работы которой в текущей папке будет создана подпапка POD и в нее будут загружены все файлы из репозитория.

Подготовка к компияции исходных кодов предполагает создание папок "build" в каталогах POD с загруженными исходными кодами, переход в эти папки и выполнение команды

  cmake ..

При необходимости следует указать необходимые ключи для настройки используемых компиляторов, указания опций компиляции и т.п., возможно, потребуется также некоторая модификация файла "CMakeLists.txt", содержащего параметры настройки CMake.

В частности, для подготовки исходных кодов для их последующей компиляции в Windows средствами MS Visual Studio следует, в зависимости от версии, использовать одну из следующих команд (опция Win64 обязательна для использования возможности проведения вычислений на графических картах Nvidia CUDA, для Visual Studio 2019 она включена по умолчанию для 64-битных систем)

  cmake -G"Visual Studio 15 2017 Win64" ..
  cmake -G"Visual Studio 16 2019" ..

В случае использования компилятора, отличного от используемого по умолчанию в Windows (это, как правило, встроенный в MS Visual Studio компилятор MVSC), например, компилятора Intel, при подготовке исходных кодов к компиляции необходимо указать, в зависимости от версии, ключ (отметим, что Intel C++ Compiler 19 интегрируется в Visual Studio 2019 лишь начиная с версии Upd.4)

  -T"Intel C++ Compiler <ver>"

При работе в Linux альтернативный компилятор с C++ (к примеру, icpc для компилятора Intel вместо используемого в большинстве случаев по умолчанию компилятора g++) требуется исполнить команду

  CXX=icpc cmake ..

Дальнейшая компиляция кода зависит от используемой операционной системы. В Windows, как правило, при помощи CMake будет создан проект для его поледующего открытия и компиляции средствами MS Visual Studio (см. выше), в Linux достаточно исполненияиз созданной папки команды

  make

ЗАПУСК

Запуск программы осуществляется строго из папки build, для корректной работы кода необходимо, чтобы в папке build находился файл "info.txt", в котором содержатся исходные данные.

НЕОБХОДИМОЕ ПО

Для компиляции требуется наличие установленных:

  • системы автоматизации сборки программного обеспечения из исходного кода cmake,
  • компилятора с языка C++, поддерживающего технологию OpenMP и стандарт С++11,
  • библиотеки Eigen (не обязательно, исходные коды находятся в папке "include"),

КРАТКАЯ ИСТОРИЯ ВЕРСИЙ

ВОПРОСЫ, ПРЕДЛОЖЕНИЯ И ЗАМЕЧАНИЯ

На странице Issues мы будем рады ответить на Ваши вопросы, с благодарностью выслушаем предложения и замечания по коду.

Мы открыты для любого конструктивного взаимодействия!


С глубоким уважением, разработчики

Марчевский И.К.
Марчевский Илья Константинович
Солдатова И.А.
Солдатова Ирина Александровна
Сокол К.С.
Сокол Ксения Сергеевна

About

POD: algorithm of Proper orthogonal decomposition for 2D data storing and analyzing

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages