Twin Screw Simulator (Ver.9.0.0)
TSSカスタマイズ機能
補足資料

・ユーザ定義ルーチン ／ Fortran compiler の利用方法
・開発環境の設定例 ① Intel Fortran・開発環境の設定例 ② GFortran・サンプルプログラム
・変数一覧

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved

pp. 1- 2
pp. 3- 9
pp.10-18
pp.19-40
pp.41-48

ユーザ定義ルーチン ／ Fortran compiler の利用方法
TSS Ver.9.0.0 で利用可能な開発環境／下表2種類のいずれかを利用してください.
開発環境（compiler）

解析で使用されるマトリクスソルバ

使用PCのOS (Operating System)① Intel Fortran

SMSソルバライブラリ (TSS標準ソルバ)

Windows② GFortran (GNU Fortran)

当社自社開発ソルバ

Windows (MinGWを使用)（参考）TSS Ver.9.0.0 /GPU対応版(Ver.8.0.0 から提供) はユーザ定義ルーチンのサポート対象外になりますが,ユーザ定義ルーチン以外の解析には使用可能です.
開発環境（compiler）

解析で使用するマトリクスソルバ

使用PCのOS(operating system)

NVIDIA nvfortran

CUDAライブラリ（TSS/GPU版標準ソルバ）

Linux (PGI Fortranは2021年に販売停止)* TSS/GPU対応版が利用可能なPC環境は, 下記2点を満たす必要があります.
1. NVIDIA グラフィックボードが搭載されていること.
2. GPUのCUDA Computer Capability (グラフィックスボードのハードウェアバージョン) が7.5以下であること.
当社社開発環境 GPU：Nvidia GeForce GTX 1660 Ti, CUDA Computer Capability: 7.5, Compiler: PGI Community Edition

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved

1TSS Ver.9.0.0 フォルダ構成
TwinScrewSimulatorVer9.0.0¥bin¥x86 内にに3つのSystemフォルダが存在します.

フォルダの内容と対象ユーザ
標準仕様⇒ pp.3-9

Systemver.9.0.0【TSS/標準版】 : 通常解析を実施されるユーザ、①Intel Fortranを利用されるユーザ
Systemver.9.0.0_GPU 【TSS/GPU版】 : GPUを利用されるユーザ（利用可能なPC環境はp.1参照）
Systemver.9.0.0_GFORT: ②GFortranを利用されるユーザ⇒ pp.10-18

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved2

開発環境の設定例 ① Intel Fortran1) Intel@ oneAPI HPC Toolkit をダウンロードする.
入手可能なウェブサイト（下図に抜粋）
https://www.intel.com/content/www/us/en/developer/articles/news/free-intel-software-developer-tools.html

コマンドプロンプト上でコンパイルする場合にはHPC Kit のみインストールします（当社実施環境）.
インテル社製品のダウンロードには、インテル社のサイトでアカウントを作成する必要があります.

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved

3開発環境の設定例 ① Intel Fortran2) Intel@ oneAPI HPC Toolkit をインストールする.
【補足情報】
・ Intel@ oneAPI HPC Toolkit を使用するためには, Microsoft社の Visual Studio をインストールする必要があります.
(当社使用バージョン: Microsoft Visual Studio Community 2017)・ インテルソフトウェア開発製品の正規販売代理店であるエクセルソフト株式会社のウェブサイトから評価版をインストールすることも可能です. 30日間のサポートサービスを受けられます.
エクセルソフト株式会社のウェブサイト（下図に抜粋）
https://www.xlsoft.com/jp/products/intel/download/eval.html

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved4

開発環境の設定例 ① Intel Fortran3) Intel@ oneAPI HPC Toolkit をインストール後, Windows 画面左下のスタートボタンからIntel oneAPI command prompt for Intel64 をクリックしてコマンドプロンプトを起動します.

