Below you will find pages that utilize the taxonomy term “FEniCS”
Elmer vs FEniCS - Part 3
In the Elmer vs FEniCS - Part 2 episode we studied the effect of mesh size on accuracy. We largely found the same results observed in the Mesh Order and Accuracy episode. We also confirmed that the agreement between FEniCS
and Elmer
is very good. However, we noticed that FEniCS
was significantly slower than Elmer
. This because we used a MUMPS
direct method on FEniCS
and a BiCGStabl
iterative method on Elmer
. In this episode we will explore the iterative solver options for FEniCS
and attempt to optimize execution time for our simulation.
Elmer vs FEniCS - Part 2
In the Elmer vs FEniCS - Part 1 episode we solved the Pulsating Sphere problem over a fairly coarse mesh. We solved the problem both with Elmer
and acoupy_helmholtz
, our FEniCS
based Helmholtz solver. We found that Elmer
and FEniCS
produce the same solution. This solution compares well to the exact solution, but has some appreciable magnitude error. In this episode we will study how this error changes with mesh size, and whether Elmer
and FEniCS
keep on providing the same solution.
Elmer vs FEniCS - Part 1
In the Writing Your Packages - Part 1 and Writing Your Packages - Part 2 episodes we introduced the most important concepts in writing your own simulation packages. We chosen Python
as a language and implemented two simple packages, acoupy_meshutil
and acoupy_helmholtz
. In this episode we will use the Pulsating Sphere benchmark problem to compare acoupy_helmholtz
to our old trustworthy Elmer
. Since our software is little more than syntactic sugar around FEniCS
this will allow us to compare with FEniCS
directly.
Intro to FEniCS - Part 3
In the Intro to FEniCS
- Part 2 episode we completed the first step in developing a FEniCS
model. We characterised the domain. Then, we selected a governing PDE. We then provided suitable boundary conditions. Finally, we expressed the PDE in weak form. We chosen a generalised Helmholtz equation as our PDE. In this episode we will start using the resulting weak form to develop a model.
Intro to FEniCS - Part 2
In the Intro to FEniCS
- Part 1 episode we introduced FEniCS
. We compared it to Elmer and covered how to install it on an Ubuntu workstation. This episode will cover the process of deriving the weak form for the Helmholtz equation. We will focus on the mathematics, which are advanced. Still, we will attempt to present the formalism in an approachable manner.
Intro to FEniCS - Part 1
In the previous episodes we used Elmer to develop a few different acoustics models. We were able to verify the accuracy of Elmer with few benchmark problems. Additionally, we studied the effect of mesh order and size on the accuracy. Finally, we started probing vibro-acoustic problems. We only scratched the surface of Elmer capabilities in this field. Still, it is worth to take a step back and reconsider these problems under a different light. The FEniCS
project is perfect for this. We will be introducing FEniCS
in this episode.