Why the distribution along spatial axis x changes tremendously even by increasing only one step size?

조회 수: 4 (최근 30일)
I study the Schnakenberg-Turing model on a static 1D domain:
% The PDEs are
% D(u1)/Dt = 1*D^2(u1)/Dx^2 + 70(0.2-u1 + u1^2*u2)
% D(u2)/Dt = 100*D^2(u2)/Dx^2 + 70(0.5 - u1^2*u2)
%
% The initial condition is u1(x,0) = 0 and u2(x,0) = 0 for 0 <= x <= 1.
% The left boundary condition is D(u1)/Dx = 0, D(u2)/Dx = 0.
% The right boundary condition is D(u1)/Dx = 0, D(u2)/Dx = 0:
%
L = 1;
maxt = 10;
m = 0;
x = linspace(0,1,100);
% x = linspace(0,1,101);
% IF the no. of points of x is changed from 100 to 101, the result changes tremendously. See the following figures.
% Which is the correct?
t = linspace(0,10,101);
sol = pdepe(m,@pdex4pde,@pdex4ic,@pdex4bc,x,t);
u1 = sol(:,:,1);
u2 = sol(:,:,2);
% Plotting the the final distribution of u1 at t=10.
figure(1)
plot(x,u1(end,:))
title('Final distribution of u1(x,t)')
% --------------------------------------------------------------------------
function [c,f,s] = pdex4pde(x,t,u,DuDx)
a = 0.2;
c = [1; 1];
f = [1; 100] .* DuDx;
s = [70*(a-u(1)+u(1)^2*u(2));
70*(0.5-u(1)^2*u(2))];
% --------------------------------------------------------------------------
function u0 = pdex4ic(x)
u0 = [0; 0];
% --------------------------------------------------------------------------
function [pl,ql,pr,qr] = pdex4bc(xl,ul,xr,ur,t)
pl = [0; 0];
ql = [1; 1];
pr = [0; 0];
qr = [1; 1];
  댓글 수: 1
Torsten
Torsten 2023년 11월 4일
Isn't this behaviour typical for the model ? When I googled "Schnakenberg-Turing model", all the hits were related to stability analysis.

댓글을 달려면 로그인하십시오.

답변 (1개)

SOUMNATH PAUL
SOUMNATH PAUL 2023년 12월 29일
Hi,
To my understanding the tremendous change in the distribution along the spatial axis x when increasing the step size is likely due to the following points:
  1. Small changes in discretization can lead to different numerical instabilities in nonlinear PDEs.
  2. Turing patterns are sensitive to spatial discretization, which affects the represented wavelengths and modes.
  3. A finer or coarser grid changes the discretization error, influencing the solution's accuracy.
  4. The accuracy of Neumann boundary conditions representation can vary with grid spacing.
To determine which result is more accurate kindly perform a convergence test, check for stability and physical validity, ensure mesh independence, and consider using different numerical methods for verification.
Hope it helps!
Regards,
Soumnath

카테고리

Help CenterFile Exchange에서 PDE Solvers에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by