Overview of DataMelt
DataMelt is a computational environment that allows you to perform data analysis, mathematical and statistical calculations using scripting languages (Python/Jython, BeanShell, Groovy, JRuby, Matlab/Octave) on the Java and Android platforms. Unlike other similar programs, DataMelt can be used for scientific computations using the world's most-popular enterprise language, Java. DataMelt is a takeover of jHepWork (1995-2013) and SCaVis SCaVis (2013-2015) . SCaVis is fully compatible with the jHepWork v3.9.
DataMelt in social media and general books
DataMelt was used for example codes of an inspirational book for general audience. This book was used to create stories for the DesignedWorld YouTube channel (subscribe!) with short visual stories on unexplored phenomena. See also Facebook and Instagram.
Why using Java
Java is far and away the most popular and widely used programming language in the world. It is enterprise standard language. It has been the number 1 most popular language since its creation in the mid-90's. See TIOBE popularity Index.
DataMelt uses scripting languages which are significantly faster than the standard Python implemented in C. For example, DataMelt provides Groovy dynamic scripting language which is a factor 10 faster than the standard Python for numeric calculations. JRuby is another dynamic language included in DataMelt which has a higher performance compared to Python. DataMelt algorithms implemented in Java are as fast as similar programs in C/C++.
Java vs C/C++
- Multiplatform. Interpreted by a process virtual machine
- Designed to support network computing (C++/C is for system programming)
- Designed for distributed analysis environment
- Simple (no pointers) and better structured than C++/C
- Automatic memory management
- Robust, stable, backward compatible
- Includes reflection technology (missing in C++)
- Powerful multithread support
- Advanced serialization
- Advanced run-time checks
- Larger choice for free IDEs (Netbean, Eclipse, and DataMelt IDE itself)
- Scripting support (Python, Groovy, Ruby, etc.)
Getting started tutorial (3 min movie)
This tutorial discusses the community "desktop" IDE. In addition, DMelt includes IDE with plotting canvases and Jython shell for small-screen devices. This video shows how to use it. Here is another example showing an interactive fit program .
Image gallery
Here you can find a gallery of output images created by DataMelt, together with source codes. Look at this link.
Books
You can learn about DataMelt from several books.
Wiki DataMelt manual
DataMelt wiki manual is hosted by HandWiki computing encyclopedia. It is a good reference for all topics. It included real-time updates, new features and many examples that were not covered in the books.
Examples
Hundreds of DataMelt code examples can be found in code examples.
Java API
See Full Java API of DataMelt. In addition, use Java API sorted by analysis topic.
Movies with tutorials
Windows users may need to download MPEG4 codecs.
- YouTube: New features in DataMelt 2.4
- YouTube: Running DataMelt 1.2
- Working with DataMelt examples (OGV file, 15Mb), or look at YouTube DMelt clip
- YouTube: features in DataMelt (jHepWork 3.2)
- Working with Jython prompt (MPEG4 file, 15Mb)
- DataMelt graphics (MPEG4 file, 50Mb)
- Reading ROOT histograms and plotting them on different pads (MPEG4, 9Mb)
- Reading AIDA files (MPEG4 file, 7Mb)
- Making java jar library (MPEG4 file, 9Mb)
- Data analysis (MPEG4 file, 50Mb)
- Jython HPlot objects (MPEG4 file, 6Mb)
Jython useful links
- Jython User Guide HTML, official web page
- Jython User Guide Recent User Guide
- Python Documentation HTML, official web page
- Intro to Jython, Part 1 PDF file, by developerWorks
- Intro to Jython, Part 2 PDF file, by developerWorks
Sponsoring DataMelt
DataMelt is supported by donations and membership fees that ensure continuity and further development of this project.
Sponsoring DataMelt project is also a viable option. During the period of time when a sponsor covers the DataMelt maintenance cost, DataMelt team waives the membership fees. This means that the DataMelt documentation projects, such as:
- Online Wiki Manual
- Online examples: https://datamelt.org/code/index.php
- Java API: https://datamelt.org/javadoc/
- Showcase: https://datamelt.org/showcase/
- Topic API: https://datamelt.org/api/
- etc.
will have free access to the public without requiring DataMelt membership (and login to the member portal). The name (+ logo) of the sponsor that made possible free access to DataMelt resources will appear in all places which were previously protected for non-members.
Contact dmelt [AT] jwork.org for more information.