


{"id":458851,"date":"2026-05-26T09:25:42","date_gmt":"2026-05-26T09:25:42","guid":{"rendered":"https:\/\/innovationspace.ansys.com\/forum\/forums\/topic\/2d-axisymmetric-overset-mesh-best-approach-for-the-axis-boundary\/"},"modified":"2026-05-26T09:25:42","modified_gmt":"2026-05-26T09:25:42","slug":"2d-axisymmetric-overset-mesh-best-approach-for-the-axis-boundary","status":"publish","type":"topic","link":"https:\/\/innovationspace.ansys.com\/forum\/forums\/topic\/2d-axisymmetric-overset-mesh-best-approach-for-the-axis-boundary\/","title":{"rendered":"2D Axisymmetric Overset Mesh: Best approach for the axis boundary?"},"content":{"rendered":"<p>&lt;p class=&#8221;my-2 [&amp;+p]:mt-4 [&amp;_strong:has(+br)]:inline-block [&amp;_strong:has(+br)]:pb-2&#8243;&gt;Hi everyone,&lt;\/p&gt;&lt;p class=&#8221;my-2 [&amp;+p]:mt-4 [&amp;_strong:has(+br)]:inline-block [&amp;_strong:has(+br)]:pb-2&#8243;&gt;I&rsquo;m running a VOF simulation of a 4mm steel ball dropping into water using an overset dynamic mesh (Fluent 2025 R2). My 3D setup works fine, but I want to run a&nbsp;<strong>2D Axisymmetric<\/strong> case to save computational time as the 3d setup is computationally too expensive. I am struggling with how to handle the moving overset boundary at the axis of revolution Y=0.&lt;\/p&gt;&lt;p class=&#8221;my-2 [&amp;+p]:mt-4 [&amp;_strong:has(+br)]:inline-block [&amp;_strong:has(+br)]:pb-2&#8243;&gt;Here is what happens depending on my topology:&lt;\/p&gt;&lt;ul class=&#8221;marker:text-quiet list-disc pl-8&#8243;&gt;&lt;li class=&#8221;py-0 my-0 prose-p:pt-0 prose-p:mb-2 prose-p:my-0 [&amp;&gt;p]:pt-0 [&amp;&gt;p]:mb-2 [&amp;&gt;p]:my-0&#8243; style=&#8221;box-sizing: border-box; scrollbar-color: initial; scrollbar-width: initial; &#8211;tw-border-spacing-x: 0; &#8211;tw-border-spacing-y: 0; &#8211;tw-translate-x: 0; &#8211;tw-translate-y: 0; &#8211;tw-rotate: 0; &#8211;tw-skew-x: 0; &#8211;tw-skew-y: 0; &#8211;tw-scale-x: 1; &#8211;tw-scale-y: 1; &#8211;tw-scroll-snap-strictness: proximity; &#8211;tw-ring-offset-width: 0px; &#8211;tw-ring-offset-color: #fff; &#8211;tw-ring-color: #3b82f680; &#8211;tw-ring-offset-shadow: 0 0 #0000; &#8211;tw-ring-shadow: 0 0 #0000; &#8211;tw-shadow: 0 0 #0000; &#8211;tw-shadow-colored: 0 0 #0000; margin-top: 0px; margin-bottom: 0px; padding-inline-start: 0.375em; padding-top: 0px; padding-bottom: 0px; border: 0px solid var(&#8211;border-medium);&#8221;&gt;&lt;p class=&#8221;my-2 [&amp;+p]:mt-4 [&amp;_strong:has(+br)]:inline-block [&amp;_strong:has(+br)]:pb-2&#8243;&gt;<strong>Approach 1 (Boundary exactly on Axis):<\/strong> Fluent throws an (sometimes) instant floating-point exception (AMG divergence) at t=0, presumably due to zero radial volume in the overlap.&lt;\/p&gt;<\/li>\n<p>&lt;li class=&#8221;py-0 my-0 prose-p:pt-0 prose-p:mb-2 prose-p:my-0 [&amp;&gt;p]:pt-0 [&amp;&gt;p]:mb-2 [&amp;&gt;p]:my-0&#8243; style=&#8221;box-sizing: border-box; scrollbar-color: initial; scrollbar-width: initial; &#8211;tw-border-spacing-x: 0; &#8211;tw-border-spacing-y: 0; &#8211;tw-translate-x: 0; &#8211;tw-translate-y: 0; &#8211;tw-rotate: 0; &#8211;tw-skew-x: 0; &#8211;tw-skew-y: 0; &#8211;tw-scale-x: 1; &#8211;tw-scale-y: 1; &#8211;tw-scroll-snap-strictness: proximity; &#8211;tw-ring-offset-width: 0px; &#8211;tw-ring-offset-color: #fff; &#8211;tw-ring-color: #3b82f680; &#8211;tw-ring-offset-shadow: 0 0 #0000; &#8211;tw-ring-shadow: 0 0 #0000; &#8211;tw-shadow: 0 0 #0000; &#8211;tw-shadow-colored: 0 0 #0000; margin-top: 0px; margin-bottom: 0px; padding-inline-start: 0.375em; padding-top: 0px; padding-bottom: 0px; border: 0px solid var(&#8211;border-medium);&#8221;&gt;&lt;p class=&#8221;my-2 [&amp;+p]:mt-4 [&amp;_strong:has(+br)]:inline-block [&amp;_strong:has(+br)]:pb-2&#8243;&gt;<strong>Approach 2 (Micro-gap):<\/strong>&nbsp;Moving the overset box radially upward by 0.01 mm avoids the zero-volume crash, and the run starts. However, it creates ~180 orphan cells at the sphere&#8217;s bottom pole. When the ball hits the water, the pressure spike at these orphans crashes the solver.&lt;\/p&gt;<\/li>\n<p>&lt;li class=&#8221;py-0 my-0 prose-p:pt-0 prose-p:mb-2 prose-p:my-0 [&amp;&gt;p]:pt-0 [&amp;&gt;p]:mb-2 [&amp;&gt;p]:my-0&#8243; style=&#8221;box-sizing: border-box; scrollbar-color: initial; scrollbar-width: initial; &#8211;tw-border-spacing-x: 0; &#8211;tw-border-spacing-y: 0; &#8211;tw-translate-x: 0; &#8211;tw-translate-y: 0; &#8211;tw-rotate: 0; &#8211;tw-skew-x: 0; &#8211;tw-skew-y: 0; &#8211;tw-scale-x: 1; &#8211;tw-scale-y: 1; &#8211;tw-scroll-snap-strictness: proximity; &#8211;tw-ring-offset-width: 0px; &#8211;tw-ring-offset-color: #fff; &#8211;tw-ring-color: #3b82f680; &#8211;tw-ring-offset-shadow: 0 0 #0000; &#8211;tw-ring-shadow: 0 0 #0000; &#8211;tw-shadow: 0 0 #0000; &#8211;tw-shadow-colored: 0 0 #0000; margin-top: 0px; margin-bottom: 0px; padding-inline-start: 0.375em; padding-top: 0px; padding-bottom: 0px; border: 0px solid var(&#8211;border-medium);&#8221;&gt;&lt;p class=&#8221;my-2 [&amp;+p]:mt-4 [&amp;_strong:has(+br)]:inline-block [&amp;_strong:has(+br)]:pb-2&#8243;&gt;<strong>Approach 3 (Overlapping the Axis):<\/strong>&nbsp;I tried extending the overset domain slightly&nbsp;<em>past<\/em> the Y=0 axis. (See the two attached images showing the mesh overlap and the Fluent VOF initialization). While Fluent cuts the hole, the interface gets jagged\/stair-stepped around the curved boundary and it still crashes at water impact.&lt;\/p&gt;<\/li>\n<\/ul>\n<p>&lt;p class=&#8221;my-2 [&amp;+p]:mt-4 [&amp;_strong:has(+br)]:inline-block [&amp;_strong:has(+br)]:pb-2&#8243;&gt;<strong>What I&#8217;ve tried:<\/strong>&nbsp;Lowering URFs (Pressure to 0.1), variable time-stepping (Courant &lt; 0.25), changing donor priority to boundary distance, and making the overset mesh perfectly Cartesian at the overlap.&lt;\/p&gt;&lt;p class=&#8221;my-2 [&amp;+p]:mt-4 [&amp;_strong:has(+br)]:inline-block [&amp;_strong:has(+br)]:pb-2&#8243;&gt;<strong>My Question:<\/strong>&lt;br&gt;Since axisymmetric overset meshes should be compatible, how should I actually approach this? What is the correct workflow or geometry topology for a moving overset component that must slide along a 2D axis without generating divide-by-zero errors or fatal orphan cells?&lt;\/p&gt;&lt;p class=&#8221;my-2 [&amp;+p]:mt-4 [&amp;_strong:has(+br)]:inline-block [&amp;_strong:has(+br)]:pb-2&#8243;&gt;Thanks in advance!&lt;\/p&gt;&lt;p&gt;&nbsp;&lt;\/p&gt;&lt;p&gt;&nbsp;&lt;\/p&gt;&lt;p&gt;I also noticed that sometimes it does it quite well but than creates an orphan cell in front of the ball causing the simulation to crash when it touch the water-air boundary.&lt;\/p&gt;&lt;p&gt;<img decoding=\"async\" src=\"https:\/\/innovationspace.ansys.com\/forum\/wp-content\/uploads\/sites\/2\/2026\/05\/26-05-2026-1779787193-fluent.jpg\" alt=\"After initialisation in fluent case 3\" \/><img decoding=\"async\" src=\"https:\/\/innovationspace.ansys.com\/forum\/wp-content\/uploads\/sites\/2\/2026\/05\/26-05-2026-1779787227-meshing.jpg\" alt=\"the mesh\" \/>&lt;\/p&gt;<\/p>\n","protected":false},"template":"","class_list":["post-458851","topic","type-topic","status-publish","hentry","topic-tag-2d-axisymmetric","topic-tag-air-waterflow-1","topic-tag-dynamic-mesh","topic-tag-floating-point-error","topic-tag-fluent","topic-tag-fluid-dynamics","topic-tag-ImplicitVOF-1","topic-tag-overset-1","topic-tag-overset-mesh"],"aioseo_notices":[],"acf":[],"custom_fields":[{"0":{"_bbp_forum_id":["27792"],"_bbp_topic_id":["458851"],"_bbp_subscription":["691925"],"_bbp_author_ip":["80.114.146.244"],"_bbp_last_reply_id":["0"],"_bbp_last_active_id":["458851"],"_bbp_last_active_time":["2026-05-26 09:25:42"],"_bbp_reply_count":["0"],"_bbp_reply_count_hidden":["0"],"_bbp_voice_count":["1"],"_bbp_engagement":["691925"],"_btv_view_count":["22"],"_bbp_topic_status":["unanswered"]},"test":"t-d-a-keulersstudent-tudelft-nl"}],"_links":{"self":[{"href":"https:\/\/innovationspace.ansys.com\/forum\/wp-json\/wp\/v2\/topics\/458851","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/innovationspace.ansys.com\/forum\/wp-json\/wp\/v2\/topics"}],"about":[{"href":"https:\/\/innovationspace.ansys.com\/forum\/wp-json\/wp\/v2\/types\/topic"}],"version-history":[{"count":0,"href":"https:\/\/innovationspace.ansys.com\/forum\/wp-json\/wp\/v2\/topics\/458851\/revisions"}],"wp:attachment":[{"href":"https:\/\/innovationspace.ansys.com\/forum\/wp-json\/wp\/v2\/media?parent=458851"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}