Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add package for feelpp #4

Open
1 task done
prudhomm opened this issue Sep 14, 2024 · 0 comments
Open
1 task done

add package for feelpp #4

prudhomm opened this issue Sep 14, 2024 · 0 comments
Assignees
Labels
enhancement New feature or request

Comments

@prudhomm
Copy link
Member

prudhomm commented Sep 14, 2024

Summary

I propose to add Feel++ package.
Feel++ is an Open-Source C++ library designed to solve a wide range of partial differential equations (PDEs) using advanced Galerkin methods. These methods include the finite element method (FEM), spectral element method, discontinuous Galerkin methods, and reduced basis methods.

Rationale

Feel++ is part of the software stack of the French exascale initiative NumPEx

Description

Feel++ is an Open-Source C++ library designed to solve a wide range of partial differential equations (PDEs) using advanced Galerkin methods. These methods include the finite element method (FEM), spectral element method, discontinuous Galerkin methods, and reduced basis methods.

Feel++ is optimized for high-performance computing, enabling seamless parallel computing on large-scale systems, ranging from desktop machines to supercomputers with tens of thousands of cores. The library supports multi-physics simulations and provides a modular structure to simplify the development of applications.

Key Features:
- Toolboxes: Predefined toolboxes for common PDE problems, enabling faster development and deployment of complex simulations. These toolboxes include:
- Coefficient Form PDEs: For general PDEs in coefficient form.
- Computational Solid Mechanics: For simulations of solid mechanics problems.
- Computational Fluid Mechanics: For solving fluid dynamics problems.
- Heat Transfer: For heat conduction and convection problems.
- Heat & Fluid: Coupled heat and fluid dynamics simulations.
- Fluid Structure Interaction (FSI): For problems involving interactions between fluid flow and structural mechanics.
- Electric: For solving electric field and current problems.
- Thermo-Electric: For coupled thermoelectric simulations.
- Maxwell: For simulating electromagnetic field problems based on Maxwell's equations.
- Hybridized Discontinuous Galerkin: For high-order accurate discontinuous Galerkin methods with hybridization techniques.
- Model Order Reduction (MOR): Provides efficient techniques for reducing the computational complexity of large-scale simulations, enabling faster simulations while maintaining accuracy.
- Python Wrappers: Python bindings allow for seamless integration of Feel++ functionalities into Python-based workflows, enabling rapid prototyping, interactive simulations, and data visualization.
- High-Performance Computing (HPC): Fully optimized for distributed (MPI) and shared-memory (multithread) parallelism, Feel++ can efficiently scale from small multi-core systems to large HPC clusters.
- C++ Standards: Support for C++17, C++20, and C++23 standards, allowing users to leverage modern language features and optimizations.

- **Extensive Scientific Libraries Integration**: Feel++ integrates with major scientific computing libraries, including PETSc, SLEPc, Boost, FFTW, and others, to extend its functionality and scalability.

Optional Variants:
- +toolboxes: Enable specialized toolboxes for common PDEs, such as fluid mechanics, solid mechanics, and coupled heat and fluid simulations.
- +mor: Enable Model Order Reduction (MOR) for computationally expensive large-scale systems.
- +python: Enable Python bindings to allow Python-based interaction with Feel++.
- +quickstart: Enable quickstart examples for easier onboarding and usage.
- +tests: Enable tests to verify the integrity of the Feel++ installation.
- cpp17/cpp20/cpp23: Choose the C++ standard (C++17, C++20, or C++23) for compilation.

Additional information

No response

General information

  • I have searched the issues of this repo and believe this is not a duplicate
@prudhomm prudhomm added the enhancement New feature or request label Sep 14, 2024
@prudhomm prudhomm self-assigned this Sep 14, 2024
prudhomm added a commit that referenced this issue Sep 14, 2024
add package for feelpp
prudhomm added a commit that referenced this issue Sep 14, 2024
add package for feelpp #4
prudhomm added a commit that referenced this issue Sep 14, 2024
add package for feelpp #4
prudhomm added a commit that referenced this issue Sep 14, 2024
add package for feelpp #4
prudhomm added a commit that referenced this issue Sep 14, 2024
add package for feelpp #4
prudhomm added a commit that referenced this issue Sep 14, 2024
add package for feelpp #4
prudhomm added a commit that referenced this issue Sep 14, 2024
add package for feelpp #4
prudhomm added a commit that referenced this issue Sep 15, 2024
prudhomm added a commit that referenced this issue Sep 15, 2024
prudhomm added a commit that referenced this issue Sep 15, 2024
prudhomm added a commit that referenced this issue Sep 18, 2024
- c++ standard handled by multiple choice variants
- use mpi c, cxx and fortran virtual deps

#4
prudhomm added a commit that referenced this issue Sep 18, 2024
bernhardkaindl pushed a commit to bernhardkaindl/spack that referenced this issue Oct 12, 2024
add package for feelpp
bernhardkaindl pushed a commit to bernhardkaindl/spack that referenced this issue Oct 12, 2024
add package for feelpp feelpp#4
bernhardkaindl pushed a commit to bernhardkaindl/spack that referenced this issue Oct 12, 2024
add package for feelpp feelpp#4
bernhardkaindl pushed a commit to bernhardkaindl/spack that referenced this issue Oct 12, 2024
add package for feelpp feelpp#4
bernhardkaindl pushed a commit to bernhardkaindl/spack that referenced this issue Oct 12, 2024
bernhardkaindl pushed a commit to bernhardkaindl/spack that referenced this issue Oct 12, 2024
add package for feelpp feelpp#4
bernhardkaindl pushed a commit to bernhardkaindl/spack that referenced this issue Oct 12, 2024
add package for feelpp feelpp#4
bernhardkaindl pushed a commit to bernhardkaindl/spack that referenced this issue Oct 12, 2024
bernhardkaindl pushed a commit to bernhardkaindl/spack that referenced this issue Oct 12, 2024
bernhardkaindl pushed a commit to bernhardkaindl/spack that referenced this issue Oct 12, 2024
bernhardkaindl pushed a commit to bernhardkaindl/spack that referenced this issue Oct 12, 2024
- c++ standard handled by multiple choice variants
- use mpi c, cxx and fortran virtual deps

feelpp#4
bernhardkaindl pushed a commit to bernhardkaindl/spack that referenced this issue Oct 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

When branches are created from issues, their pull requests are automatically linked.

1 participant