João Bosco

Ferreira Filho
email: j.ferreirafilho@cs.bham.ac.uk

Mathieu Acher
email: mathieu.acher@irisa.fr

Olivier Barais
email: olivier.barais@irisa.fr

Software Unbundling: Challenges and Perspectives

Keywords: D.2.9 [Software Engineering]: Distribution, Maintenance, and Enhancement Unbundling, modularization, features, aspects, reengineering, refactoring, evolution

Unbundling is a phenomenon that consists of dividing an existing software artifact into smaller ones. It can happen for different reasons, one of them is the fact that applications tend to grow in functionalities and sometimes this can negatively influence the user experience. For example, mobile applications from well-known companies are being divided into simpler and more focused new ones. Despite its current importance, little is known or studied about unbundling or about how it relates to existing software engineering approaches, such as modularization. Consequently, recent cases point out that it has been performed unsystematically and arbitrarily. In this article, our main goal is to present this novel and relevant concept and its underlying challenges in the light of software engineering, also exemplifying it with recent cases. We relate unbundling to standard software modularization, presenting the new motivations behind it, the resulting problems, and drawing perspectives for future support in the area.

Introduction

Software is designed to meet user needs and requirements, which are constantly changing and evolving [START_REF] Pohl | Requirements engineering: fundamentals, principles, and techniques[END_REF]. Meeting these requirements allows software companies to acquire new users and to stay competitive. For example, mobile applications compete with each other to gain market share in different domains; they constantly provide new features and services for the end user, growing in size and complexity. In some cases, the software artifact absorbs several distinct features, overloading the application and overwhelming the user and his/her acceptance of the software product [START_REF] Ickin | Factors influencing quality of experience of commonly used mobile applications[END_REF] -he/she has to carry dozens of Swiss Army knives in his smart phone.

A recent phenomenon is to unbundle these dense pieces of software into smaller ones, trying to provide simpler and more focused applications. Unbundling consists of dividing an existing software artifact into smaller ones, each one serving to different end use purposes. It requires an unplanned coarse-grained modularization of mature software: unplanned because it is very hard to foresee that an application will, in some point of the future, need to be split into smaller ones; while regarding the granularity, the unbundled applications can be seen as coarse modules composed by dozens of classes and packages.

The main claim and goal of modularization techniques when applied to mature code is to improve software properties like maintainability and understandability [START_REF] Mortensen | Aspect-oriented refactoring of legacy applications: An evaluation[END_REF]. When unbundling, this is not the case; these desired good properties become means, instead of ends of the process. The goal is the division itself, in order to attend to market issues imposed by trends of usage and competition to gain market share. Meanwhile, the good properties of modularity may work as enablers to accomplish unbundling.

Despite the importance of unbundling in today's software industry, no studies have been conducted to conceptualize or analyse these challenges. This article is a first step to fill this void. Our main contributions are: to define and analyse the unbundling phenomenon (Section 2); to present the main challenges of unbundling, showing examples of this current phenomenon and explaining how it relates to existing software engineering approaches for software modularization (Section 3); and to draw perspectives on how to facilitate and better exploit unbundling (Section 4).

This article builds upon our original paper [START_REF] Ferreira Filho | Challenges on software unbundling: Growing and letting go[END_REF] and the feedbacks we gathered at MODULARITY'15 [START_REF] France | Proceedings of the 14th International Conference on Modularity[END_REF]. We extend the work [START_REF] Ferreira Filho | Challenges on software unbundling: Growing and letting go[END_REF] as follows: (1) we further discuss challenges related to the user acceptance of unbundled software, discussing the risks for a company's user base; (2) we describe the reasoning over the consequences in the application's infrastructure and surrounding services; (3) we include a concrete case of a mobile client when explaining the granularity challenges; and (4) we extend the literature review.

The Unbundling Phenomenon

Recently, many well-known software companies started to divide their mobile applications into smaller ones. This is the case of Foursquare, Dropbox, LinkedIn, Evernote, Facebook and Google. Some of them, like Foursquare, have split into two, continuing with the original one and separating part of its features into a second brand new application (in this case, Swarm); some others unbundled into several applications, for example, LinkedIn originated Pulse, Connected, Job Search, Recruiter, Sales Navigator and Slide Share. IBM also adopted the strategy of dividing their software and services to better adequate to market and regulatory needs [START_REF] Humphrey | Software unbundling: a personal perspective[END_REF].

In all these cases, unbundling was essentially about identifying parts of the original software that could be isolated in separated applications. For doing this, these parts must be reengineered in a new software, according to a high-level end user purpose. A purpose is a high-level and often subjective end user goal when using the software product, it can be the reason why the user acquired the product (e.g., sharing photos, making todo lists, searching places, etc.), and it can gather a set of requirements or features of it. Ideally, one application should serve one primary purpose, however secondary purposes often start as small features of the application, and then they grow until they are a considerable part of the software, which can now be separated as a self-contained purpose.

Reengineering these parts that serve different purposes comprehends: (1) decoupling them from other parts that will not be in the same application, so they can exist separately; (2) developing missing parts that were removed during refactoring or that are necessary to make the part usable (e.g., changing a user interface code to show only a group of functionalities). In the case of mobile applications, software companies are trying to follow the principle of having one major purpose per application, so the user knows why and how to use it, avoiding numerous, cluttering and confusing features. In this way, application vendors create a strong identity for their products and link them well-defined purposes.

Figure 1 gives an overview of the unbundling process. Let us consider that an original software artifact Θ is a candidate to be unbundled. Θ contains different parts Θ = {a1, a2, a3, b1, b2, b3, c1, c2, c3} expressed in any unit (e.g., class, method, block, statement). These parts can be associated or intersect each other. Let us also consider that there exists subsets of parts in Θ that implement different high-level purposes, which is a motivation for unbundling Θ into different applications containing these different parts. In the example of Figure 1, the subsets of parts {a1, a2, a3} and {b1, b2, b3} are isolated into two new applications ∆1, ∆2 because they serve two distinct end user purpose. This isolation implies changing the structure of the part to make it decoupled or even adjusting its behaviour to work in a different context (a1 is reengineered into a 1 in Figure 1).

As also illustrated in Figure 1, it is possible that the new software artifacts share common parts among them and with the original one (c1, c2, c3). This is the case, for example, of parts responsible for the implementation of crosscutting concerns or of essential functionalities of any application derived from the original one, such as authentication, storage, cryptography modules, etc. It is also possible that the new software artifacts demand new parts (n1, n2, n3, n4, n5, n6) to implement new functionalities or to adapt the existing ones to the new context. In Figure 1, ∆1 can be the original software without the secondary purpose parts, as it is of the company's interest to continue their original software product in order to keep its associated market share. However, if the result of the Unbundling δ was only ∆1 without any other new applications, we would call it Reductive Unbundling. From this perspective, unbundling can help reducing the original application, removing nearly-unused/dead code without the need to make it usable in another application. The difference between actual dead code elimination [START_REF] Knoop | Partial dead code elimination[END_REF][START_REF] Xi | Dead code elimination through dependent types[END_REF] and reductive unbundling is that, before the unbundling, the eliminated code could still be executed at run-time in the original application, which does not fit the definition of dead code.

In summary, if we think of unbundling as a process, we can enumerate the following key activities that it encompasses:

• Identifying distinct end user purposes when using a software candidate to unbundling;

• Identifying the parts of the original software that relates to each identified purpose; • Extracting and reengineering the parts to be placed in the different new software artifacts; • Identifying and extracting common parts so they can be reused;

• Occasionally implementing new parts that will complement the existing ones in the new software artifact.

Challenges

In this section, we present seven key challenges of unbundling. In order to efficiently handle unbundling, it is essential to: (1) understand its new causes and objectives, which are different from standard modularization;

(2) handle an unplanned need for correcting the software structure, so it can better evolve and grow; (3) manage the software parts from a high-level perspective related to an end user purpose, which is a coarser-grained abstraction when compared to existing software engineering abstractions; (4) handle the division itself and the isolation of existing parts of software to work on different applications; and ( 5) unbundling efficiently by avoiding code replication.

New Causes and Objectives

The causes and objectives of unbundling differentiates from the ones of modularizing, or simply componentizing [START_REF] Washizaki | A technique for automatic component extraction from object-oriented programs by refactoring[END_REF], or aspectualizing [START_REF] Ajila | Aspectualization of code clonesan algorithmic approach[END_REF][START_REF] Mortensen | A test driven approach for aspectualizing legacy software using mock systems[END_REF][START_REF] Rebêlo | Modularizing crosscutting contracts with aspectjml[END_REF] software. Since its origins, modularization seeks to improve flexibility and comprehensibility of a given software [START_REF] Parnas | On the criteria to be used in decomposing systems into modules[END_REF]; these goals have been enlarged to also consider maintainability and testability [START_REF] Mortensen | Improving software maintainability through aspectualization[END_REF][START_REF] Munoz | Usage and testability of aop: an empirical study of aspectj[END_REF].

In unbundling, the goal is beyond increasing maintainability, understandability, flexibility or testability of an application; it aims at separating the software artifact and creating new smaller and self-contained ones, which will then be managed by different engineers, used by different clients and placed in different domains. Essentially, the ends become the means: all software good properties are now means to the ends of dividing the application, while before, modularizing and dividing the software artifact in modules were means to reach such good properties.

Therefore, unbundling is triggered by business goals, it creates new opportunities with separable markets [START_REF] Humphrey | Software unbundling: a personal perspective[END_REF]; it is a specialization of software businesses. From a marketing perspective, unbundling is challenging for the company because there is a risk to lose clients in the transition to the new software. On the other hand, if the transition succeeds, it can open a new market and attract more clients.

From a software engineering perspective, modularization is an established good practice and it is driven by developers or stakeholders that are related to the development process. Market competition is often what drives unbundling -maintainability or any other software engineering concepts are less important when faced to the needs of competing to a market share or simply aligning the software to a new trend of use. The way that developers thought about the software modularization can be very different from the division imposed by these high-level purposes. However, this does not prevent that software engineering best practices also become a trigger for unbundling, probably if the way the application is structured starts to interfere with the company's business.

Unplanned Corrective Evolution

Two essential characteristics present in software to be unbundled are: it is already mature, and the possibility of splitting it into several other software artifacts was not conceived in earlier stages of its development. Therefore, unlike, for example, Software Product Lines (SPL) [START_REF] Clements | Software Product Lines : Practices and Patterns[END_REF], unbundling is not a long-term strategy that is planned in advance by the company. The fact that the software artifact is already mature and no longer in a conceptual phase implies that unbundling is a corrective action that has to handle code with all its existing good or bad design and implementation choices. Another challenge is that the software is up and running, having numerous clients relying on it, therefore the evolution must not interfere with this relationship; this interference is very likely to happen if a bad release of the unbundled software is launched.

Coarse-Grained Modules

The criteria used when decomposing systems into modules have been studied for decades [START_REF] Parnas | On the criteria to be used in decomposing systems into modules[END_REF]; from sub-routines to features [START_REF] Kästner | Granularity in software product lines[END_REF], the unity of modularity is a primary concern in software design and implementation. These units are conceived by stakeholders directly involved with the code (e.g., developers, architects). As the motivation of unbundling is to separate distinct end user purposes residing in one single software artifact, it is necessary to group the set of software parts in the original software product that meets these purposes.

This coarser-grained modularization raises the challenge of having to categorize the existing fine units and associate them to greater goals, which may or may not be explicitly modeled in the software. These purposes are rather high level abstractions that are used to sell the software to a client. In the example of Foursquare and Swarm, the purpose of checking in places (i.e., the act of confirming your current location within a place, possibly sharing it with friends) was extracted from the original application (Foursquare) and placed in a new one (Swarm); checking in places gathers functional and non-functional finer features of the software like: geographic location, map visualization, social network sharing, etc.

