Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ConnectivitySet question #44

Open
DanielVandH opened this issue Feb 22, 2025 · 0 comments
Open

ConnectivitySet question #44

DanielVandH opened this issue Feb 22, 2025 · 0 comments

Comments

@DanielVandH
Copy link
Contributor

For the ConnectivitySet,

"""
    ConnectivitySet(E_uni, con_E2F, con_E2E, F,  con_F2E, con_F2F, con_V2E, con_V2F, con_V2V, con_V2V_f, con_F2F_v)

# Description 

A struct featuring the connectivity data for a mesh.   
"""
struct ConnectivitySet
    edge_vertex::Vector{LineFace{Int}}
    edge_face::Vector{Vector{Int}}
    edge_edge::Vector{Vector{Int}}
    face_vertex#::Vector{Vector{Int}} # Could be triangle/quad etc
    face_edge::Vector{Vector{Int}}        
    face_face::Vector{Vector{Int}}
    vertex_edge::Vector{Vector{Int}}
    vertex_face::Vector{Vector{Int}}        
    vertex_vertex::Vector{Vector{Int}}
    vertex_vertex_f::Vector{Vector{Int}}
    face_face_v::Vector{Vector{Int}}
    ConnectivitySet(E_uni, con_E2F, con_E2E, F,  con_F2E, con_F2F, con_V2E, con_V2F, con_V2V, con_V2V_f, con_F2F_v) = new(E_uni, con_E2F, con_E2E, F,  con_F2E, con_F2F, con_V2E, con_V2F, con_V2V, con_V2V_f, con_F2F_v) 
end
  • What are the precise definitions of these fields? For example, is edge_vertex a set of all edges, or is there a specific meaning for edge_vertex[i]? I thought it would be a vector of all adjoining vertices but that would Vector{LineFace{Int}} I thought, similar for edge_face being a Vector{Int}.
  • face_vertex is left abstract which could easily cause a lot of performance issues. Is it because you don't want something like a Vector{Union{...}}? An enum or a sum type could be good for handling this case efficiently (https://github.com/MasonProtter/SumTypes.jl). I could look at improving this if there is a fixed world of types used. Any particular demo scripts in examples/ you would recommend for benchmarking?
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant