How to import geometry with holes to use with PDE toolbox?
9 次查看(过去 30 天)
显示 更早的评论
So there are two main options for creating geometry for a PDE model: geometryFromMesh and importGeometry.
The geometry I have is essentially a hollow sphere (i.e. a solid sphere with a smaller spherical cutout inside). I have created an STL file and attempted to use importGeometry. However, I get the error "Assemblies of more than one geometric model are not currently supported"
Now I am looking into using geometryFromMesh. I have two questions: 1. Is this even possible? 2. If so, then how might I create a mesh that has holes in it?
This is the geometry I'm trying to use.
0 个评论
回答(1 个)
Alan Weiss
2017-1-18
编辑:Alan Weiss
2017-1-18
You could try something like the following series of commands:
[az,el,r] = meshgrid(linspace(0,2*pi-0.01),linspace(-pi,pi-0.01),linspace(0.25,1));
[x,y,z] = sph2cart(az,el,r);
shp = alphaShape(x(:),y(:),z(:),0.05);
[elements,nodes] = boundaryFacets(shp);
nodes = nodes';
elements = elements';
model = createpde();
geometryFromMesh(model,nodes,elements);
pdegplot(model,'FaceLabels','on','FaceAlpha',0.5)
Don't forget to mesh your resulting geometry by using generateMesh.
Alan Weiss
MATLAB mathematical toolbox documentation
5 个评论
Alan Weiss
2017-2-2
I am very sorry that you are having such trouble with geometry creation. But really, you are trying to push the current 3-D geometry beyond what it can do. It is not designed for subdomains, nor for holes or multiple regions. My code is sort of fortuitously workable, but I don't really know why.
If you can afford to wait until the next release in March, then things might be somewhat better, but I cannot promise or even describe anything that is coming up. Sorry.
Alan Weiss
MATLAB mathematical toolbox documentation
另请参阅
类别
在 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!