Keywords

1 Introduction

Many meshless methods have been developed to resolve the problem of re-meshing in conventional numerical methods such as FEM and FDM. The meshless local Petrov–Galerkin (MLPG) method seems to be the most successful meshless method among them [1]. It is based on a local weak form, and numerical integration is done over small local domains. A background mesh is generated locally rather than globally which makes the numerical integration relatively easier than by the global weak form-based meshless methods. The meshless shape functions in the MLPG method can be generated by meshless shape function generation schemes such as moving least squares (MLS), radial basis function (RBF), and several other approaches. The MLS scheme is mostly used due to its accuracy; however, it has some drawbacks such as the absence of Kronecker delta property (KDP) is computationally expensive, uses complicated polynomials, and could be instable for particular arrangements of nodal points. There is a motivation to further develop the MLPG method as two major problems remain: high computational cost and difficulty in the imposition of essential boundary conditions.

2 Literature Review and Objective

Many researchers have reported a slightly improved versions of the MLS scheme which overcome the drawbacks of the original MLS scheme. They have tested these MLS variants in element free Galerkin (EFG) method, global boundary node method (GBNM), and some other meshless methods [2]. To enable the KDP, modified weight functions in the MLS scheme have been proposed [3], which closely satisfy the KDP. Another variant, namely interpolating MLS (IMLS) scheme has been proposed in [4, 5], where a singular weight function is used in the IMLS scheme. It exactly satisfies the KDP, however, on the computational nodes, the value of the singular weight function becomes infinite, and thus, the shape functions cannot be calculated. The IMLS is successful only if the evaluation points do not coincide with the computational nodes. This problem is removed in the improved version of IMLS, named the improved interpolation moving least squares (IIMLS) scheme [6]. In IMLS and IIMLS variants, the inverse of a moment matrix has to be calculated in the procedure of computation of shape functions, which makes the scheme computationally expensive. Another variant of the MLS scheme, which is based on the orthogonal weight function (OMLS), has been proposed in [6]. In this scheme, the moment matrix becomes a diagonal matrix that eliminates the calculation for inversion of moment matrix, which saves a substantial part of computational time.

The objective of this paper is to develop the MLPG method based on the above listed improved versions of MLS scheme and test their performance for the potential flow problem. The tested MLPG methods based on the four improved versions of MLS, i.e. MLS_k (MLS with the modified weight function), IIMLS, OMLS, and OMLS_k (OMLS with modified weight function) are named here: MLPG_k, IIMLPG, OMLPG, and OMLPG_k, respectively. In the next section, the MLPG formulation for the Laplace equation, which governs the potential flow, is introduced followed by numerical results, discussion, and conclusion.

3 Materials and Methods

In this section, we first present the procedure of MLS and OMLS approaches followed by the formulation of the MLPG method for the Laplace equation. Detailed information on the procedure of shape function generation by the above listed MLS schemes has been discussed in [2].

3.1 MLS Approximation

The MLS approximation for unknown variable u(x) at an evaluation point x can be written as

$$ u^{h} \left( {{\mathbf{x}}} \right) = \mathop \sum \limits_{j = 1}^{m} p_{j} \left( {{\mathbf{x}}} \right)a_{j} \left( {{\mathbf{x}}} \right) = {{\mathbf{p}}}^{T} \left( {{\mathbf{x}}} \right){{\mathbf{a}}}\left( {{\mathbf{x}}} \right), $$
(1)

where pT(x) is a row vector containing m basis functions and aj(x) are unknown coefficients. The elements of the vector pT(x) in 2D can be written as

$$ {{\mathbf{p}}}^{T} \left( {{\mathbf{x}}} \right) = \left[ {1,x_{1} ,x_{2} , x_{1}^{2} , x_{1} x_{2} ,x_{2}^{2} } \right]. $$
(2)

There are six basis functions (m = 6) in 2D. Similarly, the vector can be written for 1D and 3D [2]. The coefficient vector a(x) is derived by minimising a weighted residual using l2 norm

