-
Notifications
You must be signed in to change notification settings - Fork 96
Docker Image
As of January 2024, we provide a Docker Container for EMsoft 5.0. This means that you no longer have to build EMsoft yourself, or download the nightly builds from the BlueQuartz server. Currently, the Docker image supports the AMD64 and ARM64 platforms and we are working on the Windows container.
-
If you are new to EMsoft and you have never executed any of its programs, then you will need to create a few folders inside which your data files will be kept. At an appropriate location in your home folder, create a folder called EMsoft5. Everything will be contained within this folder. For what follows below, we will use the symbol fullpath to indicate the absolute path to this EMsoft5 folder. Inside this folder create three folders with the names: EMPlay, XtalFolder, and Docker.
-
On the other hand, if you already have EMsoft 5.0 installed and you have existing data and crystal structure folders, you can continue to use those with the Docker image as explained below. In that case you only need to create the EMsoft5 and Docker folders.
-
If you haven't already done so, download and install the Docker app; start the app.
-
From a terminal window, move to the EMsoft5/Docker folder, and pull the Docker image as follows (note the all lowercase emsoft!):
docker pull marcdegraef/emsoft:buildx-latest
- Then, to execute the image on a Mac ARM platform, use the following command:
docker run --rm -it -v /fullpath/EMPlay:/home/EMuser/EMPlay -v /fullpath/XtalFolder:/home/EMuser/XtalFolder --platform=linux/arm64 marcdegraef/emsoftbuildx-latest
On a Linux platform, simply replace arm64 in the --platform option by amd64. Note that on the arm64 platform, programs that need OpenCL access to the GPU currently do not work; we are looking into that issue...
-
This should start up the container and you will be logged in as the EMuser user in the /home/EMuser folder. The shell PATH variable is already set up to include the EMsoft executable folder, so you can simply type the name of an EMsoft program to execute it. The EMPlay and XtalFolder folders will be symbolic links to the corresponding folders in your file system; this way, you will not lose any data when you quit the container.
-
If you want to see all the EMsoft global variables, execute the EMsoftConfigTest program. While working in the container, you can change some of these parameters by editing the EMsoftConfig.json file in the /home/.config/EMsoft folder; note that your changes will disappear when you quit the container.
Wiki pages are maintained by M. De Graef; they are part of the EMsoft package and fall under the same copyright (BSD2).
Information for Users
SEM Modalities
- Monte Carlo Simulations- EBSD Master Pattern Simulations
- EBSD Overlap Master Patterns
- EBSD Pattern Simulations
- EBSD Dictionary Indexing
- EBSD Spherical Indexing
- EBSD Reflector Ranking
- EBSD HREBSD
- ECP Master Pattern Simulations
- ECP Pattern Simulations
- TKD Master Pattern Simulations
- TKD Pattern Simulations
- ECCI Defect Image Simulations
TEM Modalities
- HH4- PED
- CBED Pattern Simulations
- STEM-DCI Image Simulations
- EMIntegrateSTEM utility
Utility Programs
- EMConvertOrientations- EMDisorientations
- EMHOLZ
- EMKikuchiMap
- EMOpenCLinfo
- EMZAgeom
- EMcuboMK
- EMdpextract
- EMdpmerge
- EMdrawcell
- EMeqvPS
- EMeqvrot
- EMfamily
- EMGBO
- EMGBOdm
- EMgetEulers
- EMgetOSM
- EMlatgeom
- EMlistSG
- EMlistTC
- EMmkxtal
- EMorbit
- EMorient
- EMqg
- EMsampleRFZ
- EMshowxtal
- EMsoftSlackTest
- EMsoftinit
- EMstar
- EMstereo
- EMxtalExtract
- EMxtalinfo
- EMzap
Complete Examples
- Crystal Data Entry Example
- EBSD Example
- ECP Example
- TKD Example
- ECCI Example
- CBED Example
- Dictionary Indexing Example
- DItutorial
Information for Developers