(f)
To estimate the number of steps needed to get the first significant digit of the solution, let's try 50 steps (dt=0.1):
>
> ptsE := Euler( MODEL, IC, DOMAIN, 50 );
> ptsE[51];
The last value is now negative (that's an improvement), but is nowhere close to having the correct first significant digit.
>
> ptsE := Euler( MODEL, IC, DOMAIN, 250 ):
> ptsE[251];
>
That's better, let's double the number of steps to 500 (dt=0.01):
> ptsE := Euler( MODEL, IC, DOMAIN, 500 ):
> ptsE[501];
>
That does it! (Actually, while 400 is not enough steps, anything larger than 401 will suffice.)
>
> ptsE := Euler( MODEL, IC, DOMAIN, 400 ):
> ptsE[401];
>
> ptsE := Euler( MODEL, IC, DOMAIN, 401 ):
> ptsE[402];
>
> ptsE := Euler( MODEL, IC, DOMAIN, 402 ):
> ptsE[403];
>