http://jdj.mit.edu/wiki/index.php?title=Yee_lattice&action=history&feed=atomYee lattice - Revision history2024-03-28T14:11:54ZRevision history for this page on the wikiMediaWiki 1.7.3http://jdj.mit.edu/wiki/index.php?title=Yee_lattice&diff=4931&oldid=prevArdavan at 14:41, 18 April 20172017-04-18T14:41:30Z<p></p>
<table border='0' width='98%' cellpadding='0' cellspacing='4' style="background-color: white;">
<tr>
<td colspan='2' width='50%' align='center' style="background-color: white;">←Older revision</td>
<td colspan='2' width='50%' align='center' style="background-color: white;">Revision as of 14:41, 18 April 2017</td>
</tr>
<tr><td colspan="2" align="left"><strong>Line 1:</strong></td>
<td colspan="2" align="left"><strong>Line 1:</strong></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">{{Meep}}</td><td> </td><td style="background: #eee; font-size: smaller;">{{Meep}}</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td>-</td><td style="background: #ffa; font-size: smaller;">[[Image:Yee-cube.png|<span style="color: red; font-weight: bold;">250px</span>|center|thumb|Illustration of Yee lattice in 3d for a single grid voxel.]]</td><td>+</td><td style="background: #cfc; font-size: smaller;">[[Image:Yee-cube.png|<span style="color: red; font-weight: bold;">400px</span>|center|thumb|Illustration of Yee lattice in 3d for a single grid voxel.]]</td></tr>
<tr><td>-</td><td style="background: #ffa; font-size: smaller;">In order to discretize Maxwell's equations with second-order accuracy (for homogeneous regions), FDTD methods ''store different field components for different grid locations''. This discretization is known as a '''Yee lattice'''.</td><td>+</td><td style="background: #cfc; font-size: smaller;">In order to discretize Maxwell's equations with second-order accuracy (for homogeneous regions <span style="color: red; font-weight: bold;">where there no discontinuous material boundaries</span>), FDTD methods ''store different field components for different grid locations''. This discretization is known as a '''Yee lattice'''.</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td>-</td><td style="background: #ffa; font-size: smaller;">The form of the Yee lattice in 3d is shown in the illustration <span style="color: red; font-weight: bold;">here </span>for a single cubic grid voxel (<math>\Delta x \times \Delta x \times \Delta x</math>). The basic idea is that the three components of '''E''' are stored for the ''edges'' of the cube in the corresponding directions, while the components of '''H''' are stored for the ''faces'' of the cube.</td><td>+</td><td style="background: #cfc; font-size: smaller;">The form of the Yee lattice in 3d is shown in the illustration <span style="color: red; font-weight: bold;">above </span>for a single cubic grid voxel (<math>\Delta x \times \Delta x \times \Delta x</math>). The basic idea is that the three components of '''E''' are stored for the ''edges'' of the cube in the corresponding directions, while the components of '''H''' are stored for the ''faces'' of the cube.</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">More precisely, let a coordinate <math>(i,j,k)</math> in the grid correspond to:</td><td> </td><td style="background: #eee; font-size: smaller;">More precisely, let a coordinate <math>(i,j,k)</math> in the grid correspond to:</td></tr>
<tr><td colspan="2" align="left"><strong>Line 18:</strong></td>
<td colspan="2" align="left"><strong>Line 18:</strong></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">:<math>(i+\frac{1}{2},j+\frac{1}{2},k+\frac{1}{2})-\frac{1}{2} \hat\mathbf{e}_\ell \Delta x</math>. </td><td> </td><td style="background: #eee; font-size: smaller;">:<math>(i+\frac{1}{2},j+\frac{1}{2},k+\frac{1}{2})-\frac{1}{2} \hat\mathbf{e}_\ell \Delta x</math>. </td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td>-</td><td style="background: #ffa; font-size: smaller;">In two dimensions, the idea is similar except that we set <math>\hat\mathbf{e}_3=0</math>. <span style="color: red; font-weight: bold;"> </span>The 2d Yee <span style="color: red; font-weight: bold;">lattices </span>for the <span style="color: red; font-weight: bold;">TE polarizations </span>('''E''' in the ''xy'' plane and '''H''' in the ''z'' direction) is shown in the figure <span style="color: red; font-weight: bold;">at right</span>.</td><td>+</td><td style="background: #cfc; font-size: smaller;">In two dimensions, the idea is similar except that we set <math>\hat\mathbf{e}_3=0</math>. The 2d Yee <span style="color: red; font-weight: bold;">lattice </span>for the <span style="color: red; font-weight: bold;"><i>P</i>-polarization </span>('''E''' in the ''xy'' plane and '''H''' in the ''z'' direction) is shown in the figure <span style="color: red; font-weight: bold;">below</span>.</td></tr>
<tr><td>-</td><td style="background: #ffa; font-size: smaller;">[[Image:Yee-te.png|thumb|<span style="color: red; font-weight: bold;">right</span>|<span style="color: red; font-weight: bold;">150px</span>|Yee lattice in 2d for the TE polarization.]]</td><td>+</td><td style="background: #cfc; font-size: smaller;">[[Image:Yee-te.png|thumb|<span style="color: red; font-weight: bold;">center</span>|<span style="color: red; font-weight: bold;">250px</span>|Yee lattice in 2d for the TE polarization.]]</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td>-</td><td style="background: #ffa; font-size: smaller;">The consequence of the Yee lattice is that, whenever you need to compare or combine different field components, e.g. to find the energy density <math>(\mathbf{E}^* \cdot \mathbf{D} + |\mathbf{H}|^2)/2</math> or the flux <math>\textrm{Re}\, \mathbf{E}^* \times \mathbf{H}</math>, then the components need to be '''interpolated''' to some common point. Meep does this interpolation for you&mdash;in particular, whenever you compute energy density or flux, or whenever you output a field to a file, it is stored for the locations <math>(i+0.5,j+0.5,k+0.5)</math>: the centers of each grid voxel.</td><td>+</td><td style="background: #cfc; font-size: smaller;">The consequence of the Yee lattice is that, whenever you need to compare or combine different field components, e.g. to find the energy density <math>(\mathbf{E}^* \cdot \mathbf{D} + |\mathbf{H}|^2)/2</math> or the flux <math>\textrm{Re}\, \mathbf{E}^* \times \mathbf{H}</math>, then the components need to be '''interpolated''' to some common point <span style="color: red; font-weight: bold;">(in order to remain second-order accurate)</span>. Meep <span style="color: red; font-weight: bold;">automatically </span>does this interpolation for you <span style="color: red; font-weight: bold;">wherever necessary</span>&mdash;in particular, whenever you compute energy density or flux, or whenever you output a field to a file, it is stored for the locations <math>(i+0.5,j+0.5,k+0.5)</math>: the centers of each grid voxel.</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">[[Category:Meep]]</td><td> </td><td style="background: #eee; font-size: smaller;">[[Category:Meep]]</td></tr>
</table>
Ardavanhttp://jdj.mit.edu/wiki/index.php?title=Yee_lattice&diff=1987&oldid=prevStevenj at 21:06, 3 April 20062006-04-03T21:06:50Z<p></p>
<table border='0' width='98%' cellpadding='0' cellspacing='4' style="background-color: white;">
<tr>
<td colspan='2' width='50%' align='center' style="background-color: white;">←Older revision</td>
<td colspan='2' width='50%' align='center' style="background-color: white;">Revision as of 21:06, 3 April 2006</td>
</tr>
<tr><td colspan="2" align="left"><strong>Line 2:</strong></td>
<td colspan="2" align="left"><strong>Line 2:</strong></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">[[Image:Yee-cube.png|250px|center|thumb|Illustration of Yee lattice in 3d for a single grid voxel.]]</td><td> </td><td style="background: #eee; font-size: smaller;">[[Image:Yee-cube.png|250px|center|thumb|Illustration of Yee lattice in 3d for a single grid voxel.]]</td></tr>
<tr><td>-</td><td style="background: #ffa; font-size: smaller;">In order to discretize Maxwell's equations with second-order accuracy (for homogeneous regions), FDTD methods ''store different field components <span style="color: red; font-weight: bold;">at </span>different grid locations''. This discretization is known as a '''Yee lattice'''.</td><td>+</td><td style="background: #cfc; font-size: smaller;">In order to discretize Maxwell's equations with second-order accuracy (for homogeneous regions), FDTD methods ''store different field components <span style="color: red; font-weight: bold;">for </span>different grid locations''. This discretization is known as a '''Yee lattice'''.</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td>-</td><td style="background: #ffa; font-size: smaller;">The form of the Yee lattice in 3d is shown in the illustration here for a single cubic grid voxel (<math>\Delta x \times \Delta x \times \Delta x</math>). The basic idea is that the three components of '''E''' are stored <span style="color: red; font-weight: bold;">at </span>the ''edges'' of the cube in the corresponding directions, while the components of '''H''' are stored <span style="color: red; font-weight: bold;">at </span>the ''faces'' of the cube.</td><td>+</td><td style="background: #cfc; font-size: smaller;">The form of the Yee lattice in 3d is shown in the illustration here for a single cubic grid voxel (<math>\Delta x \times \Delta x \times \Delta x</math>). The basic idea is that the three components of '''E''' are stored <span style="color: red; font-weight: bold;">for </span>the ''edges'' of the cube in the corresponding directions, while the components of '''H''' are stored <span style="color: red; font-weight: bold;">for </span>the ''faces'' of the cube.</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">More precisely, let a coordinate <math>(i,j,k)</math> in the grid correspond to:</td><td> </td><td style="background: #eee; font-size: smaller;">More precisely, let a coordinate <math>(i,j,k)</math> in the grid correspond to:</td></tr>
<tr><td colspan="2" align="left"><strong>Line 10:</strong></td>
<td colspan="2" align="left"><strong>Line 10:</strong></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">:<math>\mathbf{x} = (i \hat\mathbf{e}_1 + j \hat\mathbf{e}_2 + k \hat\mathbf{e}_3) \Delta x</math>,</td><td> </td><td style="background: #eee; font-size: smaller;">:<math>\mathbf{x} = (i \hat\mathbf{e}_1 + j \hat\mathbf{e}_2 + k \hat\mathbf{e}_3) \Delta x</math>,</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td>-</td><td style="background: #ffa; font-size: smaller;">where <math>\hat\mathbf{e}_k</math> denotes the unit vector in the ''k''-th coordinate direction. Then, the <math>\ell</math><sup>th</sup> component of <math>\mathbf{E}</math> or <math>\mathbf{D}</math> (or <math>\mathbf{P}</math>) is stored <span style="color: red; font-weight: bold;">at </span>the locations </td><td>+</td><td style="background: #cfc; font-size: smaller;">where <math>\hat\mathbf{e}_k</math> denotes the unit vector in the ''k''-th coordinate direction. Then, the <math>\ell</math><sup>th</sup> component of <math>\mathbf{E}</math> or <math>\mathbf{D}</math> (or <math>\mathbf{P}</math>) is stored <span style="color: red; font-weight: bold;">for </span>the locations </td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">:<math>(i,j,k)+ \frac{1}{2} \hat\mathbf{e}_\ell \Delta x</math>.</td><td> </td><td style="background: #eee; font-size: smaller;">:<math>(i,j,k)+ \frac{1}{2} \hat\mathbf{e}_\ell \Delta x</math>.</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td>-</td><td style="background: #ffa; font-size: smaller;">The <math>\ell</math><sup>th</sup> component of <math>\mathbf{H}</math>, on the other hand, is stored <span style="color: red; font-weight: bold;">at </span>the locations</td><td>+</td><td style="background: #cfc; font-size: smaller;">The <math>\ell</math><sup>th</sup> component of <math>\mathbf{H}</math>, on the other hand, is stored <span style="color: red; font-weight: bold;">for </span>the locations</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">:<math>(i+\frac{1}{2},j+\frac{1}{2},k+\frac{1}{2})-\frac{1}{2} \hat\mathbf{e}_\ell \Delta x</math>. </td><td> </td><td style="background: #eee; font-size: smaller;">:<math>(i+\frac{1}{2},j+\frac{1}{2},k+\frac{1}{2})-\frac{1}{2} \hat\mathbf{e}_\ell \Delta x</math>. </td></tr>
<tr><td colspan="2" align="left"><strong>Line 21:</strong></td>
<td colspan="2" align="left"><strong>Line 21:</strong></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">[[Image:Yee-te.png|thumb|right|150px|Yee lattice in 2d for the TE polarization.]]</td><td> </td><td style="background: #eee; font-size: smaller;">[[Image:Yee-te.png|thumb|right|150px|Yee lattice in 2d for the TE polarization.]]</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td>-</td><td style="background: #ffa; font-size: smaller;">The consequence of the Yee lattice is that, whenever you need to compare or combine different field components, e.g. to find the energy density <math>(\mathbf{E}^* \cdot \mathbf{D} + |\mathbf{H}|^2)/2</math> or the flux <math>\textrm{Re}\, \mathbf{E}^* \times \mathbf{H}</math>, then the components need to be '''interpolated''' to some common point. Meep does this interpolation for you&mdash;in particular, whenever you compute energy density or flux, or whenever you output a field to a file, it is stored <span style="color: red; font-weight: bold;">at </span>the locations <math>(i+0.5,j+0.5,k+0.5)</math>: the centers of each grid voxel.</td><td>+</td><td style="background: #cfc; font-size: smaller;">The consequence of the Yee lattice is that, whenever you need to compare or combine different field components, e.g. to find the energy density <math>(\mathbf{E}^* \cdot \mathbf{D} + |\mathbf{H}|^2)/2</math> or the flux <math>\textrm{Re}\, \mathbf{E}^* \times \mathbf{H}</math>, then the components need to be '''interpolated''' to some common point. Meep does this interpolation for you&mdash;in particular, whenever you compute energy density or flux, or whenever you output a field to a file, it is stored <span style="color: red; font-weight: bold;">for </span>the locations <math>(i+0.5,j+0.5,k+0.5)</math>: the centers of each grid voxel.</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">[[Category:Meep]]</td><td> </td><td style="background: #eee; font-size: smaller;">[[Category:Meep]]</td></tr>
</table>
Stevenjhttp://jdj.mit.edu/wiki/index.php?title=Yee_lattice&diff=805&oldid=prevStevenj at 21:05, 3 April 20062006-04-03T21:05:42Z<p></p>
<table border='0' width='98%' cellpadding='0' cellspacing='4' style="background-color: white;">
<tr>
<td colspan='2' width='50%' align='center' style="background-color: white;">←Older revision</td>
<td colspan='2' width='50%' align='center' style="background-color: white;">Revision as of 21:05, 3 April 2006</td>
</tr>
<tr><td colspan="2" align="left"><strong>Line 8:</strong></td>
<td colspan="2" align="left"><strong>Line 8:</strong></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">More precisely, let a coordinate <math>(i,j,k)</math> in the grid correspond to:</td><td> </td><td style="background: #eee; font-size: smaller;">More precisely, let a coordinate <math>(i,j,k)</math> in the grid correspond to:</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td>-</td><td style="background: #ffa; font-size: smaller;">:<math>\mathbf{x} = (i \hat\mathbf{e}_1 + j \hat\mathbf{e}_2 + k \hat\mathbf{e}_3) \Delta x</math><span style="color: red; font-weight: bold;">.</span></td><td>+</td><td style="background: #cfc; font-size: smaller;">:<math>\mathbf{x} = (i \hat\mathbf{e}_1 + j \hat\mathbf{e}_2 + k \hat\mathbf{e}_3) \Delta x</math><span style="color: red; font-weight: bold;">,</span></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td>-</td><td style="background: #ffa; font-size: smaller;">Then, the <math>\ell</math><sup>th</sup> component of <math>\mathbf{E}</math> or <math>\mathbf{D}</math> (or <math>\mathbf{P}</math>) is stored at the locations </td><td>+</td><td style="background: #cfc; font-size: smaller;"><span style="color: red; font-weight: bold;">where <math>\hat\mathbf{e}_k</math> denotes the unit vector in the ''k''-th coordinate direction. </span>Then, the <math>\ell</math><sup>th</sup> component of <math>\mathbf{E}</math> or <math>\mathbf{D}</math> (or <math>\mathbf{P}</math>) is stored at the locations </td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">:<math>(i,j,k)+ \frac{1}{2} \hat\mathbf{e}_\ell \Delta x</math>.</td><td> </td><td style="background: #eee; font-size: smaller;">:<math>(i,j,k)+ \frac{1}{2} \hat\mathbf{e}_\ell \Delta x</math>.</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td>-</td><td style="background: #ffa; font-size: smaller;"><span style="color: red; font-weight: bold;">where <math>\hat\mathbf{e}_k</math> denotes the unit vector in the ''k''-th coordinate direction. </span>The <math>\ell</math><sup>th</sup> component of <math>\mathbf{H}</math>, on the other hand, is stored at the locations</td><td>+</td><td style="background: #cfc; font-size: smaller;">The <math>\ell</math><sup>th</sup> component of <math>\mathbf{H}</math>, on the other hand, is stored at the locations</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">:<math>(i+\frac{1}{2},j+\frac{1}{2},k+\frac{1}{2})-\frac{1}{2} \hat\mathbf{e}_\ell \Delta x</math>. </td><td> </td><td style="background: #eee; font-size: smaller;">:<math>(i+\frac{1}{2},j+\frac{1}{2},k+\frac{1}{2})-\frac{1}{2} \hat\mathbf{e}_\ell \Delta x</math>. </td></tr>
</table>
Stevenjhttp://jdj.mit.edu/wiki/index.php?title=Yee_lattice&diff=804&oldid=prevStevenj at 21:05, 3 April 20062006-04-03T21:05:09Z<p></p>
<table border='0' width='98%' cellpadding='0' cellspacing='4' style="background-color: white;">
<tr>
<td colspan='2' width='50%' align='center' style="background-color: white;">←Older revision</td>
<td colspan='2' width='50%' align='center' style="background-color: white;">Revision as of 21:05, 3 April 2006</td>
</tr>
<tr><td colspan="2" align="left"><strong>Line 14:</strong></td>
<td colspan="2" align="left"><strong>Line 14:</strong></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">:<math>(i,j,k)+ \frac{1}{2} \hat\mathbf{e}_\ell \Delta x</math>.</td><td> </td><td style="background: #eee; font-size: smaller;">:<math>(i,j,k)+ \frac{1}{2} \hat\mathbf{e}_\ell \Delta x</math>.</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td>-</td><td style="background: #ffa; font-size: smaller;">The <math>\ell</math><sup>th</sup> component of <math>\mathbf{H}</math>, on the other hand, is stored at the locations</td><td>+</td><td style="background: #cfc; font-size: smaller;"><span style="color: red; font-weight: bold;">where <math>\hat\mathbf{e}_k</math> denotes the unit vector in the ''k''-th coordinate direction. </span>The <math>\ell</math><sup>th</sup> component of <math>\mathbf{H}</math>, on the other hand, is stored at the locations</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">:<math>(i+\frac{1}{2},j+\frac{1}{2},k+\frac{1}{2})-\frac{1}{2} \hat\mathbf{e}_\ell \Delta x</math>. </td><td> </td><td style="background: #eee; font-size: smaller;">:<math>(i+\frac{1}{2},j+\frac{1}{2},k+\frac{1}{2})-\frac{1}{2} \hat\mathbf{e}_\ell \Delta x</math>. </td></tr>
</table>
Stevenjhttp://jdj.mit.edu/wiki/index.php?title=Yee_lattice&diff=803&oldid=prevStevenj at 18:48, 22 October 20052005-10-22T18:48:30Z<p></p>
<table border='0' width='98%' cellpadding='0' cellspacing='4' style="background-color: white;">
<tr>
<td colspan='2' width='50%' align='center' style="background-color: white;">←Older revision</td>
<td colspan='2' width='50%' align='center' style="background-color: white;">Revision as of 18:48, 22 October 2005</td>
</tr>
<tr><td colspan="2" align="left"><strong>Line 12:</strong></td>
<td colspan="2" align="left"><strong>Line 12:</strong></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">Then, the <math>\ell</math><sup>th</sup> component of <math>\mathbf{E}</math> or <math>\mathbf{D}</math> (or <math>\mathbf{P}</math>) is stored at the locations </td><td> </td><td style="background: #eee; font-size: smaller;">Then, the <math>\ell</math><sup>th</sup> component of <math>\mathbf{E}</math> or <math>\mathbf{D}</math> (or <math>\mathbf{P}</math>) is stored at the locations </td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td>-</td><td style="background: #ffa; font-size: smaller;">:<math>(i,j,k)+ \frac{1}{2} \hat\mathbf{e}_\ell</math>.</td><td>+</td><td style="background: #cfc; font-size: smaller;">:<math>(i,j,k)+ \frac{1}{2} \hat\mathbf{e}_\ell <span style="color: red; font-weight: bold;"> \Delta x</span></math>.</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">The <math>\ell</math><sup>th</sup> component of <math>\mathbf{H}</math>, on the other hand, is stored at the locations</td><td> </td><td style="background: #eee; font-size: smaller;">The <math>\ell</math><sup>th</sup> component of <math>\mathbf{H}</math>, on the other hand, is stored at the locations</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td>-</td><td style="background: #ffa; font-size: smaller;">:<math>(i+\frac{1}{2},j+\frac{1}{2},k+\frac{1}{2})-\frac{1}{2} \hat\mathbf{e}_\ell</math>. </td><td>+</td><td style="background: #cfc; font-size: smaller;">:<math>(i+\frac{1}{2},j+\frac{1}{2},k+\frac{1}{2})-\frac{1}{2} \hat\mathbf{e}_\ell <span style="color: red; font-weight: bold;"> \Delta x</span></math>. </td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">In two dimensions, the idea is similar except that we set <math>\hat\mathbf{e}_3=0</math>. The 2d Yee lattices for the TE polarizations ('''E''' in the ''xy'' plane and '''H''' in the ''z'' direction) is shown in the figure at right.</td><td> </td><td style="background: #eee; font-size: smaller;">In two dimensions, the idea is similar except that we set <math>\hat\mathbf{e}_3=0</math>. The 2d Yee lattices for the TE polarizations ('''E''' in the ''xy'' plane and '''H''' in the ''z'' direction) is shown in the figure at right.</td></tr>
</table>
Stevenjhttp://jdj.mit.edu/wiki/index.php?title=Yee_lattice&diff=296&oldid=prevStevenj at 18:47, 22 October 20052005-10-22T18:47:58Z<p></p>
<table border='0' width='98%' cellpadding='0' cellspacing='4' style="background-color: white;">
<tr>
<td colspan='2' width='50%' align='center' style="background-color: white;">←Older revision</td>
<td colspan='2' width='50%' align='center' style="background-color: white;">Revision as of 18:47, 22 October 2005</td>
</tr>
<tr><td colspan="2" align="left"><strong>Line 12:</strong></td>
<td colspan="2" align="left"><strong>Line 12:</strong></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">Then, the <math>\ell</math><sup>th</sup> component of <math>\mathbf{E}</math> or <math>\mathbf{D}</math> (or <math>\mathbf{P}</math>) is stored at the locations </td><td> </td><td style="background: #eee; font-size: smaller;">Then, the <math>\ell</math><sup>th</sup> component of <math>\mathbf{E}</math> or <math>\mathbf{D}</math> (or <math>\mathbf{P}</math>) is stored at the locations </td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td>-</td><td style="background: #ffa; font-size: smaller;">:<math>(i,j,k)+\hat\mathbf{e}_\ell <span style="color: red; font-weight: bold;">/ 2</span></math>.</td><td>+</td><td style="background: #cfc; font-size: smaller;">:<math>(i,j,k)+ <span style="color: red; font-weight: bold;">\frac{1}{2} </span>\hat\mathbf{e}_\ell</math>.</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">The <math>\ell</math><sup>th</sup> component of <math>\mathbf{H}</math>, on the other hand, is stored at the locations</td><td> </td><td style="background: #eee; font-size: smaller;">The <math>\ell</math><sup>th</sup> component of <math>\mathbf{H}</math>, on the other hand, is stored at the locations</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td>-</td><td style="background: #ffa; font-size: smaller;">:<math>(i+<span style="color: red; font-weight: bold;">0.5</span>,j+<span style="color: red; font-weight: bold;">0.5</span>,k+<span style="color: red; font-weight: bold;">0.5</span>)-\hat\mathbf{e}_\ell <span style="color: red; font-weight: bold;">/ 2</span></math>. </td><td>+</td><td style="background: #cfc; font-size: smaller;">:<math>(i+<span style="color: red; font-weight: bold;">\frac{1}{2}</span>,j+<span style="color: red; font-weight: bold;">\frac{1}{2}</span>,k+<span style="color: red; font-weight: bold;">\frac{1}{2}</span>)-<span style="color: red; font-weight: bold;">\frac{1}{2} </span>\hat\mathbf{e}_\ell</math>. </td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">In two dimensions, the idea is similar except that we set <math>\hat\mathbf{e}_3=0</math>. The 2d Yee lattices for the TE polarizations ('''E''' in the ''xy'' plane and '''H''' in the ''z'' direction) is shown in the figure at right.</td><td> </td><td style="background: #eee; font-size: smaller;">In two dimensions, the idea is similar except that we set <math>\hat\mathbf{e}_3=0</math>. The 2d Yee lattices for the TE polarizations ('''E''' in the ''xy'' plane and '''H''' in the ''z'' direction) is shown in the figure at right.</td></tr>
</table>
Stevenjhttp://jdj.mit.edu/wiki/index.php?title=Yee_lattice&diff=295&oldid=prevStevenj at 18:46, 22 October 20052005-10-22T18:46:07Z<p></p>
<table border='0' width='98%' cellpadding='0' cellspacing='4' style="background-color: white;">
<tr>
<td colspan='2' width='50%' align='center' style="background-color: white;">←Older revision</td>
<td colspan='2' width='50%' align='center' style="background-color: white;">Revision as of 18:46, 22 October 2005</td>
</tr>
<tr><td colspan="2" align="left"><strong>Line 1:</strong></td>
<td colspan="2" align="left"><strong>Line 1:</strong></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">{{Meep}}</td><td> </td><td style="background: #eee; font-size: smaller;">{{Meep}}</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td>-</td><td style="background: #ffa; font-size: smaller;">[[Image:Yee-cube.png|250px|<span style="color: red; font-weight: bold;">left</span>|Illustration of Yee lattice in 3d]]</td><td>+</td><td style="background: #cfc; font-size: smaller;">[[Image:Yee-cube.png|250px|<span style="color: red; font-weight: bold;">center|thumb</span>|Illustration of Yee lattice in 3d <span style="color: red; font-weight: bold;">for a single grid voxel.</span>]]</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">In order to discretize Maxwell's equations with second-order accuracy (for homogeneous regions), FDTD methods ''store different field components at different grid locations''. This discretization is known as a '''Yee lattice'''.</td><td> </td><td style="background: #eee; font-size: smaller;">In order to discretize Maxwell's equations with second-order accuracy (for homogeneous regions), FDTD methods ''store different field components at different grid locations''. This discretization is known as a '''Yee lattice'''.</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
</table>
Stevenjhttp://jdj.mit.edu/wiki/index.php?title=Yee_lattice&diff=294&oldid=prevStevenj at 18:45, 22 October 20052005-10-22T18:45:26Z<p></p>
<table border='0' width='98%' cellpadding='0' cellspacing='4' style="background-color: white;">
<tr>
<td colspan='2' width='50%' align='center' style="background-color: white;">←Older revision</td>
<td colspan='2' width='50%' align='center' style="background-color: white;">Revision as of 18:45, 22 October 2005</td>
</tr>
<tr><td colspan="2" align="left"><strong>Line 19:</strong></td>
<td colspan="2" align="left"><strong>Line 19:</strong></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">In two dimensions, the idea is similar except that we set <math>\hat\mathbf{e}_3=0</math>. The 2d Yee lattices for the TE polarizations ('''E''' in the ''xy'' plane and '''H''' in the ''z'' direction) is shown in the figure at right.</td><td> </td><td style="background: #eee; font-size: smaller;">In two dimensions, the idea is similar except that we set <math>\hat\mathbf{e}_3=0</math>. The 2d Yee lattices for the TE polarizations ('''E''' in the ''xy'' plane and '''H''' in the ''z'' direction) is shown in the figure at right.</td></tr>
<tr><td>-</td><td style="background: #ffa; font-size: smaller;">[[Image:Yee-te.png|right|<span style="color: red; font-weight: bold;">200px</span>|Yee lattice in 2d for TE polarization]]</td><td>+</td><td style="background: #cfc; font-size: smaller;">[[Image:Yee-te.png<span style="color: red; font-weight: bold;">|thumb</span>|right|<span style="color: red; font-weight: bold;">150px</span>|Yee lattice in 2d for <span style="color: red; font-weight: bold;">the </span>TE polarization<span style="color: red; font-weight: bold;">.</span>]]</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">The consequence of the Yee lattice is that, whenever you need to compare or combine different field components, e.g. to find the energy density <math>(\mathbf{E}^* \cdot \mathbf{D} + |\mathbf{H}|^2)/2</math> or the flux <math>\textrm{Re}\, \mathbf{E}^* \times \mathbf{H}</math>, then the components need to be '''interpolated''' to some common point. Meep does this interpolation for you&mdash;in particular, whenever you compute energy density or flux, or whenever you output a field to a file, it is stored at the locations <math>(i+0.5,j+0.5,k+0.5)</math>: the centers of each grid voxel.</td><td> </td><td style="background: #eee; font-size: smaller;">The consequence of the Yee lattice is that, whenever you need to compare or combine different field components, e.g. to find the energy density <math>(\mathbf{E}^* \cdot \mathbf{D} + |\mathbf{H}|^2)/2</math> or the flux <math>\textrm{Re}\, \mathbf{E}^* \times \mathbf{H}</math>, then the components need to be '''interpolated''' to some common point. Meep does this interpolation for you&mdash;in particular, whenever you compute energy density or flux, or whenever you output a field to a file, it is stored at the locations <math>(i+0.5,j+0.5,k+0.5)</math>: the centers of each grid voxel.</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">[[Category:Meep]]</td><td> </td><td style="background: #eee; font-size: smaller;">[[Category:Meep]]</td></tr>
</table>
Stevenjhttp://jdj.mit.edu/wiki/index.php?title=Yee_lattice&diff=293&oldid=prevStevenj at 18:44, 22 October 20052005-10-22T18:44:42Z<p></p>
<table border='0' width='98%' cellpadding='0' cellspacing='4' style="background-color: white;">
<tr>
<td colspan='2' width='50%' align='center' style="background-color: white;">←Older revision</td>
<td colspan='2' width='50%' align='center' style="background-color: white;">Revision as of 18:44, 22 October 2005</td>
</tr>
<tr><td colspan="2" align="left"><strong>Line 1:</strong></td>
<td colspan="2" align="left"><strong>Line 1:</strong></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">{{Meep}}</td><td> </td><td style="background: #eee; font-size: smaller;">{{Meep}}</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td>-</td><td style="background: #ffa; font-size: smaller;">In order to discretize <span style="color: red; font-weight: bold;">the </span>equations with second-order accuracy (<span style="color: red; font-weight: bold;">in </span>homogeneous regions), FDTD methods ''store different field components at different grid locations''. This discretization is known as a '''Yee lattice'''.</td><td>+</td><td style="background: #cfc; font-size: smaller;"><span style="color: red; font-weight: bold;">[[Image:Yee-cube.png|250px|left|Illustration of Yee lattice in 3d]]</span></td></tr>
<tr><td colspan="2"> </td><td>+</td><td style="background: #cfc; font-size: smaller;">In order to discretize <span style="color: red; font-weight: bold;">Maxwell's </span>equations with second-order accuracy (<span style="color: red; font-weight: bold;">for </span>homogeneous regions), FDTD methods ''store different field components at different grid locations''. This discretization is known as a '''Yee lattice'''.</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td>-</td><td style="background: #ffa; font-size: smaller;"><span style="color: red; font-weight: bold;">In general</span>, let a coordinate <math>(i,j,k)</math> in the grid correspond to:</td><td>+</td><td style="background: #cfc; font-size: smaller;"><span style="color: red; font-weight: bold;">The form of the Yee lattice in 3d is shown in the illustration here for a single cubic grid voxel (<math>\Delta x \times \Delta x \times \Delta x</math>). The basic idea is that the three components of '''E''' are stored at the ''edges'' of the cube in the corresponding directions, while the components of '''H''' are stored at the ''faces'' of the cube.</span></td></tr>
<tr><td colspan="2"> </td><td>+</td><td style="background: #cfc; font-size: smaller;"> </td></tr>
<tr><td colspan="2"> </td><td>+</td><td style="background: #cfc; font-size: smaller;"><span style="color: red; font-weight: bold;">More precisely</span>, let a coordinate <math>(i,j,k)</math> in the grid correspond to:</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">:<math>\mathbf{x} = (i \hat\mathbf{e}_1 + j \hat\mathbf{e}_2 + k \hat\mathbf{e}_3) \Delta x</math>.</td><td> </td><td style="background: #eee; font-size: smaller;">:<math>\mathbf{x} = (i \hat\mathbf{e}_1 + j \hat\mathbf{e}_2 + k \hat\mathbf{e}_3) \Delta x</math>.</td></tr>
<tr><td colspan="2" align="left"><strong>Line 15:</strong></td>
<td colspan="2" align="left"><strong>Line 18:</strong></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">:<math>(i+0.5,j+0.5,k+0.5)-\hat\mathbf{e}_\ell / 2</math>. </td><td> </td><td style="background: #eee; font-size: smaller;">:<math>(i+0.5,j+0.5,k+0.5)-\hat\mathbf{e}_\ell / 2</math>. </td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td>-</td><td style="background: #ffa; font-size: smaller;">In two dimensions, we set <math>\hat\mathbf{e}_3=0</math><span style="color: red; font-weight: bold;">; the </span>2d Yee lattices for the TE <span style="color: red; font-weight: bold;">and TM </span>polarizations ('''E''' in the ''xy'' plane <span style="color: red; font-weight: bold;">or </span>in the ''z'' direction<span style="color: red; font-weight: bold;">, respectively</span>) <span style="color: red; font-weight: bold;">are </span>shown in the figure <span style="color: red; font-weight: bold;">below</span>.</td><td>+</td><td style="background: #cfc; font-size: smaller;">In two dimensions, <span style="color: red; font-weight: bold;">the idea is similar except that </span>we set <math>\hat\mathbf{e}_3=0</math><span style="color: red; font-weight: bold;">. The </span>2d Yee lattices for the TE <span style="color: red; font-weight: bold;"> </span>polarizations ('''E''' in the ''xy'' plane <span style="color: red; font-weight: bold;">and '''H''' </span>in the <span style="color: red; font-weight: bold;"> </span>''z'' direction) <span style="color: red; font-weight: bold;">is </span>shown in the figure <span style="color: red; font-weight: bold;">at right</span>.</td></tr>
<tr><td>-</td><td style="background: #ffa; font-size: smaller;"> </td><td>+</td><td style="background: #cfc; font-size: smaller;"><span style="color: red; font-weight: bold;">[[Image</span>:<span style="color: red; font-weight: bold;">Yee-te.png|right|200px|Yee lattice in 2d for TE polarization]]</span></td></tr>
<tr><td>-</td><td style="background: #ffa; font-size: smaller;">:<span style="color: red; font-weight: bold;">(TO DO: Figure)</span></td><td>+</td><td style="background: #cfc; font-size: smaller;"></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">The consequence of the Yee lattice is that, whenever you need to compare or combine different field components, e.g. to find the energy density <math>(\mathbf{E}^* \cdot \mathbf{D} + |\mathbf{H}|^2)/2</math> or the flux <math>\textrm{Re}\, \mathbf{E}^* \times \mathbf{H}</math>, then the components need to be '''interpolated''' to some common point. Meep does this interpolation for you&mdash;in particular, whenever you compute energy density or flux, or whenever you output a field to a file, it is stored at the locations <math>(i+0.5,j+0.5,k+0.5)</math>: the centers of each grid voxel.</td><td> </td><td style="background: #eee; font-size: smaller;">The consequence of the Yee lattice is that, whenever you need to compare or combine different field components, e.g. to find the energy density <math>(\mathbf{E}^* \cdot \mathbf{D} + |\mathbf{H}|^2)/2</math> or the flux <math>\textrm{Re}\, \mathbf{E}^* \times \mathbf{H}</math>, then the components need to be '''interpolated''' to some common point. Meep does this interpolation for you&mdash;in particular, whenever you compute energy density or flux, or whenever you output a field to a file, it is stored at the locations <math>(i+0.5,j+0.5,k+0.5)</math>: the centers of each grid voxel.</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">[[Category:Meep]]</td><td> </td><td style="background: #eee; font-size: smaller;">[[Category:Meep]]</td></tr>
</table>
Stevenjhttp://jdj.mit.edu/wiki/index.php?title=Yee_lattice&diff=292&oldid=prevStevenj at 17:49, 22 October 20052005-10-22T17:49:57Z<p></p>
<table border='0' width='98%' cellpadding='0' cellspacing='4' style="background-color: white;">
<tr>
<td colspan='2' width='50%' align='center' style="background-color: white;">←Older revision</td>
<td colspan='2' width='50%' align='center' style="background-color: white;">Revision as of 17:49, 22 October 2005</td>
</tr>
<tr><td colspan="2" align="left"><strong>Line 1:</strong></td>
<td colspan="2" align="left"><strong>Line 1:</strong></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">{{Meep}}</td><td> </td><td style="background: #eee; font-size: smaller;">{{Meep}}</td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td>-</td><td style="background: #ffa; font-size: smaller;">In order to discretize the equations with second-order accuracy (in homogeneous regions), FDTD methods <span style="color: red; font-weight: bold;">'</span>''store different field components at different grid locations<span style="color: red; font-weight: bold;">'</span>''. This discretization is known as a ''Yee lattice''</td><td>+</td><td style="background: #cfc; font-size: smaller;">In order to discretize the equations with second-order accuracy (in homogeneous regions), FDTD methods ''store different field components at different grid locations''. This discretization is known as a <span style="color: red; font-weight: bold;">'</span>''Yee lattice''<span style="color: red; font-weight: bold;">'.</span></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;"></td><td> </td><td style="background: #eee; font-size: smaller;"></td></tr>
<tr><td> </td><td style="background: #eee; font-size: smaller;">In general, let a coordinate <math>(i,j,k)</math> in the grid correspond to:</td><td> </td><td style="background: #eee; font-size: smaller;">In general, let a coordinate <math>(i,j,k)</math> in the grid correspond to:</td></tr>
</table>
Stevenj