ホーム スクリーンショット ユーザーマニュアル Blueskyロゴ YouTube
OghmaNano 有機/ペロブスカイト太陽電池、OFET、OLEDをシミュレーション ダウンロード

形状データベース

Shape database は、3D CAD モデルの汎用ローカルリポジトリとして機能します。Shape database 内のエントリは 3D メッシュ(または shapes)として保存され、例えば AFM 測定から得られた材料表面の粗さ、大面積デバイス上の複雑な六角形コンタクト(?? を参照)、あるいはフォトニック結晶の周期的ピラーなどを表すことができます。形状は三角形メッシュを用いて定義されます。Shape Database ウィンドウには、2D 画像から新しい 3D CAD モデルを生成するツールや、外部メッシュを Wavefront OBJ ファイルからインポートする機能が含まれています。重要な点として、このデータベース内のすべての形状はディスク上に永続的に保存され、ボックス、チューブ、球などの単純な幾何プリミティブを扱う Mesh editor よりも複雑なジオメトリを表現することを目的としています(CAD Meshes を参照)。

データベースへのアクセス

形状は Shape Database に保存されており、Database リボンから Shapes アイコンをクリックすることでアクセスできます( ?? を参照)。 Shape database アイコンをクリックすると Shape Database ウィンドウが開きます (??)。

Database ribbon showing the Shapes icon.
Database リボンから Shape Database を開く。
The Shape Database window listing available shapes.
利用可能な形状を一覧表示する Shape Database ウィンドウ。

いくつかの形状を開いて確認してみてください。 ?? に示すようなウィンドウが表示されます。 この例では太陽電池のハニカムコンタクト構造を示しています。左側には 3D 形状、右側にはそれを生成した 2D 画像が表示されます。2D 画像上には 3D メッシュの zx 投影が重ねて表示されています。上部リボンの show mesh ボタンを切り替えることで、この 2D メッシュの表示をオン/オフできます。

Example of a shape generated from a 2D PNG image.
2D PNG 画像から生成された形状の例。左側に 3D 六角形コンタクト構造、右側に元の 2D 画像とメッシュの zx 投影が表示されています。

メッシュの生成

Shape Database ウィンドウを開くと、保存されている任意の形状を表示および編集できます。データベース内の多くの形状は、組み込みの離散化ツールを使用して 2D 画像から作成されています。本節ではその仕組みを説明します。Shape Database で morphology/1 を開いてください。 ?? に示すようなウィンドウが表示されます。左パネルには生成された 3D 三角形メッシュが表示され、右パネルにはメッシュ生成に使用された元の 2D 画像が表示されます。File リボンの Show mesh ボタンを使用すると、2D 画像上のメッシュオーバーレイを切り替え、三角分割が元の特徴にどのように従っているかを確認できます。

Morphology shape with mesh overlay.
メッシュオーバーレイを有効にした morphology 形状。
Morphology shape after adjusting mesh settings.
メッシュ設定を変更して再構築した後の同じ morphology。

画像が 3D メッシュに変換される方法を変更するには、File リボンの Edit mesh をクリックします。これによりメッシュ設定ダイアログ (??) が開き、離散化レベルを制御できます。

主なパラメータは次のとおりです:

Mesh configuration window.
メッシュ設定ウィンドウ。

例として、x-trianglesy-triangles を両方とも 40 に減らし、 Build mesh をクリックしてください。生成されるメッシュは三角形数が少なくなり、詳細度は低下しますが、処理は高速になります。この変化は 2D および 3D プレビューにすぐに反映されます。

Method 設定は三角形の生成方法を制御します:

No reduce に切り替えてメッシュを再構築すると、適応メッシュが完全な規則的 70 × 70 三角分割に置き換わります。これはより精密ですが、保存やシミュレーションの負荷も増加します。メッシュ内の三角形が増えるほどシミュレーションの計算負荷も増加します。そのためメッシュ構築の目標は、できるだけ少ない三角形で形状を表現することです。比較的少数の三角形で表面を表現できる場合は、その方法を採用するのが一般的に有利です。ただし非常に規則的な形状では、三角形数を減らすために Node reduce を適用してもほとんど効果がない場合があります。そのような場合は単純な規則メッシュでも十分です。実際には、精度と計算コストのバランスが取れたメッシュを見つけるために、さまざまな設定や方法を試す必要があります。

2D 画像生成およびフィルターツール

ファイルから画像を読み込むだけでなく、Shape Editor には新しい 2D パターンを生成し、それを 3D メッシュへ変換するためのツールが含まれています。これらのツールは 2D Image リボンにあり、さまざまな構造を生成できます:

