@@ -8,11 +8,11 @@ export get_kdtree
8
8
export get_TPS_mats
9
9
10
10
"""
11
- get_kdtree(space::IMASdd.edge_profiles__grid_ggd___space )
11
+ get_kdtree(space::all__space )
12
12
13
13
Get a KDTree for all the cells in the space for search for nearest neighbours.
14
14
"""
15
- function get_kdtree (space:: IMASdd.edge_profiles__grid_ggd___space )
15
+ function get_kdtree (space:: all__space )
16
16
grid_nodes = space. objects_per_dimension[1 ]. object
17
17
grid_faces = space. objects_per_dimension[3 ]. object
18
18
grid_faces = [cell for cell ∈ grid_faces if length (cell. nodes) == 4 ]
25
25
26
26
"""
27
27
get_kdtree(
28
- space::IMASdd.edge_profiles__grid_ggd___space ,
29
- subset::IMASdd.edge_profiles__grid_ggd___grid_subset ,
28
+ space::all__space ,
29
+ subset::all__grid_subset ,
30
30
)
31
31
32
32
Get a KDTree for a subset of the space for search for nearest neighbours.
33
33
"""
34
34
function get_kdtree (
35
- space:: IMASdd.edge_profiles__grid_ggd___space ,
36
- subset:: IMASdd.edge_profiles__grid_ggd___grid_subset ,
35
+ space:: all__space ,
36
+ subset:: all__grid_subset ,
37
37
)
38
38
subset_centers = get_subset_centers (space, subset)
39
39
return KDTree ([SVector {2} (sc) for sc ∈ subset_centers]; leafsize= 10 )
@@ -178,15 +178,15 @@ function interp(y::Vector{T}, x::Vector{Tuple{U, U}}) where {T <: Real, U <: Rea
178
178
return interp (y, get_TPS_mats (x))
179
179
end
180
180
181
- function get_TPS_mats (space:: IMASdd.edge_profiles__grid_ggd___space )
181
+ function get_TPS_mats (space:: all__space )
182
182
nodes = [Tuple (node. geometry) for node ∈ space. objects_per_dimension[1 ]. object]
183
183
return get_TPS_mats (nodes)
184
184
end
185
185
186
186
"""
187
187
interp(
188
188
prop_values::Vector{T},
189
- space::IMASdd.edge_profiles__grid_ggd___space
189
+ space::all__space
190
190
) where {T <: Real}
191
191
192
192
If the whole space is provided instead of a kdtree, calculate the kdtree for whole
@@ -195,40 +195,40 @@ of the space.
195
195
"""
196
196
function interp (
197
197
prop_values:: Vector{T} ,
198
- space:: IMASdd.edge_profiles__grid_ggd___space ,
198
+ space:: all__space ,
199
199
) where {T <: Real }
200
200
return interp (prop_values, get_TPS_mats (space))
201
201
end
202
202
203
203
function get_TPS_mats (
204
- space:: IMASdd.edge_profiles__grid_ggd___space ,
205
- subset:: IMASdd.edge_profiles__grid_ggd___grid_subset ,
204
+ space:: all__space ,
205
+ subset:: all__grid_subset ,
206
206
)
207
207
return get_TPS_mats (get_subset_centers (space, subset))
208
208
end
209
209
210
210
"""
211
211
interp(
212
212
prop_values::Vector{Real},
213
- space::IMASdd.edge_profiles__grid_ggd___space ,
214
- subset::IMASdd.edge_profiles__grid_ggd___grid_subset
213
+ space::all__space ,
214
+ subset::all__grid_subset
215
215
)
216
216
217
217
If a subset of the space is provided, calculate the kdtree for the subset. In this case
218
218
it is assumed that the property values are provided for each element of the subset.
219
219
"""
220
220
function interp (
221
221
prop_values:: Vector{T} ,
222
- space:: IMASdd.edge_profiles__grid_ggd___space ,
223
- subset:: IMASdd.edge_profiles__grid_ggd___grid_subset ,
222
+ space:: all__space ,
223
+ subset:: all__grid_subset ,
224
224
) where {T <: Real }
225
225
return interp (prop_values, get_TPS_mats (space, subset))
226
226
end
227
227
228
228
"""
229
229
interp(
230
- prop::edge_profiles__prop_on_subset ,
231
- grid_ggd::IMASdd.edge_profiles__grid_ggd ,
230
+ prop::all__grid_subset_prop ,
231
+ grid_ggd::all__grid_ggd ,
232
232
value_field::Symbol=:values
233
233
)
234
234
@@ -241,8 +241,8 @@ get_e_field_par = interp(dd.edge_profiles.ggd[1].e_field[1], grid_ggd, :parallel
241
241
```
242
242
"""
243
243
function interp (
244
- prop:: edge_profiles__prop_on_subset ,
245
- grid_ggd:: IMASdd.edge_profiles__grid_ggd ,
244
+ prop:: all__grid_subset_prop ,
245
+ grid_ggd:: all__grid_ggd ,
246
246
value_field:: Symbol = :values ,
247
247
)
248
248
subset = get_grid_subset (grid_ggd, prop. grid_subset_index)
@@ -253,10 +253,10 @@ end
253
253
"""
254
254
interp(
255
255
prop_arr::AbstractVector{T},
256
- space::IMASdd.edge_profiles__grid_ggd___space ,
257
- subset::IMASdd.edge_profiles__grid_ggd___grid_subset ,
256
+ space::all__space ,
257
+ subset::all__grid_subset ,
258
258
value_field::Symbol=:values
259
- ) where {T <: edge_profiles__prop_on_subset }
259
+ ) where {T <: all__grid_subset_prop }
260
260
261
261
Example:
262
262
@@ -267,21 +267,21 @@ get_electron_density = interp(dd.edge_profiles.ggd[1].electrons.density, space,
267
267
"""
268
268
function interp (
269
269
prop_arr:: AbstractVector{T} ,
270
- space:: IMASdd.edge_profiles__grid_ggd___space ,
271
- subset:: IMASdd.edge_profiles__grid_ggd___grid_subset ,
270
+ space:: all__space ,
271
+ subset:: all__grid_subset ,
272
272
value_field:: Symbol = :values ,
273
- ) where {T <: edge_profiles__prop_on_subset }
273
+ ) where {T <: all__grid_subset_prop }
274
274
prop = get_prop_with_grid_subset_index (prop_arr, subset. identifier. index)
275
275
return interp (getfield (prop, value_field), space, subset)
276
276
end
277
277
278
278
"""
279
279
interp(
280
280
prop_arr::AbstractVector{T},
281
- grid_ggd::IMASdd.edge_profiles__grid_ggd ,
281
+ grid_ggd::all__grid_ggd ,
282
282
grid_subset_index::Int,
283
283
value_field::Symbol=:values
284
- ) where {T <: edge_profiles__prop_on_subset }
284
+ ) where {T <: all__grid_subset_prop }
285
285
286
286
Example:
287
287
@@ -291,17 +291,17 @@ get_n_e_sep = interp(dd.edge_profiles.ggd[1].electrons.density, grid_ggd, 16)
291
291
"""
292
292
function interp (
293
293
prop_arr:: AbstractVector{T} ,
294
- grid_ggd:: IMASdd.edge_profiles__grid_ggd ,
294
+ grid_ggd:: all__grid_ggd ,
295
295
grid_subset_index:: Int ,
296
296
value_field:: Symbol = :values ,
297
- ) where {T <: edge_profiles__prop_on_subset }
297
+ ) where {T <: all__grid_subset_prop }
298
298
prop = get_prop_with_grid_subset_index (prop_arr, grid_subset_index)
299
299
subset = get_grid_subset (grid_ggd, grid_subset_index)
300
300
space = grid_ggd. space[subset. element[1 ]. object[1 ]. space]
301
301
return interp (getfield (prop, value_field), space, subset)
302
302
end
303
303
304
- function get_TPS_mats (grid_ggd:: IMASdd.edge_profiles__grid_ggd , grid_subset_index:: Int )
304
+ function get_TPS_mats (grid_ggd:: all__grid_ggd , grid_subset_index:: Int )
305
305
subset = get_grid_subset (grid_ggd, grid_subset_index)
306
306
space = grid_ggd. space[subset. element[1 ]. object[1 ]. space]
307
307
return get_TPS_mats (space, subset)
313
313
TPS_mats::Tuple{Matrix{U}, Matrix{U}, Matrix{U}, Vector{Tuple{U, U}}},
314
314
grid_subset_index::Int,
315
315
value_field::Val{V}=Val(:values),
316
- ) where {T <: edge_profiles__prop_on_subset , U <: Real, V}
316
+ ) where {T <: all__grid_subset_prop , U <: Real, V}
317
317
318
318
Same use case as above but allows one to reuse previously calculated TPS matrices.
319
319
@@ -335,7 +335,7 @@ function interp(
335
335
TPS_mats:: Tuple{Matrix{U}, Matrix{U}, Matrix{U}, Vector{Tuple{U, U}}} ,
336
336
grid_subset_index:: Int ,
337
337
value_field:: Val{V} = Val (:values ),
338
- ) where {T <: edge_profiles__prop_on_subset , U <: Real , V}
338
+ ) where {T <: all__grid_subset_prop , U <: Real , V}
339
339
prop = get_prop_with_grid_subset_index (prop_arr, grid_subset_index)
340
340
field = getfield (prop, V)
341
341
return interp (field, TPS_mats)
0 commit comments