Program demo2 ! programa demo2 ! ! Para a leitura nao e necessario alocar as estruturas de MBUFR ! Isto e feito dinamicamente durante o processo de leituram ! contudo e necessario fixar um limite maximo de descritores ! que podem ser usado. Computadores modestos podem ter problemas ! de fata de memoria caso se escolha limite muito alto. Por ! outro lado, se os dados foram muito grande, o limite baixo ! podera ocasionar erro, durante o processo de leitura, ! ! Recomenda-se utilizar valores entre 500 a 2000, conforme ! a disponibilidade de memoria e tipo de dado a ser utilizado. ! Use MBUFR ! Declaration and allocation of MBUFR interface variables type(sec1type)::sec1 type(sec3type)::sec3 type(sec4type)::sec4 integer::err integer:: bufr_ed integer::nbytes ! call OPEN_MBUFR(1, "exemplo1.bufr", 46,11,0) 10 call READ_MBUFR(1,500,sec1,sec3,sec4, bUFR_ED, NBYTES,err) if ((ioerr(1)==0).and.(err==0)) then print *,"Numero de sub-secoes=",sec3%nsubsets print *,"Numero de variaveis=",sec4%nvars do j =1,sec3%nsubsets write(*,*)(sec4%r(i,j),i=1,sec4%nvars) end do deallocate(sec4%r,sec4%d,sec4%c,sec3%d) goto 10 endif CLOSE(1) end