All Projects → pyccel → psydac

pyccel / psydac

Licence: MIT License
Python 3 library for isogeometric analysis http://spl.readthedocs.io/

Programming Languages

python
139335 projects - #7 most used programming language
fortran
972 projects

Projects that are alternatives of or similar to psydac

focal
A modern Fortran abstraction layer for OpenCL
Stars: ✭ 35 (+52.17%)
Mutual labels:  fortran2003
euler2D-kfvs-Fortran2003
2D solver for Euler equations in quadrilateral grid, using kinetic flux vector splitting scheme, written in OOP F2003
Stars: ✭ 17 (-26.09%)
Mutual labels:  fortran2003
ZstdFortranLib
👨‍💻Zaak's 🧩(missing) 🏛Standard 🔬Fortran 📚Library 🚧(WIP)
Stars: ✭ 17 (-26.09%)
Mutual labels:  fortran2003
2D CARFIVE
2D Cartesian Quadtree Adaptive Mesh Refinement (AMR) for multiphase Five Equations Model
Stars: ✭ 23 (+0%)
Mutual labels:  fortran2003
CB-Fortran-Color-Theme
Code Blocks color theme for Fortran language
Stars: ✭ 21 (-8.7%)
Mutual labels:  fortran2003

Welcome to PSYDAC

build-devel docs

PSYDAC is a Python 3 Library for isogeometric analysis.

Requirements


  • Python3:

    sudo apt-get install python3 python3-dev
  • pip3:

    sudo apt-get install python3-pip
  • All non-Python dependencies can be installed by following the instructions for the pyccel library

  • All Python dependencies can be installed using:

    export CC="mpicc"
    export HDF5_MPI="ON"
    export HDF5_DIR=/path/to/hdf5/openmpi
    python3 -m pip install -r requirements.txt
    python3 -m pip install -r requirements_extra.txt --no-build-isolation

Installing the library


  • Standard mode:

    python3 -m pip install .
  • Development mode:

    python3 -m pip install --user -e .

Uninstall


  • Whichever the install mode:
    python3 -m pip uninstall psydac

Running tests


export PSYDAC_MESH_DIR=/path/to/psydac/mesh/
python3 -m pytest --pyargs psydac -m "not parallel"
python3 /path/to/psydac/mpi_tester.py --pyargs psydac -m "parallel"

Speeding up Psydac's core


Some of the low-level functions in psydac are written in python in a way that can be accelerated by pyccel. Currently, all of those are in psydac/core/kernels.py and psydac/core/bsplines_pyccel.py.

cd path/to/psydac/core
pyccel kernels.py --language fortran
pyccel bsplines_pyccel.py --language fortran

Mesh Generation


After installation, a command psydac-mesh will be available.

Example of usage

psydac-mesh -n='16,16' -d='3,3' square mesh.h5
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].