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 ===== ======================================================================
Sistema | Status | Mais informações |
---|---|---|
CDash | Relatar resultados de todas as compilações | |
Appveyor | WindowsMSVC 14.0 | |
Círculo CI | MacOS XCode 14.3 (x86_64/arm64) | |
Código | ||
GitLab | Configurações não padrão do Linux | |
Ações do GitHub | Linux/MacOS/Windows mais recentes | |
GitLab-Inria | CI na Inria | |
Fazenda CCG | Status | Construtores da Fazenda GCC |
OBS. | binários | Compilações de pacotes upstream para muitas distribuições Linux |
Barra de lançamento | binários | Compilações de pacotes upstream para distribuições Ubuntu |
Este arquivo README contém informações breves. Mais detalhes são encontrados nas páginas Wiki.
A última revisão do código pode ser obtida usando git (via https):
git clone https://github.com/gismo/gismo.git
ou usando subversão:
svn co https://github.com/gismo/gismo/trunk gismo
ou como um arquivo tar.gz ou zip:
https://github.com/gismo/gismo/archive/stable.tar.gz
https://github.com/gismo/gismo/archive/stable.zip
Sistemas operacionais:
Microsoft Windows
Linux
macOS
FreeBSD
Configuração: CMake 2.8.12 ou mais recente.
Os compiladores testados incluem versões recentes do
AMD otimizando compilador C/C++
AppleClang veja aqui para suporte OpenMP
Clang
GNU GCC
Compilador Intel C++
Mingw64
MSVisual Studio C++
PGI C/C++ somente com GISMO_WITH_OPENMP=OFF
Compiladores conhecidos por não funcionarem
Oracle Developer Studio falha ao compilar o Eigen
IBM XLC C/C++ falha ao compilar Eigen
Recomendado:
Doxygen para geração de documentação.
Paraview para visualização.
A compilação requer configuração usando CMake em uma pasta nova e vazia (compilações de código-fonte estão desativadas).
No Linux/macOS : existe um makefile Unix na pasta de origem raiz. A execução de make
cria uma subpasta chamada build
e executa o CMake e a compilação dentro dessa pasta. Alternativamente, escolha sua própria pasta de compilação e execute o CMake apontando para as fontes.
No MS Windows :
Para compilar G+Smo nativamente, você pode usar o MS Visual Studio que possui suporte CMake integrado desde a versão 2015. Alternativamente, você pode executar a ferramenta cmake-gui
(a partir de um ambiente configurado com seu compilador) para gerar makefiles (ou Arquivos de projeto do Visual Studio). Em seguida, execute a ferramenta make para iniciar a compilação. Alternativamente, use a GUI do QtCreator e abra o arquivo CMakeLists.txt na pasta raiz para criar um projeto QtCreator.
Outra opção é instalar o Windows Subsystem para Linux que:
permite que os desenvolvedores instalem uma distribuição Linux [...] e usem aplicativos Linux, utilitários e ferramentas de linha de comando Bash diretamente no Windows, sem modificações, sem a sobrecarga de uma máquina virtual tradicional ou configuração de inicialização dupla.
Então você pode baixar, compilar e usar o G+Smo como se estivesse usando uma máquina Linux nativa.
Após a compilação bem-sucedida, uma biblioteca dinâmica é criada em ./lib
e programas de exemplo executáveis são gerados no subdiretório ./bin
da pasta de construção.
Além disso, se o Doxygen estiver disponível no sistema, pode-se executar (por exemplo, no Linux):
make doc
para obter a documentação do Doxygen em formato HTML. A página principal do doxygen está em ./doc/html/index.html
.
Mais informações em https://github.com/gismo/gismo/wiki
Existem vários módulos opcionais que podem ser ativados.
Nome | Descrição |
---|---|
gsOpenCascade | Amplia a funcionalidade usando OpenCascade |
gsElasticidade | |
gsKLShell | |
gsAnálise Estrutural |
Para ativar, por exemplo, gsSpectra e gsOpenCascade, defina a seguinte opção no CMake:
-D GISMO_OPTIONAL="gsSpectra;gsOpenCascade"
As opções disponíveis são exibidas na configuração do CMake. Segue uma breve descrição e configuração padrão:
Versão CMAKE_BUILD_TYPE
Os valores disponíveis são as configurações de compilação padrão do CMake: Debug, Release, RelWithDebInfo, MinSizeRel.
GISMO_COEFF_TYPE duplo
O tipo aritmético a ser usado para todos os cálculos. As opções disponíveis incluem duplo, duplo longo e flutuante.
GISMO_EXTRA_INSTANCE não definido
Se definida como uma ou mais opções disponíveis para GISMO_COEFF_TYPE, a biblioteca G+Smo é compilada com tipos aritméticos extras habilitados.
GISMO_WITH_XDEBUG DESATIVADO
Se definido como ON, ferramentas de depuração adicionais serão habilitadas durante a compilação. Isso inclui iteradores verificados para compiladores GCC e MSVC e impressão de rastreamento de pilha de chamadas quando ocorre uma exceção de tempo de execução.
GISMO_BUILD_LIB ATIVADO
Se ativado, uma biblioteca dinâmica é criada usando a aritmética GISMO_COEFF_TYPE. Um destino para uma biblioteca estática chamada gismo_static também é criado, mas não é compilado por padrão.
GISMO_BUILD_EXAMPLES ATIVADO
Se ativado, os programas na pasta de exemplos serão compilados e os executáveis serão criados na pasta build/bin.
GISMO_BUILD_UNITTESTS DESATIVADO
Se habilitado, os testes na pasta unittests são compilados e um executável é criado em build-folder/bin.
GISMO_PLUGIN_AXL DESLIGADO
Se habilitado, o plugin para modelador Axel é compilado (requer Axel).
GISMO_WITH_PSOLID DESATIVADO
Se habilitado, as extensões usando funcionalidades do kernel geométrico Parasolid são compiladas (requer Parasolid).
gsOpennurbs
Extensão para leitura e escrita do 3DM do Rhinoceros.
CMAKE_INSTALL_PREFIX (dependente do sistema)
O local para instalação da biblioteca, por exemplo, /usr/local em alguns sistemas Linux.
A árvore de origem consiste nas seguintes subpastas:
fonte
Contém todos os arquivos de origem. O código é particionado em módulos. Atualmente onze módulos estão presentes como subpastas:
gsCore
gsMatriz
gsNurbs
gsHSplines
Modelagem gs
gsAssembler
gsSolver
gsPde
gsTensor
gsIO
gsUtils
exemplos
Exemplos de uso, pequenos programas e tutoriais.
testes unitários
Unittests para algumas partes da base de código.
dados de arquivo
Arquivos de dados no formato XML que o G+Smo pode ler e escrever.
extensões
Recursos adicionais opcionais que podem ser compilados junto com o G+Smo.
plug-ins
Os plug-ins para:
Modelador de eixo
3DM do Rinoceronte
cmfazer
Arquivos de configuração do Cmake.
documento
Arquivos relacionados à documentação do doxygen.
Projeto científico openSUSE: https://en.opensuse.org/openSUSE:Science_Math
Porta FreeBSD: https://www.freshports.org/math/gismo/
Pacotes upstream do Ubuntu: https://launchpad.net/~g+smo/+archive/ubuntu/upstream
Páginas Wiki:
https://github.com/gismo/gismo/wiki
Relatórios de erros:
https://github.com/gismo/gismo/issues
Perguntas (perguntas e respostas):
https://github.com/gismo/gismo/discussions/categories/qa
Coordenador e mantenedor: Angelos Mantzaflaris
Veja a lista completa em nossas páginas wiki
A biblioteca G+Smo é distribuída sob a Licença Pública Mozilla v2.0. (veja LICENSE.txt).