************** License*****************
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
********* General Information *********
Wolfsim - Wideband Optical FDTD Simulator
https://sourceforge.net/projects/wolfsim/
Current maintainers: Matthew Miskiewicz, Dr. Michael Escuti
Prior contributors: Chulwoo Oh, Patrick Bowen, Alex Ray
Publications:
http://www.ece.ncsu.edu/oleg/files-wiki/6/62/SPIE_12_Miskiewicz_wolfsim3D.pdf
http://www.ece.ncsu.edu/oleg/files-wiki/1/13/OptExpress07_OH.pdf
Contact information:
Matthew Miskiewicz, mnmiskie@ncsu.edu
Dr. Michael Escuti, mjescuti@ncsu.edu
*********** Running Wolfsim ***********
Run by calling wolfsim with an input file as the argument, as follows:
./wolfsim InputFiles/basic.c
You can optionally specify the directory to which the output files will be written:
./wolfsim InputFiles/basic.c ~/putOutputHere
// The format of the input file is explained in the input file "tutorial.c".
Peruse the example input files to get a feeling for the input format.
You can also refer to the SyntaxGuide for a full list of layers, commands, and parameters.
For interpreting the output, any h5 viewer will do.
As an example, there is an included script showing how to plot data from the h5 file in matlab.
********** Compiling Wolfsim **********
To make wolfsim, simply compile wolfsim.c. The external dependencies (to compile) are hdf5 (v1.8) and libpng, which both also need libz.
If you have the dependencies in the system path, you can compile easily like this:
gcc wolfsim.c -O3 -openmp -lm -lz -lhdf5 -lpng -o wolfsim
It is recommended to always use -O3; OpenMp sometimes has memory issues for other optimization options.
If using windows, using the flag -D WINDOWS should help, however the code is untested on Windows. A Windows binary is forthcoming.
********** Release Notes **********
wolfsim 3.0.7 (Commit 225)
-Fixed a bug which sometimes caused h5 files not to be written
wolfsim 3.0.6 (Commit 224)
-Added missing header files
wolfsim 3.0.5 (Commit 222)
-Changed the OS X binary compilation
-Made the code a little bit more compatible with different compilers
wolfsim 3.0.4 (Commit 221)
-Added output directory option
-Added option to set the CFL number
-Creating the animation does not save the field values now (makes the output file much smaller)
-Fixed and documented the sign of the output orders to follow standard convention
-Re-oriented the output animation so that +x is up
v3.0.3 (Commit 220)
-Fixed a minor memory leak in the polarization grating code
-Fixed the < and > operators
-Added "%" (modulo) operator
-Added layers "SquareGrating," "SinusoidalGrating," and "ArbitraryIsotropic"
-Increased PML thickness to 5*Lambda0 for now. There is a bug in the pml code, and this mitigates it.
v3.0.2 (Commit 219)
-Attempted to compile OS X binary properly
v3.0.1 (Commit 219)
-OS X static binary is now compiled properly
-Added "random()" function
-Various bug fixes
-Various performance tweaks
-Other small improvements
v3.0.0 (Commit 217)
Initial public re-release