フィルターのクリア

Why is my error not exactly 0

6 ビュー (過去 30 日間)
Nicholas Zhao
Nicholas Zhao 2024 年 4 月 13 日
回答済み: Image Analyst 2024 年 4 月 13 日
I wrote a very simple upwind difference scheme for the equation with , but for some reason the error is not exactly 0.
%u_t+u_x=0
space=[0.01,0.005,0.0025,0.00125];
error=zeros(size(space));
for j=1:size(space,2)
dx=space(j);
dt=dx;
u=sin(0:dx:1);
n=size(u,2);
T=1/dt;
for i=1:1
ul=[sin(-dx-dt*(i-1)),u(1:(n-1))];
u=(1-dt/dx)*u+ul*dt/dx;
end
error(j)=norm(u-sin((0:dx:1)-dt),1)/n;
end

回答 (1 件)

Image Analyst
Image Analyst 2024 年 4 月 13 日
error is a built-in function. You must not use it as a name for your variable.
Does the FAQ answer your question?

カテゴリ

Help Center および File ExchangeEigenvalue Problems についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by