All Projects → ElmerCSC → Elmerfem

ElmerCSC / Elmerfem

Official git repository of Elmer FEM software

Programming Languages

fortran
972 projects

Projects that are alternatives of or similar to Elmerfem

Feelpp
💎 Feel++: Finite Element Embedded Language and Library in C++
Stars: ✭ 229 (-56.21%)
Mutual labels:  parallel-computing, finite-elements, fem
Mfem
Lightweight, general, scalable C++ library for finite element methods
Stars: ✭ 667 (+27.53%)
Mutual labels:  parallel-computing, finite-elements, fem
Ngsolve
Netgen/NGSolve is a high performance multiphysics finite element software. It is widely used to analyze models from solid mechanics, fluid dynamics and electromagnetics. Due to its flexible Python interface new physical equations and solution algorithms can be implemented easily.
Stars: ✭ 171 (-67.3%)
Mutual labels:  parallel-computing, finite-elements, fem
PyMFEM
Python wrapper for MFEM
Stars: ✭ 91 (-82.6%)
Mutual labels:  parallel-computing, fem, finite-elements
Kratos
Kratos Multiphysics (A.K.A Kratos) is a framework for building parallel multi-disciplinary simulation software. Modularity, extensibility and HPC are the main objectives. Kratos has BSD license and is written in C++ with extensive Python interface.
Stars: ✭ 558 (+6.69%)
Mutual labels:  parallel-computing, fem, mpi
Core
parallel finite element unstructured meshes
Stars: ✭ 124 (-76.29%)
Mutual labels:  parallel-computing, finite-elements, mpi
Foundations of HPC 2021
This repository collects the materials from the course "Foundations of HPC", 2021, at the Data Science and Scientific Computing Department, University of Trieste
Stars: ✭ 22 (-95.79%)
Mutual labels:  mpi, parallel-computing
t8code
Parallel algorithms and data structures for tree-based AMR with arbitrary element shapes.
Stars: ✭ 37 (-92.93%)
Mutual labels:  mpi, parallel-computing
hpc
Learning and practice of high performance computing (CUDA, Vulkan, OpenCL, OpenMP, TBB, SSE/AVX, NEON, MPI, coroutines, etc. )
Stars: ✭ 39 (-92.54%)
Mutual labels:  mpi, parallel-computing
PSyclone
Domain-specific compiler for Finite Difference/Volume/Element Earth-system models in Fortran
Stars: ✭ 67 (-87.19%)
Mutual labels:  parallel-computing, finite-elements
Dash
DASH, the C++ Template Library for Distributed Data Structures with Support for Hierarchical Locality for HPC and Data-Driven Science
Stars: ✭ 134 (-74.38%)
Mutual labels:  parallel-computing, mpi
nbodykit
Analysis kit for large-scale structure datasets, the massively parallel way
Stars: ✭ 93 (-82.22%)
Mutual labels:  mpi, parallel-computing
MinimalFem
podgorskiy.com/spblog/304/writing-a-fem-solver-in-less-the-180-lines-of-code
Stars: ✭ 23 (-95.6%)
Mutual labels:  fem, finite-elements
hp2p
Heavy Peer To Peer: a MPI based benchmark for network diagnostic
Stars: ✭ 17 (-96.75%)
Mutual labels:  mpi, parallel-computing
Kernels
This is a set of simple programs that can be used to explore the features of a parallel platform.
Stars: ✭ 287 (-45.12%)
Mutual labels:  parallel-computing, mpi
raccoon
Massively parallel FEM code for phase-field for fracture by Dolbow Lab at Duke University
Stars: ✭ 21 (-95.98%)
Mutual labels:  parallel-computing, finite-elements
Mpi4py
Python bindings for MPI
Stars: ✭ 388 (-25.81%)
Mutual labels:  parallel-computing, mpi
muster
Massively Scalable Clustering
Stars: ✭ 22 (-95.79%)
Mutual labels:  mpi, parallel-computing
TopOpt in PETSc wrapped in Python
Topology optimization using PETSc: a Python wrapper and extended functionality
Stars: ✭ 24 (-95.41%)
Mutual labels:  parallel-computing, fem
Schwimmbad
A common interface to processing pools.
Stars: ✭ 82 (-84.32%)
Mutual labels:  parallel-computing, mpi

:imagesdir: pics [.text-center] image::ElmerLogoPlain64x64.png[float="right"] == Elmer FEM

This is the official source code repository for the Elmer FEM software suite.

[.text-center] image:https://img.shields.io/github/stars/ElmerCSC/elmerfem.svg?style=social&label=Stars&style=plastic["GitHub stars"] image:https://img.shields.io/github/watchers/ElmerCSC/elmerfem.svg?style=social&label=Watch&style=plastic["GitHub watchers"] image:https://img.shields.io/github/forks/ElmerCSC/elmerfem.svg?style=social&label=Fork&style=plastic["GitHub forks"]

[.text-center] image:https://img.shields.io/github/contributors/ElmerCSC/elmerfem.svg?style=flat["GitHub contributors"] image:https://img.shields.io/github/issues-pr/ElmerCSC/elmerfem.svg?style=flat["GitHub pull requests", link=https://github.com/ElmerCSC/elmerfem/pulls] image:https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat[]

