Stokes flow singularity at the junction between impermeable and porous walls

Abstract For two-dimensional, creeping flow in a half-plane, we consider the singularity that arises at an abrupt transition in permeability from zero to a finite value along the wall, where the pressure is coupled to the seepage flux by Darcy’s law. This problem represents the junction between the impermeable wall of the inflow section and the porous membrane further downstream in a spiral-wound desalination module. On a macroscopic, outer length scale the singularity appears like a jump discontinuity in normal velocity, characterized by a non-integrable $1/ r$ divergence of the pressure. This far-field solution is imposed as the boundary condition along a semicircular arc of dimensionless radius 30 (referred to the microscopic, inner length scale). A preliminary numerical solution (using a least-squares variant of the method of fundamental solutions) indicates a continuous normal velocity along the wall coupled with a weaker $1/ \sqrt{r} $ singularity in the pressure. However, inconsistencies in the numerically imposed outer boundary condition indicate a very slow radial decay. We undertake asymptotic analysis to: (i) understand the radial decay behaviour; and (ii) find a more accurate far-field solution to impose as the outer boundary condition. Similarity solutions (involving a stream function that varies like some power of $r$ ) are insufficient to satisfy all boundary conditions along the wall, so we generalize these by introducing linear and quadratic terms in $\log r$ . By iterating on the wall boundary conditions (analogous to the method of reflections), the outer asymptotic series is developed through second order. We then use a hybrid computational scheme in which the numerics are iteratively patched to the outer asymptotics, thereby determining two free coefficients in the latter. We also derive an inner asymptotic series and fit its free coefficient to the numerics at $r= 0. 01$ . This enables evaluation of the singular flow field in the limit as $r\ensuremath{\rightarrow} 0$ . Finally, a uniformly valid fit is obtained with analytical formulas. The singular flow field for a solid–porous abutment and the general Stokes flow solutions obtained in the asymptotic analysis are programmed in Fortran for future use as local basis functions in computational schemes. Numerics are required for the intermediate- $r$ regime because the inner and outer asymptotic expansions do not extend far enough toward each other to enable rigorous asymptotic matching. The logarithmic correction terms explain why the leading far-field solution (used in the preliminary numerics) was insufficient even at very large distances.


Introduction
The flow of fluids in channels and tubes with porous walls or over porous surfaces is central to tangential-flow membrane separations (Yucel & Turkoglu 1995;Yeh & Cheng 1999;Miranda & Campos 2001;Geraldes, Semião & de Pinho 2002a;Geraldes, Semiao & de Pinho 2002b;de Pinho, Semião & Geraldes 2002;Damak et al. 2004a;Pak et al. 2008), boundary-layer control (Taylor 1956;Raghunathan, McIlwain & Mabey 1991;Raghunathan & Cooper 2000;Betyaev 2002;Patil & Ng 2010), blood flow through leaky capillaries in tumors (Pozrikidis 2010) and transpiration cooling. Our interest lies in the fine structure of fluid flow at junctions between impermeable and porous sections of the walls. In the case of spiral-wound membrane modules, such abrupt (effectively discontinuous) transitions in wall permeability occur between the membrane and either: (i) the initial and final impermeable sections of the channel (Miranda & Campos 2001;Geraldes et al. 2002b); or (ii) transverse filaments of a ladder-type spacer (Geraldes et al. 2002a;Geraldes, Semião & de Pinho 2002c). As is illustrated in figure 1, these two cases are distinguished by the angle (180 • versus 90 • , respectively) at which the impermeable and porous boundaries meet. Both angles arise in a theoretically proposed membrane separation process called antipolarization dialysis (Nitsche & Zhuge 1995). Our general Stokes flow solutions can be applied to satisfy the relevant boundary conditions for an arbitrary angular wedge, although we focus here on the former case of a flat wall with a discontinuous jump in permeability from zero to a finite value.
Here we shall be satisfied with a permeable boundary condition and consider its consequences for the fine structure of the two-dimensional flow field at the junction with an impermeable wall. The dominance of viscous over inertial forces sufficiently near the junction means that we can rely on the Stokes equations to elucidate the singularity (Hancock, Lewis & Moffatt 1981). Taylor's paint-scraper discontinuity and a related rotary honing problem, hinged-plate and Jeffery-Hamel flows, eddies and singularities at corners and other classic solutions in creeping flow (Taylor 1960(Taylor , 1962Moffatt 1964a;Pan & Acrivos 1967;Moffatt & Duffy 1980;Gupta, Manohar & Noble 1981;Hancock et al. 1981;Harper & Wake 1983;Hills & Moffatt 2000) are of the similarity form, which involves a radial power law for the stream function (when expressed in polar coordinates) ψ(r, θ ) = r λ f (θ). (1.1) Assuming a discontinuous jump from zero to a finite seepage velocity corresponds to λ = 1, and leads to a non-integrable r −1 blow-up of the pressure (Nitsche & Zhuge 1995). This represents an outer asymptotic limit for our problem of a permeable boundary condition. As we shall see below, the leading inner asymptotic solution corresponds to λ = 3/2. This leaves the seepage velocity continuous and softens the pressure singularity to r −1/2 . Unfortunately, the similarity form breaks down for even the first correction in both the inner and outer asymptotic solutions. The implementation of usable outer boundary conditions in a hybrid numerical-asymptotic scheme will be seen to require two corrections in the outer field. In the quest for a more general functional form for the stream function, we note the description of logarithmic asymptotic behaviour by Moffatt & Duffy (1980) in resolving the breakdown of similarity solutions at a special angle for the hinged-plate and Jeffery-Hamel problems. We are also guided by the occurrence of log r terms in some biharmonic problems from the theory of linear elasticity (Dempsey & Sinclair 1979Dempsey 1995;Stampouloglou & Theotokoglou 2010;Li & Wang 2010) and these have started to filter into Stokes flow problems involving corner (Sinclair, Chi & Shih 2009) and contact-line (Sinclair 2010) singularities. Here we shall go one step further by using quadratic polynomials in log r to carry the inner and outer L. C. Nitsche and P. Parthasarathi asymptotic solutions to second order. (The calculations for a longer power series in log r would be analogous but increasingly tedious.) Whether for planar or tubular geometries, mathematical models of flow and/or mass transfer in nanofiltration and reverse osmosis typically impose an inflowing velocity profile (uniform or parabolic) at the cross section that marks the start of the membrane (Sherwood et al. 1965;Gupta & Levy 1976;de Pinho et al. 2002;Geraldes et al. 2002b;Damak et al. 2004a,b;Kim 2007;Pak et al. 2008), and do not treat the impermeable section of the wall that lies upstream of this boundary condition. In those papers that explicitly model the flow rearrangement between impermeable and porous sections of the wall (Miranda & Campos 2001) or impermeable spacers adjoining the porous membrane at right angles (Geraldes et al. 2002a,c), the singularity mentioned above is not resolved in detail by the numerical scheme. We expect that coupling between the pressure singularities and osmotic effects would affect the solute concentration field. This is important from a practical perspective because the upstream portion of the membrane (where concentration-polarization layers are thinnest) is the most productive, and affects the transport process farther downstream.
Computational methods in fluid mechanics are increasingly relying on local asymptotic expansions to resolve fine-scale features such as singularities at corners. The stream function is typically expanded in a power series of similarity forms (1.1) and the coefficients determined by iterative and other procedures for matching with the numerical solution (Hawa & Rusak 2002;Shi, Breuer & Durst 2004;Shapeev & Lin 2009). Our specific solution for the impermeable-porous junction (and our more general solutions involving the first and second powers log r) would be useful in resolving fine structures without the need for local mesh refinement.

