OpenTD
Thermal Desktop Version 6.1にはOpenTDと呼ばれる,Thermal Desktopを操作するためのAPIが含まれている.Version 6.0でTD APIとして初めて導入された機能で, Version 6.1へのアップデートに伴って,大幅な機能の拡張と名前の変更が行われたようだ. 通常Thermal Desktopは,AutoCADに組み込まれたGUIを用いて,ポチポチクリックしながら熱モデルの作成や解析を行うが,OpenTDを用いると,これらのマニュアル作業をスクリプトで書き表すことができる.以下のような点で非常に便利な機能だ.
- 形状,材料,熱環境など様々なパラメタに関して,パラメトリックな解析を簡単に行うことができる
- モデルの作成手順がそのままスクリプト化されるので,モデル作成の情報がすべて残る
- スクリプトの一部あるいは全部を,将来的に再利用をすることが(うまくやれば)容易
- Thermal Desktopから直接データを受け取って,グラフ等にプロットすることができる
OpenTDは.NETを用いるので,基本的にはC#での利用が推奨されている.ただ,個人的には最近Pythonしか使っていないので,できればThermal Desktopの操作,Thermal Desktopから渡されたデータの解析・プロットまでを,Python環境で全てできるようにしてしまいたい.そこで今回は,PythonからOpenTD・Thermal Desktopを操作するために必要な環境の,セットアップ方法について解説する.
仮想環境の構築
バージョン互換などの問題が生じないように,Thermal Desktopを操作するための仮想環境を立てて,その中に必要なパッケージをインストールしよう.まずはAnacondaのターミナルを開いて,以下のコマンドを打つと現在存在する環境の一覧が確認できる.もし,何も追加で作成されていなければbase環境のみが存在するはずだ.
(base) C:\>conda info --envs
# conda environments:
#
base * C:\ProgramData\Anaconda3
通常,仮想環境を作成するとユーザーフォルダに.conda\envsと.conda\pkgsが作成されて,ここに環境設定ファイルやパッケージが展開されるのだが,諸事情によりユーザーフォルダ以下を重たくしたくないので,インストールディレクトリをC:\conda\の下に変更する.これには,ユーザーフォルダにある,.condarcファイルに以下のテキストを書き込めばよい.
envs_dirs:
- C:\conda\envs
pkgs_dirs:
- C:\conda\pkgs
これを行った上で,Anacondaのターミナルで以下のコマンドを打って,ディレクトリの指定・優先順位設定がされていることを確認しよう.
(base) C:\>conda config --show envs_dirs
envs_dirs:
- C:\conda\envs
- C:\Users\XXXXXX\.conda\envs
- C:\ProgramData\Anaconda3\envs
- C:\Users\XXXXXX\AppData\Local\conda\conda\envs
(base) C:\>conda config --show pkgs_dirs
pkgs_dirs:
- C:\conda\pkgs
ここまで確認出来たら,以下のコマンドを打って仮想環境を作成しよう.このコマンドではtdという名前の仮想環境を作成して,そこにPython 3.7をインストールしている.インストールを行った時点でPython 3.8が利用可能だが,後でインストールするPython for .NET (pythonnet)のために,Python 3.7を指定している.
(base) C:\>conda create -n td python=3.7
これで,仮想環境ができているはずなので,以下のコマンドを打ってtd環境に入ろう・
(base) C:\>conda activate td
パッケージのインストール
ここから,td環境に各種パッケージをインストールしていく.OpenTDを使用するために必要なのはPython for .NET (pythonnet)だけではあるのだが,その他にも最低限必要そうなパッケージはインストールしておく.
(td) C:\>conda install -c conda-forge pythonnet
(td) C:\>conda install numpy
(td) C:\>conda install scipy
(td) C:\>conda install pandas
(td) C:\>conda install matplotlib
(td) C:\>conda install jupyterlab
注意点として,pythonnetはインストールの際にきちんとチャネルを指定して,バージョンを確認しよう.今回はpythonnet 2.4をインストールしているが,このバージョンとpythonnet 2.3では動作が異なる(自分の確認している限りでは,場合によってデータ型がC#のgeneric listからpython listに変わっていたりする).以下のページでインストールコマンドやソフトウェアバージョンが確認できる.
以下のコマンドでtd環境を終了し,現在存在する環境のリストを再度確認することができる.
(td) C:\>conda deactivate
(base) C:\>conda info --envs
# conda environments:
#
base * C:\ProgramData\Anaconda3
td C:\conda\envs\td
TASIndex - Spacecraft Thermal Analysis Database
A comprehensive database of spacecraft thermal analysis information and software for flight missions.
Psychroid - Psychrometric Chart Calculator
Interactive psychrometric chart calculator for HVAC engineers. Calculate and visualize air properties, process flows, and energy requirements.
Craftbook - Spacecraft Thermal Engineer's Notebook
Technical articles on thermal and aerospace engineering topics, featuring mathematical derivations and code examples.
View Factor Calculator
Radiation view factors (configuration factors) for different geometrical configurations are calculated by the analytical formula and Monte Carlo method.