Pogo is an explicit time domain finite element solver for linear elastodynamic problems. Essentially this means that it can solve wave propagation or vibration problems in solid media.

The full Pogo solver has

  • A range of linear elements in 2D and 3D
  • Ability to excite multiple force or displacement sources throughout the model
  • Outputs of displacement, both as time traces and as field data for visualisation
  • Support for multiple materials, including anisotropy and damping (useful for absorbing boundaries)
  • Fully acoustic models (i.e. pressure-based)
  • Ability to apply fixed displacement conditions.

We are always testing new features and currently have some implementations which are being tested in:

  • Fluid-solid coupling using fully-displacement-based models
  • Viscous damping.

Potential future features

We would be keen to extend Pogo in the future to include electromagnetic models if there is sufficient interest. We are always interested to hear suggestions for future features, particularly if they represent limitations which prevent full use of Pogo. We are also able to develop specific solutions to problems – see our licensing and support page.

Frequently asked questions

How much faster is Pogo than [another package]?

The amount of time Pogo takes to run is dependent on the GPU (as discussed on the hardware page this is primarily dependent on memory bandwidth). It can also depend on CPU and other system parameters for pre- and post-processing (if these are included in the run-time comparison). Any other software package used for comparison is similarly likely to have very big dependence on a wide variety of parameters. However, it should be emphasised that Pogo is well optimised to make maximum use of GPU memory bandwidth (more information can be found in the paper doi:10.1016/ From tests we performed, Pogo on a single GPU was found to be around 100 times faster than the same model running with Abaqus Explicit on a single core, although as mentioned this is highly hardware dependent.

Why is it called Pogo?

'Pogo' is just a name. It does not stand for anything (although we are always interested to hear any amusing retrospective suggestions!). In the past we have tried to come up with clever acronyms for tools developed, but we have realised that people never remember what these stand for anyway! In English there are links to 'Pogo sticks', poles with springs on, used as a child's toy for jumping up and down on, which fits well given the dynamic wave/vibration problems Pogo solves. Pogo is a fairly neutral name, and hopefully works well internationally as well as being memorable.

We’ve heard different meanings from people around the world. Apparently in Brazil (and possibly some other countries), ‘Pogo’ means to jump up and down at a rock concert, and in the USA there was a comic strip character called ‘Pogo’.

How should I write Pogo?

Just like that - Pogo. The first letter is capitalised and the rest lowercase. It should not be entirely uppercase (e.g. POGO). Note that while the logo is written entirely in lowercase, Pogo in normal text should have its first letter capitalised. If you do wish to use the logo, please contact us (details below) and we would be happy to provide high-resolution versions as appropriate.


Pogo began life in 2012 as a small package written by Peter Huthwaite. From solving simple 2D models it has been extended, and made more flexible, to the version available today. These advanced features are available through Imperial Consultants – please contact us (details below) for more information.


The primary paper which should be cited if using Pogo can be found at This describes the approach used to subdivide the model optimally, enabling it to run efficiently on a GPU. The bibtex key is:

@article{Huthwaite2014, title = "Accelerated finite element elastodynamic simulations using the {GPU}", journal = "Journal of Computational Physics", volume = "257, Part A", number = "0", pages = "687 - 707", year = "2014", issn = "0021-9991", doi = "", url = " /pii/S0021999113006931", author = "Peter Huthwaite", }

Pogo is used by a number of research groups around the world. Some of the key papers which have taken advantage of Pogo are listed below.

Pogo is also being increasingly used in industry, with consultancy work having been undertaken to develop solutions for companies across a number of sectors, including the petrochemical and nuclear industries.


Dr Peter Huthwaite

Imperial College London