READ:matrix:ASCII

FORMAT

 Syntax: READ\MATRIX\FORMAT file{\n} (frmt) matrix nr { nc }
         READ\MATRIX\FORMAT\-FLIPPED file{\n} (frmt) matrix nc { nr }

 The \FORMAT qualifier must be used to indicate that a format is
 present. The format must be enclosed in parentheses, ( and ).

 Standard FORTRAN formats are valid, but only REAL variables can be
 read, so do not use INTEGER, LOGICAL or CHARACTER formats.
 All values are converted to REAL*8 for internal storage.

1_example

    the code fragment below          creates the file below
 -------------------------------     ----------------------
    REAL*4 M(7,5)                         11. 21. 31. 
    DO J = 1, 5                           41. 51. 61. 
      DO I = 1, 7                         71. 12. 22. 
        M(I,J) = 10*I+J                   32. 42. 52. 
      END DO                              62. 72. 13. 
    END DO                                23. 33. 43. 
    WRITE(1,10)M                          53. 63. 73. 
 10 FORMAT(3F4.0)                         14. 24. 34. 
                                          44. 54. 64. 
                                          74. 15. 25. 
                                          35. 45. 55. 
                                          65. 75.     
 READ\MATRIX\FORMAT file (3F4.0) M 7 5
                                          11 12 13 14 15
                                          21 22 23 24 25
                                          31 32 33 34 35
               results in the matrix M =  41 42 43 44 45
                                          51 52 53 54 55
                                          61 62 63 64 65
                                          71 72 73 74 75
 READ\MATRIX\FORMAT\-FLIPPED file (3F4.0) M 5 7
                                          11 21 31 41 51 61 71
                                          12 22 32 42 52 62 72
               results in the matrix M =  13 23 33 43 53 63 73
                                          14 24 34 44 54 64 74
                                          15 25 35 45 55 65 75

2_example

                       REAL*4 M(7,5)
                       DO J = 1, 5          
 the code fragment:      DO I = 1, 7        
                           M(I,J) = 10*I+J  
                         END DO             
                       END DO             
                       WRITE(1,10)M
                    10 FORMAT(14F4.0)

        11. 21. 31. 41. 51. 61. 71. 12. 22. 32. 42. 52. 62. 72.
 makes: 13. 23. 33. 43. 53. 63. 73. 14. 24. 34. 44. 54. 64. 74.
        15. 25. 35. 45. 55. 65. 75.                            

 READ\MATRIX\FORMAT file (14F4.0) M 7 5
                                           11 12 13 14 15
                                           21 22 23 24 25
                                           31 32 33 34 35
                   creates the matrix M =  41 42 43 44 45
                                           51 52 53 54 55
                                           61 62 63 64 65
                                           71 72 73 74 75
 READ\MATRIX\FORMAT\-FLIPPED file (14F4.0) M 5 7
                                          11 21 31 41 51 61 71
                                          12 22 32 42 52 62 72
               results in the matrix M =  13 23 33 43 53 63 73
                                          14 24 34 44 54 64 74
                                          15 25 35 45 55 65 75

3_example

    the code fragment below          creates the file below
 -------------------------------     ----------------------
    REAL*4 M(7,5)                        11. 21. 31. 41.  
    DO J = 1, 5                          51. 61. 71.
      DO I = 1, 7                        12. 22. 32. 42.
        M(I,J) = 10*I+J                  52. 62. 72.
      END DO                             13. 23. 33. 43.
    END DO                               53. 63. 73.
    DO J = 1, 5                          14. 24. 34. 44.
      WRITE(1,10)(M(I,J),I=1,7)          54. 64. 74.
    END DO                               15. 25. 35. 45.
 10 FORMAT(4F4.0)                        55. 65. 75.

 READ\MATRIX file M 7 5
                             11 12 13 14 15
                             21 22 23 24 25
                             31 32 33 34 35
  results in the matrix M =  41 42 43 44 45
                             51 52 53 54 55
                             61 62 63 64 65
                             71 72 73 74 75
 READ\MATRIX\-FLIPPED file M 5 7
                             11 21 31 41 51 61 71
                             12 22 32 42 52 62 72
  results in the matrix M =  13 23 33 43 53 63 73
                             14 24 34 44 54 64 74
                             15 25 35 45 55 65 75

