All Projects → polyfem → Polyfem

polyfem / Polyfem

Licence: mit
A polyvalent C++ FEM library

Projects that are alternatives of or similar to Polyfem

Spirit
Atomistic Spin Simulation Framework
Stars: ✭ 67 (-54.42%)
Mutual labels:  cmake, cross-platform, simulation
Fairroot
C++ simulation, reconstruction and analysis framework for particle physics experiments
Stars: ✭ 41 (-72.11%)
Mutual labels:  cmake, simulation
Sparselizard
C++ FEM library | user-friendly | multi-physics | hp-adaptive
Stars: ✭ 145 (-1.36%)
Mutual labels:  finite-elements, simulation
Nitroshare Desktop
Network file transfer application for Windows, OS X, & Linux
Stars: ✭ 1,150 (+682.31%)
Mutual labels:  cmake, cross-platform
Moose
Multiphysics Object Oriented Simulation Environment
Stars: ✭ 652 (+343.54%)
Mutual labels:  finite-elements, simulation
Leaf3d
A lightweight 3D rendering engine based on modern OpenGL
Stars: ✭ 16 (-89.12%)
Mutual labels:  simple, cross-platform
Cmake Get
Get dependencies with cmake
Stars: ✭ 59 (-59.86%)
Mutual labels:  cmake, cross-platform
Autopy
A simple, cross-platform GUI automation module for Python and Rust.
Stars: ✭ 522 (+255.1%)
Mutual labels:  cross-platform, simulation
Friday
An open-source virtual assistant.
Stars: ✭ 88 (-40.14%)
Mutual labels:  simple, cross-platform
Openrct2
An open source re-implementation of RollerCoaster Tycoon 2 🎢
Stars: ✭ 10,115 (+6780.95%)
Mutual labels:  cmake, simulation
Xut.js
批量生成应用平台 http://t.cn/RazBbL0
Stars: ✭ 105 (-28.57%)
Mutual labels:  cross-platform, simulation
Arxlibertatis
Cross-platform port of Arx Fatalis, a first-person role-playing game
Stars: ✭ 602 (+309.52%)
Mutual labels:  cmake, cross-platform
Cpm.cmake
📦 CMake's missing package manager. A small CMake script for setup-free, cross-platform, reproducible dependency management.
Stars: ✭ 560 (+280.95%)
Mutual labels:  cmake, cross-platform
Ros Academy For Beginners
中国大学MOOC《机器人操作系统入门》代码示例 ROS tutorial
Stars: ✭ 861 (+485.71%)
Mutual labels:  cmake, simulation
Screencloud
Screenshot sharing application for Windows, Mac and Linux.
Stars: ✭ 537 (+265.31%)
Mutual labels:  cmake, cross-platform
Core
parallel finite element unstructured meshes
Stars: ✭ 124 (-15.65%)
Mutual labels:  cmake, finite-elements
Qview
Practical and minimal image viewer
Stars: ✭ 460 (+212.93%)
Mutual labels:  simple, cross-platform
Openloco
An open source re-implementation of Chris Sawyer's Locomotion
Stars: ✭ 504 (+242.86%)
Mutual labels:  cmake, simulation
Tvtower
A tribute to Mad TV. Written in BlitzMax, Lua and a bit of C.
Stars: ✭ 73 (-50.34%)
Mutual labels:  cross-platform, simulation
Qhttpengine
HTTP server for Qt applications
Stars: ✭ 112 (-23.81%)
Mutual labels:  cmake, cross-platform

PolyFEM

Build

A polyvalent C++ FEM library.

Logo

Compilation

All the C++ dependencies required to build the code are included. It should work on Windows, macOS and Linux, and it should build out of the box with CMake:

mkdir build
cd build
cmake ..
make -j4

On Linux zenity is required for the file dialog window to work. On macOS and Windows the native windows are used directly.

Optional

The formula for higher order bases are optionally computed at CMake time using an external python script. Consequently, PolyFEM might requires a working installation of Python and some additional packages in order to build correctly:

  • numpy and sympy (optional)
  • quadpy (optional)

Usage

The main executable, ./PolyFEM_bin, can be called with a GUI or through a command-line interface. Simply run:

./PolyFEM_bin

A more detailed documentation can be found on the website.

Documentation

The full documentation can be found at https://polyfem.github.io/

License

The code of PolyFEM itself is licensed under MIT License. However, please be mindful of third-party libraries which are used by PolyFEM, and may be available under a different license.

Citation

If you use PolyFEM in your project, please consider citing our work:

@misc{polyfem,
  author = {Teseo Schneider and Jérémie Dumas and Xifeng Gao and Denis Zorin and Daniele Panozzo},
  title = {{Polyfem}},
  howpublished = "\url{https://polyfem.github.io/}",
  year = {2019},
}
@article{Schneider:2019:PFM,
  author = {Schneider, Teseo and Dumas, J{\'e}r{\'e}mie and Gao, Xifeng and Botsch, Mario and Panozzo, Daniele and Zorin, Denis},
  title = {Poly-Spline Finite-Element Method},
  journal = {ACM Trans. Graph.},
  volume = {38},
  number = {3},
  month = mar,
  year = {2019},
  url = {http://doi.acm.org/10.1145/3313797},
  publisher = {ACM}
}
@article{Schneider:2018:DSA,
    author = {Teseo Schneider and Yixin Hu and Jérémie Dumas and Xifeng Gao and Daniele Panozzo and Denis Zorin},
    journal = {ACM Transactions on Graphics},
    link = {},
    month = {10},
    number = {6},
    publisher = {Association for Computing Machinery (ACM)},
    title = {Decoupling Simulation Accuracy from Mesh Quality},
    volume = {37},
    year = {2018}
}

Acknowledgements & Funding

The software is being developed in the Geometric Computing Lab at NYU Courant Institute of Mathematical Sciences

This work was partially supported by:

  • the NSF CAREER award 1652515
  • the NSF grant IIS-1320635
  • the NSF grant DMS-1436591
  • the NSF grant 1835712
  • the SNSF grant P2TIP2_175859
  • Adobe Research
  • nTopology
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].