Page 152 - Applied Numerical Methods Using MATLAB
P. 152

TWO-DIMENSIONAL INTERPOLATION  141

            subject to the conditions






                h (x 0 ) = h (0) = 2,  h (1) = 0,  h (2) = 0,  h (x N ) = h (3) = 2
                                                                    3
                                               2
                                                           N
                 0
                         0
                                    1
                                                                        (E3.4.2)
              For this problem, we only have to type the following statements in the MAT-
            LAB command window.
            >>x=[0123];y=[0145]; dy=[2002]; xi=[0:0.01:3];
            >>H = hermits(x,y,dy); yi = ppval(mkpp(x,H), xi);
            3.7  TWO-DIMENSIONAL INTERPOLATION
            In this section we deal with only the simplest way of two-dimensional
            interpolation—that is, a generalization of piecewise linear interpolation called
                                             (x 1 , y 1 )  (x 2 , y 1 )  (x 3 , y 1 )
                 x 1  x 2  x 3  y 1  y 1  y 1
                                             (x 1 , y 2 )  (x 2 , y 2 )  (x 3 , y 2 )
                 x 1  x 2  x 3  y 2  y 2  y 2
                                             (x 1 , y 3 )  (x 2 , y 3 )  (x 3 , y 3 )
                 x 1  x 2  x 3  y 3  y 3  y 3
                      X             Y                     (X, Y)
                   x = [x 1  x 2  x 3 ]  y = [y 1  y 2  y 3 ]  [X, Y] = meshgrid (x, y)
                                              z 1, 1      z 1, 2      z 1, 3

                                          Z
                                              z 2, 1      z 2, 2      z 2, 3

                                              z 3, 1      z 3, 2      z 3, 3
                      Zi = interp2 (X, Y, Z, Xi, Yi)
                       or interp2 (x, y, Z, Xi, Yi)
                                               i     i     i     i      i
                                              z 1, 1  z 1, 2  z 1, 3  z 1, 4  z 1, 5
                                               i     i     i     i      i
                                              z 2, 1  z 2, 2  z 2, 3  z 2, 4  z 2, 5
                                               i     i     i     i      i
                                              z 3, 1  z 3, 2  z 3, 3  z 3, 4  z 3, 5
                                          Zi   i     i     i     i      i
                                              z 4, 1  z 4, 2  z 4, 3  z 4, 4  z 4, 5
                                               i     i     i     i      i
                                              z 5, 1  z 5, 2  z 5, 3  z 5, 4  z 5, 5
                           i
                             i
                         i
                     i
                       i
                                        i
                                      i
                                     i
                                   i
                 xi = [x 1  x 2  x 3  x 4  x 5 ] yi = [y 1  y 2  y 3  y 4  y 5 ] i  [Xi, Yi] = meshgrid (xi, yi)
                      Xi            Yi                   (Xi, Yi)
                  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i
                 x 1 x 2 x 3 x 4 x 5  y 1 y 1 y 1 y 1 y 1  (x 1 ,   y 1 ) (x 2 ,   y 1 ) (x 3 ,   y 1 ) (x 4 ,   y 1 ) (x 5 ,   y 1 )
                  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i
                 x 1 x 2 x 3 x 4 x 5  y 2 y 2 y 2 y 2 y 2  (x 1 ,   y 2 ) (x 2 ,   y 2 ) (x 3 ,   y 2 ) (x 4 ,   y 2 ) (x 5 ,   y 2 )
                  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i
                 x 1 x 2 x 3 x 4 x 5  y 3 y 3 y 3 y 3 y 3  (x 1 ,   y 3 ) (x 2 ,   y 3 ) (x 3 ,   y 3 ) (x 4 ,   y 3 ) (x 5 ,   y 3 )
                  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i
                 x 1 x 2 x 3 x 4 x 5  y 4 y 4 y 4 y 4 y 4  (x 1 ,   y 4 ) (x 2 ,   y 4 ) (x 3 ,   y 4 ) (x 4 ,   y 4 ) (x 5 ,   y 4 )
                  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i
                 x 1 x 2 x 3 x 4 x 5  y 5 y 5 y 5 y 5 y 5  (x 1 ,   y 5 ) (x 2 ,   y 5 ) (x 3 ,   y 5 ) (x 4 ,   y 5 ) (x 5 ,   y 5 )
            Figure 3.8 A two-dimensional interpolation using Zi = interp2() on the grid points
            [Xi,Yi] generated by the meshgrid() command.
   147   148   149   150   151   152   153   154   155   156   157