Apply boundary condition at every iteration
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer, | private | :: | face_num | ||||
integer, | private | :: | current_iter | Number of the face : 1:imin, 2:imax, 3:jmin, 4:jmax, 5:kmin, 6:kmax |
|||
integer, | private | :: | imx | Number of the face : 1:imin, 2:imax, 3:jmin, 4:jmax, 5:kmin, 6:kmax |
|||
integer, | private | :: | jmx | Number of the face : 1:imin, 2:imax, 3:jmin, 4:jmax, 5:kmin, 6:kmax |
|||
integer, | private | :: | kmx | Number of the face : 1:imin, 2:imax, 3:jmin, 4:jmax, 5:kmin, 6:kmax |
|||
integer, | private | :: | n_var | Number of the face : 1:imin, 2:imax, 3:jmin, 4:jmax, 5:kmin, 6:kmax |
|||
character(len=32), | private | :: | turbulence | ||||
character(len=32), | private | :: | transition | ||||
real(kind=wp), | private | :: | gm | ||||
real(kind=wp), | private | :: | R_gas | ||||
real(kind=wp), | private | :: | mu_ref | ||||
real(kind=wp), | private | :: | T_ref | ||||
real(kind=wp), | private | :: | Sutherland_temp | ||||
real(kind=wp), | private | :: | x_speed_inf | ||||
real(kind=wp), | private | :: | y_speed_inf | ||||
real(kind=wp), | private | :: | z_speed_inf | ||||
real(kind=wp), | private | :: | density_inf | ||||
real(kind=wp), | private | :: | pressure_inf | ||||
real(kind=wp), | private | :: | tk_inf | ||||
real(kind=wp), | private | :: | tw_inf | ||||
real(kind=wp), | private | :: | te_inf | ||||
real(kind=wp), | private | :: | tv_inf | ||||
real(kind=wp), | private | :: | tgm_inf | ||||
real(kind=wp), | private | :: | tkl_inf | ||||
real(kind=wp), | private, | dimension(:, :, :, :), pointer | :: | qp | |||
real(kind=wp), | private, | dimension(:, :, :), pointer | :: | density | Rho pointer, point to slice of qp (:,:,:,1) |
||
real(kind=wp), | private, | dimension(:, :, :), pointer | :: | x_speed | U pointer, point to slice of qp (:,:,:,2) |
||
real(kind=wp), | private, | dimension(:, :, :), pointer | :: | y_speed | V pointer, point to slice of qp (:,:,:,3) |
||
real(kind=wp), | private, | dimension(:, :, :), pointer | :: | z_speed | W pointer, point to slice of qp (:,:,:,4) |
||
real(kind=wp), | private, | dimension(:, :, :), pointer | :: | pressure | P pointer, point to slice of qp (:,:,:,5) |
||
real(kind=wp), | private, | dimension(:, :, :), pointer | :: | tk | TKE/mass |
||
real(kind=wp), | private, | dimension(:, :, :), pointer | :: | tw | Omega |
||
real(kind=wp), | private, | dimension(:, :, :), pointer | :: | te | Dissipation |
||
real(kind=wp), | private, | dimension(:, :, :), pointer | :: | tv | SA visocity |
||
real(kind=wp), | private, | dimension(:, :, :), pointer | :: | tkl | KL K-KL method |
||
real(kind=wp), | private, | dimension(:, :, :), pointer | :: | tgm | Intermittency of LCTM2015 |
Populate the state variables in the ghost cell with particular value based on the boundary conditio being applied at that face
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=wp), | intent(inout), | dimension(-2:dims%imx+2, -2:dims%jmx+2, -2:dims%kmx+2, 1:dims%n_var), target | :: | state | state variables |
|
type(facetype), | intent(in), | dimension(-2:dims%imx+3,-2:dims%jmx+2,-2:dims%kmx+2) | :: | Ifaces | Input varaible which stores I faces' area and unit normal |
|
type(facetype), | intent(in), | dimension(-2:dims%imx+2,-2:dims%jmx+3,-2:dims%kmx+2) | :: | Jfaces | Input varaible which stores J faces' area and unit normal |
|
type(facetype), | intent(in), | dimension(-2:dims%imx+2,-2:dims%jmx+2,-2:dims%kmx+3) | :: | Kfaces | Input varaible which stores K faces' area and unit normal |
|
type(controltype), | intent(in) | :: | control | |||
type(schemetype), | intent(in) | :: | scheme | |||
type(flowtype), | intent(in) | :: | flow | |||
type(boundarytype), | intent(in) | :: | bc | |||
type(extent), | intent(in) | :: | dims |
Supersonic inlet boundary condition All the values of state variables are fixed
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(in) | :: | face | |||
type(boundarytype), | intent(in) | :: | bc | Name of the face at which boundary condition is called |
Supersonic outlet boundary condition. All the values of state variables are copied from inside the domain
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(in) | :: | face | Name of the face at which boundary condition is called |
||
type(boundarytype), | intent(in) | :: | bc | |||
type(extent), | intent(in) | :: | dims |
Subsonic inlet boundary condition. All the state variables's value expect pressure is fixed and pressure is copied from inside the domain
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(in) | :: | face | Name of the face at which boundary condition is called |
||
type(boundarytype), | intent(in) | :: | bc | |||
type(extent), | intent(in) | :: | dims |
Subsonic outlet boundary condition. All the state variables's value expect pressure is copied from the inside of the domain and pressure is fixed
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(in) | :: | face | Name of the face at which boundary condition is called |
||
type(boundarytype), | intent(in) | :: | bc | |||
type(extent), | intent(in) | :: | dims |
Adiabatic/Isothermal wall boundary condition
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(in) | :: | face | |||
type(boundarytype), | intent(in) | :: | bc | Name of the face at which boundary condition is called |
||
type(extent), | intent(in) | :: | dims |
Slip wall boundary condition. Maintain flow tangency
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(in) | :: | face | |||
type(facetype), | intent(in), | dimension(-2:dims%imx+3,-2:dims%jmx+2,-2:dims%kmx+2) | :: | Ifaces | Input varaible which stores I faces' area and unit normal |
|
type(facetype), | intent(in), | dimension(-2:dims%imx+2,-2:dims%jmx+3,-2:dims%kmx+2) | :: | Jfaces | Input varaible which stores J faces' area and unit normal |
|
type(facetype), | intent(in), | dimension(-2:dims%imx+2,-2:dims%jmx+2,-2:dims%kmx+3) | :: | Kfaces | Input varaible which stores K faces' area and unit normal Name of the face at which boundary condition is called |
|
type(boundarytype), | intent(in) | :: | bc | |||
type(extent), | intent(in) | :: | dims |
Boundary condition for the block face with zero area; turning into a pole
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(in) | :: | face | Name of the face at which boundary condition is called |
||
type(boundarytype), | intent(in) | :: | bc | |||
type(extent), | intent(in) | :: | dims |
Generalized subroutine to fix particular value at particular face
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=wp), | intent(out), | dimension(-2:imx+2, -2:jmx+2, -2:kmx+2) | :: | var | Variable of which values are being fixed in the ghost cell |
|
real(kind=wp), | intent(in), | dimension(1:6) | :: | fix_val | Amount of value that need to be fixed. |
|
character(len=*), | intent(in) | :: | face | Name of the face at which boundary condition is called |
No-slip wall boundary condition. All the component of velocity throught face is zero
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(in) | :: | face | Name of the face at which boundary condition is called |
||
type(boundarytype), | intent(in) | :: | bc | |||
type(extent), | intent(in) | :: | dims |
Set value of turbulence variable: omega (turbulenct dissipation rate). Value fixed is accourding to the SST turbulence model
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(in) | :: | face |
Far-field Riemann boundary condition
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(in) | :: | face | |||
type(facetype), | intent(in), | dimension(-2:dims%imx+3,-2:dims%jmx+2,-2:dims%kmx+2) | :: | Ifaces | Input varaible which stores I faces' area and unit normal |
|
type(facetype), | intent(in), | dimension(-2:dims%imx+2,-2:dims%jmx+3,-2:dims%kmx+2) | :: | Jfaces | Input varaible which stores J faces' area and unit normal |
|
type(facetype), | intent(in), | dimension(-2:dims%imx+2,-2:dims%jmx+2,-2:dims%kmx+3) | :: | Kfaces | Input varaible which stores K faces' area and unit normal |
|
type(boundarytype), | intent(in) | :: | bc | |||
type(extent), | intent(in) | :: | dims |
Total Pressure Riemann boundary condition
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(in) | :: | face | |||
type(facetype), | intent(in), | dimension(-2:dims%imx+3,-2:dims%jmx+2,-2:dims%kmx+2) | :: | Ifaces | Input varaible which stores I faces' area and unit normal |
|
type(facetype), | intent(in), | dimension(-2:dims%imx+2,-2:dims%jmx+3,-2:dims%kmx+2) | :: | Jfaces | Input varaible which stores J faces' area and unit normal |
|
type(facetype), | intent(in), | dimension(-2:dims%imx+2,-2:dims%jmx+2,-2:dims%kmx+3) | :: | Kfaces | Input varaible which stores K faces' area and unit normal |
|
type(boundarytype), | intent(in) | :: | bc | |||
type(extent), | intent(in) | :: | dims |
Specify the density in the ghost cell based on the temperature on the wall. Isothermal or adiabatic
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=wp), | intent(in), | dimension(1:6) | :: | temperature | ||
character(len=*), | intent(in) | :: | face | |||
type(boundarytype), | intent(in) | :: | bc | |||
type(extent), | intent(in) | :: | dims |
Single block periodic boundary condition. Not to be used for multiblock boundary condition
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(in) | :: | face |