Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enable generation of coarse meshes through R-tree #47

Merged
merged 3 commits into from
Dec 7, 2023
Merged

Conversation

fdrmrc
Copy link
Owner

@fdrmrc fdrmrc commented Dec 5, 2023

This PR introduces the visitor required to build coarse meshes out of finer one by using the R-tree. Its implementation is in include/rtree_visitor.h. The function PolyUtils::extract_children_of_level(rtree,level) returns the required information.

@fdrmrc
Copy link
Owner Author

fdrmrc commented Dec 5, 2023

I'll add a test tomorrow. This PR will also fix the CI error on master (this function is missing).

@fdrmrc
Copy link
Owner Author

fdrmrc commented Dec 6, 2023

I've added a test. It starts with a hyper_cube with 1024 elements and uses the R-tree to produce uniform partitions (see hidden output)

Extraction level = 1
Size of fine triangulation: 1024
Total number of available levels: 4
N subdomains = 4
256 cells have subdomain id = 0
256 cells have subdomain id = 1
256 cells have subdomain id = 2
256 cells have subdomain id = 3

Extraction level = 2
Size of fine triangulation: 1024
Total number of available levels: 4
N subdomains = 16
64 cells have subdomain id = 0
64 cells have subdomain id = 1
64 cells have subdomain id = 2
64 cells have subdomain id = 3
64 cells have subdomain id = 4
64 cells have subdomain id = 5
64 cells have subdomain id = 6
64 cells have subdomain id = 7
64 cells have subdomain id = 8
64 cells have subdomain id = 9
64 cells have subdomain id = 10
64 cells have subdomain id = 11
64 cells have subdomain id = 12
64 cells have subdomain id = 13
64 cells have subdomain id = 14
64 cells have subdomain id = 15

Extraction level = 3
Size of fine triangulation: 1024
Total number of available levels: 4
N subdomains = 64
16 cells have subdomain id = 0
16 cells have subdomain id = 1
16 cells have subdomain id = 2
16 cells have subdomain id = 3
16 cells have subdomain id = 4
16 cells have subdomain id = 5
16 cells have subdomain id = 6
16 cells have subdomain id = 7
16 cells have subdomain id = 8
16 cells have subdomain id = 9
16 cells have subdomain id = 10
16 cells have subdomain id = 11
16 cells have subdomain id = 12
16 cells have subdomain id = 13
16 cells have subdomain id = 14
16 cells have subdomain id = 15
16 cells have subdomain id = 16
16 cells have subdomain id = 17
16 cells have subdomain id = 18
16 cells have subdomain id = 19
16 cells have subdomain id = 20
16 cells have subdomain id = 21
16 cells have subdomain id = 22
16 cells have subdomain id = 23
16 cells have subdomain id = 24
16 cells have subdomain id = 25
16 cells have subdomain id = 26
16 cells have subdomain id = 27
16 cells have subdomain id = 28
16 cells have subdomain id = 29
16 cells have subdomain id = 30
16 cells have subdomain id = 31
16 cells have subdomain id = 32
16 cells have subdomain id = 33
16 cells have subdomain id = 34
16 cells have subdomain id = 35
16 cells have subdomain id = 36
16 cells have subdomain id = 37
16 cells have subdomain id = 38
16 cells have subdomain id = 39
16 cells have subdomain id = 40
16 cells have subdomain id = 41
16 cells have subdomain id = 42
16 cells have subdomain id = 43
16 cells have subdomain id = 44
16 cells have subdomain id = 45
16 cells have subdomain id = 46
16 cells have subdomain id = 47
16 cells have subdomain id = 48
16 cells have subdomain id = 49
16 cells have subdomain id = 50
16 cells have subdomain id = 51
16 cells have subdomain id = 52
16 cells have subdomain id = 53
16 cells have subdomain id = 54
16 cells have subdomain id = 55
16 cells have subdomain id = 56
16 cells have subdomain id = 57
16 cells have subdomain id = 58
16 cells have subdomain id = 59
16 cells have subdomain id = 60
16 cells have subdomain id = 61
16 cells have subdomain id = 62
16 cells have subdomain id = 63

@fdrmrc fdrmrc merged commit 0427841 into main Dec 7, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant