Please contact John Treichler for training.

Description:

JetStream is a java library for GDS2. It will create, read/write, and view GDS2 files. It will also read in v30 (Jeol ebeam) files. Via pyjnius the JetStream library functions can also be accessed from python programs. CNF has installed Python3 and the ipython interpreter for accessing JetStream library functions via Python.

JetStream is installed on the CNF Conversion Computers.

Please note that the built-in JetStream viewer may be a bit sluggish as a result of running on a remote system – this is a JAVA limitation.

Invocation

Python

On the CNF conversion computers, to start the ipython interactive interpreter with an environment setup for JetStream, type in the following command:

jetstream

If you have not previously run the "jetstream" command or if you have cleared out your ipython "profile", the above "jetstream" command will re-setup the appropriate ipython startup files. You will see "Setting up yoru ipython environment for jetstream" in the output:

$ jetstream
Setting up your ipython environment for jetstream
Python 3.6.3 (default, Jan  9 2018, 10:18:08) 
Type 'copyright', 'credits' or 'license' for more information
IPython 6.5.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: 
 

Java

Start the NetBeans IDE with the following command on the CNF conversion computers:

netbeans

Please note that the NetBeans window can be a bit sluggish as a result of running on a remote system – this is a JAVA limitation.

When setting up your project in NetBeans, the JetStream JAR library is installed in:

  • /usr/local/jetstream

and the JetStream examples are installed in:

  • /usr/local/jetstream/examples

Using XPRA for Better Graphical Performance

NOTE: xpra is not currently working... CNF Computing is looking into the problem.

To work around the combined inefficiencies of both X11 and JAVA, use "xpra" as follows:

  1. From the "CNF Applications" menu, open both an XTerm and a Korat or Minx window.
  2. In the Korat or Minx window, type in:

    $ xpra start --start=netbeans
    /* OR INSTEAD for ipython: */
    $ xpra start --start=xjetstream
    Entering daemon mode; any further errors will be reported to: 
    Actual display used: :1
    Actual log file name is now:

    Note the number after the colon in the output from the "Actual display used" line. You can also list your displays with the following in the Korat or Minx window:

    $ xpra list
    Found the following xpra sessions:
    /afs/cnf.cornell.edu/.../.xpra:
         LIVE session at :1
  3. In the XTerm window, connect to your xpra display with (making appropriate substitutions for <username>, <korat_or_minx>, and <display number>:

    $ xpra attach ssh:<username>@<korat_or_minx>:<display number>

    You will see a bunch of error output and then your netbeans/ipython window will appear.

  4. Due to a bug in xpra, the menus do not always have proper mouse focus. This makes clicking on menu items hard. If you simply grab the title bar of the netbeans window and move the window slightly, the menus will now work properly. Occasionally, you will have to go back and do this.
  5. After quitting netbeans or ipython, in your Korat or Minx window, quit the xpra server with (you might need to press RETURN once to get a prompt):

    $ xpra stop :<display number>
    server requested disconnect: server shutdown
    xpra at :<display number> has exited.
     

    This will also quit xpra in the regular XTerm window.

Resources

  • No labels