OpenSource Solutions for Computer Aided Engineering Blog

OpenSource Solutions for Computer Aided Engineering

The OpenSource Solutions for Computer Aided Engineering Blog is the place for conversation and discussion about OpenSource Computer Aided Engineering (CAE) resources available for modern personal computers. There are a myriad of solutions available in the marketplace for a number of different engineering and scientific applications, but it is not always easy to find the most appropriate solution for a particular circumstance, because many of the packages emanate from University research departments or Government development projects that do not have access to sufficient resources to publicize their products adequately. While the primary focus will be on numerical analysis solutions (FEA, CFD, Signal Processing, SPICE electronic simulation, etc.), we will occasional touch on other aspects of CAE such as Computer-Aided Drafting (CAD), 3D modeling, data acquisition (Test and Measurement, etc.), and other such technologies that can add value to the engineering process.

Previous in Blog: Building a Fully Functional Box for a Few Hundred Bucks   Next in Blog: Putting Your Spreadsheet Program to Work
Close
Close
Close
4 comments

Crunching Numbers

Posted November 15, 2010 12:00 AM by cwarner7_11

In previous posts, we have discussed why we want to consider OpenSource software for engineering solutions, and using OpenSource solutions for getting data into the computer so we can do something with it.

Now that we have the data in the computer, we need to address the issue of extracting information from the raw data. Most often, we need to present our data in some graphical form, and then we need to figure out how to separate the information we are after from the noise. Noise, of course, is nothing more than signals in which we have no primary interest (although, if you are like me, you enjoy exploring the noise as well, just to see if there is some unanticipated insight that may be gleaned from an unanticipated signal).

Most of my personal experience deals with time series data, although the tools we will discuss have statistical analysis capabilities as well as an infinite number of tools for filtering and manipulating just about any set of numbers representing just about any sort of problem an engineer might encounter.

We begin our discussion with the lowly Spreadsheet, which is actually a very, very powerful tool. I have done everything from modeling the thermal performance of a fiber optic gyroscope to a simple electrostatics finite element analysis (thanks to Richard Carter in his book "Electromagnetism for Electronics Engineers Examples", available from www.bookboon.com) to FFT analysis of a noisy signal to direct recording of data in a simulated chart recorder (I have written a VBA macro for this that I will send to anyone who requests it by private message) to simply formating the raw data into a presentable graphical representation, in addition to such mundane things as tracking project costs and time.

Of course, not all spreadsheet solutions are created equal. My personal preference is the old Microsoft Excel 2000, which I currently run (legally licensed, of course) on my Linux boxes using both Wine and VirtualBox. Even when virtualized, I find this older version to be much faster with graphics than anything else I have tried, including the OpenOffice Calc and newer versions of Excel.

When one is dealing with several thousand data points, and trying to adjust axes scales for closeups of specific regions of the data, this can be critical. The older version of Excel comes with the Analysis Package (not generally installed by default, but available on the original CD) that includes some very sophisticated tools (like the FFT). The newest version of Excel I have worked with is 2003, which is a dog when it comes to graphs (running on the same machine and with the same operating system) compared to the 2000 version- I have not seen a need to try any later versions.

