mechmath
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Может (и хочет) ли кто-нибудь подсказать, как вывести оч.большой файл на HDD (желательно BINARY) в W7, MS Visual Studio 2010, Intel Fortran XE2011. Попытка вывода open(15,file=fileNameRHO,FORM="BINARY") и ряд вариаций на эту тему вызывает ошибку (при попытке записи) STACK OVERFLOW. Размер массива для выдачи - (5,4096,1024,1024) (это часть контрольной точки). Тестовая программа program Binary implicit none integer,parameter:: nx=1024,ny=1024,nz=4096, n=5 real,allocatable,dimension(:,:,:,:: u integer:: k, numName=10101 character(12):: fileNameU character(8):: char_time_current allocate (u(n,nx,ny,nz)) u = 5.0 open(7,file="Output.txt") do k = 1,3 write(FMT=*,UNIT=fileNameU) numName fileNameU=adjustl(fileNameU) fileNameU = trim(fileNameU) fileNameU = fileNameU(2:12) fileNameU = "z"//trim(fileNameU)//".UVW" open(5,file=fileNameU,FORM="BINARY",BUFFERED='YES') !,ACCESS='DIRECT') ! ,BLOCKSIZE=4096 write(5) u close(5) write(*,*) call TIME(char_time_current) write(7,91) " Write in Result at time PASSED : ",char_time_current write(*,91) " Write in Result at time PASSED : ",char_time_current u = u + k numName = numName + 1 enddo close(7) 91 format(2x,A,A8) end program Binary работает нормально. Но выдача из реальной программы расчета - не получается. Помогите, кто чем может. Спасибо. |