The FMM accelerated PIES with the modified binary tree in solving potential problems for the domains with curvilinear boundaries

The paper presents an accelerating of solving potential boundary value problems (BVPs) with curvilinear boundaries by modified parametric integral equations system (PIES). The fast multipole method (FMM) known from the literature was included into modified PIES. To consider complex curvilinear shapes of a boundary, the modification of a binary tree used by the FMM is proposed. The FMM combined with the PIES, called the fast PIES, also allows a significant reduction of random access memory (RAM) utilization. Therefore, it is possible to solve complex engineering problems on a standard personal computer (PC). The proposed algorithm is based on the modified PIES and allows for obtaining accurate solutions of complex BVPs described by the curvilinear boundary at a reasonable time on the PC.


Introduction
It is a known fact that to obtain accurate results of modelling and solving boundary value problems (BVPs), the appropriate method should be applied. Nowadays, some well-established numerical methods, sometimes called classical or conventional, have professional implementations and they are well known in the industry. Andrzej Kużelewski akuzel@ii.uwb.edu.pl Eugeniusz Zieniuk ezieniuk@ii.uwb.edu.pl 1 For example, ANSYS and COMSOL Multiphysics use the finite element method (FEM) [1][2][3], while BEASY, the boundary element method (BEM) [4][5][6].
However, classical methods have some disadvantages, e.g. necessity of the boundary (or domain) discretization and pyroper selection of the shape functions. The accuracy of solutions obtained by the conventional FEM is strictly connected with the size of a mesh obtained in process of the domain discretization, thus with a number and a type of finite elements. A growing number of finite elements requires longer computations time and greater random access memory (RAM) utilization. It is noticeable, particularly in large-scale problems. The FEM usually produces large sparse matrices and uses iterative solvers. Conventional BEM (which uses collocation method) discretizes only the boundary of the problem. However, it produces dense and non-symmetric matrices and usually uses direct solvers. Thus, the process of computing coefficients of the BEM matrices performs O(N 2 ) operations and direct solver uses another O(N 3 ) operations (N-the number of equations of the system of algebraic equations). Therefore, many researchers work on new approaches which are free from the weakness of classical methods. A wide group of such methods includes, among others, FEM-BEM hybrids [7,8], meshless methods [9,10], isogeometric analysis (IgA) [11,12], the virtual element method (VEM) [13,14] or the parametric integral equations systems (PIES) [15].
One of the new approaches, isogeometric analysis, uses the FEM or the BEM extended by the set of polynomial basis functions, called Non-Uniform Rational B-spline (NURBS). It allows the exact representation of a boundary using computeraided design (CAD) tools. Also, it gives higher efficiency of automated meshing process [11]. Another approach, the VEM, uses trial functions with an unknown degree of freedom within the interior of the polygonal domain. The method does not require an extension of interpolation functions to the interior of the element [13]. It is efficient in solving problems with polygonal meshes. However, the computational effort of the method is high due to complex procedures used by the VEM.
The method called PIES proposed and applied in solving different kinds of BVPs by the authors of this paper is still developed. The PIES has already been used to solve 2D and 3D problems described by Laplace's [15], Helmholtz [16] or Navier-Lamé equations [17]. The remarkable advantage of the method is direct inclusion of the shape of the boundary into the mathematical formalism of the PIES. It implies lack of discretization either boundary or domain contrary to the BEM and the FEM. Some parametric functions known from computer graphics are applied to describe the shape of the boundary in the PIES (among others, Bézier, B-spline curves and Coons, Bézier surface patches). Another advantage is that these functions require only a small number of control points to define any shape of the boundary, which is more efficient than the discretization process. At last, to improve the accuracy of solutions, remodelling of the shape of the boundary is unnecessary [15] contrary to the BEM and the FEM where the process of discretization should be repeated.
The former studies confirmed the accuracy of the PIES in solving 2D and 3D engineering problems in comparison to the analytical and classical numerical methods, e.g. [15][16][17]. The authors of this paper also have worked on the extension of the PIES method to solve uncertainly defined problems [18,19]. However, similarly to the classic BEM, conventional PIES produces dense and non-symmetric matrices, therefore solving of a complex or large-scale engineering problems needs a huge amount of the RAM and time-consuming computations.
Acceleration of numerical computations is usually performed using parallelization methods on the computational clusters [20] or multiprocessor machines. The most popular methods are the message passing interface (MPI) and open multi-processing (OpenMP) (e.g. applied in [21,22]). Another very common method is the application of graphics processing unit (GPU) for numerical calculations (by CUDA or OpenCL) [23,24]. In previous studies, the authors of this paper applied above-mentioned techniques to accelerate the PIES. OpenMP technology is used in the research described in [25], while the acceleration of numerical computations of integrals in the PIES by CUDA is presented in [26,27]. These approaches significantly reduce the time of computations. However, the problem of huge utilization of the RAM in PC is still not solved. Complex or large-scale engineering problems cannot be solved in standard PC.
In the mid of 1980s, Rokhlin and Greengard proposed the fast multipole method (FMM) [28][29][30]. The method significantly reduces the computation time of the numerical problem to order O(NlogN). However, the most important is huge reducing the RAM utilization. There are efficient implementations of the FMM for solving potential problems [31,32], also by the BEM [33,34]. Therefore, the authors of this paper have modified the PIES to include the FMM, and the fast PIES was obtained [35]. Application of the FMM increased the difficulty of implementation of the method. However, the proposed approach gives accurate solutions in a short time for problems with a quite simple shape of the boundary. Unfortunately, the application of a classic binary tree in the FMM may result in obtaining incorrect solutions for complex shapes of a boundary (e.g. heat sink) in the fast PIES. It is connected with the way of defining the boundary in the PIES-the 2D problem is mapped into 1D parametric reference system. The binary tree is built based on the 1D system, while neighbourhood in the FMM is based on the physical coordinates. Therefore, the modification of the binary tree and some changes in the FMM algorithm is required to consider the complex shapes of a boundary.
The main goal of this paper is to present the FMM accelerated PIES (called the fast PIES) applied for numerical solving of complex curvilinear 2D potential BVPs. The FMM algorithm and the binary tree are modified to allow solving the problems with the complex shape of a boundary. The fast PIES reduces memory utilization of PC and accelerates numerical solving of BVPs. The efficiency and accuracy of the fast PIES are tested on curvilinear 2D potential BVPs.

Conventional PIES for curvilinear 2D potential BVPs
Conventional PIES for 2D potential problems was obtained as the result of analytical modification of boundary integral equation (BIE) [15]. The modification includes the shape of boundary into mathematical formalism of BIE. The shape of boundary is defined on 1D parametric line s by parametric linear or curvilinear functions  Fig. 1). The PIES for the potential problem with smooth boundary is presented by the following formula [15]: where n is the number of parametric segments that creates boundary of domain in 2D, s l−1 and s j −1 correspond to the beginning of lth and j th segments, while s l and s j to their ends and J j (s) is the Jacobian. Integrands U * lj ( s, s) and P * lj ( s, s) in (1) are presented in the following form: where S (1) = S Expressions S (i) k (s n ) ( i = {1, 2}, k = {j, l} s n = { s, s}) are parametric curves, which define particular segments of curvilinear boundary of the problem. In this paper the following Bézier curves of the third degree are applied: where i is the direction of coordinates in 2D Cartesian reference system (see in Fig. 1), coefficients a (i) k describing particular segments of the boundary are computed using the points which define the curves (see in Fig. 2): Boundary functions u j (s) and p j (s) in (1) are approximated by the following series: where u (k) j and p (k) j are unknown or given values of boundary functions in defined points of the segment j , N is the number of terms in approximating series (4), which approximated boundary functions on the segment j , and L (k) j (s) is the base functions (Lagrange polynomials) on segment j .
In previous researches, the collocation method [36] was applied to solve the PIES (1); thus, the system of algebraic equations Ax=b was obtained. Solutions on the boundary are obtained directly after solving the system. We try to use different methods to solve the system. Own implementation of Gaussian elimination method with partial pivoting was too slow; therefore, we applied LU decomposition with partial pivoting and row interchanges available in LAPACK library [37] (presented in [35,38]). The CPU time of solving the system of 4096 equations decreases from 60 to 4 s. However, it did not affect the huge RAM utilization of the method.
In the presented research, we also applied the generalized minimal residual iterative solver (GMRES) [39] to the PIES. It is well known that iterative solvers require substantially less memory and computational effort compared to direct solvers for Fig. 2 Bézier curve of the third degree used to define segment of the boundary in the PIES large linear systems. Described below the fast PIES uses GMRES and application of the same solver should be better to compare the conventional PIES and the fast PIES to quantify the obtained improvements from the use of a modified binary tree in the FMM.

The PIES kernels modification
First of all, to accelerate the process of solving equation (1) the authors of this paper modified the PIES kernels [35]. The modification of the PIES was necessary due to the need of calculation of subsequent derivatives of kernels (2) for the Taylor series approximation used by the FMM. It should be noted that the function S (1) 2 + S (2) 2 under the logarithm in the kernel U * lj ( s, s) has the form similar to magnitude (absolute value) of a complex function. Therefore, where (c) means complex variable, the imaginary unit (an indeterminate) i = √ −1 and is the real part of complex number. For simplification, the parametric functions (3) in modified PIES are described as τ and τ : The collocation point s is on the segment τ while the observation point s on τ .
Similarly to the kernel U * lj ( s, s), the kernel P * lj ( s, s) can be described using complex notation: where n (c) = n (1) + in (2) is the complex notation of normal vector to the curve, which creates segment j , while Therefore, the complex form of kernels (2) (called as modified kernels) has the following form: The FMM can be include into these kernels in easy and efficient way. Finally, the PIES with modified kernels have the following form:

Implementation of the FMM into modified PIES
The main idea of the FMM is to transform interactions between some elements into interactions between the cells that create the hierarchical structure (tree) with the smallest cells (called leaves) containing some elements. In classic FMM, the binary tree for 1D, quad-tree for 2D and octa-tree for 3D problems are applied. In this paper, 2D problems are discussed; hence, the way of constructing quad-tree for classic FMM implementation is presented in Fig. 3. The level 0 cell is a square surrounding the entire domain of the problem (Fig. 3a). This cell (called a parent) is divided into four identical squares-cells of the level 1. Only the cell crossing the boundary of the problem is considered. This cell is called a child. Generally, the parent cell of level k (k ≥ 0) is divided into children cells of a level k +1. The division is performed until the assumed maximum level of k has been reached or the predetermined number of elements are inside a cell. A childless cell is called a leaf. Figure 3b presents a quad-tree obtained in the described way. This kind of tree is used, among others, by the FMM accelerated BEM (FMBEM) [33].

Modification of binary tree in the PIES
The PIES for 2D potential problems is defined in 1D parametric reference system s, s (presented in Fig. 1). Therefore, the binary tree structure for the PIES created in the parametric space can be used. It is more simple than quad-tree in the FMBEM. In the classic FMM, the binary tree for 1D problems has the form presented in Fig. 4b.  Fig. 3 a Constructing the FMM tree in the FMBEM, b structure of obtained quad-tree for 2D problem However, the FMM definition based on the physical coordinates and some cells which are far away in the parametric space might be close in physical coordinates (e.g. the first and the last parametric segment which are neighbours in the closed curve). Therefore, the modified binary tree in the form presented in Fig. 4c is proposed [40]. In each level, the first and the last cells are treated as neighbours.
Similarly to mentioned quad-tree, a level 0 cell covers the entire boundary of the problem (presented in Fig. 4a). It is the parent of two identical children cells of level 1 obtained as a result of dividing level 0 cell. Generally, the parent cell of level k (l ≥ 0) is divided into two level k + 1 children cells. The division is performed until a predetermined number of segments are inside a cell or the assumed maximum level of k has been reached.