In Figure 2, we illustrate, using the case of wordpress.com mobile client, that sometimes these different end-user purposes are evidently identifiable and are even reflected in the application's GUI. On the left-hand side of Figure 2, we see activated the tab of the mobile app that allows the user to manage her website, while on the right-hand side, there is the tab for reading news from other users' websites. From the end-user point of view, these are dissociated functionalities that could therefore be in two different applications. Wordpress has chosen to keep the news feed in the same application, in the opposite way of LinkedIn, which has launched an application (Pulse) that isolates this functionality. A look into the Wordpress mobile application code https://github.com/ wordpress-mobile/WordPress-Android reveals that there are 73 classes associated with the Reader tab, scattered through 8 different packages, evidencing the coarser nature of the end-user purpose.

Dividing and Isolating

Dividing software has always proved challenging; many different software engineering approaches have been proposed to decompose [START_REF] Agesen | Sifting out the gold: Delivering compact applications from an exploratory object-oriented programming environ-ment[END_REF][START_REF] Ossher | Using multidimensional separation of concerns to (re) shape evolving software[END_REF] code or slicing programs [START_REF] Weiser | Program slicing[END_REF].

As explained in the last subsection, unbundling has to handle coarser abstractions, but still actually managing finer ones. The problem is that this is not always intuitive, as classes, components, aspects or features are not perfect modular units, they share dependencies and interactions [START_REF] Apel | Feature-interaction detection based on feature-based specifications[END_REF]. Therefore, parts of the original software product may end up present in different purposes, or the functioning of a feature can be affected by the presence or absence of another, which makes the task of dividing and isolating purposes hard.

A great challenge is to make current componentization, aspectualization, feature extraction techniques [START_REF] Acher | Extraction and evolution of architectural variability models in pluginbased systems[END_REF][START_REF] Tip | Practical extraction techniques for java[END_REF] to work seamlessly with an additional level of abstraction: the purpose. These techniques work by analysing the software and evaluating its parts, clustering them in categories according to their structure and semantics as criteria. In unbundling, this division must be enriched with the end user purpose-we cannot assume that end user purposes correspond directly to aspects/concerns of software development-driving the division itself.

Considering the steps of the unbundling process, we can state that the essential challenges of it are comprehended in dividing and isolating parts of software: (1) identifying, (2) extracting and (3) reengineering existing features. Identifying is challenging because of the complicated matching between one single high-level and often subjective purpose to concrete fine-grained implementations. Extracting the features imposes the difficulty of not breaking the semantics of the code after removing parts of it, thoroughly analysing the dependencies from statement to component levels. And finally, reengineering the parts is challenging because it depends on the two past activities and because it demands knowledge on the new application environment in which the new parts are now placed.

Besides their own challenging nature, these activities can become more difficult according to how strong is the relationship between modules of the original software artifact that belong to different purposes (i.e., the coupling degree). On the other hand, unbundling may be facilitated if the modularity units belonging to a purpose present a high cohesion (i.e., their functions relate only to the given purpose).

Code Replication

As dividing and isolating legacy software parts is a hard task, one can be tempted to simply clone and own the original application, but only hiding the secondary purpose features from the end user. However, this leads to lots of replicated and useless code, decreasing the comprehensibility and maintainability of the software artifact, also demanding additional memory space in limited devices.

Figure 3 shows the evolution over time of Foursquare and Swarm mobile applications with respect to their sizes in MB. After the unbundling, the Foursquare user started to need two applications for doing what he/she used to do with only one application, and about 7 MB more of storage, not considering the additional RAM that Swarm consumes. Although these numbers do not clearly prove that there is code replication, it gives us initial insight that unbundling in an efficient way is challenging. This is also true in other unbundling cases and the problem can get more important as the number of unbundled applications increases.

Services and Infrastructure

Software is becoming increasingly pervasive; it spreads over different devices and can use several remote services running in the cloud. It is very likely that the end-user purpose to be unbundled is also scattered through these different locations. Therefore, unbundling an application may also require refactoring of currently consumed/provided services and infrastructures. One example is an application's related API. API's must reflect the functionalities provided by an application and therefore, if these functionalities change, the API should be adapted to reflect it. Whether engineers should also split the API into the same number of sub-API's than of sub-apps will depend on several aspects: how interesting (economically) is dividing also the API, if it was designed generically enough to be intuitive to use even after the apps division, if it is also becoming a monolith that needs unbundling, how difficult is it to migrate to a new version and if the old version must be deprecated.

Although unbundling is relatively recent, we can already notice these challenges in current cases. For instance, Dropbox is deprecating its old API to give room to a simpler new one: "As part of this effort to simplify our platform, we've decided to deprecate the Sync and Datastore APIs over the next 12 months." Dropbox team.

The Foursquare team decided to move forward smoother, deprecating only features from the old API that are not used anymore within the new apps. On another note, they chose to keep the same User Model for both apps, so services like authentication are shared by both applications, even though that a user of Swarm may not be a Foursquare user too, which can have implications to the API's users:

"We expect the majority of Swarm users to also have Foursquare installed, but implementing a fallback to the web view-based implementation of auth has always been recommended as well, especially to account now for Swarm users that may not have Foursquare installed." Foursquare team.

User Acceptance

Evolving software is challenging for many engineering reasons [START_REF] Mens | Challenges in software evolution[END_REF], and it can also be risky if we consider the end-user adoption [START_REF] Sanakulov | Consumer adoption of mobile technologies: a literature review[END_REF]. Many studies [START_REF] Chen | User acceptance of mobile technology: A campus-wide implementation of blackboard's mobileł learn application[END_REF][START_REF] Davis | Perceived usefulness, perceived ease of use, and user acceptance of information technology[END_REF][START_REF] Gallego | User acceptance model of open source software[END_REF][START_REF] Venkatesh | User acceptance of information technology: Toward a unified view[END_REF] have investigated how software is perceived by users (or even how user's personality influences this perception [START_REF] Zhou | The effects of personality traits on user acceptance of mobile commerce[END_REF]); essentially, these studies try to model and relate the user's intention to use an application, which goes beyond the applications' easiness of use, it also encompasses expectations about applications' privacy, social influence, cost, performance, etc.

Unbundling must take into account these issues, specially the ones related to user's resistance to changes. An unbundling candidate application has a user base that is already acquainted to the way that the app works, which functionalities it has, and how to use them or where to find them on the GUI. On the one hand, moving these features from one application to another can cause unsatisfied users, who can give negative feedback in the application's reviews/comments page in their different mobile application stores. Critics such as "I hear the argument why you split the features between this and Swarm, but you're bleeding a fan base" or "It used to be better when check-ins were all in a single app" are numerous at the Foursquare reviews; it happens similarly with the Messenger application that was unbundled from Facebook: "I never liked the fact that we are forced to download this 2nd app just to chat".

On the other hand, an unbundled app can also please more flexible users if it clearly brings new features or eases user experience. In recent interview to a global media company, Stan Chudnovsky-Messenger's head of product-claimed the importance of having unbundled Messenger from Facebook: "If Messenger were still buried within the main app, video calling would be buried within that, and it just wouldn't ever find the light of day". Indeed, many users have written positive feedback in Messenger's reviews page, complimenting the new features brought by the unbundled app, such as "I just love it it's now updated and added video calls , hd video calls, voice call ,voice chat and much more things available in it".

Hence, companies need to comprehend and assess the risks involved in splitting their applications from the point of view of the user. Scientifically identifying and studying the correlations between unbundling and the user adoption can be very challenging, as it involves many dependent variables that are hard to be isolated in an empirical study.

Perspectives

In the following, we present the perspectives for analysing and leveraging unbundling, describing key topics that can be the starting point for a research roadmap.

Unbundling can take advantage from existing modularization approaches. Although we still need experiences on whether these techniques actually facilitate or not unbundling, our intuition is that code with cohesive and decoupled coarse-grained modularity units is easier to be unbundled. Therefore, a first perspective is that refactoring approaches for modularization of legacy code should be adapted to cope with the new challenges of unbundling, such as maximizing cohesion, minimizing coupling and mapping modularity units to usage purposes in order to facilitate the concrete division of the software.

Ideally, unbundling should be as much automated as possible. As a perspective, we envision automated techniques to analyse and execute unbundling. For example, detecting patterns of application usage (as in [START_REF] Böhmer | Falling asleep with angry birds, facebook and kindle: a large scale study on mobile application usage[END_REF][START_REF] Falaki | Diversity in smartphone usage[END_REF]) in order to classify features that are frequently used or not, features that are always used by a profile of user and others by other profiles and so on. These patterns would serve to make explicit the different purposes that the user has when manipulating the software product, better motivating and justifying a division. As for the automation of the division itself, we envision future research on techniques to extract and isolating features in separated applications [START_REF] Hariri | Supporting domain analysis through mining and recommending features from online product listings[END_REF][START_REF] Kästner | Variability mining: Consistent semiautomatic detection of product-line features[END_REF][START_REF] Nadi | Where do configuration constraints stem from? an extraction approach and an empirical study[END_REF], going beyond the simple synthesis of feature models [START_REF] Bcan | Breathing ontological knowledge into feature model synthesis: an empirical study[END_REF][START_REF] Davril | Feature model extraction from large collections of informal product descriptions[END_REF][START_REF] She | Efficient synthesis of feature models[END_REF][START_REF] Weston | A framework for constructing semantically composable feature models from natural language requirements[END_REF]. Similarly there is a large amount of approaches to locate concerns, to mine aspects or to automate the refactoring of applications in a more modular way [START_REF] Adams | Can we refactor conditional compilation into aspects?[END_REF][START_REF] Eaddy | Cerberus: Tracing requirements to source code using information retrieval, dynamic analysis, and program analysis[END_REF][START_REF] Figueiredo | Evolving software product lines with aspects: An empirical study on design stability[END_REF][START_REF] Marcus | An information retrieval approach to concept location in source code[END_REF][START_REF] Savage | Flat3: Feature location and textual tracing tool[END_REF].

Another perspective is to systematize the unbundling process. Even though unbundling is not a desired or planned event in software lifetime, it can be exploited as a first step to move to-wards a product line paradigm or a software ecosystem [START_REF] Costa | From applications to a software ecosystem platform: an exploratory study[END_REF][START_REF] Messerschmitt | Software ecosystem: understanding an indispensable technology and industry[END_REF]. For this, the original application can be seen as a source of reusable assets that, if efficiently extracted and isolated, could be the basis to construct several different new applications. This systematization is justified when the company desires, as long-term vision, to carry on building a family of applications for a specific domain, sharing commonalities and managing variabilities.

Unbundling can happen in other kinds of software. Particularly, there is the case of big and complex APIs and frameworks, which provide several features for programmers in a specific domain; they sometimes provide much more than the programmer needs or their use can vary according to different purposes. Therefore we can envision unbundling these artifacts to better suit the needs of different end user purposes, reducing the overload of using a given framework or API. Besides numerous artefacts of a project can be considered as part of the unbundling process. Source code, but not only: documentation, bug reports, or mailing lists can also be used for identifying an unbundling criterion. The unbundling can also be applied over multiple artefacts (e.g., source code together with the documentation).

Conclusion

We presented in this article the novel phenomenon of software unbundling, showing evidences in the domain of mobile applications. In order to better understand it, we explained the process of unbundling, introducing how an original software artifact is transformed into two or more new ones. We then discussed the problems and challenges of unbundling, also relating it to standard planned modularization. Finally, we discussed perspectives on the support of this new phenomenon. Our main conclusion is that unbundling needs special support and the existing modularization techniques can help in this task; because of its unpredictability, its high-level abstractions and its need for concrete isolation of software parts, unbundling raises new challenges that merit to be further investigated, understood and supported.

