diff --git a/paper.bib b/paper.bib index 8527749d952cb1b7c610990a7b947721650b8ecf..80617ce152e2718273c829fb910b11be236ed04e 100755 --- a/paper.bib +++ b/paper.bib @@ -140,3 +140,9 @@ volume={2}, year={1996} } + +@misc{Mathematica, + author = {Wolfram Research{,} Inc.}, + title = {Mathematica, {V}ersion 12.0}, + note = {Champaign, IL, 2019} +} diff --git a/paper.md b/paper.md index 36e016a426784a1e98635928fe58005738e87991..2462d541e2cb523692793e6ba7550aabf5559883 100755 --- a/paper.md +++ b/paper.md @@ -59,13 +59,12 @@ In a typical non-adaptive experiment, decisions on how to sample are made and fi #### Plotting and low dimensional integration uses local sampling. Plotting a function in between bounds requires one to evaluate the function on sufficiently many points such that when neighboring points are connected, we get an accurate description of the function values that were not explicitly calculated. In order to minimize the number of points, one can use adaptive sampling routines. -For example, for one-dimensional functions, Mathematica implements a `FunctionInterpolation` class that takes the function, $x_\textrm{min}$, and $x_\textrm{max}$, and returns an object which sampled the function in regions with high curvature more densily. +For example, for one-dimensional functions, Mathematica[@Mathematica] implements a `FunctionInterpolation` class that takes the function, $x_\textrm{min}$, and $x_\textrm{max}$, and returns an object which sampled the function in regions with high curvature more densily. Subsequently, we can query this object for points in between $x_\textrm{min}$ and $x_\textrm{max}$, and get the interpolated value or we can use it to plot the function without specifying a grid. Another application for adaptive sampling is integration. The `CQUAD` doubly-adaptive integration algorithm[@gonnet2010increasing] in the GNU Scientific Library[@galassi1996gnu] is a general-purpose integration routine which can handle most types of singularities. In general, it requires more function evaluations than the integration routines in `QUADPACK`[@galassi1996gnu]; however, it works more often for difficult integrands. -It is doubly-adaptive because it calculates errors for each interval and can either split up intervals into more intervals or add more points to each interval. -<!-- can refer to Mathematica's implementation --> +It is doubly-adaptive because it calculates errors for each interval and can then decide to either split up intervals into more intervals or add more points to each interval. #### PDE solvers and computer graphics use adaptive meshing. <!-- hydrodynamics anisotropic meshing paper ref -->