
Simulation Tools
We have developed computation and simulation tools that help the group interpret, fit, or understand data from nanostructured optoelectronic materials and devices, including Xray and neutron scattering data, optical measurements, currentvoltage data, incident photon to current efficiency data (ICPE or EQE), and capacitancevoltage data. These take the form of four separate programs. The first three focus on structural data and are discussed below. The "solar" code, which focuses on optolectronic and solar cell measurements, will be released in the near future.
When we started researching nanostructured thin film materials, there were no tools to correctly interpret grazingincidence Xray or neutron scattering (GISAXS and GISANS) data from periodic continuous nanostructured films, despite the fact that these are virtually the only techniques that allows one to dynamically probe the internal structure of a nanostructured film. As a result, we developed two simulation tools, NANOCELL and NANODIFT, both written in Mathematica. NANOCELL simulates the position of the GISAXS/GISANS peaks of an oriented periodic nanostructured thin film. It requires knowledge (or a guess) of the space group symmetry of the nanostructure and the orientation of the film. The code is used to determine if the observed GISAXS/GISANS pattern is commensurate with a given symmetry and orientation, and it can be used to numerically fit lattice constants to data. In addition, the code can be used to overlay the simulate and observed 2D data to determine if symmetry breaking occurs. The code accounts for multiple scattering and uses the distorted wave Born approximation (the typically used single scattering Born approximation fails miserably for the highly ordered films we have been able to synthesize).
The second code, NANODIFT, numerically simulates the 2D intensity distribution of Xray or neutron scattering from an arbitrary 3D nanostructure in an Xray or neutron beam. Similar to NANOCELL, it accounts for multiple scattering and employs the distorted wave Born approximation. It requires the user to input the values of the Xray or neutron scattering contrast in a 3D matrix and numerically computes the inverse fouirer transform (inverse FFT) of the data within the context of the multiple scattering distorted wave Born approximation in order to calculate the scattering intensity. While "windowing" or finitesize effects can create artifacts in the data, apodization routines are used to minimize these artifacts and methods are in place to identify and distinguish the finitesize artifacts from true scattering data.
NANOCELL
A Program to Simulate 2D SAXS and 2D GISAXS from Periodic Nanostructured Films
Overview
NANOCELL [1] is a program that simulates the 2D diffraction patterns from single crystals, samples with multiple
domains or phases, oriented polycrystalline samples with rotational freedom about one axis (planar disorder), and
samples that contain all orientations (powders). If details about the experimental setup are entered into NANOCELL,
the calculated diffraction spots may be overlaid onto the experimental data to match the diffraction pattern. This
enables clear determination of the nanostructure and its orientation, especially for cases where higher symmetries
are broken by film contraction or fiber extension. An example of such a nanostructure determination using NANOCELL
was shown by Tate [2].
In most selfassembled nanostructured thin films the number of observed diffraction spots is far too small to use
programs like DICVOL, ITO, or TREOR to solve for the lattice constants. Instead, the solution of the lattice constants
must be guided by the investigator by making educated guesses about the crystal system (cubic, hexagonal, etc) and the
identity of given peaks (110, 210, etc.). This is a tedious process and becomes increasingly difficult for noncubic
systems, especially when an unknown lattice constant is an angle. NANOCELL facilitates this process in two ways.
First, the 2D diffraction pattern can be quickly simulated for a given guess of lattice constants, space group, and
orientation. Second, the user can enter N dspacing and N guesses of the identities of the peaks. The code will then
solve for the N unknown lattice constants.
Another key feature that makes the code particularly useful for nanostructured thin films, is its ability to define a
structure, orientation, and disorder relative to the substrate and then simulate the 2D diffraction pattern for any
arbitrary orientation of the substrate in the laboratory reference frame. This allows transmission 2D SAXS patterns
as well as 2D grazingangle of incidence SAXS (GISAXS) patterns to be calculated. Features are also incorporated into
NANOCELL to model the many artifacts observed in GISAXS patterns from thin films. These features which are based the
distorted wave Born approximation include the ability to calculate the refraction corrected position of diffraction
peaks and the position of diffraction peaks that arise from the reflection of the incident wave off the film/substrate
interface [1]. Additional strengths and capabilities are listed below.
Capabilities
 Simulation of 2D GISAXS diffraction patterns from thin films with planar disorder (above the critical angle). Thin films with planar disorder have rotational freedom about the substrate normal, but a fixed orientation with respect to all other axes. These simulations account for the effects of refraction and reflection at the air/film and film/substrate interfaces.
 Simulation of 2D diffraction pattern from a single crystal with an arbitrary orientation
 Simulation of 2D diffraction pattern from multiple crystals each with an arbitrary orientation or fixed relationship with respect to each other.
 Simulation of 2D diffraction patterns from randomly oriented polycrystalline samples.
 Full rotation of the structure about the incident beam to sample all of reciprocal space. Each simulation may then be matched to experimental data.
 Solves for N lattice constants from N guesses of d(hkl).
