<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Tim: in Intel® Fortran Compiler</title>
    <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998697#M103091</link>
    <description>&lt;P&gt;Tim:&lt;/P&gt;

&lt;P&gt;I spent an enjoyable morning inside the program.&amp;nbsp; Once I had been taught that it would compile as release it was not that hard, just had to go back to putting write statements at the error points&lt;/P&gt;

&lt;P&gt;This reminded me of Microsoft Fortran 3.3.1 and the old Compaq portable. It was nice in those days, it took 40 minutes to compile a program so you had lots of free time to do things, Now with the flash drive this thing runs in no time, so you only leave your seat to get another coke.&lt;/P&gt;

&lt;P&gt;Thanks for the note on inline functions, I have programmed since 1978, but there is no way I would use such a beast.&amp;nbsp; it appears to be working.&lt;/P&gt;

&lt;P&gt;The problems this morning related to DATA statements not being read properly, my fault.&amp;nbsp;&lt;/P&gt;

&lt;P&gt;I am now at the stage of sorting out the Stiffness matrix and turning it from a vector to an array.&lt;/P&gt;

&lt;P&gt;JMN&lt;/P&gt;</description>
    <pubDate>Fri, 18 Apr 2014 16:43:46 GMT</pubDate>
    <dc:creator>JohnNichols</dc:creator>
    <dc:date>2014-04-18T16:43:46Z</dc:date>
    <item>
      <title>Old Fortran Program</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998675#M103069</link>
      <description>&lt;P&gt;Steve:&lt;/P&gt;

&lt;P&gt;I came across an old Fortran program from UCLA.&amp;nbsp; It is a very useful program and the site provides a copy of the program complied in Compaq Fortran in 32 bit.&lt;/P&gt;

&lt;P&gt;I tried unsuccessfully yesterday to compile the program.&amp;nbsp; I broke it down into reasonable units and slowly worked to fix some things.&lt;/P&gt;

&lt;P&gt;But when I get to the FEM module - it starts and never stops on the compiler.&amp;nbsp; I stepped through it by adding back a line at time, but could not spot the error.&amp;nbsp; If I did not have a working EXE I would wonder, but there is a working exe in Windows.&lt;/P&gt;

&lt;P&gt;Any ideas, I enclose the original code and the modifications I made. It is an interesting program that has the potential to save lives in earthquakes so I am keen to get it working.&amp;nbsp; If I cannot I will rewrite the algorithms in C#.&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;JMN&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 17 Apr 2014 15:37:42 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998675#M103069</guid>
      <dc:creator>JohnNichols</dc:creator>
      <dc:date>2014-04-17T15:37:42Z</dc:date>
    </item>
    <item>
      <title>It is on Windows 7.1 VS 2013</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998676#M103070</link>
      <description>&lt;P&gt;It is on Windows 7.1 VS 2013 Professional and Latest Intel Compiler.&lt;/P&gt;</description>
      <pubDate>Thu, 17 Apr 2014 15:39:31 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998676#M103070</guid>
      <dc:creator>JohnNichols</dc:creator>
      <dc:date>2014-04-17T15:39:31Z</dc:date>
    </item>
    <item>
      <title>It is on Windows 7.1 VS 2013</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998677#M103071</link>
      <description>&lt;P&gt;It is on Windows 7.1 VS 2013 Professional and Latest Intel Compiler.&lt;/P&gt;</description>
      <pubDate>Thu, 17 Apr 2014 15:39:36 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998677#M103071</guid>
      <dc:creator>JohnNichols</dc:creator>
      <dc:date>2014-04-17T15:39:36Z</dc:date>
    </item>
    <item>
      <title>64 bit Dell Precision machine</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998678#M103072</link>
      <description>&lt;P&gt;64 bit Dell Precision&amp;nbsp;machine running Intel Processor&lt;/P&gt;</description>
      <pubDate>Thu, 17 Apr 2014 15:41:18 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998678#M103072</guid>
      <dc:creator>JohnNichols</dc:creator>
      <dc:date>2014-04-17T15:41:18Z</dc:date>
    </item>
    <item>
      <title>There appear to be plenty of</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998679#M103073</link>
      <description>&lt;P&gt;There appear to be plenty of real vs. double precision inconsistent usages. &amp;nbsp; &amp;nbsp;Strange that they express double precision constants in just 8 digits, as was the custom for single precision on the 36-bit platforms of the old days.&lt;/P&gt;