The fast multipole procedure for modified PIES
The fast multipole procedure is composed of two main steps: making calculations of multipole moments during tracing tree structure upward (called upward pass) and making calculations of local expansions to the smallest cells tracing the tree structure downward (called downward pass).
The first is upward pass. First of all, the point s c called mid-point of a leaf (see in Fig. 1) is introduced. This point is the key element of the FMM. The point s c corresponds to complex point τ c . Assuming that s c is close to the observation point s ob (presented in Fig. 1), kernels U * (c) lj ( τ , τ ) and P * (c) lj ( τ , τ ) can be expanded about τ using the Taylor series expansion: Substituting kernels (7) into integrals (6), the following expressions are obtained: where and M k (τ c ) and N k (τ c ) are called moments about τ c [33] and they should be computed only once. Moments are independent from τ as well as from s. Computation of moments is often called moment expansion.
The moment expansion is used to calculate moments in the leaves only. However, the FMM procedure assumes, that the point s c can be moved to a new location s c in the bigger cell (presented in Fig. 5). The change of the tree level does not require recalculation of moments in points τ c .
Substituting τ c directly to formulas (9), the following expressions are obtained: Considering that: k! and using the following binomial formula: finally we obtain moments about τ c : using a finite number of terms in the translation. The procedure of calculation of the moments in points τ c is called moment-to-moment translation. The process described above is called the upward pass, due to the direction of levels change in the tree structure during computations (see in Fig. 5).

Fig. 5 The upward pass translations
Similarly to the upward pass, a new point s el (corresponding to complex point τ el ) close to the collocation point s col is introduced (see in Fig. 1). Therefore, (8) can be expanded about τ el using the Taylor series expansion: where Similarly to s c , points s el are mid-points of leaves and they correspond to complex points τ el . This procedure is called moment-to-local translation.
Next part of computations is connected with the downward pass. Tracing the tree structure downward we need to change the tree levels again. Therefore, the point s el can be moved to a new location s el (see in Fig. 6). The procedure is called local-tolocal translation.
Applying the binomial formula (11) and the following transformation: the following forms of integrals (1) are finally obtained: Fig. 6 The downward pass translations

The algorithm of the FMM accelerated PIES
The algorithm of FMM accelerated PIES proceeds in the following steps (presented in Fig. 7): determination of the modified tree structure, calculation of the right-hand sided vector b and solution of the system of algebraic equations using GMRES solver. The modified binary tree structure of the FMM combined with the PIES is created based on 2D problems mapped into a parametric reference system (presented in Fig. 1 and described in Section 4.1). The next step is the calculation of the right-hand sided vector b using the first run of the fast multipole procedure. The FMM is composed of two steps: the upward pass and the downward pass. In the upward pass (presented in Algorithm 1) at the lowest level of the tree, all moments in leaves are calculated using the moment expansion procedure (line 4). Next, tracing the tree structure upward up to level 2, moments in all parent cells are calculated using moment-to-moment translation (line 6), as is presented in Fig. 4.
These moments are used during calculations performed in the downward pass. To present this step, it should be reminded some information about cells neighbourhood [35]. Three relations between any two cells are described in classic FMM-cells might be adj acent, well-separated or f ar (presented in Fig. 8). Cells are adj acent at level i, if they have a common end at level i. They are wellseparated at level i, if they are not adjacent at level i, but their parent cells are adjacent at level i − 1. The list of cells well-separated from cell K at level i is called interaction list of cell K. The last relation occurs when parents are not adjacent-cells are f ar at level i.
The PIES for 2D potential problems is defined in 1D parametric reference system, unlike the FMM which is based on the physical coordinates of 2D problem. Hence, for complex problems some cells which are far away in the parametric space might be close in physical coordinates. Therefore, in the FMM accelerated PIES relations between cells are modified. Two cells K and L are not adjacent at level i if the distance between K and L mid-points is much bigger than the distance between where τ colK , τ colL are vectors of all collocation (observation) points coordinates in complex notation in the cells K and L. W ell-separated cells at level i are not adj acent on level i, while their parents are adj acent at level i−1.
Other cells are f ar at level i. Therefore, the FMM algorithm described in [35] should be modified to take into consideration new description of relations between cells.
Tracing the tree structure downward from level 2, coefficients of local expansion for all leaves (the line 15 in Algorithm 2) are computed.
Coefficients of the cell K at level i are the sum of two contributions: from all far cells (computed using the local-to-local procedure in line 4) and from well-separated cells (computed using the moment-to-local procedure in line 11). At level 2, far cells to the cell K are absent; therefore, the moment-to-local procedure is used to compute coefficients. At the lowest level, contributions from adjacent cells of the leaf K are computed using directly (direct procedure presented in line 9), i.e. in the same way as in conventional PIES. At last, a right-hand sided vector b is produced by the FMM with modified relations between cells.
The FMM accelerated PIES produces the system of algebraic equations implicitly, unlike conventional PIES. Application of iterative GMRES solver requires the multiplication of the matrix A by the vector of unknowns x procedure, which is the result of the FMM. The solver is directly integrated with the FMM and replaces Gaussian elimination applied in conventional PIES.
The FMM algorithm in GMRES is performed in the same way as for vector b. Algorithm 3 presents the FMM accelerated PIES algorithm.
The modified binary tree is created based on the parameters of the problem (see line 1). The next step is calculating the right-sided vector b by the FMM procedure with modified relations between cells (in lines 2-4). Then, the GMRES solver integrated with the FMM procedure is used (in lines 5-7). At last, results of the fast PIES, i.e. the vector of solutions x, are written to a file (see line 8).

