TRNSYSをPythonから実行する

Pythonのsubprocessモジュールを使うと、簡単に外部プログラムを実行することができます。

そして、TRNBuild, Simulation Studio, TRNSYSもコマンドラインから起動できます。で、組み合わせるとスクリプトを使って、一連の処理をまとめて実行することができます。

次の例では、一連の処理をPythonから実行しています。

1.TRNBuildでVFM, SHM/ISMを生成
2. Simulation StudioでDckファイルの書き出し
3. TRNSYSで計算を実行

普段はあまりなさそうな使い方ですが、何度も計算を繰り返すようなケースで役に立ちそうです。

例)RunTRNSYS.py

# coding: utf-8
"""
This example shows how to run TRNBuild, Simulation Studio and TRNSYS.
coded by Yuichi Yasuda @ quattro corporate design
"""

import subprocess
#from subprocess import Popen

if(__name__ == '__main__'):
    # TRNBuild
    #--------------------------------------------------------------------------------------------------------------------------------
    # Creating VFM from command line
    subprocess.call(r'"C:TRNSYS18BuildingTRNBuild.exe" "C:TRNSYS18Examples3D_Building6_Step_Add_Daylightbuilding_ModGeo.b18" /N /vfm')
    
    # Creating SHM/ISM from command line
    subprocess.call(r'"C:TRNSYS18BuildingTRNBuild.exe" "C:TRNSYS18Examples3D_Building6_Step_Add_Daylightbuilding_ModGeo.b18" /N /masks')

    # Simulation Studio
    #--------------------------------------------------------------------------------------------------------------------------------      
    # Creating DCK file from command line. 
    # command line options
    #   /d create deck file
    #   /r run simulation
    #   /q quit
    subprocess.call(r'"C:TRNSYS18StudioExeStudio.exe" /d /q "C:TRNSYS18Examples3D_Building6_Step_Add_DaylightBuilding.tpf"')

    # TRNSYS
    #--------------------------------------------------------------------------------------------------------------------------------
    # Running TRNSYS in interactive mode
    #subprocess.call(r'"C:TRNSYS18ExeTrnEXE64.exe" "Building.dck"', cwd=r'C:TRNSYS18Examples3D_Building6_Step_Add_Daylight')

    # Running TRNSYS in batch mode
    # subprocess.call(r'"C:TRNSYS18ExeTrnEXE64.exe" "Building.dck" /n', cwd=r'C:TRNSYS18Examples3D_Building6_Step_Add_Daylight')

    # Running TRNSYS in Hidden mode
    subprocess.call(r'"C:TRNSYS18ExeTrnEXE64.exe" "Building.dck" /h', cwd=r'C:TRNSYS18Examples3D_Building6_Step_Add_Daylight')
  

動作環境

以下の環境で動作を確認しています。
Windows10 Pro(64bit)
Python:Anaconda 5.1(Python 3.6/64bit)
TRNSYS18.00.0017(64bit)

湿った衣服からの蒸散量はどれぐらい?(TRNSYS-USERSより)

TRNSYS-USERSに流れていた投稿からですが、質問者は観光船の窓の結露検討を行っているようです。ワーストケースシナリオとして、雨の日に濡れた衣服を着た乗船者を想定しています。で、こういったケースのモデルは無いか質問しています。

詳しくはこちら↓

http://lists.onebuilding.org/pipermail/trnsys-users-onebuilding.org/2018-February/029867.html

これに対してANNEX 14 sourcebookを参考にしているという返答がついています。

それがこちら→ http://www.iea-ebc.org/Data/publications/EBC_Annex_14_source_book.pdf

6.3.1 Vapour Production Rates in Rooms に湿った衣類からの蒸散量の他、シャワーや樹木からの蒸散量なども記載されています。こういうの日本にもあるんですかね?何かの時に役に立ちそうなので、備忘の意味でまとめてみました。

加湿、除湿のコントロール(TRNSYS-USERSより)

TRNSYS-USERSでType56の加湿、除湿についての話題が流れていました。

[TRNSYS-users] Conditional Output

http://lists.onebuilding.org/pipermail/trnsys-users-onebuilding.org/2018-February/029874.html

外部の除湿器、加湿器を使って湿度が一定以上なら除湿、一定以下なら加湿としたいようです。(type56のDehumidification, Humidificationでもできますが、除湿器、加湿器そのものをシミュレーションしたいんでしょうね。下図はcooling typeの設定例)

Dehumidification

Dehumidification

メーリングリストでは対策としてThermostatの利用が提案されています。温度の場合と同じように、Thermostatで制御して、おらくVentilation typeで給気へ加湿するような処理なんでしょう。

Thermostatってそういう使い方もあるのか。でも温度と湿度じゃ単位違うからTRNSYSに怒られるかも?(コンポーネントによって単位系をしっかりチェックしているのでエラーになる可能性があります。まあ、そういう場合はEquationを経由すると回避できるんですけどね)

2018/2/26 追記

ドキュメントを見ていたらDehumidistat,Humidistatというコンポーネントを見つけました。(下図)
除湿、加湿の制御にはこれらのコンポーネントが使えそうです。

太陽光発電システム用の日射量データベース

NEDOのサイトで新しい日射データベースが公開されています。と言っても昨年(2017年)の6月から公開されていたのに気付きました。

くわしくはこちら
アジア標準日射量データベース

アジア全域、地点が沢山用意されています。

地点を選ぶと日射のデータが閲覧&ダウンロードできる。

日射スペクトルデータなんてのも公開されています。こちらは国内限定のようです。