PyFlux言語の構文

PyFluxとは

PyFluxはFlux固有の言語で、次のように定義できます:
PyFlux =

Pythonプログラミング言語 +

Fluxコマンド言語

したがってPyFluxは、Fluxコマンドの追加先となるPythonのオーバーロードです。

PyFluxの構文

PyFluxの構文は以下に基づいています:

FluxエンティティとPyFluxオブジェクト

PyFluxは、オブジェクト指向のプログラミング言語です。それぞれのFluxタイプエンティティに対して1つのPyFluxタイプ(クラス)が存在します。FluxエンティティはPyFluxオブジェクト(インスタンス)です。オブジェクトの構造は、属性と呼ばれるフィールドによって定義されます。これらの属性は、一連のメソッドを有しています。これらのメソッドによって、そのオブジェクトのインターフェースが形成されます。

各PyFluxタイプは複数のサブタイプを持つことができます。これらのサブタイプは親タイプから属性とメソッドを継承します。サブタイプは、補足的な属性とメソッドによって親タイプと区別されます。

例:Pointタイプ

PyFlux言語のFluxエンティティの構造をPointエンティティの例を通じて示します。

Fluxエンティティ / PyFluxタイプ

Fluxタイプエンティティとそれに対応するPyFluxタイプのいくつかの例を次の表に示します。

Fluxタイプエンティティ PyFluxタイプ
ドメインタイプ DomainType
無限ボックス InfiniteBox
周期性 Periodicity
対称性 Symmetry
座標系 CoordSys
変換 Transf
ライン ライン
ポイント領域 RegionPoint
ライン領域 RegionLine
フェイス領域 RegionFace
メッシュポイント MeshPoint
メッシュライン MeshLine
メッシュジェネレーター MeshGenerator
… …

他のPyFluxタイプ

基本的なデータ型に対応するPyFluxタイプを次の表に示します。

基本的なデータ型 PyFluxタイプ
整数 I04
実数 R08
文字列 C80
   
ファイル ファイル