Bonjour à tous,
je dois mettre à jour un tableau Fortran avec de nouveaux coefficients.

Voici le tableau AVANT ma modification (le code compile correctement) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
C          g(n,m) for 2010
      DATA (GY1D(I),I=4951,5095) /0,
     O-29496.5,-2396.6,1339.7, 912.6,-231.1,  72.8,  80.4,  24.3,   5.4,
     +                                 -2.0,   3.0,  -2.1,  -0.2,   2*0,
     1 -1585.9, 3026.0,-2326.3, 809.0, 357.2,  68.6, -75.0,   8.2,  9.4,
     +                                 -6.3,  -1.5,  -0.2,  -0.9,   3*0,
     2          1668.6,1231.7, 166.6, 200.3,  76.0,  -4.7, -14.5,   3.4,
     +                                  0.9,  -2.1,   0.3,   0.3,   4*0,
     3                  634.2,-357.1,-141.2,-141.4,  45.3,  -5.7,  -5.3,
     +                                 -1.1,   1.6,   1.0,   0.4,   5*0,
     4                          89.7,-163.1, -22.9,  14.0, -19.3,   3.1,
     +                                 -0.2,  -0.5,  -0.7,  -0.4,   6*0,
     5                                 -7.7,  13.1,  10.4,  11.6, -12.4,
     +                                  2.5,   0.5,   0.9,   1.1,   7*0,
     6                                       -77.9,   1.6,  10.9,  -0.8,
     +                                 -0.3,  -0.8,  -0.1,  -0.3,   8*0,
     7                                                4.9, -14.1,   8.4,
     +                                  2.2,   0.4,   0.5,   0.8,   9*0,
     8                                                      -3.7,  -8.4,
     +                                  3.1,   1.8,  -0.4,  -0.2,  10*0,
     9                                                            -10.1/
      DATA (GY1D(I),I=5096,5175) /
     +                                 -1.0,   0.2,  -0.4,   0.4,  11*0,
     O                                 -2.8,   0.8,   0.2,   0.0,  12*0,
     1                                         3.8,  -0.8,   0.4,  13*0,
     2                                                0.0,  -0.3,  14*0,
     3                                                      -0.3,  16*0/
Et voici le même tableau APRES ma modification :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
C          g(n,m) for 2010 (IGRF-12)
      DATA (GY1D(I),I=4951,5095) /0,
     0 -29496.57,-2396.06,1339.85,912.66,-230.87,72.78,80.44,24.41,5.50,
     +                                       -1.94,3.05,-2.12,-0.09,2*0,
     1   -1586.42,3026.34,-2326.54,808.97,357.29,68.69,-75.00,8.21,9.45,
     +                                      -6.24,-1.48,-0.21,-0.89,3*0,
     2            1668.17,1232.10,166.58,200.26,75.92,-4.55,-14.50,3.45,
     +                                         0.89,-2.03,0.30,0.31,4*0,
     3                 633.73,-356.83,-141.05,-141.40,45.24,-5.59,-5.27,
     +                                         -1.07,1.65,1.04,0.42,5*0,
     4                           89.40,-163.17,-22.83,14.00,-19.34,3.13,
     +                                      -0.16,-0.51,-0.63,-0.45,6*0,
     5                                   -8.03,13.10,10.46,11.61,-12.38,
     +                                          2.45,0.54,0.95,1.08,7*0,
     6                                          -78.09,1.64,10.85,-0.76,
     +                                      -0.33,-0.79,-0.11,-0.31,8*0,
     7                                                 4.92,-14.05,8.43,
     +                                          2.13,0.37,0.52,0.78,9*0,
     8                                                      -3.54,-8.42,
     +                                       3.09,1.79,-0.39,-0.18,10*0,
     9                                                           -10.08/
      DATA (GY1D(I),I=5096,5175) /
     +                                       -1.03,0.12,-0.37,0.38,11*0,
     0                                        -2.80,0.75,0.21,0.02,12*0,
     1                                             3.75,-0.77,0.42,13*0,
     2                                                  0.04,-0.26,14*0,
     3                                                       -0.26,16*0/
Cette fois-ci, j'ai les erreurs suivantes :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
magfld.f:726.36:
 
      DATA (GY1D(I),I=4951,5095) /0,                                    
                                    1
Error: Syntax error in DATA statement at (1)
magfld.f:727.8:
 
     0 -29496.57,-2396.06,1339.85,912.66,-230.87,72.78,80.44,24.41,5.50,
        1
Error: Invalid character in name at (1)
magfld.f:747.72:
 
     +                                       -1.03,0.12,-0.37,0.38,11*0,
                                                                        1
Error: Syntax error in DATA statement at (1)
magfld.f:748.47:
 
     0                                        -2.80,0.75,0.21,0.02,12*0,
                                               1
Error: Invalid character in name at (1)
Je suis débutant en Fortran, c'est un vieux code et j'ai pris soin de ne pas dépasser 72 colonnes....
Avez-vous une idée ?

Merci d'avance !

Donut.


EDIT : des fois quand ça marche pas, le mieux est d'aller prendre un café et de reprendre ensuite le code avec des yeux neufs
le problème vient du fait que c'est des grand O et pas des zeros en index au début de chaque DATA...
Bon c'est je crois une ancienne syntaxe car je n'arrive pas du tout à trouver de doc sur le sujet... Si quelqu'un a une explication rationnelle à me fournir là-dessus je suis preneur ^^

Désolé pour le dérangement en tout cas,

A bientôt sur le forum

Donut.