Overview of the paper
In the remainder of this introduction the Stokes flow problem is formulated mathematically ( § 1.2). In § 2 we present a first, purely numerical solution and indicate why further asymptotic work is desirable to: (i) formulate workable outer boundary conditions; and (ii) resolve the weakly singular inner behaviour as r → 0. Preparatory to both outer and inner asymptotic expansions, mathematical preliminaries in § 3 generalize the well-known similarity solution of the two-dimensional Stokes equations (Taylor 1960(Taylor , 1962Moffatt 1964a;Pan & Acrivos 1967;Moffatt & Duffy 1980;Gupta et al. 1981;Hancock et al. 1981;Harper & Wake 1983) by introducing a series in powers of log r, carried through quadratic terms. In § 4 we derive a regular perturbation series for the outer solution through second order by iterating on the seepage condition, in a manner that is reminiscent of the method of reflections (Happel & Brenner 1991;Kim & Karrila 2005). This procedure yields three basis functions that are consistent with all of the boundary conditions. Outer information is sufficient to specify the coefficient of only the first of these. Thus, one must defer determination of the remaining two coefficients to patching with the numerics, which is done with an iteration scheme in § 5. Analytical results for the inner solution are considered in § 6, and a uniformly valid set of analytical formulas is developed in § 7. Concluding remarks are offered in § 8.
1.2. Statement of the problem For generality, suppose that the fluid domain comprises an arbitrary angular wedge, with the impermeable boundary lying along the ray θ = Θ and the porous membrane lying along the ray θ = 0 (figure 1). In our problem Θ = π, representing the abrupt end of the sealed, entry section of the membrane in a spiral-wound desalination module. (The case Θ = π/2 would apply to a solid spacer adjoining the membrane, and will be treated in a subsequent paper.) The porous membrane is characterized by permeability κ and thickness , in terms of which seepage is described by Darcy's law.

Initial, purely numerical solution
For numerical purposes the Stokes boundary-value problem (1.6)-(1.13) is posed on a finite half-disc 0 < r < 30, 0 < θ < π; see figure 2. There are two main issues: (i) solution of the Stokes problem for prescribed boundary conditions; and (ii) formulation of suitable outer boundary conditions along the arc r = 30.

Hybrid fundamental-solution/boundary-integral method
By the method of fundamental solutions (MFS), linear elliptic boundary-value problems are solved by superposing singular solutions (poles) of the partial differential equation (PDE) that are positioned outside the domain (Kupradze 1964;Kupradze & Aleksidze 1964;Aleksidze 1966;Kołodziej & Kleiber 1989). When imposing the boundary conditions at discrete points lying at the edges of the domain, singularities are thereby avoided in the resultant linear equations to be solved for the coefficients of the poles (i.e. singularity strengths). Compared with simple boundary collocation, an overabundance of boundary points leads to a linear least-squares problem, which is generally more robust (Burgess & Mahajerin 1984;Bogomolny 1985;Nitsche & Brenner 1990;Nitsche & Zhuge 1995;Saavedra & Power 2003Alves & Silvestre 2004;Alves 2009). Pithy discussions of the trade-off between accuracy (favouring singularities farther from the boundary) and conditioning of the matrix (favouring singularities closer to the boundary) are provided by Bogomolny (1985), Saavedra & Power (2004) and Alves (2009); the last paper also mentions Tikhonov regularization as a means of ameliorating the conditioning issue. When the positions of the poles enter into the error criterion along with their strengths, a nonlinear optimization is required (Mathon & Johnston 1977;Han & Olson 1987;Fairweather & Karageorghis 1998). An adaptive multiple-regression scheme has also been described (Saavedra & Power 2004).
For interior (exterior) problems, distributing the poles over an externally (internally) displaced auxiliary boundary should yield a sufficient basis (Burgess & Mahajerin 1984;Kołodziej & Kleiber 1989;Alves 2009), although star-shaped clusters inside spherical particles were used by Dabroś (1985) to model three-dimensional Stokes flows. (The clusters could be interpreted as yielding finite-difference approximations of certain multipoles (Gluckman, Pfeffer & Weinbaum 1971;Yan et al. 1987;Dassios & Hadjinicolaou 2002).) Essentially all MFS treatments of Stokes flow use only point forces (Stokeslets) as the poles. The paper by Dabroś (1985) and two other papers (Nitsche & Brenner 1990;Nitsche & Zhuge 1995) were unusual in augmenting the point force with the point source, which is the fundamental solution for potential flow. The rationale for enlarging the basis was that all velocity fields from potential flow furnish solutions for the Stokes equations when combined with a vanishing (or uniform) pressure field.
Discrete poles correspond to a collection of delta-function spikes for the lineal density of singularity strength along the auxiliary boundary. Our numerical experience with MFS suggests that matrix conditioning and robustness improve with increasing regularity of the lineal density function. Thus, we employ a continuous, piecewiselinear density of both the potential and Stokes singularities over contiguous line segments that form a polygonal auxiliary boundary.
Collect in a matrix-valued point function G(r) the pressure and velocity fields for the point source, point force in the +x direction and point force in the +y direction. The first (row) index i refers to the component of the flow field and the second (column) index j indicates the type of singularity, namely

Rows
Columns 2x/r 2 2y/r 2 x/r 2 x 2 /r 2 − ln r xy/r 2 y/r 2 xy/r 2 y 2 /r 2 − ln r    . (2.1) A three-point basis function F(r; a, b, c) is obtained by linearly ramping up the lineal density of singularity strength from zero to unity over the first line segment − → ab, and then ramping the density back down to zero over the adjoining, second segment − → bc: The ramp-up (ramp-down) segment of each basis function is also the ramp-down (ramp-up) segment of its immediately adjacent predecessor (successor). When all of them are superposed, the partially overlapping hat-functions of singularity density yield a continuous, piecewise-linear distribution. The basis function (2.2) can be evaluated in closed form (appendix A), and has the following weakly singular behaviour along the segments − → ab and − → bc; cf. Pozrikidis (1992). (i) The velocity field is continuous at all points. (ii) The pressure field suffers a finite jump discontinuity in passing normally across each line segment. (iii) When the points a, b and c are colinear, the one-sided limit of the pressure (approaching the line in the normal direction from one side or the other) is continuous when regarded x y FIGURE 3. Boundary points and singularity segments for the semicircular domain 0 < r < 30, 0 < θ < π; cf. figure 2. Along the x-axis, the boundary points lie on the singularity segments, and the segment length is reduced smoothly from 1.0 near the corners x = ±30 to 0.001 near the origin. Along the semicircular arc a uniform mesh is used, with the singularity segments lying outboard of the boundary points. In this diagram we zoom in on the corner (x, y) = (30, 0). as a function of tangential position along the line. Otherwise the pressure blows up logarithmically approaching the angular joint b. When local refinement is required to resolve fine structure, which is the case for our problem, schemes that couple the spacing between poles to their distance from the physical boundary can lead to an oddly curved auxiliary boundary; cf. § § 3.6, 5.2.3 and figure 6 in the paper by Alves (2009). Although our initial trials with such a scheme proved eminently workable, the numerics can be simplified by taking the weakly singular limit wherein the auxiliary boundary moves infinitesimally close to the physical boundary over its straight sections: the porous membrane (θ = 0) and the impermeable wall (θ = π). Colinearity of the boundary segments then guarantees regularity of the pressure profile along the x-axis.
Equally spaced points along the arc r = 30 suffice for the far-field conditions. We keep the corresponding polygonal section of the auxiliary boundary outboard of the boundary points to avoid the aforementioned pressure singularities at the vertices; see figure 3. Thus, our numerical approach is similar to a single-layer boundary-integral equation (BIE) along the x-axis, while employing MFS along the semicircular arc. With analytical formulas for the basis function (2.2) in hand, whether the singularity segments lie on or outboard of the physical boundary is irrelevant to implementing the subsequent linear least-squares scheme.
For the finite domain shown in figure 2, the discretization parameters listed in figure 3 gave 376 boundary segments and 1500 boundary points in all. The numerical scheme was validated against the leading outer solution θ from (1.14)-(1.16); see § 3 of the supplementary material for details and results on this test problem.  .16) that serves as a boundary condition at r = 30. Note the obviously discontinuous slope where each numerical curve meets the corresponding outer analytical curve.

