[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: 19990308: Delphi and F90 modules for NetCDF
- Subject: Re: 19990308: Delphi and F90 modules for NetCDF
- Date: Mon, 08 Mar 1999 10:02:16 -0700
>To: address@hidden
>From: Nicholas Yue <address@hidden>
>Subject: Delphi and F90 modules for NetCDF
>Organization: Centre for Water Research
>Keywords: 199903080147.SAA17910
Hi Nicholas,
> I would like to find out if there is a Delphi interface for NetCDF-3.4
> file. We have some existing application written in Delphi which we would
> like to enhance with NetCDF creating/reading/writing capability.
To get a Delphi interface for netCDF-3.4, you need to build a netCDF
DLL from the sources. Instructions for doing this are in
ftp://ftp.unidata.ucar.edu/pub/netcdf/contrib/win32/WIN32_INSTALL
Alternatively, you could use the DLL already built in
ftp://ftp.unidata.ucar.edu/pub/netcdf/contrib/win32/netcdf-3.4.win32bin.zip
Other notes that may be helpful are included in this earlier reply to
a support question:
http://www.unidata.ucar.edu/glimpse/netcdf/2898
> How may I obtain the F90 module interface for NetCDF-3.4 ?
We do not currently support an F90 module for netCDF. Our Fortran-77
interface should work with F90 compilers, since Fortran-90 is supposed
to be a superset of Fortran-77.
We don't have much Fortran-90 expertise, and have been trying to
enlist the aid of others to help to develop a Fortran-90 version.
Over a year ago, we discussed some ideas for a Fortran-90 interface
with someone who convinced us that it's possible to use generic
functions and optional (named) arguments to implement a Fortran90
interface (purely with module definitions) that uses just one read and
one write interface, instead of the current netCDF 3.4 Fortran-77
version that uses 30 read interfaces and 30 write interfaces.
The current state of our Fortran-90 work, including an F90 module
interface, is available from
http://www.unidata.ucar.edu/glimpse/netcdf/3264
It can only handle arrays of rank 1. If you try to use a
multidimensional array, the compiler complains the argument has the
wrong rank. A user has to PACK the values from a multidimensional
array before calling NF_PUT_VARA_ routines, and similarly unpack them
on reading. If you can use the f90 interface module with this
restriction, it may be of some use to you. Better still, if you know
a way around this restriction, we would be very interested. I think
this restriction makes the current interface module not very useful,
so we haven't included it in the source distribution.
--Russ
_____________________________________________________________________
Russ Rew UCAR Unidata Program
address@hidden http://www.unidata.ucar.edu