–ß‚é

C ******************************************************************** C
C C
C H F 3 D - F E M - R C
C C
C Three-Dimensional Thermal Fluid Analysis by F.E.M. C
C C
C ( Version 3.9 ) C
C C
C Copyright : Yasuhiro MATSUDA C
C C
C ******************************************************************** C
C
PROGRAM MAIN
C
IMPLICIT REAL*8 ( A-H,O-Z)
C
C ***** DATA ( 1) ******************************************************
C
*** PARAMETER ( NEX = 3, NEY = 3, NEZ = 3,
C
*** PARAMETER ( NEX = 4, NEY = 4, NEZ = 4,
C
PARAMETER ( NEX = 10, NEY = 10, NEZ = 10,
C
*** PARAMETER ( NEX = 20, NEY = 20, NEZ = 20,
*** PARAMETER ( NEX = 30, NEY = 30, NEZ = 30,
*** PARAMETER ( NEX = 35, NEY = 35, NEZ = 35,
C
C **********************************************************************
C
1 LX = NEX + 1, LY = NEY + 1, LZ = NEZ + 1,
2 NNP = LX* LY* LZ, NEL = NEX* NEY* NEZ,
3 NXY = NEX* NEY, NYZ = NEY* NEZ, NZX = NEZ* NEX,
C
4 N = 13* NEX* NEY* NEZ + 4* ( NXY+ NYZ+ NZX) + NEX+ NEY+ NEZ,
5 NNZ = NNP + N, NZ2 = NNP + 2* N )
C
C ----------------------------------------------------------------------
C
DIMENSION U ( NNP), V ( NNP), W ( NNP), P ( NNP),
1 T ( NNP), X ( NNP), Y ( NNP), Z ( NNP),
2 SU( NNP), SV( NNP), SW( NNP), ST( NNP),
3 B ( NNP), F ( NNP), TX( NNP)
C
DIMENSION XLX( LX), YLY( LY), ZLZ( LZ), FF ( NNP,3),
1 GU ( NNP), GV ( NNP), GW ( NNP), NN1( NNP),
2 HX( LX-1), HY( LY-1), HZ( LZ-1), NN2( NNP,8)
C
DIMENSION DPX( NEL), DPY( NEL), DPZ( NEL), DE ( NEL),
1 DI ( NNP), DLP( NNP), U1 ( NNP), V1 ( NNP),
2 W1 ( NNP), DD ( NNZ), PP ( NNZ), D ( NNZ),
3 A ( NNZ), ANH( NYZ), NUH( NYZ), NDE( NEL,8),
4 KCC( NNP), NCC( 2,NNZ), NC2( 2,NZ2)
C
INTEGER*2 NBP, NBU, NBV, NBW, NBT
DIMENSION NBP( NNP), NBU( NNP), NBV( NNP), NBW( NNP), NBT( NNP)
C
DIMENSION LXY( NXY,4), LYZ( NYZ,4), LZX( NZX,4)
C
C ----- Max. Var. of Velocity --- Loop < = 8000 -----------------------
C
COMMON /CON1/ OMG, ERR, NIR
COMMON /VRLP/ VVAR( 8000), VLMX( 8000), LOP
COMMON /CON2/ DT, COF, PHI, TCF, FT, LPE, RA, ISL
COMMON /ITRI/ NIT, NIU, NIV, NIW, NIP, NU2, NV2, NW2, NP2
C
C ***** DATA ( 2) ******************************************************
C
* OPEN ( 10, FILE='HF3D_FEM_UM3_710_VAR.DAT' ) ! DT = 0.04
* OPEN ( 11, FILE='HF3D_FEM_UM3_710_OUT.DAT' )
C
OPEN ( 10, FILE='HF3D_FEM_UM4_710_VAR.DAT' ) ! DT = 0.04
OPEN ( 11, FILE='HF3D_FEM_UM4_710_OUT.DAT' )
C
* OPEN ( 10, FILE='HF3D_FEM_M4_710_VAR.DAT' )
* OPEN ( 11, FILE='HF3D_FEM_M4_710_OUT.DAT' )
C
* OPEN ( 10, FILE='HF3D_FEM_M4_710_VAR.DAT' )
* OPEN ( 11, FILE='HF3D_FEM_M4_710_OUT.DAT' )
C
* OPEN ( 10, FILE='T_HF3D_FEM_UM10_710_VAR.DAT' ) ! DT= 0.014
* OPEN ( 11, FILE='T_HF3D_FEM_UM10_710_OUT.DAT' )
C
* OPEN ( 10, FILE='HF3D_FEM_M20_7100_001_VAR' )
* OPEN ( 11, FILE='HF3D_FEM_M20_7100_001_OUT' )
C
* OPEN ( 10, FILE='HF3D_FEM_M20_7100_0005_VAR' )
* OPEN ( 11, FILE='HF3D_FEM_M20_7100_0005_OUT' )
C
* OPEN ( 10, FILE='HF3D_FEM_M30_10X6_00002_N_VAR' ) ! < = 0.001(%)
* OPEN ( 11, FILE='HF3D_FEM_M30_10X6_00002_N_OUT' )
C
* OPEN ( 10, FILE='HF3D_FEM_M30_10X6_000025_VAR' )
C
* OPEN ( 10, FILE='HF3D_FEM_M35_10X6_000015_VAR' ) ! < = 0.001(%)
* OPEN ( 11, FILE='HF3D_FEM_M35_10X6_000015_OUT' )
C
C **********************************************************************
C
CALL GMSH ( XLX, YLY, ZLZ, HX, HY, HZ, LX, LY, LZ, MES )
C
C ----------------------------------------------------------------------
C
CALL INPT ( U, V, W, P, DLP, T, NDE, NBU, NBV,
1 NBW, NBP, NBT, X, Y, Z, NCC, NC2, DD,
2 PP, KCC, XLX, YLY, ZLZ, NN1, NN2, KEY, NPR,
3 LX, LY, LZ, NNP, NEL, NNZ, NZ2 )
C
LOP = 0
C
C ----------------------------------------------------------------------
999 LOP = LOP + 1
C
C ----- Correction Coefficient for Energy Eq. ---
C
CALL RDIF ( U, V, W, XLX, YLY, ZLZ, HX, HY, HZ,
1 FF, GU, GV, GW, 1, LX, LY, LZ, NNP )
C
C ----- Temperature ---
C
OMG = 0.8D0
C
CALL CONC ( X, Y, Z, U, V, W, T, T, NDE, P,
1 PP, B, A, D, F, 0, ST, NBT, NCC, NC2,
2 KCC, FF, GU, GV, GW, NIT, NNP, NEL, NNZ, NZ2 )
C
C ----- Correction Coefficient for Momentum Eq. ---
C
CALL RDIF ( U, V, W, XLX, YLY, ZLZ, HX, HY, HZ, FF,
1 GU, GV, GW, 2, LX, LY, LZ, NNP )
C
OMG = 1.1D0
C
C ----- Pseudo Velocites : U1, V1, W1 ---
C
CALL CNC1 ( X, Y, Z, U, V, W, ST, U, NDE, P,
1 PP, B, A, D, F, 1, U1, NBU, NCC, NC2,
2 KCC, NIU, NNP, NEL, NNZ, NZ2 )
C
CALL CNC1 ( X, Y, Z, U, V, W, ST, V, NDE, P,
1 PP, B, A, D, F, 2, V1, NBV, NCC, NC2,
2 KCC, NIV, NNP, NEL, NNZ, NZ2 )
C
CALL CNC1 ( X, Y, Z, U, V, W, ST, W, NDE, P,
1 PP, B, A, D, F, 3, W1, NBW, NCC, NC2,
2 KCC, NIW, NNP, NEL, NNZ, NZ2 )
C
OMG = 1.6D0
C
C ----- Pressure Correction ---
C
CALL DPRS ( P, U1, V1, W1, X, Y, Z, NDE, NC2, KCC,
1 DD, B, NBP, NIP, NNP, NEL, NNZ, NZ2 )
C
OMG = 0.8D0
C
C ----- Guessed Velocities : U, V, W ---
C
C ----- ( Attention : Iter. No. ) ---
C
CALL CONC ( X, Y, Z, U, V, W, ST, U, NDE,
1 P, PP, B, A, D, F, 1, SU, NBU,
2 NCC, NC2, KCC, FF, GU, GV, GW, NU2, NNP,
3 NEL, NNZ, NZ2 )
C
CALL CONC ( X, Y, Z, U, V, W, ST, V, NDE,
1 P, PP, B, A, D, F, 2, SV, NBV,
2 NCC, NC2, KCC, FF, GU, GV, GW, NV2, NNP,
3 NEL, NNZ, NZ2 )
C
CALL CONC ( X, Y, Z, U, V, W, ST, W, NDE,
1 P, PP, B, A, D, F, 3, SW, NBW,
2 NCC, NC2, KCC, FF, GU, GV, GW, NW2, NNP,
3 NEL, NNZ, NZ2 )
C
OMG = 1.6D0
C
C ----- Guessed Pressure ---
C
CALL PRES ( P, DLP, DPX, DPY, DPZ, SU, SV, SW,
1 X, Y, Z, NDE, NN1, NN2, NC2, KCC,
2 DE, DI, DD, B, NBU, NBV, NBW, NBP,
3 NNP, NEL, NNZ, NZ2 )
C
C ----- Velocities & Pressure ---
C
CALL CHCK ( SU, SV, SW, ST, U, V, W, P, T,
1 XLX, YLY, ZLZ, X, Y, Z, NDE, AVV, EPS,
2 LX, LY, LZ, NNP, NEL, NPR, *999 )
C
C ----- Final Proc. ---
C
CALL PLTO ( SU, SV, SW, T, P, X, Y, Z, LXY,
1 LYZ, LZX, XLX, YLY, ZLZ, LX, LY, LZ, NXY,
2 NYZ, NZX, NEX, NNP, NEL )
C
CALL FINC ( U, V, X, Y, Z, T, TX, ANH, NUH,
1 NDE, XLX, UX2, VX2, NYZ, LX, LY, LZ, NNP,
2 NEL )
C
C ----------------------------------------------------------------------
C
CLOSE ( 10)
CLOSE ( 11)
C
STOP
END
C **********************************************************************