2. Intel oneAPI command prompt
for Intel64 をクリックする.
(Intel32 も存在するため注意)
3. コマンドプロンプトが起動する. (x64の表記を確認)

1. Windowsスタートボタンをクリックする.
(当社実施環境 windows10)

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved

5開発環境の設定例 ① Intel Fortran4) Intel oneAPI command prompt for Intel64 のコマンドプロンプト上で, ユーザルーチンのソースコードが格納されているTSS内のフォルダ (¥bin¥x86¥Systemver.9.0.0¥TwinFlow2022oneAPI_user) に移動します.

cd の後に, ¥TwinFlow2022oneAPI_userまでのパス(C:ドライブからの絶対パス)を入力して, キーボードのEnterキーを押すと, カレントディレクトリが¥TwinFlow2022oneAPI_userに変更されます.

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved

6開発環境の設定例 ① Intel Fortran5) ¥TwinFlow2022oneAPI_user 内に存在するソースコードを用途向きに書き直します（任意のエディタを使用）．

ユーザがカスタマイズ可能なサブルーチンのソースコード(ファイル名.for)（注）ソースコード以外に格納されているファイル (.obj など) を変更したり削除するとコンパイルができなくなりますので注意して使用ください.

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved

7

開発環境の設定例 ① Intel Fortran6) ソースコードを編集後, コマンドプロンプト上で nmake と入力してキーボードのEnterキーを押すと,makefile を利用したコンパイルが実行されます.

変更したソースコードのみコンパイルされます.

コンパイルに成功すると,¥TwinFlow2022oneAPI_user
フォルダ内に実行プログラムmultiprofilesimulator.exeが作成されます.
コンパイルに失敗した場合はエラーメッセージが出力されるので, ソースコードを修正後に 再度 nmake を実施してください.
Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved

8

開発環境の設定例 ① Intel Fortran7) ¥TwinFlow2022oneAPI_user フォルダ内の multiprofilesimulator.exe の更新日時がコンパイルした日時に変更されていることを確認後, Systemver.9.0.0フォルダ内に存在する multiprofilesimulator.exe を上書き保存して更新すると, TSSのGUIから解析実行(Analysis/Execute) した際に更新されたmultiprofilesimulator.exe が実行されます.

上書き保存
して更新

(参考) 更新前のmultiprofilesimulator.exe を別名でコピーしておく, または別の場所にコピーいておくと, 更新前の実行プログラムを残しておくことができます.

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved

9TSS(GUI)から解析実行すると,Systemver.9.0.0フォルダ内に存在するmultiprofilesimulator.exeが実行されます.

開発環境の設定例 ② GFortran1) MinGW (Minimalist GNU for Windows, GUNコンパイラのWindows移植版) をダウンロードする.
入手可能なウェブサイト（下図に抜粋）
https://sourceforge.net/projects/mingw-w64/files/mingw-w64/

64ビットの開発環境(x86_64-posix-sjlj)
をダウンロードします.
（当社実施環境）

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved

10開発環境の設定例 ② GFortran2) ダウンロードした圧縮ファイル(.7z)を解凍すると, mingw64というフォルダが作成される.

圧縮ファイルを解凍

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved

11開発環境の設定例 ② GFortran3) mingw64 フォルダを任意の場所に移動し（注: 日本語を含むフォルダ名は不可）, Windowsの環境変数の設定から, ¥mingw64¥bin フォルダへの Path を設定する.

（参考）当社実施環境での設定例
Cドライブ直下にmingw64を移動

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved

12開発環境の設定例 ② GFortran4) ¥mingw64¥bin フォルダ内の makefile を用いたコンパイル実行プログラム mingw32-make.exeをフォルダ内にコピーし, nmake64.exe に名前を変更する. ここまでがMinGwのインストール手順例です.

コピーして名前を変更する.
（名前は任意）Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved

13

開発環境の設定例 ② GFortran5) MinGw をインストール後, Windows 画面左下のスタートボタンから
Windows システムツール内のコマンドプロンプトを起動します.

