Changes

EM.Tempo

33 bytes removed, 13:37, 6 August 2015
/* Running FDTD Simulations */
* Select the simulation mode and run the FDTD engine.
For certain problems, more than one combination or choice of settings and [[parameters]] may still give acceptable results. In most cases, [[EM.Cube]] Tempo tries to make these choices convenient for you by suggesting default settings or default parameter values. For example, [[EM.Cube]] Tempo by default generated am generates an "adaptive" type mesh with a default density of 20 cells per effective wavelength. The default computational domain features CPML walls placed a quarter free-space wavelength away from the large bounding box of the entire physical structure. A modulated Gaussian waveform with certain preset optimal [[parameters]] is used to drive the project's excitation source by default. You can change most of these settings arbitrarily. For example, you can set up your own computational domain with different types of boundary conditions, customize the FDTD mesh by modifying a large number of mesh settings and use other types of excitation waveforms.
{{Note|Keep in mind that you are always responsible for the choice of excitation source and the project observables. In other words, [[EM.Cube]] Tempo does not automatically provide a default excitation source or does not suggest default observables.}}
[[Image:FDTD57.png|thumb|390px|EM.Tempo's Run dialog.]]
Analysis is EM.Tempo's simplest and most straightforward simulation mode. It runs the FDTD time marching loop once. At the end of the simulation, the time-domain field data are transformed into the frequency domain using a discrete Fourier transform (DFT). As a result, you can generate wideband frequency data from a single time-domain simulation run. The other simulation modes will be explained later in this manual.
To open the Simulation Run Dialog, click the '''Run''' [[Image:run_icon.png]] button of the '''Simulate Toolbar''' or select '''Menu > Simulate > Run...''' from the menu bar or use the keyboard shortcut '''{{key|Ctrl+R'''}}.
To start the FDTD simulation, click the '''Run''' button at the bottom of this dialog. Once the simulation starts, the "'''Output Window'''" pops up and reports messages during the different stages of the FDTD simulation. During the FDTD time marching loop, after every 10th time step, the output window updates the values of the time step, elapsed time, the engine performance in Mega-cells per seconds, and the value of the convergence ratio U<sub>n</sub>/U<sub>max</sub> in dB. An [[EM.Cube]] FDTD simulation is terminated when the ratio U<sub>n</sub>/U<sub>max</sub> falls below the specified power threshold or when the maximum number of time steps is reached. You can, however, terminate the FDTD engine earlier by clicking the '''Abort Simulation''' button.
=== The FDTD Simulation Engine Settings ===
An FDTD simulation involves a number of numerical [[parameters]] that can be accessed and modified from the FDTD Engine Settings Dialog. To open this dialog, select '''Menu > Simulate > Simulation Engine Settings... '''or open the '''Run Dialog''', and click the '''{{key|Settings''' }} button next to the engine dropdown list.
In the " '''Convergence''' " section of the dialog, you can set the '''Termination Criterion''' for the FDTD time loop. The time loop must stop after a certain point in time. If you use a decaying waveform like a Gaussian pulse or a Modulated Gaussian pulse, after certain number of time steps, the total energy of the computational domain drops to very negligible values, and continuing the time loop thereafter would not generate any new information about your physical structure. By contrast, a sinusoidal waveform will keep pumping energy into the computational domain forever, and you have to force the simulation engine to exit the time loop. [[EM.Cube]]'s [[FDTD Module]] Tempo provides two mechanism to terminated the time loop. In the first approach, an energy-like quantity defined as U<sub>n</sub> = &Sigma; [ &epsilon;<sub>0</sub>|'''E<sub>i,n</sub>'''|<sup>2</sup> + &mu;<sub>0</sub>|'''H<sub>i,n</sub>'''|<sup>2</sup> ].&Delta;V<sub>i</sub> is calculated and recorded at a large random set of points in the computational domain. Here i is the space index and n is the time index. The quantity U<sub>n</sub> has a zero value at t = 0 (i.e. n = 0), and its value starts to build up over time. With a Gaussian or Modulated Gaussian pulse waveform, U<sub>n</sub> reach a maximum value U<sub>max</sub> at some time step and starts to decline thereafter. The ratio 10.log( U<sub>n</sub>/ U<sub>max</sub>) expressed in dB is used as the convergence criterion. When its value drops below certain '''Power Threshold''', the time loop is exited. The default value of Power Threshold is -30dB, meaning that the FDTD engine will exit the time loop if the quantity U<sub>n</sub> drops to 1/1000 of its maximum value ever. The second termination criterion is simply reaching a '''Maximum Number of Time Steps''' , whose default value set to 10,000. A third option, which is [[EM.Cube]]Tempo's default setting (labeled "'''Both'''"), terminates the simulation as soon as either of the first two criteria is met first.
{{Note|Keep in mind that for highly resonant structures, you may have to increase the maximum number of time steps to very large values above 20,000.}}
# GPU Solver
The serial CPU solver is [[EM.Cube]]Tempo's basic FDTD kernel that run the time marching loop on a single central processing unit (CPU) of your computer. The default option is the multi-core CPU solver. This is a highly parallelized version of the FDTD kernel based on the Open-MP framework. It takes full advantage of a multi-core, multi-CPU architecture, if your computer does have one. The GPU solver is a hardware-accelerated FDTD kernel optimized for CUDA-enabled graphical processing unit (GPU) cards. If your computer has a fast NVIDIA GPU card with enough onboard RAM, the GPU kernel can speed up your FDTD simulations up to 50 times or more over the single CPU solver.
For structures excited with a plane wave source, there are two standard FDTD formulations: '''Scattered Field '''(SF) formulation and '''Total Field - Scattered Field''' (TF-SF) formulation. [[EM.Tempo]] offers both formulations. The TF-SF solver is the default choice and is typically much faster than the SF solver for most problems. In two cases, when the structure has periodic boundary conditions or infinite CPML boundary conditions (zero domain offsets), only the SF solver is available.
28,333
edits