3

バックグラウンド:

私は、メッシュ化または小さなパーツに分割されてから再グループ化される大きなジオメトリで作業しています。したがって、たとえば、ブロックが16個に分割された場合、それぞれ4個または要素を持つ4個の「パッチ」に再編成される可能性があります。このプロセスの後、私はまだ要素を追跡する必要があります。patchIndex(パッチの数のリストがあります)を、パッチ内のすべての要素とその1)ローカルインデックス(パッチ内の要素のインデックス)と2を返す「キー」として割り当てました。 )グローバルインデックス(ジオメトリ全体内の要素のインデックス)。

問題:

一体どうやってこの情報をHDF5ファイルに入れることができますか?

私のコード:

知っておくと便利な場合は、辞書を設定する方法を次に示します。

def readAscii(ElementsList,gpmetisfile): 
    f = open(gpmetisfile, 'r')
    indexer={}
    i=0     
    for line in gpmetisfile:
        patchIndex = eval(line)  

        if patchIndex in indexer:
            localIndex=indexer[patchIndex]

        else:
            indexer[patchIndex]=0

        test = ElementsList[i].setLocalIndex(patchIndex,localIndex) 
        if test:
            indexer[patchIndex] +=1

編集-gpmetisfileは、ジオメトリを細かく分割するために使用するものです。これは、それが属するパッチである単一の値を持つn番目の要素に対応するn番目の行の形式で提供されます。ElementsListは、ジオメトリ内の要素のリストです。

4

1 に答える 1

-1

私はあなたの問題の詳細を完全には理解していませんが、hdf5ファイルを操作する最も簡単な方法は素敵なh5pyライブラリを使用することです。ここにドキュメントがあります。

于 2012-06-19T19:31:49.633 に答える