mirror of
https://github.com/Findus23/BachelorsThesis.git
synced 20240827 19:52:12 +02:00
add more text to Delaunay Triangulation
This commit is contained in:
parent
4c4ef0cf3e
commit
30176331b6
3 changed files with 22 additions and 3 deletions

@ 26,7 +26,9 @@ In one dimension, linear interpolation is pretty trivial. For example, let's ass




\end{figure}




In two dimensions things get more complicated as we now have a set of points with $X$ and $Y$ coordinates (Figure \ref{fig:3dinterpolate1}). One fast way to find the closest points to the point that should be interpolated is using Delaunay triangulation. This separates the space between the points into triangles while trying to maximize their smallest angle. Afterwards, the closest three points can be found very quickly by checking the nodes of the surrounding triangle (Figure \ref{fig:3dinterpolate2}). If we now again have a function $f(X,Y)$ similar to the onedimensional example, we can create a unique plain through the three points and get the interpolated value for any pair of $X$ and $Y$ on this layer. (Figure \ref{fig:3dinterpolate3})


In two dimensions things get more complicated as we now have a set of points with $X$ and $Y$ coordinates (Figure \ref{fig:3dinterpolate1}). One fast way to find the closest points to the point that should be interpolated is using Delaunay triangulation. This is a method to separate the space between the points into triangles while trying to maximize their smallest angle and to make sure no other point is inside the circumcircle of the triangles\footcite{Delaunay}. Connecting the centers of the circumcircles results in a Voronoi diagram.




Afterwards, the closest three points can be found very quickly by checking the nodes of the surrounding triangle (Figure \ref{fig:3dinterpolate2}). If we now again have a function $f(X,Y)$ similar to the onedimensional example, we can create a unique plain through the three points and get the interpolated value for any pair of $X$ and $Y$ on this layer. (Figure \ref{fig:3dinterpolate3})






\begin{figure}[] % also temporary



@ 50,7 +52,7 @@ In two dimensions things get more complicated as we now have a set of points wit








This approach has the advantage that it can be extended in more than two dimensions by replacing the triangle in the Delaunay triangulation\todo{nebensatz mit Zitat} with an nsimplex in n dimensions. The \texttt{scipy.spatial.Delaunay} python function allows to quickly calculate it thanks to the \texttt{Qhull} library\footnote{\url{http://www.qhull.org/}}. One noticeable limitation of this method is that data can't be extrapolated. Therefore the possible output is limited to the convex hull of the input parameter space (as seen in Figure \ref{fig:3dinterpolate2}).


This approach has the advantage that it can be extended in more than two dimensions by replacing the triangle in the Delaunay triangulation with an nsimplex in n dimensions. The \texttt{scipy.spatial.Delaunay} python function allows to quickly calculate it thanks to the \texttt{Qhull} library\footnote{\url{http://www.qhull.org/}}. One noticeable limitation of this method is that data can't be extrapolated. Therefore the possible output is limited to the convex hull of the input parameter space (as seen in Figure \ref{fig:3dinterpolate2}).




\subsection{Implementation}


\label{sec:griddataimplementation}





@ 11,7 +11,7 @@ Another approach to interpolate data is using \textit{Radial Basis Functions} (\


s(x_i)=p_i,\quad i=1,2,\dots,n


\end{align}




The RBF interpolation now consists of a linear combination of $\phi(\left\xx_i\right\)$ for a chosen radial function $\phi$ which $n$ constants $\lambda_i$.


The RBF interpolation now consists of a linear combination of $\phi(\left\xx_i\right\)$ for a chosen radial function $\phi$ with $n$ constants $\lambda_i$.




\begin{align}


s(x)&= \sum_{i=1}^{n}\lambda_i\phi(\left\xx_i\right\) \\





@ 188,4 +188,21 @@


keywords = {smooth particle hydrodynamics, GPUcomputing, hydrodynamics, continuum mechanics},


}




@Article{Delaunay,


author = {Boris Delaunay},


title = {Sur la sphère vide. A la mémoire de Georges Voronoï},


journal = {{Bull. Acad. Sci. URSS}},


year = {1934},


language = {French},


volume = {1934},


issue = {6},


pages = {793800},


url = {http://mi.mathnet.ru/eng/izv4937},


fjournal = {{Bulletin de l'Acad\'emie des Sciences de l'URSS. VII. S\'erie}},


owner = {lukas},


publisher = {Academy of Sciences of the Union of Soviet Socialist Republics  USSR (Akademiya Nauk SSSR)},


timestamp = {2019.09.07},


zbl = {0010.41101},


}




@Comment{jabrefmeta: databaseType:biblatex;}




Loading…
Reference in a new issue