3. コマンドプロンプトが起動する.
2. コマンドプロンプトをクリックする.

1. Windowsスタートボタンをクリックする.
(当社実施環境 windows10)

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved

14開発環境の設定例 ② GFortran6) コマンドプロンプト上で, GFortran用ユーザルーチンのソースコードが格納されているTSS内のフォルダ(¥bin¥x86¥Systemver.9.0.0_GFORT¥TwinFlow2022GFort_user) に移動します.

cd の後に, ¥TwinFlow2022GFort_userまでのパス(C:ドライブからの絶対パス)を入力して, キーボードのEnterキーを押すと, カレントディレクトリが¥TwinFlow2022GFort_userに変更されます.

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved

15

開発環境の設定例 ② GFortran7) ¥TwinFlow2022GFort_user 内に存在するソースコードを用途向きに書き直します（任意のエディタを使用）．

ユーザがカスタマイズ可能なサブルーチンのソースコード(ファイル名.for)（注）ソースコード以外に格納されているファイル (.o など) を変更したり削除するとコンパイルができなくなりますので注意して使用ください.

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved

16

開発環境の設定例 ② GFortran8) ソースコードを編集後, コマンドプロンプト上で nmake64 (p.63 の4) で変更した名前) と入力してキーボードのEnterキーを押すと, makefile を利用したコンパイルが実行されます.

変更したソースコードのみコンパイルされます.

コンパイルに成功すると,¥TwinFlow2022GFort_user
フォルダ内に実行プログラム
multiprofilesimulator.exeが作成されます.
コンパイルに失敗した場合はエラーメッセージが出力されるので, ソースコードを修正
後に 再度 nmake64 を実施してください.

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved

17

開発環境の設定例 ② GFortran9) ¥TwinFlow2022GFort_user フォルダ内の multiprofilesimulator.exe の更新日時がコンパイルした日時に変更されていることを確認後, Systemver.9.0.0_GFORT フォルダ内に存在する multiprofilesimulator.exe を上書き保存して更新すると, TSSのGUIから解析実行(Analysis/Execute) した際に更新されたmultiprofilesimulator.exe が実行されます.

上書き保存
して更新

TSS(GUI)から解析実行すると,Systemver.9.0.0フォルダ内に存在するmultiprofilesimulator.exeが実行されます.
(参考) 更新前のmultiprofilesimulator.exe を別名でコピーしておく, または別の場所にコピーいておくと, 更新前の実行プログラムを残しておくことができます.

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved

18サンプルプログラム① 濃度計算Initialsetforchem の内容

ポストタイトル

単一成分濃度

要素濃度の初期設定

節点濃度の初期設定
流入口に設定されている全流量の計算
流入口境界の(in=1~iinletnodenum/2)の半領域に設定されている流量の計算
流入口境界の(in=1~iinletnodenum/2)の半領域に濃度を設定，残りの半領域の濃度は0(当設定によって濃度平均値は0.5に漸近)Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved

19chemfscal の内容

ui∇f = 0
比較
TSSが解析対象とする移流方程式：( chemf (ic, ie) + ui∇ ) f (ic, ie) = chems(ic, ie)
ic=1, f (1,ie)=chemc(1,ie)
chemf(1,ie)=0chems(1,ie)=0

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved20

User define model タブメニューの設定

ユーザ定義ルーチンのコール
当濃度計算は，熱流動解析に影響を及ぼさないため，非連成（チェックボックスを非チェック）線形方程式の定常解析では，反復計算を要しないため 1 に設定

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved21濃度分布予測結果 (プロジェクト名：testcon)
Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved

22

② 滞留時間分布（RTD）計算
Initialsetforchem の内容
ポストタイトル
単一成分濃度

要素濃度の初期設定
節点濃度の初期設定
流入口に配置された節点に対する境界条件(濃度：1) の設定

