Singular Integral Transforms and Fast Numerical Algorithms Prabir Daripa & Daoud Mashat Department of Mathematics Texas A&M University College Station, Texas 77843-3368 email:
[email protected]
Abstract.
Fast algorithms for the accurate evaluation of some singular integral operators that arise in the context of solving certain partial dierential equations within the unit circle in the complex plane are presented. These algorithms are generalizations and extensions of a fast algorithm of Daripa (SIAM J. Sci. Stat. Comput., 13, No. 6, (1992), 1418-1432). They are based on some recursive relations in Fourier space and the FFT (fast Fourier transform), and have theoretical computational complexity of order log N per point where N 2 is the total number of grid points. An application of these algorithms to quasiconformal mappings of doubly connected domains onto annuli is presented in a follow-up paper.
AMS: 65Y20, 65E05, 45P05, 44A20, 30E20.
1
1. Introduction
Many problems in applied mathematics require the evaluation of the singular integral transforms Z Z h( ) 1 (1:1) Tm h() = ? ( ? )m dd; = + i; B(0;1)
of a complex valued function h de ned on B (0; 1) = fz: jzj < 1g; for a suitable nite positive integer m so that the transform exists (see Appendix B). For example, the general solution of the compressible uid ow equations
u = u h();
(1:2)
u() = T1h() + g();
(1:3)
in the hodograph plane is given by
in the subcritical regime (see Daripa [9]). In (1.2) is a Mach number dependent function (see [9]) and g() in (1.3) is a suitable analytic function determined by the boundary conditions. Unless otherwise speci ed, here and below h() depends on the solution u and its generalized derivatives, etc. This should be clear from the context even though such dependency will almost always be suppressed from the notation as in (1.2). The function h() in (1.2) depends on the generalized derivative u () given by
u () = T2 h() + g ();
(1:4)
which follows from (1.3) (see [1],[2]). Therefore, the numerical solution of equation (1.2) using the representation (1.3) requires evaluation of Tm h() for m = 1; 2. Evaluation of the operator Tm h() for m > 2 may be necessary if one requires to evaluate higher order derivatives of the function u, which is often the case in certain problems. In such cases (m > 2), existence of Tm h() can be guaranteed if h() is an analytic function (see Appendix B), otherwise it is a hypersingular integral. The existence of such a hypersingular 2
integral has to be understood in some appropriate nite part sense, which we do not address in this paper. The equation (1.2) is known as the Beltrami equation and occurs in the context of other applied problems, most of which can be viewed as problems in quasiconformal mappings satisfying nonlinear partial dierential equations of the following type ([1],[3],[4][7],[10],[12], [15],[16]) u = h(; u; u ): (1:5) The Beltrami equation (1.2) is a special case of this equation. Other examples where integral operators (1.1) arise include problems in partial dierential equations ([5],[6],[8],[11],[18][20]), uid mechanics ([3],[9]) and electrostatics ([17]), to name just a few. The integral equation approach of numerically solving equation (1.5) using the representation (1.3) requires computing the values of the integrals T1 h() and T2 h() at the discretization points. There are two main diculties in the straight-forward computation of these integrals using quadrature rules. Firstly, straight-forward computation of each of these integrals requires an operation count of the order O(N 2) per point. This gives a net operation count of O(N 4) for N 2 grid points which is computationally very intensive for large N . Secondly, this method also gives poor accuracy due to the presence of the singularities in the integrand. The conventional desingularization technique [9] for evaluating these integrals is not eective in improving the accuracy because the function h() in (1.1) need not be an analytic function. In Daripa [11], an ecient and accurate algorithm for rapid evaluation of the singular integral T1 h() has been presented. Our goal in this paper is to generalize that algorithm providing all details of the theory to rapidly and accurately evaluate Tm h() for the following cases where the operator is known to exist (see Appendix B). (i) The complex valued function h() in (1.1) is Holder continuous with exponent , 0 < < 1. In this case, T1h() and T2 h() are de ned in the unit disk as a Cauchy principal value (see appendix B). The fast algorithms derived in this paper includes 3
the fast algorithm of Daripa presented for T1 h() in [11] as a special case. (ii) The complex valued function h() is analytic in the unit disk. In this case, Tm h() is de ned in the unit disk for any nite positive integer m as a Cauchy principal value, and can be evaluated by the fast algorithm derived in this paper. The method presented takes into account the convolution nature of these integrals and some of the properties of such convolution integrals in Fourier space. This process leads to a recursive algorithm in Fourier space that divides the entire domain into a collection of annular regions and expands the integral in Fourier series with radius dependent Fourier coecients. A set of exact recursive relations are obtained which are then used to produce the Fourier coecients of the integral. These recursive relations involve appropriate scaling of one-dimensional integrals in annular regions, which signi cantly improves the computational complexity. The desired integrals at all N 2 grid points are then easily obtained from the Fourier coecients by the FFT (fast Fourier transform). The process of evaluation of these integrals has thus been optimized in this paper giving a net operation count of the order O(ln N ) per point. For N = 128, this means a reduction of over two thousand times. It is worth emphasizing that the asymptotic computational complexity is independent of the number of integrals Tmh() whose values need to computed at each of the grid points. In fact, computing both integrals T1h() and T2 h() costs little more than computing just T1 h(). Moreover, this algorithm has the added advantage of working in place, meaning that no additional memory storage is required beyond that of the initial data. The eective use of representations (1.3) and (1.4) in solving (1.2) for generating quasiconformal mappings and for the design of subcritical airfoils has been demonstrated by Daripa (see [9],[11],[12],[14]). The computational complexity of the various numerical algorithms used there can be further improved by the use of of the fast algorithms presented here. Such eorts are currently under progress and will be reported in the future (see [14]). At this point, it is worth noting that this is an improved version of an unpublished paper of Daripa [13] which treats the case (i) mentioned above. 4
This paper is laid out as follows. In x2 we present the mathematical foundation of fast algorithms for rapid evaluation of Tm h() within the unit circle. In x3, the formal description of the fast algorithms is presented. In x4, the algorithms are exempli ed and validated. Finally we summarize and conclude in x5. In appendix A, we provide four propositions used in proving the lemmas of x2 and in appendix B we show the existence of the integrals by estimating their upper bounds. 2. Evaluation of the Tm -Operator 2.1 Theory for the Evaluation of the Tm-Operator In this section, we present the theory needed to construct an ecient algorithm for the evaluation of the Tm -operator which is presented in section x3. Existence of these integrals are discussed in Appendix-B. For our purposes below, we let r > > 0; > 0 and = rei . We also introduce the following notations used in this section and in the appendices A and B. B (; ) = fz: jz ? j < g;
B(; ) = fz: jz ? j g;
= B (0; r);
0 r
= B (0; r + ") ? B (0; r ? ");
r?" r+" r?" r+" = r?" r+" ?B ( ; ");
and
= B (0; 1) ? B (0; r):
r 1
Below we present the main theorem and its proof. The theorem treats the cases (i) and (ii) mentioned in x1.
5
Theorem 2.1. If Tm h() exists in the unit disk as a Cauchy principal value, 1 P
and h(rei ) = hn (r)ein , then the nth Fourier series coecient Sn;m (r) of Tm h(rei ) n=?1 can be written as
8 C (r) + B (r); r 6= 0, < n;m n;m r = 0 and n 6= 0, Sn;m (r) = : 0; S0;m(0); r = 0 and n = 0,
where
8 m+1 ? Rr m+n?1 > 2(?1) ?n?1 r hm+n ()d; n ?m, > < rm?1 m?1 0 ?m < n < 0, Cn;m (r) = > 0; 1 m + n ? 1 ? R > hm+n ()d; n 0, : ? rm2?1 mm+?n?1 1 r
(2:1)
(2:2)
r
and Bn;m (r) and S0;m(0) are de ned as follows. Case 1. If h() is Holder continuous in the unit disk with exponent , 0 < < 1 and m = 1 or 2, then
Z1
1?m S0;m(0) = ?2 "lim !0 hm ()d;
"
0;
(2:3)
m = 1, Bn;m(r) = hn+2 (r); m (2:4) = 2. Case 2. If h() is analytic in the unit disk and m is a nite positive integer, then
and for m 2
S0;m(0) = ?hm (r = 1);
(2:5)
Bn;1(r) = 0;
(2:6)
8 0; n < ?1; n 6= ?m, < m 2?m ( ? 1) r h ( r ) ; n = ?m, Bn;m(r) = : ?m+n?1 2?m0 hm+n (r); n ?1. m?2 r
(2:7)
6
The proof of this theorem is based on evaluating the integral Tm h() in a domain B (0; 1) ? B (; ) with ! 0. Noting that B (0; 1) ? B (; ) = 0 r? [ r?" r+" [ r+ 1; the integral in domain B (0; 1) ? B (; ) is obtained by integration in these three domains. The lemmas below deal with the integration over the domain r?" r+" except for lemmas 2.5 and 2.7 which deal with the situation when = 0 in (1.1). The lemmas 2.1 through 2.5 below are used for the case 1 and lemmas 2.6 and 2.7 are used for the case lemmas 2.1 through 2.4 are used for evaluating Z Z 2. hIn(particular ) the integral "lim !0 ? dd for the case 1 and lemma 2.6 is used for evaluating r?" r+"
the same integral for the case 2. Lemma 2.5 is used for obtaining Sn;m (0) for the case 1 (see equations (2.1) and (2.3)) and lemma 2.7 is used for obtaining S0;m(0) for the case 2 (equation (2.5)) respectively.
Lemma 2.1. If h() is Holder continuous with exponent , 0 < < 1, and constant
K , then
lim "!0
ZZ r?" r+"
h( ) dd = 0: ?
(2:8)
Proof. It follows from proposition 1 in appendix A that
lim "!0 Therefore
ZZ
r?" r+"
h() dd = 0: ?
Z Z h( ) Z Z h( ) ? h() "lim dd = lim ? dd !0 ? "!0 r?" r+" r?" r+" Z Z jh( ) ? h()j "lim !0
r?" r+"
7
j ? j dd
(2:9)
K "lim !0
ZZ
j ? j ?1dd
r?" r+"
?1 2 2 2 K "lim !0 " f (r + ") ? (r ? ") ? " g
= 0:
(2:10)
Lemma 2.1 follows from (2.10). Lemma 2.2. If h() is Holder continuous with exponent , 0 < < 1, and constant K , then Z Z h( ) Z Z h() lim (2:11) "!0 !0 ( ? )2 dd = "lim ( ? )2 dd: r?" r+"
r?" r+"
Proof. We have
Z Z h( ) Z Z h() "lim dd ? "lim dd 2 2 ! 0 ! 0 ( ? ) ( ? )
r?" r+" Z Z jh( ) ? h()j r?" r+" "lim !0
r?" Zr+Z"
K "lim !0 = 0:
j ? j2 dd
r?" r+"
j ? j ?2dd (2:12)
We have used proposition 2 from appendix A in arriving at the last inequality above. Lemma 2.2 follows from (2.12). 1 Lemma 2.3. If h(rei ) = P hn (r)ein , then
? 1 "lim !0
ZZ r?" r+"
n=?1
1 h() dd = X hn+2 (r)ein ; ( ? )2 n=?1
8
6= 0:
(2:13)
Proof. Using proposition 1 from appendix A, we have
? 1 "lim !0
ZZ
r?" r+"
h() dd = h()r2 ( ? )2 2 =
1 X n=?1
hn+2 (r)ein :
(2:14)
Lemma 2.4. If h() is Holder continuous with exponent , 0 < < 1, and constant 1 P hn (r)ein, then n=?1 Z Z h( ) 1 X 1 dd = hn+2 (r)ein ; ? "lim !0 ( ? )2
K , and h(rei ) =
n=?1
r?" r+"
6= 0:
(2:15)
Proof. The Lemma follows from lemmas 2.2 and 2.3. 1 Lemma 2.5. If h(rei ) = P hn (r)ein , then n=?1
Z1
1?m Sn;m(0) = 0; n 6= 0; and S0;m(0) = ?2 "lim !0 hm ()d:
"
(2:16)
Proof. Since Tm h(0) is a constant (see equation (1.1)), it follows that all of its Fourier coecients are zero except for S0;m(0), which is equal to Tmh(0) and can be evaluated as follows.
S0;m(0) = ? 1 "lim !0 = ? 1 "lim !0
ZZ B(0;1)?B(0;")
ZZ
B(0;1)?B(0;")
9
h( ) dd m h(ei ) dd m eim
Z1
1 X
" Z1
n=?1
1?m = ? 1 "lim !0
0Z2 1 hn () @ ei(n?m) dA d 0
1?m hm ()d: = ?2 "lim !0
"
(2:17)
Lemma 2.6. If h() is an analytic function in the neighborhood of a unit disk, then for m 2 and jj 6= 0, ? 1 "lim !0 where
ZZ r?" r+"
ZZ
r?" r+"
1 h( ) dd = X Bn;m(r)ein ; ( ? )m n=?1
8 0; n < ?1; n 6= ?m, < m 2?m n = ?m, Bn;m(r) = : ?(?m+1)n?r1 2?hm0 (r); hm+n (r); n ?1. m?2 r
Proof. Using Green's theorem, we get h( ) dd = 1 Z h( ) d ( ? )m 2i ( ? )m @
r?" r+"
(2:18)
(2:19)
8 9 > Z Z Z < = > h ( ) h ( ) h ( ) 1 d ? d ? d = 2i > :@B(0;r+") ( ? )m @B(0;r?") ( ? )m @B(;") ( ? )m > ; 8 > Z Z < 1 h( ) d h ( ) 2 2 = 2i >(r + ") d ? ( r ? " ) m ( ? ) ( ? )m : @B(0;r?") @B(0;r+") 9 Z2 h( + "ei )( + "e?i ) = i i"e d; ? "m eim 0( " # m?1 h( ) h (0) 1 d 1 = 2i 2i(r + ")2 (?)m + (m ? 1)! d m?1 = 9 2 1 Z X i hs (r) ( + "ei )s (e?(m?1)i + "e?im )d= ? ?2i(r ? ")2 (?h(0) ; )m "m?1 s=0 rs 0 10
"
(
#
m?1 h( ) h (0) 1 d 1 2 2 i ( r + " ) + = 2i (?)m (m ? 1)! d m?1 = 1 h (r) s X i h (0) s s ? m +1 m ? 1 2 " ? 2i(r ? ") (?)m ? "m?1 s 2 m ? 1 r s=m?1
1 h (r) X s s?m"m+1 i s 2 ? "m?1 s m s=m r
Therefore,
? 1 "lim !0
ZZ
r?" r+"
)
:
(2:20)
"
(
#
)
h( ) dd = ? 1 2ir2 h(0) + 1 dm?1 h( ) ( ? )m 2i (?)m (m ? 1)! d m?1 =
1 h (r) X h (0) s s?m+1 s 2 ?2ir (?)m ? 2i s m?1 1 r ( 2 m?1 s=m? = ? (m r? 1)! dd m?1 h( ) = ) 1 h (r) X s s s ? m +1 : (2:21) ? s m?1 s=m?1 r
Using proposition 3 from appendix A in (2.21), the Fourier coecients Bn;m(r) of the integral operator on the left hand side of (2.21), as de ned in (2.18), is then given by
(
Z 1 2 X 1 Bn;m(r) = ? 2 e?in (m r? 1)! hrsm(r) (s ? 1)(s ? 2) : : : (s ? (m ? 1))ei(s?m) s=0 2
) 1 h (r) s X s i(s?m) d ? m?2 m ? 1 e r s=m?1 8 Z2 1 h (r) < r2 X 1 s ?in ei(s?m) d = ? 2 : (m ? 1)! m (s ? 1)(s ? 2) : : : (s ? (m ? 1)) e r s=0 0 9 1 h (r) s Z2 = X s ?in ei(s?m) d e ? m?2 m ? 1 ; s=m?1 r 0 0
11
8 1 h 2r2 hm+n(r) > (m + n ? 1)(m + n ? 2) ? > i < 2 (m?1)! rm ? 2 h ( r ) m + n m + n = > : : : ((m + n) ? (m ? 1)) ? rm?2 m?1 ; n ?1, > n < ?1 and n 6= ?m, : 0(?; 1)mr2?mh0(r); n = ?m; 8 ?m+n?1 2?m < m?2 r hn+m(r); n ?1, = : 0; (2:22) n < ?1 and n 6= m, m 2 ? m (?1) r h0 (r); n = ?m.
Lemma 2.7. If h() is an analytic function in the neighborhood of the unit disk, then
the Fourier coecient S0;m(0) = Tm h(0) is given by
S0;m(0) = ?hm (1):
(2:23)
Proof. Using Green's theorem, the Cauchy principal value of Tm h( = 0) (see equation (1.1)) can be evaluated as follows. Z Z h( ) 1 Tm h(0) = ? "lim m dd !0
B(0;1)?B(0;")
8 9 > Z Z < = > 1 h ( ) h ( ) = ? 2i "lim d ? !0 > m d > :@B(0;1) m ; @B(0;") 9 8 2 > Z Z = < i )"e?i i"ei > 1 h ( "e h ( ) = ? 2i "lim d ? d> !0 > "m eim ; :@B(0;1) m+1 0 8 9 2 Z < = m 2i d h( ) ? i i )e?im d = ? 21i "lim h ( "e =0 "m?2 !0 : m! d m ; 0 9 8 2 Z 1 = < X i n i ( n ? m ) h (1) " e d 2 ih (1) ? = ? 21i "lim m !0 : ; "m?2 n=0 n 0 2i 1
m = ? 2i "lim !0 2ihm (1) ? "m?2 hm (1)" = ?hm (1):
12
(2:24)
Now we have all the lemmas necessary to prove Theorem 2.1 which follows. Proof of Theorem 2.1. We rewrite Tm h() as a Cauchy principal value and divide the domain of integration into three subdomains for the purpose of integration. ZZ h( ) dd 1 Tm h() = ? "lim !0 ( ? )m B(0;1)?B(;")
8 > ZZ < Z Z h( ) h( ) dd 1 = ? "lim dd + m !0 > ( ? )m : 0 r?" ( ? ) r?" r+" 9 > Z Z h( ) = + dd : > ( ? )m ;
(2:25)
r+" 1
The Fourier series coecient, Sn;m(r), of Tm h(rei ) is given by
8 > Z2 ZZ < Z Z h( ) h( ) dd 1 ? in dd + Sn;m (r) = ? 22 e "lim m !0 > ( ? ) ( ? )m : 0
0 r?" r?" r+" 9 > Z Z h( ) = d dd + > ( ? )m ; r+ " 81 9 > > 2 2 ZZ Z e?in Z e?in = ? 22 > h( ) ( ? )m ddd + : 0 r ; 0 0
1 r 9 8 > > 2 Z Z Z = ?in < 1 h ( ) 1 + 2 >? "lim e d !0 ( ? )m dd> ; : 0
r+" r ? " 8 9 > > ZZ h( )Qn;m(r; )dd + h( )Qn;m(r; )dd> + Bn;m(r) :
;
0r
r1
13
(2:26)
where
Z2 e?in Qn;m (r; ) = ( ? )m d; 0 RR and Bn;m(r) is the nth Fourier coecient of ? 1 "lim !0
r?" r+"
(2:27) h( ) ( ?)m dd as de ned earlier
in the text. From proposition 4 in appendix A we have
8 2(?1)mrn??n?1 ?(m+n) ; > m?1 < 0; Qn;m(r; ) = > 0; : 2rn?mm+?n?1 1 ?(m+n) ;
n ?m; j j < r, n > ?m; j j < r, n < 0; j j > r, n 0; j j > r.
(2:28)
It is convenient to rewrite (2.26) as
Sn;m (r) = Cn;m (r) + Bn;m(r)
(2:29)
with Cn;m (r) given by
8 9 > > ZZ h( )Qn;m (r; )dd + h( )Qn;m (r; )dd> : 0 r ; r 1 8 (?1)m+1 n??n?1 RR > h( ) ?(m+n) dd; n m, r m?1 > < 0 r = > 0; n ? ?m < n < 0, RR m + n ? 1 r ? ( m + n ) > dd; n 0, : ? m?1 h( ) 8 m+1 ? r 1Rr m+n?1 > 2(?1) ?n?1 r hm+n ()d; n ?m, > < rm?1 m?1 0 ?m < n < 0, (2:30) = > 0; 1 m + n ? 1 ? R > hm+n ()d; n 0. : ? rm2?1 mm+?n?1 1 r r
Theorem (2.1) follows from (2.29), (2.30) and lemmas (2.1) through (2.7). Use of Theorem 2.1 in constructing a fast algorithm to evaluate the integral Tm h() requires the following recursive relations which follow from the theorem itself. 14
2.2. Recursive Relations Corollary 2.1. It follows from (2.2) that Cn;m (1) = 0 for n 0; and Cn;m (0) = 0 for n ?m: We repeat from (2.2) that Cn;m (r) = 0 for ? m < n < 0 for all values of r in the domain.
Corollary 2.2. If rj > ri and
8 m+1 ? Rrj m+n?1 > rj 2(?1) ?n?1 > hm+n ()d; n ?m, m?1 < m?1 r r j i;j i Cn;m = > ?m+n?1 Rrj ri m+n?1 h ()d; n 0, 2 > m+n : rim?1 m?1
(2:31)
ri
then
r n
i;j ; Cn;m (rj ) = rj Cn;m(ri ) + Cn;m ri n i;j ; Cn;m (ri ) = ri Cn;m(rj ) ? Cn;m j
n ?m;
(2:32)
n 0:
(2:33)
Proof. The proof is straight-forward. The Corollary 2.2 follows directly from simple manipulation of (2.2) and using (2.31). Corollary 2.3. Let 0 = r1 < r2 < < rM = 1, then
8 Pl n > i?1;i for n ?m and l = 2; : : :; M , < i=2 rril Cn;m Cn;m (rl ) = > MP?1 n rl i;i+1 :? ri Cn;m for n 0 and l = 1; : : :; M ? 1.
(2:34)
i=l
Proof. The proof is straight-forward. Repeated application of (2.32) and Cn;m (0) = 0 for n ?m (see Corollary 2.1) gives the rst part of the Corollary. Similarly, repeated application of (2.33) and Cn;m (1) = 0 for n 0 (see Corollary 2.1) gives the second part of the Corollary.
3. Formal Description of the Fast Algorithm 15
Recall that the unit disk B(0; 1) is discretized using N M lattice points with N equidistant points in the circular direction and M equidistant points in the radial direction. The following is a formal description of the fast algorithm useful for programming purposes.
Algorithm 3.1:
INPUT: m 1, M , N and h(rl e2ik=N ), l 2 [1; M ], k 2 [1; N ]. OUTPUT: Tmh(rl e2ik=N ), l 2 [1; M ], k 2 [1; N ].
Step 1
Set K = N=8, r1 = 0, and rM = 1.
Step 2 Compute the Fourier coecients hn (rl ); 8 l 2 [1; M ] & n 2 [?K + m; K ] from known
values of h(rl e2ik=N ), k = 1; 2; : : :; N using the FFT.
Step 3 i;i+1 ; 8 i 2 [1; M ? 1] & n 2 f[?K; ?m] [ [0; K ? m]g using equation Compute Cn;m
(2.31).
Step 4
Note: [Compute Cn;m (rl ); 8 l 2 [1; M ] & n 2 [?K; K ? m] using corollaries 2.1
through 2.3] set Cn;m (r1) = 0 8 n 2 [?K; ?m] do n = ?K; : : :; ?m do l = 2; : : :; M
r n l?1;l Cn;m (rl ) = r l Cn;m (rl?1 ) + Cn;m l?1
enddo enddo set Cn;m (rM ) = 0 8 n 2 [0; K ? m] 16
do n = 0; 1; : : :; K ? m do l = M ? 1; : : :; 1
r n l;l+1 Cn;m (rl ) = r l Cn;m (rl+1 ) ? Cn;m l+1
enddo enddo If m > 1, then do n = ?m + 1; : : :; ?1 do l = 1; : : :; M Cn;m (rl ) = 0:
enddo enddo end if
Step 5
Note: [Compute Bn;m(rl ); 8 l 2 [2; M ] & n 2 [?K; K ? m] using equations (2.4),
(2.6) and (2.7).] If m = 1, then set Bn;m(rl ) = 0 8 l 2 [2; M ] & n 2 [?K; K ? m]:
else
Compute Bn;m(rl ); 8 l 2 [2; M ] & n 2 [?K; K ? m] using (2.4) for the Case 1 and (2.6) for the Case 2 (see Theorem 2.1).
end if
Step 6
NOTE: [Compute the Fourier coecients Sn;m (rl ); 8 l 2 [2; M ] & n 2 [?K; K ? m]
using equation (2.1).]
17
do n = ?K; : : :; K ? m do l = 2; : : :; M
Sn;m(rl ) = Bn;m(rl ) + Cn;m (rl ):
enddo enddo
Compute Sn;m(0); n 2 [?K; K ? m] from (2.1) using (2.3) for the Case 1 and (2.5) for the Case 2. Compute Tm h(rl e2ik=N ) =
KP ?m
n=?K
Step 7
Sn;m(rl )e2ikn=N ; 8 l 2 [1; M ] & k 2 [1; N ].
Remark 3.1. N must be a power of two for eective use of FFT. Remark 3.2. m is either 1 or 2 for the Case 1 (see Theorem 2.1). Remark 3.3. K must be greater than m.
3.1 Adaptation of the Fast Algorithm for Annular Domains The above algorithm can be easily modi ed to compute the singular integral operators within an annular region R = f: R < jj < 1g provided the annulus R is similarly discretized, i.e. with N M lattice points with N equidistant points in the circular direction and M equidistant points in the radial direction. Since the origin is not part of the domain, the inner radius r1 = R 6= 0. This requires minor modi cations of the above algorithm which are rather straight-forward because the Theorem 2.1 still applies on which the algorithm is based. Nonetheless, these are mentioned below to facilitate the implementation of the algorithm.
Algorithm 3.2:
The algorithm 3.1 with the following minor modi cations for the case when h() is a Holder continuous function is referred to as Algorithm 3.2 for our later purposes. In a follow-up paper [16], we apply this algorithm to quasiconformal mappings of doubly connected domains. 18
1. 2. 3. 4.
In INPUT, restrict m = 1; 2 and also specify R. In step 1, change r1 = 0 to r1 = R. In step 5, change l 2 [2; M ] to l 2 [1; M ]: In step 6, change l 2 [2; M ] to l 2 [1; M ]: Since the origin is not part of the domain, we do not need to compute Sn;m(0) in step 6.
3.2. The Algorithmic Complexity
We consider the computational complexity of the above algorithms. We discuss the asymptotic operation count, time complexity and storage requirement. TABLE 1 Computational Complexity Step Operation number count Step 2 O(MN ln N ) Step 3 Step 4 Step 5 Step 6 Step 7
Explanation
Each FFT with N data points contributes N ln N operations. There are M such FFTs to be performed. i;i+1 ; i 2 [1; M ? 1] O (MN ) Computation of Cn;m contributes 2M operations for each xed n. There are 2(K ? m) such computations. O (MN ) Computation of each Cn;m (rl ) takes one operation. There are 2M (K ? m) such computations. O (MN ) Computation of each Bn;m(rl ) takes 3 operations. There are 2M (K ? m) such computations. O (MN ) Computation of each Sn;m (rl ) takes one operation. There are 2M (K ? m) such computations. O(MN ln N ) Computation of Tm h( = rl e2ik ), k 2 [1; N ] for each xed l by FFT contributes N ln N operations. There are M such FFTs to be performed.
From Table 1 we see that the asymptotic time complexity is O(MN ln N ). The algo19
rithm requires storage of the 2MK Fourier coecients hn (rl ) in step 2, the 2M (K ? m) Fourier coecients Sn;m (rl ) in step 6 and the MN values of Tm h at MN grid points in step 7. Therefore the asymptotic storage requirement is O(MN ). The algorithm is also inherently parallelizable and thus these estimates can be improved upon if the algorithm is implemented on a parallel machine which is a topic of further research.
4. Validation of the Algorithm
In this section we validate the algorithm of x3 as well as illustrate the algorithmic steps with two examples. Examples 4.1 and 4.2 validate the cases (i) and (ii) of Theorem 2.1 respectively. Example 4.1. Let h( ) = and m = 2. Then ZZ dd 1 T2 h() = ? "lim !0 ( ? )2 B(0;1)?B(;") Z Z 2 2 d 1 1 d + lim = ? 4i ( ? )2 4i "!0 ( ? )2 @B(0;1)
= ? 41i
Z
@B(0;1)
@B(;") Z2
2 d + 1 lim 1 ( + "e?i )2e?i d ( ? )2 4i "!0 "
Z d 1 = ? 4i 2 ( ? )2 = 0: @B(0;1)
0
(4:1)
Below we apply the fast algorithm to evaluate the above integral T2 h at some grid points determined by the initialization. Initialization: we take M = 4, N = 32 and m = 2. Step 1. Set K = N=8 = 4. Step 2. Compute the Fourier coecients hn (rl ); 8 l 2 [1; 4] & n 2 [?2; 4]:
0 if n 6= ?1, hn (rl ) =
rl if n = ?1. 20
Step 3. Compute Cn;i;i2+1 ; 8 i 2 [1; 3] & n 2 f[?4; ?2] [ [0; 2]g using equation (2.31). (0 if n 6= ?3, i;i +1 Cn;2 = ri4 ?3ri4+1 if n = ?3. ri+1
Step 4. Compute Cn;2 (rl ); 8 l 2 [1; 4] & n 2 [?4; 2] using corollaries 2.1 through 2.3. 0 if n 6= ?3, Cn;2 (rl ) = ?r if n = ?3. l Step 5. Compute Bn;2 (rl ); 8 l 2 [2; 4] & n 2 [?4; 2] using equation (2.4). 0 if n 6= ?3; Bn;2(rl ) = r if n = ?3: l Step 6. Compute Sn;2 (rl ); 8 l 2 [1; 4] & n 2 [?4; 2] using equation (2.1).
Sn;2 (rl ) = 0: Step 7. Compute T2 h(rl e2ik=N ); 8 l 2 [1; M ] & k 2 [1; N ] from its Fourier coecients Sn;2 (rl ):
T2 h(rl e2ik=N ) =
KX ?m
n=?K
Sn;2 (rl )e2ikn=N = 0:
These values are in accordance with (4.1).
Example 4.2. Let h( ) = 4 and m = 3, then ZZ 4 dd 1 T3 h() = ? "lim !0 ( ? )3
B(0;1)?B(;") Z Z 4 1 1 4 d = ? 2i d + lim ( ? )3 2i "!0 ( ? )3 @B(0;1) @B(;") 2 2 1 Z ie4i 1Z 1
i 4 ?2i + "e?3i )d !0 "2 ( + "e ) (e (ei ? )3 d + 2 "lim 0 0 Z 3 d + 62 = ? 21i ( ? )3
= ? 2i
@B(0;1) = ?3 + 62
= (?3r + 6r3)ei :
(4:2) 21
In order to compare (4.2) with the result of the fast algorithm, we apply the fast algorithm to evaluate the same integral at some grid points determined by the initialization. Initialization: we take M = 3, N = 32 and m = 3. Step 1. Set K = N=8 = 4. Step 2. Compute the Fourier coecients hn (rl ); 8 l 2 [1; 3] & n 2 [?1; 4]:
0 if n 6= 4, hn (rl ) = 4
rl if n = 4.
Step 3. Compute Cn;i;i3+1 ; i = 1; 2 & n 2 f[?4; ?3] [ [0; 1]g using equation (2.31).
Cn;i;i3+1 =
0;
(n; i) 6= (1; 2), 3(r2 ? r23); (n; i) = (1; 2).
Step 4. Compute Cn;3 (rl ); 8 l 2 [1; 3] & n 2 [?4; 1] using corollaries 2.1 through 2.3.
0;
l) 6= (1; 2), Cn;3 (rl ) = 3(?r + r3) ((n; n; l) = (1; 2). 2 2 Step 5. Compute Bn;3 (rl ); l = 2; 3 & n 2 [?4; 1] using equation (2.4). 0; n 6= 1; Bn;3(rl ) = 3r3 ; n = 1. l Step 6. Compute Sn;3 (rl ); 8 l 2 [1; 3]; & n 2 [?4; 1] using equation (2.1).
Sn;3(rl ) = 0; n 6= 1; and
S1;3(r1 ) = 0; S1;3(r2) = ?3r2 + 6r23 ; & S1;3(r3) = 3r33:
Step 7. Compute T3 h(rl e2ik=N ); 8 l 2 [1; 3] & k 2 [1; N ] from its Fourier coecients Sn;3 (rl ): T3 h(r1 e2ik=N ) = 0; 8 k 2 [1; N ]; T3 h(r2 e2ik=N ) = (?3r2 + 6r23)e2ik=N ; 8 k 2 [1; N ]; T3 h(r3 e2ik=N ) = 3r33e2ik=N ; 8 k 2 [1; N ]: 22
These values are in accordance with (4.2).
5. Conclusion
In this paper we have generalized a fast algorithm of Daripa [11] for rapid evaluation of some singular operators that may arise in many problems of pure and applied mathematics. In particular we have developed fast algorithms for evaluation of Tm h() for the following cases. (i) The complex valued function h() is Holder continuous with exponent , 0
Z Z = < > h ( ) h ( ) 1 d ? d = ? 2i "lim !0 > ; :@B(0;1) ( ? )m @B(;") ( ? )m > 8 9 2 > > Z Z < = 1 i h ( ) i i (1 ? m ) ? im = ? 2i "lim d ? h( + "e )(e + "e )d> : !0 > :@B(0;1) ( ? )m "m?1 0 ; (B.4)
Because of analyticity of function h, we can write
1 X i h( + "e ) = an "n ein ; n=0
30
(B:5)
where an 's will depend on . Substituting (B.5) in (B.4), we have
Z2X 1 i n in i(1?m) + "e?im )d; Tmh() = ?(b1 + b2 ) ? "lim !0 "m?1 n=0 an " e ( e 0
(B:6)
where b1 and b2 are the residues of (h?())m at 0 and of order 1 and m respectively. Therefore,
Z 1 X i n Tm h() = ?(b1 + b2 ) ? "lim ei(n+1?m) d !0 "m?1 n=0 an " 2
i ? "lim !0 "m?1
1 X
n=0
Z2
0
an "n+1 ei(n?m) d
2i 0
m?1 ? 2i am "m+1 = ?(b1 + b2 ) ? "lim a " m ? 1 m ? 1 !0 " "m?1 2 = ?(b1 + b2 ) ? 2i "lim !0f am?1 ? am " g = ?(b1 + b2 ) ? 2i am?1 :
This completes the proof of Theorem B.2.
31
(B.7)
REFERENCES [1] L.V. Ahlfors, Lectures in Quasiconformal Mappings , Van Nostrand, New York, 1966. [2] Steven R. Bell, The Cauchy Transform, Potential Theory and Conformal Mapping , CRC Press, New York, 1992. [3] L. Bers, Mathematical aspects of subcritical and transonic gas dynamics , Wiley, New York, 1958. [4] L. Bers, Quasiconformal mappings, with applications to dierential equations, function theory and topology, American Mathematical Society, 83, No. 6 (1977), 1083{ 1100. [5] L. Bers and L. Nirenberg, On a representation theorem for linear elliptic systems with discontinuous coecients and its applications , Convegno Internazionale Suelle Equaziono Cremeonese, Roma, 1955, pp. 111-140. [6] L. Bers and L. Nirenberg, On linear and nonlinear elliptic boundary value problems in the plane , Convegno Internazionale Suelle Equaziono Cremeonese, Roma, 1955, pp. 141-167. [7] B. Bojarski and T. Iwanier, Quasiconformal mappings and nonlinear elliptic equations in two variables, I, & II. Bull. Acad. Polon. Sci., Ser. Math. Astronom. Phys., 12, (1974), 473{478 and 479{484 resp. [8] R. Courant and D. Hilbert, Methods of mathematical physics , Vol. II, John Wiley, New York, 1961. [9] P. Daripa, On Applications of a Complex Variable Method in Compressible Flows, J. Comput. Phys., 88, No. 2, (1990), 337{361. [10] P. Daripa, On a numerical method for quasiconformal grid generation, J. Comput. Phys., 96, 1991, 229-236. [11] P. Daripa, A fast algorithm to solve nonhomogeneous Cauchy-Riemann equations in the complex plane, SIAM J. Sci. Stat. Comput., 13, No. 6, (1992), 1418-1432. 32
[12] P. Daripa, A Fast Algorithm to Solve the Beltrami Equation with Applications to Quasiconformal Mappings, J. Comput. Phys., 106, (1993), 355{365. [13] P. Daripa, Generalization of a Fast Algorithm, Preprint, 1993. [14] P. Daripa and D. Mashat, An Ecient and Novel Numerical Method for Quasiconformal Mappings of Doubly Connected Domains , Numerical Algorithms, This Issue. [15] M. Gonzales, Classical complex analysis , Marcel Dekker, 1992. [16] S. Krushkal, Quasiconformal mapping and Riemann surfaces , Cambridge University Press, New York, 1961. [17] J. Lawrynowicz, Quasiconformal Mappings In The Plane, Lecture Notes in Mathematics, Springer Verlag, 1983. [18] C.B. Morrey, On the solutions of quasi-linear elliptic dierential equations , Trans. Amer. Math. Soc., 43 (1938), pp. 126{166. [19] A. Mshimba and W. Tutschke, Functional Analytic Methods in Complex Analysis and Applications to Partial Dierential Equations , World Scienti c Publishing Co. Pte. Ltd., Singapore, 1990. [20] L. Nirenberg, On nonlinear elliptic dierential equations and Holder continuity , Comm. Pure Appl. Math., 6 (1953), pp. 103{156.
33