Archives

FEniCS is incredible!

I have been using FEniCS in my research for the past two years, and I have to say that it is just pure gold in scientific computing with differential equations. It helps you think way beyond the constructions of domain-specific implementations of finite element method. You will not understand its powers until you have faced […]

Read More

Parallelizing for loop in python with MPI

Parallel computing is necessary for venturing into the world of high performance computing. Parallel computing as the name suggests allows us to run a program parallelly. The preferred language of choice in our lab is Python and we can achieve parallel computation in python with the help of ‘mpi4py’ module. This comes with the standard […]

Read More

FEniCS: The mesh workflow

This is my final post for the GSoC2019 program. The primary goal of the project was to ensure that the meshing package of choice gmsh, DOLFIN, and the preferred visualization package, Paraview work seamlessly together. The intention was to make improvements to the process of preserving the information about tagged regions of the mesh when importing it […]

Read More

FEniCS: Completion of phase two

Goals for the second phase of the programming were two-fold: Create a method to construct MVC from arrays Develope code to test the integration of gmsh API with new mesh workflow. Creating MVC directly from arrays would allow bypassing saving of the mesh file onto the hard disk. The idea is to directly create MVC […]

Read More

FEniCS: The XDMF schema

XDMF stands for eXtensible Data Model and Format. This type of file format is used to store and exchange a large amount of scientific data between high-performance computing codes. FEniCS supports ‘io’ operations with XDMF file format which is further supported by the visualization tool of choice PARAVIEW. In this post, I would describe a […]

Read More

FEniCS: Completion of phase one

The coding period officially started on May 27th, 2019.  I have already discussed my project in detail in the previous posts and would just summarize it here. The goal of the project is to preserve the named metadata in `.geo` files through to the tagged regions (MeshValueCollection) in dolfinx. This would help the end user […]

Read More

Understanding make and cmake

Up until this point in my life, I have never worked on a project in C++. Starting work on the cpp version of FEniCS was quite difficult as  I had no idea how even a simple program works in cpp. Thus, I planned to first properly learn the syntax of cpp and then try and […]

Read More

Understanding CircleCI

The official about us page of CircleCI states the following: CircleCI allows teams to rapidly build quality projects, at scale. Our mission is to give people everywhere the power to build and deliver software at the speed of imagination. Their package allows us as a developer to develop on the principles of continuous integration. Continuous […]

Read More

Understanding the dockerfile of DOLFIN-X

There are excellent articles available on the web explaining the need and use of Docker. The interested reader is requested to start with the official documentation of Docker. In this article I will try to present my limited personal understanding of Docker and why is it necessary for the project FEniCS. As per the official […]

Read More