&lt;P&gt;gfortran &amp;nbsp;lists them more expeditiously.&lt;/P&gt;

&lt;P&gt;What happens if you do a wholesale editor conversion to make them all the same, e.g real(real64) ?&lt;/P&gt;

&lt;P&gt;&lt;A href="http://fortranwiki.org/fortran/show/Real+precision" target="_blank"&gt;http://fortranwiki.org/fortran/show/Real+precision&lt;/A&gt;&lt;/P&gt;

&lt;P&gt;Obsolescent f77 style CHARACTER declarations and statement functions shouldn't be a problem, if in fact they are used in accordance with f77.&lt;/P&gt;

&lt;P&gt;I suppose it's a bug when ifort chokes on bad source files. &amp;nbsp;I'm not surprised that -real-size:64 doesn't fix this.&lt;/P&gt;

&lt;P&gt;As far as parameters passed between procedures were concerned, CVF could work with inconsistent real types in almost single precision due to both single and double precision being passed in consistent x87 register format. &amp;nbsp;I don't know whether ifort ia32 /arch:IA32 would tolerate this.&lt;/P&gt;</description>
      <pubDate>Thu, 17 Apr 2014 16:18:27 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998679#M103073</guid>
      <dc:creator>TimP</dc:creator>
      <dc:date>2014-04-17T16:18:27Z</dc:date>
    </item>
    <item>
      <title>Tim:</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998680#M103074</link>
      <description>&lt;P&gt;Tim:&lt;/P&gt;

&lt;P&gt;Thanks for the reply.&amp;nbsp;&lt;/P&gt;

&lt;P&gt;I have some old Fortran code written in 1967 at UCB by some very good programmers in Fortran and it compiles quickly and efficiently. This is just a nightmare to fix.&amp;nbsp;&lt;/P&gt;

&lt;P&gt;I have data and answers, but I spent most of yesterday just getting it to a part way stage of working.&amp;nbsp; But back to the fold.&lt;/P&gt;

&lt;P&gt;Wish 1:&amp;nbsp; C# would work nice with Fortran.&amp;nbsp; Steve C# is not going away and the ability to work seamlessly would be nice.&lt;/P&gt;

&lt;P&gt;Wish 2: FORTRAN IS SPELT FORTRAN AND NOTHING ELSE NO MATTER WHAT ANYONE SAYS&lt;/P&gt;

&lt;P&gt;Wish 3: Chinese for lunch&lt;/P&gt;

&lt;P&gt;(1 out of 3 is not bad)&lt;/P&gt;

&lt;P&gt;JMN&lt;/P&gt;</description>
      <pubDate>Thu, 17 Apr 2014 16:35:34 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998680#M103074</guid>
      <dc:creator>JohnNichols</dc:creator>
      <dc:date>2014-04-17T16:35:34Z</dc:date>
    </item>
    <item>
      <title>Steve:</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998681#M103075</link>
      <description>&lt;P&gt;Steve:&lt;/P&gt;

&lt;P&gt;OK, so I start to rewrite the program to make it - compile.&lt;/P&gt;

&lt;P&gt;I get this far and am told&amp;nbsp; when I compile it is not a valid windows program.&lt;/P&gt;

&lt;P&gt;When I uncomment DVLAST&lt;/P&gt;

&lt;P&gt;&lt;FONT color="#0000ff" face="Consolas" size="2"&gt;&lt;FONT color="#0000ff" face="Consolas" size="2"&gt;&lt;FONT color="#0000ff" face="Consolas" size="2"&gt;REAL&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="Consolas" size="2"&gt;&lt;FONT face="Consolas" size="2"&gt; FDV(16008, 16008)&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;

&lt;P&gt;&lt;FONT color="#008000" face="Consolas" size="2"&gt;&lt;FONT color="#008000" face="Consolas" size="2"&gt;&lt;FONT color="#008000" face="Consolas" size="2"&gt;!REAL DVLAST(16008, 16008)&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;

