2026-03-20 13:27:11 -04:00
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
< html xmlns = "http://www.w3.org/1999/xhtml" lang = "en-US" >
< head >
< meta http-equiv = "Content-Type" content = "text/xhtml;charset=UTF-8" / >
< meta http-equiv = "X-UA-Compatible" content = "IE=11" / >
< meta name = "generator" content = "Doxygen 1.13.2" / >
< meta name = "viewport" content = "width=device-width, initial-scale=1" / >
< title > stroid: stroid::config::MeshConfig Struct Reference< / title >
< link rel = "icon" href = "Logo.png" type = "image/x-icon" / >
< link href = "tabs.css" rel = "stylesheet" type = "text/css" / >
< script type = "text/javascript" src = "jquery.js" > < / script >
< script type = "text/javascript" src = "dynsections.js" > < / script >
< script type = "text/javascript" src = "clipboard.js" > < / script >
< link href = "navtree.css" rel = "stylesheet" type = "text/css" / >
< script type = "text/javascript" src = "navtreedata.js" > < / script >
< script type = "text/javascript" src = "navtree.js" > < / script >
< script type = "text/javascript" src = "resize.js" > < / script >
< script type = "text/javascript" src = "cookie.js" > < / script >
< link href = "search/search.css" rel = "stylesheet" type = "text/css" / >
< script type = "text/javascript" src = "search/searchdata.js" > < / script >
< script type = "text/javascript" src = "search/search.js" > < / script >
< link href = "doxygen.css" rel = "stylesheet" type = "text/css" / >
< link href = "doxygen-awesome.css" rel = "stylesheet" type = "text/css" / >
< link href = "doxygen-awesome-sidebar-only.css" rel = "stylesheet" type = "text/css" / >
< / head >
< body >
< div id = "top" > <!-- do not remove this div, it is closed by doxygen! -->
< div id = "titlearea" >
< table cellspacing = "0" cellpadding = "0" >
< tbody >
< tr id = "projectrow" >
< td id = "projectlogo" > < img alt = "Logo" src = "Logo.png" / > < / td >
< td id = "projectalign" >
2026-09-09 12:39:53 -04:00
< div id = "projectname" > stroid< span id = "projectnumber" >   v0.6.0< / span >
2026-03-20 13:27:11 -04:00
< / div >
< div id = "projectbrief" > Multi-block curvilinear mesh generation< / div >
< / td >
< / tr >
< / tbody >
< / table >
< / div >
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
< script type = "text/javascript" >
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699& dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
< / script >
< script type = "text/javascript" >
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699& dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
< / script >
< script type = "text/javascript" src = "menudata.js" > < / script >
< script type = "text/javascript" src = "menu.js" > < / script >
< script type = "text/javascript" >
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699& dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
/* @license-end */
< / script >
< div id = "main-nav" > < / div >
< / div > <!-- top -->
< div id = "side-nav" class = "ui-resizable side-nav-resizable" >
< div id = "nav-tree" >
< div id = "nav-tree-contents" >
< div id = "nav-sync" class = "sync" > < / div >
< / div >
< / div >
< div id = "splitbar" style = "-moz-user-select:none;"
class="ui-resizable-handle">
< / div >
< / div >
< script type = "text/javascript" >
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699& dn=expat.txt MIT */
$(function(){initNavTree('structstroid_1_1config_1_1_mesh_config.html',''); initResizable(true); });
/* @license-end */
< / script >
< div id = "doc-content" >
<!-- window showing the filter options -->
< div id = "MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
< / div >
<!-- iframe showing the search results (closed by default) -->
< div id = "MSearchResultsWindow" >
< div id = "MSearchResults" >
< div class = "SRPage" >
< div id = "SRIndex" >
< div id = "SRResults" > < / div >
< div class = "SRStatus" id = "Loading" > Loading...< / div >
< div class = "SRStatus" id = "Searching" > Searching...< / div >
< div class = "SRStatus" id = "NoMatches" > No Matches< / div >
< / div >
< / div >
< / div >
< / div >
< div class = "header" >
< div class = "summary" >
< a href = "#pub-attribs" > Public Attributes< / a > |
< a href = "structstroid_1_1config_1_1_mesh_config-members.html" > List of all members< / a > < / div >
< div class = "headertitle" > < div class = "title" > stroid::config::MeshConfig Struct Reference< / div > < / div >
< / div > <!-- header -->
< div class = "contents" >
< p > Configuration parameters for stroid mesh generation.
< a href = "#details" > More...< / a > < / p >
< p > < code > #include < config.h> < / code > < / p >
< table class = "memberdecls" >
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a id = "pub-attribs" name = "pub-attribs" > < / a >
Public Attributes< / h2 > < / td > < / tr >
2026-09-09 12:39:53 -04:00
< tr class = "memitem:abb2757a2e4cbd63bb2b878ef5fccb95c" id = "r_abb2757a2e4cbd63bb2b878ef5fccb95c" > < td class = "memItemLeft" align = "right" valign = "top" > std::optional< int >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#abb2757a2e4cbd63bb2b878ef5fccb95c" > refinement_levels< / a > = 4< / td > < / tr >
< tr class = "memdesc:abb2757a2e4cbd63bb2b878ef5fccb95c" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Stellar refinement depth, or uniform depth when vacuum overrides are absent. < br / > < / td > < / tr >
< tr class = "separator:abb2757a2e4cbd63bb2b878ef5fccb95c" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:adbfd27ab0f86beedb15ecb1a2e8d92c9" id = "r_adbfd27ab0f86beedb15ecb1a2e8d92c9" > < td class = "memItemLeft" align = "right" valign = "top" > std::optional< int >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#adbfd27ab0f86beedb15ecb1a2e8d92c9" > vacuum_refinement_levels< / a > = std::nullopt< / td > < / tr >
< tr class = "memdesc:adbfd27ab0f86beedb15ecb1a2e8d92c9" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Minimum refinement depth in the vacuum interior; unset inherits < code > refinement_levels< / code > . < br / > < / td > < / tr >
< tr class = "separator:adbfd27ab0f86beedb15ecb1a2e8d92c9" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a8cf8a78cb10342afeaaaf55f2ec5f673" id = "r_a8cf8a78cb10342afeaaaf55f2ec5f673" > < td class = "memItemLeft" align = "right" valign = "top" > std::optional< int >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a8cf8a78cb10342afeaaaf55f2ec5f673" > vacuum_outer_refinement_levels< / a > = std::nullopt< / td > < / tr >
< tr class = "memdesc:a8cf8a78cb10342afeaaaf55f2ec5f673" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Minimum refinement depth at the vacuum outer boundary; unset inherits < code > refinement_levels< / code > . < br / > < / td > < / tr >
< tr class = "separator:a8cf8a78cb10342afeaaaf55f2ec5f673" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:aeb1b7fa26699dfa57e5b39a8cd9042ee" id = "r_aeb1b7fa26699dfa57e5b39a8cd9042ee" > < td class = "memItemLeft" align = "right" valign = "top" > std::optional< int >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#aeb1b7fa26699dfa57e5b39a8cd9042ee" > order< / a > = 3< / td > < / tr >
< tr class = "memdesc:aeb1b7fa26699dfa57e5b39a8cd9042ee" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Polynomial order for high-order elements. < br / > < / td > < / tr >
< tr class = "separator:aeb1b7fa26699dfa57e5b39a8cd9042ee" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:acdb3428f1e33b6826f28334b58023432" id = "r_acdb3428f1e33b6826f28334b58023432" > < td class = "memItemLeft" align = "right" valign = "top" > std::optional< bool >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#acdb3428f1e33b6826f28334b58023432" > include_external_domain< / a > = true< / td > < / tr >
< tr class = "memdesc:acdb3428f1e33b6826f28334b58023432" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Whether to include an external domain extending to < code > r_infinity< / code > . < br / > < / td > < / tr >
< tr class = "separator:acdb3428f1e33b6826f28334b58023432" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a497cda69d9e7a3e9b96960d25d0f37de" id = "r_a497cda69d9e7a3e9b96960d25d0f37de" > < td class = "memItemLeft" align = "right" valign = "top" > std::optional< double >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a497cda69d9e7a3e9b96960d25d0f37de" > r_core< / a > = 0.25< / td > < / tr >
< tr class = "memdesc:a497cda69d9e7a3e9b96960d25d0f37de" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Radius of the stellar core region. < br / > < / td > < / tr >
< tr class = "separator:a497cda69d9e7a3e9b96960d25d0f37de" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ae54149369309132d3058c21a0556c14f" id = "r_ae54149369309132d3058c21a0556c14f" > < td class = "memItemLeft" align = "right" valign = "top" > std::optional< double >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#ae54149369309132d3058c21a0556c14f" > r_star< / a > = 1.0< / td > < / tr >
< tr class = "memdesc:ae54149369309132d3058c21a0556c14f" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Radius of the stellar surface. < br / > < / td > < / tr >
< tr class = "separator:ae54149369309132d3058c21a0556c14f" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:af25094952d1f73e0de4368fe7a5a6f6b" id = "r_af25094952d1f73e0de4368fe7a5a6f6b" > < td class = "memItemLeft" align = "right" valign = "top" > std::optional< double >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#af25094952d1f73e0de4368fe7a5a6f6b" > flattening< / a > = 0< / td > < / tr >
< tr class = "memdesc:af25094952d1f73e0de4368fe7a5a6f6b" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Flattening factor for spheroidal shaping (0 = spherical, > 0 = oblate). < br / > < / td > < / tr >
< tr class = "separator:af25094952d1f73e0de4368fe7a5a6f6b" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:af181d2f6285ad8203025453d434e091e" id = "r_af181d2f6285ad8203025453d434e091e" > < td class = "memItemLeft" align = "right" valign = "top" > std::optional< double >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#af181d2f6285ad8203025453d434e091e" > r_infinity< / a > = 6.0< / td > < / tr >
< tr class = "memdesc:af181d2f6285ad8203025453d434e091e" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Outer radius of the external domain when enabled. < br / > < / td > < / tr >
< tr class = "separator:af181d2f6285ad8203025453d434e091e" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a882ce722c90fbd1792425f06577fa361" id = "r_a882ce722c90fbd1792425f06577fa361" > < td class = "memItemLeft" align = "right" valign = "top" > std::optional< double >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a882ce722c90fbd1792425f06577fa361" > r_instability< / a > = 1e-14< / td > < / tr >
< tr class = "memdesc:a882ce722c90fbd1792425f06577fa361" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Radius inside which transformations are skipped to avoid singularities. < br / > < / td > < / tr >
< tr class = "separator:a882ce722c90fbd1792425f06577fa361" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:aae33c48f949858944a6baa6033cebb7b" id = "r_aae33c48f949858944a6baa6033cebb7b" > < td class = "memItemLeft" align = "right" valign = "top" > std::optional< double >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#aae33c48f949858944a6baa6033cebb7b" > core_steepness< / a > = 1.0< / td > < / tr >
< tr class = "memdesc:aae33c48f949858944a6baa6033cebb7b" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Controls the smoothness/steepness of the core-to-envelope transition. < br / > < / td > < / tr >
< tr class = "separator:aae33c48f949858944a6baa6033cebb7b" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ae8bf54f7fd649578d44e46e96f501e34" id = "r_ae8bf54f7fd649578d44e46e96f501e34" > < td class = "memItemLeft" align = "right" valign = "top" > std::optional< size_t >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#ae8bf54f7fd649578d44e46e96f501e34" > continuity_order< / a > = 2< / td > < / tr >
< tr class = "memdesc:ae8bf54f7fd649578d44e46e96f501e34" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Continuity order for the core-envelope transition (0 = discontinuous, 1 = C1, 2 = C2). < br / > < / td > < / tr >
< tr class = "separator:ae8bf54f7fd649578d44e46e96f501e34" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a1def8d916aa47fcc1c90576cec7c13bd" id = "r_a1def8d916aa47fcc1c90576cec7c13bd" > < td class = "memItemLeft" align = "right" valign = "top" > std::optional< size_t >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a1def8d916aa47fcc1c90576cec7c13bd" > surface_bdr_id< / a > = 1< / td > < / tr >
< tr class = "memdesc:a1def8d916aa47fcc1c90576cec7c13bd" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Boundary attribute id for stellar surface. < br / > < / td > < / tr >
< tr class = "separator:a1def8d916aa47fcc1c90576cec7c13bd" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a25dbc70bcd2407ce7deaa0ee61b8886a" id = "r_a25dbc70bcd2407ce7deaa0ee61b8886a" > < td class = "memItemLeft" align = "right" valign = "top" > std::optional< size_t >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a25dbc70bcd2407ce7deaa0ee61b8886a" > inf_bdr_id< / a > = 2< / td > < / tr >
< tr class = "memdesc:a25dbc70bcd2407ce7deaa0ee61b8886a" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Boundary attribute id for infinity in kelvin mapping. < br / > < / td > < / tr >
< tr class = "separator:a25dbc70bcd2407ce7deaa0ee61b8886a" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ad6af127dd2bdcba58dd64eee24378dbe" id = "r_ad6af127dd2bdcba58dd64eee24378dbe" > < td class = "memItemLeft" align = "right" valign = "top" > std::optional< size_t >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#ad6af127dd2bdcba58dd64eee24378dbe" > core_id< / a > = 1< / td > < / tr >
< tr class = "memdesc:ad6af127dd2bdcba58dd64eee24378dbe" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Material attribute id for the core region. < br / > < / td > < / tr >
< tr class = "separator:ad6af127dd2bdcba58dd64eee24378dbe" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a8d30e307723eba6d964dfbe835532c8e" id = "r_a8d30e307723eba6d964dfbe835532c8e" > < td class = "memItemLeft" align = "right" valign = "top" > std::optional< size_t >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a8d30e307723eba6d964dfbe835532c8e" > envelope_id< / a > = 2< / td > < / tr >
< tr class = "memdesc:a8d30e307723eba6d964dfbe835532c8e" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Material attribute id for the envelope region. < br / > < / td > < / tr >
< tr class = "separator:a8d30e307723eba6d964dfbe835532c8e" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a6f745a2225c5a48256864ba859848ce9" id = "r_a6f745a2225c5a48256864ba859848ce9" > < td class = "memItemLeft" align = "right" valign = "top" > std::optional< size_t >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a6f745a2225c5a48256864ba859848ce9" > vacuum_id< / a > = 3< / td > < / tr >
< tr class = "memdesc:a6f745a2225c5a48256864ba859848ce9" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Material attribute id for the external domain (if enabled) < br / > < / td > < / tr >
< tr class = "separator:a6f745a2225c5a48256864ba859848ce9" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:adf95ea0245d8e864c795e3c594abd19e" id = "r_adf95ea0245d8e864c795e3c594abd19e" > < td class = "memItemLeft" align = "right" valign = "top" > std::optional< < a class = "el" href = "structstroid_1_1config_1_1_optimization_methods.html" > OptimizationMethods< / a > >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#adf95ea0245d8e864c795e3c594abd19e" > optimization_methods< / a > = < a class = "el" href = "structstroid_1_1config_1_1_optimization_methods.html" > OptimizationMethods< / a > {true, true}< / td > < / tr >
< tr class = "separator:adf95ea0245d8e864c795e3c594abd19e" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a932e1257cacf5831c216bc3c48d4346d" id = "r_a932e1257cacf5831c216bc3c48d4346d" > < td class = "memItemLeft" align = "right" valign = "top" > std::optional< std::string >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a932e1257cacf5831c216bc3c48d4346d" > core_mapping< / a > = " multi_block" < / td > < / tr >
< tr class = "memdesc:a932e1257cacf5831c216bc3c48d4346d" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Core mapping strategy: legacy "spherified" or conditioned "multi_block". < br / > < / td > < / tr >
< tr class = "separator:a932e1257cacf5831c216bc3c48d4346d" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2026-03-20 13:27:11 -04:00
< / table >
< a name = "details" id = "details" > < / a > < h2 class = "groupheader" > Detailed Description< / h2 >
< div class = "textblock" > < p > Configuration parameters for stroid mesh generation. < / p >
2026-09-09 12:39:53 -04:00
< p > These values are typically loaded via < code > fourdst::config::Config< < a class = "el" href = "structstroid_1_1config_1_1_mesh_config.html" title = "Configuration parameters for stroid mesh generation." > stroid::config::MeshConfig< / a > > < / code > from a TOML file. The README shows the expected TOML layout under the < code > [main]< / code > table. Unspecified geometry keys use the defaults defined here. ResolveDefaults preserves the historical fallback for omitted mapping and optimization controls in TOML files. < / p >
2026-03-20 13:27:11 -04:00
< / div > < h2 class = "groupheader" > Member Data Documentation< / h2 >
2026-09-09 12:39:53 -04:00
< a id = "ae8bf54f7fd649578d44e46e96f501e34" name = "ae8bf54f7fd649578d44e46e96f501e34" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ae8bf54f7fd649578d44e46e96f501e34" > ◆   < / a > < / span > continuity_order< / h2 >
2026-03-20 13:27:11 -04:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2026-09-09 12:39:53 -04:00
< td class = "memname" > std::optional< size_t> stroid::config::MeshConfig::continuity_order = 2< / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Continuity order for the core-envelope transition (0 = discontinuous, 1 = C1, 2 = C2). < / p >
< h1 > < a class = "anchor" id = "toml" > < / a >
toml< / h1 >
< ul >
< li > [main].continuity_order < / li >
< / ul >
< / div >
< / div >
< a id = "ad6af127dd2bdcba58dd64eee24378dbe" name = "ad6af127dd2bdcba58dd64eee24378dbe" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ad6af127dd2bdcba58dd64eee24378dbe" > ◆   < / a > < / span > core_id< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > std::optional< size_t> stroid::config::MeshConfig::core_id = 1< / td >
2026-03-20 13:27:11 -04:00
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Material attribute id for the core region. < / p >
< h1 > < a class = "anchor" id = "toml" > < / a >
toml< / h1 >
< ul >
< li > [main].core_id < / li >
< / ul >
< / div >
< / div >
2026-09-09 12:39:53 -04:00
< a id = "a932e1257cacf5831c216bc3c48d4346d" name = "a932e1257cacf5831c216bc3c48d4346d" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a932e1257cacf5831c216bc3c48d4346d" > ◆   < / a > < / span > core_mapping< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > std::optional< std::string> stroid::config::MeshConfig::core_mapping = " multi_block" < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Core mapping strategy: legacy "spherified" or conditioned "multi_block". < / p >
< p > spherified generates a either two or three inscribed cubes then projects them into spheres. multi_block generates a multi-block topology with a single core block and six envelope blocks, then projects the core block into a sphere and the envelope blocks into a spheroid.< / p >
< p > multi_block is strongly preferred for its ~1000x improved condition number, Spherified is only provided for legacy compatibility.< / p >
< h1 > < a class = "anchor" id = "toml" > < / a >
toml< / h1 >
< ul >
< li > [main].core_mapping < / li >
< / ul >
< / div >
< / div >
< a id = "aae33c48f949858944a6baa6033cebb7b" name = "aae33c48f949858944a6baa6033cebb7b" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#aae33c48f949858944a6baa6033cebb7b" > ◆   < / a > < / span > core_steepness< / h2 >
2026-03-20 13:27:11 -04:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2026-09-09 12:39:53 -04:00
< td class = "memname" > std::optional< double> stroid::config::MeshConfig::core_steepness = 1.0< / td >
2026-03-20 13:27:11 -04:00
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Controls the smoothness/steepness of the core-to-envelope transition. < / p >
< h1 > < a class = "anchor" id = "toml" > < / a >
toml< / h1 >
< ul >
< li > [main].core_steepness < / li >
< / ul >
< / div >
< / div >
2026-09-09 12:39:53 -04:00
< a id = "a8d30e307723eba6d964dfbe835532c8e" name = "a8d30e307723eba6d964dfbe835532c8e" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a8d30e307723eba6d964dfbe835532c8e" > ◆   < / a > < / span > envelope_id< / h2 >
2026-03-20 13:27:11 -04:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2026-09-09 12:39:53 -04:00
< td class = "memname" > std::optional< size_t> stroid::config::MeshConfig::envelope_id = 2< / td >
2026-03-20 13:27:11 -04:00
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Material attribute id for the envelope region. < / p >
< h1 > < a class = "anchor" id = "toml" > < / a >
toml< / h1 >
< ul >
< li > [main].envelope_id < / li >
< / ul >
< / div >
< / div >
2026-09-09 12:39:53 -04:00
< a id = "af25094952d1f73e0de4368fe7a5a6f6b" name = "af25094952d1f73e0de4368fe7a5a6f6b" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#af25094952d1f73e0de4368fe7a5a6f6b" > ◆   < / a > < / span > flattening< / h2 >
2026-03-20 13:27:11 -04:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2026-09-09 12:39:53 -04:00
< td class = "memname" > std::optional< double> stroid::config::MeshConfig::flattening = 0< / td >
2026-03-20 13:27:11 -04:00
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Flattening factor for spheroidal shaping (0 = spherical, > 0 = oblate). < / p >
< h1 > < a class = "anchor" id = "toml" > < / a >
toml< / h1 >
< ul >
< li > [main].flattening < / li >
< / ul >
< / div >
< / div >
2026-09-09 12:39:53 -04:00
< a id = "acdb3428f1e33b6826f28334b58023432" name = "acdb3428f1e33b6826f28334b58023432" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#acdb3428f1e33b6826f28334b58023432" > ◆   < / a > < / span > include_external_domain< / h2 >
2026-03-20 13:27:11 -04:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2026-09-09 12:39:53 -04:00
< td class = "memname" > std::optional< bool> stroid::config::MeshConfig::include_external_domain = true< / td >
2026-03-20 13:27:11 -04:00
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Whether to include an external domain extending to < code > r_infinity< / code > . < / p >
< h1 > < a class = "anchor" id = "toml" > < / a >
toml< / h1 >
< ul >
< li > [main].include_external_domain < / li >
< / ul >
< / div >
< / div >
2026-09-09 12:39:53 -04:00
< a id = "a25dbc70bcd2407ce7deaa0ee61b8886a" name = "a25dbc70bcd2407ce7deaa0ee61b8886a" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a25dbc70bcd2407ce7deaa0ee61b8886a" > ◆   < / a > < / span > inf_bdr_id< / h2 >
2026-03-20 13:27:11 -04:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2026-09-09 12:39:53 -04:00
< td class = "memname" > std::optional< size_t> stroid::config::MeshConfig::inf_bdr_id = 2< / td >
2026-03-20 13:27:11 -04:00
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Boundary attribute id for infinity in kelvin mapping. < / p >
< h1 > < a class = "anchor" id = "toml" > < / a >
toml< / h1 >
< ul >
< li > [main].inf_bdr_id < / li >
< / ul >
< / div >
< / div >
2026-09-09 12:39:53 -04:00
< a id = "adf95ea0245d8e864c795e3c594abd19e" name = "adf95ea0245d8e864c795e3c594abd19e" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#adf95ea0245d8e864c795e3c594abd19e" > ◆   < / a > < / span > optimization_methods< / h2 >
2026-03-20 13:27:11 -04:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2026-09-09 12:39:53 -04:00
< td class = "memname" > std::optional< < a class = "el" href = "structstroid_1_1config_1_1_optimization_methods.html" > OptimizationMethods< / a > > stroid::config::MeshConfig::optimization_methods = < a class = "el" href = "structstroid_1_1config_1_1_optimization_methods.html" > OptimizationMethods< / a > {true, true}< / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
< a id = "aeb1b7fa26699dfa57e5b39a8cd9042ee" name = "aeb1b7fa26699dfa57e5b39a8cd9042ee" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#aeb1b7fa26699dfa57e5b39a8cd9042ee" > ◆   < / a > < / span > order< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > std::optional< int> stroid::config::MeshConfig::order = 3< / td >
2026-03-20 13:27:11 -04:00
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Polynomial order for high-order elements. < / p >
< h1 > < a class = "anchor" id = "toml" > < / a >
toml< / h1 >
< ul >
< li > [main].order < / li >
< / ul >
< / div >
< / div >
2026-09-09 12:39:53 -04:00
< a id = "a497cda69d9e7a3e9b96960d25d0f37de" name = "a497cda69d9e7a3e9b96960d25d0f37de" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a497cda69d9e7a3e9b96960d25d0f37de" > ◆   < / a > < / span > r_core< / h2 >
2026-03-20 13:27:11 -04:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2026-09-09 12:39:53 -04:00
< td class = "memname" > std::optional< double> stroid::config::MeshConfig::r_core = 0.25< / td >
2026-03-20 13:27:11 -04:00
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Radius of the stellar core region. < / p >
< h1 > < a class = "anchor" id = "toml" > < / a >
toml< / h1 >
< ul >
< li > [main].r_core < / li >
< / ul >
< / div >
< / div >
2026-09-09 12:39:53 -04:00
< a id = "af181d2f6285ad8203025453d434e091e" name = "af181d2f6285ad8203025453d434e091e" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#af181d2f6285ad8203025453d434e091e" > ◆   < / a > < / span > r_infinity< / h2 >
2026-03-20 13:27:11 -04:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2026-09-09 12:39:53 -04:00
< td class = "memname" > std::optional< double> stroid::config::MeshConfig::r_infinity = 6.0< / td >
2026-03-20 13:27:11 -04:00
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Outer radius of the external domain when enabled. < / p >
< h1 > < a class = "anchor" id = "toml" > < / a >
toml< / h1 >
< ul >
< li > [main].r_infinity < / li >
< / ul >
< / div >
< / div >
2026-09-09 12:39:53 -04:00
< a id = "a882ce722c90fbd1792425f06577fa361" name = "a882ce722c90fbd1792425f06577fa361" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a882ce722c90fbd1792425f06577fa361" > ◆   < / a > < / span > r_instability< / h2 >
2026-03-20 13:27:11 -04:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2026-09-09 12:39:53 -04:00
< td class = "memname" > std::optional< double> stroid::config::MeshConfig::r_instability = 1e-14< / td >
2026-03-20 13:27:11 -04:00
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Radius inside which transformations are skipped to avoid singularities. < / p >
< h1 > < a class = "anchor" id = "toml" > < / a >
toml< / h1 >
< ul >
< li > [main].r_instability < / li >
< / ul >
< / div >
< / div >
2026-09-09 12:39:53 -04:00
< a id = "ae54149369309132d3058c21a0556c14f" name = "ae54149369309132d3058c21a0556c14f" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ae54149369309132d3058c21a0556c14f" > ◆   < / a > < / span > r_star< / h2 >
2026-03-20 13:27:11 -04:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2026-09-09 12:39:53 -04:00
< td class = "memname" > std::optional< double> stroid::config::MeshConfig::r_star = 1.0< / td >
2026-03-20 13:27:11 -04:00
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Radius of the stellar surface. < / p >
< h1 > < a class = "anchor" id = "toml" > < / a >
toml< / h1 >
< ul >
< li > [main].r_star < / li >
< / ul >
< / div >
< / div >
2026-09-09 12:39:53 -04:00
< a id = "abb2757a2e4cbd63bb2b878ef5fccb95c" name = "abb2757a2e4cbd63bb2b878ef5fccb95c" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#abb2757a2e4cbd63bb2b878ef5fccb95c" > ◆   < / a > < / span > refinement_levels< / h2 >
2026-03-20 13:27:11 -04:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2026-09-09 12:39:53 -04:00
< td class = "memname" > std::optional< int> stroid::config::MeshConfig::refinement_levels = 4< / td >
2026-03-20 13:27:11 -04:00
< / tr >
< / table >
< / div > < div class = "memdoc" >
2026-09-09 12:39:53 -04:00
< p > Stellar refinement depth, or uniform depth when vacuum overrides are absent. < / p >
2026-03-20 13:27:11 -04:00
< h1 > < a class = "anchor" id = "toml" > < / a >
toml< / h1 >
< ul >
< li > [main].refinement_levels < / li >
< / ul >
< / div >
< / div >
2026-09-09 12:39:53 -04:00
< a id = "a1def8d916aa47fcc1c90576cec7c13bd" name = "a1def8d916aa47fcc1c90576cec7c13bd" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a1def8d916aa47fcc1c90576cec7c13bd" > ◆   < / a > < / span > surface_bdr_id< / h2 >
2026-03-20 13:27:11 -04:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2026-09-09 12:39:53 -04:00
< td class = "memname" > std::optional< size_t> stroid::config::MeshConfig::surface_bdr_id = 1< / td >
2026-03-20 13:27:11 -04:00
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Boundary attribute id for stellar surface. < / p >
< h1 > < a class = "anchor" id = "toml" > < / a >
toml< / h1 >
< ul >
< li > [main].surface_bdr_id < / li >
< / ul >
< / div >
< / div >
2026-09-09 12:39:53 -04:00
< a id = "a6f745a2225c5a48256864ba859848ce9" name = "a6f745a2225c5a48256864ba859848ce9" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a6f745a2225c5a48256864ba859848ce9" > ◆   < / a > < / span > vacuum_id< / h2 >
2026-03-20 13:27:11 -04:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2026-09-09 12:39:53 -04:00
< td class = "memname" > std::optional< size_t> stroid::config::MeshConfig::vacuum_id = 3< / td >
2026-03-20 13:27:11 -04:00
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Material attribute id for the external domain (if enabled) < / p >
< h1 > < a class = "anchor" id = "toml" > < / a >
toml< / h1 >
< ul >
< li > [main].vacuum_id < / li >
< / ul >
2026-09-09 12:39:53 -04:00
< / div >
< / div >
< a id = "a8cf8a78cb10342afeaaaf55f2ec5f673" name = "a8cf8a78cb10342afeaaaf55f2ec5f673" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a8cf8a78cb10342afeaaaf55f2ec5f673" > ◆   < / a > < / span > vacuum_outer_refinement_levels< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > std::optional< int> stroid::config::MeshConfig::vacuum_outer_refinement_levels = std::nullopt< / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Minimum refinement depth at the vacuum outer boundary; unset inherits < code > refinement_levels< / code > . < / p >
< p > Boundary-adjacent cells are refined automatically, with grading toward the vacuum interior. Geometry uses the same polynomial order in every region. < / p >
< h1 > < a class = "anchor" id = "toml" > < / a >
toml< / h1 >
< ul >
< li > [main].vacuum_outer_refinement_levels < / li >
< / ul >
< / div >
< / div >
< a id = "adbfd27ab0f86beedb15ecb1a2e8d92c9" name = "adbfd27ab0f86beedb15ecb1a2e8d92c9" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#adbfd27ab0f86beedb15ecb1a2e8d92c9" > ◆   < / a > < / span > vacuum_refinement_levels< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > std::optional< int> stroid::config::MeshConfig::vacuum_refinement_levels = std::nullopt< / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Minimum refinement depth in the vacuum interior; unset inherits < code > refinement_levels< / code > . < / p >
< p > Setting either vacuum override enables local isotropic refinement. Vacuum cells at the stellar surface match the stellar refinement, and automatic one-level grading can raise the interior depth above this minimum. Requires an external domain. < / p >
< h1 > < a class = "anchor" id = "toml" > < / a >
toml< / h1 >
< ul >
< li > [main].vacuum_refinement_levels < / li >
< / ul >
2026-03-20 13:27:11 -04:00
< / div >
< / div >
< hr / > The documentation for this struct was generated from the following file:< ul >
< li > src/include/stroid/config/< a class = "el" href = "config_8h.html" > config.h< / a > < / li >
< / ul >
< / div > <!-- contents -->
< / div > <!-- doc - content -->
<!-- start footer part -->
< div id = "nav-path" class = "navpath" > <!-- id is needed for treeview function! -->
< ul >
< li class = "navelem" > < a class = "el" href = "namespacestroid.html" > stroid< / a > < / li > < li class = "navelem" > < a class = "el" href = "namespacestroid_1_1config.html" > config< / a > < / li > < li class = "navelem" > < a class = "el" href = "structstroid_1_1config_1_1_mesh_config.html" > MeshConfig< / a > < / li >
< li class = "footer" > Generated by < a href = "https://www.doxygen.org/index.html" > < img class = "footer" src = "doxygen.svg" width = "104" height = "31" alt = "doxygen" / > < / a > 1.13.2 < / li >
< / ul >
< / div >
< / body >
< / html >