The brand new Neutron Reflectivity Simulator in Eclipse ICE and what it took to make it


One common method of determining the exact structure of thin films is to put them into a beam of neutrons and see how the neutrons reflect off the surface. Such experiments require significant time and effort at one of a handful of facilities around the world since highly-collimated neutron beams are not generally available at local hardware stores. Simulating the profile of the reflected neutrons can thus greatly accelerate the research by providing insight on the best cases to study and keeping the final experiment focused and efficient.

This talk describes a brand new neutron reflectivity simulator implemented as part of the Eclipse Integrated Computational Environment (ICE) and all the cruel and unusual punishment required to port it from a Visual Basic-laden Excel spreadsheet to the Rich Client Platform (RCP). In particular, it focuses on the new development required to provide Excel-like features in ICE that either preserve the user experience or introduce a new, more powerful capability that only Eclipse could provide. This talk will show the enhancements under the hood that included using GlazedLists to setup generic Material types and improving project support. It will also show enhancements in the ICE workbench including the integration of Nattable for Excel-like tables, enhancements to our visualization tools and SWT-XY-GRAPH for plotting results and inputs, and integrating the Eclipse Advanced Scripting Environment (EASE) to provide Python and Javascript support for programmatically editing table values.

This is a beginner level talk that will give attendees a good understanding of some of the scientific capabilities available in Eclipse and how many, seemingly unrelated Eclipse projects and other tools can be integrated in new ways to do amazing things. Attendees will also be given a live demonstration of the tool and provided resources for future reference and engagement. Presentation materials will be provided in advance at

Session details
Schedule info
Session Time Slot(s):
Wednesday, November 4, 2015 - 10:30 to 11:05