As long-term future work, we consider the points explained in the perspectives section: (1) using separation of concerns techniques for unbundling and analysing quantitatively and qualitatively how they perform, (2) explore automated techniques for unbundling, (3) develop systematic methods and processes, (4) leverage unbundling in different kinds of software-intensive systems. In short-term, we want to proceed on analysing unbundling cases deeper, studying the division and distribution of features from the original software products into the new ones.

2 Figure 1 .

 21 Figure 1. Unbundling.

Figure 2 .

 2 Figure 2. Wordpress mobile client.

Acknowledgments

We would like to thank the participants of MODULARITY'15 for the feedbacks, suggestions, and discussions. The research leading to these results has received funding from the European Commission under the Seventh (FP7 -2007-2013) Framework Programme for Research and Technological Development (HEADS project).


Lucas Chesnel
email: lucas.chesnel@inria.fr

Xavier Claeys
email: claeys@ann.jussieu.fr

Sergei A Nazarov
email: srgnazarov@yahoo.co.uk

Small obstacle asymptotics for a 2D semi-linear convex problem

Keywords: Small obstacle, semi-linear convex problem, asymptotic analysis, singular perturbation

We study a 2D semi-linear equation in a domain with a small Dirichlet obstacle of size δ. Using the method of matched asymptotic expansions, we compute an asymptotic expansion of the solution as δ tends to zero. Its relevance is justified by proving a rigorous error estimate. Then we construct an approximate model, based on an equation set in the limit domain without the small obstacle, which provides a good approximation of the far field of the solution of the original problem. The interest of this approximate model lies in the fact that it leads to a variational formulation which is very simple to discretize. We present numerical experiments to illustrate the analysis.

Introduction

Problems involving structures which are small compared to a given characteristic size arise in many applications. For example, they appear in electrical engineering when one wishes to model the propagation of electromagnetic waves in presence of thin wires [START_REF] Holland | Finite-difference analysis of EMP coupling to thin struts and wires[END_REF][START_REF] Bérenger | A multiwire formalism for the FDTD method[END_REF][START_REF] Railton | The treatment of thin wires in the FDTD method using a weighted residuals approach[END_REF] or in geophysics when one is interested in the study of flow transport around wells [START_REF] Chen | Numerical homogenization of well singularities in the flow transport through heterogeneous porous media[END_REF][START_REF] Peaceman | Interpretation of well-block pressures in numerical reservoir simulations[END_REF]. The modelling of such physical phenomena leads to study partial differential equations (PDEs) depending on a small parameter δ through the geometry. An interesting question it to compute an asymptotic expansion of the solution of the PDE with respect to δ. Usually, this expansion is made of functions defined on geometries which are independent from δ multiplied by some gauge functions having an explicit dependence with respect to δ and to the features of the small structure.

There are many reasons for asymptotic calculus. One of them, that we have in mind, concerns numerical analysis and more precisely the use of techniques, like classical Galerkin methods, based on a mesh of the physical domain. In practice, it can be rather complicated to create a mesh adapted to the small obstacle. Moreover, the solving of the resulting algebraic system may be very expensive due to the high numbers of degrees of freedom. Of course now, computational power has much improved and strategies based on local refinement of the mesh near the obstacle where the solution is expected to exhibit rapid variations, offers a reasonable solution in many settings. However, these methods still require an extra effort. In particular, when there are several obstacles, constructing well-suited meshes can be tricky. Alternatively, since the terms of the asymptotic expansion are defined in geometries which are independent of δ, one can compute them easily to obtain a good approximation of the solution in the domain with the small obstacle.

Literature concerning the development of techniques of asymptotic analysis for linear elliptic PDEs is rich. Among others, let us cite the classical monographs [START_REF] Van Dyke | Perturbation methods in fluid mechanics[END_REF][START_REF] Kevorkian | Perturbation methods in applied mathematics[END_REF][START_REF] Il'in | Matching of asymptotic expansions of solutions of boundary value problems[END_REF][START_REF] Maz'ya | Asymptotic theory of elliptic boundary value problems in singularly perturbed domains[END_REF]. For non linear PDEs, it seems that there are less references, especially if one looks for error estimate. In this article, we consider a semi-linear convex problem (see [START_REF] Abraham | Manifolds, tensor analysis, and applications[END_REF]) in presence of a (small) Dirichlet obstacle of size δ. This problem can be seen as a non linear perturbation of the Dirichlet-Laplacian for which the asymptotic expansion of the solution with respect to δ is well-known (see, e.g., [START_REF] Il'in | Matching of asymptotic expansions of solutions of boundary value problems[END_REF][START_REF] Maz'ya | Asymptotic expansions of eigenvalues of boundary value problems for the Laplace operator in domains with small openings[END_REF][START_REF] Maz'ya | Asymptotic theory of elliptic boundary value problems in singularly perturbed domains[END_REF][START_REF] Campbell | Une justification de la méthode de raccordement des développements asymptotiques appliquée à un problème de plaque en flexion. Estimation de la matrice d'impédance[END_REF][START_REF] Nazarov | Asymptotic conditions at a point, selfadjoint extensions of operators, and the method of matched asymptotic expansions[END_REF][START_REF] Nazarov | Asymptotic analysis of shape functionals[END_REF][START_REF] Nazarov | Self-adjoint extensions for the Neumann Laplacian and applications[END_REF][START_REF] Cassier | Multiple scattering of acoustic waves by small sound-soft obstacles in two dimensions: mathematical justification of the Foldy-Lax model[END_REF]). We work in a 2D setting, the reason being that, in this case, it is known for the Dirichlet-Laplacian that neglecting the small obstacle, that is considering the solution of the problem without the obstacle, is a very crude approximation of order | ln δ| -1 . Note that | ln δ| -1 ≈ 0.0434 for δ = 10 -10 . Such an estimate also holds for our problem (see Section 5). Therefore, it is essential to compute a corrective term. The problem we consider has been studied in [START_REF] Amstutz | Topological sensitivity analysis for some nonlinear pde systems[END_REF] in the context of topological sensitivity analysis. In [START_REF] Amstutz | Topological sensitivity analysis for some nonlinear pde systems[END_REF], the author provides an error estimate in o(| ln δ|). The first outcome of the present work is an improvement of this result. More precisely, we will show an estimate in o(δ 1-ε ) for all ε > 0.

Let us mention that in [START_REF] Iguernane | Topological derivatives for semilinear elliptic equations[END_REF] (see also the related papers [START_REF] Scheid | A numerical method for shape and topology optimization for semilinear elliptic equation[END_REF][START_REF] Drogoul | The topological gradient method for semi-linear problems and application to edge detection and noise removal[END_REF]), the authors study the same equation as ours, but in 3D for a Dirichlet obstacle and in 2D for a Neumann obstacle. We emphasize that the asymptotic expansion is completely different for the 2D Dirichlet obstacle (with ln δ appearing in the gauge functions). Moreover, in [START_REF] Iguernane | Topological derivatives for semilinear elliptic equations[END_REF], the compound method is used and error estimates are proved in Hölder spaces. In the present article, we work with different tools, employing the method of matched asymptotic expansions described for example in [START_REF] Van Dyke | Perturbation methods in fluid mechanics[END_REF][START_REF] Il'in | Matching of asymptotic expansions of solutions of boundary value problems[END_REF][START_REF] Maz'ya | Asymptotic theory of elliptic boundary value problems in singularly perturbed domains[END_REF] and showing error estimates in Sobolev spaces. In literature, it seems that people prefer to use the compound method to derive asymptotic expansions for non linear PDEs. The second objective of the paper is to investigate the method of matched asymptotic expansions for non linear PDEs. For this technique, the general scheme is the following. First we compute an expansion of the solution with respect to δ far from the obstacle. Then we construct an expansion closed to the obstacle where we expect a rapid variation of the field. Finally, we match the two expansions in an intermediate region to define completely the unknown terms of the far and near field expansions. The main novelty appearing in the study of the non linear PDE (1) occurs during the matching step (see §3.3) which leads us to solve a non linear (and non explicit) equation to define the gauge functions of the expansion.

In the future, it would be interesting to consider other types of non linear PDEs that could be more pertinent for applications. Note that in [START_REF] Bonnafé | Topological asymptotic expansions for a class of quasilinear elliptic equations. Estimates and asymptotic expansions of condenser p-capacities[END_REF][START_REF] Amstutz | Topological asymptotic analysis for a class of quasilinear elliptic equations[END_REF], stronger non linearities are studied in the field of topological sensitivity analysis. On the other hand, here we focus only on the first two terms of the asymptotics. One possible direction to continue this work is to compute higher order terms.

The outline is the following. In the next section, we present the geometry and the problem we wish to consider. We also recall how to prove that it admits a unique solution u δ in a classical framework, where δ denotes the size of the Dirichlet obstacle. Section 3 is dedicated to the construction of a formal asymptotic expansion of u δ with respect to δ. We use the method of matched asymptotic expansions as described above. In Proposition 3.1, we state an error estimate showing that this expansion yields a good approximation of u δ . In Section 4, we construct an approximate model which admits a solution corresponding to the first two terms of the far field expansion of u δ (note that for many applications, only the field far from the obstacle matters). From a practical point of view, it is much more simpler to discretize this approximate model than to compute separately each of the terms appearing in the expansion of u δ . The derivation of this problem is the third main outcome of the paper. In Section 5, we provide numerical experiments, based on finite element methods, illustrating the analysis. Finally, in Section 6, we present the details of the proof of the error estimate stated in Proposition 3.1.

Problem under consideration

Consider ω, Ω ⊂ R 2 two bounded Lipschitz domains such that ω ⊂ Ω and O ∈ ω. For δ ∈ (0; 1], set ω δ := {x ∈ R 2 , x/δ ∈ ω} (the small obstacle) and Ω δ := Ω \ ω δ . Let f be a given source term in L 2 (Ω) := {g : Ω → R | ´Ω |g(x)| 2 dx < +∞}. Note that all through this article, we shall systematically work with functions that are real valued. For some fixed integer m ∈ N, we are interested in the following semi-linear problem with Dirichlet boundary condition

Find u δ ∈ H 1 0 (Ω δ ) such that -∆u δ + (u δ ) 2m+1 = f in Ω δ .
(

In ( 1), H 1 0 (Ω δ ) denotes the subspace of the elements of the Sobolev space H 1 (Ω δ ) vanishing on ∂Ω δ . First, we remind the reader how to prove that (1) admits a unique solution. For any Lipschitz domain O ⊂ R 2 , the Rellich-Kondrachov embedding theorem ensures that H 1 (O) ⊂ L p (O) for all p ≥ 1. As a consequence, the bilinear form (u, v) → ´Ωδ (∇u

• ∇v + (u) 2m uv) dx is well-defined and continuous in H 1 0 (Ω δ ) × H 1 0 (Ω δ ). Introduce the continuous operator A δ : H 1 0 (Ω δ ) → H -1 (Ω δ ) := H 1 0 (Ω δ ) * such that A δ (u), v = ˆΩδ ∇u • ∇v + (u) 2m uv dx, ∀u, v ∈ H 1 0 (Ω δ ). (2)
Classicaly, one finds that u δ ∈ H 1 0 (Ω δ ) verifies (1) if and only if it is a solution to the problem

Find u δ ∈ H 1 0 (Ω δ ) such that A δ (u δ ), v = ˆΩδ f v dx, ∀v ∈ H 1 0 (Ω δ ). (3)
Simple differential calculus shows that A δ (u) -f is the Fréchet differential evaluated at u of the cost functional J δ : H 1 0 (Ω δ ) → R defined by

J δ (ϕ) = 1 2 ∇ϕ 2 L 2 (Ω δ ) + 1 2m + 2 ϕ 2m+2 L 2m+2 (Ω δ ) - ˆΩδ f ϕ dx, ∀ϕ ∈ H 1 0 (Ω δ ).
One can check that u δ is a minimum of J δ if and only it satisfies Problem (3). Since J δ is continuous, strictly convex and coercive, it admits a unique minimum (see e.g. [START_REF] Kavian | Introduction à la théorie des points critiques[END_REF]Chap. 3]). Therefore (3) (and so (1)) has a unique solution. From the convexity of the map t → t 2m+2 on R, we obtain (s 2m+1 -t 2m+1 )(s -t) ≥ 0 for all s, t ∈ R. This implies A δ (u)

