FE-Project
Loading...
Searching...
No Matches
scale_element_quadrilateral Module Reference

module FElib / Element / Quadrilateral More...

Data Types

type  quadrilateralelement
 Derived type representing a quadrilateral element. More...

Functions/Subroutines

subroutine quadrilateralelement_init (elem, elemorder, lumpedmassmatflag)
 Initialize an object to manage a hexahedral element.

Detailed Description

module FElib / Element / Quadrilateral

Description
A module for a quadrilateral finite element
Author
Yuta Kawai, Team SCALE

Function/Subroutine Documentation

◆ quadrilateralelement_init()

subroutine scale_element_quadrilateral::quadrilateralelement_init ( class(quadrilateralelement), intent(inout) elem,
integer, intent(in) elemorder,
logical, intent(in) lumpedmassmatflag )

Initialize an object to manage a hexahedral element.

Parameters
elemObject of finite element
elemOrderPolynomial order with 1D direction
LumpedMassMatFlagFlag whether mass lumping is considered

Definition at line 53 of file scale_element_quadrilateral.F90.

56
57 implicit none
58
59 class(QuadrilateralElement), intent(inout) :: elem
60 integer, intent(in) :: elemOrder
61 logical, intent(in) :: LumpedMassMatFlag
62
63 !-----------------------------------------------------------------------------
64
65 elem%PolyOrder = elemorder
66 elem%Nv = 4
67 elem%Np = (elemorder + 1)**2
68 elem%Nfp = elemorder + 1
69 elem%Nfaces = 4
70 elem%NfpTot = elem%Nfp*elem%Nfaces
71
72 call elementbase2d_init(elem, lumpedmassmatflag)
73 call construct_element(elem)
74
75 return

References scale_element_base::elementbase2d_final(), scale_element_base::elementbase2d_init(), scale_element_base::elementbase_construct_liftmat(), scale_element_base::elementbase_construct_massmat(), scale_element_base::elementbase_construct_stiffmat(), scale_linalgebra::linalgebra_inv(), scale_polynominal::polynominal_gendlagrangepoly_lglpt(), scale_polynominal::polynominal_gendlegendrepoly(), scale_polynominal::polynominal_gengausslegendrept(), scale_polynominal::polynominal_gengausslegendreptintweight(), scale_polynominal::polynominal_gengausslobattopt(), scale_polynominal::polynominal_gengausslobattoptintweight(), scale_polynominal::polynominal_genlagrangepoly(), and scale_polynominal::polynominal_genlegendrepoly().