New Publication – Membraneless Flow Through Electrolyser

Last week the final version of my work on developing a membraneless alkaline electrolyser was published in the chemical engineering journal (https://doi.org/10.1016/j.cej.2025.163444). This has been an accumulation of work completed during my time on the EPSRC Ocean Refuel project which was focused on understanding the management of bubbles in water electrolysers.

Part of this work was modelling; coupling two-phase flows (bubbles and electrolyte) and electrochemistry (ion transport and charge transfer) so that the distribution of bubbles could be known and their effect on the resistances in the system. For this purpose in OpenFOAM I coupled the volume-of-fluid method and solution of electrolyte potential to predict electrolyser performance as shown below:

This enabled prediction and understanding of how different electrodes or flow configurations would affect bubble distribution and device performance. The second part of this was the validation and fabrication, where similar to 2D simulations, we developed a 3D printed transparent pseudo-2D membraneless flow through electrolyser cell (where the fluid flows between electrodes) with a 2.1 mm electrode gap and nickel weave electrodes. By applying a small current (current density of <0.1 A/cm2) small bubbles were generated and could be used as tracer particles to track the flow distribution of the electrolyte. By applying particle image velocimetry to the videos (taken by high-speed camera Chronos-1.4) the fluid vectors could be extracted and compared to single-phase flow simulations (see below):

This was important to show that under some conditions, the flow may recirculate and be unfavourable for operation (since uniform flow through the electrodes is important to stop bubbles entering the middle channel). With reference to the simulations, a proper electrode arrangement was determined which restricted bubble formation between the electrode gap and this was verified by the high-speed camera videos at high current density (refer to the SI of the publication for video):

Although there was some defect within the construction (gap between the barrier layer and the porous electrode), this actually highlighted some operating features of the electrolyser. The capillary pressure barrier enabled confined flows to develop and even in the cases of gas saturated outlet chambers, the bubbles did not enter the electrode gap. Upon fixing the design and electrode, the dynamic profile of the potential during constant current showed a stable operation of 2.9 V at 1 A/cm2.

Further simulations highlighted that the current density distribution through the electrode is impacted by bubble formation and that the theoretical crossover of dissolved hydrogen in the system below 4% (from 0.01 – 0.5 m) is only possible with an inlet Reynolds number of greater than 50. 

Although, without a proper design of the gas-liquid separator system with recycle, the electrolyser still had high dissolved gas crossover which will be addressed in the follow up scaling study. If you are interested further in this or to apply these methods for other purposes please let me know.

Travel Break & PMG Update

To update those who are interested in my research and work, since March 2024 I’ve been on a travel sabbatical which will continue until September 2024. I will be travelling around the world to different destinations with my fiancé. During this time, I will not be working/paid and so I will only be finishing up any reviews for collaborators.

The license for the Porous Microstructure Generator (PMG) which is included in the original repository has stopped working. This is intentional as I would like to transition to understanding who is using it and for what purpose. Currently I do not know who downloads it.

PMG is not funded and therefore has no support other than what I provide in my spare time. I would like to consider free, paid and open source versions which would enable faster updates, more reliable algorithms, user guides and software algorithm improvements but need feedback from the community.

Therefore if you would like a license file free for the next 6 months, please fill out the google forms link below and I will email you a license file. Please check your spam/junk folders for emails from porous.generator@gmail.com.

PMG Feedback for License File

If you find PMG useful, please can you let me know:

  • Role/Affiliation
  • What are you using PMG for?
  • Are there any features you would like to see for future updates?
  • What level of funding would be possible for license to help fund the project? (e.g. £50 – 500 per year etc, or free if your budget constrained)
  • Any other feedback?

Lastly thanks for everyones feedback so far, it is nice to hear how PMG has helped researchers so far.

Research Visits & Improving The Foam Generator

Good afternoon to those who have subscribed to my website!

I’ve not been as active on here recently as I’ve been writing a Royal Academy of Engineering Research Fellowship proposal in the past month. I’ve also been to visit some of my collaborators (Dr Adrian Mularczyk, Dr Antoni Forner-Cuenca) in Eindhoven, visiting Dr Dieter Froning in at Forschungszentrum Jülich, attending the Faraday Institution conference and the Ocean Renewable Fuels project at Imperial College.

PMG Updates – Visualisation Constraints for large scale

When I have time I try to implement new updates for the porous microstructure generator (PMG) side project.

Sometimes, you may only want to have the .tiff image stack as this will be much faster than generating the surface rendering (especially for large structures). To do this, I’ve facilitated an option that will only plot a subsection of the domain:

As you see by the image, the domain boundaries will be shown, but only a cut out will be rendered. This will enable large scale generation of structures without visualising in PMG (since the rendering is often the longest part).

Foam Generation – 2D and 3D Foam generator

The current foam network algorithm in PMG is not optimised and does not also follow the rule of each network node only having 3 connections in 2D and 4 in 3D. I would also like the ability to have spatial grading of pore size and fibre sizes.

Foam materials are formed by the thin-films surrounding bubbles and therefore, each foam cell is defined by a bubble size, which should not overlap. The first 2D implementation of this is shown above. The problem with this is the boundaries which shouldn’t be too hard to fix.

Now let’s extrapolate the algorithm to 3D, which will require some more constraints on the system to determine the connectivity between points. The first iteration of this revealed:

It doesn’t look quite there yet, lets integrate some of the PMG algorithms for visualisation:

After clipping the edges, now it’s looking slightly more like a foam but I suspect some of the bubbles are merged. To also make sure it works for anisotropic grids I need to change a few things (and also add the ambient occlusion from PMG so I can see the depth):

Since I have explicit information of the lattice network, I can manipulate by positional coordinates to get gradient in pore and fibre sizes:

This algorithm not only runs much faster than the foam network algorithm in PMG 2.0, but is able to control spatial fibre radius and pore size, enabling next-generation material design.

I can’t say when I will implement this in PMG but the code is developed. If you have any suggestions for new algorithms to try develop then please get in touch!

PMG Upcoming Features

There has been significant interest in the porous microstructure generator which has increased its use from around ~100 users to approximately 800. It is difficult to keep up with the speed of requests considering this app is not part of my postdoc but could become part of fellowship applications. In the future depending on the usefulness of the app, I may have to think about how to fund this project.

Regardless, whenever I find time, I try and make progress and here are some interesting updates:

Algorithm Speed Up (x50)

Microstructures of 1 mm and 2 mm fibrous materials with curved and straight fibres

The algorithms behind PMG have been updated which can handle much higher voxel resolutions and at an increased speed. For example, PMG 1.5 required 170 seconds for generating a fibrous material on a (400 x 400 x 100) grid, in the new version this has been reduced to 3 seconds (56 times faster). This allows the images you see above to be generated in a short timescale (2 mm sample, with 7 µm diameter fibres at 80% porosity required 200 seconds), which would have taken around 3 hours in PMG 1.5.

Carbon Fibre Cloth

Carbon cloth reconstructions possible in the upcoming PMG updates

Carbon cloth microstructures will now be possible, with a new and improved weave algorithm. In this module, the carbon tow porosity, aspect ratio and carbon fibre size can be specified including the aperture size between each tow to produce large scale structures. The plain weave algorithm has been updated so that it always works now, see an example carbon cloth above.

Particle Deposition

Particles with a specified size can be deposited on the microstructure in a variety of ways to create interesting microstructures which could be used as the input for simulations investigating rough surfaces or catalyst distribution:

Particle deposition on a generated microstructure using a new feature in the upcoming update of PMG

These features may take a while to be implemented but the codes are 90% completed in terms of smoothing out their integration. If you are interested in the progress of the app and are able to support the project then get in touch!

Porous Microstructure Generator (PMG) – Version 1.5

Today I released the new version 1.5 of the Porous Microstructure Generator (PMG). This comes with some updated features, algorithms, exporting and increasing its duration to June 2023. Some of the key additions are the pore network model (PNM) and Lattice-Boltzmann simulator.

Various microstructures produced by PMG visualised in ParaView. LBM simulations are produced in .vtk

If you are using PMG and have suggestions for features, or you can support the project, please let me know. I can spend more time on its development with more resources or reference to projects that I can use in fellowship/grant applications.

Here is the list of implementations for 1.4 to 1.5:

  • New module (Beta): Lattice-Boltzmann Simulation for single-phase flow developed by Dr Senyou An. Used to estimate permeability and get velocity field.
  • New module: PNM Importing and voxelisation with suggestions from Maxime van der Heijden
  • New module (Beta): PNM Simulation for single-phase flow (permeability), Diffusion (effective diffusivity) and Quasi-static two-phase flow (drainage with trapping for relative permeability/diffusivity saturation curves) 
  • New module (Beta): Lattice-Boltzmann Simulation for single-phase flow developed by Dr Senyou An. Used to estimate permeability and get velocity field.
  • Added more instructions for Network Extraction, Importing Network, PNM simulation and LBM simulation to the Help tab.
  • Added Examples tab which contains information regarding recent publications that used the work.
  • Exporting .tiff image now correctly scales the image to dimensions of 1 in ParaView instead of 0.35 in earlier version.
  • Voxel surfaces can be directly exported as .stl without smoothing and without scaling to voxel dimensions by choosing settings in the preferences tab
  • Exporting to OpenFOAM: creates OpenFOAM case – works in development version but currently trying to implement in compiled version, please contact if interested.

Porous Microstructure Generator 1.4 – Bubbles and Weaves

I’ve been continuing development of the PMG as a side project and the current version 1.4 has been released for over a month now. With over 100 downloads I’m pleased that it is getting out there and being used.

With each new version, there is a time window of use, which is chosen based on my estimation for the release of the next version. This is my low tech way of getting people to update the software!

After some feedback and suggestions from users, there are a couple of features now implemented in PMG 1.4:

  • Bubble generation, analysis and exporting using non-spherical algorithm
  • Plain weave generation to make mesh and cloth materials

Spherical and non-overlapped algorithms can now be non-truncated while maintaining the specified porosity/volume fraction (i.e. not clipped by the box boundaries)

Particles generated by spherical, non-overlapped and percolating algorithms can be exported as particles in .csv and .vtk.

The particle size distribution of Particles/bubbles generated in the non-overlapping algorithm can be plotted using a “plot distribution” button.

Plain weave structures can be generated, accessed via a new “Weave” tab and button. Pore diameter and fibre diameter can be specified in this case.

As always, the current version of the porous microstructure generator (PMG) is downloadable for Mac and Windows at: https://data.ncl.ac.uk/articles/software/Porous_Microstructure_Generator/20448471

The next update (sometime in November) will include simple pore network simulations using the extracted network or imported network from other software for permeability, diffusivity and relative metric saturation curves.

If you are interested in custom features, please let me know at: daniel.niblett@newcastle.ac.uk

Porous Microstructure Generator

Last week I released the first version of the Porous Microstructure Generator (PMG). This is a free software that contains a graphical user interface (GUI) for generating computational 3D images and surfaces of porous materials.

The app was written in Matlab, however, you do not need Matlab or know how to code to use the software as it has been compiled for windows and Mac.

The voxel or smoothed surfaces can be exported to other computational fluid dynamic (CFD) software such as OpenFOAM to understand structure-property relationships, or exported to designed 3D printing. Using the built-in visualisation capability, a series of some structures that can be created is shown below:

The GUI should be easy to use, however since I mainly developed this as a side project, there will likely be some bugs in the code, or some features not yet working. With that in mind I will be continuing development updates, with the next one deployed at the end of September 2022.

PMG currently contains 8 generation algorithms that can be used on their own, or on top of each other to generate the desired microstructure:

If you are interested in using the app, please download at: https://data.ncl.ac.uk/articles/software/Porous_Microstructure_Generator/20448471

If you are interested in support or request features to be added, please email: porous.generator@gmail.com or daniel.niblett@newcastle.ac.uk.

3D printed carbon electrodes for fuel cells

This month the project I had planned and completed for my EPSRC doctoral prize fellowship was published in the International Journal of Hydrogen Energy. It is titled “Utilization of 3D printed carbon gas diffusion layers in polymer electrolyte membrane fuel cells”.

https://www.sciencedirect.com/science/article/pii/S0360319922021978

In this research, I attempted to manufacture the structures that I had been simulating in some of my work during my PhD. The required understanding of the development process from 3D printing to fuel cell membrane electrode assembly integration.

This work develops a foundation for future research into using designed porous structures in electrochemical devices. I’m interested to see where this goes in the future.

Skills and experience in the areas presented below were established:

  • Digital design of large scale lattice structures with micro-scale features
  • Optimisation of DLP 3D printing process using inexpensive materials (<£200 printer)
  • Thermogravimetric analysis and furnace carbonisation processes
  • Membrane electrode assembly construction and integration into a fuel cell
  • Understanding of failure characteristics for future novel material research
  • Simulation of steady state flow and transport in lab scale flow field and porous regions fully resolved.

Although my research is now focused on water electrolysis, designed structures may also provide similar theoretical enhancement.

Artificial Computational Models of Porous Structures

There are a variety of geometrical shapes that make up real porous structures (either natural or synthetic) and sometimes the distribution of the materials interacts with processes occurring inside them.

If we are looking to study the effect of a certain porous structure on the processes it handles we must have a spatial representation of the material at small scales. Computational algorithms can be developed to artificially recreate 3D structures that represent real materials.

Outlined in this post is some examples of codes I’ve developed, where often the: porosity (phase fraction), particle size and shape are input parameters. Let me know if you are interested in using any of the codes or want to contribute.

Example: spherical non-overlapping particles, sponge foam and spherical overlapped with connecting films.
Delaunay fibres with varying fibre radius, Voronoi fibres, isotropic plates, anisotropic fibres, isotropic fibres.
Example: Isotropic lattice, anisotropic lattice, percolating clusters, percolating clusters with non-spherical particles, discrete particle deposition.

Porous Microstructure Generator

I’ve recently developed a Matlab code to generate the pore scale microstructure of different porous materials to artificially generate porous media found in natural and synthetic applications.

This code has been used to generate porous microstructures representing carbon paper gas diffusion layers used in fuel cells and is now being used to generate battery electrodes in a collaboration with researchers from NTNU in Norway. A graphical user interface has been developed which makes the code user friendly.

As shown by the interface, different parameters can be specified for each algorithm which uses different geometrical transformations. The output of the code creates:

  1. A 3D rendered surface of the generated microstructure
  2. A slice through the domain (showing all phases present)
  3. The phase fractions along the thickness of the material

In this code, it is possible to choose the resolution (number of voxels in the 3D grid) and the target porosity (phase fraction in n-phase materials). As an example, a film phase is generated around the fibres and can be combined with the fibre phase, creating a smoother surface.

Currently there are different algorithms implemented:

  1. Overlapping spherical particles
  2. Non-overlapping spherical particles
  3. Non-spherical overlapping particles
  4. Percolating solid clusters
  5. Fibrous systems
  6. Molten salt battery electrodes
  7. Discrete particle deposition
  8. Ordered lattice systems

The results can be output a surface in .stl format for simulation in CFD software such as OpenFOAM and Fluent, or saved as a .tiff image for later analysis.

If you are interested to use, develop or contribute to the code, please let me know. I’m likely going to develop this further and upload to the Matlab file exchange.