Micro heat exchanger: Difference between revisions

From formulasearchengine
Jump to navigation Jump to search
en>AnomieBOT
m Dating maintenance tags: {{Dead link}} {{Peacock inline}} {{Psc}}
 
en>Gilliam
m Reverted edits by 14.139.43.12 (talk) to last version by AnomieBOT
 
Line 1: Line 1:
The name of the writer is Numbers but it's not the most masucline title out there. California is our birth location. Body building is what my family members and I appreciate. Managing people is what I do and the salary has been truly fulfilling.<br><br>my page [http://nuvem.tk/altergalactica/MarissaepDonnt nuvem.tk]
'''Polyharmonic splines''' are used for
[[function approximation]] and data [[interpolation]].
They are very useful for interpolation of scattered data
in many dimensions. A special case are [[thin plate spline]]s.<ref>R.L. Harder and R.N. Desmarais: [http://www.mendeley.com/research/interpolation-using-surface-splines-1 Interpolation using surface splines]. Journal of Aircraft, 1972, Issue 2, pp. 189-191</ref><ref>J. Duchon: Splines minimizing rotation-invariant semi-norms in Sobolev spaces. Constructive Theory of Functions of Several Variables, W. Schempp and K. Zeller (eds), Springer, Berlin, pp.85-100</ref>
 
== Definition ==
<blockquote>
<math>
y(\mathbf{x}) \, = \, \sum_{i=1}^N w_i \, \phi(||\mathbf{x} - \mathbf{c}_i||) +
                  \mathbf{v}^T \, \begin{bmatrix} 1 \\ \mathbf{x} \end{bmatrix}
</math>
</blockquote>
 
where
 
[[Image:Polyharmonic-splines-basic-functions.png|thumb|350px|right|Polyharmonic basis functions]]
* <math>\mathbf{x} = [x_1, x_2, \cdots, x_{nx}]^T</math> is a real-valued vector of nx independent variables,
* <math>\mathbf{c}_i = [c_{1,i}, c_{2,i}, \cdots, c_{nx,i}]^T</math> are N vectors of the same size as <math>\mathbf{x}</math> (often called centers) that the interpolated curve shall pass
* <math>\mathbf{w} = [w_1, w_2, \cdots, w_N]^T</math> are the N weights of the basis functions.
* <math>\mathbf{v} = [v_1, v_2, \cdots, v_{nx+1}]^T</math> are the nx+1 weights of the polynomial.
* The linear polynomial with the weighting factors <math>\mathbf{v}</math> improves the interpolation close to the "boundary" and especially the extrapolation "outside" of the centers <math>\mathbf{c}_i</math>. If this is not desired, this term can also be removed (see also figure below).
 
The basis functions of '''polyharmonic splines''' are [[radial basis function]]s of the form:
 
<blockquote>
<math>
\begin{matrix}
  \phi(r) = \begin{cases}
                r^k & \mbox{with } k=1,3,5,\dots, \\
                r^k \ln(r) & \mbox{with } k=2,4,6,\dots
            \end{cases} \\[5mm]
  r = ||\mathbf{x} - \mathbf{c}_i||_2
    = \sqrt{ (\mathbf{x} - \mathbf{c}_i)^T \, (\mathbf{x} - \mathbf{c}_i) }
\end{matrix}
</math>
</blockquote>
 
Other values of exponent k are not useful (such as <math> \phi(r) = r^2 </math>),
because a solution of the interpolation problem might no
longer exist. To avoid problems at r=0 (since ln(0) = -∞), the polyharmonic splines with the natural logarithm might be implemented as:
 
<blockquote>
<math>
\phi(r) = \begin{cases}
            r^{k-1} \ln(r^r) & \mbox{for } r < 1 \\
            r^k \ln(r)      & \mbox{for } r \ge 1
          \end{cases}
</math>
</blockquote>
 
The weights <math>w_i</math> and <math>v_j</math> are determined such that the function
passes through <math>N</math> given points
<math>(\mathbf{c}_i, y_i)</math>  (i=1,2,...,N) and fulfill
the <math>nx+1</math> orthogonality conditions:
 
<blockquote>
<math>
  0 = \sum_{i=1}^N w_i, \;\; 0 = \sum_{i=1}^N w_i \, c_{j,i} \;\;\; (j=1,2,...,nx)
</math>
</blockquote>
 
To compute the weights, a symmetric, linear system of equations has to be
solved:
 
<blockquote>
<math>
\begin{bmatrix}
  \mathbf{A} & \mathbf{V}^T \\
  \mathbf{V} & \mathbf{0} \end{bmatrix}
\;
\begin{bmatrix}
  \mathbf{w} \\
  \mathbf{v}
\end{bmatrix} \; = \;
\begin{bmatrix}
  \mathbf{y} \\
  \mathbf{0}
\end{bmatrix}\;\;\;\;
</math>
</blockquote>
 
where
 
<blockquote>
<math>
  A_{i,j} =  \phi(||\mathbf{c}_i - \mathbf{c}_j||), \;\;\;
  \mathbf{V} = 
  \begin{bmatrix}
        1      &      1      & \cdots & 1 \\
    \mathbf{c}_1 & \mathbf{c}_2 & \cdots & \mathbf{c}_{N}
  \end{bmatrix}, \;\;\;
  \mathbf{y}  = [y_1, y_2, \cdots, y_N]^T
</math>
</blockquote>
 
Under very mild conditions (essentially, that at least nx+1 points
are not in a subspace; e.g. for nx=2 that at least 3 points are not
on a straight line), the system matrix of the linear system of equations
is nonsingular and therefore a unique solution of the equation system
exists.
 
Once the weights are determined, interpolation requires to just evaluate the
top most formula for the provided <math>\mathbf{x}</math>.
 
Many practical details to implement and use polyharmonic splines are given in the book of  Fasshauer.<ref>G.F. Fasshauer G.F.: [http://books.google.com/books?id=gtqBdMEqryEC Meshfree Approximation Methods with MATLAB]. World Scientific Publishing Company, 2007, ISPN-10: 9812706348</ref> In Iske<ref>
A. Iske: [http://www.springeronline.com/sgw/cda/frontpage/0,10735,5-10042-22-22344683-0,00.html Multiresolution Methods in Scattered Data Modelling], Lecture Notes in Computational Science and Engineering, 2004, Vol. 37, ISBN 3-540-20479-2, Springer-Verlag, Heidelberg.</ref> polyharmonic splines are treated as special cases of other multiresolution methods in scattered data modelling.
 
== Examples ==
The next figure shows the interpolation through four points (marked by "circles") using different types of polyharmonic splines. The "curvature" of the interpolated curves grows with the order of the spline and the extrapolation at the left boundary (x < 0) is reasonable. The figure also includes the radial basis functions phi = exp(-r<sup>2</sup>) which gives a good interpolation as well. Finally, the figure includes also
the non-polyharmonic spline phi = r<sup>2</sup> to demonstrate, that this
radial basis function is not able to pass through the predefined points
(the linear equation has no solution and is solved in a least squares sense).
 
[[Image:Polyharmonic-splines-example1.png|frame|none|Interpolation with different polyharmonic splines that shall pass the 4 predefined points marked by a circle (the interpolation with phi = r<sup>2</sup> is not useful, since the linear equation system of the interpolation problem has no solution; it is solved in a least squares
sense, but then does not pass the centers)]]
 
The next figure shows the same interpolation as in the first figure, with the only exception that the points to be interpolated are scaled by a factor of 100 (and the case phi = r<sup>2</sup> is no longer included). Since phi = (scale*r)<sup>k</sup> =
(scale<sup>k</sup>)*r<sup>k</sup>, the factor (scale<sup>k</sup>) can be extracted from matrix '''A''' of the linear equation system and therefore the solution is not influenced by the scaling. This is different for the logarithmic form of the spline, although the scaling has not much influence. This analysis is reflected in the figure, where the interpolation shows not much differences. Note, for other radial basis functions, such as phi = exp(-k*r<sup>2</sup>) with k=1, the interpolation is no longer reasonable and it would be necessary to adapt k.
 
[[Image:Polyharmonic-splines-example1-scale100.png|frame|none| The same interpolation as in the first figure, but the points to be interpolated are scaled by 100]]
 
The next figure shows the same interpolation as in the first figure, with
the only exception that the polynomial term of the function is not
taken into account (and the case phi = r<sup>2</sup> is no longer included). As can be seen from the figure, the extrapolation for x < 0 is no longer as "natural" as in the first figure for some of the basis functions. This indicates, that the polynomial term is useful if extrapolation occurs.
 
[[Image:Polyharmonic-splines-example1-no-polynomial.png|frame|none| The same interpolation as in the first figure, but without the polynomial term]]
 
== Discussion ==
The main advantage of polyharmonic spline interpolation is
that usually very good interpolation
results are obtained for scattered data without performing any "tuning", so
automatic interpolation is feasible. This is not the case for
other radial basis functions. For example, the Gaussian function
<math>e^{-k\cdot r^2}</math> needs to be tuned, so that k is selected
according to the underlying grid of the independent variables. If this grid
is non-uniform, a proper selection of k
to achieve a good interpolation result is difficult or impossible.
 
Main disadvantages are:
 
* To determine the weights, a linear system of equations must be solved, which is '''non-sparse'''. The solution of a non-sparse linear system becomes no longer practical if the dimension n is larger as about 1000 (since the storage requirements are O(n<sup>2</sup>) and the number of operations to solve the linear system is O(n<sup>3</sup>). For example n=10000 requires about 100 Mbyte of storage and 1000 Gflops of operations).
 
* To perform the interpolation of M data points requires operations in the order of O(M*N). In many applications, like image processing, M is much larger than N, and if both numbers are large, this is no longer practical.
 
Recently, methods have been developed to overcome the aforementioned difficulties. For example
Beatson et al.<ref>R.K. Beatson, M.J.D. Powell, and A.M. Tan A.M.: [http://imajna.oxfordjournals.org/cgi/content/short/27/3/427 Fast evaluation of polyharmonic splines in three dimensions]. IMA Journal of Numerical Analysis, 2007, 27, pp. 427-450.</ref> present a method to interpolate polyharmonic splines at one point in 3 dimensions in O(log(N)) instead of O(N).
 
==See also==
*[[Inverse distance weighting]]
*[[Radial basis function]]
*[[Subdivision surface]] (emerging alternative to spline-based surfaces)
*[[Spline (mathematics)|Spline]]
*[[Thin plate spline]] (a special case of a polyharmonic spline)
 
==References==
{{Reflist}}
 
[[Category:Splines]]
[[Category:Interpolation]]
[[Category:Multivariate interpolation]]

Latest revision as of 10:18, 29 January 2014

Polyharmonic splines are used for function approximation and data interpolation. They are very useful for interpolation of scattered data in many dimensions. A special case are thin plate splines.[1][2]

Definition

y(𝐱)=i=1Nwiϕ(||𝐱𝐜i||)+𝐯T[1𝐱]

where

Polyharmonic basis functions
  • 𝐱=[x1,x2,,xnx]T is a real-valued vector of nx independent variables,
  • 𝐜i=[c1,i,c2,i,,cnx,i]T are N vectors of the same size as 𝐱 (often called centers) that the interpolated curve shall pass
  • 𝐰=[w1,w2,,wN]T are the N weights of the basis functions.
  • 𝐯=[v1,v2,,vnx+1]T are the nx+1 weights of the polynomial.
  • The linear polynomial with the weighting factors 𝐯 improves the interpolation close to the "boundary" and especially the extrapolation "outside" of the centers 𝐜i. If this is not desired, this term can also be removed (see also figure below).

The basis functions of polyharmonic splines are radial basis functions of the form:

ϕ(r)={rkwith k=1,3,5,,rkln(r)with k=2,4,6,r=||𝐱𝐜i||2=(𝐱𝐜i)T(𝐱𝐜i)

Other values of exponent k are not useful (such as ϕ(r)=r2), because a solution of the interpolation problem might no longer exist. To avoid problems at r=0 (since ln(0) = -∞), the polyharmonic splines with the natural logarithm might be implemented as:

ϕ(r)={rk1ln(rr)for r<1rkln(r)for r1

The weights wi and vj are determined such that the function passes through N given points (𝐜i,yi) (i=1,2,...,N) and fulfill the nx+1 orthogonality conditions:

0=i=1Nwi,0=i=1Nwicj,i(j=1,2,...,nx)

To compute the weights, a symmetric, linear system of equations has to be solved:

[𝐀𝐕T𝐕𝟎][𝐰𝐯]=[𝐲𝟎]

where

Ai,j=ϕ(||𝐜i𝐜j||),𝐕=[111𝐜1𝐜2𝐜N],𝐲=[y1,y2,,yN]T

Under very mild conditions (essentially, that at least nx+1 points are not in a subspace; e.g. for nx=2 that at least 3 points are not on a straight line), the system matrix of the linear system of equations is nonsingular and therefore a unique solution of the equation system exists.

Once the weights are determined, interpolation requires to just evaluate the top most formula for the provided 𝐱.

Many practical details to implement and use polyharmonic splines are given in the book of Fasshauer.[3] In Iske[4] polyharmonic splines are treated as special cases of other multiresolution methods in scattered data modelling.

Examples

The next figure shows the interpolation through four points (marked by "circles") using different types of polyharmonic splines. The "curvature" of the interpolated curves grows with the order of the spline and the extrapolation at the left boundary (x < 0) is reasonable. The figure also includes the radial basis functions phi = exp(-r2) which gives a good interpolation as well. Finally, the figure includes also the non-polyharmonic spline phi = r2 to demonstrate, that this radial basis function is not able to pass through the predefined points (the linear equation has no solution and is solved in a least squares sense).

Interpolation with different polyharmonic splines that shall pass the 4 predefined points marked by a circle (the interpolation with phi = r2 is not useful, since the linear equation system of the interpolation problem has no solution; it is solved in a least squares sense, but then does not pass the centers)

The next figure shows the same interpolation as in the first figure, with the only exception that the points to be interpolated are scaled by a factor of 100 (and the case phi = r2 is no longer included). Since phi = (scale*r)k = (scalek)*rk, the factor (scalek) can be extracted from matrix A of the linear equation system and therefore the solution is not influenced by the scaling. This is different for the logarithmic form of the spline, although the scaling has not much influence. This analysis is reflected in the figure, where the interpolation shows not much differences. Note, for other radial basis functions, such as phi = exp(-k*r2) with k=1, the interpolation is no longer reasonable and it would be necessary to adapt k.

The same interpolation as in the first figure, but the points to be interpolated are scaled by 100

The next figure shows the same interpolation as in the first figure, with the only exception that the polynomial term of the function is not taken into account (and the case phi = r2 is no longer included). As can be seen from the figure, the extrapolation for x < 0 is no longer as "natural" as in the first figure for some of the basis functions. This indicates, that the polynomial term is useful if extrapolation occurs.

The same interpolation as in the first figure, but without the polynomial term

Discussion

The main advantage of polyharmonic spline interpolation is that usually very good interpolation results are obtained for scattered data without performing any "tuning", so automatic interpolation is feasible. This is not the case for other radial basis functions. For example, the Gaussian function ekr2 needs to be tuned, so that k is selected according to the underlying grid of the independent variables. If this grid is non-uniform, a proper selection of k to achieve a good interpolation result is difficult or impossible.

Main disadvantages are:

  • To determine the weights, a linear system of equations must be solved, which is non-sparse. The solution of a non-sparse linear system becomes no longer practical if the dimension n is larger as about 1000 (since the storage requirements are O(n2) and the number of operations to solve the linear system is O(n3). For example n=10000 requires about 100 Mbyte of storage and 1000 Gflops of operations).
  • To perform the interpolation of M data points requires operations in the order of O(M*N). In many applications, like image processing, M is much larger than N, and if both numbers are large, this is no longer practical.

Recently, methods have been developed to overcome the aforementioned difficulties. For example Beatson et al.[5] present a method to interpolate polyharmonic splines at one point in 3 dimensions in O(log(N)) instead of O(N).

See also

References

43 year old Petroleum Engineer Harry from Deep River, usually spends time with hobbies and interests like renting movies, property developers in singapore new condominium and vehicle racing. Constantly enjoys going to destinations like Camino Real de Tierra Adentro.

  1. R.L. Harder and R.N. Desmarais: Interpolation using surface splines. Journal of Aircraft, 1972, Issue 2, pp. 189-191
  2. J. Duchon: Splines minimizing rotation-invariant semi-norms in Sobolev spaces. Constructive Theory of Functions of Several Variables, W. Schempp and K. Zeller (eds), Springer, Berlin, pp.85-100
  3. G.F. Fasshauer G.F.: Meshfree Approximation Methods with MATLAB. World Scientific Publishing Company, 2007, ISPN-10: 9812706348
  4. A. Iske: Multiresolution Methods in Scattered Data Modelling, Lecture Notes in Computational Science and Engineering, 2004, Vol. 37, ISBN 3-540-20479-2, Springer-Verlag, Heidelberg.
  5. R.K. Beatson, M.J.D. Powell, and A.M. Tan A.M.: Fast evaluation of polyharmonic splines in three dimensions. IMA Journal of Numerical Analysis, 2007, 27, pp. 427-450.