$$ \mathop \sum \limits_{i = 1}^{ns} w\left( {{{\mathbf{x}}},{{\mathbf{x}}}_{i} } \right)\left[ {u^{h} \left( {{{\mathbf{x}}},{{\mathbf{x}}}_{i} } \right) - u\left( {{{\mathbf{x}}}_{i} } \right)} \right]^{2} = \mathop \sum \limits_{i = 1}^{ns} w\left( {{{\mathbf{x}}},{{\mathbf{x}}}_{i} } \right)\left[ {{{\mathbf{p}}}^{T} \left( {{{\mathbf{x}}}_{i} } \right){{\mathbf{a}}}\left( {{\mathbf{x}}} \right) - u\left( {{{\mathbf{x}}}_{i} } \right)} \right]^{2} , $$
(3)

where w(x, xi) is a weight function

$$ w\left( {{{\mathbf{x}}}, {\varvec{x}}_{i} } \right) = \left\{ {\begin{array}{*{20}l} {1 - 6d^{2} + 8d^{3} - 3d^{4} } \hfill & {{\text{if}}\,0 \le d \le 1} \hfill \\ 0 \hfill & {{\text{if}}\,d > 1} \hfill \\ \end{array} } \right.. $$
(4)

\( d = \left\| {{\mathbf{x}} - {\mathbf{x}}_{i} } \right\|/r_{w} \) and rw is the radius of the support domain in which the weight function is nonzero. There are ns number of nodes in the support domain, and u(xi) is the nodal parameter of the field variable at the discretization node xi.

The m linear equations are obtained by differentiating Eq. (3) with respect to coefficient vector a(x) and equating it to zero

$$ \mathop \sum \limits_{i = 1}^{ns} w\left( {{{\mathbf{x}}},{{\mathbf{x}}}_{i} } \right)\left[ {\left[ {{{\mathbf{p}}}^{T} \left( {{{\mathbf{x}}}_{i} } \right){{\mathbf{a}}}\left( {{\mathbf{x}}} \right) - u\left( {{{\mathbf{x}}}_{i} } \right)} \right]} \right]{{\mathbf{p}}}\left( {{{\mathbf{x}}}_{i} } \right) = 0, $$
(5)

which can be written in matrix form as

$$ {{\mathbf{A}}}\left( {{\mathbf{x}}} \right)_{{{\varvec{m}} \times {\varvec{m}}}} {{\mathbf{a}}}\left( {{\mathbf{x}}} \right)_{{{\varvec{m}} \times 1}} = {{\mathbf{B}}}\left( {{\mathbf{x}}} \right)_{{{\varvec{m}} \times {\varvec{ns}}}} {{\mathbf{u}}}_{{{\varvec{ns}} \times 1}} , $$
(6)

where

$$ {{\mathbf{A}}}\left( {{\mathbf{x}}} \right) = \mathop \sum \limits_{i = 1}^{ns} w\left( {{{\mathbf{x}}},{{\mathbf{x}}}_{i} } \right){{\mathbf{p}}}\left( {{{\mathbf{x}}}_{i} } \right){{\mathbf{p}}}^{T} \left( {{{\mathbf{x}}}_{i} } \right) $$
(7)

is defined as the moment matrix, and

$$ \begin{aligned} {{\mathbf{a}}}\left( {{\mathbf{x}}} \right) & = \left[ {a_{1} \left( {{\mathbf{x}}} \right),a_{2} \left( {{\mathbf{x}}} \right), \ldots .a_{m} \left( {{\mathbf{x}}} \right)} \right]^{T} \\ {{\mathbf{B}}}\left( {{\mathbf{x}}} \right) & = \mathop \sum \limits_{i = 1}^{ns} w\left( {{{\mathbf{x}}},{{\mathbf{x}}}_{i} } \right){{\mathbf{p}}}\left( {{{\mathbf{x}}}_{i} } \right), \\ {{\mathbf{u}}} & = \left[ {\overline{u}_{1} , \overline{u}_{2} , \ldots .,\overline{u}_{ns} } \right]^{T} , \\ \end{aligned} $$
(8)

where \(\overline{u}_{i}\) is the value of the field variable at the discretization point xi. The coefficient vector a(x) is obtained from Eq. (6) and inserted in Eq. (1) to obtain the final MLS approximation

$$ u^{h} \left( {{\mathbf{x}}} \right) = {{\mathbf{p}}}^{T} \left( {{\mathbf{x}}} \right){{\mathbf{A}}}^{ - 1} \left( {{\mathbf{x}}} \right){{\mathbf{B}}}\left( {{\mathbf{x}}} \right){{\mathbf{u}}}. $$
(9)

Denoting \({{\mathbf{p}}}^{T} {{\mathbf{A}}}^{ - 1} {{\mathbf{B}}}\) by \(\phi\), we obtain the vector of ns MLS shape functions.

Using a vector notation, the partial derivatives of \(\phi\) can be obtained as

$$ \phi_{^{\prime}x} = {{\mathbf{p}}}_{^{\prime}x}^{T} \left( {{{\mathbf{A}}}^{ - 1} {{\mathbf{B}}}} \right) + {{\mathbf{p}}}^{T} \left( {{\varvec{A}}_{^{\prime}x}^{ - 1} {{\mathbf{B}}} + {\varvec{A}}^{ - 1} {{\mathbf{B}}}_{{^{\prime}{\varvec{x}}}} } \right), $$

where

$$ {{\mathbf{A}}}_{{^{\prime}{\varvec{x}}}}^{ - 1} = - {{\mathbf{A}}}^{ - 1} {{\mathbf{A}}}_{{^{\prime}{\varvec{x}}}} {{\mathbf{A}}}^{ - 1} . $$

To enable KDP, the modified weight function used in [2] can be used in MLS.

$$ w\left( {{{\mathbf{x}}}, {\varvec{x}}_{i} } \right) = \frac{{\tilde{w}\left( {{{\mathbf{x}}},{\varvec{x}}_{i} } \right)}}{{\mathop \sum \nolimits_{k = 1}^{ns} \tilde{w}\left( {{{\mathbf{x}}},{\varvec{x}}_{k} } \right)}} , $$
(10)

where

$$ \tilde{w}\left( {{{\mathbf{x}}}, {\varvec{x}}_{i} } \right) = \left\{ {\begin{array}{*{20}l} {\frac{{(d^{2} + \varepsilon^{2} )^{ - 2} - (1 + \varepsilon )^{ - 2} }}{{\varepsilon^{ - 2} - (1 + \varepsilon )^{ - 2} }}} \hfill & {{\text{if}}\,0 \le d \le 1} \hfill \\ 0 \hfill & {{\text{if}}\, d \ge 1} \hfill \\ \end{array} } \right.. $$
(11)

\(\varepsilon\) is a small constant, e.g. 10–5 [2]. The modified weight function makes the MLS approximation very close to having the KDP.

3.2 OMLS Approximation

The weighted orthogonal basis functions were proposed in the MLS approximation [5], which makes the moment matrix a diagonal matrix. Let, f and g be functions of x. The inner product (f · g) is defined as

$$ \left( {f \cdot g} \right)_{{{\mathbf{x}}}} = \mathop \sum \limits_{k = 1}^{ns} w\left( {{{\mathbf{x}}},{{\mathbf{x}}}_{{\varvec{k}}} } \right)f\left( {{{\mathbf{x}}}_{{\varvec{k}}} } \right)g\left( {{{\mathbf{x}}}_{{\varvec{k}}} } \right) , $$
(12)

where w(x, xi) is a weight function. The weighted orthogonal basis function is defined as

$$ \tilde{p}_{i} \left( {{\mathbf{x}}} \right) = p_{i} \left( {{\mathbf{x}}} \right) - \mathop \sum \limits_{k = 1}^{i - 1} \frac{{\left( {p_{i} ,\tilde{p}_{k} } \right)}}{{\left( {\tilde{p}_{k} ,\tilde{p}_{k} } \right)}}\tilde{p}_{k} , i = 2,3 \ldots .m, $$
(13)

where \(\tilde{p}_{i} \left( {{\mathbf{x}}} \right)\) is the new, orthogonal basis function of the OMLS scheme and \(p_{i} \left( {{\mathbf{x}}} \right)\) is the monomial basis function of MLS from Eq. (2). In the present paper, the notations are same as in the MLS procedure, except for \(\tilde{p}\). For example, the first and second elements of the weighted orthogonal basis function (\(\tilde{p}_{i} \left( {{\mathbf{x}}} \right)\)) are given as

$$ \begin{aligned} \tilde{p}_{1} \left( {{\mathbf{x}}} \right) & = 1 \\ \tilde{p}_{2} \left( {{\mathbf{x}}} \right) & = x_{1} - \frac{{\left( {p_{2} ,\tilde{p}_{1} } \right)}}{{\left( {\tilde{p}_{1} ,\tilde{p}_{1} } \right)}}p_{1} \\ & = x_{1} - \mathop \sum \limits_{k = 1}^{ns} w\left( {{{\mathbf{x}}},{{\mathbf{x}}}_{k} } \right)\left( {x_{1k} } \right) /\mathop \sum \limits_{k = 1}^{ns} w\left( {{{\mathbf{x}}},{{\mathbf{x}}}_{k} } \right). \\ \end{aligned} $$
(14)

In the same way, other weighted orthogonal basis functions for the OMLS can be obtained. The approach for obtaining the OMLS shape functions is the same as in the MLS. The only difference is the diagonal moment matrix (A), which can be written as.

$$ {{\mathbf{A}}}\left( {{\mathbf{x}}} \right) = \left[ {\begin{array}{*{20}c} {\left( {\tilde{p}_{1} \cdot \tilde{p}_{1} } \right)} \\ 0 \\ \vdots \\ 0 \\ \end{array} \begin{array}{*{20}c} 0 \\ {\left( {\tilde{p}_{2} \cdot \tilde{p}_{2} } \right)} \\ \vdots \\ 0 \\ \end{array} \begin{array}{*{20}c} \ldots \\ \ldots \\ \ddots \\ \ldots \\ \end{array} \begin{array}{*{20}c} 0 \\ 0 \\ \vdots \\ {\left( {\tilde{p}_{m} \cdot \tilde{p}_{m} } \right)} \\ \end{array} } \right]. $$
(15)

To enable the KDP in the OMLS (OMLS_k), a modified weight function of Eq. (10) can be used.

We further use shifted and scaled polynomials to improve the conditioning of the moment matrix. Its details can be found in [2].

3.3 MLPG Formulation

The Laplace equation governs the potential flow. The global domain and boundary are represented as Ω and Γ, respectively.

$$ \begin{aligned} \nabla^{2} u & = 0\quad {\text{in}}\,\Omega \\ u\left( {{\mathbf{x}}} \right) & = \overline{u}\left( {{\mathbf{x}}} \right)\quad {\text{for}}\,{{\mathbf{x}}} \in {\Gamma }_{e} \\ \partial u\left( {{\mathbf{x}}} \right)/\partial n & = \overline{q}\left( {{\mathbf{x}}} \right)\quad {\text{for}}\,{{\mathbf{x}}} \in {\Gamma }_{n} , \\ \end{aligned} $$
(16)

u is the potential function, \(\overline{u} \) is the specified value of potential function on the global Essential boundary Γe, \(\overline{q} \) is the specified value on the global Natural boundary Γn, where \({\Gamma }_{e} \cup {\Gamma }_{n} = {\Gamma }\). The weighted residual statement for the above equation can be written as

$$ \mathop \int \limits_{{{\Omega }_{Q} }}^{{}} \nabla^{2} u\nu {\text{d}}\Omega = 0 , $$
(17)

where ΩQ is a local quadrature domain and ν is the test function. The above equation can be written in the weak form by applying the divergence theorem to reduce the continuity requirement. The equation in the vector notation can be written as

$$ \mathop \int \limits_{{{\Gamma }_{Q} }}^{{}} u_{^{\prime}x} n_{x} \nu {\text{d}}\Gamma - \mathop \int \limits_{{{\Omega }_{Q} }}^{{}} u_{^{\prime}x} \nu_{^{\prime}x} {\text{d}}\Omega = 0, $$
(18)

where ΓQ denotes the boundary of ΩQ. We use vector notation, subscript, x denotes derivative with respect to the spatial coordinate. In the first term, the weak MLPG form can be written for three possible types of ΓQ

$$ \mathop \int \limits_{{{\Gamma }_{Qe} }}^{{}} u_{^{\prime}x} n_{x} \nu {\text{ d}}\Gamma + \mathop \int \limits_{{{\Gamma }_{Qn} }}^{{}} u_{^{\prime}x} n_{x} \nu {\text{d}}\Gamma + \mathop \int \limits_{{{\Gamma }_{{Q{\text{in}}}} }}^{{}} u_{^{\prime}x} n_{x} \nu {\text{ d}}\Gamma - \mathop \int \limits_{{{\Omega }_{Q} }}^{{}} u_{^{\prime}x} \nu_{^{\prime}x} {\text{d}}\Omega = 0 , $$
(19)

where ΓQe is a part of ΓQ that intersects Γe, ΓQn is a part of the local domain boundary that intersects Γn, and ΓQin is a part of the local domain boundary that does not intersect \({\Gamma }\). The test function in the MLPG method is chosen so that it vanishes at ΓQin, then the line integral term for ΓQin from Eq. (19) becomes zero. A discretization of the MLPG form leads to the system of algebraic equations given by

$$ {\varvec{Ku}} = {\varvec{F}}, $$
(20)

where K is the global system matrix (traditionally named the stiffness matrix), u is the vector of unknown field variable, and F is the force vector. The elements of the matrix K and the vector F are as follows:

$$ K_{{ij}} = \left\{ {\begin{array}{*{20}l} {\phi _{j} \left( {{\mathbf{x}}_{i} } \right)} \hfill & {{\mathbf{x}}_{i} \in \Gamma _{e} } \hfill \\ {\int\limits_{{\Gamma _{{Qe}} }}^{{}} {\phi _{{j,x}} } \left( {\mathbf{x}} \right)n_{x} \nu \left( {x,{\mathbf{x}}_{i} } \right){\text{d}}\Gamma - \int\limits_{{\Omega _{Q} }}^{{}} {\phi _{{j,x}} } \left( {\mathbf{x}} \right)\nu _{{,x}} \left( {{\mathbf{x}},{\mathbf{x}}_{i} } \right){\text{d}}\Omega } \hfill & {{\mathbf{x}}_{i} \notin \Gamma } \hfill \\ \end{array} } \right., $$
(21)
$$ F_{i} = \left\{ {\begin{array}{*{20}l} {\overline{u}\left( {{{\mathbf{x}}}_{i} } \right)} \hfill & {{{\mathbf{x}}}_{i} \in {\Gamma }_{e} } \hfill \\ { - \mathop \int \limits_{{{\Gamma }_{Qn} }}^{{}} \overline{q}\nu \left( {{{\mathbf{x}}},{{\mathbf{x}}}_{i} } \right){\text{d}}\Gamma } \hfill & {{{\mathbf{x}}}_{i} \notin \Gamma } \hfill \\ \end{array} } \right.. $$
(22)

The indices i and j represent computational node number and number of nodes in the support domain of the node i, respectively. In the MLPG method based on MLS and OMLS, the direct interpolation method is used to impose essential boundary condition, and in the MLPG method based on IIMLS, MLS_k and OMLS_k, the EBC can be directly imposed, in the same way as in the FEM.

Test Function

The MLPG test function is a quadratic function proposed in [7]

$$ \nu \left( {{{\mathbf{x}}},{{\mathbf{x}}}_{i} } \right) = \left\{ {\begin{array}{*{20}l} {\left( {1 - \left( {\frac{{x_{1} - x_{1i} }}{{a_{Q} \left( {{{\mathbf{x}}}_{i} } \right)/2}}} \right)} \right)^{2} \cdot \left( {1 - \left( {\frac{{x_{2} - x_{2i} }}{{a_{Q} \left( {{{\mathbf{x}}}_{i} } \right)/2}}} \right)} \right)^{2} } \hfill & {{\text{if}}\,(x_{1} ,x_{2} ) \in {\Omega }_{Qi} } \hfill \\ 0 \hfill & {{\text{if}}\,(x_{1} ,x_{2} ) \notin {\Omega }_{Qi} ,} \hfill \\ \end{array} } \right. $$
(23)

where \(a_{Q} \left( {{{\mathbf{x}}}_{i} } \right) = {\upbeta }_{Q} r_{s} \left( {{{\mathbf{x}}}_{i} } \right)\), \(a_{Q} \left( {{{\mathbf{x}}}_{i} } \right)\) is the edge of the local quadrature domain, \({\upbeta }_{Q}\) is the proportionality parameter, and rs(xi) is the radius of the support domain of point xi.

4 Results and Discussion

Four improved MLPG methods have been developed, namely, MLPG_k, IIMLPG, OMLPG, and OMLPG_based on MLS scheme with modified weight function (MLS_k), improved interpolating MLS (IIMLS), MLS based on orthogonal basis function (OMLS) and OMLS with modified weight function (OMLS_k), respectively. Their performance is analysed and compared with the original MLPG method, based on a standard MLS scheme, regarding accuracy level, convergence behaviour, and computational speed for the potential flow problem. The MLPG computer code is developed on the C/C++ platform. The Laplace equation has been solved on two-dimensional non-rectangular domain with both EBC and Natural boundary conditions as shown in Fig. 1.

Fig. 1
A diagram of a domain within a rectangular boundary of length L = 4, and width W equals 2. A shaded arc of radius a = 1 is marked at the bottom right corner with u equals 0. The top and left edges have u specified. The bottom edge has u = 0. The right edge has d u over d n = 0.

Schematic diagram of the 2D non-rectangular domain with boundary conditions [8]

Results of the MLPG code have been verified with the exact analytical solution of the problem which is

$$ u = x_{2} \left[ {1.0 - 1.0/\left\{ {\left( {x_{2} } \right)^{2} - \left( {x_{1} - L} \right)^{2} } \right\}} \right], $$
(24)

where u is the potential function, L is the length of the domain, x1 and x2 are spatial coordinates. Two error norms have been used in the current work, absolute l1 norm is defined as

$$ {\text{Err\_}}l_{1} = \left| {u_{i} - u_{i}^{e} } \right|, $$
(25)

where ui and \(u_{i}^{e}\) are approximate and exact values at the evaluation point i, respectively, and l2 norm is defined as

$$ {\text{Rerr\_}}l_{2} = 100 \times \sqrt {\mathop \sum \limits_{i = 1}^{N} \left( {u_{i} - u_{i}^{e} } \right)^{2} } /\sqrt {\mathop \sum \limits_{i = 1}^{N} \left( {u_{i}^{e} } \right)^{2} ,} $$
(26)

where N is the number of discretization nodes.

Often, there are two types of grid, discretisation grid, and evaluation grid. The MLPG solution is obtained on discretised grid points and further re-evaluated on evaluation grid points. In Fig. 2, the distribution of 30 discretised and 114 evaluation grid points in the domain are shown.

Fig. 2
A diagram of a grid within the domain with a curved bottom right corner, that plots x 2 versus x 1. Discretized nodes arranged along the edges and within the domain have re-evaluation grid points in between.

Schematic diagram of the 2D non-rectangular domain with boundary conditions [2]

Tests have been performed for different sets of parameters such as the different number of nodes in the support domain ns, different sizes of the local support domain by varying the proportionality parameter and the different number of Gaussian points in the local integration domain. The quadratic basis has been chosen in the MLS variants as it appears to be an optimum. Results obtained with optimised parameters are shown here, i.e. 3 × 3 Gaussian points in the local integration domain, proportionality parameter βQ = 0.7 and ns = 13. First, the MLPG solution is obtained on the discretised grid, and then it is re-evaluated on the evaluation grid. Numerical experiments have been performed for different sizes of grids.

In Fig. 3, a comparison of analytical solution (top) with numerical MLPG solution (bottom) for 168 discretised and 717 evaluation points respectively is shown. Contour plots of constant potential lines are shown in the domain. Satisfactory result is found even for the coarser grid. The solution contour plots of other MLPG variants are visually similar to the MLPG method; thus, they are not shown.

Fig. 3
2 contour plots that plot x 2 versus x 1 in the domain with a curved bottom right corner. The contour lines for exact and M L P G have values 1.75, 1.50, 1.25, 1.00, 0.75, 0.50, and 0.25 from the top to bottom, with a value of 0.00 along the curved bottom right corner.

Comparison of analytical solution (top) with numerical MLPG solution (bottom)

The computational efficiency, of all the selected MLS variants in the MLPG method, relative to the original MLS, has been tested (Fig. 4). The IIMLS method is the most computationally expensive due to its complicated shape function generation procedure. The OMLS method is the fastest and almost 10% more efficient as the original MLS method. As it does not possess KDP, the use of the modified weight function in the OMLS enables KDP, and based on it, the OMLS_k method is approximately 8% more efficient than the original MLS method. There is the little trade-off between possessing KDP and computational efficiency.

Fig. 4
A multiline graph of computational efficiency relative to M L S in percentage versus discretization nodes. The increasing line for O M L S is the highest from (100, 0) to (10 to the power 6, 10) followed by O M L S k and M L S k. I I M L S is the lowest and increases from (100, negative 40).

Computational efficiency of MLPG with different MLS variants relative to MLS [2]

The results of MLPG and OMLPG are identical, and similarly, the results of MLPG_k and OMLPG_k are identical. The OMLPG_k seems to be optimum, and thus, we show only its convergence with the original MLPG method in Fig. 5; however, the IIMLPG method exhibits similar convergence behaviour. The x-axis shows the number of discretised grid points, and the y-axis shows the error. The convergence behaviour of both methods based on the l2 norm (top) and l1 norm (bottom) is shown in Fig. 5. Slight waviness in convergence can be seen, nevertheless, good and almost similar convergence behaviour and good accuracy level are found.

Fig. 5
2 double line graphs. Top. R e r r l 2 versus discretized nodes. The decreasing line for M L P G ends higher than the line for O M L P G k, at around 0.01 on the y-axis. Bottom. E r r l 1 versus discretized nodes. The decreasing line for M L P G ends higher than the line for O M L P G k, above 0.01.

Convergence of MLPG and OMLPG_k methods based on l2 norm (top) and l1 norm (bottom)

The accuracy level and convergence behaviour of all the selected methods are found almost similar and satisfactory. The IIMLPG possesses KDP; however, it is more computationally expensive than MLPG and MLPG_k. The OMLPG is almost 10% faster than the MLPG method; however, it does not possess KDP. The use of modified weight function in the OMLPG method enables KDP at the cost slight decrease in computational speed. Hence, OMLPG_k seems to be the optimum method which resolves both the problems, imposition of essential boundary conditions and moderate computational speed.

5 Conclusions

Four improved MLPG methods have been developed, i.e. MLPG_k, IIMLPG, OMLPG, and OMLPG_based on MLS scheme with modified weight function (MLS_k), improved interpolating MLS (IIMLS), MLS based on orthogonal basis function (OMLS) and OMLS with modified weight function (OMLS_k), respectively. Their performance is analysed and compared with the original MLPG method based on accuracy level, convergence behaviour, and computational speed for potential flow problem. The accuracy level and convergence behaviour of all the selected methods are found almost similar and satisfactory. The IIMLPG possesses KDP; however, it is more computationally expensive than MLPG and MLPG_k. The OMLPG is almost 10% faster than the MLPG method; however, it does not possess KDP. The use of the modified weight function in the OMLPG method enables KDP at the cost of slight decrease in the computational speed. Hence, OMLPG_k seems to be the optimum method which resolves both the problems, imposition of essential boundary condition and increase of computational speed.