DOC PREVIEW
UMD CMSC 878R - Lecture 10 Decomposition of the matrix vector product

This preview shows page 1-2-3-4-5-6 out of 17 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 17 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 17 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 17 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 17 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 17 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 17 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 17 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

1 FMM CMSC 878R/AMSC 698R Lecture 10 Decomposition of the matrix vector product • SLFMM and FMM and related algorithms are about the approximation of the product 3 • Will always have to take points in the neighborhood and evaluate them directly2 SLFMM Algorithm Step 1. Generate S-expansion coefficients for each box For n  NonEmptySource Get xc(n) , the center of the box; loop over all non-empty source boxes For xi  E1(n) Get B (xi, xc(n)) , the S-expansion coefficients near the center of the box; C(n) = C(n) + uiB (xi, xc(n)); C(n) = 0; End; End; loop over all sources in the box R-expansion S-expansion x* xi R S Function, Local (R) and Multipole (S) expansions3 SLFMM Algorithm Step 2. (S|R)-translate expansion coefficients For n  NonEmptyEvaluation Get xc(n) , the center of the box; loop over all non-empty evaluation boxes For m  I3(n) Get xc(m) , the center of the box; D(n) = D(n) + (S|R)(xc(n)- xc(m)) C(m) ; D(n) = 0; End; End; loop over all non-empty source boxes outside the neighborhood of the n-th box Multipole to local S|R expansion4 SLFMM Algorithm Step 3. Final Summation For n  NonEmptyEvaluation Get xc(n) , the center of the box; For xi  E2(n) vj = D(n) R(yj - xc(n)) ; End; End; loop over all evaluation points in the box loop over all boxes containing evaluation points For yj  E1(n) vj = vj +(yj , xi)*ui; End; loop over all sources in the neighborhood of the n-th box ui Hierarchical Spatial Domains 5 Multiple Level FMM - 1 • Domain divided hierarchically, starting with 2d boxes • Recursively subdivide till L levels reached • Upward pass – For each source box perform at finest level • a multipole expansion of sources in a box, about the box center • Expansion valid outside neighborhood of box – Combine multipole expansions of all children of a parent to produce mutlipole expansion for parent – Repeat until level 2 reached S|S-operator for example6 S|S-operator (2) Upward Pass. Step 1. x i W W x * R x i W W x * y S-expansion valid in W   xi xc(n,L) y S-expansion valid in E3(n,L)7 Upward Pass. Step 2. S|S-translation. Build potential for the parent box (find its S-expansion). Multiple Level FMM - 2 • Downward pass – For each receiver box at level 2 – Initialize coefficients to zero – For each non-neighbor source box in the E4 domain perform a multipole to local S|R translation and add to coefficients – R-R translate to children boxes at finer level – Add S-R translation of nodes in the new E4 domain at finer level – Repeat until finest level reached – Initialize evaluation vector to zero – For each evaluation point in the box • Evaluate local expansion using coefficients above at each evaluation point and place answer in evaluation vector • For each source in the box and its neighborhood evaluate the source contribution directly8 S|R for example case S|R-translation9 R|R-operator for example case R|R-operator(2)10 R|R-reexpansion of the same function over shifted basis (2) |y - x* - t| < r 1 = r - |t| W  W 2 x *1 x *2 R (R|R) x R Wr(x*) x * (R|R) y x*+t t r Wr1(x*+t) Since Wr1(x*+t)  Wr(t) ! Original expansion Is valid only here! r1 Downward Pass. Step 1. Level 2: Level 3:11 Downward Pass. Step 1. THIS IS USUALLY THE MOST EXPENSIVE STEP OF THE ALGORITHM Downward Pass. Step 1. Total number of S|R-translations per 1 box in d-dimensional space (not on the domain boundary) Exponential Growth It is worth to think about optimizations12 Downward Pass. Step 2. Downward Pass. Step 2.13 Final Summation yj Contribution of E2 Contribution of E3 Itemized Cost of MLFMM Assume that all translation costs are the same, CostTranslation(P) Powers of E4 and E2 neighborhoods Regular mesh:14 Optimization of the Grouping Parameter s CostMLFMM sopt Optimization of the Grouping Parameter (Example) In this example optimization results in about 10 times savings!15 Domains of Expansion Validity (1) size(l) rmin(l) Domains of Expansion Validity (2) closest xi x* the most far y The most far xi x* closest y R-expansion S-expansion16 Domains of Expansion Validity (3). R-expansion. Domains of Expansion Validity (8). R|R and S|S-translations. S|S R|R x*1 x*2 y xi y xi x*1 x*2 No additional constraints17 Domains of Expansion Validity (9). S|R-translation. x*1 x*2 y xi d < 4 – strict, d  4 –


View Full Document

UMD CMSC 878R - Lecture 10 Decomposition of the matrix vector product

Download Lecture 10 Decomposition of the matrix vector product
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Lecture 10 Decomposition of the matrix vector product and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Lecture 10 Decomposition of the matrix vector product 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?