jHepWork
  jHepWork
  Multiplatform environment for scientific computation and data analysis

Web This Site

Latest news

jHepWork 3.4b
Development release.
See Changelog

jHepWork 3.3
Stable release.
See Changelog

Contact

jhepwork(AT)jwork.org
(replace (AT) with @)

Links:

Java Java
jhepwork

jHepWork ("jWork") is an interactive environment for scientific computation, data analysis and data visualization designed for scientists, engineers and students. The program incorporates many open-source math software packages into a coherent interface using the concept of scripting, rather than only-GUI or macro-based concept.

jHepWork has a goal of creating a tool competitive to commercial scientific packages. The program can be used everywhere where an analysis of large numerical data volumes, data mining, statistical analysis and mathematics are essential. The program can be used in natural sciences, engineering, modeling and analysis of financial markets.

jHepWork is fully multiplatform since it is a 100% pure Java package. It runs on any platform where Java is installed. It was fully tested on Windows, Mac, Linux and any hardware, such as desktops, laptops, netbooks, production servers. It can run in either a GUI-driven mode, or a batch mode. Finally, jHepWork takes the full advantage of multicore processors.

jHepWork can be used with several scripting languages for the Java platform, such as Jython, (the Python programming language), JRuby (the Ruby programming language) and BeanShell. This brings more power and simplicity for scientific computing. The programming can also be done in the native Java.

jHepWork includes:

  • Java libraries for 2D/3D graphics and scientific data visualization. See jHepWork examples. The main programming language in all these examples is Jython, an implementation of the high-level language Python for the Java platform. Examples are also available for JRuby (the Ruby programming language) and BeanShell.
  • Numerical libraries for data structures and data manipulation. The libraries include numerical and analytical calculations, linear algebra operations, equation solving algorithms. Many libraries are based on the JAIDA classes for data manipulation, construction of histograms and functions. jHepWork includes high-level data types for manipulations, calculations of systematical errors and their visualization which have no analogy in other data-analysis software. Programs written using the jHepWork framework are very short, have remarkable power with very clear syntax due to high-level constructions of the jHPlot package.
  • Elements of analytic computations. In this mode, Matlab or Octave programming can be used.
  • Comprehensive statistical packages. More than 10 thousand JAVA classes and methods are packed in 50 MB library pack (this excludes those from the native Java API). For example, the core package jHPlot (the main numerical package) has about 2000 classes and methods. The rest are third-party JAVA or Python libraries. One can perform any statistical data analysis, linear or non-linear fits, cluster analysis, generate random numbers, construct neural networks etc.
  • Comprehensive API for data input and output (I/O). Being Java, it includes the native Java I/O from the java.io package. Being Python, it includes the native Python I/O methods and classes. In addition, the native jHepWork I/O contains Java classes for persistent data storage in ZIP-format, Java-serialisation format and XML-formats. jHepWork contains packages for several Java-native SQL databases (including SQLite) and object-based databases. It complies with the ROOT and AIDA data formats. Finally, it uses several platform-neutral file formats, including the compressed Google's Protocol Buffers format.
  • Professional output graphics for data and function visualization. All plots can be exported to raster formats (PDF, PNG, JPG, etc.) and high-quality vector formats (PostScript, EPS) ready to be included into presentations and scientific papers (including the LaTeX format).
  • Enhanced Jython shell and BeanShell consoles with syntax highlighting, command line completion and built-in macro language for custom commands. One can easily script your data-analysis or scientific algorithm in a completely interactive way in a few seconds.
  • Powerful IDE with a code assist which is especially designed for Python/Jython and Java. This editor contains complete syntax highlighting for Java and Python. In addition, it has syntax highlighting for all numerical and graphical classes of the jHPlot package. It has a code assist for Java and Python classes and methods. It allows to mix Jython/Python code and LaTeX equations to make scientific articles. It knows about bracket matching and whitespace to delimit Python program blocks. It generates Python/Java code structure on the fly.

    This IDE also supports many other programming languages, C/C++, PHP, FORTRAN and many more. It is also specially designed for editing LaTeX files. It has several unique features, such as:
    • Java-based editor with on-fly spell checking (this is the only Java editor with such feature).
    • Color syntax highlighting for many programming languages, including syntax highlighting for all classes and methods of ROOT
    • Multiple clipboards
    • Multiple Eclipse-like bookmarks
    • File browser
    • Multi-document support
    • Linux/Unix - like commands cp, mv, rm, cat etc. are supported.
    • Extensive LaTeX support: a structure viewer, a build-in Bibtex manager, LaTeX equation editor and LatexTools
    • A document structure viewer for fast navigation
    • Extensive configurability

What is inside

Java jHepWork is seamlessly integrated with Java-based Linear Collider Detector (LCD) software concept and contains the most recent FreeHEP Java libraries (usually slightly changed and recompiled). In addition it contains many other scientific packages which are usually modified and well maintained. Look at how it compares to other free packages: JAS and ROOT.

jHepWork license

Copyright © 2005-2011 S.Chekanov: jHepWork

You are free to use jHepWork for academic research, in institutions of higher education, K12, non-profit organizations and for personal use (but not for your business). If you will use it for COMMERCIAL purposes, you should become a Member or contact us at jhepwork(AT)jwork.org (replace (AT) by @) to receive a version of this program with a more permissive license and redesigned libraries. Read the jHepWork license.

Use the [Member login] link to unlock documentation for advanced usage of jHepWork as well as to obtain a permanent link to a version of this program with a license for commercial usage.

Page views:1029805 since January 1, 2010