-A δ (v), u -v ≥ u -v 2 H 1 0 (Ω δ ) for all u, v ∈ H 1 0 (Ω δ
) and leads to the stability estimate

u -v H 1 0 (Ω δ ) ≤ A δ (u) -A δ (v) H -1 (Ω δ ) , ∀u, v ∈ H 1 0 (Ω δ ). ( 4
)
Here we use the notation

• H 1 0 (Ω δ ) := ∇ • L 2 (Ω δ ) 2 .
To sum up, for all δ ∈ (0; 1], the operator

A δ : H 1 0 (Ω δ ) → H -1 (Ω δ
) is a uniformly continuous bijection, and its inverse A -1 δ : H 1 0 (Ω δ ) → H -1 (Ω δ ) is also uniformly continuous. The same conclusion holds for the operator A 0 :

H 1 0 (Ω) → H -1 (Ω) defined by A 0 (u), v = ˆΩ ∇u • ∇v + (u) 2m uv dx, ∀u, v ∈ H 1 0 (Ω). (5)
Finally, for all δ ∈ [0; 1], the Rellich-Kondrachov embedding theorem guarantees that the solution of (1) verifies (u δ ) 2m+1 ∈ L 2 (Ω δ ). We shall assume that the boundary ∂Ω δ is regular enough to guarantee u δ ∈ C 0 (Ω δ ). Note that this is true for example if ∂Ω δ is smooth or if ∂Ω δ is polygonal (see e.g. [START_REF] Grisvard | Elliptic Problems in Nonsmooth Domains[END_REF][START_REF] Nazarov | Elliptic problems in domains with piecewise smooth boundaries[END_REF]).

In the next section, we construct an asymptotic expansion of the solution u δ to Problem (1) as δ → 0.

Asymptotic expansion of the solution

We will look for an asymptotic expansion of u δ , the unique solution to [START_REF] Abraham | Manifolds, tensor analysis, and applications[END_REF], which decomposes into two components: a far field expansion which is a good approximation of u δ far from ω δ and a near field expansion which approximates correctly u δ in a close neighbourhood of ω δ .

Far field expansion

Far from ω δ , we search for an approximation of u δ under the form v δ := u 0 + λ(δ)u 1, δ where the functions u 0 , u 1, δ have to be determined and where the gauge function λ(δ) (independent of x) is supposed to go to zero as δ → 0. Formally plugging this expansion into Equation (1) and retaining the first order terms as δ → 0, we find that u 0 must be a solution to the problem

Find u 0 ∈ H 1 0 (Ω) such that -∆u 0 + (u 0 ) 2m+1 = f in Ω. ( 6
)
According to the analysis of the preceding paragraph, we know that this problem admits a unique solution (the operator A 0 : H1 0 (Ω) → H -1 (Ω) introduced in ( 5) is a continuous bijection). Therefore, u 0 can be defined as u 0 := A -1 0 (f ). In other words and quite naturally, we postulate that at first order, far from the origin, u δ does not see the small obstacle.

To derive the correction term u 1, δ we impose that

-∆(u 0 + λ(δ)u 1, δ ) + (u 0 + λ(δ)u 1, δ ) 2m+1 = f in Ω \ {O} u 0 + λ(δ)u 1, δ = 0 on ∂Ω. ( 7
)
Since A 0 : H 1 0 (Ω) → H -1 (Ω) is a bijective map, we have to look for u 1, δ in a larger space than H 1 0 (Ω) (otherwise, we would conclude u 1, δ = 0 which is not interesting). Denote G the Green's function for the Laplace operator with homogeneous Dirichlet boundary condition such that -∆G = δ O in Ω, G = 0 on ∂Ω (δ O is the Dirac distribution centered at O). By analogy with the more classical asymptotics for the 2D Dirichlet Laplace problem with a small obstacle (see for example [START_REF] Maz'ya | Asymptotic theory of elliptic boundary value problems in singularly perturbed domains[END_REF]Chap. 2]), we impose the condition u 1, δ -G ∈ H 1 (Ω) (as a consequence, u 1, δ admits a logarithmic singularity at the origin 1 ). Expanding [START_REF] Cassier | Multiple scattering of acoustic waves by small sound-soft obstacles in two dimensions: mathematical justification of the Foldy-Lax model[END_REF], we find that u 1, δ must be solution to the problem Find u 1, δ such that u 1, δ -G ∈ H 1 (Ω) and

-∆u 1, δ + (2m + 1)(u 0 ) 2m u 1, δ +λ(δ) 2m+1 k=2 2m + 1 k (u 0 ) 2m+1-k λ(δ) k-2 (u 1, δ ) k = 0 in Ω \ {O} u 1, δ = 0 on ∂Ω. ( 8
)
Let us prove that Problem (8) admits a unique solution for λ(δ) ∈ R such that |λ(δ)| is small enough. Considering the change of unknown

w 1, δ = u 1, δ -G, Problem (8) can be recast into Find w 1, δ ∈ H 1 0 (Ω) such that Φ(λ(δ), w 1, δ ) = 0, (9)
where Φ(λ, w) := -∆w + (2m + 1)(u 0 ) 2m (w + G)

where Φ(λ, w)

:= + λ 2m+1 k=2 2m + 1 k (u 0 ) 2m+1-k λ k-2 (w + G) k .
The Green's function G admits the expansion

G(x) = 1 2π ln 1 |x| + γ G + G, (10)
where γ G is a constant and where G ∈ H 1 (Ω) ∩ C ∞ (Ω) vanishes at the origin. Thus, for all k ≥ 1, we have (G) k ∈ L 2 (Ω). We infer that for all w ∈ H 1 0 (Ω), k ≥ 1, the function (w + G) k belongs to L 2 (Ω). In addition, according to the assumptions made on the geometry (see the end of Section 2), there holds u 0 ∈ C 0 (Ω). Therefore, for all λ ∈ R, w ∈ H 1 0 (Ω), we deduce that Φ(λ, w) is an element of H -1 (Ω). And more precisely, one can show that Φ : R × H

1 0 (Ω) → H -1 (Ω) is a map of class C 1 . For λ = 0, we have Φ(0, w) = -∆w + (2m + 1)(u 0 ) 2m w + (2m + 1)(u 0 ) 2m G.
Since (u 0 ) 2m ≥ 0, the Lax-Milgram lemma ensures that there is a unique w 1, 0 ∈ H 1 0 (Ω) such that Φ(0, w 1, 0 ) = 0. On the other hand, if we denote ∂ w Φ(0, w 1, 0 ) the differential of Φ with respect to its second argument at the point (0, w 1, 0 ), for all ϕ ∈ H 1 0 (Ω), we find

∂ w Φ(0, w 1, 0 )ϕ = -∆ϕ + (2m + 1)(u 0 ) 2m ϕ. Again, from Lax-Milgram lemma, we infer that ∂ w Φ(0, w 1, 0 ) : H 1 0 (Ω) → H -1 (Ω) is an isomorphism.
We can apply the implicit function theorem, see e.g. [1, Thm. 2.5.7], which yields the existence of λ > 0 and a continuous function

λ → w[λ] ∈ H 1 0 (Ω) such that Φ(λ, w[λ])
= 0 for all λ ∈ (-λ ; λ ). Then, assuming that λ(δ) tends to zero as δ goes to zero so that λ(δ) ∈ (-λ ; λ ), we set w 1, δ := w[λ(δ)] and

u 1, δ = w 1, δ + G. (11)
The function u 1, δ is a solution to Problem [START_REF] Chen | Numerical homogenization of well singularities in the flow transport through heterogeneous porous media[END_REF]. Let us describe the behaviour of u 1, δ (x) as x → 0.

To proceed, we introduce adapted weighted spaces. We define the Kondratiev space V k β (Ω) [START_REF] Kondratiev | Boundary-value problems for elliptic equations in domains with conical or angular points[END_REF] as

the closure of C ∞ (Ω \ {O}) = {ϕ ∈ C ∞ (Ω) | ϕ = 0 in a neighbourhood of O} with respect to the weighted norm ϕ V k β (Ω) := |α|≤k ˆΩ r 2(β+|α|-k) |∂ α x ϕ| 2 dx 1/2 .
From Equation ( 9), we see that ∆w 1, δ ∈ L 2 (Ω). Kondratiev's theory then shows that there exists

a constant c λ(δ) ∈ R such that w 1, δ -c λ(δ) ∈ V 1 -1+ε
(Ω) for all ε > 0, see for example [START_REF] Nazarov | Elliptic problems in domains with piecewise smooth boundaries[END_REF]Thm.5.6]. Therefore from [START_REF] Grisvard | Elliptic Problems in Nonsmooth Domains[END_REF], [START_REF] Drogoul | The topological gradient method for semi-linear problems and application to edge detection and noise removal[END_REF], we deduce that we have the decomposition

u 1, δ (x) = 1 2π ln 1 |x| + γ f, λ(δ) + ũ1, δ (x), with γ f, λ(δ) ∈ R, ũ1, δ ∈ V 1 -1+ε (Ω). (12)
Moreover, Kondratiev's theory [START_REF] Nazarov | Elliptic problems in domains with piecewise smooth boundaries[END_REF]Thm.5.6] ensures that c λ(δ) depends continuously on ∆w 1, δ ∈ L 2 (Ω). Since

• ∆w 1, δ (for the L 2 -norm) depends continuously on λ(δ) and w 1, δ (for the H 1 -norm);

• w 1, δ (for the H 1 -norm) depends continuously on λ(δ);

we conclude that λ(δ) → γ f, λ(δ) is continuous. Remark 3.1.
We have not yet defined the gauge function λ(δ). However, we have assumed that δ → λ(δ) tends to zero as δ → 0. We will see that the expression of λ(δ) obtained as an outcome of the matching procedure satisfies this requirement (see [START_REF] Nazarov | Asymptotic analysis of shape functionals[END_REF]).

Finally, for the far field approximation v δ = u 0 + λ(δ)u 1, δ , we obtain the decomposition

v δ = u 0 (0) + λ(δ) 1 2π ln 1 |x| + γ f, λ(δ) + ṽδ , with ṽδ ∈ V 1 -1+ε (Ω), ∀ε > 0. ( 13
)
Therefore, as |x| → 0, there holds

v δ (x) = u 0 (0) + λ(δ) 1 2π ln 1 |x| + γ f, λ(δ) + . . . , (14)
where the dots stand for terms irrelevant for the formal procedure.

Near field expansion

In the region close to the small obstacle, because we anticipate a boundary layer phenomenon, we consider another ansatz. We introduce the change of variable ξ := x/δ. As δ → 0, the

region {ξ = x/δ ∈ R 2 | x ∈ Ω δ } converts into R 2 \ ω. Define the function ξ → U δ (ξ) such that U δ (ξ) = u δ (δξ). Writing Problem (1) in the ξ-coordinates yields -∆ ξ U δ + δ 2 (U δ ) 2m U δ = δ 2 f (δξ). ( 15
)
We look for an approximation of U δ under the form µ(δ)U 1 where the function U 1 has to be determined and where the gauge function µ(δ) (independent of ξ) tends to zero as δ → 0. Plugging this expansion in [START_REF] Kavian | Introduction à la théorie des points critiques[END_REF] and letting δ tends to zero yields

-∆U 1 = 0 in R 2 \ ω, U 1 = 0 on ∂ω.
Assuming that U 1 remains bounded as |ξ| → +∞ would lead to U 1 ≡ 0. This is not reasonable since µ(δ)U 1 is assumed to be the predominant (non zero) behaviour of U δ as δ → 0. Hence we allow U 1 to admit a logarithmic singularity at infinity. Multiplying the gauge function µ(δ) by a multiplicative factor if necessary, this finally leads us to consider the following problem