[.text-center] image:https://img.shields.io/github/last-commit/ElmerCSC/elmerfem.svg?style=flat["GitHub last commit"] image:https://img.shields.io/github/issues-raw/ElmerCSC/elmerfem.svg?maxAge=25000["Issues", link=https://github.com/ElmerCSC/elmerfem/issues] image:https://img.shields.io/github/languages/count/ElmerCSC/elmerfem[GitHub language count]

[.text-justify] Elmer is a finite element software for numerical solution of partial differential equations. Elmer is capable of handling any number of equations and is therefore ideally suited for the simulation of multiphysical problems. It includes models, for example, of structural mechanics, fluid dynamics, heat transfer and electromagnetics. Users can also write their own equations that can be dynamically linked with the main program.

Elmer consists of several parts. The most important ones are ElmerSolver the finite element solver, ElmerGUI the graphical user interface, and ElmerGrid the mesh creation and manipulation tool. Also a visualization tool, ElmerPost, is included in the package but it is no longer developed.

=== Download binaries

You may download binaries and virtual machines from http://www.elmerfem.org/blog/binaries/[here].

=== Docker

=== Documentation

You may find the PDFs for the documentation http://www.elmerfem.org/blog/documentation/[here].

=== Compiling

==== macOS

  • Download this repository either az a zip file via GitHub or using git clone https://github.com/ElmerCSC/elmerfem.git
  • Go to the downloaded directory mkdir build and cd build
  • Install Homebrew
  • Install GCC brew install gcc
  • Install CMake brew install cmake
  • Without MPI: ** cmake .. -D WITH_OpenMP:BOOLEAN=TRUE
  • With MPI: ** Install OpenMPI brew install open-mpi ** cmake .. -D WITH_OpenMP:BOOLEAN=TRUE -D WITH_MPI:BOOLEAN=TRUE
  • With ElmerGUI: ** install qt4 with brew install cartr/qt4/[email protected] ** install qwt with brew install cartr/qt4/qwt-qt4 ** cmake .. -D WITH_OpenMP:BOOLEAN=TRUE -D WITH_MPI:BOOLEAN=TRUE -D WITH_ELMERGUI:BOOLEAN=TRUE
  • With ElmerPost: ** brew cask install xquartz ** ....
  • make
  • make install

==== Ubuntu

  • Download the source code and create build directory as above
  • Install the dependencies sudo apt install git cmake build-essential gfortran libopenmpi-dev libblas-dev liblapack-dev
  • Without MPI: ** cmake .. -DWITH_OpenMP:BOOLEAN=TRUE
  • With MPI: ** cmake .. -DWITH_OpenMP:BOOLEAN=TRUE -DWITH_MPI:BOOLEAN=TRUE
  • With ElmerGUI: ** sudo apt install libqt4-dev libqwt-dev ** cmake .. -DWITH_OpenMP:BOOLEAN=TRUE -DWITH_MPI:BOOLEAN=TRUE -DWITH_ELMERGUI:BOOLEAN=TRUE
  • With Elmer/Ice (enabling netcdf and MUMPS): ** sudo apt install libnetcdf-dev libnetcdff-dev libmumps-dev ** cmake .. -DWITH_OpenMP:BOOLEAN=TRUE -DWITH_MPI:BOOLEAN=TRUE -DWITH_ElmerIce:BOOLEAN=TRUE -DWITH_Mumps:BOOL=TRUE
  • make
  • sudo make install
  • The executables are in /usr/local/bin folder, you may add this to your PATH if you will

=== Licensing

image:https://img.shields.io/badge/License-GPLv2-blue.svg["License: GPL v2", link=https://www.gnu.org/licenses/gpl-2.0] image:https://img.shields.io/badge/License-LGPL%20v2.1-blue.svg["License: LGPL v2.1", link=https://www.gnu.org/licenses/lgpl-2.1]

[.text-justify] Elmer software is licensed under GPL except for the ElmerSolver library which is licensed under LGPL license. Elmer is mainly developed at CSC - IT Center for Science, Finland. However, there have been numerous contributions from other organizations and developers as well, and the project is open for new contributions. More information about Elmer's licensing link:license_texts/ElmerLicensePolicy.txt[here].

=== Package managers

[.text-center] image::https://repology.org/badge/vertical-allrepos/elmerfem.svg["Packaging status", link=https://repology.org/project/elmerfem/versions]

==== Chocolatey

[.text-center] image:https://img.shields.io/chocolatey/dt/elmer-mpi["Chocolatey", link=https://chocolatey.org/packages/elmer-mpi]

=== Social

[.text-justify] Here on https://discordapp.com/invite/NeZEBZn[this Discord channel] you may ask for help or dicuss different Elmer related matters:

[.text-center] image::https://img.shields.io/discord/412182089279209474.svg["Discord Chat", link=https://discordapp.com/invite/NeZEBZn]

Follow ElmerFEM on Twitter:

[.text-center] image:https://img.shields.io/twitter/follow/elmerfem.svg?style=social["Twitter Follow", link=https://twitter.com/elmerfem] image:https://img.shields.io/twitter/follow/ElmerIce1.svg?style=social["Twitter Follow", link=https://twitter.com/ElmerIce1] image:https://img.shields.io/twitter/follow/CSCfi.svg?style=social["Twitter Follow", link=https://twitter.com/CSCfi]

Ask your questions on Reddit:

[.text-center] image:https://img.shields.io/reddit/subreddit-subscribers/ElmerFEM["Subreddit subscribers", link=https://www.reddit.com/r/ElmerFEM/]

=== Computational Glaciology "Elmer/Ice"

=== Other links

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].