feelpp / book.feelpp.org

:globe_with_meridians: The Feel++ Book
https://docs.feelpp.org
GNU General Public License v3.0
9 stars 30 forks source link
book contributor-manual cpp17 developer-manual feelpp fem finite-elements mathematical-framework multiphysics multiphysics-simulation numerical-methods numerical-simulation python3 toolbox-manual tutorial user-manual

= {feelpp}: Finite Element Embedded Library in {cpp} Christophe Prud'homme https://github.com/prudhomm[@prudhomm] v1.0, 2017/02/20 :uri-org: https://github.com/feelpp :uri-repo: {uri-org}/book.feelpp.org :uri-www: http://book.feelpp.org ifndef::env-github[:icons: font] ifdef::env-github[] :status: :outfilesuffix: .adoc :caution-caption: :fire: :important-caption: :exclamation: :note-caption: :paperclip: :tip-caption: :bulb: :warning-caption: :warning: endif::[] ifdef::env-github,env-browser[:outfilesuffix: .adoc] :feelpp: Feel++ :cpp: C++ :toc: left

image:https://zenodo.org/badge/82891573.svg["Zenodo DOI",link=https://zenodo.org/badge/latestdoi/82891573] image:https://badge.buildkite.com/b7bf5db27b0b369ac62897d9f2bfa806d4a5c4fe09e4fc5d09.svg["Build Status",link=https://buildkite.com/feelpp/book-dot-feelpp-dot-org] image:https://github.com/feelpp/book.feelpp.org/workflows/Build%20and%20Deploy/badge.svg[Build and Deploy] image:https://github.com/feelpp/book.feelpp.org/workflows/Index/badge.svg[Index]

== What is {feelpp} ? {feelpp} is a unified {cpp} implementation of Galerkin methods (finite and spectral element methods) in 1D, 2D and 3D to solve partial differential equations.

{feelpp} is

. a versatile mathematical kernel solving easily problems using different techniques thus allowing testing and comparing methods, e.g. cG versus dG.

. a small and manageable library which nevertheless encompasses a wide range of numerical methods and techniques and in particular reduced order methods such as the reduced basis method.

. a software that follows closely the mathematical abstractions associated with partial differential equations (PDE) and in particular the finite element mathematical framework and variational formulations.

. a library that offers solving strategies that scales up to thousands and even tens of thousands of cores.

. a library entirely in {cpp} allowing to create {cpp} complex and typically non-linear multi-physics applications currently in industry, physics and health-care.

== Read the {feelpp} Book

All the {feelpp} manuals are available at {uri-www}.

== Help and Support

We're always happy to help out with {feelpp} or any other questions you might have. You can ask a question or signal an issue at the Gitter {feelpp} salon.

https://gitter.im/feelpp/feelpp?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge[ image:https://badges.gitter.im/Join%20Chat.svg[Join the chat at https://gitter.im/feelpp/feelpp]]

== Contribute to this documentation

You can http://docs.feelpp.org/docs/stable/#_how_to_contribute[contribute] to improve this documentation on https://github.com/feelpp/book.feelpp.org[GitHub].

See also link:CONTRIBUTING.adoc[how to write the book].

== Generating the website

{feelpp} uses https://docs.antora.org[Antora] to generate the website http://docs.feelpp.org.

[IMPORTANT]

Prerequisites : npm, curl

You can install these dependencies on Ubuntu/Debian OS by executing : [source,sh]

sudo apt install npm curl

====

Once you have installed prerequisites, follow the next steps to generate a local preview of the website http://docs.feelpp.org.

[source,sh]

git clone https://github.com/feelpp/book.feelpp.org.git # <1> git clone https://github.com/feelpp/toolbox.git # <2> cd book.feelpp.org # <3> npm install # <4> npm run dev # <5> npm run serve # <6>

<1> clone the source for the website <2> clone the source for toolbox cases doc <3> go the toplevel directory <4> install antora and some other dependencies <5> build a local preview of the website with Antora <6> start the node.js webserver `serve`, see the https://docs.antora.org/antora/1.0/run-antora/#local-site-preview[docs].