&lt;P&gt;&lt;FONT color="#008000" face="Consolas" size="2"&gt;&lt;FONT color="#008000" face="Consolas" size="2"&gt;&lt;FONT color="#008000" face="Consolas" size="2"&gt;!REAL BASAL(16008,16008)&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;

&lt;P&gt;&lt;FONT color="#008000" face="Consolas" size="2"&gt;&lt;FONT color="#008000" face="Consolas" size="2"&gt;&lt;FONT color="#008000" face="Consolas" size="2"&gt;never had this before.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;

&lt;P&gt;&lt;FONT color="#008000" face="Consolas" size="2"&gt;&lt;FONT color="#008000" face="Consolas" size="2"&gt;&lt;FONT color="#008000" face="Consolas" size="2"&gt;Help&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;

&lt;P&gt;&lt;FONT color="#008000" face="Consolas" size="2"&gt;&lt;FONT color="#008000" face="Consolas" size="2"&gt;&lt;FONT color="#008000" face="Consolas" size="2"&gt;JMN&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 17 Apr 2014 18:01:23 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998681#M103075</guid>
      <dc:creator>JohnNichols</dc:creator>
      <dc:date>2014-04-17T18:01:23Z</dc:date>
    </item>
    <item>
      <title>I don't see the behavior you</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998682#M103076</link>
      <description>&lt;P&gt;I don't see the behavior you describe. I do see /warn:interfaces reporting multiple errors in the sources.&lt;/P&gt;</description>
      <pubDate>Thu, 17 Apr 2014 18:08:31 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998682#M103076</guid>
      <dc:creator>Steven_L_Intel1</dc:creator>
      <dc:date>2014-04-17T18:08:31Z</dc:date>
    </item>
    <item>
      <title>Builds and runs fine for me</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998683#M103077</link>
      <description>&lt;P&gt;Builds and runs fine for me with those arrays uncommented. The arrays aren't big enough to pose a problem with exceeding 2GB static code and data. Are you running on the same system you are building on?&lt;/P&gt;</description>
      <pubDate>Thu, 17 Apr 2014 18:13:21 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998683#M103077</guid>
      <dc:creator>Steven_L_Intel1</dc:creator>
      <dc:date>2014-04-17T18:13:21Z</dc:date>
    </item>
    <item>
      <title>Error 1  fatal error LNK1248:</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998684#M103078</link>
      <description>&lt;P&gt;Error&amp;nbsp;1&amp;nbsp; fatal error LNK1248: image size (AFB68000) exceeds maximum allowable size (80000000)&amp;nbsp;LINK&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;&lt;/P&gt;

&lt;P&gt;Steve:&lt;/P&gt;

&lt;P&gt;This is the error that I got when I ran the one with the arrays declared.&amp;nbsp;&lt;/P&gt;

&lt;P&gt;JMN&lt;/P&gt;</description>
      <pubDate>Thu, 17 Apr 2014 19:09:36 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998684#M103078</guid>
      <dc:creator>JohnNichols</dc:creator>
      <dc:date>2014-04-17T19:09:36Z</dc:date>
    </item>
    <item>
      <title>Steve:</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998685#M103079</link>
      <description>&lt;P&gt;Steve:&lt;/P&gt;

&lt;P&gt;If I create a new Console Application and load the Shell-copy.for program, which is all of it - after ten minutes I see the screen attached.&lt;/P&gt;

&lt;P&gt;Yes I am running it on the same machine&lt;/P&gt;

&lt;P&gt;JMN&lt;/P&gt;</description>
      <pubDate>Thu, 17 Apr 2014 19:15:26 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998685#M103079</guid>
      <dc:creator>JohnNichols</dc:creator>
      <dc:date>2014-04-17T19:15:26Z</dc:date>
    </item>
    <item>
      <title>If you get the link error,</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998686#M103080</link>
      <description>&lt;P&gt;If you get the link error, that means there is too much data for Windows and yes, you'll get an error that it is not a valid executable. I didn't see that when I tried it.&lt;/P&gt;

