comment écrire une énorme matrice de fichier ligne par ligne (fortran 90)

Je veux écrire une matrice avec un grand nombre de données dans un fichier ligne par ligne. Par exemple, j'ai une matrice de 100*100 et je veux l'avoir dans le formulaire 100*100 dans le fichier. Toutefois, il ne fonctionne pas.Voici mon code et une description. N et M sont des nombres entiers autour de quelques centaines. RÉCUPÉRABLE est de la durée prévue j'ai mis le fichier mais ici, il semble que cette commande ne fonctionne pas. La sortie est à 198 lignes lorsque N est de 99
et M est situé à 200. Vec est un double précision matrice complexe. Comment pourrais-je sortie les valeurs de Vec gardant son format d'origine N*M? Ma compilation de commande est "ifort -o test.f90".

open(unit=2, file='graph1.txt', ACTION="write", STATUS="replace",RECL=40*M+10)
do i=1,N
 do j=1,M
  write(2, '(F)', advance='no') real(Vec(i,j)) 
 end do
  write(2, *) '' 
end do

Suivant @george conseils, j'ai codé un programme comme ceci:

program test
implicit none

integer i,j

open(unit=2, file='graph1.txt', ACTION="write", STATUS="replace")
do i=1,500
 write(2, '(1600F14.7)')( 0.00001 ,j=1,499)
end do

close(2)

end

Avec ce code, le problème est résolu! Peut-être que je n'ai pas compilé correctement la dernière fois.

Que faut-il faire alors? Qu'est-ce que "ne fonctionne pas"?
Et comment est - Vec déclaré? J'espère que vous n'essayez pas d'exécuter votre code avec différents M et N sur 100x100 tableau?
vous avez besoin d'un répétez spécificateur de format. Dans les anciennes fortran vous avez besoin d'un nombre réel par exemple. '(1000F14.7)", où le nombre est quelque chose de plus grand que m. Les dernières normes de permettre un "*" .. Le format explicite à l'avance = pas de va remplacer tout ce que vous mettez pour récupérable sur ouvrir.
"ne pas travailler" signifie que lorsque M est sur nombre spécifique comme 200,300, les éléments d'une rangée de 3 lignes dans le fichier. Ce que je veux, c'est, ligne par ligne, comme la façon dont il est stocké dans le code. Vec est affectables tableau Vec(N,M), alors ne vous inquiétez pas sa légitimité...
Mhm, votre code fonctionne très bien avec moi - pour les deux gfortran (4.7.3) et ifort (13.1.3). La version de ifort utilisez-vous?

OriginalL'auteur someone | 2013-09-17