Skip to content

The lost art of Fortran programming

January 18, 2012

My first and only Fortran programming class was at a small college with a big computer. The computer was actually part of the business school and I was one of only a few people who seemed to use it only a regular basis.  The computer was fast which allowed me to make programming mistakes fast and fix bugs even faster.

The source code was punched on small cards by a machine that resembled the old teletype devices. It almost walked around the room while punching the cards. Now I have totally dated myself!

I was excited about programming in Formula Translation. I could finally solve some fairly sophisticated math and engineering problems again and again by simply changing the input to the software.

Engineering and math students graduating from college today seem to be quite proficient in MATLAB, C and C++. I personally can barely spell C! Unless we are developing deliverable software, people tend to program in a language with a high comfort level. Many young engineers have heard of Fortran but few have actually seen Fortran source code. I am not aware of Fortran classes offered to engineering students.

In aerospace engineering we do lots of things in MATLAB. But we also do many more types of analysis in Fortran. The so-called “industry standard” aerospace programs like POST (Program to Optimize Simulated Trajectories) and OTIS (Optimal Trajectories by Implicit Simulation) are both written in Fortran. I don’t know about other engineering disciplines, but in aerospace the majority of heritage software is written in Fortran. Also, I don’t know many people who are interested in porting thousands of lines of source code to another high level language.

Fortran was written for number-crunching. It has evolved over the years to take advantage of such features as modern programming constructs, dynamic memory allocation and modules. It’s easy to read and easy to use. Fortran is a compiled language that executes orders of magnitude faster than MATLAB which is an interpretive language. If you know MATLAB you should be able to learn Fortran quickly.

We need engineers who are not intimidated by Fortran and large scientific simulations.

For example, where I work we have a task to “hook” the Fortran version of the GRAM 2010 atmosphere model into a trajectory simulation. Since both GRAM 2010 and the trajectory simulation are written in Fortran, the integration and checkout should be straight forward. The problem is the lack of engineers who are proficient with Fortran.

Advertisements

From → Uncategorized

2 Comments
  1. Dear David,

    I can’t agree more with you. The only computer language I am comfortable with (if you leave MATLAB out) is FORTRAN. In fact, I could pick up MATLAB proramming fast because I knew FORTRAN. Last year, I was busy in incorporating MARSGRAM-2010 into an orbital trajectory simulation code (in FORTRAN). I don’t think it would have been possible, had I not been taught FORTRAN in my college.

    Priyankar

  2. Mike permalink

    David,

    Well, here I am again. I seem to be right in line with you and Priyankar. I graduated from the University of Minnesota in 1983 and am also “comfortable” with FORTRAN. It’s nice to see someone saying something positive about FORTRAN. I’m not sure what’s wrong with it for purely number crunching purposes. What I need to do is learn MATLAB.

    Mike

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: