MATLAB Answers


How to add tolerance in code for unsteady 2D problem?

Asked by Bibigul
on 11 Oct 2018
Latest activity Answered by Bibigul
on 14 Oct 2018
Hello, I am working on unsteady 2D coupled PDE. I have four equations need to solve simultaneously. I generate a code even working well. But for accuracy purpose, I need to add tolerance. I did it for 2D (steady case) but couldn't success for this problem. My problem have four unknowns C,T,U and V. 'i' for x-index, 'j' for y-index and 'k' for time level. I am calculating each unknown, say C, at a particular 'i' for all 'j' at '(k+1)th' time level.
I attached my code here. Can someone help me?
Thank you in advance.
Kind regards,


Sign in to comment.


2 Answers

Answer by KSSV
on 11 Oct 2018
Edited by KSSV
on 11 Oct 2018

Take the required errors out from the the function for different values of (nx,ny,nt) when you get satisfactory error, break the loop.
nx = 10:10:100 ; % take your desired values
ny = nx ;
nt = nx ;
for i = 1:length(nx)
err = thesisp3atitol2(nx(i),ny(i),nt(i)) ;
if err<=tol
[nx(i) ny(i) nt(i)] % pick these values for less error


@KSSV nx, ny and nt are the no of points in x,y direction and for time respectively. Unknown vector , say C, is a vector of size(ny-1,1) for each i. I am calculating C at (k+1)th time level. I am trying to insert while loop.
Yes I know that (nx,ny,nt) are number of points..okay you can replace the for loop with while loop very much.

Sign in to comment.

Answer by Bibigul
on 14 Oct 2018

@KSSV I already run the function for different values of (nx, ny, nt). Now I want to check the error for fixed domain.


Sign in to comment.