主要内容

最小的表面问题

此示例显示了如何求解最小的表面方程

- Å (( 1 1 + | | 2 = 0

在单元磁盘上 ω = { (( X ,,,, y | X 2 + y 2 1 } , 和 (( X ,,,, y = X 2 在边界上 ω 。工具箱形式中的椭圆方程是

- Å (( C + au = F

因此,对于最小的表面问题,系数如下:

C = 1 1 + | | 2 ,,,, 一种 = 0 ,,,, F = 0

因为系数C是解决方案的函数,最小的表面问题是一个非线性椭圆问题。

为了使用程序化工作流解决最小的表面问题,首先创建具有单个因变量的PDE模型。

model = createpde;

创建几何形状并将其包括在模型中。这Circleg功能代表此几何形状。

几何弗罗姆(Model,@Circleg);

用边缘标签绘制几何形状。

PDEGPLOT(模型,'edgelabels',,,,'在');轴平等的标题“带边缘标签的几何形状”;

图包含一个轴对象。带有边缘标签的标题几何形状的轴对象包含5个类型行,文本的对象。

指定系数。

a = 0;F = 0;ccoef = @(region,state)1./sqrt(1+State.ux.ux.^ + state.uy。^2);指定系数(模型,'M',0,'D',0,'C',ccoef,'一种',一种,'F',F);

使用功能指定边界条件 (( X ,,,, y = X 2

bcmatrix = @(region,〜)region.x。^2;应用程序条件(模型,'dirichlet',,,,...'边缘',1:Model.DEMETRY.NUMEDGES,...'U',bcmatrix);

生成并绘制网格。

generatemesh(模型,'hmax',0.1);数字;pdemesh(模型);轴平等的

图包含一个轴对象。轴对象包含2个类型行的对象。

通过使用solvepde功能。因为问题是非线性的,所以solvepde调用非线性求解器。通过设置求解器的进度来观察求解器的进度求职者模型的属性'在'

model.solveroptions.ReportStatistics ='在';结果= solvepde(model);
迭代剩余步骤尺寸Jacobian:完整0 1.8540E-02 1 2.8715E-04 1.0000000 2 1.2144E-06 1.0000000
u = result.nodalsolution;

绘制解决方案。

数字;pdeplot(模型,'xydata',你,'zdata',u);XLABEL'X'ylabel'y'Zlabel'u(x,y)'标题“最小表面”

图包含一个轴对象。带有标题最小表面的轴对象包含一个类型补丁的对象。