![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1713116/image.png)
Create zero-thickness surface in a 3D partial differential equation problem
3 次查看(过去 30 天)
显示 更早的评论
I am struggling to create the geometry that I want to use in the Matlab PDE modeling interface. I want my model to consist of a zero-thickness triangulated sheet embedded in a tetrahedral mesh of a sphere. I need to address the faces or nodes that lie on the sheets in order to prescribe boundary conditions there.
It's easy to create the outer sphere in the PDE modeling environment:
However I am really struggling to define the zero thickness triangulated sheet geometry inside the sphere.
g2 = geometryFromMesh(mesh,nodes,elements) throws an error if the triangulation described by the input node and element lists does not form a closed boundary. This seems like a limitation of the modeling interface. Any ideas on how to create the geometry within the PDE modeling environment?
Alternatively...
Using a workaround, I created the FE mesh outside the PDE modeling environment. I am able to import this entire mesh into the interface just fine, albiet without any Faces, Edges, or Vertices definitions.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1704111/image.png)
However, it's apparently not possible to prescribe boundary conditions directly at mesh nodes in the PDE modeling interface - boundary conditions can only be prescribed onto geometry vertices. Is there a way to map mesh nodes to geometry vertices?
0 个评论
采纳的回答
Konstantin Kovalev
2024-6-10
A zero-thickness sheet is not a valid 3D geometric object in PDE Toolbox, but you could make a thick sheet instead and use one of its faces to define boundary conditions. Example:
>> gm1 = fegeometry(multisphere(10));
>> gm2 = fegeometry(multicuboid(5,5,1,Zoffset=-1)); % Zoffset shifts top face to XY plane
>> gm3 = addCell(gm1,gm2);
>> pdegplot(gm3,FaceAlpha=0.2);
>> gm4 = generateMesh(gm3);
>> figure
>> pdemesh(gm4);
As you want to apply boundary conditions along an internal sheet surface, you can use faceBC to set them on only one of the multicuboid faces. The multicuboid can be defined such that its top face (face F3 in the image) size, shape, and location coincide with those of the internal sheet surface you want to model. The rest of the multicuboid geometry will not affect the results as long as the same material properties are assigned to both cells. Also, as you use only one face for the boundary conditions, there is no need to make the multicuboid part thin. Giving it large enough thickness (1 in the example) relieves unnecessary constraints on the mesh generator.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1713116/image.png)
更多回答(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!