Skip to content

Commit bb81e9e

Browse files
committed
Deploying to main from @ AMReX-Codes/amrex@08eed95 🚀
1 parent dd195b1 commit bb81e9e

File tree

9 files changed

+1534
-1501
lines changed

9 files changed

+1534
-1501
lines changed

amrex/docs_html/EB.html

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -331,6 +331,12 @@ <h1>Embedded Boundary Data<a class="headerlink" href="#embedded-boundary-data" t
331331
<span class="c1">// embedded boundary centroid</span>
332332
<span class="k">const</span><span class="w"> </span><span class="n">MultiCutFab</span><span class="o">&amp;</span><span class="w"> </span><span class="nf">getBndryCent</span><span class="w"> </span><span class="p">()</span><span class="w"> </span><span class="k">const</span><span class="p">;</span><span class="w"></span>
333333

334+
<span class="c1">// embedded boundary normal direction</span>
335+
<span class="k">const</span><span class="w"> </span><span class="n">MultiCutFab</span><span class="o">&amp;</span><span class="w"> </span><span class="nf">getBndryNormal</span><span class="w"> </span><span class="p">()</span><span class="w"> </span><span class="k">const</span><span class="p">;</span><span class="w"></span>
336+
337+
<span class="c1">// embedded boundary surface area</span>
338+
<span class="k">const</span><span class="w"> </span><span class="n">MultiCutFab</span><span class="o">&amp;</span><span class="w"> </span><span class="nf">getBndryArea</span><span class="w"> </span><span class="p">()</span><span class="w"> </span><span class="k">const</span><span class="p">;</span><span class="w"></span>
339+
334340
<span class="c1">// area fractions</span>
335341
<span class="n">Array</span><span class="o">&lt;</span><span class="k">const</span><span class="w"> </span><span class="n">MultiCutFab</span><span class="o">*</span><span class="p">,</span><span class="n">AMREX_SPACEDIM</span><span class="o">&gt;</span><span class="w"> </span><span class="n">getAreaFrac</span><span class="w"> </span><span class="p">()</span><span class="w"> </span><span class="k">const</span><span class="p">;</span><span class="w"></span>
336342

@@ -350,6 +356,15 @@ <h1>Embedded Boundary Data<a class="headerlink" href="#embedded-boundary-data" t
350356
<code class="docutils literal notranslate"><span class="pre">AMREX_SPACEDIM</span></code> components. Each component
351357
of the data is in the range of <span class="math notranslate nohighlight">\([-0.5,0.5]\)</span>, based on each
352358
cell’s local coordinates with respect to the regular cell’s center.</p></li>
359+
<li><p><strong>Boundary normal</strong> is in a <code class="code highlight cpp c++ docutils literal highlight-c++"><span class="n">MultiCutFab</span><span class="w"></span></code> with <code class="docutils literal notranslate"><span class="pre">AMREX_SPACEDIM</span></code>
360+
components representing the unit vector pointing toward the covered part.</p></li>
361+
<li><p><strong>Boundary area</strong> is in a <code class="code highlight cpp c++ docutils literal highlight-c++"><span class="n">MultiCutFab</span><span class="w"></span></code> with a single component
362+
representing the dimensionless boundary area. When the cell is isotropic
363+
(i.e., <span class="math notranslate nohighlight">\(\Delta x = \Delta y = \Delta z\)</span>), it’s trivial to convert it
364+
to physical units. If the cell size is anisotropic, the conversion
365+
requires multiplying by a factor of <span class="math notranslate nohighlight">\(\sqrt{(n_x \Delta y \Delta
366+
z)^2 + (n_y \Delta x \Delta z)^2 + (n_z \Delta x \Delta y)^2}\)</span>, where
367+
<span class="math notranslate nohighlight">\(n\)</span> is the boundary normal vector.</p></li>
353368
<li><p><strong>Face centroid</strong> is in a <code class="code highlight cpp c++ docutils literal highlight-c++"><span class="n">MultiCutFab</span><span class="w"></span></code> with <code class="docutils literal notranslate"><span class="pre">AMREX_SPACEDIM</span></code> components.
354369
Each component of the data is in the range of <span class="math notranslate nohighlight">\([-0.5,0.5]\)</span>, based on
355370
each cell’s local coordinates with respect to the embedded boundary.</p></li>
Binary file not shown.

