jak napisać ogromną matrycę do pliku wiersz po wierszu (fortran 90)
Chcę napisać macierz z dużą ilością danych do pliku wiersz po wierszu. Na przykład mam macierz 100 * 100 i chcę mieć ją w postaci 100 * 100 w pliku. Jednak to nie działa. Poniżej znajduje się mój kod i opis. N i M są liczbami całkowitymi około kilkuset. RECL ma oczekiwaną długość Ustawiam plik, ale tutaj wydaje się, że to polecenie nie działa. Wyjście ma 198 linii, gdy N jest ustawione na 99, a M jest ustawione na 200. Vec jest złożoną matrycą o podwójnej precyzji. Jak mogę wyświetlić wartości Vec zachowując oryginalny format N * M? Moje polecenie kompilacji to „ifort -o out 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
Zgodnie z radą @george zakodowałem taki program:
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
Z tym kodem rozwiązano problem! Może nie skompilowałem poprawnie ostatniego razu.