feat(topology): vacuum coordinate and multi block
Two major changes in this version. First stroid now embeds a vacuum coordinate as part of its StroidMesh file (this is a packed set of mfem meshes and GridFunction). This is a logical coordinate from 0 at the stellar surface to 1 at the mesh surface / compactified infinity which can be used by consumers to much more stablly infer position in the vacuum region. Second, there is a new topology backend, multi_block, which has been made the default. See the readme for more information but the basic jist is that multi_block addes 6 transition blocks onto the edge of the core domain. This allows for a much more well conditioned transition from the internal cartesien region to the external spherical region. The mesh conditioning improves by roughly a factor of 1000 for the same refinement level when compared to the legacy topology. The legacy topology is maintained as a option if core_mapping is set to spherified in the config.
This commit is contained in:
@@ -41,7 +41,7 @@ if get_option('build_python')
|
||||
endif
|
||||
|
||||
libstroid = static_library(
|
||||
'libstroid',
|
||||
'stroid',
|
||||
stroid_sources,
|
||||
include_directories: stroid_include_files,
|
||||
dependencies: dependencies,
|
||||
@@ -52,11 +52,11 @@ if get_option('build_python')
|
||||
)
|
||||
else
|
||||
libstroid = static_library(
|
||||
'libstroid',
|
||||
'stroid',
|
||||
stroid_sources,
|
||||
include_directories: stroid_include_files,
|
||||
dependencies: dependencies,
|
||||
install: true,
|
||||
install: true
|
||||
)
|
||||
endif
|
||||
|
||||
@@ -81,7 +81,9 @@ endif
|
||||
|
||||
meson.override_dependency('stroid', stroid_dep)
|
||||
|
||||
message('stroid include dir: ' + stroid_includedir)
|
||||
install_subdir(
|
||||
'include/stroid',
|
||||
install_dir: get_option('includedir') / 'stroid'
|
||||
install_dir: stroid_includedir,
|
||||
exclude_files: ['version.h.in']
|
||||
)
|
||||
Reference in New Issue
Block a user