Bhavesh Profile picture
Ph.D. student @Illinois_Alma MS (2017) @CEEatIllinois @cse_uiuc B Tech (2015) @IITGuwahati Math and Programming Enthusiast Ardent @rogerfederer fan

Sep 16, 2020, 8 tweets

@ManuelKRausch1 @JuliaLanguage To each their own :)
Gridap.jl is very young compared to FEniCS/Firedrake. Having used FEniCS a lot, I can say it probably outshines most of the open source libraries in terms of productivity and performance. But at the end, it still is a C++ library with python bindings.

@ManuelKRausch1 @JuliaLanguage And if you want to implement custom kernels or test new elements/stabilization schemes it is not as straightforward. You need to modify the entire pipeline, i.e. fiat, ffc etc.

@ManuelKRausch1 @JuliaLanguage Note that the development version of FEniCS (dolfinx) solves the former (programming custom kernels), but still cannot do the latter (to the best of my knowledge). This is the famous two language problem that often troubles application developers who also seek performance

@ManuelKRausch1 @JuliaLanguage @JuliaLanguage sovles this problem quite neatly, and this is where Gridap comes in for FE developers (both core and applied). In fact only yesterday, I wanted to test a Qk-Pk-1 scheme for incompressible hyperelasticity. And even the development version doesn't support this yet

@ManuelKRausch1 @JuliaLanguage In Gridap, it is pretty easy to do such things. So if you want to prototype things that aren't too niche, Gridap can pretty much do anything that FEniCS does. In fact, it beats FEniCS in timings on my laptop for the hyperelasticity example (dolfinx is a bit faster though 😉 ).

@ManuelKRausch1 @JuliaLanguage But , that's not the point I want to make. Advanced C++ programmers will probably prefer FEniCS or deal.II. But poor Ph.D. students, like me, who want to test new things but at the same time also want to graduate in time, and want performant code, will probably explore Julia too

@ManuelKRausch1 @JuliaLanguage So TLDR;
Julia lets you enjoy the best of both worlds. Protyping and Performance. Gridap lets you do things almost as close as you would do them in FEniCS (and probably much more in the future). Here's a nice introductory video from this year's JuliaCon

@ManuelKRausch1 @JuliaLanguage @francescverdugo can probably explain it much better. He is the author of Gridap.jl
I have barely scratched the surface of Gridap.jl (but hope to do it soon, when I get more time)

Share this Scrolly Tale with your friends.

A Scrolly Tale is a new way to read Twitter threads with a more visually immersive experience.
Discover more beautiful Scrolly Tales like this.

Keep scrolling