Opennovation News
Engineering Consulting with Open Source Tools
March, 2008

Opennovation is an engineering consulting firm founded by Adam Powell with a focus on using and helping others to use open source software for design and analysis in engineering disciplines such as mechanics, fluid flow, heat transfer, and chemical reactor design.  Opennovation News is a new means of bringing you updates on the company and the broader world of open source software for engineering.

Opennovation News is planning approximately one issue per month.  If you would like to receive it via email, please click here or send email to news@opennovation with "subscribe" in the subject.  Contributions and comments are welcome, please send them to


New presentations on materials modeling and education

Opennovation Principal Adam Powell gave three talks at the TMS Annual Meeting in New Orleans, and one at the Fourth Reactive Metals Workshop at MIT. Two of these are available for download from Opennovation, and another will be available soon as an audio/slide webcast from TMS. Also, the award-winning presentation mentioned in last month's Opennovation News is now available as a webcast.

The first talk at TMS was on phase field modeling of "meso-scale" phenomena in electrochemistry. "Meso-scale" generally refers to structures at the micrometer to millimeter scale. When making a metal coating by electroplating, if one tries to make the coating too quickly, it becomes rough (as shown to the right) and eventually forms tiny dendrites, like millimeter-scale metal trees growing from the surface. This model is aimed at describing such phenomena. You can download the presentation slides here (the question marks are animations not present in the PDF file).

The second talk at TMS and the talk at MIT were about boundary element modeling of large-scale phenomena in electroplating. If electrodes in an electroplating process are not placed properly, then one might deposit too much metal on one side and not enough on the other. Or worse, one could deposit metal too fast and create a rough coating as described above. The modeling method described in this presentation allows an engineer to predict such problems in the computer, and avoid them in a real plating process. The MIT talk includes all of the TMS slides plus two more: one on combining meso-scale and large-scale modeling, and one on thermodynamics. You will soon be able to download those slides from the Reactive Metal Workshop Homepage.

The third talk at TMS was presented at the International Organization of Materials, Metals and Minerals Societies (IOMMMS) Symposium on Education. This talk described the Education Community on the new Materials Technology @ TMS website, discussed some of the common elements of successful online communities, and presented two interesting tools for education called nanoHUB and VUE. That presentation will be available as a webcast from TMS in the near future.

And as mentioned above, the talk described in last month's issue is now available as a webcast. The host is the Materials Technology@TMS website Education Community (free registration or TMS membership required), and the talk is on the Digital Resources: Tutorials page, listed under "Special Topics: Environmental Degradation: On-line Tutorials".

Product focus: Salomé

Salomé is a comprehensive graphical pre- and post-processing framework, which is useful for setting up, controlling, and viewing the results of finite element simulations. When you first run Salomé, it presents a blank screen with buttons to launch its various modules.

The first module you will likely use is "Geometry", which includes a very basic ability to specify shapes and assemblies, and can also import files written by other Computer-Aided Design (CAD) packages. This module uses the OpenCASCADE library (the subject of next month's product focus), which has extensive features for design and CAD import. However, this is really not a CAD program: its graphical interface lacks the ability to change design parameters such as component sizes, or to delete objects.

The "Mesh" module takes a given geometry and divides it into small elements for finite element computation. Salomé includes two built-in triangle mesh generators and one generator of quadrilateral/hexahedron meshes, and also can link to the NetGen flexible triangle/tetrahedron mesher. Both geometry and mesh module panes are shown to the right.

When the geometry is thus "meshed", the MED module can store it along with information about simulation boundary conditions (temperatures, forces, etc.). MED stands for Modélisation et Echanges de Données, and is an international standard format for storing finite element simulation data for finite element software.

After running a finite element program, Salomé's Post-process module can visualize the results. This module uses either OpenCASCADE or the Visualization Toolkit (VTK) to show temperatures, deformations, flow streamlines, and other simulation data in rich three-dimensional color plots.

Every capability of Salomé is published through four interfaces: the graphical interface, a C++ class library for direct linking with other software, CORBA interfaces to use Salomé as a server process optionally on a remote machine, and an interface for scripting using the Python language. The French consulting firm OpenCASCADE S.A.S. leads its development, and about ten other companies and organizations have contributed significant code to Salomé. The code is available under the terms of the GNU Lesser General Public License (LGPL), version 2.1.

In short, Salomé is a rich, modular, extensible graphic interface framework for connecting with multiple open source packages for design, meshing, model storage and visualization. Furthermore, a new extension called Salomé-MECA adds more modules for setting up and controlling a parallel finite element simulation using the ISO-9001 certified Code_Aster software developed by Electricité de France for their nuclear power industry. Salomé is thus at the nexus of a wide range of projects aimed at providing professional-level finite element simulations with all of the benefits of open source.

Ternary thermodynamics visualization

Thermodynamics is a subject known for abstractness and complexity, with which every undergraduate in science and engineering must deal with at some point before graduating. At the same time, thermodynamics provides the fundamental driving force for a wide range processes from combustion to metal annealing, giving it an extremely important role in the science and engineering curriculum.

In order to help students to understand this essential but complex subject, Craig Carter at MIT developed a set of scripts within Mathematica for visualizing the free energy function and phase diagram of a binary mixture.* He shows clearly in this construction that the lowest energy state of a system is given by the convex hull of its free energy function(s).

Based on this concept of the convex hull, Adam Powell linked a program which he wrote five years ago for displaying the free energy of a ternary system, with a software library called Qhull which very quickly calculates the convex hull of a set of points. The result is a new program called Ternary which Powell uploaded to the Materials Digital Library Teaching Archive, whose output is shown to the left.

Version 0.3.0 of Ternary (on the archive as of this writing) uses this concept to generate the phase diagram of a three-component system at one temperature. For example, if the three components of a liquid mixture were water, oil and soap, Ternary would show that the oil and water don't blend, but oil and soap do, as do water and soap. This version has limited accuracy; the primary goal of the next version will be to improve the accuracy considerably. Future versions will calculate the entire temperature-dependent phase diagram, with interactive "sliders" to adjust the model parameters.

Fortunately, Qhull and most of Ternary are not limited to three components, making this work a potential nucleus for a new general-purpose multi-component open source thermodynamics research code. Already a large number of people in academia, government and industry have shown an interest in using and contributing to such a project, which will take thermodynamics research into new and very interesting directions. You can join a discussion of this topic at the MaterialsTechnology@TMS ICME Community (free registration or TMS membership required), click on "Discussion" then "Thermodynamic Software Research Platform". Stay tuned for more updates...

*The best place to see these scripts is at the website of Craig Carter's subject 3.016 for Fall 2007, they are in lecture 5.