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

module FElib / Element / line More...

Data Types

type  lineelement
 Derived type representing a line element. More...

Functions/Subroutines

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

Detailed Description

module FElib / Element / line

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

Function/Subroutine Documentation

◆ lineelement_init()

subroutine scale_element_line::lineelement_init ( class(lineelement), 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
LumpedMassMatFlagFlag whether mass lumping is considered

Definition at line 53 of file scale_element_line.F90.

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

References scale_element_base::elementbase1d_final(), scale_element_base::elementbase1d_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().