The NMD library serves to store two-level data structures of numerical metadata. While this library was intended to be used with AnaMod in the Salsa project, it can be used on its own. Unlike other libraries in the Salsa project, it does not rely on Petsc.
General notes
All routines in NMD return an error code of type NMDErrorCode
. This is zero for success and anything else for failure. Return codes can be caught with NMD_ERR_RETURN(ierr)
and generate with NMD_ERR_REPORT(msg)
.
Metadata object manipulation
Metadata category manipulation
Metadata component manipulation
Value handling
Viewing objects
Installing NMD
- Author:
- Victor Eijkhout
- Version:
- 2.5
- Date:
- unreleased
history
2.5 changes
2.4 changes
2.3 changes
- NMDGetValue now returns failure (instead of aborting) if cat/cmp do not exist
- removed occurrences of Petsc's CHKERRQ
- introduced NMDErrorCode
- new files nmdcat.c nmdcmp.c
- NMDGetValue and GetArrayValue now use NMDTruth
- NMDSetValue and NMDSetArrayValue are now analogous: use ampersand for all types of data
- NMDTrue and NMDFalse instead of 1 and 0
- unit tests added
2.3 bug fixes
- NMDGetValue missing case of string value added
- NMDTryGetCategory (and various other Get routines) were able to find non-existing category names. Fixed.
- lots of memory leaks plugged
2.2
- Completely revamped array handling; watch out for prototype changes
- CFLAGS is now NMD_CFLAGS