@@ -53,7 +53,8 @@ abstract type AbstractData{S} end
53
53
54
54
struct ArraySize{FD, Nf, S} end
55
55
@inline ArraySize (data:: AbstractData , i:: Integer ) = ArraySize (data)[i]
56
- @inline ArraySize (data:: AbstractData ) = ArraySize {field_dim(data), ncomponents(data), farray_size(data)} ()
56
+ @inline ArraySize (data:: AbstractData ) =
57
+ ArraySize {field_dim(data), ncomponents(data), farray_size(data)} ()
57
58
@inline Base. ndims (:: ArraySize{FD, Nf, S} ) where {FD, Nf, S} = length (S)
58
59
@inline Base. ndims (:: Type{ArraySize{FD, Nf, S}} ) where {FD, Nf, S} = length (S)
59
60
@@ -382,7 +383,7 @@ function IJFH{S, Nij, Nh}(array::AbstractArray{T, 4}) where {S, Nij, Nh, T}
382
383
@assert size (array, 3 ) == typesize (T, S)
383
384
@assert size (array, 4 ) == Nh
384
385
# fa = field_array(array, IJFHSingleton())
385
- fa = field_array (array, ArraySize {3,Nf,(Nij,Nij,Nf,Nh)} ())
386
+ fa = field_array (array, ArraySize {3, Nf, (Nij, Nij, Nf, Nh)} ())
386
387
@assert ncomponents (fa) == typesize (T, S)
387
388
IJFH {S, Nij, Nh, typeof(fa)} (fa)
388
389
end
417
418
@boundscheck (1 <= j <= Nij && 1 <= i <= Nij && 1 <= h <= get_Nh (data)) ||
418
419
throw (BoundsError (data, (i, j, h)))
419
420
fa = field_array (data)
420
- sub_arrays = @inbounds ntuple (f -> view (fa. arrays[f], i, j, h), ncomponents (fa))
421
+ sub_arrays =
422
+ @inbounds ntuple (f -> view (fa. arrays[f], i, j, h), ncomponents (fa))
421
423
dataview = FieldArray {field_dim(DataF)} (sub_arrays)
422
424
DataF {S, typeof(dataview)} (dataview)
423
425
end
@@ -620,7 +622,9 @@ IJF{S, Nij}(fa::FieldArray) where {S, Nij} = IJF{S, Nij, typeof(fa)}(fa)
620
622
function IJF {S, Nij} (:: Type{MArray} , :: Type{T} ) where {S, Nij, T}
621
623
Nf = typesize (T, S)
622
624
# array = MArray{Tuple{Nij, Nij, Nf}, T, 3, Nij * Nij * Nf}(undef)
623
- array = FieldArray {field_dim(IJF)} (ntuple (f-> MArray {Tuple{Nij, Nij}, T, 2, Nij * Nij} (undef), Nf))
625
+ array = FieldArray {field_dim(IJF)} (
626
+ ntuple (f -> MArray {Tuple{Nij, Nij}, T, 2, Nij * Nij} (undef), Nf),
627
+ )
624
628
IJF {S, Nij} (array)
625
629
end
626
630
function SArray (ijf:: IJF{S, Nij, <:FieldArray} ) where {S, Nij}
682
686
function IF {S, Ni} (:: Type{MArray} , :: Type{T} ) where {S, Ni, T}
683
687
Nf = typesize (T, S)
684
688
# array = MArray{Tuple{Ni, Nf}, T, 2, Ni * Nf}(undef)
685
- fa = FieldArray {field_dim(IF)} (ntuple (f-> MArray {Tuple{Ni}, T, 1, Ni} (undef), Nf))
689
+ fa = FieldArray {field_dim(IF)} (
690
+ ntuple (f -> MArray {Tuple{Ni}, T, 1, Ni} (undef), Nf),
691
+ )
686
692
IF {S, Ni} (fa)
687
693
end
688
694
function SArray (data:: IF{S, Ni, <:FieldArray} ) where {S, Ni}
@@ -917,10 +923,7 @@ Base.length(data::VIFH) = nlevels(data) * get_Nh(data)
917
923
throw (BoundsError (data, (v, h)))
918
924
Nf = ncomponents (data)
919
925
sub_arrays = @inbounds ntuple (ncomponents (data)) do f
920
- SubArray (
921
- array. arrays[f],
922
- (v, Base. Slice (Base. OneTo (Ni)), h),
923
- )
926
+ SubArray (array. arrays[f], (v, Base. Slice (Base. OneTo (Ni)), h))
924
927
end
925
928
dataview = FieldArray {field_dim(IF)} (sub_arrays)
926
929
IF {S, Ni} (dataview)
950
953
throw (BoundsError (data, (i, j, h)))
951
954
Nf = ncomponents (data)
952
955
sub_arrays = @inbounds ntuple (Nf) do f
953
- SubArray (
954
- parent (array. arrays[f]),
955
- (Base. Slice (Base. OneTo (Nv)), i, h),
956
- )
956
+ SubArray (parent (array. arrays[f]), (Base. Slice (Base. OneTo (Nv)), i, h))
957
957
end
958
958
dataview = FieldArray {field_dim(VF)} (sub_arrays)
959
959
VF {S, Nv} (dataview)
@@ -1010,8 +1010,11 @@ end
1010
1010
n2 = div (N2, Nij)
1011
1011
z2, z1 = fldmod (h - 1 , n1)
1012
1012
@boundscheck (1 <= h <= n1 * n2) || throw (BoundsError (data, (h,)))
1013
- dataview =
1014
- @inbounds view (field_array (data), Nij * z1 .+ (1 : Nij), Nij * z2 .+ (1 : Nij))
1013
+ dataview = @inbounds view (
1014
+ field_array (data),
1015
+ Nij * z1 .+ (1 : Nij),
1016
+ Nij * z2 .+ (1 : Nij),
1017
+ )
1015
1018
return dataview
1016
1019
end
1017
1020
@@ -1322,7 +1325,13 @@ end
1322
1325
) where {S}
1323
1326
s_array = farray_size (data)
1324
1327
ss = StaticSize (s_array, field_dim (data))
1325
- @inbounds get_struct_linear (field_array (data), S, Val (field_dim (data)), ss, I)
1328
+ @inbounds get_struct_linear (
1329
+ field_array (data),
1330
+ S,
1331
+ Val (field_dim (data)),
1332
+ ss,
1333
+ I,
1334
+ )
1326
1335
end
1327
1336
@propagate_inbounds function linear_setindex! (
1328
1337
data:: AbstractData{S} ,
0 commit comments