Find U 1 such that U 1 (ξ) + (2π) -1 ln |ξ| ∈ W(R 2 \ ω)
and

-∆U 1 = 0 in R 2 \ ω U 1 = 0 on ∂ω. ( 16
)
In ( 16), W(R 2 \ ω) is defined as the completion of the set of C ∞ -functions with bounded support for the norm

U 2 W(R 2 \ω) := ˆR2 \ω |∇U | 2 + |U (ξ)| 2 1 + |ξ| 2 (ln |ξ|) 2 dξ.
This space contains functions which are locally in H 1 and bounded at infinity. Applying Kondratiev's analysis allows to prove that the linear problem ( 16) admits a unique solution U 1 . Moreover, there exists a constant γ n that only depends on ω such that there holds the decomposition

U 1 (ξ) = 1 2π ln 1 |ξ| + γ n + Ũ1 (ξ), with Ũ1 ∈ W 1 1-ε (R 2 \ ω), ∀ε > 0. ( 17
)
The coefficient γ n is well-known and, commonly in the literature, exp(2πγ n ) is called the logarithmic capacity or the external conformal radius of the domain ω [START_REF] Landkof | Foundations of modern potential theory[END_REF][START_REF] Pólya | Isoperimetric Inequalities in Mathematical Physics[END_REF]. Here, for k

∈ N := {0, 1, . . . }, β ∈ R, the space W k β (R 2 \ ω) is defined as the completion of the set C ∞ 0 (R 2 \ ω) for the norm ϕ W k β (R 2 \ω) := |α|≤k ˆR2 \ω |ξ| 2(β+|α|-k) |∂ α ξ ϕ| 2 dξ 1/2 .
Finally, the near field approximation V δ defined by

V δ (x) = µ(δ)U 1 (x/δ) satisfies, as |x/δ| → +∞, V δ (x) = µ(δ) 1 2π ln δ |x| + γ n + . . . , ( 18
)
where the dots stand for terms irrelevant for the formal procedure.

Matching principle

To determine the gauge functions λ(δ), µ(δ) coming into play respectively in the far field and near field expansions, we apply the matching principle [START_REF] Van Dyke | Perturbation methods in fluid mechanics[END_REF][START_REF] Il'in | Matching of asymptotic expansions of solutions of boundary value problems[END_REF]. In the present case, it consists in choosing the gauge functions so that the expansion of v δ (x) for δ → 0, x → 0 coincides with the expansion of V δ (x) for δ → 0, |x/δ| → +∞. Using expressions ( 14), [START_REF] Landkof | Foundations of modern potential theory[END_REF] and matching only the first two terms of these expansions yields

u 0 (0) + λ(δ) 1 2π ln 1 |x| + γ f, λ(δ) = µ(δ) 1 2π ln δ |x| + γ n . ( 19
)
This leads to impose µ(δ) = λ(δ). On the other hand, we find that λ(δ) must satisfy the following fixed point equation

λ(δ) = ϕ δ ( λ(δ) ) where ϕ δ ( λ ) := 2π u 0 (0) ln δ + 2π(γ n -γ f, λ ) . ( 20
)
Let us emphasize that these types of non linear equations to define the gauge functions do not appear in the study of linear PDEs. Consider some given λ > 0. For λ, λ ∈ [-λ ; λ ], we find

|ϕ δ ( λ ) -ϕ δ ( λ )| = (2π) 2 |u(0)| |γ f, λ -γ f, λ | (ln δ + 2π(γ n -γ f, λ ))(ln δ + 2π(γ n -γ f, λ )) . ( 21
)
Since the map λ → γ f, λ is continuous on the compact set [-λ ; λ ], there exists a constant 20), ( 21), we deduce that for δ small enough, we have

C > 0 independent of δ such that |γ f, λ -γ f, λ | ≤ C |λ -λ | for all λ, λ ∈ [-λ ; λ ]. From (
sup λ∈[-λ * ;+λ * ] |ϕ δ ( λ )| ≤ C | ln δ| and |ϕ δ ( λ ) -ϕ δ ( λ )| ≤ C (ln δ) 2 |λ -λ |, ( 22
)
where C is independent of δ. The first estimate proves that there is some δ 0 > 0 such that for all δ ∈ (0; δ 0 ], we have

ϕ δ ([-λ ; λ ]) ⊂ [-λ ; λ ]. The second one shows that λ → ϕ δ ( λ ) is a contraction mapping of [-λ ; λ ].
According to the Banach-fixed point theorem, we deduce that for all δ ∈ (0; δ 0 ], the equation λ = ϕ δ (λ) admits a unique solution in [-λ ; λ ]. We denote λ(δ) this solution. The relation λ(δ) = ϕ δ (λ(δ)) and the first estimate of ( 22) guarantee the existence of some

C > 0 independent of δ ∈ (0; δ 0 ] such that |λ(δ)| ≤ C /| ln δ|.
Using the continuous dependence of γ f, λ with respect to λ, we infer that γ f, λ(δ) remains bounded for δ ∈ (0; δ 0 ]. From [START_REF] Maz'ya | Asymptotic theory of elliptic boundary value problems in singularly perturbed domains[END_REF], we deduce that, as δ → 0,

λ(δ) = 2πu 0 (0) ln δ + O 1 | ln δ| 2 . ( 23
)
With this construction, note that λ(δ) indeed tends to zero as δ goes to zero. In order to simplify notation in the following, we introduce the function m δ such that

m δ (x) = u 0 (0) + λ(δ) 1 2π ln 1 |x| + γ f, λ(δ) = λ(δ) 1 2π ln δ |x| + γ n . ( 24
)

Error estimate

Now, we construct a global approximation ûδ of u δ as an interpolation between the far field and the near field contribution. To proceed and to prove later an error estimate, we use the trick of overlapping cut-off functions [20, Chap. 2], [START_REF] Nazarov | Asymptotic conditions at a point, selfadjoint extensions of operators, and the method of matched asymptotic expansions[END_REF]. Let R 1 denote a domain such that ω ⊂ R 1 and R 1 ⊂ Ω. We introduce χ ∈ C ∞ 0 (Ω, [0; 1]) a cut-off function such that χ = 1 on R 1 . We set ψ := 1-χ and for t > 0, we define the functions χ t , ψ t such that χ t (x) = χ(x/t), ψ t (x) = ψ(x/t).

In Ω, define ûδ such that

ûδ (x) = ψ δ (x) v δ (x) + χ(x) V δ (x) -ψ δ (x)χ(x) m δ (x) (25)
where

v δ (x) = u 0 (x) + λ(δ) u 1, δ (x) V δ (x) = λ(δ) U 1 (x/δ). ( 26
)
With the above definition for ψ δ , χ, observe that there holds

ψ δ + χ -ψ δ χ = ψ δ + χ -ψ δ (1 -ψ) = χ + ψ δ ψ = χ + ψ = 1.
With the matching procedure we have enforced that the predominant behaviours of v δ , V δ coincide in the matching region. Remark that m δ is nothing else than the main part of v δ , V δ in this region.

The following proposition guarantees that ûδ yields a good approximation of u δ , the solution of Problem (1), as δ goes to zero. Its proof, which is a bit long, is postponed to Section 6.

Proposition 3.1. Let f be a source term of L 2 (Ω). For all ε > 0, there exists δ 0 > 0 such that the function ûδ defined by [START_REF] Peaceman | Interpretation of well-block pressures in numerical reservoir simulations[END_REF] satisfies

u δ -ûδ H 1 0 (Ω δ ) ≤ C δ 1-ε , ∀δ ∈ (0; δ 0 ]. ( 27
)
In this estimate, the constant C > 0 depends on ε, f L 2 (Ω) but not on δ.

An approximate model for the far field expansion

In the previous section, we constructed and justified by means of an error estimate an asymptotic expansion for the solution u δ to the original Problem (1). For many applications, only an approximation of the far field of u δ is needed. Working as in the proof of Proposition 3.1 (Section 6), we can show that v δ = u 0 + λ(δ)u 1, δ (see the definition of the terms in §3.1) yields a good approximation of the far field of u δ . More precisely, for any given source term f ∈ L 2 (Ω), for any domain Ξ such that O ∈ Ξ, for all ε > 0, there exists δ 0 > 0 such that there holds

u δ -v δ H 1 0 (Ω\Ξ) ≤ C δ 1-ε , ∀δ ∈ (0; δ 0 ]. (28)
In this estimate, again, the constant C > 0 depends on ε, f L 2 (Ω) but not on δ. From a numerical point of view, the computation of v δ = u 0 + λ(δ)u 1, δ may appear reasonable since the functions u 0 , u 1, δ are defined as the solutions of problems set in the limit geometry without the small obstacle. However, if one looks more carefully, one sees that the computation of the gauge function λ(δ), which is the solution of the fixed point equation ( 20), requires a bit of work. And then using λ(δ) in ( 8) to compute u 1, δ seems very laborious. In the present section, we propose an alternative method which is simpler to implement. More precisely, we derive a new problem set in Ω admitting a solution coinciding with v δ that can be easily computed. To proceed, we follow the approach of [24, §4]. According to [START_REF] Cassier | Multiple scattering of acoustic waves by small sound-soft obstacles in two dimensions: mathematical justification of the Foldy-Lax model[END_REF], we know that v δ = u 0 + λ(δ)u 1, δ verifies the equations

-∆v δ + (v δ ) 2m+1 = f in Ω \ {O} v δ = 0 on ∂Ω. ( 29
)
Moreover, according to [START_REF] Nazarov | Self-adjoint extensions for the Neumann Laplacian and applications[END_REF], v δ admits the expansion

v δ = λ(δ) 1 2π ln δ |x| + γ n + vδ = λ(δ) G + 1 2π ln δ + γ n -γ G + ṽδ ,
where ṽδ ∈ C 0 (Ω) verifies ṽδ (O) = 0. Define

ν(δ) = 1 2π ln δ + γ n -γ G -1/2 . ( 30
)
Remark that ν(δ) is well-defined for δ small enough. With this notation, we have the decomposition v δ = αν(δ)G + w where the pair (α, w) is a solution to the following problem

Find (α, w) ∈ R × (H 1 0 (Ω) ∩ C 0 (Ω)) such that -∆w + (αν(δ)G + w) 2m+1 = f in Ω \ {O} α + ν(δ)w(O) = 0. (31)
To obtain (31), we used that ∆G = 0 in Ω \ {O}. Now for numerical purposes, we would like to obtain a variational formulation of Problem (31). If the pair (α, w) satisfies (31), then multiplying by w ∈ H 1 0 (Ω) the first equation of (31) and integrating by parts, we find, for all w ∈ H 1 0 (Ω), ˆΩ ∇w • ∇w dx + ˆΩ(αν(δ)G + w) 2m+1 w dx = ˆΩ f w dx.

(32)

From the second equation of (31), multiplying by α ∈ R, and using that G is the Green's function centered at the origin of the Dirichlet-Laplacian, we obtain

-αα = ν(δ)w(O)α = -ˆΩ ∆w α ν(δ)G dx = ˆΩ f -(αν(δ)G + w) 2m+1 α ν(δ)G dx. ( 33
)
Summing ( 32) and (33), we deduce that if the pair (α, w) verifies (31), then it is a solution to the following problem

Find (α, w) ∈ R × H 1 0 (Ω) such that ˆΩ ∇w • ∇w dx + ˆΩ(αν(δ)G + w) 2m+1 (α ν(δ)G + w ) dx -αα = ˆΩ f (α ν(δ)G + w ) dx, ∀(α , w ) ∈ R × H 1 0 (Ω). ( 34
)
Routine calculus shows that the solutions to (34) correspond to the stationary points of the functional J δ : R × H 1 0 (Ω) → R such that

J δ (α, w) := 1 2 ˆΩ |∇w| 2 dx + 1 2m + 2 ˆΩ |αν(δ)G + w| 2m+2 dx - α 2 2 -ˆΩ f (αν(δ)G + w) dx. ( 35
)
Reciprocally, now assume that (α, w) is a solution to (34). As test function, take first α = 0 and w ∈ H 1 0 (Ω) arbitrary. We find that (α, w) must verify -∆w + (αν(δ)G + w) 2m+1 = f in Ω. From this we deduce that w ∈ H 1 0 (Ω) ∩ C 0 (Ω). We obtain in particular

w(O) = -ˆΩ ∆w G dx = ˆΩ f -(αν(δ)G + w) 2m+1 G dx. ( 36
)
Now take α = 1 and w = 0 in (34). This gives -α = ´Ω f -(αν(δ)G + w) 2m+1 ν(δ)G dx and, according to (36), proves that α + ν(δ)w(O) = 0. We infer that the pair (α, w) verifies (31). Practically, one can solve Problem (34). Then defining v δ = αν(δ)G+w yields a good approximation of the far field of the original Problem [START_REF] Abraham | Manifolds, tensor analysis, and applications[END_REF]. Note that numerically, this approach is much more simpler to implement than computing each term of the other decomposition v δ = u 0 + λ(δ)u 1, δ . This idea of modifying the expansion of v δ to obtain something easy to compute was used in [START_REF] Chesnel | A numerical approach for the poisson equation in a planar domain with a small inclusion[END_REF] for a Laplacian with a small Dirichlet obstacle. However, in the latter work, a different decomposition was employed. We end this section by proving a result of local well-posedness for Problem (34). Proposition 4.1. Consider some arbitrary f ∈ L 2 (Ω). There are some ε, δ 0 > 0 such that, for all δ ∈ (0; δ 0 ], there is a unique pair

(α δ , w δ ) ∈ R × H 1 0 (Ω) solution to (34) satisfying w δ -u 0 H 1 (Ω) + |α δ | < ε.
In this statement, u 0 refers to the unique solution to ( 6), the limit problem without the obstacle.

Proof. Define Ψ : R × (R × H 1 0 (Ω)) → (R × H 1 0 (Ω)) * the map such that, for all ν ∈ R, u = (α, w), u = (α , w ) → Ψ(ν, u), u is given by (see (34))

Ψ(ν, u), u = ˆΩ ∇w • ∇w dx + ˆΩ(ανG + w) 2m+1 (α νG + w ) dx -αα -ˆΩ f (α νG + w ) dx.
Set u 0 = (0, u 0 ). Observe that Ψ(0, u 0 ) = 0. The map Ψ is clearly of class C 1 . In addition, the partial differential ∂ u Ψ(0, u 0 ) : R × H 1 0 (Ω) → (R × H 1 0 (Ω)) * of Ψ evaluated in the direction ũ = (α, w) is given by

∂ u Ψ(0, u 0 ) ũ, u = ˆΩ ∇ w • ∇w dx + (2m + 1) ˆΩ u 2m 0 ww dx -αα
for all u = (α , w ). Let us prove that ∂ u Ψ(0, u 0 ) is a continuous isomorphism. Pick some ∈ (R × H 1 0 (Ω)) * . We wish to prove that there is a unique ũ

∈ R × H 1 0 (Ω) such that ∂ u Ψ(0, u 0 ) ũ, u = (u ), ∀u ∈ R × H 1 0 (Ω). ( 37
)
Define the map T : R × H 1 0 (Ω) → R × H 1 0 (Ω) such that, for u = (α , w ), Tu = (-α , w ). Observe that T is an isomorphism. As a consequence, ũ ∈ R × H 1 0 (Ω) verifies (37) if and only if it satisfies

∂ u Ψ(0, u 0 ) ũ, Tu = (Tu ), ∀u ∈ R × H 1 0 (Ω). ( 38
)
Since the map (ũ, u ) → ∂ u Ψ(0, u 0 ) ũ, Tu is coercive, according to the Lax-Milgram lemma, we know that there is a unique ũ ∈ R × H 1 0 (Ω) satisfying (38). This shows that ∂ u Ψ(0, u 0 ) is a continuous isomorphism. As a consequence, we can apply the implicit function theorem [1, Thm. 2.5.7] to obtain the result of Proposition 4.1.

Numerical experiments

In this section, we provide numerical results illustrating the interest of the approximate model. First, we describe the setting of the experiments. For t > 0, we denote D t ⊂ R2 the disk centered at O of radius t. We shall assume that Ω = D 1 . In this geometry, the Green's function G such that -∆G = δ O in Ω, G = 0 on ∂Ω, is given by G = (2π) -1 ln |x| -1 . Therefore, the constant γ G appearing in the decomposition of G (10), and used in the definition of ν(δ) (see [START_REF] Van Dyke | Perturbation methods in fluid mechanics[END_REF]), is γ G = 0. For the small obstacle, we shall consider two situations:

ω δ is the disk centered at O of radius δ; ω δ is the ellipse centered at O of semi-axes δ ((Ox) axis) and 2δ ((Oy) axis).

We consider the problem of finding

u δ ∈ H 1 0 (Ω δ ) such that -∆u δ + (u δ ) 2m+1 = f in Ω δ = Ω \ ω δ , and u δ = 0 on ∂Ω δ . ( 39
)
Let Ω h be a polygonal approximation of the domain Ω = Ω 0 . Introduce (T h ) h a shape regular family of triangulations of Ω h . Here, h denotes the average mesh size. Define the family of finite element spaces V h := ϕ ∈ H 1 0 (Ω h ) such that ϕ| τ ∈ P 1 (τ ) for all τ ∈ T h , where P 1 (τ ) is the space of polynomials of degree at most 1 on the triangle τ . In what follows, the errors are expressed in the norm • H 1 (Ω h \Dρ) with ρ = 0.15. For the computations, we use the FreeFem++ 2 software.

In the numerical experiments, we first approximate the solution u 0 to the simple limit problem [START_REF] Campbell | Une justification de la méthode de raccordement des développements asymptotiques appliquée à un problème de plaque en flexion. Estimation de la matrice d'impédance[END_REF]. We remind the reader that this problem writes

Find u 0 ∈ H 1 0 (Ω) such that ˆΩ ∇u 0 • ∇v + (u 0 ) 2m u 0 v dx = ˆΩ f v dx, ∀v ∈ H 1 0 (Ω). ( 40
)
To proceed, we use the following algorithm.

Algorithm 1. Set u [0] 0h ≡ 0 and select a stopping criterion η > 0. If u [n] 0h is known, define u [n+1] 0h
as the solution to the (linear) problem Find u

[n+1] 0h ∈ V h such that ˆΩh ∇u [n+1] 0h • ∇v + (u [n] 0h ) 2m u [n+1] 0h v dx = ˆΩh f v dx, ∀v ∈ V h . ( 41
)
Run the procedure until the inequality u

[n+1] 0h -u [n] 0h H 1 (Ω h ) < η is satisfied.
We also discretize the model problem introduced in (34) which gives a better approximation of the far field of u δ than u 0 does. This problem states

Find (α, w) ∈ R × H 1 0 (Ω) such that ˆΩ ∇w • ∇w dx + ˆΩ(αν(δ)G + w) 2m+1 (α ν(δ)G + w ) dx -αα = ˆΩ f (α ν(δ)G + w ) dx, ∀(α , w ) ∈ R × H 1 0 (Ω). ( 42
)
To compute an approximation of (α, w), we implement the following algorithm.

Algorithm 2. Set (α

[0] h , w [0]
h ) = (0, 0) and select a stopping criterion η > 0. If (α

[n] h , w [n] h ) is known, define (α [n+1] h , w [n+1] h
) as the solution to the (linear) problem Find (α

[n+1] h , w [n+1] h ) ∈ R × V h such that ˆΩh ∇w [n+1] h • ∇w dx + ˆΩh (α [n] h ν(δ)G + w [n] h ) 2m (α [n+1] h ν(δ)G + w [n+1] h )(α ν(δ)G + w ) dx -α [n+1] h α = ˆΩh f (α ν(δ)G + w ) dx, ∀(α , w ) ∈ R × V h . ( 43
)
Run the procedure until the inequality (α

[n+1] h , w [n+1] h ) -(α [n] h , w [n] h ) R×H 1 (Ω h ) < η is satisfied.
In the following, we denote u 0h (resp. (α h , w h )) the solution obtained at the end of Algorithm 1 (resp. Algorithm 2). In these iterative procedures, the stopping criterion η is set to η = 10 -8 .

Disk shaped obstacle.

When the obstacle is a small disk centered at O, we can compute explicit solutions for special source terms. In Ω δ , define the functions

u e := ln |x| ln δ - 1 -|x| 2 1 -δ 2 and f := -∆u e + (u e ) 2m+1 = -4 1 -δ 2 + (u e ) 2m+1 .
Observe that we have u e ∈ H 1 0 (Ω δ ) and that f is an element of L 2 (Ω δ ). On the other hand, note that, with ω δ = D δ , we have ω = ω 1 = D 1 so that the logarithmic capacity potential U 1 defined by ( 16) verifies U 1 (ξ) = (2π) -1 ln |ξ| -1 . As a consequence, the parameter γ N appearing in the definition of ν(δ) (see [START_REF] Van Dyke | Perturbation methods in fluid mechanics[END_REF]) satisfies γ N = 0. Therefore, for this configuration we have ν(δ) = (2π) -1 ln δ -1/2 . In Figures 1 and2, we display the evolution of the errors u 0h -u e H 1 (Ω h \Dρ) ,

α h ν(δ)G + w h -u e H 1 (Ω h \Dρ)
for an index of non linearity respectively equal to 1 and 3. For both cases, we observe that α h ν(δ)G + w h yields a better approximation of the far field of u e than u 0h . Moreover, we notice that even for very small values of δ (δ = 10 -8 ), u 0h is a relatively poor approximation of the far field of u e . On the other hand, we remark that

α h ν(δ)G+w h -u e H 1 (Ω h \Dρ)
does not change much for small values of δ. This is due to the fact that the main (singular) part of u e (equal to ln |x|/ ln δ) is correctly approximated and that the smooth part of u e (equal to (1 -|x| 2 )/(1 -δ 2 )) does not depend much on δ for small δ. When the mesh is refined, that is when the number Nt of triangles defining the triangulation of Ω h increases, basically the error u 0h -u e H 1 (Ω h \Dρ) stays the same. The reason is that, even for δ = 10 -8 , the error in the model (in δ) is predominant. On the contrary, (34) yields a good model for the far field of u e which gets more and more accurate as δ tends to zero. Therefore, in this case, refining the mesh improves the quality of the approximation (especially when δ is small). Finally, we note that changing the index of non linearity m does not affect much the results.

Ellipse shaped obstacle. For the second series of experiments, ω δ is the ellipse centered at O of semi-axes δ ((Ox) axis) and 2δ ((Oy) axis). With such a choice ω = ω 1 is the ellipse centered at O of semi-axes 1 and 2. Therefore (see e.g. [START_REF] Ransford | Computation of logarithmic capacity[END_REF]), the coefficient γ N appearing in the decomposition of the logarithmic capacity potential U 1 defined in [START_REF] Kevorkian | Perturbation methods in applied mathematics[END_REF] verifies γ N = ln(3/2)/(2π). From definition (30), we infer that ν(δ) = (2π) -1 ln δ + γ N -1/2 . We take a source term f such that for x = (x, y), f (x) = 1+x+y. In this setting, we cannot use separation of variables to compute the exact solution u δ ∈ H 1 0 (Ω δ ) to problem [START_REF] Abraham | Manifolds, tensor analysis, and applications[END_REF]. For that reason, in order to assess the quality of our model (34), we compute a direct approximation of u δ meshing the domain Ω δ with the small obstacle. Of course this is precisely the operation that we would like to avoid because it requires to use a very refined mesh close to the obstacle. We emphasize that here, it is just a way to validate our model. Now, we explain how to approximate u δ .

ln( u 0h -u e H 1 (Ω h \Dρ) ) ln( α h ν(δ)G + w h -u e H 1 (Ω h \Dρ) ) δ Nt=3924 Nt=15508 Nt=35688 Nt=3924 Nt=15508 Nt=35688
u 0h -u e H 1 (Ω h \Dρ) ) ln( α h ν(δ)G + w h -u e H 1 (Ω h \Dρ) ) δ Nt=3924 Nt=15508 Nt=35688 Nt=3924 Nt=15508 Nt=35688
Let Ω h δ be a polygonal approximation of the domain Ω δ . Introduce (T h δ ) h a shape regular family of triangulations of Ω h δ . Here, h denotes the average mesh size. Define the family of finite element spaces

