0

我想解决以下描述膜时间演化的 PDE

在此处输入图像描述

PDE 离散化如下

![在此处输入图像描述

在哪里

在此处输入图像描述

x(s_i) = x_i, j=0,1, 和x^j=x, x^j=y. 我们现在忽略压力项以及常数等k_t

我们希望x(t)使用正向欧拉方法,通过设置x = x + h*dx/dt,与h=1e-6

我的解决方案(for x(t))如下(y为了方便回答,忽略条款)

l = [359,1:358]; 
r = [2:359,1]; %left and right indexing vectors

l1 = [358,359,1:357]; %twice left neighbour
r1 = [3:359,1,2]; %twice right neighbour
 
%create initial closed contour with coordinates x and y
phi = linspace(0,2*pi,360); phi(end) = []; %since closed curve

x = (5 + 0.5*sin(20*phi)).*cos(phi);
y = (5+0.5*sin(20*phi).*cos(phi);
 
ds2 = (1/360)^2;
 
for i = 1:2e5
lengths = sqrt( (x-x(r)).^2 + (y-y(r)).^2 );

Tx=(1/10)/ds2*(x(r) -2*x +x(l) - x0*(((x(r)-x)/lengths)-((x-x(l))/lengths(l))     )  );

%tension term

Bx = 1/ds2^2*(x(r1) - 2*x(r) + x -2(x(r) -2*x + x(l)) + x -2*x(l) + x(l1) ); %bending term

x = x + 1/(1e6)*(Tx); % - Bx); 
% Euler forward step

end

目前,代码运行,但在最后一行,如果我取消 Bx 项,程序将无法运行。似乎我的 Bx 与离散化中的内容相匹配,但显然不是。

在此处输入图像描述

4

0 回答 0