非定常計算刻みとシミュレーション時間として利用する変数の数
各種配列変数のダイナミックアロケーション（ユーザ定義不要の固定構文）

時間刻み：0.2 sec
シミュレーション時刻

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved23∂f+ ui∇f = 0∂tchemfscal の内容

後退差分

f n − f n −1+ ui∇f n = 0∆t
 1
 n 1 n −1f
 + ui∇  f =∆t ∆t
ic=1, f (1,ie)=chemc(1,ie),Δt=commonvpar(1)chemf(1,ie)=1/Δt=1/commvpar(1)chems(1,ie)=f n-1/Δt=chemc(1,ie)/commonvpar(1)比較
TSSが解析対象とする移流方程式：( chemf (ic, ie) + ui∇ ) f (ic, ie) = chems(ic, ie)
Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved

24chemvariable の内容

iinletnodenum:周方向の要素/節点分割数

流出口位置の開始要素番号
流出口位置の終了要素番号

t=t+Δtbtlayer : Boundary layer number (流出口境界条件の影響を緩和するための境界層数：3)
iz=axialdiv(1):軸方向要素分割数

iz=axialdiv(1)-2*btlayer-1 : 移流方程式の解析対象領域の最大izインデックス
実行ウィンドウへのシミュ
レーション時刻と流出口平均濃度のエコープリント

流出口で計算される濃度の周方向体積
重み付け平均値：csum/volsum の計算
filleavb(ie):要素ieの充満率
vol(ie,1):要素ieの体積
chemc(1,ie):要素ieの濃度

・・・

twininf ファイル (機番：lp)へのシミュレーション時刻と流出口
平均濃度のエコープリント

iz=2
iz=1

ne

volsum =  filleavb(ie) * vol (ie,1)
ie = nsnecsum =  filleavb(ie) * vol (ie,1) * chemc(1, ie)
ie = ns

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved25

User define model タブメニューの設定

ユーザ定義ルーチンのコール
滞留時間計算は，熱流動解析に影響を及ぼさないため，非連成（チェックボックスを非チェック）

非定常計算サイクル数

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved

26

TSS出力ファイル（xxx.twininf, xxx:プロジェクト名;kd90）

A:シミュレーション時刻
B:流出口平均濃度

C:滞留時間分布（A vs. B情報より作成）

コンマ区切りでエクセルに読み込み
A vs. B ：流出口平均濃度の時間依存性

A vs. C ：滞留時間分布
シミュレーション時刻 流出口平均濃度

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved27

滞留時間分布情報の作成方法
1) Cカラムの1行目に数式=(B2-B1)/0.02を入力してリターンキーを押す．（(B2-B1)/計算時間刻み：Δt=0.02の場合）

2) Cカラムの1行目をマウスクリックし，マウス右ボタンを押してコピーを選択．

3) Cカラムの2行目から末尾行までをマウスドラッグ選択し，再度マウス右ボタンを押して形式の貼り付けをマウスクリック選択．

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved28

③ PP分解反応計算
Initialsetforchemの内容
当ルーチン内で利用する変数の型宣言

解析対象とする移流方程式の数＝4

化学反応計算の初期値（境界値）設定

代数的関係式の数＝6コモン変数の数＝2

ポスト項目の見出し

各種平均分子量の初期値設定
Viscalと共用する変数定義

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved29化学種要素変数の初期設定

流入口(in=1~iinletnodenum)に濃度境界値を設定

化学種節点変数の初期設定

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved30

chemfscalの内容

当ルーチン内で利用する変数の型宣言
Initiator efficiency
ペルオキシド分解速度定数
パラメータ

TSSが解析対象とする移流方程式：

D
chemf(ic,ie)+ f (ic, ie) = chems (ic, ie)Dt ペルオキシド分解速度定数の計算
tempe(ie,1):要素ieの温度

D[I ]

D

= −κ d [ I ]   κ d +[I ] = 0DtDt

 Q − 3Q0 
