View Issue Details

IDProjectCategoryView StatusLast Update
0001131OpenFOAMBugpublic2014-01-24 09:01
Reporteruser828Assigned Touser4 
PriorityhighSeveritymajorReproducibilityrandom
Status resolvedResolutionno change required 
PlatformLinuxOSUbuntuOS Version12.04
Summary0001131: Wrong surface normals with snappyHexMesh's baffle feature on varying blockMeshDict description
DescriptionI understand that this problem was observed and resolved here http://www.openfoam.org/mantisbt/view.php?id=772 but there is are situations when this problem resurfaces. One such situation is varying the blockMeshDict file. I notice an error in the orientation of the surface normals (hence Displacements and Stresses) if my blockMesh deviates from the following box dimensions (-100,-50,-50) by (100,50,50) with (50,25,25) blocks in the respective directions. The baffle I am creating using SHM is a circular surface with center at (0,0,0) and radius as 5 in the yz plane. The two deviations that don't work that I have tested so far are
1. box dims = (-100,-50,-50) by (200,50,50), #blocks = (75,25,25)
2. box dims = (-100,-50,-50) by (300,50,50), #blocks = (100,25,25)
As you can see the aspect ratio is 1:1:1 in all the cases.

I am using soildDisplacementFoam. The case calculates the stresses around an open fracture by applying equal and opposite tractionDisplacement boundary conditions on the two faces of the baffle.
Steps To ReproduceRun attached case.
Vary blockMeshDict and run case again.

blockMesh
snappyHexMesh -overwrite
solidDisplacementFoam
Tagsbaffle, snappyHexMesh, surface normal

Activities

user828

2014-01-10 20:35

 

frac1.zip (757,315 bytes)

user828

2014-01-10 20:36

 

200x100x100_50x25x25.png (221,258 bytes)   
200x100x100_50x25x25.png (221,258 bytes)   

user828

2014-01-10 20:36

 

300x100x100_75x25x25.png (249,808 bytes)   
300x100x100_75x25x25.png (249,808 bytes)   

user828

2014-01-10 20:37

 

400x100x100_100x25x25.png (267,570 bytes)

user828

2014-01-10 20:43

  ~0002759

File 200x100x100_50x25x25 shows the correct displacement profile. This was obtained by using a blockmesh dimensions (-100,-50,-50) by (100,50,50) with (50,25,25) blocks in the respective directions. The circle you see in the figure is a baffle with equal and opposite traction displacement pressure on the two faces hence creating a uniform displacement profile.
File 300x100x100_75x25x25 and File 400x100x100_100x25x25 show the incorrect displacement profiles. As you see there are specific blocks in these two grids where the displacement is varying between the extreme +ve and -ve values randomly.
In all cases the circular disk fracture is located with center at (0,0,0) and radius of 5 in the YZ plane.

user4

2014-01-20 09:23

  ~0002764

I am running your setup (100x25x25) and the normals are ok.

x_n -100;
x_p 300;
y_n -50;
y_p 50;
z_n -50;
z_p 50;

n_x 100;
n_y 25;
n_z 25;

user828

2014-01-20 21:59

  ~0002765

Mattijs,

I am sorry but I am not able to reproduce the result. Can you help me diagnose what is wrong in my case? I have attached the exact cases with this note. Sneddon_50_25_25 is able to identify the normals correctly while Sneddon_100_25_25 is not able to identify the normals on the chosen patch correctly. The patches I am interested in are ff and ff_slave. Running the Allrun file in both cases should be enough to generate results.

Thanks for your help.
Ripu

user828

2014-01-20 21:59

 

user828

2014-01-20 21:59

 

user4

2014-01-21 09:06

  ~0002766

All works fine for me in 22x. Normals are correctly oriented (ff points in +x direction, ff_slave in -x direction). Normals are correctly preserved in renumberMesh.

Are you running an uptodate 22x?

user828

2014-01-21 18:14

  ~0002770

Thanks Mattijs. I am running a binary version of of222. I will install the latest version from a source pack and see if I can figure this out. Thanks for all your help. I will respond back in a couple of days and let you know if updating helped.

user828

2014-01-24 05:07

  ~0002781

The problem was fixed by installing an uptodate version of 22x from the Openfoam repository. Thanks for your help!

Issue History

Date Modified Username Field Change
2014-01-10 20:35 user828 New Issue
2014-01-10 20:35 user828 File Added: frac1.zip
2014-01-10 20:36 user828 File Added: 200x100x100_50x25x25.png
2014-01-10 20:36 user828 File Added: 300x100x100_75x25x25.png
2014-01-10 20:37 user828 File Added: 400x100x100_100x25x25.png
2014-01-10 20:38 user828 Tag Attached: snappyHexMesh
2014-01-10 20:38 user828 Tag Attached: baffle
2014-01-10 20:38 user828 Tag Attached: surface normal
2014-01-10 20:43 user828 Note Added: 0002759
2014-01-20 09:23 user4 Note Added: 0002764
2014-01-20 21:59 user828 Note Added: 0002765
2014-01-20 21:59 user828 File Added: Sneddon_50_25_25.tar.gz
2014-01-20 21:59 user828 File Added: Sneddon_100_25_25.tar.gz
2014-01-21 09:06 user4 Note Added: 0002766
2014-01-21 18:14 user828 Note Added: 0002770
2014-01-24 05:07 user828 Note Added: 0002781
2014-01-24 09:01 user4 Status new => resolved
2014-01-24 09:01 user4 Fixed in Version => 2.2.x
2014-01-24 09:01 user4 Resolution open => no change required
2014-01-24 09:01 user4 Assigned To => user4