エンティティID

CUBITでは、グループを含むトポロジーエンティティに、1から昇順で整数の識別番号(ID)が割り当てられます。CUBIT内で新しく作成された各エンティティには、そのトポロジーエンティティ種類の中で一意なIDが与えられます。このIDは、たとえば「draw volume 3」のようにCUBITコマンドでエンティティを指定するために使用できます。

トポロジーエンティティの種類ごとに別々のID空間があります。たとえば、すべてのメッシュnodeには1から n。ここで n までのIDが与えられます。ここでnはモデル内のnode数以上の整数です。同様に、すべてのhexahedronには1から m。ここで m までのIDが与えられます。ここでmはモデル内のhexahedron数以上の整数です。

要素ID

各メッシュエンティティ(hex、tet、face、tri、edge、nodeなど)は、すべてのメッシュエンティティで共有されるID空間から グローバル要素ID を持つこともできます。メッシュエンティティに グローバル要素ID が割り当てられるのは、それが blockに含まれている場合だけで、この値は Exodus export。 グローバル要素ID 時に要素へ割り当てられるglobal IDです。これにより異なるすべての要素タイプをまたいだ単一のID空間が提供されます。

ID空間の欠番

モデルをしばらく操作すると、各種操作によってジオメトリおよびメッシュエンティティの番号に欠番が生じます。 compress ids コマンドを使用すると、これらの欠番をなくせます。

Compress [ids] [all] [Retainmax] [Sort]

Compress [Ids] [All] {Group|Body|Volume|Surface|Curve|Vertex|Element|Hex|Tet|Face|Edge|Node} [Retainmax]

次のように入力し、 compress オプションを指定しない場合、または compress all を指定した場合は、すべてのエンティティのIDが詰め直されます。それ以外の場合は、IDを圧縮するエンティティ種類を指定できます。 retainmax 引数を指定すると、各エンティティ種類の最大IDが保持されるため、このコマンドの後に作成されたエンティティにはその値より大きいIDが割り当てられます。 sort 修飾子を指定すると、各エンティティの新しいIDはサイズと位置で決まります。小さいエンティティには大きいエンティティより小さいIDが割り当てられます。同じサイズのエンティティは位置で並べ替えられ、x座標、次にy、次にzの小さいものほど小さいIDになります。たとえば2つのvertexは常に同じサイズなので、最小x座標で並べ替えられます。xが等しければ最小y座標、という順です。サイズと位置が同じエンティティが見つかった場合は以前のID順で並べ替えられます。このオプションは、変換されたモデルでIDを復元する際に、完全にランダムなID割当より永続性を高める目的で使用できます。

IDの再番号付け

renumberコマンドを使用すると、メッシュ済みエンティティに割り当てられたID番号を変更できます。

Renumber {Node|Edge|Tri|Face|Hex|Tet|Wedge|Element} <id_range> Start_id <id> [Uniqueids]

元のIDには任意の有効なrange指定を使用でき、再番号付けするIDが連続している必要はありません。新しいID番号は指定したstart IDから連続して割り当てられます。コマンドを成功させるには、start IDから始まる有効範囲内に既存IDが存在してはいけません。移動先の範囲が空いていない場合、コマンドは適切なエラーを出して失敗します。

以下のコマンドで uniqueids キーワードを指定すると、どの要素も同じIDを共有しないように要素が再番号付けされます。

便宜上、block内のすべての要素とnodeは1つのコマンドで再番号付けできます。

Renumber block <id_range> [node_start_id <id>] [elem_start_id <id>] [localids]

既定では、 グローバル要素ID は renumber block コマンドで再番号付けされます。 localids を指定した場合は、代わりにhex、tet、face、tri、edgeのローカルIDが再番号付けされます。

Volume ID

volume idコマンドは単一のvolumeを再番号付けするために使用します。

Volume <old_id> Id <new_id>

このコマンドは、new_id番号を他のvolumeが使用していない場合、volumeのold_idをnew_idに置き換えます。エンティティの再番号付けができるのはvolumeだけで、node、curve、surfaceでは使用できません。