DQ0= 2 f κd [ I ] 1Dt
QQ−10 Q0 
DQ1= −2 f κ d [ I ] Dt
 Q1 − Q0 1 1 − 3 Q3 + 3 Q1 − 2Q0 
DQ2= 2 f κd [ I ]
Dt
Q1 − Q0Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved31

変数対応関係[ I ] : chemc(1, ie)
Q0 : chemc(2, ie)
Q1 : chemc(3, ie)
Q2 : chemc(4, ie)chemvariableの内容

当ルーチン内で利用する変数の型宣言
プロピレンの分子量：4.2D-02 kg/m3

Closure relation

変数対応関係Chempar(1,ie) : Q3Chempar(2,ie) : 数平均分子量Mn
Chempar(3,ie) : 重量平均分子量Mw
Chempar(4,ie) : Z平均分子量Mz
Chempar(5,ie) : Mw/Mn
Chempar(6,ie) : Mz/Mw

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved32

nonnew : 非ニュートン識別番号
1:Newtonian
2:Power law
3:Log polynomial
4:Carreau
5:Carreau Yasuda
6:Crossviscalの内容

Tb



 T + 273.15 

η0 = a exp a→bcoef (Material fit パラメータ),
Tb→tref (Material fit パラメータ),
T→temhi:要素ieの層iの温度3.7

 M (t ) η0 (t ) =  w  η0 (0) M w (0) dc =M z (t ) / M w (t )M z (0) / M w (0)η=Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved33

η01− dn η * gamm 1 + dc *exp  0
 rcoef chemwriteの内容

ローカル変数の定義：化学種4成分，代数関係式6成分
出力ファイルオープン
機番110: ファイル名CHEMCON, 化学種4成分出力用機番111: ファイル名CHEMPAR, 代数関係式6成分
境界節点を除く，節点番号ループ
化学種ループ
節点inを含む要素数ループ
ine:節点inを含む要素番号
unfilmask:0 ; 未充満領域も計算量を表示:1 ; 未充満領域の計算量を非表示

unfilmask:1の場合は，要素充満率を考慮した体積重み付け平均，unfilmask:0の場合は，要素充満率を無視した体積重み付け平均
nren(in,1):節点inを含む要素数nrelem(inrelem(in,1)+ii-1,1):節点inを含むii番目の要素番号
fille(ine,1) : 要素ineの充満率（0 or 1)
Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved34

流入口境界を除く節点の化学種濃度を体積重み付けの要素濃度より計算

非チェック：unfilmask=0
チェック：unfilmask=1

境界節点を除く，節点番号ループ
代数関係式数ループ
節点inを含む要素数ループ
ine:節点inを含む要素番号
unfilmask:0 ; 未充満領域も計算量を表示:1 ; 未充満領域の計算量を非表示

unfilmask:1の場合は，要素充満率を考慮した体積重み付け平均（未充満領域を非表示），unfilmask:0の場合は，要素充満率を無視した体積重み付け平均（未充満領域も表示）

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved35

流入口境界を除く節点の代数関係式
を体積重み付けの要素濃度より計算

軸方向分割数ループ
軸方向分割数iz断面内の開始節点番号
軸方向分割数iz断面内の終了節点番号

化学種 ic の数平均値の計算

軸垂直断面内の化学種平均値の計算

軸方向分割数iz断面のz座標と各種数平均化学種計算値のファイルCHEMCON への出力
CHEMCONのファイルクローズ

化学種変数と数平均値対応関係[ I ] : chemcon(1)Q0 : chemcon(2)Q1 : chemcon(3)Q2 : chemcon(4)Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved36軸方向分割数ループ
軸方向分割数iz断面内の開始節点番号
軸方向分割数iz断面内の終了節点番号

代数関係式 ic の数平均値の計算

軸垂直断面内の代数的関係式平均値の計算

