General Questions
Q: How do I obtain CGNS?
A: CGNS is distributed via
https://github.com/CGNS.
(Old, stable releases will remain available on SourceForge until the
transition from SourceForge to GitHub is completed.)
All CGNS software is free, and
is governed by the license described at the bottom of the
What is CGNS? page. You can
obtain the software by going to our Download page.
Q: How can I get help if I run into problems?
A: There is no full-time CGNS "help desk." Instead, the CGNS
community relies on both extensive documentation and other CGNS users for
help and support. The documentation is available at
Documentation Home.
In particular, we recommend that beginning users consult the
User's Guide,
which includes many example programs in both Fortran and C.
If you still need help, please make use of the
Discussion Group, via:
cgnstalk. We
strongly encourage you to watch the CGNS/CGNS repository so you can be a part of ongoing
CGNS discussions and updates.
Q: There is a lot of documentation... which are most important for me
to read?
A: We recommend the
User's Guide
as a first "must read." This will introduce you to CGNS and guide you through
many basic examples.
As a tutorial overview, the "CGNS Tutorial Session" (slide format) may also be useful.
It can be found under
Papers and Slides
(Slides section).
The full details about the intellectual content of
CGNS files are given in the
SIDS document
(which is also an AIAA Recommended Practice).
Finally, when you start programming, you will probably need to refer to the
Mid-Level Library
documentation, which describes the Fortran and C calls used to read and write
the CGNS files.
Q: What does SIDS mean?
A: SIDS stands for "Standard Interface Data Structures." It defines
the details of how data is stored in a CGNS file. CGNS files themselves are
entities that are organized internally into a set of "nodes" in a tree-like structure.
The top-most node is referred to as the "root node," and each node has
an associated name, label, data, and (possible) children nodes. It is the SIDS
that tells you how those nodes are organized, and
what data is contained therein.
Q: What do I do if CGNS is not capable of handling my particular
application?
A: CGNS has been designed to be very flexible, for handling a wide
range of flow physics applications. However, if you find an application
that is not covered, you are encouraged to utilize the "UserDefined"
construct as needed. In fact, the UserDefined node can be used to create
an entire tree consisting of multilpe levels of UserDefined children nodes,
so you can create an entire "pattern" for storing particular information.
Furthermore, if you feel that a change or addition is needed
to the SIDS, or if you feel that a particular "pattern" you have created
might be useful to others, please consider submitting a proposal for extension
(see Proposed Extensions page).
Q: When there are multiple ZONES associated with a given CGNS file, is there a
particular way that they should be named?
A:
It is important for CGNS users to know that
when a CGNS file is opened via the cg_open() MLL function, the zones are sorted
alphanumerically by name (the creation order is ignored/discarded). This mechanism is
provided to enable ordinal zone indexing. Therefore, if ordinal zone indexing is desired,
it is considered good standard
practice to always choose zone names to
be alphabetically increasing. For example, Zone0001, Zone0002, etc. is appropriate for up to
9999 zones.
(Important: Because the cgnsview tool uses the low-level cgio API, it does not sort the zones
by name and zone order presented may not match that of the MLL API. Generally, cgnsview
presents the zones in creation order for both ADF and HDF5 formats. One exception is CGNS files
that are either created or opened using the HDF5 v1.6 library (or older) will always be presented
alphabetically (creation order tracking was added to HDF5 in v1.8).)
Q: How do I view my CGNS files?
A: CGNS files are most easily viewed using the tool "cgnsview"
(part of the cgnstools). This tool is
Tcl/Tk based. Cgnsview also has the capability to plot and to translate to/from
PLOT3D format, for example.
Q: How do I know if a CGNS file is correct according to the SIDS
definitions?
A: There are currently tools being developed to evaluate how well a
file complies with the CGNS rules ("SIDS-compliance"). For example,
the utility "cgnsview" (available as part of the
cgnstools), has a capability called "check CGNS" that checks for compliance
to some degree (this tool can also be run independently of cgnsview).
There are still ongoing discussions about this subject.
For example, it is possible that different levels of compliance may be
defined in the future.
Q: What do the CGNS Version numbers mean, and does the CGNS library maintain
backward/forward compatibility?
A: The CGNS versions are currently numbered as follows: "Version x.y, Revision z",
or "Version x.y-z". (However, the revision number is often left off, so you will typically
only see "Version x.y".) The first number represents the "major" version number. Within
this number, the library maintains forward compatibility. For example, Version 2.3 of the
library can read a Version 2.5 CGNS file, but Version 1.y cannot necessarily read any Version 2.y
(or later) file. A new "major" version number is assigned
either when forward compatibility is lost, or else when there is a significant
change made to the API. The second number is the "point release" number. It
increments when there are relatively minor changes to the API, or with the
addition of new features. The third number (the revision number) changes with
bug fixes. Major releases and point releases are announced (via
the Latest News page and via
the CGNSTalk Discussion Group), whereas revisions are
generally not announced. Note that CGNS always maintains backward compatibility: the most recent
version of the library will be able to read all older versions CGNS files.
Q: How do I keep up with the goings-on of the Steering Committee?
A: The CGNS Steering Committee meets and/or holds telecons about 5 times
per year. The minutes are posted on the
Meeting Minutes
page. Also, the meetings are an open forum: anyone is welcome to attend.
To find out the date and time of the next meeting, look in the most recent meeting minutes.
Q: Can I use the CGNS logo as part of my website or other documentation?
A: We encourage anyone to freely use the CGNS logo when distributing or documenting CGNS
related information. The logo adds prestige and credibility to web sites, publications,
displays, announcements, and activities. However, the use of the logo in such a way as
to imply approval, endorsement, or responsibility of the CGNS committee is prohibited
without written permission.
Logo file (color) in .gif format (13 kB)
Logo file (black & white) in .gif format (12 kB)
Logo file (color) in .jpg format (12 kB)
Logo file (black & white) in .jpg format (9 kB)
Q: Is CGNS an ISO standard?
A: Between 1999 and 2002, an effort was spearheaded by Boeing to establish an ISO-STEP standard for the
representation, storage, and exchange of digital data in fluid dynamics based on the CGNS standard.
Unfortunately, the effort had to be curtailed because of budget problems. It was subsequently decided that an
existing ISO standard on finite element solid mechanics would be rewritten and submitted to include CGNS
as well as an integrated engineering analysis framework.
Some details on this subsequent effort can be found in archives of the
Meeting
and Telecon Minutes.
This new ISO effort was being conducted completely outside of
the control of the CGNS committee. Therefore, the current status is not known.