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

Triangular element. More...

Inheritance diagram for tri::tri_t:
Collaboration diagram for tri::tri_t:

Public Member Functions

procedure, pass(thisinit (this, id, p1, p2, p3)
 Create a trinagular element based upon three 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 triangular element.
 
procedure, pass(thiscentroid (this)
 Compute the centroid of a triangular element.
 
procedure, pass(thisequal (this, other)
 Check if two triangle elements are equal.
 
generic operator (this, other)
 Check if two triangle 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 3 points

 Node numbering

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

Definition at line 60 of file tri.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) tri::tri_t::centroid ( class(tri_t), intent(in this)

Definition at line 66 of file tri.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) tri::tri_t::diameter ( class(tri_t), intent(in this)

Definition at line 65 of file tri.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) tri::tri_t::equal ( class(tri_t), intent(in this,
class(element_t), intent(in other 
)
Note
Based on coordinates not global ids

Definition at line 67 of file tri.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) tri::tri_t::facet_id ( class(tri_t), intent(in this,
class(tuple_t), intent(inout t,
integer, intent(in side 
)
Todo:
sort this

Definition at line 63 of file tri.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) tri::tri_t::facet_order ( class(tri_t), intent(in this,
class(tuple_t), intent(inout t,
integer, intent(in side 
)

Definition at line 64 of file tri.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) tri::tri_t::init ( class(tri_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 
)

Definition at line 62 of file tri.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 tri::tri_t::operator ( class(tri_t), intent(in this,
class(element_t), intent(in other 
)
Note
Based on coordinates not global ids

Definition at line 68 of file tri.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: