1. Introduction

Several parts of ems have been translated in the "java" language. Though java is slower than 'C', 'C++' or Fortran, its portability is better. In particular the graphical user interface (GUI) is almost independent of the target operating system. As a result jems has already been ported to Windows NT and Mac. Ports to Sun OS and Linux are under consideration. Despite the larger execution time, rather large calculation can be performed in less than a minute. Figure 1.1 shows a HREM map of Ti2Nb12O29 (the well known dominoes...). The map is formed of 8 x 8 images calculated for 10 different thickness and 10 different defocus for each thickness. The Calculation time was 50.5 seconds on a 450 MHz Pentium Pro III. 

Figure 1.1

Another example is the calculation of a HREM map of the S5 <310> grain boundary in Au as show on figure 1.2.

Figure 1.2

Installed "ems" functions


At present not all ems programs have been translated. The following table shows what programs are available in jems.

ap Argand plot
bp thickness plot
bu unit cell creation
cb Convergent Beam Electron Diffraction pattern calculation
di diffraction pattern (kinematical)
hl HOLZ lines pattern
im image calculation
in indexing of spot patterns
ki indexing of Kikuchi patterns
kp Kikuchi lines pattern
ms multislice iteration
pg projected potential
pp powder pattern
pr image print
sc super-cell calculation
sd super-cell display
sf structure factor calculation
st stereogram plot
tv image display

Table 1.1

 Many aspects of the above ems programs have improved in jems. In particular, non-centric space-groups are now fully supported. Figure 1.3 shows the dialog used to select a space-group for a cubic crystal. 


Figure 1.3

New    capabilities

Several new functionalities have been added either as options or as new command with their own dialog. In particular rocking curves can now be calculated by the  Blochwave scheme.


Interface to Mathematica

During the calculation of the complex reflections (amplitude and phase) using either the multislice or the Blochwave method, it is possible to save these values as a function of the specimen thickness on text files, that can be easily read by Mathematica. Examples of very basic Mathematica code is given in this documentation.


Special keyboard keys

Four different combinations of keyboard keys are recognized by jems.

When the mouse is positioned on the main jems window, the following combinations are defined:

Alt+Ctrl+Shift+D enter debug mode
Alt+Ctrl+Shift+K kill a window or dialogue
Alt+Ctrl+Shift+P print window
Alt+Ctrl+Shift+S save window as .gif file
Alt+Ctrl+Shift+T display the table of default settings

When the mouse is positioned on dialog or result  windows, the following combinations are defined:

Alt+Ctrl+Shift+P print window
Alt+Ctrl+Shift+S save window as .gif file