Skip to main content

Steps

  1. Ensure that you have at least 48GB free space on your host machine. A convenient option is to install the environment on a high-speed USB 3.0 (or higher) SSD drive (not a USB Flash drive) with 128GB or higher capacity.
  2. Remove any previous version of VirtualBox from your machine.
  3. Install VirtualBox (version 6.1) on your host machine. SciComp@UNC assumes the host machine satisfies the CCI minimal requirements. Also install the VirtualBox Extension Pack.
  4. UNC users should install and launch VPN to enable off-campus use of network resources, including access to commercial software licenses.
  5. Create a SciComp@UNC directory somewhere on your machine, and download into this directory the file SciComp@UNC.ova (10.8 GB). This is an Open Virtual Appliance file that contains the preconfigured SciComp@UNC environment. This is a very large file and should be downloaded from high-speed, preferably on-campus, connections. Some browsers (e.g., Google Chrome) may block download of files with an .ova extension. You can right-click, select “Save link as …”, and then select the “Keep” option in the browser toolbar.
  6. From File Explorer (under Windows) or Finder (under OS X) right-click and open the downloaded SciComp@UNC.ova file. This will decompress the virtual machine image onto your host computer.
  7. In VirtualBox, adjust the settings of the SciComp@UNC virtual machine. In particular:
    • Set virtual machine memory to 25-50% of your host machine memory;
    • Define shared folders so you can access your host machine files in your virtual machine;
    • Adjust the scale factor to 200% if you have a high-definition display
  8. From VirtualBox, launch the SciComp@UNC virtual machine. If your machine is not configured to allow 64-bit virtualization, see remedy below.
  9. Log onto SciComp@UNC:
    • Username:  student
    • Password: tarheel
  10. After the initial virtual machine boot and login you can suspend the SciComp@UNC environment whenever needed through the File->Close->”Save the machine state” menu option. This allows you to save your current work, and return to the exact same state upon restart.
  11. You can reclaim disk space on the host machine by erasing the downloaded SciComp@UNC.ova file.
  12. Explore the environment through the showcase!

Enabling 64-bit virtualization

If your machine is not configured to allow 64bit virtualization, change UEFI or BIOS settings.

  • On older machines, this is accessed by pressing F1, F2, F10, F12 or Del keys immediately upon poweron.
  • On newer machines running Windows 10, go to Settings->Windows Update->Recovery->Troubleshoot->Advanced options->UEFI firmware->Restart. This will boot up the machine into UEFI Firmware setting.

Once in the settings, choose Security and enable both virtualization options.

Software highlights

  • TeXmacs, a sophisticated editor allowing embedded computational sessions, natural mathematical notation, export to LaTeX, PDF, HTML formats. SciComp@UNC has preconfigured support for sessions in: Asymptote, Clisp, Eukleides, Gnuplot, Maxima, Octave, Python, Scheme, Mathematica. Inclusion of such sessions allows production of “live” documents that combine mathematical text, graphics, and computation, enabling both instruction and reproducible research. Of crucial practical importance to research in scientific computation, TeXmacs is extensible through Guile (an implementation of Scheme, which is itself a descendent of LISP). Use of Guile extensions allows sophisticated processing and concurrent documentation.
  • BEARCLAW, a general purpose package to solve partial differential equations, successor of CLAWPACK to solve of hyperbolic, parabolic and elliptic equations using adaptive mesh refinement, and allowing various levels of parallelism (OpenMP, MPI, CUDA).
  • Complete, up-to-date Gnu compiler suite (v9.2, gcc, g++, gfortran, gccgo)
  • Python3 environment for scientific computing
  • TensorFlow, a machine learning platform within Intel Python (CPU only)
  • Pyzo, a Python IDE configured to work with Intel Python
  • Octave, a free Matlab clone
  • Maxima, a symbolic computation system
  • Julia, a high-performance scripting language for scientific computation
  • SageMath, a unified Python interface to a suite of open-source applications covering many areas of mathematics
  • JupyterLab, a notebook interface to Julia, Octave, Python, SageMath
  • FreeFEM++, a high-level finite element language
  • Calculix structural finite element package
  • FreeCAD 3D parametric modeler, capable of interaction with Calculix
  • TeXlive typesetting system
  • Paraview, OpenDX data visualization
  • OpenMPI, parallel computation through message passing
  • Lazarus, a cross-platform rapid application development environment that uses Free Pascal
  • Inkscape, Gimp drawing applications
  • Libreoffice, a complete office software suite with support for Microsoft formats
  • Genius, an advanced general-purpose calculator especially well-suited for educational demos
  • In addition to the above public-domain software packages, UNC users can launch Mathematica and Totalview from campus servers.

Tutorials

Several tutorial videos are posted on YouTube on use of the virtual machine: