ADflow  v1.0
ADflow is a finite volume RANS solver tailored for gradient-based aerodynamic design optimization.
coolingModelLevel0.f90
Go to the documentation of this file.
2 !
3 ! Module which contains the derived data type as well as the
4 ! corresponding array to store the information for the level 0
5 ! cooling model used in the turbine.
6 ! This model has been developed by Pratt and Whitney and should
7 ! not be given to third parties. This implementation assumes
8 ! the x-direction is the axial direction.
9 !
10  use constants, only: inttype, realtype
11  implicit none
12  save
13 !
14 ! The definition of the derived data type level0CoolingType.
15 !
17 
18  ! nSubfaces: Local number of subfaces which are part of this
19  ! cooling plane.
20  ! mDotRatio: Relative amount of cooling mass flow added.
21  ! dpLog: Log of the total pressure loss coefficient.
22  ! dTLog: Log of the total temperature loss coefficient.
23  ! area: Reference area. Based on the entire wheel such that
24  ! different periodic angles are treated correctly.
25 
26  ! blockID(:): The local block ID of the subfaces.
27  ! indexDir(:): The index direction of this subface, iMin, Imax,
28  ! jMin, jMax, kMin or kMin. These names are a bit
29  ! abused here, because it can also be an internal
30  ! plane.
31  ! indSol(:): The cell index of the cell centered variables
32  ! whose residuals must be modified.
33  ! indNorm(:): The face index for the normals.
34  ! indX1(:): The face index of the 1st adjacent plane to the
35  ! cell center; normally identical to indNorm.
36  ! indX2(:): The face index of the 2nd adjacent plane.
37  ! jcBeg(:): Start index of the cell in j-direction of the
38  ! subface.
39  ! jcEnd(:): Idem, but then for the end index.
40  ! icBeg(:): Idem, but then starting index in i-direction.
41  ! icEnd(:): Idem, but then for the end index.
42 
43  integer(kind=intType) :: nsubfaces
44 
45  integer(kind=intType), dimension(:), pointer :: blockid
46  integer(kind=intType), dimension(:), pointer :: indexdir
47  integer(kind=intType), dimension(:), pointer :: indsol
48  integer(kind=intType), dimension(:), pointer :: indnorm
49  integer(kind=intType), dimension(:), pointer :: indx1
50  integer(kind=intType), dimension(:), pointer :: indx2
51  integer(kind=intType), dimension(:), pointer :: jcbeg, jcend
52  integer(kind=intType), dimension(:), pointer :: icbeg, icend
53 
54  real(kind=realtype) :: mdotratio, dplog, dtlog
55  real(kind=realtype) :: area
56 
57  end type level0coolingtype
58 !
59 ! Variables stored in this module.
60 !
61  ! nPlanesLevel0CoolingModel: Number of injection planes used for
62  ! the level 0 cooling model.
63  ! level0Cooling(:,nMGLevels): The array of the derived datatype
64  ! to store the info to implement the
65  ! cooling model. The first dimension
66  ! is nPlanesLevel0CoolingModel.
67 
68  integer(kind=intType) :: nplaneslevel0coolingmodel
69 
70  type(level0coolingtype), dimension(:, :), allocatable :: &
72 
73 end module coolingmodellevel0
type(level0coolingtype), dimension(:, :), allocatable level0cooling
integer(kind=inttype) nplaneslevel0coolingmodel