diff options
author | Karl Berry <karl@freefriends.org> | 2021-02-25 19:22:25 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2021-02-25 19:22:25 +0000 |
commit | ad547a6b5986815fda458221149728d9d9ab1d87 (patch) | |
tree | 16296910eb3eca724371474ea9aea3994dc69614 /Build/source/utils/asymptote/examples/spline.asy | |
parent | 947b43de3dd21d58ccc2ffadefc4441ea1c2a813 (diff) |
restore Build,TODO from r57911
git-svn-id: svn://tug.org/texlive/trunk@57915 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/utils/asymptote/examples/spline.asy')
-rw-r--r-- | Build/source/utils/asymptote/examples/spline.asy | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/Build/source/utils/asymptote/examples/spline.asy b/Build/source/utils/asymptote/examples/spline.asy new file mode 100644 index 00000000000..f01ba3306e6 --- /dev/null +++ b/Build/source/utils/asymptote/examples/spline.asy @@ -0,0 +1,25 @@ +import graph; +import interpolate; + +size(15cm,15cm,IgnoreAspect); + +real a=1997, b=2002; +int n=5; +real[] xpt=a+sequence(n+1)*(b-a)/n; +real[] ypt={31,36,26,22,21,24}; +horner h=diffdiv(xpt,ypt); +fhorner L=fhorner(h); + +scale(false,true); + +pen p=linewidth(1); + +draw(graph(L,a,b),dashed+black+p,"Lagrange interpolation"); +draw(graph(xpt,ypt,Hermite(natural)),red+p,"natural spline"); +draw(graph(xpt,ypt,Hermite(monotonic)),blue+p,"monotone spline"); +xaxis("$x$",BottomTop,LeftTicks(Step=1,step=0.25)); +yaxis("$y$",LeftRight,RightTicks(Step=5)); + +dot(pairs(xpt,ypt),4bp+gray(0.3)); + +attach(legend(),point(10S),30S); |