Added a single crystal tab to show transmission and reflectance at a single crystal surface
The method used is that described by Passler et al
Rewrote the calculation of dielectric permittivity so that it would be much more general.
There is now a class which looks after dielectric permittivity information
The sign convention for the imaginary component of the permittivity has changed - e(real)-e(imag)j
Moved the CrystalPermittivity to the SettingsTab
Modified the scripting, scripts written before version 7 may not work.
Modified the way masses are handled, so if the gui modifies the masses they are written out to the script.
Changed the communication between tabs, it was completed before and it still is unfortunately
Stopped setting the requestRefresh variable directly - now use a subroutine to do it.
Added a lot of debugging information to the tabs so it is much clearer what the flow is through the code
Two new input file type has been added 'experimental' and 'pdgui'.
'experimental' allows an experimental dieletric to be specified this includes a lorentz type spectrum
'pdgui' allows a script to be read in and executed 'experimental' and 'pdgui'.
'experimental' allows an experimental dieletric to be specified this includes a lorentz type spectrum
'pdgui' allows a script to be read in and executed.
Scripts read in like this must have the 'program' and 'output file name' specified in the mainTab.settings dictionary.
The mainTab gui no longer needs to have specified the 'program' name (eg. castep, or vasp).
This is determined from the name of the file.
Added a new example of using the fitter and the fitting tab
Revised all the documentation
Added the Mie module from PyMieScatt as there were some issues about crossover
Major changes to the parallel methods used by the code. Now using 'partial' from functools
also removed sending the whole crystal_permittivity array at once.
also create the pool in the notebook and keep reusing it.
also switch back to multiprocessing
MKL threads are no longer changed by the code