V h δ := ϕ ∈ H 1 0 (Ω h δ ) such that ϕ| τ ∈ P 1 (τ ) for all τ ∈ T h δ ,
Consider the following algorithm.

Algorithm 3. Set u [0] δh ≡ 0 and select a stopping criterion η > 0. If u [n]
δh is known, define u

[n+1] δh as the solution to the (linear) problem Find u

[n+1] δh ∈ V h δ such that ˆΩh δ ∇u [n+1] δh • ∇v + (u [n] δh ) 2m u [n+1] δh v dx = ˆΩh δ f v dx, ∀v ∈ V h δ . ( 44
)
Run the procedure until the inequality u

[n+1] δh -u [n] δh H 1 (Ω h ) < η is satisfied.
In the following, we denote u δh the solution obtained at the end of Algorithm 3. In the procedure, the stopping criterion η is again set to η = 10 -8 .

In Figures 3 and4, we display the evolution of the errors u 0h -u δh H 1 (Ω h \Dρ) , α h ν(δ)G + w hu δh H 1 (Ω h \Dρ) for an index of non linearity respectively equal to 1 and 3. The conclusions are the same as for the case of the small obstacle being a disk. Note however that we cannot consider very small values of δ because we need to mesh the domain with the small obstacle Ω δ to compute the reference solution u δh . In this section, we show the error estimate of Proposition 3.1. We use the same notation as in §3.4. Additionally, we introduce R 2 a domain such that supp(χ) ⊂ R 2 and R 2 ⊂ Ω. Here supp(χ) stands for the support of the function χ. For t > 0, we set

ln( u 0h -u δh H 1 (Ω h \Dρ) ) ln( α h ν(δ)G + w h -u δh H 1 (Ω h \Dρ) ) δ Nt=3700 Nt=10936 Nt=14892 Nt=3700 Nt=10936 Nt=14892
R 1 t := {x ∈ Ω | x/t ∈ R 1 } and R 2 t := {x ∈ Ω | x/t ∈ R 2 }.
Note that for all δ ∈ (0; 1], we have

ω δ ⊂ ω δ ⊂ R 1 δ ⊂ R 1 δ ⊂ R 2 δ ⊂ R 2 δ ⊂ Ω. The stability estimate (4) gives u δ -ûδ H 1 0 (Ω δ ) ≤ A δ (u δ ) -A δ (û δ ) H -1 (Ω δ ) . ( 45
)
Let us compute the right hand side of this inequality. Consider some ϕ ∈ H 1 0 (Ω δ ) such that ϕ H 1 0 (Ω δ ) = 1. By definition of A δ (see ( 2)), we have

A δ (u δ ) -A δ (û δ ), ϕ = ˆΩδ f ϕ dx - ˆΩδ ∇û δ • ∇ϕ + (û δ ) 2m+1 ϕ dx. ( 46
)
A direct calculus yields

∇û δ • ∇ϕ = ∇(ψ δ v δ + χV δ -ψ δ χ m δ ) • ∇ϕ = (ψ δ ∇v δ + χ∇V δ -ψ δ χ ∇m δ ) • ∇ϕ + (v δ ∇ψ δ + V δ ∇χ -m δ ∇(ψ δ χ)) • ∇ϕ = ∇v δ • ∇(ψ δ ϕ) + ∇V δ • ∇(χ ϕ) -∇m δ • ∇(ψ δ χ ϕ) +(v δ ∇ϕ -ϕ∇v δ ) • ∇ψ δ + (V δ ∇ϕ -ϕ∇V δ ) • ∇χ -(m δ ∇ϕ -ϕ∇m δ ) • ∇(ψ δ χ).
Observing that there holds ∇(ψ δ χ) = ∇ψ δ + ∇χ, we obtain

∇û δ • ∇ϕ = ∇v δ • ∇(ψ δ ϕ) + ∇V δ • ∇(χ ϕ) -∇m δ • ∇(ψ δ χ ϕ) + (v δ -m δ )∇ϕ -ϕ∇(v δ -m δ ) • ∇ψ δ + (V δ -m δ )∇ϕ -ϕ∇(V δ -m δ ) • ∇χ.
Integrating by parts and using that ∆V δ = ∆m δ = 0 in Ω δ , we deduce that

ˆΩδ ∇û δ • ∇ϕ dx = ˆΩδ ∇v δ • ∇(ψ δ ϕ) dx + ˆΩδ (v δ -m δ )∇ϕ -ϕ∇(v δ -m δ ) • ∇ψ δ + (V δ -m δ )∇ϕ -ϕ∇(V δ -m δ ) • ∇χ dx. ( 47
)
The function v δ satisfies Problem [START_REF] Cassier | Multiple scattering of acoustic waves by small sound-soft obstacles in two dimensions: mathematical justification of the Foldy-Lax model[END_REF]. Since the support of ψ δ ϕ excludes a neighbourhood of the origin, we can integrate by parts in the first term of right hand side of (47) to obtain

ˆΩδ ∇v δ • ∇(ψ δ ϕ) dx = ˆΩδ f ψ δ ϕ dx - ˆΩδ v 2m+1 δ ψ δ ϕ dx. ( 48
)
Plugging (48) in (47), observing that 1 -ψ δ = χ δ and using (46), we find

A δ (u δ ) -A δ (û δ ), ϕ = ˆΩδ f χ δ ϕ dx + ˆΩδ v 2m+1 δ ψ δ ϕ -û2m+1 δ ϕ dx - ˆΩδ (v δ -m δ )∇ϕ -ϕ∇(v δ -m δ ) • ∇ψ δ + (V δ -m δ )∇ϕ -ϕ∇(V δ -m δ ) • ∇χ dx. ( 49
)
It remains to estimate each of the terms of the right hand side of (49).

Let us consider the first one. Cauchy-Schwarz inequality implies

ˆΩδ f χ δ ϕ dx ≤ f L 2 (Ω) χ δ ϕ L 2 (Ω δ ) . ( 50
)
On the other hand, using the logarithmic Hardy inequality (see e.g. [22, p. 38]), one can prove the classical estimate

ˆΩ ζ 2 |x| 2 (ln |x|) 2 dx ≤ C ˆΩ |∇ζ| 2 dx, ∀ζ ∈ H 1 0 (Ω). ( 51
)
The support of χ δ ϕ is included in R 2 δ . Remarking that there is a d 2 > 0 (independent of δ) such that R 2 δ ⊂ D d 2 δ (for t > 0, D d 2 δ stands for the disk centered at O of radius t), we can write

χ δ ϕ 2 L 2 (Ω δ ) ≤ C δ 2 (ln δ) 2 ˆΩ χ 2 δ ϕ 2 |x| 2 (ln |x|) 2 dx ≤ C δ 2 (ln δ) 2 ˆΩ ϕ 2 |x| 2 (ln |x|) 2 dx ≤ C δ 2 (ln δ) 2 ϕ 2 H 1 0 (Ω δ ) . ( 52
)
In this inequality, the constant C ε does depend on ε, and this will be the case of other constants coming into play in subsequent inequalities. However, the main point of the present analysis is to provide estimates for δ → 0. Hence for the sake of conciseness, we shall simply denote "C" the constants appearing in these estimates. Dependency of these constants with respect to ε may be systematically assumed. Now, let us focus on the term χ δ m δ L 2 (Ω\R 1 δ ) appearing in (57). Note that

|m δ | ≤ C in R 2 δ \ R 1 δ and supp(χ δ ) ⊂ R 2 δ
, where C is independent of δ. This allows us to write

χ δ m δ L 2 (Ω\R 1 δ ) ≤ C 1 L 2 (R 2 δ \R 1 δ ) ≤ C δ. ( 62
)
Plugging ( 58), ( 61) and ( 62) in (57) yields

(v δ -ûδ )ψ δ L 2 (Ω δ ) ≤ C δ 1-ε .
Using this estimate in (56) leads to ˆΩδ

(v 2m+1 δ -û2m+1 δ )ψ δ ϕ dx ≤ C δ 1-ε ϕ L 2 (Ω δ ) . ( 63
)
Plugging ( 55) and ( 63) in (54), we arrive at

ˆΩδ v 2m+1 δ ψ δ ϕ -û2m+1 δ ϕ dx ≤ C δ 1-ε ϕ L 2 (Ω δ ) . (64)
Finally, we estimate the last term of the right hand side of (49). Triangular inequality yields ˆΩδ

(v δ -m δ )∇ϕ -ϕ∇(v δ -m δ ) • ∇ψ δ + (V δ -m δ )∇ϕ -ϕ∇(V δ -m δ ) • ∇χ dx ≤ ˆΩδ (v δ -m δ )∇ϕ -ϕ∇(v δ -m δ ) • ∇ψ δ dx + ˆΩδ (V δ -m δ )∇ϕ -ϕ∇(V δ -m δ ) • ∇χ dx (65)
For t > 0, we define the region

Q t := R 2 t \ R 1 t .
Observing that the support of ∇ψ δ is included in Q δ and that there holds ∇ψ δ L ∞ (Ω) ≤ C δ -1 for some C > 0 independent of δ, we can write ˆΩδ

(v δ -m δ )∇ϕ -ϕ∇(v δ -m δ ) • ∇ψ δ dx ≤ C δ -1 ( v δ -m δ L 2 (Q δ ) ∇ϕ L 2 (Q δ ) 2 + ∇(v δ -m δ ) L 2 (Q δ ) 2 ϕ L 2 (Q δ ) ). ( 66
) Since v δ -m δ = ṽδ with ṽδ ∈ V 1 -1+ε (
Ω), according to (13), we have

v δ -m δ L 2 (Q δ ) ∇ϕ L 2 (Q δ ) 2 = ṽδ L 2 (Q δ ) ∇ϕ L 2 (Q δ ) 2 ≤ δ 2-ε r -2+ε ṽδ L 2 (Q δ ) ∇ϕ L 2 (Q δ ) 2 ≤ δ 2-ε ṽδ V 1 -1+ε (Ω δ ) ∇ϕ L 2 (Q δ ) 2 (67)
and

∇(v δ -m δ ) L 2 (Q δ ) 2 ϕ L 2 (Q δ ) = ∇ṽ δ L 2 (Q δ ) 2 ϕ L 2 (Q δ ) ≤ δ 1-ε r -1+ε ∇ṽ δ L 2 (Q δ ) 2 ϕ L 2 (Q δ ) ≤ C δ 2-ε | ln δ| ṽδ 2 V 1 -1+ε (Ω δ ) ∇ϕ L 2 (Q δ ) 2 . ( 68
)
The last inequality of (68) has been obtained proceeding like in (52) and using the Hardy's inequality (51). Since (68) is valid for all ε > 0, we can remove the factor | ln δ|. Taking account of (83) that will be established independently in Proposition 6.1, and plugging (67), (68) in (66) yields a constant C > 0 independent of δ (but depending on ε) such that ˆΩδ

(v δ -m δ )∇ϕ -ϕ∇(v δ -m δ ) • ∇ψ δ dx ≤ C δ 1-ε ϕ H 1 0 (Ω δ ) . ( 69
)
Now we consider the second term of the right hand side of (65). We can write ˆΩδ

(V δ -m δ )∇ϕ -ϕ∇(V δ -m δ ) • ∇χ dx ≤ C ( V δ -m δ L 2 (Q 1 ) ∇ϕ L 2 (Q 1 ) 2 + ∇(V δ -m δ ) L 2 (Q 1 ) 2 ϕ L 2 (Q 1 ) ). (70)
We have (

V δ -m δ )(x) = λ(δ) Ũ1 (x/δ) where Ũ1 ∈ W 1 1-ε (R 2 \ ω).
Making the change of variable ξ = x/δ, for ε > 0, we find

V δ -m δ 2 L 2 (Q 1 ) = ˆQ1/δ |λ(δ)| 2 | Ũ1 (ξ)| 2 δ 2 dξ ≤ C δ 2 (1/δ) 2ε ˆQ1/δ |ξ| -2ε | Ũ1 (ξ)| 2 dξ ≤ C δ 2-2ε Ũ1 2 W 1 1-ε (R 2 \ω) . (71)
Analogously, we obtain

∇(V δ -m δ ) 2 L 2 (Q 1 ) 2 = ˆQ1/δ |λ(δ)| 2 |∇ Ũ1 (ξ)| 2 dξ ≤ C (1/δ) -2+2ε ˆQ1/δ |ξ| 2-2ε |∇ Ũ1 (ξ)| 2 dξ ≤ C δ 2-2ε Ũ1 2 W 1 1-ε (R 2 \ω) . (72)
Plugging ( 71) and ( 72) in (70), we deduce ˆΩδ

(V δ -m δ )∇ϕ -ϕ∇(V δ -m δ ) • ∇χ dx ≤ C δ 1-ε ϕ H 1 0 (Ω δ ) . ( 73
)
Using ( 69) and ( 73) in (65), we arrive at ˆΩδ

(v δ -m δ )∇ϕ -ϕ∇(v δ -m δ ) • ∇ψ δ + (V δ -m δ )∇ϕ -ϕ∇(V δ -m δ ) • ∇χ dx ≤ C δ 1-ε ϕ H 1 0 (Ω δ ) . (74)
Conclusion. Gathering (53), ( 64) and (74) in (49) yields

| A δ (u δ ) -A δ (û δ ), ϕ | ≤ C δ 1-ε ϕ H 1 0 (Ω δ ) .
Taking the sup over all ϕ ∈ H 1 0 (Ω δ ) satisfying ϕ H 1 0 (Ω δ ) = 1, and using this result in (45) leads to the desired estimate [START_REF] Railton | The treatment of thin wires in the FDTD method using a weighted residuals approach[END_REF].

In the following of the section, we establish some intermediate results which were needed in the previous proof. Lemma 6.1. Let ûδ refer to the function defined by [START_REF] Peaceman | Interpretation of well-block pressures in numerical reservoir simulations[END_REF]. Then lim sup δ→0 ûδ L ∞ (Ω δ ) < +∞.

(75)

Proof. By definition, ûδ verifies ûδ = ψ δ v δ + χ V δ -ψ δ χ m δ . As a consequence, it is sufficient to show that lim sup

δ→0 { v δ L ∞ (Ω\R 1 δ ) + V δ L ∞ (Ω δ ∩R 2 ) + m δ L ∞ (R 2 \R 1 δ ) } < +∞. ( 76
)
The function v δ is given by v δ = u 0 + λ(δ)u 1, δ where u 0 is defined by ( 6) and where u 1, δ = w 1, δ + G.

In the latter decomposition, w 1, δ is solution of (6) and G is Green's function for the Laplace operator with homogeneous Dirichlet boundary condition. Since u 0 ∈ C 0 (Ω) is independent of δ, there holds

u 0 L ∞ (Ω\R 1 δ ) ≤ C. ( 77
)
Here and in the following, C > 0 denotes a constant, which may change from one occurrence to another, but which is independent of δ. Observing that there is some d 1 > 0 such that (Ω \ R (78)

We know that w 1, δ converges to w 1, 0 for the H 1 -norm as δ goes to zero (this is a result of the implicit function theorem). As a consequence of ( 9), for δ small enough, there is a constant C > 0 such that ∆w 1,δ L 2 (Ω δ ) ≤ C. This implies

λ(δ) w 1,δ L ∞ (Ω\R 1 δ ) ≤ C. ( 79
)
Gathering ( 77), ( 78) and (79) leads to Proposition 6.1. The far field v δ and the near field V δ respectively admit the decompositions v δ (x) = m δ (x) + ṽδ (x), V δ (x) = m δ (x) + Ṽδ (x/δ) where m δ is given by [START_REF] Nazarov | Self-adjoint extensions for the Neumann Laplacian and applications[END_REF] and where ṽδ , Ṽδ satisfy lim sup

v δ L ∞ (Ω\R 1 δ ) ≤ C.
δ→0 { ṽδ V 1 -1+ε (Ω) + Ṽδ W 1 1-ε (R 2 \ω) } < +∞ ∀ε > 0. ( 83
)
Proof. First, we prove the estimate

ṽδ V 1 -1+ε (Ω) ≤ C ε , ∀ε > 0. ( 84
)
The function v δ is given by v δ = u 0 + λ(δ)u 1, δ where u 0 is defined by ( 6) and where u 1, δ = w 1, δ + G.

In the latter equality, w 1, δ is solution of (6) and G is Green's function for the Laplace operator with homogeneous Dirichlet boundary condition. The function u 0 admits the decomposition u 0 = u 0 (0) + ũ0 with ũ0 ∈ V 1 -1+ε (Ω) independent of δ. As a consequence, to obtain (84), it is sufficient to show that there holds wδ

V 1 -1+ε (Ω) ≤ C ε , ∀ε > 0, (85)
where wδ ∈ V 1 -1+ε (Ω) is the function such that w 1,δ = w 1,δ (0) + wδ . We know that w 1, δ converges to w 1, 0 for the H 1 -norm as δ goes to zero (this is a result of the implicit function theorem). As a consequence of (9), for δ small enough, there is a constant C ε > 0 such that ∆w δ L 2 (Ω δ ) ≤ C ε . According to the Kondratiev's theory, this implies (85). Therefore (84) is established.

On the other hand, we have (V δ -m δ )(x) = λ(δ) Ũ1 (x/δ) where Ũ1 ∈ W 1 1-ε (R 2 \ ω) is independent of δ. Since |λ(δ)| ≤ C | ln δ| -1 , we deduce that Ṽδ = λ(δ) Ũ1 verifies

Ṽδ W 1 1-ε (R 2 \ω) ≤ C ε , ∀ε > 0. (86)
Finally, from (84), (86), we obtain (83).

Figure 1 :

 1 Figure 1: Errors with respect to δ for an index of non linearity m = 1. The parameter Nt corresponds to the number of triangles defining the triangulation of Ω h .

Figure 2 :

 2 Figure 2: Errors with respect to δ for an index of non linearity m = 3. The parameter Nt corresponds to the number of triangles defining the triangulation of Ω h .

Figure 4 :

 4 Figure 4: Errors with respect to δ for an index of non linearity m = 3. The parameter Nt corresponds to the number of triangles defining the triangulation of Ω h .

  1 δ ) ∩ D d 1 δ = ∅, we obtain G L ∞ (Ω\R 1 δ ) ≤ C | ln δ|. Since |λ(δ)| ≤ C | ln δ| -1 , this implies λ(δ) G L ∞ (Ω\R 1 δ ) ≤ C.

  estimate the second term in the left hand side of (76). The function V δ is defined byV δ (x) = λ(δ) U 1 (x/δ), where U 1 is the sum of -(2π) -1 ln |ξ| and a function which remains bounded at infinity. Since |λ(δ)| ≤ C | ln δ| -1 , we deduce that V δ L ∞ (Ω δ ∩R 2 δ ) ≤ C.(81)In (76), it remains to bound the term involving m δ . By definition (see (24)), we have m δ = λ(δ) 1 2π ln δ |x| + γ n . Using again the relation |λ(δ)| ≤ C | ln δ| -1 , one can check that m δ L ∞ (R 2 \R 1 δ ) ≤ C. (82) Plugging (80), (81) and (82) in (76) yields Estimate (75).

  Errors with respect to δ for an index of non linearity m = 1. The parameter Nt corresponds to the number of triangles defining the triangulation of Ω h .ln( u 0h -u δh H 1 (Ω h \Dρ) ) ln( α h ν(δ)G + w h -u δh H 1 (Ω h \Dρ) )

	5.10 -2 -0.462198 -0.463417 -0.463421 -1.59618 -1.61939	-1.61931
	10 -2 -0.668966 -0.672756 -0.672772 -2.47907 -2.88783	-2.90098
	5.10 -3 -0.735467 -0.739402 -0.73942	-2.5395	-3.00765	-3.02612
	10 -3 -0.859438 -0.863692 -0.863714 -2.64253 -3.12358	-3.14209
	5.10 -4 -0.903445 -0.90787	-0.907893 -2.67254 -3.15314	-3.17106
	Figure 3: δ	Nt=3700	Nt=10936 Nt=14892 Nt=3700 Nt=10936 Nt=14892
	5.10 -2 -0.457329 -0.458237 -0.458534 -1.59529 -1.61387	-1.61843
	10 -2 -0.66236	-0.665653 -0.666128 -2.47666 -2.80524	-2.89894
	5.10 -3 -0.728337 -0.731665 -0.732251 -2.53655 -2.88955	-3.02367
	10 -3 -0.851417 -0.855016 -0.855654 -2.63857 -3.00151	-3.13891
	5.10 -4 -0.895138 -0.898947 -0.899548 -2.66818 -3.0373	-3.16755

See also the beginning of §3.2 for an explanation of this choice.

FreeFem++, http://www.freefem.org/ff++/.

Acknowledgments

The research of L. C. was supported by the FMJH through the grant ANR-10-CAMP-0151-02 in the "Programme des Investissements d'Avenir". The research of S.A. N. was supported by the Russian Foundation for Basic Research, grant No. 15-01-02175.

Here and in the following C > 0 denotes a constant independent of δ which may change from one occurrence to another. The last line of (52) has been obtained extending ϕ ∈ H 1 0 (Ω δ ) by zero on ω δ and using (51). Plugging (52) in (50), we deduce ˆΩδ

Now, we work on the second term of the right hand side of (49). We decompose it as

From definition [START_REF] Peaceman | Interpretation of well-block pressures in numerical reservoir simulations[END_REF] and the asumption made on the geometry, we note that ûδ belongs to C 0 (Ω δ ). Moreover, Lemma 6.1 hereafter guarantees that there is some C > 0 (independent of δ but depending on f L 2 (Ω) ) such that there holds ûδ L ∞ (Ω δ ) ≤ C for δ small enough. This result and Cauchy-Schwarz inequality yield ˆΩδ û2m+1

To obtain the last inequality, we used again that the support of χ δ is included in the disk D d 2 δ for some given d 2 > 0. Now, we focus our attention on the first term of the right hand side of (54).

From the identity t 2n+1 -s 2n+1 = (t -s) 2n k=0 s 2n-k t k for all s, t ∈ R, and from the estimates

The function ψ δ belongs to C ∞ 0 (Ω \ R 1 δ , [0; 1]). Using the decomposition ûδ = ψ δ v δ + χV δ -ψ δ χ m δ as well as the identity χ δ χ = χ δ (for δ ∈ (0; 1]), we obtain

To deal with the second term of the right hand side of (57), we can write

(60)

From ( 59), (60) and Estimate (83) hereafter, we deduce the existence of a constant C ε > 0 independent of δ such that χ(V δ -m δ ) L 2 (Ω\R 1 δ )) ≤ C δ 1-ε .

(61)