軸方向分割数iz断面のz座標と各種数平均代数的関係式
計算値のファイルCHEMPAR
への出力
CHEMPARのファイルクローズ

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved

37

数平均値と代数的関係式対応関係
chemparameter(1) : Q3
chemparameter(2) : 数平均分子量Mn
chemparmeter(3) : 重量平均分子量Mw
chemparameter(4) : Z平均分子量Mz
chemparameter(5) : Mw/Mn
chemparameter(6) : Mz/Mw

User define model タブメニューの設定

ユーザ定義ルーチンのコール
当化学反応計算は，熱流動解析に影響を及ぼすため，熱流動場との連成解析（チェックボックスをチェック）

非線形反復計算回数

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved

38

TSS出力ファイル（CHEMCON, プロジェクト名;testpp）

Z座標

[I]Q0

Q1

A vs. B ：z座標 vs. ペルオキ
シド濃度

A vs. C ：z座標 vs. Q0

A vs. D ：z座標 vs. Q1

A vs. E ：z座標 vs. Q2

Q2

コンマ区切りでエクセルに読み込み

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved

39

TSS出力ファイル（CHEMPPAR, プロジェクト名;testpp）

Z座標

Q3

Mn

Mw

Mz

Mw/Mn

Mz/Mw

A vs. B ：z座標 vs. Q3

A vs. C ：z座標 vs. Mn

A vs. D ：z座標 vs. Mw

A vs. E ：z座標 vs. Mw

A vs. F ：z座標 vs. Mw/Mn

A vs. G ：z座標 vs. Mz/Mw

コンマ区切りでエクセルに読み込み

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved

40

変数一覧

表1 ユーザが自由にカスタマイズ可能なサブルーチン

ユーザ定義ルーチン名機能1) initialsetforchem

化学反応種の初期設定及び解析条件の設定

2) viscal

粘度計算3) tempcal1

1D温度計算4) chemfscal

化学反応式の左辺及び右辺荷重ベクトルの設定

5) chemvariable

化学反応成分の代数的関係式の計算

6) chemwrite

化学反応解析結果のファイル出力

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved

411) initialsetforchem:
移流方程式（化学反応モデル）の初期条件設定

熱流動場との連成解析の場合（非連成解析の場合は，chemcalを非ニュートン
反復計算終了後のループ外でコール）

gamcal:
流速，ひずみ速度の計算
fluxcal:
節点流量の計算4) chemfscal:
移流方程式左辺係数行列と右辺生成項の設定

unfillcal:部分充満状態の計算
3) tempcal1:
温度の計算

matrixsetchem
有限要素離散化方程式の構成

chemcal:
移流方程式(化学反応モデル）の計算

matrixsolve
有限要素離散化方程式の求解n収束?

5) chemvariable:
解析結果の代数的関係式の計算

y6) chemwrite:
移流方程式解析結果の出力
Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved

移流方程式収束反復計算ループ2) viscal:
粘度の計算

化学種数反復計算ループ

非ニュートン熱流動反復計算ループ

heleshaw:
熱流動場の計算

returny収束?

n
図1 コーリングシーケンス42表2 解析モデル要素情報
変数名内容

nelem(1)要素数

iinletnodenum

周方向要素分割数

axialdiv(1)軸方向要素分割数

inqc(1)

要素構成節点数(inqc(1)=4)

ndiv

肉厚方向の要素分割数

entab(i,j,1)

要素jを構成するi番目の節点番号(i=1~inqc(1),j=1~nelem(1))

height(i,1)

要素iの肉厚(i=1~nelem(1),単位cm)

vol(i,1)

要素iの体積(i=1~nelem(1),単位cm3)

iinletnodenum×(axialdiv(1)-1)+1
jiinletnodenum×axialdiv(1)=nelem(1)展開i1●(i,j)

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved

位置(i,j)の要素番号:iinletnodenum×j+i，
i=1~iinletnodenum, j=0~axialdiv(1)-143