amrex/docs_html/_sources/EB.rst.txt

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -271,6 +271,12 @@ following data:
271271
// embedded boundary centroid
272272
const MultiCutFab& getBndryCent () const;
273273

274+
// embedded boundary normal direction
275+
const MultiCutFab& getBndryNormal () const;
276+
277+
// embedded boundary surface area
278+
const MultiCutFab& getBndryArea () const;
279+
274280
// area fractions
275281
Array<const MultiCutFab*,AMREX_SPACEDIM> getAreaFrac () const;
276282

@@ -291,6 +297,17 @@ following data:
291297
of the data is in the range of :math:`[-0.5,0.5]`, based on each
292298
cell's local coordinates with respect to the regular cell's center.
293299

300+
- **Boundary normal** is in a :cpp:`MultiCutFab` with ``AMREX_SPACEDIM``
301+
components representing the unit vector pointing toward the covered part.
302+
303+
- **Boundary area** is in a :cpp:`MultiCutFab` with a single component
304+
representing the dimensionless boundary area. When the cell is isotropic
305+
(i.e., :math:`\Delta x = \Delta y = \Delta z`), it's trivial to convert it
306+
to physical units. If the cell size is anisotropic, the conversion
307+
requires multiplying by a factor of :math:`\sqrt{(n_x \Delta y \Delta
308+
z)^2 + (n_y \Delta x \Delta z)^2 + (n_z \Delta x \Delta y)^2}`, where
309+
:math:`n` is the boundary normal vector.
310+
294311
- **Face centroid** is in a :cpp:`MultiCutFab` with ``AMREX_SPACEDIM`` components.
295312
Each component of the data is in the range of :math:`[-0.5,0.5]`, based on
296313
each cell's local coordinates with respect to the embedded boundary.

