-
Notifications
You must be signed in to change notification settings - Fork 100
/
Copy pathArrays.jl
160 lines (124 loc) · 2.88 KB
/
Arrays.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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
"""
This module provides:
- An extension of the `AbstractArray` interface in order to properly deal with mutable caches.
- A mechanism to generate lazy arrays resulting from operations between arrays.
- A collection of concrete implementations of `AbstractArray`.
The exported names in this module are:
$(EXPORTS)
"""
module Arrays
using Gridap.Helpers
using Gridap.Inference
using Gridap.Algebra
using DocStringExtensions
using Test
using FillArrays
using Base: @propagate_inbounds
using LinearAlgebra
using ForwardDiff
using BlockArrays
export BlockArrayCoo
export BlockVectorCoo
export BlockMatrixCoo
export is_zero_block
export is_nonzero_block
export enumerateblocks
export eachblockindex
export VectorOfBlockArrayCoo
export VectorOfBlockVectorCoo
export VectorOfBlockMatrixCoo
export zeros_like
export TwoLevelBlockedUnitRange
export array_cache
export getindex!
export getitems!
export getitems
export testitem
export uses_hash
export test_array
export testitems
export array_caches
export get_array
export get_arrays
export add_to_array!
export CachedArray
export CachedMatrix
export CachedVector
export setsize!
export setaxes!
export CompressedArray
export LocalToGlobalArray
export LocalToGlobalPosNegArray
export FilteredCellArray
export kernel_cache
export kernel_caches
export apply_kernels!
export apply_kernel!
export apply_kernel
export test_kernel
export bcast
export elem
export contract
export MulKernel
export MulAddKernel
export kernel_return_type
export kernel_return_types
export kernel_testitem
export Kernel
export apply
export apply_all
export Table
export identity_table
export empty_table
export rewind_ptrs!
export length_to_ptrs!
export append_ptrs
export append_ptrs!
export get_ptrs_eltype
export get_data_eltype
export generate_data_and_ptrs
export find_inverse_index_map
export find_inverse_index_map!
export append_tables_globally
export append_tables_locally
export flatten_partition
export collect1d
export UNSET
export get_local_item
export find_local_index
export reindex
export identity_vector
export SubVector
export pair_arrays
export unpair_arrays
export lazy_append
export lazy_split
export AppendedArray
export autodiff_array_gradient
export autodiff_array_jacobian
export autodiff_array_hessian
import Base: size
import Base: getindex, setindex!
import Base: similar
import Base: IndexStyle
import Gridap.Io: to_dict
import Gridap.Io: from_dict
import Gridap.Algebra: scale_entries!
include("Interface.jl")
include("BlockArraysCoo.jl")
include("CachedArrays.jl")
include("Kernels.jl")
include("Apply.jl")
include("CompressedArrays.jl")
include("Tables.jl")
include("LocalToGlobalArrays.jl")
include("LocalToGlobalPosNegArrays.jl")
include("FilteredArrays.jl")
include("Reindex.jl")
include("IdentityVectors.jl")
include("SubVectors.jl")
include("ArrayPairs.jl")
include("AppendedArrays.jl")
include("VectorsOfBlockArrayCoo.jl")
include("Autodiff.jl")
end # module