Projeto simples para explorar interoperabilidade entre o Fortran e o Python. Para essa tal foi utilização o f2py. O f2py gera automaticamente um wrapper em C para depois compilar uma lib cpython. Esse pacote faz parte no numpy. O f2py usa meson para configurar o build da lib. O build-system precisa do numpy e do meson-python. Além disso o meson pode ser utilizando para fazer os testes de inidades na camada do Fortran.
Lista de ferramentas:
Todo o código Fortran está isolado em library. Os testes da camada de Fortran estão na subpasta fortan
Criar a o ambiente virtual:
python -m venv .venv --upgrade-depsApós de ativar o ambiente virtual basta fazer
source .venv/bin/activateInstalando as dependencias dev no modo editavel.
pip install meson-python meson ninja numpy
pip install --no-build-isolation --editable ".[dev]"Instalando as dependencias dev.
pip install ".[dev]"Para executar usando a interface fortran:
pyfsolver fortran sist3.mtx sist3_b.mtxPara executar usando apenasa o numpy :
pyfsolver numpy sist3.mtx sist3_b.mtxtask testtask packagePara qualidade temos configurado o black, isort, flake8 e mypy. Para executar essa ferramentas a cada comite pode-se instalar o precommit:
pre-commit installou manualmente rodar formatador, linter e os testes:
task fmt
task linter
task testAlém disso temo um CI configurado.