- findElements: https://www.mathworks.com/help/pde/ug/pde.femesh.findelements.html
- findNodes: https://www.mathworks.com/help/pde/ug/pde.femesh.findnodes.html
- triangulation: https://www.mathworks.com/help/matlab/ref/triangulation.html
- freeBoundary: https://www.mathworks.com/help/matlab/ref/triangulation.freeboundary.html
gmsh .m files, reading boundaries
30 次查看(过去 30 天)
显示 更早的评论
Is it possible to export the boundary information when exporting gmsh mesh. I want to apply forces to certain boundaries in the mesh. I read that one can identify domains in the mesh, but could not find any information regarding boundaries.
0 个评论
采纳的回答
Jaynik
2024-5-16
Hi Divyaprakash,
Assuming the variable 'msh' contains the mesh information from the Gmsh '.m' file. You can read the following answer to read the file in MATLAB: https://www.mathworks.com/matlabcentral/answers/483115-reading-msh-files-3d-in-matlab.
Once you have loaded the mesh information, you can use the findElements function to find mesh elements belonging to a specific region and the findNodes function to find the nodes that belong to a specific region from the Partial Differential Equation Toolbox.
You can directly use the properties of the 'msh' variable to create a triangulation object and use the freeBoundary function to find the outer surface of the mesh. Following is the code for the same:
nodes = msh.POS'; % Node coordinates
elements = msh.TETS(:, 1:4); % Element connectivity
T = triangulation(elements, nodes);
boundary_faces = freeBoundary(T);
Refer to the following documentation for more details about each function:
For a more detailed solution, it would be beneficial if you could provide additional details about your model.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Geometry and Mesh 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!