Use of NANOCELL
NANOCELL is free for academic institutions. However, there is license fee for industrial or private use. Any use of
the program or code in publications, presentations, websites, or proposals should reference both the NANOCELL
publication [1] and this website [3]. The source code is written in Mathematica and has been tested with both
Mathematica 5 and 5.1. To obtain a copy of NANOCELL , please contact Prof. Hugh W. Hillhouse at h2@uw.edu .
To use the program, open and execute the main source file. You may then perform calculations using the NANOCELL
functions in separate working files. Several examples of Mathematica working files are posted below
(they are also posted in HTML for viewing).
Development and Testing of NANOCELL
The NANOCELL source code is open and may be modified or extended by the end user. If you do add routines, please
share the revised code ( h2@uw.edu ). We will include the changes in future versions with credit to the author.
Also, if you find or fix a bug, please share this as well.
Most Recent Version
Example Files
Example 1 is a stepbystep tutorial. Unfamiliar users should examine this file first.
 GISAXS Simulation with Experimental Overlay: Effects of refraction and reflection within the thin film
HTML ,
Mathematica Notebook ,
Data File
 WAXS and SAXS comparison: Effects of the Ewald Sphere
HTML,
Mathematica Notebook
 Single Crystal Simulation: Simulation of Reciprocal Space Slice
HTML,
Mathematica Notebook
 Simulation of Multiple Crystals with Well Defined Orientations
HTML,
Mathematica Notebook
 Simulation of a Randomly Oriented Polycrystalline Sample using a 2D Detector.
HTML,
Mathematica Notebook
References
 Tate, M.P., Urade, V.N., Kowalski, J.D., Wei, T.C., Hamilton, B.D., Eggiman, B.W., & Hillhouse, H.W.,
"Simulation and Interpretation of 2D Diffraction Patterns from SelfAssembled Nanostructured Films at Arbitrary
Angles of Incidence: from Grazing Incidence (above the critical angle) to Transmission Perpendicular to the
Substrate," Journal of Physical Chemistry B, 110 (20) 98829892 (2006).
Full Text
 Tate, M.P., Eggiman, B.W., Kowalski, J.D. & Hillhouse, H.W., "Order and Orientation Control of Mesoporous
Silica Films on Conducting Gold Substrates Formed by DipCoating and SelfAssembly: A GISAXS and FESEM Study,"
Langmuir , 21 (22), 10112  10118, (2005).
Full Text
Other Papers which use NANOCELL
 Urade, V.N., Hillhouse, H.W., "Synthesis of Thermally Stable Highly Ordered Nanoporous Tin Oxide Thin Films
with a 3D FaceCentered Orthorhombic Nanostructure," J. Phys. Chem. B, 109 (21), 10538  10541, (2005).
Full Text
 Eggiman, B.W., Tate, M.P., & Hillhouse, H.W., "The Rhombohedral Structure of Highly Ordered and Oriented
SelfAssembled Nanoporous Silica Thin Films," Chemistry of Materials, 18 (3), 723730 (2006).
Full Text
NANODIFT
Description coming...
SASC
Description coming...
SOLAR
Description coming...
