69
69
70
70
# Functions for CUDASpectralStyle
71
71
struct PlaceholderSpace <: Spaces.AbstractSpace end
72
+ struct LevelPlaceholderSpace <: Spaces.AbstractSpace end
72
73
struct CenterPlaceholderSpace <: Spaces.AbstractSpace end
73
74
struct FacePlaceholderSpace <: Spaces.AbstractSpace end
74
75
75
-
76
+ placeholder_space (current_space, parent_space) = current_space
76
77
placeholder_space (current_space:: T , parent_space:: T ) where {T} =
77
78
PlaceholderSpace ()
78
- placeholder_space (current_space, parent_space) = current_space
79
+ placeholder_space (
80
+ current_space:: Spaces.AbstractPointSpace ,
81
+ parent_space:: Spaces.AbstractFiniteDifferenceSpace ,
82
+ ) = LevelPlaceholderSpace ()
83
+ placeholder_space (
84
+ current_space:: Spaces.AbstractSpectralElementSpace ,
85
+ parent_space:: Spaces.ExtrudedFiniteDifferenceSpace ,
86
+ ) = LevelPlaceholderSpace ()
79
87
placeholder_space (
80
88
current_space:: Spaces.CenterFiniteDifferenceSpace ,
81
89
parent_space:: Spaces.FaceFiniteDifferenceSpace ,
@@ -93,8 +101,12 @@ placeholder_space(
93
101
parent_space:: Spaces.CenterExtrudedFiniteDifferenceSpace ,
94
102
) = FacePlaceholderSpace ()
95
103
104
+ @inline reconstruct_placeholder_space (current_space, parent_space) =
105
+ current_space
96
106
@inline reconstruct_placeholder_space (:: PlaceholderSpace , parent_space) =
97
107
parent_space
108
+ @inline reconstruct_placeholder_space (:: LevelPlaceholderSpace , parent_space) =
109
+ Spaces. level (parent_space, left_idx (parent_space)) # extract any level
98
110
@inline reconstruct_placeholder_space (
99
111
:: CenterPlaceholderSpace ,
100
112
parent_space:: Spaces.FaceFiniteDifferenceSpace ,
@@ -111,9 +123,6 @@ placeholder_space(
111
123
:: FacePlaceholderSpace ,
112
124
parent_space:: Spaces.CenterExtrudedFiniteDifferenceSpace ,
113
125
) = Spaces. FaceExtrudedFiniteDifferenceSpace (parent_space)
114
- @inline reconstruct_placeholder_space (current_space, parent_space) =
115
- current_space
116
-
117
126
118
127
strip_space (obj, parent_space) = obj
119
128
0 commit comments