Skip to content

Dynamic_Topology

Greg Sjaardema edited this page Feb 6, 2019 · 16 revisions

Motivation

Proof of Concept

Current "proof of concept" is to use the NetCDF hierarchical groups functionality. Instead of storing each topology change in a separate file, we instead create a new "group" each time the topology changes. In essence, each previous independent file is now a group within a single file.

API

  EX_INQ_NUM_CHILD_GROUPS = 52, /**< inquire number of groups contained in this (exoid) group */
      53, /**< inquire id of parent of this (exoid) group; returns exoid if at root */
      54, /**< inquire id of root group "/" of this (exoid) group; returns exoid if at root */
  EX_INQ_GROUP_NAME_LEN      = 55, /**< inquire length of name of group exoid */
  EX_INQ_GROUP_NAME          = 56, /**< inquire name of group exoid. "/" returned for root group */
  EX_INQ_FULL_GROUP_NAME_LEN = 57, /**< inquire length of full path name of this (exoid) group */
  EX_INQ_FULL_GROUP_NAME = 58, /**< inquire full "/"-separated path name of this (exoid) group */
EXODUS_EXPORT int ex_create_group(int parent_id, const char *group_name);
EXODUS_EXPORT int ex_get_group_id(int parent_id, const char *group_name, int *group_id);
EXODUS_EXPORT int ex_get_group_ids(int parent_id, int *num_groups, int *group_ids);
#define EX_NOTROOTID -1002    /**< file id is not the root id; it is a subgroup id */