Due to the current gap in continued funding from the U.S. National Science Foundation (NSF), the NSF Unidata Program Center has temporarily paused most operations. See NSF Unidata Pause in Most Operations for details.
anyone please help? Thanks! Main program is like: .... use netcdf use nc_module .... DO S = 1, 6 write(111,*)'driver: rj_name(',s,')=',rj_name(s) call nc_chk1_rd1(rj_name(s), chk1_rj(:,:,:,s), s, nstep_nreps) enddo nc_chk1_rd1.f90 is: subroutine nc_chk1_rd1(nc_data_name, chk1_data, N_ic, nstep_nreps) use netcdf use nc_module implicit none character*16 nc_data_name integer :: nc_data_varid integer :: start1(4), count1(4) integer :: N_ic,nstep_nreps real :: chk1_data(132, 90, 14,100) start1 = (/ 1, 1, 1, nstep_nreps /) count1 = (/ 132, 90, 14, 1 /) write(111,*)'nc_chk1_rd1: nc_data_name=',nc_data_name call nc_check( nf90_inq_varid(chk_ncid, nc_data_name, nc_data_varid)) call nc_check( nf90_get_var(chk_ncid, nc_data_varid & , chk1_data(:,:,:,N_ic), start1, count1 )) endsubroutine nc_chk1_rd1 rj_name is defined in nc_module.f90: ! character (len=16) :: rj_name(6) ! data rj_name(1)/'RJ1 '/ ! data rj_name(2)/'RJ2 '/ ! data rj_name(3)/'RJ3 '/ ! data rj_name(4)/'RJ4 '/ ! data rj_name(5)/'RJ5 '/ ! data rj_name(6)/'RJ6 '/ character(len=16), dimension(6) :: rj_name= (/& 'RJ1 ',& 'RJ2 ',& 'RJ3 ',& 'RJ4 ',& 'RJ5 ',& 'RJ6 '/) The 111 file shows: nc_chk1_rd1: nc_data_name=RJ1 nc_chk1_rd1: nc_data_name= RJ2 .....................the program stops here. What I'm expecting in file 111 is: nc_chk1_rd1: nc_data_name=RJ1 nc_chk1_rd1: nc_data_name=RJ2 nc_chk1_rd1: nc_data_name=RJ3 nc_chk1_rd1: nc_data_name=RJ4 nc_chk1_rd1: nc_data_name=RJ5 nc_chk1_rd1: nc_data_name=RJ6 Thanks for any advice! -- Cordially, Hongyan
netcdfgroup
archives: