{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Roundoff in finite differences\n", "\n", "Let $f(x)=e^{-1.3x}$. We apply finite difference formulas of first, second, and fourth order to estimate $f'(0)=-1.3$." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "using FundamentalsNumericalComputation" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "
\n", "h | \n", "FD1 | \n", "FD2 | \n", "FD4 | \n", "
---|---|---|---|
Float64 | \n", "Any | \n", "Any | \n", "Any | \n", "
0.1 | \n", "-1.2190456907943883 | \n", "-1.3036647620203023 | \n", "-1.2999875986418996 | \n", "
0.01 | \n", "-1.2915864979712381 | \n", "-1.3000366169760795 | \n", "-1.2999999987623276 | \n", "
0.001 | \n", "-1.2991553660477848 | \n", "-1.3000003661667279 | \n", "-1.2999999999998408 | \n", "
0.0001 | \n", "-1.2999155036632146 | \n", "-1.3000000036618076 | \n", "-1.3000000000006366 | \n", "
1.0e-5 | \n", "-1.2999915500404313 | \n", "-1.3000000000465661 | \n", "-1.3000000000174623 | \n", "
1.0e-6 | \n", "-1.299999154987745 | \n", "-1.2999999999883585 | \n", "-1.30000000007567 | \n", "
1.0e-7 | \n", "-1.2999999150633812 | \n", "-1.300000000745058 | \n", "-1.300000000395812 | \n", "
1.0e-8 | \n", "-1.2999999970197678 | \n", "-1.3000000044703484 | \n", "-1.300000005401671 | \n", "
1.0e-9 | \n", "-1.2999999523162842 | \n", "-1.3000000715255737 | \n", "-1.3000000566244125 | \n", "
1.0e-10 | \n", "-1.3000011444091797 | \n", "-1.3000001907348633 | \n", "-1.2999999523162842 | \n", "
1.0e-11 | \n", "-1.3000030517578125 | \n", "-1.3000030517578125 | \n", "-1.3000011444091797 | \n", "
1.0e-12 | \n", "-1.2999267578125 | \n", "-1.29998779296875 | \n", "-1.300018310546875 | \n", "