各ジェネレータには独自の設定オプションがあり、メッシュへ変換する前にジオメトリをカスタマイズできます。これらの画像は高さマップまたはマスクとして機能し、Shape Editor はそれらから対応する 3D 構造を構築します。

Saw-wave generated using the 2D image tools.
2D Image ツールで生成された saw-wave パターン。
Saw-wave image after applying thresholding.
しきい値フィルターを適用した後の同じ saw-wave 画像。

画像を生成または読み込んだ後、Filters リボンにはメッシュ構築前に画像を変更するためのツールが用意されています。これらには次が含まれます:

これらのツールにより、高さマップの調整、ノイズの多い画像のクリーンアップ、またはパターンの操作を行った後に最終的な三角形メッシュを生成できます。画像ジェネレータとフィルターの組み合わせにより、OghmaNano 内で複雑でカスタムな 3D ジオメトリを作成する柔軟なワークフローが提供されます。

CAD ファイルからのインポート

2D 画像から形状を生成するだけでなく、Shape Editor では ?? に示されている Import CAD file ボタンを使用して外部 3D メッシュをインポートすることもできます。 OghmaNano は Wavefront OBJ 形式をサポートしており、これは三角形表面メッシュの保存に広く使用されています。Shape Database にはインポートされた CAD モデルの例として、古典的な Utah Teapot も含まれています。これは ?? に示されています。このメッシュは外部三角形モデルがエディタにインポートされた後の表示例を示しています。

Import CAD file button in the Shape Editor.
外部 Wavefront OBJ メッシュを読み込むための Import CAD file ボタン。
Imported Utah teapot CAD mesh rendered in the Shape Editor.
CAD メッシュとしてインポートされた古典的な Utah Teapot。 これは CAD インポート機能の例です。

CAD モデルをインポートする際には、メッシュが閉じた表面を形成していることを確認することが重要です。 閉じた表面とは、すべてのエッジが正確に 2 つの三角形に属している状態であり、完全に密閉された体積を形成します。開いた表面、欠落した面、または亀裂がある場合、点が物体の内側か外側かを判定できなくなり、シミュレーションには適しません。

CAD メッシュは通常、数値シミュレーションではなく機械加工や製造のために設計されています。そのため、光学または物理モデリングに必要な数よりもはるかに多くの三角形を含むことがよくあります。三角形数が多いほど、レイトレーシングや他のソルバーの計算時間は大幅に増加します。

最良の性能を得るためには、インポートするメッシュが次の条件を満たすようにしてください:

これらのガイドラインに従うことで、インポートした CAD ジオメトリを OghmaNano 内で効率よく実行できます。

形状ファイル形式

形状は完全に閉じた体積を形成していなければなりません。組み込みの形状離散化ツールを使用する場合、この条件は自動的に満たされます。ただし手動で形状を作成する場合は、体積が閉じていることを確認する必要があります。

各形状ディレクトリには次のファイルが含まれます:

形状ディレクトリ内のファイル
ファイル名 説明
\(data.json\) 形状の設定データ。
\(image\_original.png\) インポートされた画像のバックアップ。
\(image\_out.png\) 最終処理後の画像。
\(image.png\) インポートされた画像の作業コピー。
\(shape.inp\) 形状の離散化された 3D メッシュ。

PNG ファイルは処理の異なる段階における画像を表しています。data.json ファイルには Shape Editor の設定が保存され、shape.inp ファイルにはオブジェクトの 3D 構造が含まれています。

shape.inp ファイルの例を ?? に示します。この形式は gnuplotsplot コマンドで直接開けるように設計されています。各三角形は 4 つの z, x, y 点で記述されます。最初の 3 行が三角形を定義し、4 行目は最初の点を繰り返して gnuplot が閉じた輪郭を描画できるようにします。ファイル内の三角形数は #y で始まる行で定義されています。

z, x, y 値の絶対的な大きさは重要ではありません。形状が読み込まれるとすぐに、すべての値は正規化され、形状の最小点が (0, 0, 0)、最大点が (1, 1, 1) に配置されます。形状がシーンに挿入されると、デバイス内の目的の物理サイズに合わせて再正規化されます。

Example of a shape.inp file that defines the 3D mesh using z, x, y coordinates.
shape.inp ファイルの例。各三角形は 4 つの z, x, y 点で定義され、 gnuplot を使用して直接可視化できます。

👉 次のステップ: 形状生成の実例については、Shape Database と画像から 3D 形状を作成する方法のチュートリアルを こちら で参照してください。