Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and...
Transcript of Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and...
![Page 1: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/1.jpg)
Lecture 25, CMSC 878R/AMSC 698R
![Page 2: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/2.jpg)
Lectures 1 – 3 and Homework 1
• Introduction Applications: Physics, Computer Vision, etc. Simple example of factorization for degenerate kernel
• FMM in General Terms. Review of Publications. Asymptotic Complexity. Examples of complexity
• Simple factorization example. Intro to Matlab. • Factorization. Local expansions. Far and local
expansions. Taylor series. Power series. Taylor series. Error bounds.
![Page 3: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/3.jpg)
A very simple algorithm• Not FMM, but has some key ideas• Consider
S(xi)=∑j=1N αj (xi – yj)2 i=1, … ,M
• Naïve way to evaluate the sum will require MN operations• Instead can write the sum as
S(xi)=(∑j=1N αj )xi
2 + (∑j=1N αjyj
2) -2xi(∑j=1N αjyj )
– Can evaluate each bracketed sum over j and evaluate an expression of the type
S(xi)=β xi2 + γ -2xiδ
– Requires O(M+N) operations
• Key idea – use of analytical manipulation of series to achieve faster summation
![Page 4: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/4.jpg)
Far Field and Near Field
Near Field
rcxi
y
Far Field
Rcxi
y
What are these rc and Rc ?depends on the potential + some conventions for the terminology
![Page 5: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/5.jpg)
Local (Regular) Expansion
r*x*
y
Do not confuse with the Near Field!
We also call this R-expansion,since basis functions Rm should be regular
Basis Functions
ExpansionCoefficients
![Page 6: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/6.jpg)
Local Expansion of a Regular Potential
r*x*
y
xi
r*x*
y
xi
Can be like this:
…or like this:
|y - x*| < r* < |xi - x*|
r* > |y - x*| > |xi - x*|
r*x*
yxi
…or like this:
r* > |xi - x*| > |y - x*|
![Page 7: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/7.jpg)
Local Expansion of a Singular Potential
r*x*
y
xi
r*x*
y
xi
Can be like this:
…or like this:
|y - x*| < r* ≤ |xi - x*|
r* > |y - x*| > |xi - x*|
r*x*
yxi
…or like this:
r* > |xi - x*| > |y - x*|
Like this only! Never ever!Because xi is a singular point!
![Page 8: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/8.jpg)
Lectures 4-5, Homework 2
• Multidimensional Taylor series.• Kronecker product. Dot product. • General form of factorization. • Properties of Kronecker and dot product.• Middleman factorization for sums of Gaussians using
Taylor series. • Compression of multidimensional series.
Compression operator. Complexity in d-dimensions. Use of compression in multidimensional FMM.
![Page 9: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/9.jpg)
Use Compression!Compression operator:
Required Property:
Consider R2:
Let us define:
The length is only (n +1), not 2n
![Page 10: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/10.jpg)
Example of Fast Computation
![Page 11: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/11.jpg)
Compression Can be Performed for any Dimensionality (Example for 3D):
The length of an is (n+1)+n+…+1= (n+1)(n+2)/2
![Page 12: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/12.jpg)
Lectures 6 -8, Homework 3• Far field expansions. Functional analysis review.
Basis functions. Far field expansions. Examples of far field expansions (power, asymptotic)
• Multidimensional middleman for FGT and use of the “Compression” operator.
• Operators in space of coefficients. Truncation operators. Translation operators. Operator norms. Errors.
• S|S, R|R, S|R operators • Single level FMM • Requirements for functions in FMM. • Formalization of FMM.
![Page 13: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/13.jpg)
Four Key Stones of FMM
• Factorization• Error• Translation• Grouping
![Page 14: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/14.jpg)
Summary of formal requirements for functions that can be used in FMM
![Page 15: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/15.jpg)
Summary of formal requirements for functions that can be used in FMM (2)
![Page 16: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/16.jpg)
Middleman Algorithm
SourcesSources
EvaluationPoints
EvaluationPoints
Standard algorithm Middleman algorithm
N M N M
Total number of operations: O(NM) Total number of operations: O(N+M)
![Page 17: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/17.jpg)
Idea of a Single Level FMM
Sources SourcesEvaluation
PointsEvaluation
Points
Standard algorithm SLFMM
N M N M
Total number of operations: O(NM) Total number of operations: O(N+M+KL)
K groupsL groups
![Page 18: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/18.jpg)
Lecture 8-10, Homeworks 4,5• SLFMM and optimization. • S|R translation operator for (x-y)-1.• Error bounds. Data Structures. 2d-trees. • Need for data structures. 2d trees. • Parents, children, etc. Hierarchical space subdivision.• Data Structures. Bit interleaving and spatial ordering.
Neighbor search. • Threshold level of space subdivision. • Single Level FMM for (x-y)-1. Error bounds
![Page 19: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/19.jpg)
2d-trees
2-tree (binary) 22-tree (quad) 2d-tree
0
1
2
3
Level
Children
Parent
Neighbor(Sibling) Maybe
Neighbor
Self
Numberof Boxes
1
2d
22d
23d
2-tree (binary) 22-tree (quad) 2d-tree
0
1
2
3
Level
Children
Parent
Neighbor(Sibling) Maybe
Neighbor
Self
Numberof Boxes
1
2d
22d
23d
![Page 20: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/20.jpg)
Parent Number
01 2
1 31
3
3
3
31
1
1
0
20 0
02 2
2
1
11
1
1
111
11
11
1 1 1
0
0
0
00 0
0
0
0
0 00
0
0
0
2
0
2 2 2 2
222
2 2
222
2
2
2
3 3 3 3
3
3
3 33
3 3 3
333301 2
1 31
3
3
3
31
1
1
0
20 0
02 2
2
1
11
1
1
111
11
11
1 1 1
0
0
0
00 0
0
0
0
0 00
0
0
0
2
0
2 2 2 2
222
2 2
222
2
2
2
3 3 3 3
3
3
3 33
3 3 3
3333
Parent numbering string:
Parent number:
Parent’s universal number:
Parent number does not depend onthe level of the box! E.g. in the quad-treeat any level
Algorithm to find the parent number:
For box #234 (gray or black) the parent box number is 24.
![Page 21: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/21.jpg)
Children NumbersChildren numbering strings:
Children numbers:
Children universal numbers:
Children numbers do not depend onthe level of the box! E.g. in the quad-treeat any level:
Algorithm to find the children numbers:
![Page 22: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/22.jpg)
A couple of examples:
![Page 23: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/23.jpg)
Lectures 11-13, Exam 1, Homework 6• Multilevel FMM. Structure of the algorithm. • Setting data structure. • Upward Pass. Hierarchical domains and potentials.
Multilevel FMM. Downward Pass. • Asymptotic Complexity of the MLFMM. Downward
Pass. Complexity of each step. • Bookkeeping routines necessary for MLFMM based on
bit-interleaving• Multilevel FMM. Optimization. Results of MLFMM
tests. Dependence of FMM performance on parameters. • Review of concepts.
![Page 24: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/24.jpg)
Prepare Data Structures
• Convert data set into integers given some maximum number of bits allowed/dimensionality of space
• Interleave• Sort• Go through the list and check at what bit position two
strings differ – For a given s determine the number of levels of subdivision
needed
![Page 25: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/25.jpg)
Hierarchical Spatial Domains
ΕΕΕΕ1111
ΕΕΕΕ3333 ΕΕΕΕ4444
ΕΕΕΕ2222ΕΕΕΕ1111
ΕΕΕΕ3333 ΕΕΕΕ4444
ΕΕΕΕ2222
![Page 26: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/26.jpg)
UPWARD PASS• Partition sources into a source hierarchy.• Stop hierarchy so that boxes at the finest level contain s sources• Let the number of levels be L• Consider the finest level• For non-empty boxes we create S expansion about center of the
box Φ(xi,y)=∑P uiB(x*,xi) S(x*,y)
• We need to keep these coefficients. C(n,l) for each level as we will need it in the downward pass
• Then use S/S translations to go up level by level up to level 2.• Cannot go to level 1 (Why?)
![Page 27: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/27.jpg)
UPWARD PASS
• At the end of the upward pass we have a set of Sexpansions (i.e. we have coefficients for them)
• we have a set of coefficients C(n,l) for n=1,…,2ld l=L,…,2 • Each of these expansions is about a center, and is valid in
some domain• We would like to use the coarsest expansions in the
downward pass (have to deal with fewest numbers of coefficients)
• But may not be able to --- because of domain of validity
![Page 28: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/28.jpg)
• S expansion is valid in the domain E_3 outside domain E_1 (provided d<9)
ΕΕΕΕ1111
ΕΕΕΕ1111
ΕΕΕΕΕΕΕΕ3333
xi
xc(n,L)
y
![Page 29: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/29.jpg)
DOWNWARD PASS• Starting from level 2, build an R expansion in boxes
where R expansion is valid
• Must to do S|R translation • The S expansion is not valid in
boxes immediately surrounding the current box
• So we must exclude boxes in the E4 neighborhood
ΕΕΕΕ 4444ΕΕΕΕ 4444
![Page 30: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/30.jpg)
Downward Pass. Step 1.Level 2: Level 3:
![Page 31: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/31.jpg)
Downward Pass. Step 1.
THIS MIGHT BETHE MOST EXPENSIVESTEP OF THE ALGORITHM
![Page 32: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/32.jpg)
Downward Pass. Step 1.
Total number of S|R-translationsper 1 box in d-dimensional space
(far from the domain boundaries)
ExponentialGrowth
![Page 33: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/33.jpg)
Downward Pass Step 2• Now consider we already have done the S|R translation at
some level at the center of a box.• So we have a R expansion that includes contribution of
most of the points, but not of points in the E4 neighborhood• We can go to a finer level to include these missed points• But we will now have to translate the already built R
expansion to a box center of a child– (Makes no sense to do S|R again, since many S|R are
consolidated in this R expansion)
• Add to this translated one, the S|R of the E4 of the finer level
![Page 34: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/34.jpg)
• Formally
![Page 35: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/35.jpg)
Downward Pass. Step 2.
![Page 36: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/36.jpg)
Final Summation
• At this point we are at the finest level. • We cannot do any S|R translation for xi ‘s that are in the
E_3 neighborhood of our yj’s• Must evaluate these directly
![Page 37: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/37.jpg)
Lectures 14 – 16• Adaptive multilevel FMM. • Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel
FMMs• Data structures and elements of the algorithms. • More insight into the MLFMM.
– Neighborhoods and dimensionality.
• Methods for solution of linear systems • Iterative methods (Conjugate gradient, Krylov, etc.) • Use of the FMM in iterative solvers.
![Page 38: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/38.jpg)
Lecture 17-20, Homework 7• Error bounds for the MLFMM. • A scheme to obtain the error bounds. • Error for sequences of translations. • MLFMM for (x-y)-1 in 1-D• Error bounds for the MLFMM • Error bounds and optimization.• S|S,R|R, and S|R-translation errors. • 2D, 3D potential fields, particle simulations, RBF.
Complex potentials. Example problems. • 3D problems and vector analysis. Green functions.
Green's identity.
![Page 39: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/39.jpg)
Lecture 20 - 22• Boundary element method. • Reduction of 3D problems to forms for FMM use.
Spherical Harmonics. • (Guest Lecturer: Prof. D. Healy) Fast spherical transform
and applications. Spherical harmonics. Properties. • Algorithm. Introduction, examples, and computational
results . • 3D Laplace and Helmholtz equations. Multipoles. • Translation theory. Recursive computations. • Rotation-coaxial translation decomposition. • Multipoles. Differentiation/recursion.
![Page 40: Lecture 25, CMSC 878R/AMSC 698Rramani/cmsc878R/Lecture25.pdf• Data structures. D-trees and C-forests. • Adaptive MLFMM algorithm. Discussion of multilevel FMMs • Data structures](https://reader033.fdocuments.us/reader033/viewer/2022050505/5f97410e6c4b74725f5ae2d0/html5/thumbnails/40.jpg)
Lectures 23-25• Research directions in the FMM.
– Identification of problems and possible ways of their solution. – Scaling, adaptivity, etc.
• Integral transforms and fast translations. Integral transforms. – Signature function.
• Sparse matrix decomposition. Examples for the 3D Helmholtz equation.
• Review …