Working Model Engineering Framework (WMEF) Pitch

It may be about time to get some serious engineering application software done open source. I don't know how bad it is in other branches, but in civil engineering it is very frustrating and usually expensive to acquire the software modeling tools needed to do a job. For any specific modeling task, there are usually three alternatives.

Usually the first choice is to research and procure a commercial software product. Besides the difficulty of determining which products are applicable, the cost of just the package (never mind training costs) is often prohibitive, especially in civil engineering when a single project may require dozens of types of modeling tasks with each type done using a different software package. There is also the effort it usually takes to move data among often incompatible formats, so it's no surprise engineering firms frequently choose another option.

It really shouldn't be surprising that heart of many of the proprietary programs is open-source software originally developed by a government agency or educational institution; few companies have the resources to do the research necessary to develop and test modeling algorithms. Additionally, and especially in the realm of civil engineering, private interests are reluctant to assume the risks of a faulty algorithm or implementation. So many proprietary engineering modeling software packages are just wrappers around open-source code.

Though most of these original packages are no longer maintained, many are still around, can be made to run on modern systems and are still used by engineering firms. The learning curve is usually steeper, and data incompatibility is often a bigger problem, but for a firm with more talented labor than investment capital, using these packages can be the most economical choice.

A third option engineering firms have is to develop, maintain, and use their own tools, and most do this in varying degrees. Though few have the resources to develop a new model or algorithm, many implement proven solutions in a form that better suits their business needs.

You can probably see where I'm going by now. What really annoys me is that everyone is reinventing the same wheel over and over again, or using an old kinda-square version of one. Particularly amusing is how the most widely used method of solving acoustical problems is to model the system as an analog electrical circuit and use a SPICE implementation. And this is what got me thinking.

First, it seems there are maybe only a dozen or so mathematical problems at the heart of perhaps ninety percent of engineering models. (For example, finite element analysis was developed for aeronautics, and is used now from acoustics to structural analysis to antenna design and a host of other applications I don't know about yet.) There are plenty of well-known ways to solve most of these problems, and the mathematical core (LAPACK) is still available and in active development.

Second, most of engineering analysis and design is a combination of geometry and material properties. Material properties are relatively cheap and easy to compile into a big database. (There is no copyright on data.) The tough part is handling the geometry.

From simple ball-and-stick or circuit diagrams to 3-D animated meshes, many of the ways to model an engineering system are geometrical. In fact, it is often a good idea to test models of a particular system at different geometric granularities.

I hope you can see the obvious modular software design, a variety of of ways to visualize a mathematical engineering model with a number of solution methods and other mathematical manipulations available.

Besides the obvious advantages of the entire team working together in the same software package on the same extended dataset, there is also an interesting side-effect to using this integrated design. Consider a windmill. The blade shape, generator design, control circuitry, tower structure, foundation, and surrounding earth can all be analyzed together under varying meteorological and load conditions. Think about this. Because of the fairly tight coupling among all these elements, how else could you find resonance problems in the design? Then remember this is only one simple windmill.

So, the need for open source engineering modeling software is clear, and I hope you can find the time to help with this project.

David Wagner 2008/12/12 13:45

[I wrote this originally in response to someone asking for details about this project.]


Personal Tools