Este projeto resolve o problema de elasticidade linear usando PETSc em 2d e 3d para coeficientes de lamé que são constantes ou constantes por célula em uma grade cartesiana usando o algoritmo GenEO descrito em https://hal.archives-ouvertes.fr/hal-01170059/document .
Para instalar este pacote, você precisa primeiro instalar o anaconda. Se você não possui o anaconda em seu sistema, você pode baixar o miniconda para Python 3 (https://conda.io/miniconda.html).
Para instalar este projeto, você deve cloná-lo
git clone https://github.com/gouarin/GenEO.git
cd GenEO
A seguir, criaremos um ambiente com todos os pacotes necessários usando o seguinte comando.
conda env create -f environment.yml
Para ativar seu ambiente
source activate petsc-geneo
Então
python setup.py install
No diretório deste projeto você tem um diretório demos
com exemplos 2D e 3D.
É importante estar no ambiente conda criado anteriormente. Se não for o caso
source activate petsc-geneo
Este é um exemplo de como testar um deles
mpiexec -np 4 python demo_elasticity_2d.py -AMPCG_verbose -ksp_monitor -PCBNN_verbose
Se a execução de demo_elasticity_2d.py
for bem-sucedida, você deverá ter um nome de arquivo 'solution_2d_asm.vts'
.
Para visualizar este arquivo, você deve instalar o paraview (https://www.paraview.org/download/).
paraview
e selecione arquivo-> estado de carregamento.paraview
deste projeto chamado visu_2d.pvsm
.vts
.Você deverá ver os resultados.