通过直接构造关键矩阵创建几何模型

1.4.2小节介绍了描述几何模型的3个重要矩阵。前面两种方法通过在pdetool工具中鼠标绘制或通过PDE函数绘制后自动生成了这3个矩阵。实际上,可以通过代码直接构造这3个矩阵,并完成建模的后续操作。

【例9】在命令窗口输入下面的代码:

code.matlab
>> R1=[3,4,-0.9638,0.8717,0.8717,-0.9638,0.5312,0.5312,-0.4589,-0.4589 ]';  %矩形区域
>> E1=[4,-0.0082,0.0296,0.4424,0.1859]';    %椭圆区域
>> E1=[E1;zeros(length(R1)-length(E1),1)];    %大小补齐
>> gd=[R1,E1];    %几何描述矩阵
>> sf='R1-E1';    %sf矩阵
>> ns=char('R1','E1');    %名称空间矩阵
>> ns=ns';

使用decsg函数进行子域分解。

code.matlab
>> dl=decsg(gd,sf,ns);

创建PDE模型并设置其几何模型。

code.matlab
>> model=createpde;
>> gp=geometryFromEdges(model,dl);

绘制几何模型的图形,显示边标签和面标签。

code.matlab
>> pdegplot(model,'EdgeLabels','on','FaceLabels','on')

生成与图4-2一样的几何模型。