amrex/docs_html/doxygen/AMReX__EB2__C_8H_source.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -201,10 +201,10 @@
201201
<div class="ttc" id="aAMReX__Geometry_8H_html"><div class="ttname"><a href="AMReX__Geometry_8H.html">AMReX_Geometry.H</a></div></div>
202202
<div class="ttc" id="aAMReX__SPACE_8H_html_af5ea8082b66e48cdbea53d08cdfca9a0"><div class="ttname"><a href="AMReX__SPACE_8H.html#af5ea8082b66e48cdbea53d08cdfca9a0">AMREX_D_DECL</a></div><div class="ttdeci">#define AMREX_D_DECL(a, b, c)</div><div class="ttdef"><b>Definition:</b> AMReX_SPACE.H:104</div></div>
203203
<div class="ttc" id="anamespaceamrex_1_1EB2_html"><div class="ttname"><a href="namespaceamrex_1_1EB2.html">amrex::EB2</a></div><div class="ttdef"><b>Definition:</b> AMReX_FabArrayBase.H:32</div></div>
204-
<div class="ttc" id="anamespaceamrex_1_1EB2_html_a82d4783a176cefd7ff69a7d61215a8c9"><div class="ttname"><a href="namespaceamrex_1_1EB2.html#a82d4783a176cefd7ff69a7d61215a8c9">amrex::EB2::set_connection_flags</a></div><div class="ttdeci">void set_connection_flags(Box const &amp;bxg1, Array4&lt; EBCellFlag &gt; const &amp;cell, Array4&lt; Type_t &gt; const &amp;fx, Array4&lt; Type_t &gt; const &amp;fy) noexcept</div><div class="ttdef"><b>Definition:</b> AMReX_EB2_2D_C.cpp:456</div></div>
205-
<div class="ttc" id="anamespaceamrex_1_1EB2_html_a8791492ceba31d5d14372a20721e3695"><div class="ttname"><a href="namespaceamrex_1_1EB2.html#a8791492ceba31d5d14372a20721e3695">amrex::EB2::build_faces</a></div><div class="ttdeci">int build_faces(Box const &amp;bx, Array4&lt; EBCellFlag &gt; const &amp;cell, Array4&lt; Type_t &gt; const &amp;fx, Array4&lt; Type_t &gt; const &amp;fy, Array4&lt; Real &gt; const &amp;levset, Array4&lt; Real const &gt; const &amp;interx, Array4&lt; Real const &gt; const &amp;intery, Array4&lt; Real &gt; const &amp;apx, Array4&lt; Real &gt; const &amp;apy, Array4&lt; Real &gt; const &amp;fcx, Array4&lt; Real &gt; const &amp;fcy, GpuArray&lt; Real, AMREX_SPACEDIM &gt; const &amp;dx, GpuArray&lt; Real, AMREX_SPACEDIM &gt; const &amp;problo, bool cover_multiple_cuts, int &amp;nsmallfaces) noexcept</div><div class="ttdef"><b>Definition:</b> AMReX_EB2_2D_C.cpp:199</div></div>
204+
<div class="ttc" id="anamespaceamrex_1_1EB2_html_a82d4783a176cefd7ff69a7d61215a8c9"><div class="ttname"><a href="namespaceamrex_1_1EB2.html#a82d4783a176cefd7ff69a7d61215a8c9">amrex::EB2::set_connection_flags</a></div><div class="ttdeci">void set_connection_flags(Box const &amp;bxg1, Array4&lt; EBCellFlag &gt; const &amp;cell, Array4&lt; Type_t &gt; const &amp;fx, Array4&lt; Type_t &gt; const &amp;fy) noexcept</div><div class="ttdef"><b>Definition:</b> AMReX_EB2_2D_C.cpp:455</div></div>
205+
<div class="ttc" id="anamespaceamrex_1_1EB2_html_a8791492ceba31d5d14372a20721e3695"><div class="ttname"><a href="namespaceamrex_1_1EB2.html#a8791492ceba31d5d14372a20721e3695">amrex::EB2::build_faces</a></div><div class="ttdeci">int build_faces(Box const &amp;bx, Array4&lt; EBCellFlag &gt; const &amp;cell, Array4&lt; Type_t &gt; const &amp;fx, Array4&lt; Type_t &gt; const &amp;fy, Array4&lt; Real &gt; const &amp;levset, Array4&lt; Real const &gt; const &amp;interx, Array4&lt; Real const &gt; const &amp;intery, Array4&lt; Real &gt; const &amp;apx, Array4&lt; Real &gt; const &amp;apy, Array4&lt; Real &gt; const &amp;fcx, Array4&lt; Real &gt; const &amp;fcy, GpuArray&lt; Real, AMREX_SPACEDIM &gt; const &amp;dx, GpuArray&lt; Real, AMREX_SPACEDIM &gt; const &amp;problo, bool cover_multiple_cuts, int &amp;nsmallfaces) noexcept</div><div class="ttdef"><b>Definition:</b> AMReX_EB2_2D_C.cpp:198</div></div>
206206
<div class="ttc" id="anamespaceamrex_1_1EB2_html_a900c8b65fe13dca2d107ec8ae396b7b7"><div class="ttname"><a href="namespaceamrex_1_1EB2.html#a900c8b65fe13dca2d107ec8ae396b7b7">amrex::EB2::extend_domain_face</a></div><div class="ttdeci">AMREX_EXPORT bool extend_domain_face</div><div class="ttdef"><b>Definition:</b> AMReX_EB2.cpp:24</div></div>
207-
<div class="ttc" id="anamespaceamrex_1_1EB2_html_ab93166de851db0edebb5ae2569b88cc1"><div class="ttname"><a href="namespaceamrex_1_1EB2.html#ab93166de851db0edebb5ae2569b88cc1">amrex::EB2::build_cells</a></div><div class="ttdeci">void build_cells(Box const &amp;bx, Array4&lt; EBCellFlag &gt; const &amp;cell, Array4&lt; Type_t &gt; const &amp;fx, Array4&lt; Type_t &gt; const &amp;fy, Array4&lt; Real &gt; const &amp;apx, Array4&lt; Real &gt; const &amp;apy, GpuArray&lt; Real, AMREX_SPACEDIM &gt; const &amp;dx, Array4&lt; Real &gt; const &amp;vfrac, Array4&lt; Real &gt; const &amp;vcent, Array4&lt; Real &gt; const &amp;barea, Array4&lt; Real &gt; const &amp;bcent, Array4&lt; Real &gt; const &amp;bnorm, Array4&lt; Real &gt; const &amp;levset, Real small_volfrac, Geometry const &amp;geom, bool extend_domain_face, int &amp;nsmallcells, int const nmulticuts) noexcept</div><div class="ttdef"><b>Definition:</b> AMReX_EB2_2D_C.cpp:352</div></div>
207+
<div class="ttc" id="anamespaceamrex_1_1EB2_html_ab93166de851db0edebb5ae2569b88cc1"><div class="ttname"><a href="namespaceamrex_1_1EB2.html#ab93166de851db0edebb5ae2569b88cc1">amrex::EB2::build_cells</a></div><div class="ttdeci">void build_cells(Box const &amp;bx, Array4&lt; EBCellFlag &gt; const &amp;cell, Array4&lt; Type_t &gt; const &amp;fx, Array4&lt; Type_t &gt; const &amp;fy, Array4&lt; Real &gt; const &amp;apx, Array4&lt; Real &gt; const &amp;apy, GpuArray&lt; Real, AMREX_SPACEDIM &gt; const &amp;dx, Array4&lt; Real &gt; const &amp;vfrac, Array4&lt; Real &gt; const &amp;vcent, Array4&lt; Real &gt; const &amp;barea, Array4&lt; Real &gt; const &amp;bcent, Array4&lt; Real &gt; const &amp;bnorm, Array4&lt; Real &gt; const &amp;levset, Real small_volfrac, Geometry const &amp;geom, bool extend_domain_face, int &amp;nsmallcells, int const nmulticuts) noexcept</div><div class="ttdef"><b>Definition:</b> AMReX_EB2_2D_C.cpp:351</div></div>
208208
<div class="ttc" id="anamespaceamrex_1_1EB2_html_ae800250c2c38174f8c7e09534afa8f72"><div class="ttname"><a href="namespaceamrex_1_1EB2.html#ae800250c2c38174f8c7e09534afa8f72">amrex::EB2::intercept_to_edge_centroid</a></div><div class="ttdeci">void intercept_to_edge_centroid(AMREX_D_DECL(Array4&lt; Real &gt; const &amp;excent, Array4&lt; Real &gt; const &amp;eycent, Array4&lt; Real &gt; const &amp;ezcent), AMREX_D_DECL(Array4&lt; Type_t const &gt; const &amp;fx, Array4&lt; Type_t const &gt; const &amp;fy, Array4&lt; Type_t const &gt; const &amp;fz), Array4&lt; Real const &gt; const &amp;levset, GpuArray&lt; Real, AMREX_SPACEDIM &gt; const &amp;dx, GpuArray&lt; Real, AMREX_SPACEDIM &gt; const &amp;problo) noexcept</div><div class="ttdef"><b>Definition:</b> AMReX_EB2_ND_C.cpp:5</div></div>
209209
<div class="ttc" id="anamespaceamrex_html_a222089e49ba211b37cf7a4a8ae7eb186"><div class="ttname"><a href="namespaceamrex.html#a222089e49ba211b37cf7a4a8ae7eb186">amrex::Box</a></div><div class="ttdeci">BoxND&lt; AMREX_SPACEDIM &gt; Box</div><div class="ttdef"><b>Definition:</b> AMReX_BaseFwd.H:27</div></div>
210210
</div><!-- fragment --></div><!-- contents -->

