Autodesk Simulation CFD のスクリプト言語は、多くのプログラミング言語と共通の要素を使用しています。この言語は一連のクラスに基づいています。各クラスにはそれぞれのプロパティとメソッドがあります。PythonはC++と概念的に似ていますが、独自の構文上、形式上の要素も持っています。
このトピックでは、Autodesk Simulation CFD APIを使用する上で重要なPythonの概念の一部を紹介します。
Python に関する一般的リソースとしては、Python Programming Language 公式 Web サイト http://python.org/ を参照してください。
最上位の API 構造は Autodesk Simulation CFD ワークフローに直接関連しています。機能は4つのモジュールに分かれています:
DC
DSE
結果
設定
モジュール内の機能にアクセスするには、スクリプトの最初に呼び出す必要があります。必要なすべての機能が使用できるよう、すべてのモジュールを初期化することをお勧めします。これを行うには、スクリプトの最初に以下の行を含めてください。
from CFD import Setup
from CFD import Results
from CFD import DSE
from CFD import DC
各モジュールには一連のクラスが含まれています。各クラスにはメソッドが含まれています。
クラスの構造
APIクラスには特定の階層構造があります。Objectはトップレベルクラスであり、その下にいくつかのクラスを持っています。ContainerおよびSummaryObjectクラスもそれぞれの子クラスを持っています。クラス全体の構造は以下の通りです:
特定の静的関数を呼び出すには、以下の構造を使用します:
Module.class.function
たとえば、現在のデザインスタディとしてstudyという名前の変数を定義するには、次のコマンドを使用します:
study = Setup.DesignStudy.Create()
これはCreate関数を呼び出します。これはSetupモジュール内のDesignStudyクラス内にあります。
API内のクラスは特定の機能を可能にするメンバ関数を含んでいます。サブクラスも独自のメンバ関数を含みますが、親クラスのメンバ関数も継承します。
この概念を継承と呼びます。これはAPIにおいて重要な概念です。
たとえば、SummaryPartクラスにはそのメンバが含まれるのに加えて、SummaryObjectクラス、およびObjectクラスに含まれるメンバも継承されます。
あるクラスからアクセス可能なすべてのメンバを確認するには、そのクラスのAPIプログラミングリファレンスページのList of all membersをクリックしてください。SummaryPartクラスのリストは以下の通りです:
ほとんどのクラスが所有する2つの主要なタイプの関数は静的公開メンバ関数および公開メンバ関数です。
静的公開メンバ関数
静的公開メンバ関数は、クラスの特定のインスタンスが現在存在していない場合に使用できます。多くの静的公開メンバ関数はエンティティを作成するのに使用されます。
たとえば、DesignStudyクラスのCreateは現在のデザインスタディを作成または取得するための静的メンバ関数です。デザインスタディオブジェクトを取得するコマンドは以下の通りです:
Setup.DesignStudy.Create()
公開メンバ関数
公開メンバ関数は既に存在する実際のオブジェクトに対してアクションを実行します。
たとえば、DesignStudyクラスのSaveは既に存在するデザインスタディに対する公開メンバ関数です。(存在しないデザインスタディを保存することはできません。)
関連トピック