&lt;P&gt;When you have the whole thing in one source, it can take a long time. I'll take a look at this.&lt;/P&gt;</description>
      <pubDate>Thu, 17 Apr 2014 20:14:10 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998686#M103080</guid>
      <dc:creator>Steven_L_Intel1</dc:creator>
      <dc:date>2014-04-17T20:14:10Z</dc:date>
    </item>
    <item>
      <title>Steve:</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998687#M103081</link>
      <description>&lt;P&gt;Steve:&lt;/P&gt;

&lt;P&gt;it is some obscure error, when the program compiles on this machine it is fast, I have a 1 TB flash drive, the slowest thing on this device is the Intel Processor.&lt;/P&gt;

&lt;P&gt;I feel that a rewrite is needed - proceeding slowly&lt;/P&gt;

&lt;P&gt;JMN&lt;/P&gt;</description>
      <pubDate>Thu, 17 Apr 2014 20:34:11 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998687#M103081</guid>
      <dc:creator>JohnNichols</dc:creator>
      <dc:date>2014-04-17T20:34:11Z</dc:date>
    </item>
    <item>
      <title>Quote:John Nichols wrote:</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998688#M103082</link>
      <description>&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;John Nichols wrote:&lt;BR /&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;...&lt;/P&gt;

&lt;P&gt;Wish 1:&amp;nbsp; C# would work nice with Fortran.&amp;nbsp; Steve C# is not going away and the ability to work seamlessly would be nice.&lt;/P&gt;

&lt;P&gt;..&lt;/P&gt;

&lt;P&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;C# (and any other Microsoft .NET language e.g., Visual Basic) does indeed work well with Fortran.&amp;nbsp; What specific issues are you facing?&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 17 Apr 2014 21:40:16 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998688#M103082</guid>
      <dc:creator>FortranFan</dc:creator>
      <dc:date>2014-04-17T21:40:16Z</dc:date>
    </item>
    <item>
      <title>Quote:John Nichols wrote:</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998689#M103083</link>
      <description>&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;John Nichols wrote:&lt;BR /&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;..&lt;/P&gt;

&lt;P&gt;I feel that a rewrite is needed - proceeding slowly&lt;/P&gt;

&lt;P&gt;..&lt;/P&gt;

&lt;P&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;Going by your original comment and this quote, I gather you're rather keen on rewriting the code and presumably doing so in C#.&amp;nbsp; Considering the effort required to finish such a task and the fact that the code had worked in Compaq Fortran (per UCLA site info), I find your keenness quite strange.&amp;nbsp; Having ported quite a few large projects from Compaq Fortran to Intel Fortran (and amazed how easy that was) and assuming&amp;nbsp;the UCLA site is&amp;nbsp;being truthful about a working version in 32-bit Compaq Fortran, I feel one can almost&amp;nbsp;guarantee this code will&amp;nbsp;work in Intel Fortran.&amp;nbsp; Sure, one may need to follow a few things as explained by Steve in &lt;A href="https://software.intel.com/en-us/articles/migrating-from-compaq-visual-fortran"&gt;https://software.intel.com/en-us/articles/migrating-from-compaq-visual-fortran,&lt;/A&gt; but it's nothing compared to the effort of a rewrite.&amp;nbsp; I suggest a reconsideration of your plan&amp;nbsp;unless that is your end goal any way, in that C# and .NET are the tools you now prefer, in which case the compiler issues here are largely immaterial and they are not the true reason&amp;nbsp;for a&amp;nbsp;rewrite.&lt;/P&gt;

&lt;P&gt;A side-bar:&amp;nbsp;I also find your approach&amp;nbsp;contrary to the myth you showed interest in dispelling in&amp;nbsp;&lt;A href="https://software.intel.com/en-us/forums/topic/505761"&gt;https://software.intel.com/en-us/forums/topic/505761.&lt;/A&gt;&amp;nbsp; I feel it is akin to dropping Fortran at the proverbial "drop off a hat": if everyone felt compelled to rewrite working code on account of a few compiler difficulties, Fortran would indeed be dead or die soon!&lt;/P&gt;

&lt;P&gt;Besides, I'd feel compelled to retain&amp;nbsp;Shells as code that can definitely work freely on a broad range of platforms (hardware architectures) under some public license (e.g., GNU) and either keep it as Fortran or in the worst case, as C++ (gcc)&amp;nbsp;or Python.&amp;nbsp; I do also code extensively in C#, Visual Basic.NET, VBA, etc. and I would not pick a Microsoft "product" as my tool of choice for Shells.&lt;/P&gt;

&lt;P&gt;My 2 cents,&lt;/P&gt;</description>
      <pubDate>Thu, 17 Apr 2014 23:14:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998689#M103083</guid>
      <dc:creator>FortranFan</dc:creator>
      <dc:date>2014-04-17T23:14:00Z</dc:date>
    </item>
    <item>
      <title>Dear Fortran Fan:</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998690#M103084</link>
      <description>&lt;P&gt;Dear Fortran Fan:&lt;/P&gt;

&lt;P&gt;Thank you for your comments. This shells code is problematic.&amp;nbsp; It is in a field I barely understand in terms of the physics, it has some very old constructs mixed with modern and it has some interesting steps in the logic. I need it however to do stuff I want to do.&lt;/P&gt;

&lt;P&gt;My initial concern was that I would run into the same Fortran compiler problem and as&amp;nbsp;I do not fully understand the physics I was worried that I would be stopped again.&amp;nbsp; The problem of the compiler not returning is not a nice one to run into, it is one of those obscure errors I am sure Steve will solve. I started for 20 minutes in C# last night, but after the comments this morning&amp;nbsp;and thinking about it&amp;nbsp;I decided if it needs a rewrite then in Fortran is the best choice, but fix all of the bugs one line at&amp;nbsp; time and make sure it is working.&amp;nbsp;&lt;/P&gt;

&lt;P&gt;I have one working version so I can compare the answers. I spent the day reworking the code and taking out all of the implicit opens and the non declared variables, so far. There are about 12 major routines and I just finished the second.&amp;nbsp; I am making all of the variables Double Precision and Integer(8), makes it easy to work.&amp;nbsp; The data format in the files is really interesting, and it is read twice to determine the lengths of each data set.&lt;/P&gt;

&lt;P&gt;The real problem is that the author used the ISML library and I do not have the research funds to buy it. The matrix inversion program in the ISML program if I read this code correctly uses a single vector to hold the standard matrix A for &lt;A&gt;X = b.&amp;nbsp; The method used to construct the vector version of the A matrix is not that obvious to follow, I will work it out but I am not looking forward to it.&amp;nbsp; There are several excellent invertors that can handle a square matrix, I will probably use the NAG one, although CONTE and DE BOOR"S is always a simple backup. (Speed would be an issue, or the Intel one.)&lt;/A&gt;&lt;/P&gt;

&lt;PRE class="brush:fortran;"&gt;C---------------------------------------------------------------------
C&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; COMMON statements
C
C Note: Un-named COMMON passes INTEGER variables used in the
C&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INTEGER&amp;nbsp; FUNCTION INDEXK, to avoid passing these same
C&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; through long sequences of subprograms.
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; COMMON LDA,NUCA,MXWORK&lt;/PRE&gt;

&lt;PRE class="brush:fortran;"&gt;C
C&amp;nbsp;&amp;nbsp; Statement function replacing INTEGER FUNCTION subprogram INDEXK:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INDEXK(IROW,JCOLUM) = (JCOLUM-1)*LDA + NUCA + IROW - JCOLUM + 1&lt;/PRE&gt;

&lt;P&gt;I have never used a function like INDEXK - (see above) and the use of common blocks is nice but archaic. Fixing them is not a big problem.&lt;/P&gt;

&lt;P&gt;(How the heck does INDEXK - work) Intel Fortran did not seem to like it - see below.&lt;/P&gt;

&lt;PRE class="brush:fortran;"&gt;TOPONE=MAX(TOPONE,K(INDEXK(I,I)))&lt;/PRE&gt;

&lt;P&gt;So Fortran it is, I reckon about a week allowing for all of the likely stuff going wrong.&lt;/P&gt;

&lt;P&gt;Regards&lt;/P&gt;

&lt;P&gt;JMN&lt;/P&gt;</description>
      <pubDate>Fri, 18 Apr 2014 03:42:09 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998690#M103084</guid>
      <dc:creator>JohnNichols</dc:creator>
      <dc:date>2014-04-18T03:42:09Z</dc:date>
    </item>
    <item>
      <title>Attached is a zip file of my</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998691#M103085</link>
      <description>&lt;P&gt;Attached is a zip file of my attempt at compiling and linking this program.&amp;nbsp; With the settings I tend to use, the compiler does hang up on pure.for when I select the Debug configuration, regardless of&amp;nbsp;whether the target platform is 32-bit or 64-bit.&lt;/P&gt;

&lt;P&gt;However, the Release configuration (even with /O3 setting) for both the target platforms compiles and links without any issues - you can peruse the BuildLog.htm file in the zip for details.&amp;nbsp; Of course, the crucial call to DLSLRB solver from IMSL is commented out, so the code won't execute correctly.&lt;/P&gt;

&lt;P&gt;It took less than 10 minutes to get this far&amp;nbsp;after downloading &amp;lt;Shell - Copy.for&amp;gt; from OP&amp;nbsp;- kudos to Intel on making it so easy to rebuild old Fortran programs in Visual Studio.&lt;/P&gt;

&lt;P&gt;Steve,&lt;/P&gt;

&lt;P&gt;Any idea why pure.for causes the compiler to hang up in Debug mode?&lt;/P&gt;</description>
      <pubDate>Fri, 18 Apr 2014 04:16:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998691#M103085</guid>
      <dc:creator>FortranFan</dc:creator>
      <dc:date>2014-04-18T04:16:00Z</dc:date>
    </item>
    <item>
      <title>Quote:John Nichols wrote:</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998692#M103086</link>
      <description>&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;John Nichols wrote:&lt;BR /&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;...&lt;/P&gt;

&lt;PRE class="brush:fortran;"&gt;C---------------------------------------------------------------------
C&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; COMMON statements
C
C Note: Un-named COMMON passes INTEGER variables used in the
C&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INTEGER&amp;nbsp; FUNCTION INDEXK, to avoid passing these same
C&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; through long sequences of subprograms.
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; COMMON LDA,NUCA,MXWORK&lt;/PRE&gt;

&lt;PRE class="brush:fortran;"&gt;C
C&amp;nbsp;&amp;nbsp; Statement function replacing INTEGER FUNCTION subprogram INDEXK:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INDEXK(IROW,JCOLUM) = (JCOLUM-1)*LDA + NUCA + IROW - JCOLUM + 1&lt;/PRE&gt;

&lt;P&gt;I have never used a function like INDEXK - (see above) and the use of common blocks is nice but archaic. Fixing them is not a big problem.&lt;/P&gt;

&lt;P&gt;(How the heck does INDEXK - work) Intel Fortran did not seem to like it - see below.&lt;/P&gt;

&lt;P&gt;...&lt;/P&gt;

&lt;P&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;Look here - &lt;A href="https://software.intel.com/en-us/node/467492"&gt;https://software.intel.com/en-us/node/467492&lt;/A&gt; - for information on statement functions, "syntactic sugar" from old that was made obsolescent in the Fortran 95 standard.&lt;/P&gt;

&lt;P&gt;However Intel Fortran generally works perfectly fine with statement functions, but I don't know if there is a&amp;nbsp;compiler setting that forces an error on an obsolescent feature and you're applying such a setting.&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 18 Apr 2014 04:44:09 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998692#M103086</guid>
      <dc:creator>FortranFan</dc:creator>
      <dc:date>2014-04-18T04:44:09Z</dc:date>
    </item>
    <item>
      <title>Quote:John Nichols wrote:</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998693#M103087</link>
      <description>&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;John Nichols wrote:&lt;BR /&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;Dear Fortran Fan:&lt;/P&gt;

&lt;P&gt;Thank you for your comments. This shells code is problematic.&amp;nbsp; It is in a field I barely understand in terms of the physics, it has some very old constructs mixed with modern and it has some interesting steps in the logic. I need it however to do stuff I want to do.&lt;/P&gt;

&lt;P&gt;My initial concern was that I would run into the same Fortran compiler problem and as&amp;nbsp;I do not fully understand the physics I was worried that I would be stopped again.&amp;nbsp; The problem of the compiler not returning is not a nice one to run into, it is one of those obscure errors I am sure Steve will solve. I started for 20 minutes in C# last night, but after the comments this morning&amp;nbsp;and thinking about it&amp;nbsp;I decided if it needs a rewrite then in Fortran is the best choice, but fix all of the bugs one line at&amp;nbsp; time and make sure it is working.&lt;/P&gt;

&lt;P&gt;I have one working version so I can compare the answers. I spent the day reworking the code and taking out all of the implicit opens and the non declared variables, so far. There are about 12 major routines and I just finished the second.&amp;nbsp; I am making all of the variables Double Precision and Integer(8), makes it easy to work.&amp;nbsp; The data format in the files is really interesting, and it is read twice to determine the lengths of each data set.&lt;/P&gt;

&lt;P&gt;The real problem is that the author used the ISML library and I do not have the research funds to buy it. ...&lt;/P&gt;

&lt;P&gt;So Fortran it is, I reckon about a week allowing for all of the likely stuff going wrong.&lt;/P&gt;

&lt;P&gt;...&lt;/P&gt;

&lt;P&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;Glad you've decided to stick with Fortran.&amp;nbsp; Based on what you say here, a rewrite in C# would be an even harder task.&lt;/P&gt;

&lt;P&gt;You may have seen Steve's blog on some recent books on Fortran: &lt;A href="https://software.intel.com/en-us/blogs/2013/12/30/doctor-fortran-in-its-a-modern-fortran-world"&gt;https://software.intel.com/en-us/blogs/2013/12/30/doctor-fortran-in-its-a-modern-fortran-world.&lt;/A&gt;&amp;nbsp; The main book he reviews is written by IMSL folks and they have a good section on a systematic approach&amp;nbsp;to upgrading old code&amp;nbsp;- worth a read and following their recommendations for your task.&lt;/P&gt;

&lt;P&gt;Re: IMSL routine DLSLRB and replacing it an open source alternative, check out &lt;A href="http://www.netlib.org"&gt;http://www.netlib.org&lt;/A&gt; - I feel even LAPACK should work in this situation.&lt;/P&gt;</description>
      <pubDate>Fri, 18 Apr 2014 05:35:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998693#M103087</guid>
      <dc:creator>FortranFan</dc:creator>
      <dc:date>2014-04-18T05:35:00Z</dc:date>
    </item>
    <item>
      <title>Quote:John Nichols wrote:</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998694#M103088</link>
      <description>&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;John Nichols wrote:&lt;BR /&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;PRE class="brush:fortran;"&gt;C---------------------------------------------------------------------
&lt;/PRE&gt;

&lt;PRE class="brush:fortran;"&gt;C&amp;nbsp;&amp;nbsp; Statement function replacing INTEGER FUNCTION subprogram INDEXK:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INDEXK(IROW,JCOLUM) = (JCOLUM-1)*LDA + NUCA + IROW - JCOLUM + 1&lt;/PRE&gt;

&lt;P&gt;I have never used a function like INDEXK - (see above) and the use of common blocks is nice but archaic. Fixing them is not a big problem.&lt;/P&gt;

&lt;P&gt;(How the heck does INDEXK - work) Intel Fortran did not seem to like it - see below.&lt;/P&gt;

&lt;PRE class="brush:fortran;"&gt;&amp;nbsp;&lt;/PRE&gt;

&lt;P&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;Think of statement function (declared between the end of the variable declarations and the first executable statement) as an analog of the C preprocessor (or Fortran preprocessor)&lt;/P&gt;

&lt;P&gt;#define INDEXK(IROW,JCOLUM)&amp;nbsp; (JCOLUM-1)*LDA + NUCA + IROW - JCOLUM + 1&lt;/P&gt;

&lt;P&gt;Jim Dempsey&lt;/P&gt;</description>
      <pubDate>Fri, 18 Apr 2014 12:50:44 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Old-Fortran-Program/m-p/998694#M103088</guid>
      <dc:creator>jimdempseyatthecove</dc:creator>
      <dc:date>2014-04-18T12:50:44Z</dc:date>
    </item>
  </channel>
</rss>