amrex/docs_html/doxygen/AMReX__EB2__Level_8H_source.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -798,9 +798,9 @@
798798
<div class="ttc" id="aclassamrex_1_1iMultiFab_html"><div class="ttname"><a href="classamrex_1_1iMultiFab.html">amrex::iMultiFab</a></div><div class="ttdef"><b>Definition:</b> AMReX_iMultiFab.H:32</div></div>
799799
<div class="ttc" id="anamespaceamrex_1_1EB2_html"><div class="ttname"><a href="namespaceamrex_1_1EB2.html">amrex::EB2</a></div><div class="ttdef"><b>Definition:</b> AMReX_FabArrayBase.H:32</div></div>
800800
<div class="ttc" id="anamespaceamrex_1_1EB2_html_a0e86c3c8bf9f242ddba11fbe8db60e66"><div class="ttname"><a href="namespaceamrex_1_1EB2.html#a0e86c3c8bf9f242ddba11fbe8db60e66">amrex::EB2::max_grid_size</a></div><div class="ttdeci">AMREX_EXPORT int max_grid_size</div><div class="ttdef"><b>Definition:</b> AMReX_EB2.cpp:23</div></div>
801-
<div class="ttc" id="anamespaceamrex_1_1EB2_html_a8791492ceba31d5d14372a20721e3695"><div class="ttname"><a href="namespaceamrex_1_1EB2.html#a8791492ceba31d5d14372a20721e3695">amrex::EB2::build_faces</a></div><div class="ttdeci">int build_faces(Box const &amp;bx, Array4&lt; EBCellFlag &gt; const &amp;cell, Array4&lt; Type_t &gt; const &amp;fx, Array4&lt; Type_t &gt; const &amp;fy, Array4&lt; Real &gt; const &amp;levset, Array4&lt; Real const &gt; const &amp;interx, Array4&lt; Real const &gt; const &amp;intery, Array4&lt; Real &gt; const &amp;apx, Array4&lt; Real &gt; const &amp;apy, Array4&lt; Real &gt; const &amp;fcx, Array4&lt; Real &gt; const &amp;fcy, GpuArray&lt; Real, AMREX_SPACEDIM &gt; const &amp;dx, GpuArray&lt; Real, AMREX_SPACEDIM &gt; const &amp;problo, bool cover_multiple_cuts, int &amp;nsmallfaces) noexcept</div><div class="ttdef"><b>Definition:</b> AMReX_EB2_2D_C.cpp:199</div></div>
801+
<div class="ttc" id="anamespaceamrex_1_1EB2_html_a8791492ceba31d5d14372a20721e3695"><div class="ttname"><a href="namespaceamrex_1_1EB2.html#a8791492ceba31d5d14372a20721e3695">amrex::EB2::build_faces</a></div><div class="ttdeci">int build_faces(Box const &amp;bx, Array4&lt; EBCellFlag &gt; const &amp;cell, Array4&lt; Type_t &gt; const &amp;fx, Array4&lt; Type_t &gt; const &amp;fy, Array4&lt; Real &gt; const &amp;levset, Array4&lt; Real const &gt; const &amp;interx, Array4&lt; Real const &gt; const &amp;intery, Array4&lt; Real &gt; const &amp;apx, Array4&lt; Real &gt; const &amp;apy, Array4&lt; Real &gt; const &amp;fcx, Array4&lt; Real &gt; const &amp;fcy, GpuArray&lt; Real, AMREX_SPACEDIM &gt; const &amp;dx, GpuArray&lt; Real, AMREX_SPACEDIM &gt; const &amp;problo, bool cover_multiple_cuts, int &amp;nsmallfaces) noexcept</div><div class="ttdef"><b>Definition:</b> AMReX_EB2_2D_C.cpp:198</div></div>
802802
<div class="ttc" id="anamespaceamrex_1_1EB2_html_a900c8b65fe13dca2d107ec8ae396b7b7"><div class="ttname"><a href="namespaceamrex_1_1EB2.html#a900c8b65fe13dca2d107ec8ae396b7b7">amrex::EB2::extend_domain_face</a></div><div class="ttdeci">AMREX_EXPORT bool extend_domain_face</div><div class="ttdef"><b>Definition:</b> AMReX_EB2.cpp:24</div></div>
803-
<div class="ttc" id="anamespaceamrex_1_1EB2_html_ab93166de851db0edebb5ae2569b88cc1"><div class="ttname"><a href="namespaceamrex_1_1EB2.html#ab93166de851db0edebb5ae2569b88cc1">amrex::EB2::build_cells</a></div><div class="ttdeci">void build_cells(Box const &amp;bx, Array4&lt; EBCellFlag &gt; const &amp;cell, Array4&lt; Type_t &gt; const &amp;fx, Array4&lt; Type_t &gt; const &amp;fy, Array4&lt; Real &gt; const &amp;apx, Array4&lt; Real &gt; const &amp;apy, GpuArray&lt; Real, AMREX_SPACEDIM &gt; const &amp;dx, Array4&lt; Real &gt; const &amp;vfrac, Array4&lt; Real &gt; const &amp;vcent, Array4&lt; Real &gt; const &amp;barea, Array4&lt; Real &gt; const &amp;bcent, Array4&lt; Real &gt; const &amp;bnorm, Array4&lt; Real &gt; const &amp;levset, Real small_volfrac, Geometry const &amp;geom, bool extend_domain_face, int &amp;nsmallcells, int const nmulticuts) noexcept</div><div class="ttdef"><b>Definition:</b> AMReX_EB2_2D_C.cpp:352</div></div>
803+
<div class="ttc" id="anamespaceamrex_1_1EB2_html_ab93166de851db0edebb5ae2569b88cc1"><div class="ttname"><a href="namespaceamrex_1_1EB2.html#ab93166de851db0edebb5ae2569b88cc1">amrex::EB2::build_cells</a></div><div class="ttdeci">void build_cells(Box const &amp;bx, Array4&lt; EBCellFlag &gt; const &amp;cell, Array4&lt; Type_t &gt; const &amp;fx, Array4&lt; Type_t &gt; const &amp;fy, Array4&lt; Real &gt; const &amp;apx, Array4&lt; Real &gt; const &amp;apy, GpuArray&lt; Real, AMREX_SPACEDIM &gt; const &amp;dx, Array4&lt; Real &gt; const &amp;vfrac, Array4&lt; Real &gt; const &amp;vcent, Array4&lt; Real &gt; const &amp;barea, Array4&lt; Real &gt; const &amp;bcent, Array4&lt; Real &gt; const &amp;bnorm, Array4&lt; Real &gt; const &amp;levset, Real small_volfrac, Geometry const &amp;geom, bool extend_domain_face, int &amp;nsmallcells, int const nmulticuts) noexcept</div><div class="ttdef"><b>Definition:</b> AMReX_EB2_2D_C.cpp:351</div></div>
804804
<div class="ttc" id="anamespaceamrex_1_1EB2_html_ae800250c2c38174f8c7e09534afa8f72"><div class="ttname"><a href="namespaceamrex_1_1EB2.html#ae800250c2c38174f8c7e09534afa8f72">amrex::EB2::intercept_to_edge_centroid</a></div><div class="ttdeci">void intercept_to_edge_centroid(AMREX_D_DECL(Array4&lt; Real &gt; const &amp;excent, Array4&lt; Real &gt; const &amp;eycent, Array4&lt; Real &gt; const &amp;ezcent), AMREX_D_DECL(Array4&lt; Type_t const &gt; const &amp;fx, Array4&lt; Type_t const &gt; const &amp;fy, Array4&lt; Type_t const &gt; const &amp;fz), Array4&lt; Real const &gt; const &amp;levset, GpuArray&lt; Real, AMREX_SPACEDIM &gt; const &amp;dx, GpuArray&lt; Real, AMREX_SPACEDIM &gt; const &amp;problo) noexcept</div><div class="ttdef"><b>Definition:</b> AMReX_EB2_ND_C.cpp:5</div></div>
805805
<div class="ttc" id="anamespaceamrex_1_1Gpu_html_a67a618504ee5fb94bd65a5d393e344b4"><div class="ttname"><a href="namespaceamrex_1_1Gpu.html#a67a618504ee5fb94bd65a5d393e344b4">amrex::Gpu::streamSynchronize</a></div><div class="ttdeci">void streamSynchronize() noexcept</div><div class="ttdef"><b>Definition:</b> AMReX_GpuDevice.H:237</div></div>
806806
<div class="ttc" id="anamespaceamrex_1_1Gpu_html_a7a05369cacb826ba5546b4dd507c49dd"><div class="ttname"><a href="namespaceamrex_1_1Gpu.html#a7a05369cacb826ba5546b4dd507c49dd">amrex::Gpu::inLaunchRegion</a></div><div class="ttdeci">bool inLaunchRegion() noexcept</div><div class="ttdef"><b>Definition:</b> AMReX_GpuControl.H:86</div></div>

amrex/docs_html/searchindex.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)