My limited time with Excel 2003 also demonstrated to me that, if some of the more esoteric tools I like are available, they are so deeply buried in the structure that I was unable to find them. But, most of us are quite adept at using the spreadsheet, so let us have a look at a couple of other options.One of my long-time favorites (since back in my Windows days, actually) is a Program called "NIST Dataplot", (http://www.itl.nist.gov/div898/software/dataplot/), brought to you by the US National Institute of Standards and Technology (NIST).

Quoting from their web site:"Dataplot is a free, public-domain, multi-platform (Unix, VMS, Linux, Windows 95/98/ME/XP/NT/2000, etc.) software system for scientific visualization, statistical analysis, and non-linear modeling. The target Dataplot user is the researcher and analyst engaged in the characterization, modeling, visualization, analysis, monitoring, and optimization of scientific and engineering processes. "It comes with an extensive documentation package, including a text that could actually serve as a college-level course text, explaining the basic procedures; samples (including sample databases for trial analysis); and tutorials.

This is probably the best documentation package I have ever encountered, written in plain English, not tech-speak.Manual detailed table of contents here: http://www.itl.nist.gov/div898/handbook//Here's a screen shot of a preliminary look at some noisy real-world data from my archives:

If you have a lot of numbers to crunch, I highly recommend you check this one out. As an aside, NIST and other US government departments are a great source for sophisticated Free OpenSource software, as are many other government sources around the world (the Canadian RETScreen or European EDF come to mind).

Now, pre-packaged software is not always going to solve the problems you are addressing exactly as you think they should be solved. If you are a true masochist, there is always the option of building your own specific program. Most Linux distributions come packaged with full c, c++, and fortran compilers. If they have not been included in the distro you are using, they are easily added from the distro repositories, SourceForge.net- a site everyone should have bookmarked, or the home page of the developers, like gcc or gfortran.

I have noted that Python is a very popular language with OpenSource developers, especially within the engineering/scientific realm (many of my favorite packages are built on Python). One of the most important features of OpenSource is the ability to customize a package to suit your specific needs, and Python appears to be a common tool for accomplishing this. A number of packages (i.e., Salome, Blender, etc.) have built-in capabilities for developing Python scripts.

If you are less of a masochist, but still need to expand beyond the normal features of packaged software, there are some very good OpenSource packages designed to give you the capabilities normally associated with Matlab, Mathematica, and their ilK. For example, there are:

Scilab, my personal favorite due to long-term use with extensive math and graphics libraries, although I have some reservations about the newest versions

Octave, perhaps more familiar to those with Matlab experience

R, generally promoted as a statistical analysis package

Several Python projects, like NumPY, SciPY and the python(x,y) project which tries to provide an all-in-one solution for scientific development. This project includes the Spyder IDE which is similar to Matlab and Scilab GUI (i.e. display variables, code completion, history, etc.). The python(x,y) project includes a number of scientific libraries just as the Scilab and Octave packages. My personal experience with some of these is quite limited, however- anyone out there with more experience with any of these (or any of the multitude of other packages that I have not mentioned), let us know what you think is best.

As a final note for this Blog, we offer the following that was shared with us by Garthh in a private communication, and I feel it offers some really good information, so I am sharing it here (with his permission, of course):

One of the most useful tools in CAE [computer aided engineering] is some sort of drawing tool. There are many choices- the basic ones like draw, viseo & sketch-up are the equivalent to a cocktail napkin. GE has provided a most excellent online collaborative tool: http://www.imaginationcubed.com/index.phpyou. You can save your white board drawings & send a link to others. If you click on the link you'll see you can also add to the drawing.

Now I'll move on to a more useful tool- Sweet Home 3D [works on windows, apple or linux]. This tool is much more exact, giving you real scale drawings, you can save as PDF's. I was able to scan the floor plan of my house into my computer & use that as a background. At the beginning of the process I defined the length of my house, so as I trace the walls & add windows/doors which sets the scale. Drag N Drop the windows to their proper positions. Now it's time to put in the walls. Click preferences on the edit menu & define the height & thickness of the inside walls. The procedure for walls is click the start, click the end, keep defining walls until you have finished a room & click the escape key. Use the same procedure for the rest of the rooms. Go back to preferences & adjust the settings for the outside walls. I've only covered some minor details that took me a while to figure out; there is a manual & a user forum available.

You've written several times that freeCAD doesn't work. I tried the .9 version from the repository, yup doesn't do a thing. So I join the forum start a thread & figure out I need to do a new install from source. But then I need a shortcut, so I open gedit & write a couple of line script:

cd freecad/bin

./FreeCAD

which I saved as FreeCad.sh. I went to the file changed the permission so it would run as an executable file. Everything seems to work now. I can make various objects, there's a sidebar with all the attributes of whatever object title I'm looking at, etc.

Thanks, Garthh!

Reply

Interested in this topic? By joining CR4 you can "subscribe" to
this discussion and receive notification when new comments are added.
Guru
Safety - Hazmat - New Member Safety - ESD - New Member Engineering Fields - Transportation Engineering - New Member Popular Science - Evolution - New Member Technical Fields - Procurement - New Member Hobbies - Target Shooting - New Member Popular Science - Cosmology - New Member Engineering Fields - Architectural Engineering - New Member Technical Fields - Marketing/Advertising - New Member Engineering Fields - Food Process Engineering - New Member

Join Date: Dec 2005
Location: Mariposa Ca
Posts: 5800
Good Answers: 114
#1

Re: Crunching Numbers

11/15/2010 11:55 PM

I'll make some more entries on freecad, after I've spent more time on it. I need to study some of the terminology, I don't speak cad yet. FC has a python script editor, which I think will do many of the things VBA will do

I'm sidetracked on a virtual machine project

so many toys so little time

Reply
Guru
Panama - Member - New Member Hobbies - CNC - New Member Engineering Fields - Marine Engineering - New Member Engineering Fields - Retired Engineers / Mentors - New Member

Join Date: Dec 2006
Location: Panama
Posts: 4273
Good Answers: 213
#2
In reply to #1

Re: Crunching Numbers

11/16/2010 12:42 AM

I think you will ultimately find Python a whole lot more powerful than VBA, but it will require a bit of "attitude adjustment" to really enjoy the power...

What are you using for your virtual machine? There are a number of options, and that is a future blog...Keep me updated, please.

As to "so many toys so little time"- isn't that what we love about FOSS?

Reply
Guru
Safety - Hazmat - New Member Safety - ESD - New Member Engineering Fields - Transportation Engineering - New Member Popular Science - Evolution - New Member Technical Fields - Procurement - New Member Hobbies - Target Shooting - New Member Popular Science - Cosmology - New Member Engineering Fields - Architectural Engineering - New Member Technical Fields - Marketing/Advertising - New Member Engineering Fields - Food Process Engineering - New Member

Join Date: Dec 2005
Location: Mariposa Ca
Posts: 5800
Good Answers: 114
#3
In reply to #2

Re: Crunching Numbers

11/16/2010 1:47 AM

I'm using Virtual box OSE from the 10.04 repository

I need to learn how to load an OS across my network, the cd seems to have taken a dump on this laptop

I want to run XP, which I don't think will load on a flash drive...

I couldn't run VB on my old pc, just not enough ram for XP

Tonight I'm working on a building a wiki, which will be a compilation of the shipping container as housing threads. I'll post links for that in the next couple days, I have the bones up I need to move some content over, compressed earth blocks too

Reply
Guru
Panama - Member - New Member Hobbies - CNC - New Member Engineering Fields - Marine Engineering - New Member Engineering Fields - Retired Engineers / Mentors - New Member

Join Date: Dec 2006
Location: Panama
Posts: 4273
Good Answers: 213
#4
In reply to #3

Re: Crunching Numbers

11/16/2010 9:20 AM

Garthh-

I have most of the shipping container blogs already in text format, a lot of it already stripped of the "off topic" stuff (my definition of "off topic", not the "official" off topic version). If this would help, I could send it to you.

The only problem with the way I have edited the blogs is that I lose all the illustrations.

I also have a document I was working on regarding CEB, but that was a personal document and has a lot of plagiarism (copying and poorly documented for sources)- NOT ready for publishing! I could make that available to you as well. Maybe we should take this part of the discussion off line?

Reply
Reply to Blog Entry 4 comments
Interested in this topic? By joining CR4 you can "subscribe" to
this discussion and receive notification when new comments are added.

Previous in Blog: Building a Fully Functional Box for a Few Hundred Bucks   Next in Blog: Putting Your Spreadsheet Program to Work

Advertisement