<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META NAME="Generator" CONTENT="MS Exchange Server version 6.5.7654.12">
<TITLE>RE: [Paraview] trouble reading in netCDF file</TITLE>
</HEAD>
<BODY>
<!-- Converted from text/plain format -->

<P><FONT SIZE=2>Well, typing ncdump -h file, I get (note last line):<BR>
// global attributes:<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; :title = &quot;Scotia Fundy Maine (Tidal Power) case&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot; ;<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; :institution = &quot;School for Marine Science and Technology&quot; ;<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; :source = &quot;FVCOM_2.6&quot; ;<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; :history = &quot;model started at: 25/02/2010&nbsp;&nbsp; 18:29&quot; ;<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; :references = &quot;<A HREF="http://fvcom.smast.umassd.edu">http://fvcom.smast.umassd.edu</A>, <A HREF="http://codfish.smast.umassd.edu">http://codfish.smast.umassd.edu</A>&quot; ;<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; :Conventions = &quot;CF-1.0&quot; ;<BR>
<BR>
Which file(s) do I edit to create my own reader?&nbsp; The new model I will be getting outputs netCDF-4 files.&nbsp; Can I import unstructured netCDF-4 files into paraview with an HDF5 reader?&nbsp;&nbsp;<BR>
<BR>
thanks!<BR>
Joel<BR>
<BR>
<BR>
-----Original Message-----<BR>
From: Moreland, Kenneth [<A HREF="mailto:kmorel@sandia.gov">mailto:kmorel@sandia.gov</A>]<BR>
Sent: Mon 4/19/2010 5:20 PM<BR>
To: Joel Culina; paraview@paraview.org<BR>
Subject: Re: [Paraview] trouble reading in netCDF file<BR>
<BR>
I don't really understand this description, but I can say with confidence that the netCDF reader will not read this convention.&nbsp; The CF convention does not support unstructured triangular grids (or any unstructured grids, for that matter).&nbsp; The (general) netCDF reader knows how to read 1-, 2-, and 3-D arrays as regular grids with some conventions on setting coordinates to the points in the grid.<BR>
<BR>
NetCDF is not a data format description.&nbsp; It is simply an I/O library that specifies how to read/write arrays with some annotation.&nbsp; Thus, if you have data in a netCDF file that has a structure more complicated than simple arrays, you will have to create a reader that understands how to construct the data format.&nbsp; From your description, it sounds like you will have to create your own reader.<BR>
<BR>
-Ken<BR>
<BR>
On 4/16/10 4:05 PM, &quot;Joel Culina&quot; &lt;joel.culina@acadiau.ca&gt; wrote:<BR>
<BR>
Hi,<BR>
<BR>
Thanks Ken.<BR>
<BR>
I'm using 3.8 now, but am have some similar troubles.&nbsp; To recap: I'm using unstructured triangular grid.&nbsp; The 'dimensions' variables include integer identifiers for triangle nodes, but NOT lat,long and depth.&nbsp; Rather, these are included among the 'variables' variables (e.g. lat = lat(node)).<BR>
<BR>
Paraview is reading in the data correctly.&nbsp; But I need it to use the 'variable' variables lat, long, and depth to serve as the coordinates of the grid.&nbsp; All other 'variables' variables are of course functions of the 'dimensions' variables only, but are to be plotted over the 3D space determined by lat, long and depth.<BR>
<BR>
Can this be done in Paraview?<BR>
<BR>
thanks<BR>
Joel<BR>
<BR>
<BR>
-----Original Message-----<BR>
From: Moreland, Kenneth [<A HREF="mailto:kmorel@sandia.gov">mailto:kmorel@sandia.gov</A>]<BR>
Sent: Wed 4/7/2010 11:09 AM<BR>
To: Joel Culina; paraview@paraview.org<BR>
Subject: Re: [Paraview] trouble reading in netCDF file<BR>
<BR>
The netCDF reader in version understands the COARDS convention (a common subset of CF).&nbsp; It sounds like the variable annotation you describe should be supported.&nbsp; However, one major limitation of the netCDF reader is that it only supports reading variables of the same dimensions because it puts them all on the same grid.&nbsp; So if you have selected to load variables with different dimensions, it will use the dimensions of the first variable and fail to load the rest.&nbsp; That would explain the behavior you are getting since most netCDF files I have run into seem to have variables with low dimension listed first. (There is no particular reason for this.&nbsp; It just seems to be what people/applications do.) If this is the case, you are probably also getting a lot of warnings from the netCDF reader about it and the Information panel will be missing many of your variables.&nbsp; Try turning off all variables in the Object Inspector and turning on only one variable you are interested in.<BR>
<BR>
If this is the problem, it should go away in version 3.8.&nbsp; Realizing this the 3.6 interface to the netCDF reader really sucks, I changed it to select dimensions instead of variables.&nbsp; All variables conforming to the selected dimensions are loaded.&nbsp; It makes using the netCDF reader much easier and problems like the one I described go away.&nbsp; I also expanded the reader to understand most of the CF convention.<BR>
<BR>
Unfortunately, don't use the CVS for this just yet.&nbsp; I have recently discovered that a new netCDF reader that was apparently built for a specific use case but seems to screw up on most data was added to ParaView and it is overriding the existing netCDF reader.&nbsp; We are trying to work on a resolution.<BR>
<BR>
-Ken<BR>
<BR>
<BR>
On 4/6/10 6:02 PM, &quot;Joel Culina&quot; &lt;joel.culina@acadiau.ca&gt; wrote:<BR>
<BR>
Hi,<BR>
<BR>
Thank you Ken for responding.<BR>
<BR>
I suspect that your diagnosis is correct; the root of the problem, I believe, is that I am reading in netCDF data that follows the CF convention.&nbsp;&nbsp; In particular, the grid is an unstructured triangular 2D grid ('poly data' grid in the venacular of paraview).&nbsp; The 'dimensions' variables include integer identifiers for triangle nodes, but NOT lat, long, x, y, time etc.&nbsp; Rather, these are included among the 'variables' variables (e.g. lat = lat(node)).<BR>
<BR>
Is the problem indeed that the paraview netCDF reader cannot understand this particular netCDF-CF file?&nbsp; Is there a way around this, without having to change the way the data is outputted (from netCDF-CF to netCDF-COARDS convention)?&nbsp; Note that I can read into paraview certain variables by filtering out the 1-dimensional variables (lat, long etc.), but of course these variables do not have the correct dependencies (they should be dependent on the variables I filtered out - lat, long etc.)<BR>
<BR>
thanks,<BR>
Joel<BR>
<BR>
<BR>
<BR>
-----Original Message-----<BR>
From: Moreland, Kenneth [<A HREF="mailto:kmorel@sandia.gov">mailto:kmorel@sandia.gov</A>]<BR>
Sent: Tue 4/6/2010 3:41 PM<BR>
To: Joel Culina; paraview@paraview.org<BR>
Subject: Re: [Paraview] trouble reading in netCDF file<BR>
<BR>
It sounds like you are reading in an array with 0 or 1 dimensions (not including time).&nbsp; Although the reader should happily create an image data of that structure, the standard rendering views only understand image data of 2 or 3 dimensions.&nbsp; Hence you get the error.<BR>
<BR>
If you want to see the data in a plot, try adding the &quot;Plot Data&quot; filter.<BR>
<BR>
-Ken<BR>
<BR>
<BR>
On 4/6/10 11:36 AM, &quot;Joel Culina&quot; &lt;joel.culina@acadiau.ca&gt; wrote:<BR>
<BR>
<BR>
<BR>
Hi,<BR>
<BR>
I am trying to read in a netCDF file using Paraview 3.6.2.&nbsp; It can 'see' the netCDF file, but when I attempt to read in the file by pressing 'Apply', I get the following error message:<BR>
<BR>
ERROR: In /home/kitware/ParaView3/Utilities/BuildScripts/ParaView-3.6/ParaView3/Servers/Filters/vtkTexturePainter.cxx, line 280<BR>
vtkTexturePainter (0xb8a0000): Incorrect dimensionality.<BR>
<BR>
I'm not sure which netCDF release created the netCDF file.&nbsp; However, I read in a previous post that paraview 3.6.1 could handle netCDF 4, and since&nbsp; &quot;all netCDF files ever written can always be read by the latest netCDF release. That is, we guarantee backward data compatibility&quot; then 3.6.2 should be able to handle my netCDF file (which wasn't created too recently).<BR>
<BR>
I can read the netCDF file into MATLAB, so it isn't corrupt.<BR>
<BR>
So what's the problem?<BR>
<BR>
thanks<BR>
Joel<BR>
<BR>
<BR>
<BR>
&nbsp;&nbsp; ****&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Kenneth Moreland<BR>
&nbsp;&nbsp;&nbsp; ***&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sandia National Laboratories<BR>
***********<BR>
*** *** ***&nbsp; email: kmorel@sandia.gov<BR>
**&nbsp; ***&nbsp; **&nbsp; phone: (505) 844-8919<BR>
&nbsp;&nbsp;&nbsp; ***&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; web:&nbsp;&nbsp; <A HREF="http://www.cs.unm.edu/~kmorel">http://www.cs.unm.edu/~kmorel</A><BR>
<BR>
<BR>
<BR>
<BR>
<BR>
<BR>
<BR>
&nbsp;&nbsp; ****&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Kenneth Moreland<BR>
&nbsp;&nbsp;&nbsp; ***&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sandia National Laboratories<BR>
***********<BR>
*** *** ***&nbsp; email: kmorel@sandia.gov<BR>
**&nbsp; ***&nbsp; **&nbsp; phone: (505) 844-8919<BR>
&nbsp;&nbsp;&nbsp; ***&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; web:&nbsp;&nbsp; <A HREF="http://www.cs.unm.edu/~kmorel">http://www.cs.unm.edu/~kmorel</A><BR>
<BR>
<BR>
<BR>
<BR>
<BR>
<BR>
<BR>
&nbsp;&nbsp; ****&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Kenneth Moreland<BR>
&nbsp;&nbsp;&nbsp; ***&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sandia National Laboratories<BR>
***********<BR>
*** *** ***&nbsp; email: kmorel@sandia.gov<BR>
**&nbsp; ***&nbsp; **&nbsp; phone: (505) 844-8919<BR>
&nbsp;&nbsp;&nbsp; ***&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; web:&nbsp;&nbsp; <A HREF="http://www.cs.unm.edu/~kmorel">http://www.cs.unm.edu/~kmorel</A><BR>
<BR>
<BR>
<BR>
<BR>
</FONT>
</P>

</BODY>
</HTML>