Post on 08-Jul-2020
transcript
3/9/2018
1
ECE 5322 21st Century Electromagnetics
Instructor:Office:Phone:E‐Mail:
Dr. Raymond C. RumpfA‐337(915) 747‐6958rcrumpf@utep.edu
Numerical Implementation of
Transformation Optics
Lecture #16b
Lecture 16b -- Numerical TO 1
Lecture Outline
• Numerical solution of Laplace’s equation
• Calculating spatial transforms using Laplace’s equation
• Calculating permeability and permittivity from spatial transforms
Lecture 16b ‐‐ Numerical TO Slide 2
3/9/2018
2
Numerical Solution of
Laplace’s Equation
(Not Yet TO)
Meaning of Laplace’s Equation
Lecture 16b ‐‐ Numerical TO 4
2 0u
Laplace’s equation is
2 is a 3D second‐order derivative.
A second‐order derivative quantifies curvature.
But, we set the second‐order derivative to zero.
Functions satisfying Laplace’s equation vary linearly.
3/9/2018
3
Laplace’s Equation as a “Number Filler Inner”
Lecture 16b ‐‐ Numerical TO 5
Given known values at certain points (e.g. physical boundary conditions), Laplace’s equation calculates the numbers everywhere else so they vary linearly.
Map of known values (boundary values) Laplace’s equation is solved to fill in the values away from the boundaries.
Numerical Solution of Laplace’s Equation (1 of 3)
Lecture 16b ‐‐ Numerical TO 6
Step 1 – Use the finite‐difference method to express Laplace’s equation in matrix form.
2 22 2 2
2 22 2
, ,, 0 0 x y
x y
u x y u x yu x y
x y
Lu 0D u D u 0
L D D
Step 2 – Build a function b(x,y) containing the boundary values.
,b x yThis function contains the values at the locations that we wish to force u(x,y) to. The other points in b(x,y) can be set to anything, but zero is convenient.
,b x y
3/9/2018
4
Numerical Solution of Laplace’s Equation (2 of 3)
Lecture 16b ‐‐ Numerical TO 7
Step 3 – Build a diagonal force matrix.
Step 4 – Incorporate the boundary values into Laplace’s equation.
This function contains 1’s at the positions where we wish to force values in u(x,y). It contains 0’s everywhere else. We set it to 1’s where we have our boundary values.
,f x y
diag ,f x y F
L F I F L
b FbNote: both F and I should be stored as sparse matrices!
Numerical Solution of Laplace’s Equation (3 of 3)
Lecture 16b ‐‐ Numerical TO 8
Step 5 – Solve Laplace’s equation
The function u(x,y) has all of the forced values, but also contains all of the numbers in between.
,u x y
1 u L b
3/9/2018
5
Enclosed Problems
Lecture 16b ‐‐ Numerical TO 9
Sometimes we only wish to obtain a solution that is perfectly enclosed by the boundary values.
Boundary values enclose some volume.
We only wish to solve Laplace’s equation here.
We do not care about outside of the enclosed boundary.
Reducing Enclosed Problems(1 of 3)
Lecture 16b ‐‐ Numerical TO 10
Step 1 – Make a map M(x,y) of where we wish to solve Laplace’s equation.
,M x y ,b x y Solve here.
Do not solve here.
3/9/2018
6
Reducing Enclosed Problems(2 of 3)
Lecture 16b ‐‐ Numerical TO 11
Step 2 – Eliminate the rows and columns that correspond to points where we do not wish to solve.
% REDUCE LAPLACE’S EQUATIONind = find(M(:));L = L(ind,ind);b = b(ind);
L u b
L u b
Reducing Enclosed Problems(3 of 3)
Lecture 16b ‐‐ Numerical TO 12
Step 3 – Solve Laplace’s equation.
1 u L b
Step 4 – Insert solutionback into grid.
% SOLVE LAPLACE'S EQUATIONu = L\b;
% INSERT SOLUTION BACK INTO GRIDU = zeros(Nx,Ny);U(ind) = u;
3/9/2018
7
CalculatingSpatial Transforms
UsingLaplace’s Equation
Step 1: Construct Object and Cloak
Lecture 16b ‐‐ Numerical TO 14
Object to CloakOBJ
Cloak ShapeCLK
1’s
0’s
3/9/2018
8
Step 2: Identify Edges of Cloak and Object (1 of 2)
Lecture 16b ‐‐ Numerical TO 15
Edge of ObjectEOBJ
Edge of CloakECLK
1’s
0’s
Step 2: Identify Edges of Cloak and Object (2 of 2)
Lecture 16b ‐‐ Numerical TO 16
All edges are detected at positions outside of the cloak region.
This places the edge of the object to be inside of the object.
Cloak Region
Object
ExternalRegion
3/9/2018
9
Step 3: Mask Meshgrid to Set Initial Boundary Values
Lecture 16b ‐‐ Numerical TO 17
X
Y
F
F
XF
YF
.*
.* =
=
Step 4: Force Coordinates on Object to Zero
Lecture 16b ‐‐ Numerical TO 18
XF
YF
3/9/2018
10
Step 5: Fill In Missing Coordinates (1 of 4)
Lecture 16b ‐‐ Numerical TO 19
XB
YB
XF
YF
2
Solve
0x
2
Solve
0y
Step 5: Fill In Missing Coordinates (2 of 4)
Lecture 16b ‐‐ Numerical TO 20
Step 1/3 – Construct ordinary Laplacian matrix equation.
2 2
column vector of forced values ,
x y
b x y
L D D
b
Step 2/3 – Enforce physical boundary conditions.
L F I F L
b Fb
Step 3/3 – Eliminate don’t care points.
L L
b b
The matrix equation is constructed in three steps:
3/9/2018
11
Step 5: Fill In Missing Coordinates (3 of 4)
Lecture 16b ‐‐ Numerical TO 21
Step 1/2 – Solve for u’’.
Step 2/2 – Insert points in u’’ back into full grid.
1 u L b
The matrix equation is solved in two steps:
u u
Step 5: Fill In Missing Coordinates (4 of 4)
Lecture 16b ‐‐ Numerical TO 22
Alternate view of coordinate transform:
Grid Before Transform Grid After Transform
3/9/2018
12
CalculatingPermittivity and
Permeability from the Spatial Transform
Step 6: Initialize Background Permittivity and Permeability
Lecture 16b ‐‐ Numerical TO 24
r r
1’s
1’s
1’s
0’s 0’s
0’s0’s
0’s 0’s
3/9/2018
13
Step 7: Calculate Derivatives of Transformed Grid
Lecture 16b ‐‐ Numerical TO 25
x
x
x
D x
x
y
x
D y
y
x
y
D x
y
y
y
D y
Step 8: Build UR and ER(1 of 4)
Lecture 16b ‐‐ Numerical TO 26
This step loops through each point on the grid.For each point in the cloak region…
a. Build [r] and [r] background tensors.
xx xy xz
r yx yy yz
zx zy zz
xx xy xz
r yx yy yz
zx zy zz
3/9/2018
14
Step 8: Build UR and ER (2 of 4)
Lecture 16b ‐‐ Numerical TO 27
This step loops through each point on the grid. For each point…
b. Build Jacobian.
0
0
0 0 1
x x
x y
y yJ
x y
Step 8: Build UR and ER (3 of 4)
Lecture 16b ‐‐ Numerical TO 28
This step loops through each point on the grid. For each point…
c. Transform [r] and [r] using inverse of Jacobian.
1
det
det
Tr
r
Tr
r
G J
G G
G
G G
G
% Transform UR and ERJ = inv(J);UR = J*UR*J.'/det(J);ER = J*ER*J.'/det(J);
3/9/2018
15
Step 8: Build UR and ER (4 of 4)
Lecture 16b ‐‐ Numerical TO 29
This step loops through each point on the grid. For each point…
d. Populate grid with transformed values of [r] and [r].
xx xy xz
r yx yy yz
zx zy zz
xx xy xz
r yx yy yz
zx zy zz
Step 9: Done!
Lecture 16b ‐‐ Numerical TO 30
Numerical TO is done! The material tensors can be imported into a CEM code for simulation.
r
r