Skip to main content
edited tags
Link
user21
  • 40.7k
  • 8
  • 114
  • 170
Tweeted twitter.com/StackMma/status/931195873056428037
added 319 characters in body
Source Link
Gergi
  • 143
  • 6

I realised that in the new version of mathematica (11.2.) there is a problem with boundary meshing. If I set the MeshOrder=2 the meshing procedure doesn't recognise the boundary elements between two phases. Somehow lot of elements are not considered as boundary elements. This is quite problematic when i have to apply plane forces to the boundaries.

Needs["NDSolve`FEM`"];
sphere = 
BoundaryDiscretizeRegion[
ImplicitRegion[(x - 5)^2 + (y - 5)^2 + (z - 5)^2 >= 7, {x, y, 
 z}], {{0, 10}, {0, 10}, {0, 10}}];
ym3D = ToElementMesh[sphere, "RegionHoles" -> None, 
"RegionMarker" -> {{5, 5, 5}, 1}]
Show[ym3D["Wireframe"[PlotRange -> {All, {1, 7}, All}]]]

enter image description here

If i set the MeshOrder=1 than everything works well.

ym3D1 = ToElementMesh[sphere, "RegionHoles" -> None, "MeshOrder" -> 1, 
"RegionMarker" -> {{5, 5, 5}, 1}]
Show[ym3D1["Wireframe"[PlotRange -> {All, {1, 7}, All}]]]

enter image description here

I didn't have this problem in the previous version of Mathematica (11.0.) Can anybody help me how to avoid this problem/bug?

FYI: The whole region have to be meshed

ym3D["Wireframe"[
"MeshElement" -> "MeshElements",
"MeshElementStyle" -> {Directive[FaceForm[Green]], 
Directive[FaceForm[Red]]}, PlotRange -> {All, {5, 10.1}, All}]]

enter image description here

I realised that in the new version of mathematica (11.2.) there is a problem with boundary meshing. If I set the MeshOrder=2 the meshing procedure doesn't recognise the boundary elements between two phases. Somehow lot of elements are not considered as boundary elements. This is quite problematic when i have to apply plane forces to the boundaries.

Needs["NDSolve`FEM`"];
sphere = 
BoundaryDiscretizeRegion[
ImplicitRegion[(x - 5)^2 + (y - 5)^2 + (z - 5)^2 >= 7, {x, y, 
 z}], {{0, 10}, {0, 10}, {0, 10}}];
ym3D = ToElementMesh[sphere, "RegionHoles" -> None, 
"RegionMarker" -> {{5, 5, 5}, 1}]
Show[ym3D["Wireframe"[PlotRange -> {All, {1, 7}, All}]]]

enter image description here

If i set the MeshOrder=1 than everything works well.

ym3D1 = ToElementMesh[sphere, "RegionHoles" -> None, "MeshOrder" -> 1, 
"RegionMarker" -> {{5, 5, 5}, 1}]
Show[ym3D1["Wireframe"[PlotRange -> {All, {1, 7}, All}]]]

enter image description here

I didn't have this problem in the previous version of Mathematica (11.0.) Can anybody help me how to avoid this problem/bug?

I realised that in the new version of mathematica (11.2.) there is a problem with boundary meshing. If I set the MeshOrder=2 the meshing procedure doesn't recognise the boundary elements between two phases. Somehow lot of elements are not considered as boundary elements. This is quite problematic when i have to apply plane forces to the boundaries.

Needs["NDSolve`FEM`"];
sphere = 
BoundaryDiscretizeRegion[
ImplicitRegion[(x - 5)^2 + (y - 5)^2 + (z - 5)^2 >= 7, {x, y, 
 z}], {{0, 10}, {0, 10}, {0, 10}}];
ym3D = ToElementMesh[sphere, "RegionHoles" -> None, 
"RegionMarker" -> {{5, 5, 5}, 1}]
Show[ym3D["Wireframe"[PlotRange -> {All, {1, 7}, All}]]]

enter image description here

If i set the MeshOrder=1 than everything works well.

ym3D1 = ToElementMesh[sphere, "RegionHoles" -> None, "MeshOrder" -> 1, 
"RegionMarker" -> {{5, 5, 5}, 1}]
Show[ym3D1["Wireframe"[PlotRange -> {All, {1, 7}, All}]]]

enter image description here

I didn't have this problem in the previous version of Mathematica (11.0.) Can anybody help me how to avoid this problem/bug?

FYI: The whole region have to be meshed

ym3D["Wireframe"[
"MeshElement" -> "MeshElements",
"MeshElementStyle" -> {Directive[FaceForm[Green]], 
Directive[FaceForm[Red]]}, PlotRange -> {All, {5, 10.1}, All}]]

enter image description here

edited body
Source Link
Gergi
  • 143
  • 6
Loading
added 178 characters in body
Source Link
Gergi
  • 143
  • 6
Loading
Source Link
Gergi
  • 143
  • 6
Loading