You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It looks that this is kind of normal situation, that some basis functions need to be calculated "in the fly" based on the actual geometry. And the same topology can have different basis functions depending on the problem. We can default the basis function evaluation to Lagrange nodal basis, but we should also offer an option to create more complex basis functions which cannot necessarily be constructed beforehand.
For constructing nodal basis functions, we could have something like
struct Tri3 endstruct Lagrange end
X = ((0.0,0.0), (1.0,0.0), (0.0,1.0))
p = :(1+ u + v)
@create_basis(Lagrange, Tri3, p, X)
And after that, we can evaluate basis functions
get_basis(Lagrange(), Tri3(), xi)
get_basis(Tri3(), xi) # defaults to Lagrange..?
Then, we could also implement e.g. that DKT basis, but for that, we need the geometry of the element:
There is even more complicated situations, where the basis functions depends not only the element geometry, but also geometry from surrounding elements, like bi-orthogonal basis in contact mechanics.
The text was updated successfully, but these errors were encountered:
In the next minor, we should somehow solve the issue of having multiple basis functions for the same topology. Motivation comes here: https://github.com/JuliaFEM/FEMPlates.jl/blob/master/src/dkt.jl#L34
It looks that this is kind of normal situation, that some basis functions need to be calculated "in the fly" based on the actual geometry. And the same topology can have different basis functions depending on the problem. We can default the basis function evaluation to Lagrange nodal basis, but we should also offer an option to create more complex basis functions which cannot necessarily be constructed beforehand.
For constructing nodal basis functions, we could have something like
And after that, we can evaluate basis functions
Then, we could also implement e.g. that DKT basis, but for that, we need the geometry of the element:
There is even more complicated situations, where the basis functions depends not only the element geometry, but also geometry from surrounding elements, like bi-orthogonal basis in contact mechanics.
The text was updated successfully, but these errors were encountered: