HOME

TheInfoList



OR:

In
mathematics Mathematics is an area of knowledge that includes the topics of numbers, formulas and related structures, shapes and the spaces in which they are contained, and quantities and their changes. These topics are represented in modern mathematics ...
, numerical analysis, and numerical partial differential equations, domain decomposition methods solve a
boundary value problem In mathematics, in the field of differential equations, a boundary value problem is a differential equation together with a set of additional constraints, called the boundary conditions. A solution to a boundary value problem is a solution to t ...
by splitting it into smaller boundary value problems on subdomains and iterating to coordinate the solution between adjacent subdomains. A coarse problem with one or few unknowns per subdomain is used to further coordinate the solution between the subdomains globally. The problems on the subdomains are independent, which makes domain decomposition methods suitable for
parallel computing Parallel computing is a type of computation in which many calculations or processes are carried out simultaneously. Large problems can often be divided into smaller ones, which can then be solved at the same time. There are several different fo ...
. Domain decomposition methods are typically used as preconditioners for
Krylov space In linear algebra, the order-''r'' Krylov subspace generated by an ''n''-by-''n'' matrix ''A'' and a vector ''b'' of dimension ''n'' is the linear subspace spanned by the images of ''b'' under the first ''r'' powers of ''A'' (starting from A^0=I), ...
iterative methods, such as the
conjugate gradient method In mathematics, the conjugate gradient method is an algorithm for the numerical solution of particular systems of linear equations, namely those whose matrix is positive-definite. The conjugate gradient method is often implemented as an iterativ ...
, GMRES, and LOBPCG. In overlapping domain decomposition methods, the subdomains overlap by more than the interface. Overlapping domain decomposition methods include the Schwarz alternating method and the additive Schwarz method. Many domain decomposition methods can be written and analyzed as a special case of the abstract additive Schwarz method. In non-overlapping methods, the subdomains intersect only on their interface. In primal methods, such as Balancing domain decomposition and
BDDC In numerical analysis, BDDC (balancing domain decomposition by constraints) is a domain decomposition method for solving large symmetric, positive definite systems of linear equations that arise from the finite element method. BDDC is used as a prec ...
, the continuity of the solution across subdomain interface is enforced by representing the value of the solution on all neighboring subdomains by the same unknown. In dual methods, such as FETI, the continuity of the solution across the subdomain interface is enforced by Lagrange multipliers. The FETI-DP method is hybrid between a dual and a primal method. Non-overlapping domain decomposition methods are also called iterative substructuring methods. Mortar methods are discretization methods for partial differential equations, which use separate discretization on nonoverlapping subdomains. The meshes on the subdomains do not match on the interface, and the equality of the solution is enforced by Lagrange multipliers, judiciously chosen to preserve the accuracy of the solution. In the engineering practice in the finite element method, continuity of solutions between non-matching subdomains is implemented by multiple-point constraints. Finite element simulations of moderate size models require solving linear systems with millions of unknowns. Several hours per time step is an average sequential run time, therefore, parallel computing is a necessity. Domain decomposition methods embody large potential for a parallelization of the finite element methods, and serve a basis for distributed, parallel computations.


Example 1: 1D Linear BVP

u''(x)-u(x)=0
u(0)=0, u(1)=1
The exact solution is:
u(x)=\frac
Subdivide the domain into two subdomains, one from \left ,\frac\right/math> and another from \left frac,1\right/math>. In the left subdomain define the interpolating function v_1(x) and in the right define v_2 (x) . At the interface between these two subdomains the following interface conditions shall be imposed:
v_1\left(\frac\right)=v_2 \left(\frac\right)
v_1'\left(\frac\right)=v_2'\left(\frac\right)
Let the interpolating functions be defined as:
v_1 (x) =\sum_^ u_ T_n (y_1(x))
v_2 (x) =\sum_^ u_ T_n (y_2(x))
y_1(x)=4x-1
y_2(x)=4x-3
Where T_n (y) is the nth cardinal function of the chebyshev polynomials of the first kind with input argument y.
If N=4 then the following approximation is obtained by this scheme:
u_1 =0.06236
u_2 =0.21495
u_3 =0.37428
u_4 =0.44341
u_5 =0.51492
u_6 =0.69972
u_7 =0.90645
This was obtained with the following MATLAB code.
clear all N = 4; a1 = 0; b1 = 1/2; D1 D2 E1 E2 x xsub= cheb(N,a1,b1); % the diff matrices on ,1/2are the same %as those on /2 1 I = eye(N+1); H = D2-I; H1 =
1 zeros(1,N) 1 (one, unit, unity) is a number representing a single or the only entity. 1 is also a numerical digit and represents a single unit of counting or measurement. For example, a line segment of ''unit length'' is a line segment of length 1. I ...
H(2:end-1,:);
eros(1,N) 1 In Greek mythology, Eros (, ; grc, Ἔρως, Érōs, Love, Desire) is the Greek god of love and sex. His Roman counterpart was Cupid ("desire").''Larousse Desk Reference Encyclopedia'', The Book People, Haydock, 1995, p. 215. In the earlie ...
; H1 = 1 [zeros(N,N+1); -[1 zeros(1,N)">eros(N,N+1);_-[1_zeros(1,N).html" ;"title="1 [zeros(N,N+1); -[1 zeros(1,N)">1 [zeros(N,N+1); -[1 zeros(1,N) H2 = [D1(1,:); H(2:end-1,:);
eros(1,N) 1 In Greek mythology, Eros (, ; grc, Ἔρως, Érōs, Love, Desire) is the Greek god of love and sex. His Roman counterpart was Cupid ("desire").''Larousse Desk Reference Encyclopedia'', The Book People, Haydock, 1995, p. 215. In the earlie ...
; H2 = -D1(N+1,:); zeros(N,N+1)] H2]; K = [H1; H2]; F = [zeros(2*N+1,1); 1]; u = K\F; xx = -cos(pi*(0:N)'/N); x1 = 1/4*(xx+1); x2 = 1/4*(xx+3); x = [x1; x2]; uex = (exp(x)-exp(-x))./(exp(1)-exp(-1));


See also

*
Multigrid method In numerical analysis, a multigrid method (MG method) is an algorithm for solving differential equations using a hierarchy of discretizations. They are an example of a class of techniques called multiresolution methods, very useful in problems exhi ...


External links


The official Domain Decomposition Methods page

Domain Decomposition - Numerical Simulations page
{{DEFAULTSORT:Domain Decomposition Methods Articles with example MATLAB/Octave code