| 2012 Unidata NetCDF Workshop |
| Welcome, Logistics, and Introduction |
| Welcome |
| Workshop Goals |
| Online Resources |
| Lunch |
| The NetCDF and Workshops Teams |
| Feedback on this workshop |
| Schedule |
| Overview of Unidata |
| Overview of netCDF |
| What is netCDF? |
| What is netCDF, really? |
| NetCDF Features |
| Alternatives to netCDF |
| NetCDF's Niche |
| The NetCDF Web Site |
| Getting Support |
| Building and installing netCDF |
| The NetCDF Classic Data Model |
| NetCDF Files |
| Dimensions |
| Variables |
| Variable Methods |
| Attributes |
| Attribute Methods |
| The "Classic" NetCDF Data Model |
| Introducing CDL (Common Data Language) |
| Another Simple Example |
| A Convention for Coordinates: Coordinate Variables |
| An Example of Coordinate Variables |
| Variables Versus Attributes |
| Classic NetCDF Model Limitations |
| NetCDF Utilities |
| CDL |
| ncdump |
| Examples of ncdump use |
| ncgen |
| Examples of ncgen use |
| ncdump and ncgen together |
| nccopy |
| Examples of nccopy use |
| Common Data Model utilities |
| nc-config |
| Unicode Names |
| Other NetCDF Utilities |
| Remote Access to Datasets Through netCDF-3 |
| NetCDF-C for Windows |
| NetCDF Library Architecture |
| Overview |
| Layers and layers of libraries |
| The dispatch library |
| Introduction to the NetCDF APIs |
| Overview |
| The C API |
| The Java API |
| The Fortran-90 API |
| The Fortran-77 API |
| The C++ API |
| Python APIs |
| The Ruby API |
| Perl APIs |
| Other APIs for netCDF |
| Using netCDF in programs |
| NetCDF Examples for C, Java, F90, F77, and C++ |
| Creating a NetCDF Dataset |
| Reading a NetCDF Dataset with Known Names |
| Reading a NetCDF Dataset with Unknown Names |
| Some Common Errors to Avoid |
| The Simple XY Write Example in C |
| Write The Simple XY Example in F90 |
| The Simple XY Example in C++ |
| C API Example |
| The NetCDF Example Data Sets |
| The Simple XY Example Dataset |
| The 2D Example Dataset CDL |
| The 4D Example Dataset CDL |
| Diskless netCDF files |
| Introduction to NetCDF-4 |
| Formats and Performance |
| NetCDF Format Versions |
| Parts of a File in Classic Format |
| Classic File Format Performance |
| Benchmark Example |
| NetCDF Classic Performance Tips |
| NetCDF-4 File Format |
| NetCDF-4 Performance Tips |
| Using Less Space for Data |
| Making Data Access Faster |
| Utilities for NetCDF-4 |
| CDL extended for netCDF enhanced data model |
| CDL for Groups |
| CDL for Compound Types |
| CDL for Variable Length (vlen) Types |
| CDL for Enumeration (enum) Types |
| Options for ncgen |
| Using ncdump on netCDF-4 files |
| Use ncdump and ncgen for netCDF-4 |
| CDL Special Attributes |
| Using nccopy with netCDF-4 data |
| NetCDF-4 Programming |
| NetCDF-4 Example Programs |
| Backward Compatibility |
| How to Upgrade netCDF-3 code to netCDF-4 |
| How to Upgrade netCDF-3 code to netCDF-4 |
| Define versus Data Mode |
| Incremental Transition to netCDF-4 |
| Recommendations for using netCDF-4 |
| The Unidata UDUNITS-2 package |
| CF Conventions |
| Goals |
| CF Benefits |
| CF Attributes |
| Where is CF Metadata Used? |
| A Brief History of CF |
| Principles |
| CF Standard Names |
| CF Appendices as references |
| Future Directions for CF |
| Chunking and Deflating Data with NetCDF-4 |
| What is Chunking? |
| Choosing Chunksizes |
| Setting the Chunksizes in NetCDF-4 |
| The Cache in NetCDF-4 |
| Setting the Cache in NetCDF-4 |
| Per-Variable Compression in NetCDF-4 |
| Per-Variable Compression in NetCDF-4, Results |
| How to Use Per-Variable Compression in NetCDF-4 |
| Contiguous Variables |
| Best Practices for Data providers |
| Overview |
| Some General Advice for Data Providers |
| Purpose of Conventions |
| Conventions |
| Coordinate Systems |
| Variable Grouping |
| Variable Attributes |
| Calendar Date and Time |
| Packed Data Values |
| Missing Data Values |
| Summary |
| Thanks |
| Introduction to NetCDF Annual Update |
| Workshop Goals |
| Online Resources |
| Schedule |
| What NetCDF Developers Should Know About HDF5 |
| NetCDF-Java and the CDM |
| Developing generic netCDF software |
| Issues in Writing Generic NetCDF Software |
| Of what use is a utility to copy netCDF files? |
| Lessons learned from developing nccopy |
| The Problem |
| A Solution |
| Benefits of Iterators |
| Third-party netCDF packages: NCO, NCL, CDO |
| NetCDF Operators (NCO) |
| Recent NCO Updates |
| NCAR Command Language (NCL) |
| Recent NCL Updates |
| Climate Data Operators (CDO) |
| Recent CDO Updates |
| Using netCDF - NCAR Climate Data |
| Converting ASCII to netCDF |
| Update on Remote Access to NetCDF Data |
| Use of CMake, Cdash, Ctest |
| NetCDF and Python |
| Update on CF developments |
| Version 1.6 of CF Conventions |
| Subjects of CF Discussions |
| NetCDF and Related International Standards |
| Dispatch layer and netCDF architecture |
| Parallel I/O with NetCDF |
| Parallel I/O |
| Introduction to Parallel I/O |
| The pNetCDF Package |
| Parallel I/O in NetCDF-4 |
| Building NetCDF-4 with Parallel I/O |
| Using Parallel I/O in NetCDF-4 |
| Collective and Independent Operations with Parallel I/O in NetCDF-4 |
| Parallel I/O Example |
| Example of Simple Parallel I/O Access |
| Example of Simple Parallel I/O Access (part 2) |
| Using NetCDF Parallel I/O in Fortran 90 |
| Jumpshot Graph of Independent Parallel Data Writes |
| Jumpshot Graph of Collective Parallel Data Writes |
| The Future of netCDF |
| Goals for Unidata data access infrastructure |
| Near-term plans for netCDF |
| Long-term plans for Unidata data access infrastructure |
| Even Longer Term Plans |
| Speculations |
| Feedback |
| Participating in the NetCDF Community |