{"id":23886417,"url":"https://github.com/nobuyuki83/delfem2","last_synced_at":"2025-04-06T20:09:30.345Z","repository":{"id":46599435,"uuid":"140655906","full_name":"nobuyuki83/delfem2","owner":"nobuyuki83","description":"Research prototyping framework for physics simulation written in C++","archived":false,"fork":false,"pushed_at":"2022-11-06T06:38:04.000Z","size":40047,"stargazers_count":194,"open_issues_count":11,"forks_count":18,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-03-30T19:08:59.707Z","etag":null,"topics":["cuda","fem-simulation","finite-element-methods","geometry-processing","opengl","physics-simulation","simulation"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nobuyuki83.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-07-12T03:25:11.000Z","updated_at":"2024-12-30T16:12:07.000Z","dependencies_parsed_at":"2023-01-21T23:05:07.538Z","dependency_job_id":null,"html_url":"https://github.com/nobuyuki83/delfem2","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nobuyuki83%2Fdelfem2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nobuyuki83%2Fdelfem2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nobuyuki83%2Fdelfem2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nobuyuki83%2Fdelfem2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nobuyuki83","download_url":"https://codeload.github.com/nobuyuki83/delfem2/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247543589,"owners_count":20955865,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cuda","fem-simulation","finite-element-methods","geometry-processing","opengl","physics-simulation","simulation"],"created_at":"2025-01-04T06:20:02.328Z","updated_at":"2025-04-06T20:09:30.322Z","avatar_url":"https://github.com/nobuyuki83.png","language":"C++","readme":"![](docs/imgs/social_preview.png)\n\n\n\u003ca href=\"http://doge.mit-license.org\"\u003e\u003cimg src=\"http://img.shields.io/:license-mit-blue.svg\"\u003e\u003c/a\u003e \n\n| Linux  | Windows  |\n|----|----|\n| [![CI_Linux](https://github.com/nobuyuki83/delfem2/actions/workflows/ci_linux.yml/badge.svg)](https://github.com/nobuyuki83/delfem2/actions/workflows/ci_linux.yml) | ![](https://github.com/nobuyuki83/delfem2/workflows/CI_Windows/badge.svg) |\n\n\n\n# DelFEM2\n\nDelFEM2 is a end-to-end framework for geometry processing and FEM simulation covering wide range of components including shape editing, meshing, FEM simulation, linear solver, variational mesh deformer, and visualization. DelFEM2 is aiming to be an interactive digital engineering and authoring tool.\n\n**There is a python binding available at** \n+ [PyDelFEM2](https://github.com/nobuyuki83/pydelfem2) (deprecated)\n+ [delfem2-python-bindings](https://github.com/nobuyuki83/delfem2-python-bindings) (maintained)\n\nThe implementation is based on my old open source project [DelFEM](https://github.com/nobuyuki83/DelFEM) library\n\n\n\n***\n# Manual \u0026  Tutorial\n\nThere are currently no tutorial available for this library. To understand the code, please look at the exaxmples and tests  under following directoris.\n\n+ examples using legacy OpenGL\n  + [examples_oldgl_glfw](examples_oldgl_glfw):  dependency: GLFW\n  + [examples_oldgl_glfw_glad](examples_oldgl_glfw_glad): dependencies: GLFW and glad (shader,FBO)\n  + [examples_oldgl_glfw_cnpy](examples_oldgl_glfw_cnpy): dependencies: GLFW and cnpy (SMPL)\n  + [examples_oldgl_glfw_pugixml](examples_oldgl_glfw_pugixml): dependencies: GLFW and pugixml (Metashape)\n  + [examples_oldgl_glfw_tinygltf](examples_oldgl_glfw_tinygltf): dependencies: GLFW and tinygltf\n  + [examples_oldgl_glfw_eigen](examples_oldgl_glfw_eigen): dependencies: GLFW and Eigen\n  + [examples_oldgl_glut](examples_oldgl_glut):  dependency: GLUT\n+ examples usigng modern OpenGL\n  + [examples_newgl_glfw](examples_newgl_glfw):  dependency: GLFW\n  + [examples_newgl_glfw_imgui](examples_newgl_glfw_imgui):  dependencies: GLFW and imgui\n+ examples using CUDA (GPU parallerism)\n  + [examples_cuda](examples_cuda)\n+ examples using Alembic (offline simulation)\n  + [examples_alembic](examples_alembic)\n+ C++ test:\n  + [test_cpp](test_cpp): tests using C++\n  + [test_cpp/cuda](test_cpp/cuda) : test using cuda\n  + [test_cpp/eigen](test_cpp/eigen) : test using eigen\n\nSee [docs/coding.md](docs/coding.md) for the coding convention. \n\nPlease also checkout these alternative opensource projects [CGAL](https://www.cgal.org/), [libIGL](https://github.com/libigl/libigl).\n\n\n***\n# Install\n\nNo installation is necessary to use DelFEM2. All the source code of DelFEM2 can be download using git using the following command:\n```\ngit clone https://github.com/nobuyuki83/delfem2.git\n```\n\nDelFEM2 can be compiled either as a header-only library or as a static library. Nothing complicated is necessary if DelFEM2 is used as a header only library -- just by include header files. To use DelFEM2 as a static library, you may compiles the delfem2 codes with option ```DFM2_STATIC_LIBRARY``` and several dependent DelFEM2 source files and link them manually (this is not very complicated too).\n\n\n\n### Dependency \u0026 Binding\n\nDelFEM2 does not have **any** external dependency. However, for some functionality such as OpenGL or Unit Test, you many need to download dependent repositories and compile them together. \n\nCurrently DelFEM support binding to the following C++ open source projects.\n\n- glfw\n- glad\n- cereal\n- alembic\n- googletest\n- cnpy\n- zlib\n- imgui\n- tinygltf\n- stb\n\nOne can download **all** the dependent C++ repositories with\n\n```bash\ngit submodle update --init\n```\n\nThis command downloads all the external third party codes into the directory ```delfem2/3rd_party``` (This operation might take few minutes).  Or, one can download a specific dependent repository one-by-one with command\n\n```bash\ngit submodule update --init 3rd_party/\u003cname_of_repository\u003e\n```\n\nNote that, DelFEM2 is distributed under the MIT licence, but these dependent libraries may affect the license. \n\n\n\n***\n# Licence, Copyright \u0026 Contact\n\nDelFEM2 is distributed under the [MIT licence](https://github.com/nobuyuki83/delfem2/blob/master/LICENSE). \n\nIn a nut shell, it is free to use/distribute this software commercially for any purpose. But please always keep the copyright notice below and the MIT lisence statement.\n\n\n\tCopyright (C) Nobuyuki Umetani 2021\n\nIf DelFEM2 contributes to an academic publication, cite it as:\n\n\n```\n@misc{delfem2,\n  title = {DelFEM2},\n  author = {Nobuyuki Umetani},\n  note = {https://github.com/nobuyuki83/delfem2},\n  year = {2019}\n}\n```\n\nDelFEM2 is currently developed and maintained by [Nobuyuki Umetani](http://www.nobuyuki-umetani.com/). If you have questions or comments please [contact via email](mailto:n.umetani@gmail.com).\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnobuyuki83%2Fdelfem2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnobuyuki83%2Fdelfem2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnobuyuki83%2Fdelfem2/lists"}