Neko 0.9.99
A portable framework for high-order spectral element flow simulations
Loading...
Searching...
No Matches
quad::quad_t Type Referenceabstract

Quadrilateral element. More...

Inheritance diagram for quad::quad_t:
Collaboration diagram for quad::quad_t:

Public Member Functions

procedure, pass(thisinit (this, id, p1, p2, p3, p4)
 Create a quadrilateral element based upon four points.
 
procedure, pass(thisfacet_id (this, t, side)
 Return the edge id for face i as a 2-tuple t.
 
procedure, pass(thisfacet_order (this, t, side)
 Return the ordered edge for face i as a 2-tuple t.
 
procedure, pass(thisdiameter (this)
 Compute the diameter of a quadrilateral element.
 
procedure, pass(thiscentroid (this)
 Compute the centroid of a quadrilateral element.
 
procedure, pass(thisequal (this, other)
 Check if two quad elements are equal.
 
generic operator (this, other)
 Check if two quad elements are equal.
 
procedure, pass(thiselement (this, id, gdim, npts)
 Create an element with npts.
 
procedure, pass(thisfree (this)
 Deallocate an element.
 
procedure, pass(thisgdim (this)
 Get the geometric dimension of an element.
 
procedure, pass(thisnpts (this)
 Get the number of points in an element.
 
procedure, pass(thisp (this, i)
 Return a pointer to point i of the element.
 
procedure, pass(thisn_points (this)
 Get the number of points in an element.
 
procedure, non_overridable, pass element_point (this, i)
 Return a pointer to point i of the element.
 
procedure(element_equal), deferred, pass equal (this, other)
 
procedure(element_diameter), deferred, pass diameter (this)
 
procedure(element_centroid), deferred, pass centroid (this)
 
procedure(element_facet_id), deferred, pass facet_id (this, t, side)
 
procedure(element_facet_order), deferred, pass facet_order (this, t, side)
 
procedure, pass(thisid (this)
 Return the index of an entity.
 
procedure, pass(thisset_id (this, id)
 Update the index of an entity.
 

Public Attributes

type(point_ptr), dimension(:), allocatable pts
 Points of an element.
 

Private Attributes

integer, private gdim_
 Geometric dimension.
 
integer, private npts_
 number of points
 
integer, private id_ = -1
 Entity index.
 

Detailed Description

2D element composed of 4 points

 Node numbering (NEKTON symmetric notation)

      3+-----+4    ^ s
       |     |     |
       |     |     |
      1+-----+2    +----> r

Definition at line 58 of file quad.f90.

Member Function/Subroutine Documentation

◆ centroid() [1/2]

procedure(element_centroid), deferred, pass element::element_t::centroid ( class(element_t), intent(in this)
pure virtualinherited

Definition at line 58 of file element.f90.

◆ centroid() [2/2]

procedure, pass(this) quad::quad_t::centroid ( class(quad_t), intent(in this)

Definition at line 64 of file quad.f90.

◆ diameter() [1/2]

procedure(element_diameter), deferred, pass element::element_t::diameter ( class(element_t), intent(in this)
pure virtualinherited

Definition at line 57 of file element.f90.

◆ diameter() [2/2]

procedure, pass(this) quad::quad_t::diameter ( class(quad_t), intent(in this)

Definition at line 63 of file quad.f90.

◆ element()

procedure, pass(this) element::element_t::element ( class(element_t), intent(inout this,
integer, intent(inout id,
integer, intent(in gdim,
integer, intent(in npts 
)
inherited

Definition at line 49 of file element.f90.

◆ element_point()

procedure, non_overridable, pass element::element_t::element_point ( class(element_t), intent(in this,
integer, intent(in i 
)
finalinherited

Definition at line 55 of file element.f90.

◆ equal() [1/2]

procedure(element_equal), deferred, pass element::element_t::equal ( class(element_t), intent(in this,
class(element_t), intent(in other 
)
pure virtualinherited

Definition at line 56 of file element.f90.

◆ equal() [2/2]

procedure, pass(this) quad::quad_t::equal ( class(quad_t), intent(in this,
class(element_t), intent(in other 
)
Note
Based on coordinates not global ids

Definition at line 65 of file quad.f90.

◆ facet_id() [1/2]

procedure(element_facet_id), deferred, pass element::element_t::facet_id ( class(element_t), intent(in this,
class(tuple_t), intent(inout t,
integer, intent(in side 
)
pure virtualinherited

Definition at line 59 of file element.f90.

◆ facet_id() [2/2]

procedure, pass(this) quad::quad_t::facet_id ( class(quad_t), intent(in this,
class(tuple_t), intent(inout t,
integer, intent(in side 
)
Todo:
sort this

Definition at line 61 of file quad.f90.

◆ facet_order() [1/2]

procedure(element_facet_order), deferred, pass element::element_t::facet_order ( class(element_t), intent(in this,
class(tuple_t), intent(inout t,
integer, intent(in side 
)
pure virtualinherited

Definition at line 60 of file element.f90.

◆ facet_order() [2/2]

procedure, pass(this) quad::quad_t::facet_order ( class(quad_t), intent(in this,
class(tuple_t), intent(inout t,
integer, intent(in side 
)

Definition at line 62 of file quad.f90.

◆ free()

procedure, pass(this) element::element_t::free ( class(element_t), intent(inout this)
inherited

Definition at line 50 of file element.f90.

◆ gdim()

procedure, pass(this) element::element_t::gdim ( class(element_t), intent(in this)
inherited

Definition at line 51 of file element.f90.

◆ id()

procedure, pass(this) entity::entity_t::id ( class(entity_t), intent(in this)
inherited

Definition at line 41 of file entity.f90.

◆ init()

procedure, pass(this) quad::quad_t::init ( class(quad_t), intent(inout this,
integer, intent(inout id,
type(point_t), intent(in), target  p1,
type(point_t), intent(in), target  p2,
type(point_t), intent(in), target  p3,
type(point_t), intent(in), target  p4 
)

Definition at line 60 of file quad.f90.

◆ n_points()

procedure, pass(this) element::element_t::n_points ( class(element_t), intent(in this)
inherited

Definition at line 54 of file element.f90.

◆ npts()

procedure, pass(this) element::element_t::npts ( class(element_t), intent(in this)
inherited

Definition at line 52 of file element.f90.

◆ operator()

generic quad::quad_t::operator ( class(quad_t), intent(in this,
class(element_t), intent(in other 
)
Note
Based on coordinates not global ids

Definition at line 66 of file quad.f90.

◆ p()

procedure, pass(this) element::element_t::p ( class(element_t), intent(in this,
integer, intent(in i 
)
inherited

Definition at line 53 of file element.f90.

◆ set_id()

procedure, pass(this) entity::entity_t::set_id ( class(entity_t), intent(inout this,
integer, intent(in id 
)
inherited

Definition at line 42 of file entity.f90.

Member Data Documentation

◆ gdim_

integer, private element::element_t::gdim_
privateinherited

Definition at line 45 of file element.f90.

◆ id_

integer, private entity::entity_t::id_ = -1
privateinherited

Definition at line 39 of file entity.f90.

◆ npts_

integer, private element::element_t::npts_
privateinherited

Definition at line 46 of file element.f90.

◆ pts

type(point_ptr), dimension(:), allocatable element::element_t::pts
inherited

Definition at line 47 of file element.f90.


The documentation for this type was generated from the following file: