Yamamoto's Laboratory
 
Modeling
  Python
 
High Frequency
 
Low Frequency
 
Multiphysics
 
Particles
 
EMC and EDA
 
 
加速空洞
 
 
 
 
 
 
研究内容 加速器 CST Studio Modeling: Python

CST StudioModeling: PythonPytyon による計算モデルの作成

Python を使い計算モデルの作成のテクニックをまとめます.筆者のメモです.

目次


Pythonによるモデル作成のこつ

Python によるモデリングであったも,完成された CST-Studio の入力ファイルの再利用とかを考える必要があります.モデルの修正が手作業で容易かつエラーの生じにくい入力ファイルを作成する必要があります.筆者は以下に気を付け,モデルを作成します.

  • モデルのパラメーターは,Parameter List に記述します.
    • 通常のプログラム作成でリテラル表現が推奨されないことに似ています.
    • モデルの修正が容易です.
    • Optimizer や Parameter Sweep 等で記述したパラメータを使うことができます.
    • パラメーターをテキストファイルに書き出すことや,それを読み込むことも可能です.
  • モデルは,History List に分かりやすく残るようにします.
    • History が分かりやすいようにコメントを記載します.
  • コマンドが分からない場合,手作業でモデルを作成し,その内容を History List で確認します.
    • List をダブルクリックすると操作の内容が分かります.
  • History List に書けるコマンドは,可能な限り History リストに記述する.
    • Pyhton コマンドを使い History List に VBA コマンドを書き込む.
    • 実行と結果の取得は,History List に記載が不可能です.これらには,Python API メソッドを使います.

Python でのモデルの作成は,手作業と同じです.Parameter List と History List の作成です.

API メソッド

インポート

Python API メソッドを利用するためには,以下のライブラリーをインポートします.

インポートすべきライブラリー

sys.path.append(r"C:\Program Files (x86)\CST STUDIO SUITE 2023\AMD64\python_cst_libraries")
import cst
from cst.interface import DesignEnvironment
import cst.results

メソッドの使い方

以下に代表的なコマンドを示します.

CST-Studio の Pthon API メソッド
API の動作 メソッドとその書き方
CST-Studio操作
     開始 DesignEnv = DesignEnvironment()
     終了 DesignEnv.close()
 
プロジェクト操作
     作成 project = DesignEnv.new_mws()
     activate project.activate()
     保存 project.save(パス(*.cst) )
     呼び出し project.open(パス(*.cst))
     クローズ project.close()
 
History List の作成
     リスト追加 project.modeler.add_to_history(名前, VBAコード)
 
ソルバーの実行
     実行 project.modeler.run_solver()
 
結果の取得
     プロジェクトから取得 res = project.get_result("S-Parameters")
          データ s11 = results.get_data("S11")
     結果ファイルから取得 res = cst.results.ProjectFile(パス(*.cst), allow_interactive=True)
          結果アイテム item = res.get_3d().get_result_item(r"結果アイテムパス")
               データ y = item.get_ydata()

ページ作成情報

参考資料

  1. CST-Studio のマニュアル: Automation and Scripting > Visual Basic (VBA) > 3D Simulation VBA > Transformations and Picks > Pick.

更新履歴

2024年05月01日 ページの新規作成


no counter