CFD Online Logo CFD Online URL
Home > Forums > Software User Forums > Siemens > STAR-CCM+

Creating field function for AMR to not touch the surface of a vehicle

Register Blogs Members List Search Today's Posts Mark Forums Read

Like Tree1Likes
  • 1 Post By f-w

LinkBack Thread Tools Search this Thread Display Modes
Old   August 15, 2023, 13:31
Default Creating field function for AMR to not touch the surface of a vehicle
New Member
Join Date: Jul 2023
Posts: 9
Rep Power: 2
kev11 is on a distinguished road

I posted a similar question earlier, but I am still having trouble. First, I have an inviscid simulation of an aircraft at hypersonic speeds. I am using AMR to refine areas where the shock should be by using a pressure criterion. However, the AMR is refining areas on the vehicle's surface (fuselage, vertical wing), which is unnecessary and increases my cell count.

I have been using a function called "distanceToSurface" to calculate the distance from every cell to the fuselage, for instance. I then used a boolean statement that said if the cell is less than 0.001 m away from the fuselage, then do not refine there (return a 0). But when I do that, I lose cell refinement on the tip of the fuselage, where the shock is located. I also tried setting the distance boolean to not refine areas where the distance is 0, but that does not work either. Is there any other ways I can tackle this problem??
kev11 is offline   Reply With Quote

Old   August 16, 2023, 15:20
Senior Member
Join Date: Apr 2009
Posts: 148
Rep Power: 16
f-w is on a distinguished road
AMR does not operate on surface mesh, but it does have a check box for refining prism layers (which is disabled by default, as it significantly increases cell count). You're defeating the purpose of shock capturing if you force AMR off near body, where shocks are formed. Sounds like you need to tweak or change your AMR function to behave as you wish. Other than "distanceToSurface", you can also experiment with the "insidePart" operator. This operator returns a value of 1 in cells inside an arbitrary surface/part and 0 elsewhere, notation is insidePart(@GeometryPart("part_name")), but I wouldn't enclose your body as it defeats the purpose of shock capturing.
Aeronautics El. K. likes this.
f-w is offline   Reply With Quote


amr, field function

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On

Similar Threads
Thread Thread Starter Forum Replies Last Post
[Other] dynamicTopoFVMesh and pointDisplacement RandomUser OpenFOAM Meshing & Mesh Conversion 6 April 26, 2018 08:30
channelFoam for a 3D pipe AlmostSurelyRob OpenFOAM 3 June 24, 2011 14:06
Help creating a field function to create a sine pressure wave Pleb STAR-CCM+ 2 February 17, 2011 13:16
Version 15 on Mac OS X gschaider OpenFOAM Installation 113 December 2, 2009 11:23
Error with Wmake skabilan OpenFOAM Installation 3 July 28, 2009 01:35

All times are GMT -4. The time now is 09:34.