GGGGGGGGG GGGG GGGGGGGGG GGGGGG GGGGGG GGGGGGGGGG GGGG GGGG GGGG GGGGGG GGGGGG GGGG GGGG GGGG GGGGGGGGGGGG GGGGGGGGG G GGGG G GGGG GGGG GGGG GGGG GGGGGG GGGGGGGGGGGGG GGGGGGGGGG GG GGGG GG GGGG GGGG GGGGG GGGGG GGGGG GGGGGGGGGGGG GGGGGGGGG GG GGGGGG GGGG GGGG GGGG GGGG GGGG GGGG GGGG GG GGGG GGGG GGGG GGGG GGGGGGGGGG GGGG GGGGGGGGG GG GGG GGGG GGGGGGGGGG ====================================================================== ===== Geometry plus Simulation modules ===== ===== https://github.com/gismo ===== ======================================================================
Система | Статус | Дополнительная информация |
---|---|---|
CDash | Отчет о результатах всех сборок | |
Appveyor | Windows MSVC 14.0 | |
Круг CI | MacOS XCode 14.3 (x86_64/arm64) | |
Кодирование | ||
GitLab | Конфигурации Linux не по умолчанию | |
Действия GitHub | Последняя версия Linux/MacOS/Windows | |
GitLab-Инрия | CI в Инрии | |
Ферма GCC | Статус | Строители с фермы GCC |
ОБС | двоичные файлы | Сборки исходных пакетов для многих дистрибутивов Linux |
Панель запуска | двоичные файлы | Сборки исходных пакетов для дистрибутивов Ubuntu |
Этот файл README содержит краткую информацию. Более подробную информацию можно найти на страницах Wiki.
Последнюю версию кода можно получить с помощью git (через https):
git clone https://github.com/gismo/gismo.git
или используя подрывную деятельность:
svn co https://github.com/gismo/gismo/trunk gismo
или в виде файла tar.gz или zip:
https://github.com/gismo/gismo/archive/stable.tar.gz
https://github.com/gismo/gismo/archive/stable.zip
Операционные системы:
MS Windows
Линукс
macOS
FreeBSD
Конфигурация: CMake 2.8.12 или новее.
Протестированные компиляторы включают последние версии
Оптимизирующий компилятор C/C++ от AMD
AppleClang см. здесь для поддержки OpenMP.
Кланг
ГНУ GCC
Компилятор Intel C++
Мингв64
MS Visual Studio С++
PGI C/C++ только с GISMO_WITH_OPENMP=OFF
Известно, что компиляторы не работают
Oracle Developer Studio не может скомпилировать Eigen
IBM XLC C/C++ не удается скомпилировать Eigen
Рекомендуется:
Doxygen для генерации документации.
Паравью для визуализации.
Для компиляции требуется настройка с помощью CMake в новой пустой папке (сборки в исходном коде отключены).
В Linux/macOS : Make-файл Unix существует в корневой папке исходного кода. При запуске make
создается подпапка с именем build
и выполняется CMake и компиляция внутри этой папки. Альтернативно вы можете выбрать собственную папку сборки и выполнить CMake, указав на исходные коды.
В MS Windows :
Для собственной компиляции G+Smo вы можете использовать MS Visual Studio, которая имеет встроенную поддержку CMake, начиная с версии 2015. Альтернативно вы можете запустить инструмент cmake-gui
(из среды, настроенной с помощью вашего компилятора) для создания make-файлов (или файлы проекта Visual Studio). Затем запустите инструмент make, чтобы запустить компиляцию. Альтернативно можно использовать графический интерфейс QtCreator и открыть файл CMakeLists.txt в корневой папке, чтобы создать проект QtCreator.
Другой вариант — установить подсистему Windows для Linux, которая:
позволяет разработчикам устанавливать дистрибутив Linux [...] и использовать приложения Linux, утилиты и инструменты командной строки Bash непосредственно в Windows, без изменений, без затрат на традиционную виртуальную машину или настройку двойной загрузки.
Затем вы сможете загрузить, скомпилировать и использовать G+Smo, как если бы вы использовали родную машину с Linux.
После успешной компиляции динамическая библиотека создается в ./lib
, а исполняемые примеры программ выводятся в подкаталог ./bin
папки сборки.
Кроме того, если в системе доступен Doxygen, можно выполнить (например, в Linux):
make doc
чтобы получить документацию Doxygen в формате HTML. Основная страница doxygen находится по адресу ./doc/html/index.html
.
Дополнительную информацию можно найти на https://github.com/gismo/gismo/wiki.
Существует ряд дополнительных модулей, которые можно включить.
Имя | Описание |
---|---|
gsOpenCascade | Расширяет функциональность с помощью OpenCascade |
gsЭластичность | |
gsKLShell | |
gsСтруктурныйАнализ |
Чтобы включить, например, gsSpectra и gsOpenCascade, установите в CMake следующую опцию:
-D GISMO_OPTIONAL="gsSpectra;gsOpenCascade"
Доступные параметры отображаются в конфигурации CMake. Краткое описание и настройки по умолчанию следующие:
Выпуск CMAKE_BUILD_TYPE
Доступные значения — это стандартные конфигурации сборки CMake: Debug, Release, RelWithDebInfo, MinSizeRel.
GISMO_COEFF_TYPE двойной
Арифметический тип, который будет использоваться для всех вычислений. Доступные варианты: двойной, длинный двойной, плавающий.
GISMO_EXTRA_INSTANCE не установлен.
Если установлено одно или несколько параметров, доступных для GISMO_COEFF_TYPE, библиотека G+Smo компилируется с включенными дополнительными арифметическими типами.
GISMO_WITH_XDEBUG ВЫКЛ.
Если установлено значение ON, во время компиляции будут включены дополнительные инструменты отладки. К ним относятся проверенные итераторы для компиляторов GCC и MSVC и распечатка обратной трассировки стека вызовов при возникновении исключения во время выполнения.
GISMO_BUILD_LIB ВКЛ.
Если этот параметр включен, динамическая библиотека создается с использованием арифметики GISMO_COEFF_TYPE. Цель для статической библиотеки с именем gismo_static также создается, но не компилируется по умолчанию.
GISMO_BUILD_EXAMPLES ВКЛ.
Если этот параметр включен, программы в папке примеров компилируются, а исполняемые файлы создаются в папке build-folder/bin.
GISMO_BUILD_UNITTESTS ВЫКЛ.
Если этот параметр включен, тесты в папке unittests компилируются, а исполняемый файл создается в папке build-folder/bin.
GISMO_PLUGIN_AXL ВЫКЛ.
Если этот параметр включен, компилируется плагин для Axel modeler (требуется Axel).
GISMO_WITH_PSOLID ВЫКЛ.
Если этот параметр включен, компилируются расширения, использующие функции геометрического ядра Parasolid (требуется Parasolid).
gsOpennurbs
Расширение для чтения и записи 3DM Rhinoceros.
CMAKE_INSTALL_PREFIX (зависит от системы)
Место для установки библиотеки, например /usr/local в некоторых системах Linux.
Дерево исходного кода состоит из следующих подпапок:
источник
Содержит все исходные файлы. Код разбит на модули. В настоящее время одиннадцать модулей представлены в виде подпапок:
gsCore
gsMatrix
gsNurbs
gsHSсплайны
gsModeling
gsAssembler
gsSolver
gsPde
gsTensor
гсИО
gsUtils
примеры
Примеры использования, небольшие программы и обучающие материалы.
юнит-тесты
Юнит-тесты для некоторых частей кодовой базы.
данные файла
Файлы данных в формате XML, которые G+Smo может читать и записывать.
расширения
Дополнительные дополнительные функции, которые можно скомпилировать с помощью G+Smo.
плагины
Плагины для:
Аксель моделист
3DM Носорога
cmake
Файлы конфигурации Cmake.
док
Файлы, относящиеся к документации doxygen.
Научный проект openSUSE: https://en.opensuse.org/openSUSE:Science_Math
Порт FreeBSD: https://www.freshports.org/math/gismo/
Восходящие пакеты Ubuntu: https://launchpad.net/~g+smo/+archive/ubuntu/upstream
Страницы Вики:
https://github.com/gismo/gismo/wiki
Сообщения об ошибках:
https://github.com/gismo/gismo/issues
Вопросы (Вопросы и ответы):
https://github.com/gismo/gismo/discussions/categories/qa
Координатор и сопровождающий: Ангелос Манцафларис.
Полный список смотрите на нашей вики-странице.
Библиотека G+Smo распространяется под лицензией Mozilla Public License v2.0. (см. ЛИЦЕНЗИЯ.txt).