Translate

2015/06/30

Intel FORTRANのサブルーチンをC/C++から呼び出す

Intel FORTRANのサブルーチンをC/C++から呼び出す方法について調べてみた。

ググってみたら、あっさり出てきたのでメモしておきます。

Standard Fortran and C Interoperability

CとFORTRAN相互の呼び出しの説明があるのですが、CからFORTRANを呼び出す場合は。。。
The following example calls a Fortran subroutine called Simulation. This subroutine corresponds to the C void function simulation.
ということで、サブルーチンはC/C++からは戻り値なし(void型)の関数として呼び出せるようです。

引数に関しては、FORTRAN側の宣言により値だったり、ポインタだったり変わるのか(引数にvalueが指定されていると値型?)。。。
FORTRANって、まだまだ知らない構文が一杯あるな。。。

2015/06/29

TRNSYS使いへの道 Macroに表示するParametersを制限する

以前に紹介したようにTRNSYSで複数のコンポーネントをまとめてMacroにすると使い回しが楽になります。でも困るのがMacroに含まれているコンポーネントのParametersをはじめInputs,Outputsまで一式表示される事。Macroに含まれるコンポーネントが増えるに従って見にくくなります。

例えば、こういうプロジェクトをMacroでまとめて。。。

NewImage

シンプルな構成にすると、見た目がすっきりしますが。。。

NewImage

Macroをダブルクリックすると、含まれているコンポーネントすべてのParametersが表示されて少々見にくくなります。

NewImage

こういうときは予めPrametersのMacroの項目のチェックを外して表示を制限することができます。

Macroの項目を一つづつ外すか、左側のMacroアイコンをクリックしてすべての項目のチェックを外します。

NewImage

試しにMacroに含まれているすべてのコンポーネントのParametersのMacroのチェックを外して、再びMacroにすると下の図のようにPrametersが全く表示されなくなります。

NewImage

この例では、すべてのParametersの項目を非表示にしましたが、必要に応じて変更したいParametersだけ表示させておくような使い方ができます。

Inputs,Outpusも同じ方法で表示する項目を制限することができます。

2015/06/04

TRNSYS-USERS拾い読み(窓のない開口部)

窓のない開口部って意味不明なタイトルにしてしまいましたが。。。
TRNSYS-USERSに建物のモデリングに関する質問が流れていました。

[TRNSYS-users] Modelling- Building
I am trying to model a Reed House the problem is that the house has no real windows (with frames and glazing) it has only openings for natural lighting and ventilation (see attached photos). The Building is basically not 100% closed.
開口に窓(枠もガラス)がなくて、ただ採光と換気のための開口があるだけ。建物は基本的に閉じていない。

それって、建物の外じゃね?とか思ったんですが、添付されていた写真を見て納得。
質問にある「Reed House」って「葦で作られた家」って事ですね。(LEEDの誤植かと思った)
確かに窓枠もガラスもないです。そして閉じていない。。。

こういう場合にデータとして窓の扱いと換気の設定はどうなるんでしょうか?というのが質問。

これに対する返信はこちらなんですが、
http://lists.onebuilding.org/pipermail/trnsys-users-onebuilding.org/2015-June/027294.html

窓については"virtual window"(TRNBuildのライブラリに入ってます)を使えばOK。
換気についてはTRNFlow、COMIS、もしくはCONTAMを使って換気計算と連成して解いてみては、というアドバイスでした。

なかなかこういうモデルを作る機会はありませんが、"virtual window"は窓がないケースや、熱的にほとんど無視しても構わない開口部に利用できる「窓」なので、憶えておくと何かの機会に役立ちそうです。






2015/06/03

TRNFlowの換気回路をGraphvizで描く(3)

前回から一年ぶりの続編です。

TRNFlowのデータ(Bui)から換気回路のデータを取り出して、Graphvisのデータに変換するプログラムを作りました。久しぶりに使ったら、いちいちGraphvisを起動してデータをコピペするのが面倒になってきました。

もう変換したら、そのままGraphvisで画像生成して、表示までやってしまう処理を追加しました。
実際に動かしてみたのが、下の画面。
buiを指定すると、Graphvisの*.gv形式に変換、そのまま画像表示します。

例によって更新プログラムは以下のリポジトリで公開中です。
https://github.com/TRNSYSJP/TRNSYS.JP/tree/master/Tools/AirlinkToDot

インストーラーは時間のあるときに更新予定です。

2015/06/02

TRNSYS-USERS拾い読み(Type56の精度検証)

TRNSYS-USERSにType56の精度検証の話題が流れていました。

[TRNSYS-users] Type 56 validation references

In the US, building energy modeling tools are "validated" by running them through a series of tests that are described in ASHRAE Standard 140 (there is an analogous BESTEST standard as well).

TRNSYSの検証をBESTESTで行ったという話は聞いていましたが、ANSI/ASHRAE Standard 140(PDF)というのもあるんですね。(ま、あっても不思議ではないですが)
このASHRAE Standard 140の標準値(許容値)を決めるツールの一つとしてTRNSYSが使われているそうです。(必然的に検証にパスしているって事でOK?)

ちなみに日本では国土交通省の特別認定(通称、「特認」)を取得しています。検証内容としては、ASHRAE Standard 140と同様、所定の計算をして、結果が一定の範囲内に収まっているか検証します。