GSvit documentation

open source FDTD solver with GPU support

User Tools

Site Tools


fdtd:outputs

This is an old revision of the document!


Outputs

FDTD handles large data arrays and there are numerous possibilities what to show as a result of the calculation. The most straightforward are the instant values of the field amplitudes at some points in the computational domain, or different cross-sections through it. As an opposite example, the most complex (at least from what can be done in GSvit) are the near-field to far-field transform results, that are accumulated from the boundary values during the whole calculation.

Most of the simple outputs are put to a single Gwyddion file, which can accommodate both computational volume cross-sections and various graphs. Whatever we found suitable for it we put to the Gwyddion file. Not everything is suitable for it, e.g. if one wants to work with multiple point outputs it is easier to have them as text data files. We continuously work on adding as many options for data saving as possible.

<p><b>OUT_FILE</b><br> <i>filename.gwy</i><br> Set filename that will be used for outputing data. Gwyddion file (*.gwy) holds all data cross-sections (2d data). </p>

<p><b>OUT_POINT</b><br> <i>Ex/Ey/Ez/Hx/Hy/Hz/All nskip i j k filename</i><br> Output values of given component of electric/magnetic field into text file (filename). </p>

<p><b>OUT_IMAGE</b><br> <i>Ex/Ey/Ez/Hx/Hy/Hz/All/Epsilon/Sigma/Mu/Sigast nskip i j k description</i><br> Output image of plane cross-section. Which plane is used is determined by indices i j k; two of them must be -1. All results are saved to a .gwy file, skipping given number of steps (e.g. not outputing image in every step unless nskip=1). Description is a string shown for the channel in Gwyddion data browser. </p> <p>Note that Gwyddion shows data with top-left corner being center of coordinates, orientation of axes on what is seen in Gwyddion is show below</p> <img src=“http://gsvit.net/images/out.png”>

<p><b>OUT_SUM</b><br> <i>component skip i_start j_start k_start i_end j_end k_end epsilon mu sigma sigma* filename</i><br> Output sum of electric field intensity (components: ex, ey, ez, all) or absorption (component: abs) extracted from bounding box and material with given properties (epsilon only used for this). If epsilon is -1, no control of this parameter is done and whole box is used. Parameter “skip” controls frequency of file output only (and sync with GPU eventually), values are calculated at each time step anyway and will be output for intermediate steps as well. At present this is tested only on CPU. </p>

<p><b>OUT_SUMTAB</b><br> <i>component skip i_start j_start k_start i_end j_end k_end material filename</i><br> Output sum of electric field intensity (components: ex, ey, ez, all) or absorption (component: abs) extracted from bounding box and material with given properties (nk tabulated values from optical spectra database). Parameter “skip” controls frequency of file output only (and sync with GPU eventually), values are calculated at each time step anyway and will be output for intermediate steps as well. At present this is tested only on CPU. </p>

<p><b>OUT_VOLUME</b><br> <i>Ex/Ey/Ez/Hx/Hy/Hz/All/Epsilon/Sigma/Mu/Sigast/Material/Matmode/Abs skip start stop ascii filename</i><br> Output values of given component of electric/magnetic field or material parameters into binary or text file. Whole computational volume is output. Output starts in “start” step and stops before “stop” step. If “Abs” component is requested (meaning local absorption), output in every output step is a sum of the present and all the previous outputs (values in between outputs are not used; this means that to sum absorption from step 100 to 110 you need to run at least 110 computation steps with volume output skip=1 and volume output start=100, stop=110).</p> <p>If ASCII file (ascii=1) is output, it has following structure: xres yres zres channel (and all the data as an array of values separated by space or end of line).</p> <p>In binary mode the header is omitted, so only arrays are output, all the array values are doubles (eight bytes), there are no separators. You can read binary output directly by e.g. <a href=“http://paraview.org”>Paraview</a> as shown below where a slice of absorption volume of 100x100x100 voxels is visualised (here you can check also data loading parameters for Paraview).<br> <a href=“images/sv_paraview.png”><img src=“http://gsvit.net/images/sv_paraview.png” width=“500”></a> </p>

<p><b>OUT_FORCE</b><br> <i>skip i_start j_start k_start i_end j_end k_end filename</i><br> Output optical force acting on volume defined by six integers. X, y, and z component time dependence is output together with its values averaged over source period (source frequency is determined using FFT). Optical force is calculated using Maxwell stress tensor. No media should cross the boundary and scaterrer to be evaluated should be placed inside the evaluation volume. </p>

fdtd/outputs.1535540442.txt.gz · Last modified: 2018/08/29 13:00 by pklapetek