表3 解析モデル節点情報
変数名

内容nnode(1)

節点数

xnode(i,1),ynode(i,1),znode(i,1)

節点iのx,y,z座標(i=1~nnode(1),単位cm)

nren(in,1)

節点inを含む（隣接する）要素数

nrelem(inrelem(in,1)+ii-1,1)

節点inを含む（隣接する）要素番号(ii=1~nren(in,1))

Iinletnodenum×axialdiv+1

iinletnodenum×(axialdiv+1)=nnode(1)j右端の節点番号は左端と等しい

展開
i
1

●
(i,j)

1
iinletnodenum

位置(i,j)の節点番号:iinletnodenum×j+i，
i=1~iinletnodenum, j=0~axialdiv(1)Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved44

表4 境界条件,成形条件情報
変数名内容

tempinlet

流入温度（℃）

pprescribedinlet

流入口設定圧力（MPa）

pprescribed

流出口圧力（MPa)qprescribed

押出量（kg/h)

flowrateinlet

流入口設定流量(cc/s)

rpm

スクリュ回転数(rpm)href(1,ie,1)

要素ieのスクリュ面熱伝達係数(W/cm2/K)

tbound(1,ie,1)

要素ieのスクリュ面境界温度(℃)

href(2,ie,1)

要素ieのバレル面熱伝達係数(W/cm2/K)

tbound(2,ie,1)

要素ieのバレル面境界温度(℃)

iboundt(in,1)

節点inの温度境界条件（0:拘束，非0:自由）ibound(in,1)

節点inの圧力境界条件（0:拘束，非0:自由）Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved45

表5 物性情報
変数名

内容

rhoh(i,ie,1)

要素ieの層(i=1~ndiv+1)の密度(g/cm3)

cph(i,ie,1)

要素ieの層(i=1~ndiv+1)の比熱(J/g/K)

vish(i,ie,1)

要素ieの層(i=1~ndiv+1)の粘度(Pa・s)
i=1 : スクリュ表面,i=ndiv+1：バレル表面

表6 解析結果要素情報
変数名

内容

temh(i,ie,1)

要素ieの層(i=1~ndiv+1)の温度(℃)

gam(i,ie,1)

要素ieの層(i=1~ndiv+1)のひずみ速度(J/g/K)

uh(i,ie,1),vh(i,ie,1),wh(i,ie,1)

要素ieの層(i=1~ndiv+1)の流速ベクトル成分(cm/s)

tempe(ie,1)

要素ieの温度

fille(ie,1)

要素ieの充満率

filleavb(ie)

要素ieの平均充満率（濃度計算用）

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved46

表7 解析結果節点情報
変数名

内容

pres(in,1)

節点inの圧力(Pa)temp(in,1)

節点inの温度(℃)

visn(in,1)

節点inの粘度(Pa・s)gamn(in,1)

節点inのひずみ速度(s-1)

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved47

表8 ユーザ定義変数
変数名

内容

chemcnumber

解析対象とする移流方程式の本数（化学種数）

chemvnumber

解析で考慮する配列変数の数

commonvnumber

ルーチン間で共用するスカラー変数の数

chemcname(i)

化学種の名称（i=1~chemcnumber)

chemvname(i)配列変数の名称（i=1~chemvnumber)

chemc(i,ie)

化学種の要素濃度(i=1~chemcnumber,ie=1~nelem(1))

chemcn(i,in)

化学種の節点濃度(i=1~chemcnumber,ie=1~nelem(1))

chempar(i,ie)

化学種依存の要素変数(i=1~chemvnumber,ie=1~nelem(1))

chemparn(i,in)

化学種依存の節点変数(i=1~chemvnumber,ie=1~nelem(1))

commonvpar(i)ルーチン間で共用するスカラー変数(i=1~commonvnumber)

Copyright© 2010 Hyper Advanced Simulation Laboratory Co., Ltd. All Rights Reserved48