You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit faebc5a
Browse filesBrowse the repository at this point in the historyBrowse files
<li><b>Add the module to <spanclass="tt">docs/module_categories.json</span></b> so it appears in this page</li>
434
434
</ol>
435
435
<p>Follow the pattern of existing modules like <spanclass="tt">m_body_forces</span> (simple) or <spanclass="tt">m_viscous</span> (more involved) as a template.</p>
<tdclass="markdownTableBodyRight"><spanclass="tt">many_ib_patch_parallelism</span></td><tdclass="markdownTableBodyCenter">Logical </td><tdclass="markdownTableBodyLeft">Parallelize over IB patches instead of grid cells (better for many small patches). </td></tr>
451
451
<trclass="markdownTableRowEven">
452
+
<tdclass="markdownTableBodyRight"><spanclass="tt">ib_second_order_vel</span></td><tdclass="markdownTableBodyCenter">Logical </td><tdclass="markdownTableBodyLeft">Extrapolate the ghost-point velocity linearly through the boundary intercept. </td></tr>
453
+
<trclass="markdownTableRowOdd">
454
+
<tdclass="markdownTableBodyRight"><spanclass="tt">ib_ip_min_dist</span></td><tdclass="markdownTableBodyCenter">Real </td><tdclass="markdownTableBodyLeft">Minimum boundary-to-image-point distance, in local cell widths, for <spanclass="tt">ib_second_order_vel</span>. </td></tr>
455
+
<trclass="markdownTableRowEven">
452
456
<tdclass="markdownTableBodyRight"><spanclass="tt">geometry</span></td><tdclass="markdownTableBodyCenter">Integer </td><tdclass="markdownTableBodyLeft">Geometry configuration of the patch. </td></tr>
453
457
<trclass="markdownTableRowOdd">
454
458
<tdclass="markdownTableBodyRight"><spanclass="tt">x[y,z]_centroid</span></td><tdclass="markdownTableBodyCenter">Real </td><tdclass="markdownTableBodyLeft">Centroid of the applied geometry in the [x,y,z]-direction. </td></tr>
<li><spanclass="tt">collision_time</span> is approximately the amount of simulation time used to resolve collisions. This is handled by modifying the spring constant used to apply collision forces.</li>
549
553
<li><spanclass="tt">collision_temporal_resolution</span> restricts the adaptive time step (<spanclass="tt">cfl_adap_dt</span>) to at most <spanclass="tt">collision_time / collision_temporal_resolution</span> while any collision is occurring, so that each collision is resolved with at least that many time steps. Pairing it with <spanclass="tt">ramp_ratio</span> limits how quickly the time step grows back once the collision ends.</li>
550
554
<li><spanclass="tt">ib_coefficient_of_friction</span> is the coefficient of friction used in IB collisions.</li>
555
+
<li><spanclass="tt">ib_second_order_vel</span> replaces the default ghost-point velocity, which imposes the wall velocity at the ghost point, with the linear extrapolation of Mittal et al. (2008) through the boundary intercept and replaces the interpolation scheme with a bilinear weight interpolation.</li>
556
+
<li><spanclass="tt">ib_ip_min_dist</span> sets \(d_{IP} = \max(d_{GP}, \text{ib\_ip\_min\_dist}\,\Delta)\), with \(\Delta\) the smallest local cell width, so image points of near-wall ghost points interpolate from fluid cells. The default 0 is the pure mirror ( \(d_{IP} = d_{GP}\)). About \(\sqrt{2}\) in 2D ( \(\sqrt{3}\) in 3D) keeps the stencil off a locally planar wall.</li>
551
557
<li><spanclass="tt">ib_neighborhood_radius</span> controls the size of the neighborhood size. A value of $r$ indicates that any given rank is aware of IBs up to $r$ ranks away. This value defaults to 0, which leaves the radius unset so that it is selected automatically. This parameter is required to strong-scale a case when IBs eventually grow to be larger than one full processor domain wide.</li>
<p>💡 <b>Tip:</b> If you encounter a validation error, check the relevant section above or review <ahref="https://github.com/MFlowCode/MFC/blob/master/toolchain/mfc/case_validator.py"><spanclass="tt">case_validator.py</span></a> for complete validation logic.</p>
0 commit comments