Preliminary numerical solution for a porous wall
In applying our numerical technique to the wall-seepage problem (1.6)-(1.13), it is initially tempting to replace the far-field, asymptotic-limit conditions (1.12), (1.13) with stipulations at the finite radius of the domain, as worked well for the less challenging test problem described above: Unfortunately, we now encounter difficulties; see figures 4-6. The numerical curves of v θ versus r in figure 4 do not level off sufficiently within the radius r = 30: they meet their imposed boundary values at appreciable slopes. Indeed, the curve for θ = 0 bends down sharply to do so. Since v r was not imposed as a boundary condition at r = 30, it is not surprising that the numerical curves in figure 5 do not even reach their horizontal asymptotes. Figure 6 shows a breakdown of the outer pressure boundary condition, especially near the porous membrane (i.e. small θ). Numerical trials (not shown here) indicate that inconsistency between the calculated v r and the leading outer solution v {1} r persist even to r = 300. Despite these limitations, the numerical solution does indicate the inner asymptotic behaviour: r 1/2 scaling of the pressure profile along the porous membrane and r −1/2 scaling elsewhere (figure 7); see Parthasarathi (2008). Limitations of the purely numerical approach motivate the outer asymptotic development in § 4.

Mathematical preliminaries
For the stream-function formulation of the two-dimensional Stokes equations, The logarithmic terms in r generalize the well-known similarity form (Taylor 1960(Taylor , 1962Moffatt 1964a;Pan & Acrivos 1967;Moffatt & Duffy 1980;Gupta et al. 1981;Hancock et al. 1981;Harper & Wake 1983;Shi et al. 2004;Shapeev & Lin 2009) and are required for iterative satisfaction of the seepage condition (1.11) along the porous membrane. In resolving the breakdown of similarity solutions at a special . Numerically calculated pressure plotted as a function of radius r for θ = 0, π/3, π. These curves strongly suggest an r 1/2 inner scaling of the pressure at θ = 0 and r −1/2 scaling at other angles.
angle for the hinged-plate and Jeffery-Hamel problems, Moffatt & Duffy (1980) uncovered logarithmic asymptotic behaviour. The first power of ln r also appears in some biharmonic problems from the theory of linear elasticity (Dempsey & Sinclair 1979Dempsey 1995;Stampouloglou & Theotokoglou 2010;Li & Wang 2010) and these have started to filter into Stokes flow problems involving corner (Sinclair et al. 2009) and contact-line (Sinclair 2010) singularities. We will need the second power of ln r as well. To compact the subsequent expressions, we introduce three differential operators: The PDE (3.1) leads to three ordinary differential equations (ODEs) for the angular functions: In terms of the angular functions, the velocity, pressure and shear stress are given by If we define arrays for free constants (3.14) and basis functions (3.15) then the general solutions of the ODEs (3.7)-(3.9) can be written in compact form: By substituting these solutions into (3.10)-(3.13), we obtain lengthy, explicit formulas for v r (r, θ), v θ (r, θ ), p(r, θ ) and τ rθ (r, θ ) in terms of the free constants a, b and c. These formulas appear in appendix B. For specific boundary conditions along the impermeable wall (θ = π) and the permeable membrane

Outer asymptotic solution
The outer solution for the numerics is superposed from three basis functions {v [k] , p [k] } (k = 0, 1, 2), each of which is obtained as a regular perturbation series. We introduce a notational hierarchy in which the three levels are distinguished by the type of brackets (i.e. square, round or curly) surrounding the numerical superscript.
[k] = kth basis function for the outer solution (4.1) (j) = jth term in the iteration series for a given basis function (4.2) {i} = ith building block, corresponding to a prescribed seepage-velocity or shear-stress profile along the permeable boundary. 4.1. Building blocks for the outer solution Eight specific solutions of (1.6)-(1.10), distinguished with numerical superscripts enclosed between curly brackets, serve as building blocks for the outer solution. These solutions do not, on an individual basis, satisfy the seepage condition (1.11). Rather, they are defined below by a hierarchy of seepage profiles v {i} θ (r, 0) along the permeable membrane boundary. The corresponding pressure and shear-stress profiles are as follows: The first building block is the well-known solution (1.14)-(1.17) for a discontinuous jump from zero to unit seepage velocity along the wall (Taylor 1960(Taylor , 1962Moffatt 1964a;Pan & Acrivos 1967;Hancock et al. 1981;Gupta et al. 1981;Harper & Wake 1983;Nitsche & Zhuge 1995). For the remaining solutions (i = 2, . . . , 8), appendix C provides explicit formulas for the velocity and pressure fields in Cartesian coordinates. Here we are satisfied to summarize the general forms of the radial decay: Solution(s) Velocity terms Pressure terms {2} r −1 , r −1 ln r r −2 , r −2 ln r (4.21) {6} r −2 , r −2 ln r, r −2 (ln r) 2 r −3 , r −3 ln r, r −3 (ln r) 2 (4.24) (4.25) (4.27) in which the ascending terms are obtained by iteration on the seepage condition (1.11). The original governing equations (1.6)-(1.10) apply to each flow field {v (j) (r), p (j) (r)}. However, the seepage condition (1.11) is altered so that the seepage flux at each order is now driven by the pressure at the previous order:

Iteration on the seepage condition For a fixed outer domain r > R we posit an asymptotic series
In view of the far-field conditions (1.12) and (1.13), it is natural to start off the iteration with the well-known similarity solution (1.14)-(1.16). (4.29) The constant term in the wall pressure profile p {1} (r, 0) is balanced by the uniform seepage velocity v {1} θ (r, 0); cf. equations (1.11) and (4.4). The remaining ord(r −1 ) wall pressure term then drives a new seepage velocity according to the shifted-order seepage condition (4.28). This is supplied by a suitable multiple of (4.5) at first order. From (4.13) we know that this will be accompanied by a non-zero shear stress along the membrane, which can be cancelled out by subtracting the corresponding contribution from (4.15) while leaving the pressure and seepage velocity untouched according to (4.7): (4.30) Now we have two terms in the membrane pressure profile p (1) (r, 0), namely (2/π) 2 r −2 and −(2/π) 2 r −2 ln r. These are matched by the respective seepage velocities in (4.8) and (4.9). The resultant shear stress from (4.16) and (4.17) can be cancelled out by subtracting a suitable multiple of the corresponding contribution from (4.18), while again leaving the pressure and seepage velocity untouched according to (4.10): (4.32)

Basis functions for the outer solution
To summarize results of the above iterative procedure, the well-known similarity solution (1.14)-(1.16) starts off one perturbation series which represents a fixed basis function for the outer solution. This Stokes solution satisfies both the no-slip condition (1.10) and the no-shear condition τ θr (r, 0) = 0. (4.35) Two other solutions cannot be excluded because their pressure and velocity fields vanish at infinity. (4.37) These should be included with floating coefficients to be determined by matching to the inner solution.
5.1. Iterative patching for the outer boundary condition A slight complication arises in using the outer field (5.1), (5.2): the coefficients C 1 and C 2 of the floating terms are not known a priori. These represent inputs to the inner solution, but are themselves (in theory) also determined by the inner behaviour. A rigorous asymptotic approach would involve matching of inner and outer expansions over the common range of validity of an intermediate radial variable. However, even carried through second order, the inner asymptotic solution (to be developed in § 6) will not extend far enough toward the outer asymptotic solution; see figures 11 and 12. Thus, we shall proceed here with an iterative scheme to patch an inner numerical solution to the outer asymptotic solution along the arc r = 30; see figure 2.
We begin by setting both floating coefficients in (5.1) and (5.2) equal to zero, and prescribe outer boundary conditions for v θ (30, θ) and p(30, θ) according to only the a priori known portion of the second-order outer solution: namely, v [0] θ and p [0] . Along the semicircular boundary r = 30, the numerically calculated radial velocity v numer r (30, θ), which was not prescribed with a boundary condition, will initially not be consistent with v outer r (30, θ; 0, 0). We then carry out a linear, least-squares fit of the The resulting updated coefficients C 1 and C 2 are fed back into (5.1) and (5.2) to prescribe outer boundary conditions for the next iteration of the numerical scheme. Since the least-squares matrix has already been factorized, only a quick back substitution is needed to obtain singularity strengths for the new right-hand side (updated conditions at the outer boundary points). The converged constants appearing in (5.1) and (5.2) are as follows: (5.4) Figures 10-12 show the iteration scheme to yield a very smooth patch of the numerical solution to the second-order outer solution at r = 30, much better than was obtained with the zero-order patching scheme (figures 4-6).

Inner asymptotic solution
Uniform seepage along the porous boundary (θ = 0) involves a jump discontinuity in the normal velocity component, which is associated with an r −1 singularity in the pressure in (1.14). From the numerical results depicted in figures 7 and 9 we see that seepage flux proportional to the transmembrane pressure drop, (1.11), allows the normal velocity component to remain continuous at the origin while also approaching the horizontal asymptote of −1 as r → ∞. This partly alleviates the singularity, so that now the pressure only blows up like r −1/2 as r → 0; see figure 7. . Numerically calculated pressure plotted as a function of radius r for θ = 0, π/3, π (thick lines). Thin lines indicate the inner asymptotic solution (6.12). Open circles indicate the polynomial fit described in § 7.

Second-order inner solution involving logarithmic terms
The impasse in the no-slip condition can be obviated if we are willing to entertain logarithmic terms from § 3. The iterative approach whereby ascending terms cancel previous errors in the boundary conditions will be familiar from § 4.2, so we shall here dispense with details and present only the final result. With reference to the general solution (B 1)-(B 4) from appendix B, we find with the relevant constants appearing in table 1. This Stokes flow field exactly satisfies the no-slip (1.8) and no-penetration (1.9) conditions along the impermeable boundary (θ = π) as well as the seepage condition (1.11) along the porous membrane (θ = 0). Along the latter boundary the tangential velocity and shear stress are asymptotically small, i.e. of third order relative to the leading velocity (r 1/2 ) and pressure (r −1/2 ) 202 L. C. Nitsche and P. Parthasarathi  (6.14) Since slip velocity and shear stress both vanish within negligible errors, the Beavers-Joseph slip condition (Beavers & Joseph 1967;Jones 1973;Nield 1983) is thereby satisfied as well; see § 1 of the supplementary material.

A uniformly valid, analytical formula
The numerical velocity components and pressure, regarded as functions of θ at r = 0.01, yield the prefactor for the inner asymptotic solution (6.10)-(6.13): We shall use this solution for r < 0.01 and the outer asymptotic solution (5.1), (5.2), (5.4) for r > 30. To bridge the gap at any fixed value of θ, we approximate ln p(r, θ), v r (r, θ) and v θ (r, θ ) with eighth-degree polynomials in the variable ln r, whose coefficients are chosen to match: (i) the asymptotic function values and first two derivatives with respect to ln r at the ends; and (ii) the numerical function values at three tabulated intermediate radii approximately equal to r = 0.1, 1, 10, respectively. The latter three functions of θ at fixed r are obtained by fitting cubic splines to the numerical data at angular increments θ = π/12. The polynomial fits approximate the numerical solution very accurately, as can be seen in figures 9-12. Figures 13-15 show plots of p(x, y), v x (x, y) and v y (x, y) based upon the uniformly valid fit.

Concluding remarks
An abrupt transition between impermeable and permeable portions of a planar wall is typical of the upstream section of a reverse-osmosis module (Miranda & Campos 2001;Geraldes et al. 2002b). This paper has resolved the two-dimensional Stokes flow singularity found at such special points. In particular, the pressure field has an integrable singularity (of order r −1/2 ), and the seepage velocity is continuous (scaling like r 1/2 ). By contrast, assuming a uniform seepage velocity that jumps discontinuously to zero at the junction with the impermeable section leads to a non-integrable, r −1 divergence in pressure. Such details are important to quantify because: (i) reverse osmosis is sensitive to the local transmembrane pressure drop; and (ii) the upstream zone, where the concentration-polarization boundary layer is not yet fully developed, is the most productive portion of the membrane. A major theme of this paper has been the fruitful interplay between numerical and asymptoptic analysis, both of which were needed to solve the fluid mechanical problem at hand. Initial numerics guided the inner asymptotics by indicating the radial scaling of the flow singularity, but suffered from poor satisfaction of the outer boundary conditions at r = 30. Consistency for these boundary conditions was dramatically improved using a hybrid numerical-asymptotic scheme. Slowly decaying, logarithmic terms in the outer asymptotic expansion explain why a purely numerical approach would require a much larger domain, over most of which the analytical formulas would yield indistinguishable results with much less computation time. The inner asymptotic expansion allows the singular fine structure to be resolved at arbitrarily small r without the need for extreme mesh refinement. The numerics (as fitted with suitable polynomials in ln r) bridge between the inner and outer asymptotics.
To maximize the usability of our results for readers who may wish to use the formulas in their own calculations, § 4 of the supplementary material contains a Fortran 2003 library that evaluates: (i) the general solution (B 1)-(B 4) from appendix B for arbitrary radial exponent ω, including the special cases ω = ±1; and (ii) the uniformly valid porous-wall solution described in § 7; see figures 13-15. Such solutions could be used as local basis functions within a more extensive numerical scheme (Bruns 1979;Ingham & Kelmanson 1984;Floryan & Czechowski 1995;Nitsche & Zhuge 1995;Hawa & Rusak 2002;Shi et al. 2004;Shapeev & Lin 2009), to reduce the need for local mesh refinement. Compared with local power series involving similarity solutions (Hawa & Rusak 2002;Shi et al. 2004;Shapeev & Lin 2009), the logarithmic solutions from § 3 expand the palette of Stokes basis functions and go beyond the first power of ln r thus far considered in other papers (Sinclair et al. 2009;Sinclair 2010). By way of a posteriori validation, the Fortran code subjects the flow fields to discretized (i.e. finite-difference) versions of the continuity and Stokes equations, and also checks harmonicity of the pressure. Calling sequences for the relevant subroutines are illustrated with a short sample program in appendix D.

Supplementary material
Supplementary material is available at journals.cambridge.org/flm. The discriminant AC − D 2 is always non-negative, and it vanishes when the point r lies somewhere on the line passing through a and b. In this eventuality the further restriction 0 < D/C < 1 indicates the weakly singular limit wherein r lies between a and b. Let L. C. Nitsche and P. Parthasarathi For the singular case E = 0 (numerically, E below some tolerance) we use the following formulas with 1 i, j 2: Otherwise we have