* PACKAGE ASTRT !" 初期値入出力 *" ver 1.00 92/09/11 takepiro * ********************************************************************** SUBROUTINE RDSTRT !" 初期値の読み込みと再生成 O ( GAU , GAV , GAW , GAT , O GATOR , GAPOR , O GBU , GBV , GBW , GBT , O GBTOR , GBPOR , O ITA , ITB , ISTEP , C ITSTRT, ALAT , DLAT , ARAD , DRAD ) * * [PARAM] #ifdef SYS_IBMS INCLUDE (ZCDIM) !" 格子点数, 波数 INCLUDE (ZHDIM) !" 文字列文字数 #else #include "zcdim.F" !" 格子点数, 波数 #include "zhdim.F" !" 文字列文字数 #endif * * [OUTPUT] REAL GAU ( IDIM, JDIM, 0:KDIM ) !" 西風 u REAL GAV ( IDIM, JDIM, 0:KDIM ) !" 南風 v REAL GAW ( IDIM, JDIM, 0:KDIM ) !" 鉛直風 w REAL GAT ( IDIM, JDIM, 0:KDIM ) !" 温度 T REAL GATOR ( IDIM, JDIM, 0:KDIM ) !" トロイダル Ψ REAL GAPOR ( IDIM, JDIM, 0:KDIM ) !" ポロイダル Φ *" : 格子点データ(t) * REAL GBU ( IDIM, JDIM, 0:KDIM ) !" 西風 u REAL GBV ( IDIM, JDIM, 0:KDIM ) !" 南風 v REAL GBW ( IDIM, JDIM, 0:KDIM ) !" 鉛直風 w REAL GBT ( IDIM, JDIM, 0:KDIM ) !" 温度 T REAL GBTOR ( IDIM, JDIM, 0:KDIM ) !" トロイダル Ψ REAL GBPOR ( IDIM, JDIM, 0:KDIM ) !" ポロイダル Φ *" : 格子点データ(t-Δt) * INTEGER ISTEP !" 通しステップ数 INTEGER ITA !" 通し時間(t) INTEGER ITB !" 通し時間(t-Δt) *" : 時刻等 * * [CONST] INTEGER ITSTRT !" 計算開始時刻 REAL ALAT ( JDIM ) !" 緯度 REAL DLAT ( JDIM ) !" 緯度荷重 REAL ARAD ( 0:KDIM ) !" rレベル(整数) REAL DRAD ( 0:KDIM ) !" Δr(整数) *" : 座標格子 * * [INTERNAL WORK] INTEGER ITINIT !" 初期値時刻 INTEGER ITDBFR !" 同後方許容誤差 INTEGER ITDAFT !" 同前方許容誤差 INTEGER ISTEPV, II, ISCDIF, ITDIF INTEGER IFPAR, JFPAR, IFLSTR, IERR INTEGER IEOD, ISTEPA * * [INTERNAL PARAM] INTEGER IDATEA( 6 ) !" 時刻:年月日時分秒 INTEGER IDATEB( 6 ) !" 時刻:年月日時分秒 CHARACTER FILE *(NFILN) !" 入力ファイル:初期値 CHARACTER TUNIT *4 !" 時刻単位 INTEGER TINIT !" 初期データ時刻 INTEGER IDATEI( 6 ) !" 同年月日時分秒 INTEGER DTBFR !" 同後方許容誤差 INTEGER DTAFTR !" 同前方許容誤差 DATA FILE / ' ' / DATA TUNIT / 'DAY ' / DATA TINIT / -999 / DATA DTBFR / 0 / DATA DTAFTR / 10 / INTEGER IFILED INTEGER IOMODE DATA IFILED / 40 / DATA IOMODE / 0 / * NAMELIST /NMINIT/ FILE, TINIT, DTBFR, DTAFTR NAMELIST /NMDATE/ IDATEI * WRITE ( 6,* ) ' INITIAL DATA READ DATE=92/06/18' * *" << INITIM : 初期値の時刻 >> * ITINIT = ITSTRT CALL REWNML ( IFPAR , JFPAR ) READ ( IFPAR, NMINIT, END=190 ) 190 WRITE ( JFPAR, NMINIT ) * IF ( TINIT .NE. -999 ) THEN CALL ACTIME I ( TINIT , O ITINIT ) ELSE ITINIT = ITSTRT ENDIF * CALL ACTIME I ( DTBFR , O ITDBFR ) CALL ACTIME I ( DTAFTR , O ITDAFT ) * IF ( ITINIT .GE. 0 ) THEN WRITE ( 6,* ) ' TRY TO READ HIST AT T = ', ITINIT ELSE CALL REWNML ( IFPAR , JFPAR ) READ ( IFPAR, NMDATE, END=1090 ) 1090 WRITE ( JFPAR, NMDATE ) WRITE ( 6,* ) ' TRY TO READ HIST AT T = ', IDATEI ENDIF * *" << RDSTR : 初期値の読み込み >> * CALL IFLOPN O ( IFLSTR, IERR , I FILE , IFILED, 'READ', 'UNFORMATTED' ) * CALL RDGDST !" 初期値(GB)の読み込み O ( GBU , GBV , GBW , GBT , O ITB , IDATEB, ISTEP , IEOD , I 'GB' , ITINIT, IDATEI, I ITDBFR, ITDAFT, IFLSTR, IOMODE ) * IF ( IEOD .GE. 1 ) THEN CALL MSGDMP( 'E','GRSTRT','***** No Initial Data. ******') * ** STOP ** ENDIF * CALL RDGDST !" 初期値(GA)の読み込み O ( GAU , GAV , GBW , GAT , O ITA , IDATEA, ISTEPA, IEOD , I 'GA' , ITINIT, IDATEI, I ITDBFR, ITDAFT, IFLSTR, IOMODE ) * *" << NOGA : GA 無し=>GB=GA >> * IF ( ( IEOD.GE.1 ) .OR. ( ISTEPA.NE.ISTEP ) ) THEN CALL MSGDMP('M','GRSTRT',' ***** No Initial GA Data *******' ) CALL MSGDMP('M','GRSTRT',' --- GA=GB Assumed' ) * CALL COPY ( GAU , GBU , IDIM*JDIM*KMAX ) CALL COPY ( GAV , GBV , IDIM*JDIM*KMAX ) CALL COPY ( GAW , GBW , IDIM*JDIM*KMAX ) CALL COPY ( GAT , GBT , IDIM*JDIM*KMAX ) * ITA = ITB DO 4100 II = 1, 6 IDATEA( II ) = IDATEB( II ) 4100 CONTINUE ENDIF * *" << VORDIV : 渦度発散の読み込みと生成 >> * CALL CLCSTR( 'RDGDSV' ) CALL RDGDSV !" 渦度発散(GB)の読み込み O ( GBTOR , GBPOR , O ISTEPV, IEOD , I 'GB' , IFLSTR, IOMODE ) CALL CLCEND ( 'RDGDSV' ) * c$$$ IF ( ( IEOD.GE.1 ) .OR. ( ISTEPV.NE.ISTEP ) ) THEN CALL CLCSTR( 'DSTRT' ) CALL DSTRT !" 初期データの再生成 M ( GBU , GBV , GBW , GBT , O GBTOR , GBPOR , C ALAT , DLAT , C ARAD , DRAD ) CALL CLCEND( 'DSTRT' ) c$$$ ENDIF * CALL CLCSTR( 'RDGDSV' ) CALL RDGDSV !" 渦度発散(GA)の読み込み O ( GATOR , GAPOR , O ISTEPV, IEOD , I 'GA' , IFLSTR, IOMODE ) CALL CLCEND ( 'RDGDSV' ) * c$$$ IF ( ( IEOD.GE.1 ) .OR. ( ISTEPV.NE.ISTEP ) ) THEN CALL CLCSTR( 'DSTRT' ) CALL DSTRT !" 初期データの再生成 M ( GAU , GAV , GAW , GAT , O GATOR , GAPOR , C ALAT , DLAT , C ARAD , DRAD ) CALL CLCEND( 'DSTRT' ) c$$$ ENDIF c$$$ ENDIF * CALL GFCLSE ( IFLSTR ) * *" << CHGDAT : 日付の変更 >> * c$$$ IF ( ITINIT .GE. 0 ) THEN c$$$ DO 5100 II = 1,6 c$$$ IDATEI( II ) = IDATEB( II ) c$$$ 5100 CONTINUE c$$$* c$$$ CALL REWNML ( IFPAR , JFPAR ) c$$$ READ ( IFPAR, NMDATE, END=5190 ) c$$$ 5190 WRITE ( JFPAR, NMDATE ) c$$$* c$$$ CALL DIDATE c$$$ O ( ISCDIF, c$$$ I IDATEA, IDATEB ) c$$$ DO 5300 II = 1, 6 c$$$ IDATEB( II ) = IDATEI( II ) c$$$ 5300 CONTINUE c$$$ CALL AIDATE c$$$ O ( IDATEA, c$$$ I IDATEB, ISCDIF ) c$$$* c$$$ ITDIF = ITB - ITINIT c$$$ ITA = ITA - ITB + ITDIF + ITSTRT c$$$ ITB = ITDIF + ITSTRT c$$$ ELSE c$$$* c$$$ ITA = ITA - ITB + ITSTRT c$$$ ITB = ITSTRT c$$$ ENDIF c$$$* c$$$ IF ( ITINIT .NE. ITSTRT ) THEN c$$$ CALL MSGDMP('M', 'GRSTRT', 'INITIAL TIME IT IS MODIFIED' ) c$$$ ENDIF c$$$ WRITE ( 6,* ) ' **** INITIAL IT, DATE ', c$$$ & ITB, (IDATEB( II ), II=1, 6) * RETURN END *********************************************************************** SUBROUTINE RDGDST !" 初期値(GD)の読み込み O ( GDU , GDV , GDW , GDT , O ITD , IDATED, ISTEP , IEOD , I HAB , ITINIT, IDATEI, I ITDBFR, ITDAFT, IFLSTR, IOMODE ) * * [PARAM] #ifdef SYS_IBMS INCLUDE (ZCDIM) !" 格子点数, 波数 #else #include "zcdim.F" !" 格子点数, 波数 #endif * * [OUTPUT] REAL GDU ( IDIM, JDIM, 0:KDIM ) !" 西風 u REAL GDV ( IDIM, JDIM, 0:KDIM ) !" 南風 v REAL GDW ( IDIM, JDIM, 0:KDIM ) !" 鉛直風 w REAL GDT ( IDIM, JDIM, 0:KDIM ) !" 温度 T *" : 格子点データ * INTEGER ISTEP !" 通しステップ数 INTEGER ITD !" 通し時間 INTEGER IDATED( 6 ) !" 時刻:年月日時分秒 *" : 時刻等 INTEGER IEOD !" データありなし * * [INPUT] CHARACTER HAB *(*) !" GA or GB INTEGER ITINIT !" 初期値時刻 INTEGER IDATEI( 6 ) !" 同年月日時分秒 INTEGER ITDBFR !" 同後方許容誤差 INTEGER ITDAFT !" 同前方許容誤差 INTEGER IFLSTR !" 装置番号 INTEGER IOMODE !" 表示モード * * [INTERNAL WORK] INTEGER IEODU, IEODV, IEODW, IEODT INTEGER ITDUR, ISCDIF CHARACTER HU*3, HV*3, HW*3, HT*3 HU = HAB(1:2)//'U' HV = HAB(1:2)//'V' HW = HAB(1:2)//'W' HT = HAB(1:2)//'T' * 1100 CONTINUE * CALL GDREAD O ( GDU , IEODU , O ITD , IDATED, ISTEP , ITDUR , I IFLSTR, HU , IOMODE, 'ALEV' ) * IF ( IEODU .EQ. 0 ) THEN WRITE ( 6,* ) ' READ HIST AT T = ', ITD * IF ( ( ITDBFR .GE. 0 ) .AND. ( ITDAFT .GE. 0 ) ) THEN IF ( ITINIT .GE. 0 ) THEN IF ( ( ITD .LT. ITINIT-ITDBFR ).OR. & ( ITD .GT. ITINIT+ITDAFT ) ) THEN GOTO 1100 *" ------> 次のデータ -----> ENDIF c$$$ ELSE c$$$ CALL DIDATE !" 時刻差 c$$$ O ( ISCDIF, c$$$ I IDATED, IDATEI ) c$$$ IF ( ( ISCDIF .LT. -ITDBFR ) .OR. c$$$ & ( ISCDIF .GT. ITDAFT ) ) THEN c$$$ GOTO 1100 c$$$*" ------> 次のデータ -----> c$$$ ENDIF ENDIF ENDIF ENDIF * CALL GDREAD O ( GDV , IEODV , O ITD , IDATED, ISTEP , ITDUR , I IFLSTR, HV , IOMODE, 'ALEV' ) * CALL GDREAD O ( GDW , IEODW , O ITD , IDATED, ISTEP , ITDUR , I IFLSTR, HW , IOMODE, 'ALEV' ) * CALL GDREAD O ( GDT , IEODT , O ITD , IDATED, ISTEP , ITDUR , I IFLSTR, HT , IOMODE, 'ALEV' ) * IEOD = MAX( IEODU, IEODV, IEODW, IEODT ) * RETURN END *********************************************************************** SUBROUTINE RDGDSV !" ポテンシャルの読み込み O ( GDTOR , GDPOR , O ISTEP , IEOD , I HAB , IFLSTR, IOMODE ) * * [PARAM] #ifdef SYS_IBMS INCLUDE (ZCDIM) !" 格子点数, 波数 #else #include "zcdim.F" !" 格子点数, 波数 #endif * * [OUTPUT] REAL GDTOR ( IDIM, JDIM, 0:KDIM ) !" トロイダル Ψ REAL GDPOR ( IDIM, JDIM, 0:KDIM ) !" ポロイダル Φ *" : 格子点データ * INTEGER ISTEP !" 通しステップ数 INTEGER IEOD !" データありなし * * [INPUT] CHARACTER HAB *(*) !" GA or GB INTEGER IFLSTR !" 装置番号 INTEGER IOMODE !" 表示モード * * [INTERNAL WORK] INTEGER ITD !" 通し時間 INTEGER IDATED( 6 ) !" 時刻:年月日時分秒 INTEGER IEODP, IEODT, ITDUR * CHARACTER HTOR*5, HPOR*5 HTOR = HAB(1:2)//'TOR' HPOR = HAB(1:2)//'POR' * CALL GDREAD O ( GDTOR , IEODT , O ITD , IDATED, ISTEP , ITDUR , I IFLSTR, HTOR , IOMODE, 'ALEV' ) * CALL GDREAD O ( GDPOR , IEODP , O ITD , IDATED, ISTEP , ITDUR , I IFLSTR, HPOR , IOMODE, 'ALEV' ) * IEOD = MAX( IEODT, IEODP ) * RETURN END *********************************************************************** SUBROUTINE WRRSTR !" リスタート・ファイルの書き込み I ( GAU , GAV , GAW , GAT , I GATOR , GAPOR , I GBU , GBV , GBW , GBT , I GBTOR , GBPOR , I ITA , ITB , ISTEP ) * * [PARAM] #ifdef SYS_IBMS INCLUDE (ZCDIM) !" 格子点数, 波数 INCLUDE (ZHDIM) !" 文字列文字数 #else #include "zcdim.F" !" 格子点数, 波数 #include "zhdim.F" !" 文字列文字数 #endif * * [INPUT] REAL GAU ( IDIM, JDIM, 0:KDIM ) !" 西風 u REAL GAV ( IDIM, JDIM, 0:KDIM ) !" 南風 v REAL GAW ( IDIM, JDIM, 0:KDIM ) !" 鉛直風 w REAL GAT ( IDIM, JDIM, 0:KDIM ) !" 温度 T REAL GATOR ( IDIM, JDIM, 0:KDIM ) !" トロイダル Ψ REAL GAPOR ( IDIM, JDIM, 0:KDIM ) !" ポロイダル Φ *" : 格子点データ(t) 格子点データ(t+Δt) * REAL GBU ( IDIM, JDIM, 0:KDIM ) !" 西風 u REAL GBV ( IDIM, JDIM, 0:KDIM ) !" 南風 v REAL GBW ( IDIM, JDIM, 0:KDIM ) !" 鉛直風 w REAL GBT ( IDIM, JDIM, 0:KDIM ) !" 温度 T REAL GBTOR ( IDIM, JDIM, 0:KDIM ) !" トロイダル Ψ REAL GBPOR ( IDIM, JDIM, 0:KDIM ) !" ポロイダル Φ *" : 格子点データ(t-Δt) 格子点データ(t) * INTEGER ISTEP !" 通しステップ数 INTEGER ITA !" 通し時間(t) INTEGER ITB !" 通し時間(t-Δt) *" : 時刻等 * * [INTERNAL PARAM] INTEGER IDATEA( 6 ) !" 時刻:年月日時分秒 INTEGER IDATEB( 6 ) !" 時刻:年月日時分秒 CHARACTER FILE *(NFILN) !" 出力ファイル:再出発 CHARACTER DFMT *(NCC) !" 出力フォーマット DATA FILE / ' ' / DATA DFMT / 'UR8' / LOGICAL OVORDV !" 渦度発散を出すか? DATA OVORDV / .TRUE. / INTEGER JFILED DATA JFILED / 41 / LOGICAL OFIRST DATA OFIRST / .TRUE. / LOGICAL OADVNC REAL DELT SAVE * NAMELIST /NMRSTR/ FILE, DFMT, OVORDV * * [INTERNAL WORK] INTEGER IFPAR, JFPAR, JFLRST, IERR * IF ( OFIRST ) THEN OFIRST = .FALSE. CALL REWNML ( IFPAR , JFPAR ) READ ( IFPAR, NMRSTR, END=1090 ) 1090 WRITE ( JFPAR, NMRSTR ) * CALL IFLOPN O ( JFLRST, IERR , I FILE , JFILED, 'WRITE', 'UNFORMATTED' ) CALL INQTIM O ( ITA , ITB , IDATEA, IDATEB, O ISTEP , DELT , OADVNC ) ENDIF * CALL WRRSTX !" 基本リスタート・ファイルの書き込み I ( GAU , GAV , GAW , GAT , I GBU , GBV , GBW , GBT , I ITA , ITB , IDATEA, IDATEB, ISTEP , I JFLRST, DFMT ) * CALL WRRSTY !" 渦度発散リスタート・ファイルの書き込み I ( GATOR , GAPOR , I GBTOR , GBPOR , I ITA , ITB , IDATEA, IDATEB, ISTEP , I JFLRST, DFMT ) * RETURN END *********************************************************************** SUBROUTINE WRRSTX !" 基本リスタート・ファイルの書き込み I ( GAU , GAV , GAW , GAT , I GBU , GBV , GBW , GBT , I ITA , ITB , IDATEA, IDATEB, ISTEP , I JFLRST, HDFMT ) * * [PARAM] #ifdef SYS_IBMS INCLUDE (ZCDIM) !" 格子点数, 波数 INCLUDE (ZHDIM) !" 文字列文字数 #else #include "zcdim.F" !" 格子点数, 波数 #include "zhdim.F" !" 文字列文字数 #endif * * [INPUT] REAL GAU ( IDIM, JDIM, 0:KDIM ) !" 西風 u REAL GAV ( IDIM, JDIM, 0:KDIM ) !" 南風 v REAL GAW ( IDIM, JDIM, 0:KDIM ) !" 鉛直風 w REAL GAT ( IDIM, JDIM, 0:KDIM ) !" 温度 T *" : 格子点データ(t) 格子点データ(t+Δt) * REAL GBU ( IDIM, JDIM, 0:KDIM ) !" 西風 u REAL GBV ( IDIM, JDIM, 0:KDIM ) !" 南風 v REAL GBW ( IDIM, JDIM, 0:KDIM ) !" 鉛直風 w REAL GBT ( IDIM, JDIM, 0:KDIM ) !" 温度 T *" : 格子点データ(t-Δt) 格子点データ(t) * INTEGER ISTEP !" 通しステップ数 INTEGER ITA !" 通し時間(t) INTEGER ITB !" 通し時間(t-Δt) INTEGER IDATEA( 6 ) !" 時刻:年月日時分秒 INTEGER IDATEB( 6 ) !" 時刻:年月日時分秒 *" : 時刻等 * INTEGER JFLRST !" 出力ファイル CHARACTER HDFMT *(*) !" 出力フォーマット * * [INTERNAL PARAM] INTEGER IOMODE INTEGER NOEND INTEGER ITDUR DATA IOMODE / 0 / DATA NOEND / 0 / DATA ITDUR / 1 / * *" << GBWRIT : ファイル出力 (GB) >> * CALL GDWRIT I ( GBU , I 'GBU' , 'u-velocity @ t ','1/s' , I ITB , IDATEB, ISTEP , ITDUR , I JFLRST, IOMODE, NOEND , 'ALEV', HDFMT ) * CALL GDWRIT I ( GBV , I 'GBV' , 'v-velocity @ t ','1/s' , I ITB , IDATEB, ISTEP , ITDUR , I JFLRST, IOMODE, NOEND , 'ALEV', HDFMT ) * CALL GDWRIT I ( GBW , I 'GBW' , 'w-velocity @ t ','1/s' , I ITB , IDATEB, ISTEP , ITDUR , I JFLRST, IOMODE, NOEND , 'ALEV', HDFMT ) * * CALL GDWRIT I ( GBT , I 'GBT' , 'temperature @ t ','K' , I ITB , IDATEB, ISTEP , ITDUR , I JFLRST, IOMODE, NOEND , 'ALEV', HDFMT ) * *" << GAWRIT : ファイル出力 (GA) >> * CALL GDWRIT I ( GAU , I 'GAU' , 'u-velocity @ t+dt ','1/s' , I ITA , IDATEA, ISTEP , ITDUR , I JFLRST, IOMODE, NOEND , 'ALEV', HDFMT ) * CALL GDWRIT I ( GAV , I 'GAV' , 'v-velocity @ t+dt ','1/s' , I ITA , IDATEA, ISTEP , ITDUR , I JFLRST, IOMODE, NOEND , 'ALEV', HDFMT ) * CALL GDWRIT I ( GAW , I 'GAW' , 'w-velocity @ t+dt ','1/s' , I ITA , IDATEA, ISTEP , ITDUR , I JFLRST, IOMODE, NOEND , 'ALEV', HDFMT ) * CALL GDWRIT I ( GAT , I 'GAT' , 'temperature @ t+dt ','K' , I ITA , IDATEA, ISTEP , ITDUR , I JFLRST, IOMODE, NOEND , 'ALEV', HDFMT ) * RETURN END *********************************************************************** SUBROUTINE WRRSTY !" ポテンシャルリスタート・ファイルの書き込み I ( GATOR , GAPOR , I GBTOR , GBPOR , I ITA , ITB , IDATEA, IDATEB, ISTEP , I JFLRST, HDFMT ) * * [PARAM] #ifdef SYS_IBMS INCLUDE (ZCDIM) !" 格子点数, 波数 INCLUDE (ZHDIM) !" 文字列文字数 #else #include "zcdim.F" !" 格子点数, 波数 #include "zhdim.F" !" 文字列文字数 #endif * * [INPUT] REAL GATOR ( IDIM, JDIM, 0:KDIM ) !" トロイダル Ψ REAL GAPOR ( IDIM, JDIM, 0:KDIM ) !" ポロイダル Φ *" : 格子点データ(t) 格子点データ(t+Δt) * REAL GBTOR ( IDIM, JDIM, 0:KDIM ) !" トロイダル Ψ REAL GBPOR ( IDIM, JDIM, 0:KDIM ) !" ポロイダル Φ *" : 格子点データ(t-Δt) 格子点データ(t) * INTEGER ISTEP !" 通しステップ数 INTEGER ITA !" 通し時間(t) INTEGER ITB !" 通し時間(t-Δt) INTEGER IDATEA( 6 ) !" 時刻:年月日時分秒 INTEGER IDATEB( 6 ) !" 時刻:年月日時分秒 *" : 時刻等 * INTEGER JFLRST !" 出力ファイル CHARACTER HDFMT *(*) !" 出力フォーマット * * [INTERNAL PARAM] INTEGER IOMODE INTEGER NOEND INTEGER ITDUR DATA IOMODE / 0 / DATA NOEND / 0 / DATA ITDUR / 1 / * CALL GDWRIT I ( GBTOR , I 'GBTOR', 'toroidal pot. @ t ','1/s' , I ITB , IDATEB, ISTEP , ITDUR , I JFLRST, IOMODE, NOEND , 'ALEV', HDFMT ) * CALL GDWRIT I ( GBPOR , I 'GBPOR', 'poloidal pot. @ t ','1/s' , I ITB , IDATEB, ISTEP , ITDUR , I JFLRST, IOMODE, NOEND , 'ALEV', HDFMT ) * *" << GAVRDV : 渦度発散 (GA) >> * CALL GDWRIT I ( GATOR , I 'GATOR', 'toloidal pot. @ t+dt ','1/s' , I ITA , IDATEA, ISTEP , ITDUR , I JFLRST, IOMODE, NOEND , 'ALEV', HDFMT ) * CALL GDWRIT I ( GAPOR , I 'GAPOR', 'poroidal pot. @ t+dt','1/s' , I ITA , IDATEA, ISTEP , ITDUR , I JFLRST, IOMODE, NOEND , 'ALEV', HDFMT ) * RETURN END