42 type(
tri_t),
allocatable :: el(:)
57 integer,
intent(in) :: nelv
62 allocate(this%el(this%nelv))
74 if (
allocated(this%el))
then
78 if (
allocated(this%points))
then
79 deallocate(this%points)
87 type(
point_t),
target,
intent(inout) :: p1, p2, p3
89 this%points(this%mpts + 1) = p1
90 this%points(this%mpts + 2) = p2
91 this%points(this%mpts + 3) = p3
93 this%nelv = this%nelv + 1
94 call this%el(this%nelv)%init(this%nelv, &
95 this%points(this%mpts + 1), &
96 this%points(this%mpts + 2), &
97 this%points(this%mpts + 3))
98 this%mpts = this%mpts + 3
Defines a triangular surface mesh.
subroutine tri_mesh_init(this, nelv)
Initialise a triangular surface mesh.
subroutine tri_mesh_add_element(this, p1, p2, p3)
Add an element to a mesh.
subroutine tri_mesh_free(this)
Deallocate a triangular surface mesh.
Defines a triangular element.
integer, parameter, public neko_tri_npts
Number of points.
A point in with coordinates .