nextnanomat is programmed in C#, and can thus be executed on any operating system. It is, however, developed on and optimized for Windows. On Linux, you have to either install Wine or Mono and then execute nextnanomat.
Please note that we developed nextnanomat for Windows and not for Linux, therefore many things might not work as expected.
Status 2020-04-07: Recommended to use Wine as described below.
Status 2018-05-03: Recommended to use Wine as described below.
The following instructions are for Ubuntu version 20.10. Commands for the Wine installation on various distributions are given in Wine Installation. A detailed description on how to install WineHQ on Ubuntu can be found here: Install WineHQ package on Ubuntu
The following commands are needed to install WineHQ on Ubuntu 20.10.
sudo dpkg --add-architecture i386 wget -nc https://dl.winehq.org/wine-builds/winehq.key sudo apt-key add winehq.key sudo apt-add-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ groovy main' sudo apt update sudo apt install --install-recommends winehq-stable
Download the zip file of nextnano, i.e. the version without installer.
The first thing you have to do when nextnanomat opens is to activate your license.
Please note that we developed nextnanomat for Windows and not for Linux, therefore some things might not work as expected.
Optionally, one can execute the nextnano++ and nextnano³ executables on Linux using Wine without nextnano.
You have to type in:
… (Add an example here…)
Known problems are:
Things that have to be fixed for future updates are:
The following instructions are for Ubuntu version 18.04 LTS.
Run commands in a terminal:
sudo apt update # Update system
sudo apt install wine-stable winetricks # Install required packages (without "-stable" in versions bevore Ubuntu 16.10)
winetricks dotnet45 # Install .net support, follow along on-screen instructions, ignore warnings
winetricks corefonts # Install basic fonts of Windows
winecfg → Select “Windows 8” in Applications → Windows Version
and reboot afterwards.
To start the application, use
(This documentation should be updated for the latest Ubuntu and Mono versions.)
mono nextnanomat.exe &
On some Linux distributions (e.g. Ubuntu), Mono is already preinstalled.
The current Mono version uses .NET Framework version 4.0 by default. nextnanomat, however, still requires the installation of the .NET Framework version 2.0. Therefore the following error occurs:
The assembly mscorlib.dll was not found or could not be loaded. It should have been installed in the `/usr/lib/mono/2.0/mscorlib.dll' directory.
The following solution works:
sudo apt-get install libmono-corlib2.0-cil sudo apt-get install libmono-winforms2.0-cil sudo apt-get install mono-complete
All nextnanomat features seem to work on Linux Ubuntu. However, what does not work satisfactorily is the coloring of the 2D plots. They look too bright, so one can hardly recognize the results. A quick fix is to activate “Show grid”. Then the figure looks better.
If you have any feedback on these instructions, please let us know, then we can keep our documentation up to date.
We can also provide a command line version of nextnano for the various Linux distributions on request.
You can contact us at firstname.lastname@example.org.
The nextnano3 and nextnano++ simulations can be executed from the Linux terminal by directly using the Linux executables, or by using Wine and the Windows executables. In order to make the programs executable, one needs to run the command chmod a+x *.exe, where (*) is replaced by the corresponding nextnano3 or nextnano++ Linux executable. For nextnano3 simulations, one also has to set the environment variable NEXTNANO by running the command $ export NEXTNANO=“/<directory_name>/nextnano/<date>“. For license activation on Linux with Wine, please refer to License Activation. It is also possible to request a license.txt file in order to run simulations on Linux without any use of Wine. Should this be the desired option, one needs to modify the name of the license file in the below commands.
The terminal commands for two nextnano3 and nextnano++ sample input files can then be given as follows, to be executed from the nextnano folder directory:
"nextnano3/Linux gcc 64bit/nextnano3_Linux_gcc_64bit.exe" -log -license "License/License_nnp.lic" -outputdirectory "Output/<name_of_input_file>" -inputfile "Sample files/nextnano3 sample files/1D_simple_GaAs_QW.in"
"nextnano++/bin 64bit/nextnano++_Linux_gcc_64bit.exe" --license "License/License_nnp.lic" --outputdirectory "Output" -log "Sample files/nextnano++ sample files/Quantum Mechanics examples/QW_finite_1D_nnp.in"
In order to simulate other input files, one simply needs to change the name/directory of the last argument. Detail documentation on command line features can be found on the pages nextnano++ command line arguments and nextnano3 command line arguments. Further information and more examples can be found in the README_Linux file and the shell scripts included in the nextnano folder.
In order to run simulations using the Windows executables, one can simply add the above commands after the command wine or wine64 and modify the name/directory of the executable to choose one of the Windows executables.
Please feel free to contact us at email@example.com regarding any questions.