QuadraturePoint
Returns quadrature points on hexahedron.
Interface 1
- ܀ Interface
- ️܀ Example 1
- Example 2
- Example 3
- ↢
INTERFACE QuadraturePoint_Hexahedron
MODULE FUNCTION QuadraturePoint_Hexahedron1( &
& order, &
& quadType, &
& xij, &
& alpha, &
& beta, &
& lambda) RESULT(ans)
INTEGER(I4B), INTENT(IN) :: order
!! order of integrand in x, y, and z direction
INTEGER(I4B), INTENT(IN) :: quadType
!! quadrature point type
!! GaussLegendre
!! GaussLegendreLobatto
!! GaussLegendreRadauLeft
!! GaussLegendreRadauRight
!! GaussChebyshev1
!! GaussChebyshev1Lobatto
!! GaussChebyshev1RadauLeft
!! GaussChebyshev1RadauRight
!! GaussUltraspherical
!! GaussUltrasphericalLobatto
!! GaussUltrasphericalRadauLeft
!! GaussUltrasphericalRadauRight
!! GaussJacobi
!! GaussJacobiLobatto
!! GaussJacobiRadauLeft
!! GaussJacobiRadauRight
REAL(DFP), OPTIONAL, INTENT(IN) :: xij(:, :)
!! nodal coordiantes of hexahedron in xij format
REAL(DFP), OPTIONAL, INTENT(IN) :: alpha
!! Jacobi parameter
REAL(DFP), OPTIONAL, INTENT(IN) :: beta
!! Jacobi parameter
REAL(DFP), OPTIONAL, INTENT(IN) :: lambda
!! Ultraspherical parameter
REAL(DFP), ALLOCATABLE :: ans(:, :)
!! quadrature points in xij format
END FUNCTION QuadraturePoint_Hexahedron1
END INTERFACE QuadraturePoint_Hexahedron
order
order
of accuracy in x, y, and z directions.
xij
xij
contains nodal coordinates of hexahedron inxij
format.- The number of rows in
xij
is 3 - The number of columns in
xij
is 8 - If xij is absent then biunit hexahedron is assumed.
- The number of rows in
quadType
quadType
is quadrature point type, it can take following valuesGaussLegendre
GaussLegendreLobatto
GaussLegendreRadauLeft
GaussLegendreRadauRight
GaussChebyshev
GaussChebyshevLobatto
GaussChebyshevRadauLeft
GaussChebyshevRadauRight
GaussJacobi
GaussJacobiLobatto
GaussJacobiRadauLeft
GaussJacobiRadauRight
GaussUltraspherical
GaussUltrasphericalLobatto
GaussUltrasphericalRadauLeft
GaussUltrasphericalRadauRight
alpha, beta, lambda
alpha
andbeta
are parameters for Jacobi quadrature pointslambda
is the parameter for Ultraspherical quadrature points
program main
use easifembase
implicit none
integer( i4b ) :: i1, i2, order
real( dfp ), allocatable :: x(:,:)
type(string) :: astr
order=1
x = QuadraturePoint_Hexahedron( &
& order=order, &
& quadType=GaussLegendre )
call display(x, "ans:")
order=2
x = QuadraturePoint_Hexahedron( &
& order=order, &
& quadType=GaussLegendre )
call display(x, "ans:")
end program main
program main
use easifembase
implicit none
integer( i4b ) :: i1, i2, order
real( dfp ), allocatable :: x(:,:)
type(string) :: astr
order=1
x = QuadraturePoint_Hexahedron( &
& order=order, &
& quadType=GaussLegendreLobatto )
call display(x, "ans:")
order=2
x = QuadraturePoint_Hexahedron( &
& order=order, &
& quadType=GaussLegendreLobatto )
call display(x, "ans:")
end program main
program main
use easifembase
implicit none
integer( i4b ) :: i1, i2, order
real( dfp ), allocatable :: x(:,:)
type(string) :: astr
order=1
x = QuadraturePoint_Hexahedron( &
& order=order, &
& quadType=GaussChebyshev )
call display(x, "ans:")
order=2
x = QuadraturePoint_Hexahedron( &
& order=order, &
& quadType=GaussChebyshev )
call display(x, "ans:")
end program main
Interface 2
INTERFACE QuadraturePoint_Hexahedron
MODULE FUNCTION QuadraturePoint_Hexahedron2( &
& p, q, r, &
& quadType1, quadType2, quadType3, &
& xij, &
& alpha1, beta1, lambda1, &
& alpha2, beta2, lambda2, &
& alpha3, beta3, lambda3 &
& ) RESULT(ans)
INTEGER(I4B), INTENT(IN) :: p
!! order of integrand in x direction
INTEGER(I4B), INTENT(IN) :: q
!! order of integrand in y direction
INTEGER(I4B), INTENT(IN) :: r
!! order of integrand in z direction
INTEGER(I4B), INTENT(IN) :: quadType1, quadType2, quadType3
!! quadrature point type in x direction
!! Equidistance
!! GaussLegendre
!! GaussLegendreLobatto
!! GaussLegendreRadauLeft
!! GaussLegendreRadauRight
!! GaussChebyshev1
!! GaussChebyshev1Lobatto
!! GaussChebyshev1RadauLeft
!! GaussChebyshev1RadauRight
!! GaussUltraspherical
!! GaussUltrasphericalLobatto
!! GaussUltrasphericalRadauLeft
!! GaussUltrasphericalRadauRight
!! GaussJacobi
!! GaussJacobiLobatto
!! GaussJacobiRadauLeft
!! GaussJacobiRadauRight
REAL(DFP), OPTIONAL, INTENT(IN) :: xij(:, :)
!! four vertices of quadrangle in xij format
REAL(DFP), OPTIONAL, INTENT(IN) :: alpha1, beta1, lambda1
!! Jacobi parameter and Ultraspherical parameter
REAL(DFP), OPTIONAL, INTENT(IN) :: alpha2, beta2, lambda2
!! Jacobi parameter and Ultraspherical parameter
REAL(DFP), OPTIONAL, INTENT(IN) :: alpha3, beta3, lambda3
!! Jacobi parameter and Ultraspherical parameter
REAL(DFP), ALLOCATABLE :: ans(:, :)
!! interpolation points in xij format
END FUNCTION QuadraturePoint_Hexahedron2
END INTERFACE QuadraturePoint_Hexahedron
p,q,r
Order of accuracy in x, y, and z directions.
quadType1
, quadType2
, quadType3
Quadrature type in x, y, and z direction. It can take following values
GaussLegendre
GaussLegendreLobatto
GaussLegendreRadauLeft
GaussLegendreRadauRight
GaussChebyshev
GaussChebyshevLobatto
GaussChebyshevRadauLeft
GaussChebyshevRadauRight
GaussJacobi
GaussJacobiLobatto
GaussJacobiRadauLeft
GaussJacobiRadauRight
GaussUltraspherical
GaussUltrasphericalLobatto
GaussUltrasphericalRadauLeft
GaussUltrasphericalRadauRight
alpha
, beta
, and lambda
These are parameters of Jacobi and Ultraspherical quadrature points.
Interface 3
INTERFACE QuadraturePoint_Hexahedron
MODULE FUNCTION QuadraturePoint_Hexahedron3(nips, quadType, &
& xij, alpha, beta, lambda) RESULT(ans)
INTEGER(I4B), INTENT(IN) :: nips(1)
!! number of integration points in x, y, and z direction
INTEGER(I4B), INTENT(IN) :: quadType
!! interpolation point type
!! GaussLegendre
!! GaussLegendreLobatto
!! GaussLegendreRadauLeft
!! GaussLegendreRadauRight
!! GaussChebyshev1
!! GaussChebyshev1Lobatto
!! GaussChebyshev1RadauLeft
!! GaussChebyshev1RadauRight
!! GaussUltraspherical
!! GaussUltrasphericalLobatto
!! GaussUltrasphericalRadauLeft
!! GaussUltrasphericalRadauRight
!! GaussJacobi
!! GaussJacobiLobatto
!! GaussJacobiRadauLeft
!! GaussJacobiRadauRight
REAL(DFP), OPTIONAL, INTENT(IN) :: xij(:, :)
!! four vertices of quadrangle in xij format
REAL(DFP), OPTIONAL, INTENT(IN) :: alpha
!! Jacobi parameter
REAL(DFP), OPTIONAL, INTENT(IN) :: beta
!! Jacobi parameter
REAL(DFP), OPTIONAL, INTENT(IN) :: lambda
!! Ultraspherical parameter
REAL(DFP), ALLOCATABLE :: ans(:, :)
!! interpolation points in xij format
END FUNCTION QuadraturePoint_Hexahedron3
END INTERFACE QuadraturePoint_Hexahedron
nips
Number of integration points in x, y, and z direction.
Interface 4
INTERFACE QuadraturePoint_Hexahedron
MODULE FUNCTION QuadraturePoint_Hexahedron4( &
& nipsx, nipsy, nipsz, &
& quadType1, quadType2, quadType3, &
& xij, &
& alpha1, beta1, lambda1, &
& alpha2, beta2, lambda2, &
& alpha3, beta3, lambda3 &
& ) RESULT(ans)
INTEGER(I4B), INTENT(IN) :: nipsx(1)
!! order of integrand in x direction
INTEGER(I4B), INTENT(IN) :: nipsy(1)
!! order of integrand in y direction
INTEGER(I4B), INTENT(IN) :: nipsz(1)
!! order of integrand in z direction
INTEGER(I4B), INTENT(IN) :: quadType1, quadType2, quadType3
!! quadrature point type in x, y, and z direction
!! Equidistance
!! GaussLegendre
!! GaussLegendreLobatto
!! GaussLegendreRadauLeft
!! GaussLegendreRadauRight
!! GaussChebyshev1
!! GaussChebyshev1Lobatto
!! GaussChebyshev1RadauLeft
!! GaussChebyshev1RadauRight
!! GaussUltraspherical
!! GaussUltrasphericalLobatto
!! GaussUltrasphericalRadauLeft
!! GaussUltrasphericalRadauRight
!! GaussJacobi
!! GaussJacobiLobatto
!! GaussJacobiRadauLeft
!! GaussJacobiRadauRight
REAL(DFP), OPTIONAL, INTENT(IN) :: xij(:, :)
!! four vertices of quadrangle in xij format
REAL(DFP), OPTIONAL, INTENT(IN) :: alpha1, beta1, lambda1
!! Jacobi and Ultraspherical parameter
REAL(DFP), OPTIONAL, INTENT(IN) :: alpha2, beta2, lambda2
!! Jacobi and Ultraspherical parameter
REAL(DFP), OPTIONAL, INTENT(IN) :: alpha3, beta3, lambda3
!! Jacobi and Ultraspherical parameter
REAL(DFP), ALLOCATABLE :: ans(:, :)
!! interpolation points in xij format
END FUNCTION QuadraturePoint_Hexahedron4
END INTERFACE QuadraturePoint_Hexahedron
nipsx
, nipsy
, nipsz
Number of integration points in x, y, and z direction.