Note for now much of the docs is LLM written. This was done to save time and focus on code development. The docs have been LOOSLEY reviewed. However, the code itself has been either fully written by hand or fully reviewed. Therefore, the docs should at the moment be seen as a loose resource rather than authoratiative (and this is on top of the general ability for docs to drift)
200 lines
16 KiB
HTML
200 lines
16 KiB
HTML
<!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>SERiF: src/include/serif/backend/mfem/mapping/data.hpp File Reference</title>
|
|
<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>
|
|
<script type="text/x-mathjax-config">
|
|
MathJax.Hub.Config({
|
|
extensions: ["tex2jax.js"],
|
|
jax: ["input/TeX","output/HTML-CSS"],
|
|
});
|
|
</script>
|
|
<script type="text/javascript" async="async" src="https://cdn.jsdelivr.net/npm/mathjax@2/MathJax.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"/>
|
|
<link href="doxygen-extra.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="projectalign">
|
|
<div id="projectname">SERiF<span id="projectnumber"> v0.0.1a</span>
|
|
</div>
|
|
<div id="projectbrief">Stellar Evolution and Rotation in Four Dimensions</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('data_8hpp.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="#nested-classes">Classes</a> |
|
|
<a href="#namespaces">Namespaces</a> |
|
|
<a href="#enum-members">Enumerations</a> |
|
|
<a href="#func-members">Functions</a> </div>
|
|
<div class="headertitle"><div class="title">data.hpp File Reference</div></div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
|
|
<p>File containing some misc data structures for the mapping module. This was the very first file I ported over from MeanField and I think because of that its organization is actually quite wonky. For one its int this poorly named "data" file, which could mean any number of things. Regardless, these are basically low leval containers for useful stuff and also some scratch workspaces for mapping operations.
|
|
<a href="#details">More...</a></p>
|
|
<div class="textblock"><code>#include "mfem/fem/fe/fe_base.hpp"</code><br />
|
|
<code>#include "mfem/fem/fespace.hpp"</code><br />
|
|
<code>#include "mfem/linalg/vector.hpp"</code><br />
|
|
<code>#include "mfem/linalg/densemat.hpp"</code><br />
|
|
<code>#include "mfem/mesh/mesh.hpp"</code><br />
|
|
<code>#include <cstdint></code><br />
|
|
<code>#include "<a class="el" href="backend_2mfem_2mapping_2compactification_2kelvin_8hpp.html">serif/backend/mfem/mapping/compactification/kelvin.hpp</a>"</code><br />
|
|
<code>#include "<a class="el" href="context_8hpp.html">serif/backend/mfem/mapping/context.hpp</a>"</code><br />
|
|
<code>#include "<a class="el" href="data_8hpp.html">serif/backend/mfem/mapping/data.hpp</a>"</code><br />
|
|
</div><div class="textblock"><div class="dynheader">
|
|
Include dependency graph for data.hpp:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="data_8hpp__incl.svg" width="100%" height="600"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div></div>
|
|
</div>
|
|
</div><div class="textblock"><div class="dynheader">
|
|
This graph shows which files directly or indirectly include this file:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="data_8hpp__dep__incl.svg" width="100%" height="600"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div></div>
|
|
</div>
|
|
</div><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
|
|
Classes</h2></td></tr>
|
|
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classserif_1_1mapping_1_1_element_displacement_data.html">serif::mapping::ElementDisplacementData</a></td></tr>
|
|
<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">A class representing the displacement data for a finite element, including the finite element, degree of freedom matrix, and dimension. <a href="classserif_1_1mapping_1_1_element_displacement_data.html#details">More...</a><br /></td></tr>
|
|
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structserif_1_1mapping_1_1_compactification_point_data.html">serif::mapping::CompactificationPointData</a></td></tr>
|
|
<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">A structure representing the compactification point data, including the compactification coordinate and coordinate gradient. <a href="structserif_1_1mapping_1_1_compactification_point_data.html#details">More...</a><br /></td></tr>
|
|
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classserif_1_1mapping_1_1_element_compactification_data.html">serif::mapping::ElementCompactificationData</a></td></tr>
|
|
<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">A class representing the compactification data for a finite element, including the finite element and degrees of freedom. <a href="classserif_1_1mapping_1_1_element_compactification_data.html#details">More...</a><br /></td></tr>
|
|
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structserif_1_1mapping_1_1_element_mapping_data.html">serif::mapping::ElementMappingData</a></td></tr>
|
|
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classserif_1_1mapping_1_1_d_m_workspace.html">serif::mapping::DMWorkspace</a></td></tr>
|
|
<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">A class representing a workspace for displacement mapping operations, including various vectors and matrices used in the mapping process. primarily this is just a separate class so we can more easily make this code thread-safe in the future. At construction of an instance of this class loads of Heap allocation is done (or really whatever mfem does internally for allocation for vector which dependents on the selected device) and then that allocation can be reused. <a href="classserif_1_1mapping_1_1_d_m_workspace.html#details">More...</a><br /></td></tr>
|
|
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structserif_1_1mapping_1_1_d_m_fixed_mesh_geometry.html">serif::mapping::DMFixedMeshGeometry</a></td></tr>
|
|
<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">A structure representing the fixed mesh geometry at a specific point, including position, Jacobian, inverse Jacobian, and weight. <a href="structserif_1_1mapping_1_1_d_m_fixed_mesh_geometry.html#details">More...</a><br /></td></tr>
|
|
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structserif_1_1mapping_1_1_d_m_reference_displacement_sample.html">serif::mapping::DMReferenceDisplacementSample</a></td></tr>
|
|
<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">A structure representing a sample of the reference displacement, including the value and gradient of the displacement at a specific point. <a href="structserif_1_1mapping_1_1_d_m_reference_displacement_sample.html#details">More...</a><br /></td></tr>
|
|
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
|
|
Namespaces</h2></td></tr>
|
|
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceserif.html">serif</a></td></tr>
|
|
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceserif_1_1mapping.html">serif::mapping</a></td></tr>
|
|
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="enum-members" name="enum-members"></a>
|
|
Enumerations</h2></td></tr>
|
|
<tr class="memitem:ab6598ecc4776dc488540df0614e1e560" id="r_ab6598ecc4776dc488540df0614e1e560"><td class="memItemLeft" align="right" valign="top">enum class  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceserif_1_1mapping.html#ab6598ecc4776dc488540df0614e1e560">serif::mapping::FaceElementSide</a> : uint8_t { <a class="el" href="namespaceserif_1_1mapping.html#ab6598ecc4776dc488540df0614e1e560a589425fc56eb03218b1af97890453405">serif::mapping::ELEMENT_1</a>
|
|
, <a class="el" href="namespaceserif_1_1mapping.html#ab6598ecc4776dc488540df0614e1e560ac9c067c94697dcb6cd7511c238bfe20c">serif::mapping::ELEMENT_2</a>
|
|
}</td></tr>
|
|
<tr class="memdesc:ab6598ecc4776dc488540df0614e1e560"><td class="mdescLeft"> </td><td class="mdescRight">An enumeration representing the side of a face element, either ELEMENT_1 or ELEMENT_2. There is no inherent ordering to these; however, broadly I have been thinking about ELEMENT_1 as the "inner" side and ELEMENT_2 as the "outer" side. <a href="namespaceserif_1_1mapping.html#ab6598ecc4776dc488540df0614e1e560">More...</a><br /></td></tr>
|
|
<tr class="separator:ab6598ecc4776dc488540df0614e1e560"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
|
|
Functions</h2></td></tr>
|
|
<tr class="memitem:a89488756ce19ff5351dfbeb4235849c3" id="r_a89488756ce19ff5351dfbeb4235849c3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classserif_1_1mapping_1_1_element_displacement_data.html">ElementDisplacementData</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceserif_1_1mapping.html#a89488756ce19ff5351dfbeb4235849c3">serif::mapping::element_displacement_data_from_element_vdofs</a> (const mfem::FiniteElement &element, mfem::Vector &displacement_dofs)</td></tr>
|
|
<tr class="memdesc:a89488756ce19ff5351dfbeb4235849c3"><td class="mdescLeft"> </td><td class="mdescRight">Creates an <a class="el" href="classserif_1_1mapping_1_1_element_displacement_data.html" title="A class representing the displacement data for a finite element, including the finite element,...">ElementDisplacementData</a> object from a finite element and a vector of displacement degrees of freedom. <br /></td></tr>
|
|
<tr class="separator:a89488756ce19ff5351dfbeb4235849c3"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table>
|
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
<div class="textblock"><p>File containing some misc data structures for the mapping module. This was the very first file I ported over from MeanField and I think because of that its organization is actually quite wonky. For one its int this poorly named "data" file, which could mean any number of things. Regardless, these are basically low leval containers for useful stuff and also some scratch workspaces for mapping operations. </p>
|
|
<dl class="section author"><dt>Author</dt><dd>Emily M. Boudreaux</dd></dl>
|
|
<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000013">Todo</a></b></dt><dd>As said above there is some refactoring to make this cleaner which could happen. </dd></dl>
|
|
</div></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="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_b0856f6b0d80ccb263b2f415c91f9e17.html">include</a></li><li class="navelem"><a class="el" href="dir_e3fc9bd9804296f8660ca61563b995c5.html">serif</a></li><li class="navelem"><a class="el" href="dir_5efd9e6a724a898950c58bd67170566f.html">backend</a></li><li class="navelem"><a class="el" href="dir_f4279ff9f0ade9101a3d0c95da9106b0.html">mfem</a></li><li class="navelem"><a class="el" href="dir_868918a99b4e75b7dbed614771b99884.html">mapping</a></li><li class="navelem"><a class="el" href="data_8hpp.html">data.hpp</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>
|