Tests of proposed algorithm
Tests are performed on standard PC based on Intel Core i5-4590S with 8 GB RAM and g++ 7.4.0 compiler with -O2 optimization on 64-bit Linux operation system (Ubuntu, kernel 5.3.0) is used. OpenBLAS 0.3.7 (uses BLAS and LAPACK 3.10.3) is used in the implementation of the fast PIES and GMRES procedure in conventional PIES.

The study of the FMM parameters
First of all, we want to find proper parameters connected with the FMM, such as the number of tree levels, the number of terms in the Taylor series approximated PIES kernels and the value of GMRES tolerance. These parameters have a significant impact on CPU time and RAM utilization of the fast PIES. Two potential boundary problems presented in Fig. 9 are considered.
The first example is the gear-shaped problem described by Laplace's equation (presented in the upper part of Fig. 9). We used 512 curvilinear segments (Bézier Fig. 9 Shapes of boundaries of considered problems curves of the third degree) to model the gear composed of 256 teeth. Boundary conditions are the same in each tooth and they are presented in Fig. 9 (where u is Dirichlet and p is Neumann boundary conditions). We used the same number of collocation points on each segment (from 2 to 8) and finally the system of 1024 to 4096 algebraic equations is solved.
The second example is the cross-shaped plate (also described by Laplace's equation), presented in the bottom part of Fig. 9. The boundary is composed of 376 segments (160 curvilinear and 216 linear). Boundary conditions are presented in Fig. 9. Similarly to the previous example, the same number of collocation points on each segment (from 2 to 8) are used, and the system of 752 to 3008 algebraic equations is solved.

The number of tree levels
The first research focused on the influence of the number of tree levels (hence the maximum number of segments in a cell) on the speed of computations, RAM utilization and accuracy of the fast PIES. Approximation of the modified PIES kernels uses 25 terms in the Taylor series, and the GMRES tolerance is equal to 10 −8 .
As can be seen from Figs. 10 and 11, both CPU time and RAM utilization decrease with the growing number of tree levels reaching the minimum value for about 6-7 levels regardless of the number of collocation points. Hence, the next tests are carried out for 7 tree levels in the FMM accelerated PIES.
As can be seen from Table 1, the mean square error (MSE) between the fast PIES and conventional versions of the PIES is on almost the same very low level in both examples and not exceed 10 −8 . Hence, the fast PIES is as accurate as both versions of conventional PIES.

The GMRES tolerance
In the next step, we focused on the comparison of the accuracy of solutions obtained by the FMM accelerated PIES with the conventional PIES for different GMRES tolerance values. The PIES with direct solver P I ES d is considered due to higher MSE obtained in the previous example. The number of terms in Taylor series, which approximate the PIES kernels, is again set to 25. The number of FMM tree levels is equal to 7.
As can be seen from Fig. 12, the MSE calculated between the solutions obtained by the fast and conventional PIES for the GMRES tolerance value less or equal 10 −8 , regardless of the number of equations, is on a very low level and not exceed 10 −9 . An increase in the MSE of solutions is noticeable for the tolerance values 10 −6 and higher. Hence, the next tests are carried out for the GMRES tolerance value equal to 10 −8 .

The number of terms in the Taylor series
Next research concerns on the influence of the number of terms in the Taylor series on the accuracy of the fast PIES solutions for a different number of collocation points. Similarly to the previous example, the PIES with direct solver P I ES d is considered.
The number of the FMM tree levels is set to 7 and the GMRES tolerance value is equal 10 −8 . As can be seen from Fig. 13, a growing number of terms in the Taylor series weakly affects the accuracy of solutions. It means, that even 15 terms in the Taylor series are sufficient to accurately approximate PIES kernels. The MSE, regardless of the defined number of collocation points, has a very low value. Additionally, a growing number of terms in the Taylor series has a slight impact on the time of computation. 15 20 25 30 Number of terms in Taylor series

Comparison of the speed and RAM utilization of the fast and conventional PIES
The tests involved a comparison of the speed and RAM utilization between the FMM accelerated PIES (f P I ES) and two conventional PIES versions (P I ES d and P I ES i ) for the gear-shaped and the cross-shaped problems. The convergence criterion of the GMRES is equal to 10 −8 . We assumed 25 terms in the Taylor series, which approximate the modified PIES kernels and 7 levels of the FMM tree. The number of collocation points was the same on each segment (from 2 to 8).
The CPU time and RAM utilization of the FMM accelerated PIES compared to both conventional PIES versions are presented in Table 2.
The fast PIES is significantly faster than any conventional PIES version-the computation time of the FMM accelerated PIES grows linearly contrary to almost square increase in conventional PIES (see in Fig. 14). The fast PIES also needs up to 20 times less RAM during computations-memory utilization of both methods is presented in Fig. 14.
Presented tests involve a rather small number of equations, therefore require less than 400 MB of RAM with the conventional versions of PIES. Thus, we prepared another example of the gear-shaped problem to show the advantage of the FMM accelerated PIES. The main difference from the first problem is a greater number of  Comparison of the speed and RAM utilization of the fast and conventional PIES is presented in Fig. 15.
As can be seen, the efficiency of fast PIES grows significantly with an increasing number of equations. It is most noticeable for RAM utilization. High accuracy of solutions is also preserved-MSE between the fast and conventional PIES not exceed 4.32 · 10 −10 .

Comparison of the speed and RAM utilization of the fast PIES and the FMBEM
The last test is connected with a comparison between the fast PIES and the fast multipole BEM (FMBEM) [33]. We considered the problem of temperature distribution in heat sink (the shape of the boundary and boundary conditions are shown in Fig. 16).
The boundary in the fast PIES is composed of 716 linear segments. The same number of collocation points (4 and 8) is defined on each segment, and finally, we should solve the system of algebraic equations composed of 2864 and 5728 equations. The boundary in the FMBEM is also discretized by 2864 and 5728 elements to obtain the same size of algebraic equations systems as in the fast PIES. The value of tolerance (convergence criterion) of the GMRES and the number of terms in the Taylor series is the same as previous, i.e. 10 −8 and 25 respectively. The accuracy of the solutions is calculated as the mean square error (MSE) between the results of the fast PIES and the fast multipole BEM.
As can be seen from Table 3, the fast PIES is about 2 times faster than the FMBEM. The RAM utilization is on the same level. The MSE between the fast PIES and the fast multipole BEM is not as small as in previous examples. Our previous studies on the accuracy of the conventional PIES (e.g. [15]) proved that the PIES is more accurate than the BEM.
However, we also computed MSE between the fast PIES (2864 equations) and the FMBEM with two other meshes (composed of 11456 and 22,908 boundary elements). Therefore, we obtained two values of MSE 5.836 · 10 −5 and 4.789 · 10 −6 respectively. It proved that application of the FMBEM requires meshes with a large

Conclusions
The paper presents a new way of accelerating computations and reducing RAM utilization of the PIES applied to solve complex curvilinear potential 2D BVPs. To verify the proposed concept, the FMM is included into the PIES with modified kernels and the fast PIES is obtained. To consider the complex shapes of a boundary, the modification of the binary tree used by the FMM is presented. Numerical tests show a significant reduction of the computation time of the fast PIES compared to the conventional one, while the accuracy of solutions obtained by both methods is almost the same. The fast PIES significantly reduces utilization of RAM, therefore complex curvilinear engineering problems can be solved using a standard PC in a reasonable time.
Obtained results strongly suggest that the chosen direction of research should be continued. Presented algorithm of accelerating computations based on the FMM with modified tree and the PIES should be extended to the problems modelled by other differential equations.
Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommonshorg/licenses/by/4. 0/.