PolyDiM

📢 PolyDiM updates


  • 👩‍💻 PolyDim for MATLAB users is now available, bringing PolyDim-based methods into MATLAB to support advanced numerical workflows and polytopal discretization techniques.
  • 🧠 The PolyNAVEM-library that implements NAVEM (Neural Approximated Virtual Element Method) is out. Built directly on top of PyPolyDim for seamless integration and performance, it brings neural network capabilities into the PolyDiM ecosystem.
    navem logo
  • 📸 Pics2Mesh App transforms images into 2D mesh structures using a simple Python pipeline and refinement strategies based on PolyDiM & GeDiM, making geometry reconstruction robust, and accessible.
    picstomesh=
    picstomesh
    ➡️picstomesh
    ➡️picstomesh
    ➡️picstomesh
    ➡️picstomesh
    ➡️picstomesh
Polytopal Discretization Methods

VUOTO

C++

C++

Download the C++ library

C++ 20Cross-platform
Source package and examples
Python

Python

Download the Python library

Python 3.11+PyPI
pip install pypolydim

MATLAB

Download the MATLAB library from MathWorks File Exchange

Requires a MathWorks account

MATLAB is a registered trademark of The MathWorks, Inc. This project is not affiliated with nor endorsed by MathWorks.

What is PolyDiM?

PolyDiM is an open-source library based on collaborative development. It provides a flexible framework for solving linear and nonlinear partial differential equations using various numerical methods, including virtual and finite element methods. Designed to work in arbitrary dimensions, it also enables the coupling of 1D, 2D, and 3D problems.

A great flexibility
PolyDiM Supports arbitrary polygonal and polyhedral elements, including concave elements, and enables automatic handling of hanging nodes.
A large set of applicability fields
Virtual and finite elements are widely used in computational mechanics, structural analysis, fluid dynamics, and multiphysics simulations. Moreover, virtual elements ensure the preservation of physical constraints, such as incompressibility.
Robustness to badly-shaped elements and Numerical Stability
Virtual Element Methods are robust to poorly shaped and highly elongated elements, making it easy to generate conforming polygonal and polyhedral meshes in complex geometries.

PolyDiM is a submodule of a more advanced library with a rich History, that also includes the submodule

🔭 Read the PolyDiM paper to discover all its functionalities.


paper

Thank you for your continued support, and we hope you will enjoy reading the paper!

Contacts

Our team is always enthusiastic to hear ideas and suggestions for new features. If you have an improvement in mind, feel free to reach out via mail.

If you're proposing a major feature or a semantic change, please don’t jump straight into coding. If the idea isn’t a conceptual fit, you might end up wasting valuable time. Instead, start by posting on our mailing list and creating a GitHub issue. Clearly describe what you want to achieve and why.

For minor fixes or enhancements, feel free to open an issue directly on GitHub.

We look forward to collaborating with you!

Andrea, Gioana and Fabio

Main contributors

Andrea Borio
Gioana Teora
Fabio Vicini