-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathBlockMapData.jl
64 lines (58 loc) · 1.38 KB
/
BlockMapData.jl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
"""
Contains the data for a BlockMap
"""
mutable struct BlockMapData{GID <: Integer, PID <:Integer, LID <: Integer}
comm::Comm{GID, PID, LID}
directory::Union{Directory, Nothing}
lid::Vector{LID}
myGlobalElements::Vector{GID}
firstPointInElementList::Array{Integer}
elementSizeList::Array{Integer}
pointToElementList::Array{Integer}
numGlobalElements::GID
numMyElements::LID
elementSize::Integer
minMyElementSize::Integer
maxMyElementSize::Integer
minElementSize::Integer
maxElementSize::Integer
minAllGID::GID
maxAllGID::GID
minMyGID::GID
maxMyGID::GID
minLID::LID
maxLID::LID
numGlobalPoints::Integer
numMyPoints::Integer
constantElementSize::Bool
linearMap::Bool
distributedGlobal::Bool
oneToOneIsDetermined::Bool
oneToOne::Bool
lastContiguousGID::GID
lastContiguousGIDLoc::GID
lidHash::Dict{GID, LID}
end
function BlockMapData(numGlobalElements::GID, comm::Comm{GID, PID, LID}) where GID <: Integer where PID <: Integer where LID <: Integer
BlockMapData(
comm,
nothing,
LID[],
GID[],
numGlobalElements,
LID(0),
GID(0),
GID(0),
GID(0),
GID(0),
LID(0),
LID(0),
false,
false,
false,
false,
GID(0),
GID(0),
Dict{GID, LID}()
)
end