Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.

Intel FORTRAN and MATLAB

JohnNichols
Valued Contributor III
368 Views

I am so tired of engineers waving solutions about in MATLAB and Maple, when you ask how do you scale it etc.. one just gets this statement -- this is what we are taught. 

Why the heck do we not teach Fortran -- anyone who thinks MATLAB is a great learning tool is an interesting person. 

I read some power point slides the other day on Fortran programming from a MAJOR university, I was interested in the teaching of commons. 

I moved me to put the following statement into a current paper -- does anyone think I am being to hard or unreasonable?

"The challenge is determining realistic simplifications that make the problem tractable using modern programming methods [9-13], albeit with multithread programs operating in near real time, which is a significant programming challenge, and probably too difficult for most engineers considering the preponderance of engineering programs that teach MATLAB or Maple."

PS -- the only good Python is a dead Python - old Australian proverb. 

 

 

0 Kudos
3 Replies
Brown__Ainsmar
Beginner
368 Views

A brand new application fully designed in modern MATLAB/Simulink (R2019a for example) is very well supported for scaling and all I find. The engineers at Mathworks have made great progress the last decade on auto code and end user coding suggestion tools from my perspective. The issue I recently found is trying to keep maintenance on legacy programs that piece together code from all over the place, C/C++/FORTRAN and others. If your MATLAB application depends on those resources, it becomes a lot less flexible unless you are a master programmer that can trace down all the "bugs", do all the fancy command line wizardly and update the legacy code accordingly.

 

My first official programming project was in FORTRAN. That was in 2005 and ended in 2005. Haven't looked at FORTRAN ever since. Light need for C/C++ but I've supported several deployed code projects simply using the MATLAB built in compiler tools. If ever an issue arises with those solutions, it is with algorithms and not code efficiency, deploy-ability, etc... 

 

I am trying to revive a project from the 80's now that had partial support in MATLAB but still mostly FORTRAN. That experience from 2005 does not help me much today unfortunately.

 

I think if there are advocates for FORTRAN today in 2019, they need to have the same level of sophisticated support systems that you get from a MATLAB/Simulink support license. Otherwise, it is a no go for a modern day application engineer, such as myself that has limited support from a programming tools point of view. No one in my organization is considered a FORTRAN SME.

 

The way I see it, I am paid to get F=ma correct, not to be a master programmer. I would love to be both, but reality is what it is. If I step too much outside of the MATLAB/Simulink environment, I don't find the support I need internally or externally. The time, money and commitment from my company is not there to make me equally competent in any other programming environment right now.

0 Kudos
FortranFan
Honored Contributor II
368 Views

Brown, Ainsmar wrote:

A brand new application fully designed in modern MATLAB/Simulink (R2019a for example) is very well supported for scaling and all I find.  ..

The way I see it, I am paid to get F=ma correct, not to be a master programmer. I would love to be both, but reality is what it is. If I step too much outside of the MATLAB/Simulink environment, I don't find the support I need internally or externally. The time, money and commitment from my company is not there to make me equally competent in any other programming environment right now.

Starting with 1990 standard, it has been Fortran, not FORTRAN.

To each their own in terms of their computing approaches, there are many options now.

0 Kudos
JohnNichols
Valued Contributor III
368 Views

Dear Fortran Fan:

yes there are many options, but if you want raw speed there is Fortran, I remember when mecej4 and you helped me with the water supply analysis program that I had coded in C# and mecej4 suggested I recode it in Fortran and it would be a lot faster, I was intrigued and spent a weekend doing that -- it is actually quite easy to transfer C# to Fortran - it ran twice as fast as mecej4 suggested. 

One of my graduate students tried Matlab for doing pixel analysis on pictures, he had a friend show him how and then he showed me, while he was doing one picture I wrote a C# code to do the same thing that was  a lot faster and gave it to him and said use this.  

He said that they were not taught anything but Matlab,  

ma+hv+kx=F is the total solution. 

 

0 Kudos
Reply