From a332d79736ff1f3fc12393d5a3f915cce0a15d64 Mon Sep 17 00:00:00 2001 From: Jukka Aho Date: Sun, 9 Nov 2025 21:03:39 +0200 Subject: [PATCH] fix(elements): Update Poi1 to non-parametric AbstractBasis Changes to src/elements/elements_lagrange.jl: - Changed Poi1 from AbstractBasis{0} to AbstractBasis (non-parametric) - Added nnodes(::Type{Poi1}) = 1 method - Added nnodes(::Poi1) = 1 instance method - Added comment explaining Poi1 as 0D point element - Resolves type parameter mismatch with new AbstractBasis definition --- src/elements/elements_lagrange.jl | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/elements/elements_lagrange.jl b/src/elements/elements_lagrange.jl index 2a0e718..6ee3563 100644 --- a/src/elements/elements_lagrange.jl +++ b/src/elements/elements_lagrange.jl @@ -1,7 +1,12 @@ # This file is a part of JuliaFEM. # License is MIT: see https://github.com/JuliaFEM/FEMBase.jl/blob/master/LICENSE -struct Poi1 <: AbstractBasis{0} end +# Poi1: 0D point element (single node, no parametric coordinates) +struct Poi1 <: AbstractBasis end + +# nnodes for Poi1 +nnodes(::Type{Poi1}) = 1 +nnodes(::Poi1) = 1 function get_basis(::E, ::Any, ::Any) where E<:AbstractElement{M,Poi1} where M return [1]