4_example

    the code fragment below             creates the file below
 -------------------------------        -----------------------
    REAL*8 M(7,5)                       11.  12.  13.  14.  15.
    DO J = 1, 5                         21.  22.  23.  24.  25.
      DO I = 1, 7                       31.  32.  33.  34.  35.
        M(I,J) = 10*I+J                 41.  42.  43.  44.  45.
      END DO                            51.  52.  53.  54.  55.
    END DO                              61.  62.  63.  64.  65.
    WRITE(1,10)((M(I,J),J=1,5),I=1,7)   71.  72.  73.  74.  75.
 10 FORMAT(5F5.0)                    

 READ\MATRIX file M 5
                            11 21 31 41 51 61 71
                            12 22 32 42 52 62 72
 results in the matrix M =  13 23 33 43 53 63 73
                            14 24 34 44 54 64 74
                            15 25 35 45 55 65 75
 READ\MATRIX\-FLIPPED file M 5
                            11 12 13 14 15
                            21 22 23 24 25
                            31 32 33 34 35
 results in the matrix M =  41 42 43 44 45
                            51 52 53 54 55
                            61 62 63 64 65
                            71 72 73 74 75

5_example

    the code fragment below             creates the file below
 -------------------------------        -----------------------
    REAL*8 M(5,8)                       11.  21.  31.  41.  51.
    DO J = 1, 8                         12.  22.  32.  42.  52.
      DO I = 1, 5                       13.  23.  33.  43.  53.
        M(I,J) = 10*I+J                 14.  24.  34.  44.  54.
      END DO                            15.  25.  35.  45.  55.
    END DO                              16.  26.  36.  46.  56.
    WRITE(1,10)((M(I,J),I=1,5),J=1,8)   17.  27.  37.  47.  57.
 10 FORMAT(5F5.0)                       18.  28.  38.  48.  58.

 READ\MATRIX file M 5 
                       11 12 13 14 15 16 17 18
                       21 22 23 24 25 26 27 28
 results in matrix M = 31 32 33 34 35 36 37 38
                       41 42 43 44 45 46 47 48
                       51 52 53 54 55 56 57 58
 READ\MATRIX\-FLIPPED file M 5 
                       11 21 31 41 51
                       12 22 32 42 52
 results in matrix M = 13 23 33 43 53
                       14 24 34 44 54
                       15 25 35 45 55
                       16 26 36 46 47
                       17 27 37 47 48
                       18 28 38 48 58

6_example

    the code fragment below           creates the file below
 -------------------------------      -----------------------
    REAL*8 M(5,8)                       11.  12.  13.  14.
    DO J = 1, 8                         15.  16.  17.  18.
      DO I = 1, 5                       21.  22.  23.  24.
        M(I,J) = 10*I+J                 25.  26.  27.  28.
      END DO                            31.  32.  33.  34.
    END DO                              35.  36.  37.  38.
    WRITE(1,10)((M(I,J),J=1,8),I=1,5)   41.  42.  43.  44.
 10 FORMAT(4F5.0)                       45.  46.  47.  48.
                                        51.  52.  53.  54.
                                        55.  56.  57.  58.
 READ\MATRIX file M 4
                        11 15 21 25 31 35 41 45 51 55
                        12 16 22 26 32 36 42 46 52 56  
 results in matrix M =  13 17 23 27 33 37 43 47 53 57
                        14 18 24 28 34 38 44 48 54 58
 READ\MATRIX file M 8
                        11 21 31 41 51
                        12 22 32 42 52
                        13 23 33 43 53
                        14 24 34 44 54
 results in matrix M =  15 25 35 45 55
                        16 26 36 46 56
                        17 27 37 47 57
                        18 28 38 48 58
 READ\MATRIX\-FLIPPED file M 4
                        11 21 31 41 51
                        12 22 32 42 52
                        13 23 33 43 53
                        14 24 34 44 54
 results in matrix M =  15 25 35 45 55
                        16 26 36 46 56
                        17 27 37 47 57
                        18 28 38 48 58

7_example

                          Header line 1
                          Header line 2
                          1.0 2.0 3.0 4.0 5.0 6.0 7.0
 DUM.DAT is as follows:   1.1 2.1 3.1 4.1 5.1 6.1 7.1
                          1.2 2.2 3.2 4.2 5.2 6.2 7.2
                          1.3 2.3 3.3 4.3 5.3 6.3 7.3
                          1.4 2.4 3.4 4.4 5.4 6.4 7.4

 READ\MATRIX DUM.DAT\3 M 7
 creates matrix M with 7 rows and 5 columns.
 READ\MATRIX\-FLIPPED DUM.DAT\3 M 7
 creates matrix M with 5 rows and 7 columns.