TRNSYS+PythonでCooling Effect(CE)を計算
TRNSYS Type3157を使って、以前にご紹介したpythermalcomfortを試してみました。
仕組みとしてはType3157からPythonを呼び出して、pythermalcomfortの関数を呼び出します。
pythermalcomfortには様々な関数が用意されています。この例ではTRNSYSには用意されていないCooling Effect(CE)を計算します。
pythermalcomfortのインストール
Pyhtonの環境に予めpythermalcomfortしておきます。
pip install pythermalcomfort
プロジェクトの準備
2室モデル演習を元にして、Type3157を配置したプロジェクトを用意します。
Type3157の設定
Parameter
Cooling Effect(CE)の関数で要求される値を受け取るのに必要なInput数を指定します。この例では6つ必要です。
Input
Cooling Effect(CE)の関数で使用する値の名前と初期値を指定します。それぞれの値について詳しくはCooling Effect(CE)を参照して下さい。
Output
計算結果を出力するoutputの名前をCoolingEffectへ変更します。
Type56-Type3157の接続
Type56の出力より、室温、相対湿度、MRTをType3157へ接続します。その他の値は未接続のままで初期値を使用します。
Pyhtonスクリプトの準備
Examples(C:\TRNSYS18\TRNLib\CallingPython-Cffi\Examples\01-SimplePolynomial)を参考にPythonスクリプを用意します。
以下、Cooling Effect(CE)の計算処理の抜粋です。
はじめにpythermalcomfortをインポートしています。これでcooling_effect関数が呼び出せるようになります。
import numpy
import os
from pythermalcomfort.models import cooling_effect
def Iteration(TRNData): 関数の部分にCooling Effectの計算処理を記述します。さきほどType3157のInputで定義した値を受け取って、cooling_effect関数に引き渡します。
# --------------------------------------------------------------------------------------
def Iteration(TRNData):
# Define local short names for convenience (this is optional)
tdb = TRNData[thisModule]["inputs"][0]
tr = TRNData[thisModule]["inputs"][1]
vr = TRNData[thisModule]["inputs"][2]
rh = TRNData[thisModule]["inputs"][3]
met = TRNData[thisModule]["inputs"][4]
clo = TRNData[thisModule]["inputs"][5]
# Calculate the outputs
CE = cooling_effect(tdb=tdb, tr=tr, vr=vr, rh=rh, met=met, clo=clo)
# Set outputs in TRNData
TRNData[thisModule]["outputs"][0] = CE
return
# EndOfTimeStep: function called at the end of each time step, after iteration and before moving on to next time step
# --------------------------------------------------------------------------------------
計算実行
実行するとType3157 Pyhtonからpythermalcomfortが呼び出され、結果が出力されます。
まとめ
- この例ではType56の計算結果を受け取ってCooling Effect(CE)を計算しました。
- Type3157ではPythonのライブラリを簡単に呼び出すことができます。
- すでに作成済みのPyhtonのプログラムもTRNSYSの計算と組み合わせた処理が簡単に実現できます。
サンプル
Type3157 Python Cooling Effect(CE)サンプル
動作環境
以下の環境で動作を確認しています。
- Windows11 Pro(64bit, 21H2)
- TRNSYS18.04.0000(64bit)
- Python 3.10
1件のピンバック
Type3157のしくみ | 建築環境工学系日記