C/C++

C++コンポーネントの作り方(2)実装 未分類

C++コンポーネントの作り方(2)実装

前回に続いて、コンポーネントの処理を実装します。 ソースコードの確認 この段階では、ソースコードはSimulation Studioからエクスポートした状態のままです。 中身を確認すると、40行目以降にProformaで定義したParameters, Inputsの値に相当する変数が宣言されている事…
C++コンポーネントの作り方(1)準備 未分類

C++コンポーネントの作り方(1)準備

C/C++を使ったTRNSYSコンポーネントの作り方の解説です。TypeStudioを使ってFORTRANで作る方法もありますが、たまにはC/C++作りたいケースがあります。例えば、次のようなケース。 C/C++に慣れている(FORTRANは詳しくない)使いたいライブラリがC/C++すでにC/C++…
Calling TRNSYS Functions from C/C++ FORTRAN

Calling TRNSYS Functions from C/C++

2023/09/19追記 TRNSYS18以降、C/C++のヘッダーファイルが標準で用意されています。詳しくは「7.7. Programming a Type in C++」を参照。 TRNSYSの関数をC/C++から呼び出す方法について紹介します。というか備忘です。In this article …
動いたけど半信半疑 TRNSYS

動いたけど半信半疑

TRNSYSでコンポーネントを作る際には、計算そのものの実装の他、計算に使う入力やパラメータなどの値をTRNSYSの本体(Kernel)から取得します。この処理はTRNSYSに予め用意されている関数を使って行います。ほとんど場合は実数値を取得するのですが、まれに文字列を取得したいことがあります。例え…
TRNSYSの関数をC/C++から呼び出すと動かない TRNSYS

TRNSYSの関数をC/C++から呼び出すと動かない

TRNSYS-USERSにC/C++からの関数呼び出しの話題が流れていました。 C++ API not working C/C++のコンポーネントから整数値を返す関数を呼び出すとNaNが返ってくるとか、文字列を返す関数を使うとAccess Violationでクラッシュするとか。なかなか興味深い質問…