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.
Hello, I use the Fortran90 interface to netCDF and I want to inquire about the number of groups in a file so I can allocate various bits appropriately. The nf90_inq_grps() function interface is: function nf90_inq_grps(ncid, numgrps, ncids) integer, intent(in) :: ncid integer, intent(out) :: numgrps integer, dimension(:), intent(out) :: ncids integer :: nf90_inq_grps nf90_inq_grps = nf_inq_grps(ncid, numgrps, ncids) end function nf90_inq_grps What I want to do is to get the value returned in "numgrps" so I can then allocate an array inwhich I can hold the "ncids" values, like this: nf90_stat = nf90_inq_grps(ncid, numgrps=n_groups) allocate(group_ids(n_groups)) nf90_stat = nf90_inq_grps(ncid, ncids=group_ids) I can't do this since neither the numgrps nor ncids dummy arguments are optional My first question is: Why aren't these dummy arguments optional? My real question is: How do I do the above with the current Fortran90 interface? Have I missed something fundamental here? Is this just an oversight in the Fortran90 interface (i.e. just a f90-style layer on top of the f77 one), or is it because no-one has gotten around to doing it yet? (I guess I'm volunteering if it's the latter) cheers, paulv
netcdfgroup
archives: