<?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 Re: Moving data from Linux to VMS in Intel® Fortran Compiler</title>
    <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Moving-data-from-Linux-to-VMS/m-p/745204#M3429</link>
    <description>Here's another approach. Simply copy the file as you are already writing it on Linux to VMS and then run the attached program on it to convert it to a 'SEGMENTED' file that the VMS Fortran will read directly. Caveat: I wrote this code 11 years ago and can't promise that it still works.&lt;BR /&gt;</description>
    <pubDate>Wed, 10 Oct 2007 13:58:33 GMT</pubDate>
    <dc:creator>Steven_L_Intel1</dc:creator>
    <dc:date>2007-10-10T13:58:33Z</dc:date>
    <item>
      <title>Moving data from Linux to VMS</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Moving-data-from-Linux-to-VMS/m-p/745202#M3427</link>
      <description>Consider a pair of simple programs like these:&lt;BR /&gt;&lt;BR /&gt;&lt;PRE&gt; program test_write&lt;BR /&gt;! Test reading and writing interchange between VMS and UNIX&lt;BR /&gt;! Write an upper triangular array where the array value is the column number&lt;BR /&gt;!&lt;/PRE&gt;&lt;PRE&gt; integer lun/1/&lt;BR /&gt; integer i, j&lt;BR /&gt; parameter (N=10)&lt;BR /&gt;&lt;BR /&gt; real*4 x(N)&lt;BR /&gt; real*4 A /10/&lt;BR /&gt; real*8 B /20/&lt;/PRE&gt;&lt;PRE&gt;&lt;BR /&gt; open (lun, file='test.dat',status='new',form='unformatted')&lt;BR /&gt;&lt;BR /&gt; write (lun) i&lt;BR /&gt; write (lun) A, B&lt;/PRE&gt;&lt;PRE&gt; do i=1,N&lt;BR /&gt; x(i) = i&lt;BR /&gt; do j=1,i&lt;BR /&gt; write (lun) x(1:j)&lt;BR /&gt; enddo&lt;BR /&gt; enddo&lt;/PRE&gt;&lt;PRE&gt;&lt;BR /&gt; stop&lt;BR /&gt; end&lt;/PRE&gt;&lt;PRE&gt;&lt;BR /&gt;&lt;/PRE&gt;&lt;PRE&gt; program test_read&lt;BR /&gt;! Test reading and writing interchange between VMS and UNIX&lt;BR /&gt;! Write an upper triangular array where the array value is the column number&lt;BR /&gt;!&lt;/PRE&gt;&lt;PRE&gt; integer lun/1/&lt;BR /&gt; integer i, j&lt;BR /&gt; parameter (N=10)&lt;/PRE&gt;&lt;PRE&gt;&lt;BR /&gt; real*4 x(N)&lt;BR /&gt; real*4 A /10/&lt;BR /&gt; real*8 B /20/&lt;/PRE&gt;&lt;PRE&gt;&lt;BR /&gt; open (lun, file='test.dat',status='old',form='unformatted')&lt;BR /&gt; read (lun) i&lt;BR /&gt; print *, i&lt;BR /&gt; read (lun) A, B&lt;BR /&gt; print *, A, B&lt;/PRE&gt;&lt;PRE&gt; do i=1,N&lt;BR /&gt; do j=1,i&lt;BR /&gt; read (lun) x(1:j)&lt;BR /&gt; enddo&lt;BR /&gt; print *, i, x(1), x(i)&lt;BR /&gt; enddo&lt;/PRE&gt;&lt;PRE&gt; stop&lt;BR /&gt; end&lt;/PRE&gt;&lt;BR /&gt;(A rather silly set of programs, but it does seem to work in the sense that we get out the data we wrote in.)&lt;BR /&gt;&lt;BR /&gt;We would like to be able to write this data on Linux and read the data on VMS. But it seems that RMS "gets in the way" when we try to move the file to VMS. Is there a set of file attributes or other magic that will make the file such that the same (or a similar) program will read the file on VMS?&lt;BR /&gt;&lt;BR /&gt;Thanks.&lt;BR /&gt;&lt;BR /&gt;P&lt;BR /&gt;</description>
      <pubDate>Wed, 10 Oct 2007 03:05:50 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Moving-data-from-Linux-to-VMS/m-p/745202#M3427</guid>
      <dc:creator>pnaecker</dc:creator>
      <dc:date>2007-10-10T03:05:50Z</dc:date>
    </item>
    <item>
      <title>Re: Moving data from Linux to VMS</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Moving-data-from-Linux-to-VMS/m-p/745203#M3428</link>
      <description>Try this. On Linux, open the file for write using RECORDTYPE='SEGMENTED'. Copy the file to VMS using a "binary" file transfer method. Once on VMS, do this:&lt;BR /&gt;&lt;BR /&gt;$ SET FILE /ATTRIBUTES=(RFM=VAR) file.dat&lt;BR /&gt;&lt;BR /&gt;Now you should be able to open the file on VMS using RECORDTYPE='SEGMENTED' (which is the default for sequential unformatted files there).&lt;BR /&gt;&lt;BR /&gt;What may be easier is if you know the records are all the same length, then use RECORDTYPE='FIXED' with the appropriate RECL value. Copy the file to VMS and do:&lt;BR /&gt;&lt;BR /&gt;$ SET FILE /ATTRIBUTES=(RFM=FIX,LRL=72) file.dat&lt;BR /&gt;&lt;BR /&gt;where the "72" is the actual length in bytes of the record. Remember that RECL= is in 4-byte "longword" units by default on both systems. Read the file as fixed records.&lt;BR /&gt;</description>
      <pubDate>Wed, 10 Oct 2007 13:53:10 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Moving-data-from-Linux-to-VMS/m-p/745203#M3428</guid>
      <dc:creator>Steven_L_Intel1</dc:creator>
      <dc:date>2007-10-10T13:53:10Z</dc:date>
    </item>
    <item>
      <title>Re: Moving data from Linux to VMS</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Moving-data-from-Linux-to-VMS/m-p/745204#M3429</link>
      <description>Here's another approach. Simply copy the file as you are already writing it on Linux to VMS and then run the attached program on it to convert it to a 'SEGMENTED' file that the VMS Fortran will read directly. Caveat: I wrote this code 11 years ago and can't promise that it still works.&lt;BR /&gt;</description>
      <pubDate>Wed, 10 Oct 2007 13:58:33 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Moving-data-from-Linux-to-VMS/m-p/745204#M3429</guid>
      <dc:creator>Steven_L_Intel1</dc:creator>
      <dc:date>2007-10-10T13:58:33Z</dc:date>
    </item>
  </channel>
</rss>

