Graduation in the Global Education & Learning Community October, 28th 2004
Graduation in the Global Education & Learning Community is upon us again. This time the fare is aimed at helping teachers teach with visualization tools. In addition, we have the New2Java project for newbie Java developers. The graduated project's descriptions and links are listed below.
Rin'G - A non-intrusive tool for the study of graph algorithms
Rin'G is an environment for the study and implementation of Graph Theory algorithms that allows users to view interactive, step-by-step animations of their executions.
Users can draw graphs on a graphical user interface, load and save graphs and animations and add their own algorithms to be executed. An english version of the user manual will soon be published on this site.
The environment is being developed in Java, for desktop platforms, and uses state-of-the-art technology, such as advanced Swing programming, Design Patterns, and the java.lang.reflect API. There is a stable release available in the Documents & files section, and source-code will also be available in the near future.
This tool is being developed as an undergraduate project at the Pontifcia Universidade Catlica de Minas Gerais, in Belo Horizonte, Brazil, and it will be open for collaboration as soon as this process is over.
JotAzul - Learning POO in an Object Oriented Java IDE
The JotAzul is a free Object Oriented Java IDE created to help teachers and newbies in the POO World. It was inspired on the BlueJ IDE (not open source) and Blue System (dead project) language. You can find information about "The Objects First" learning approach at these sites.
You can point and click to create classes, attributes and methods. After building the project, a simple class diagram is generated automatically. Here you can create new instances of your classes and access static methods and static attributes (you don't need the annoying static void main(String args) method !!).You can see your objects. You can interact with them accessing methods and attributes just pointing and clicking or evaluating expressions at runtime. You can record these action as Java code ! JotAzul was created using the SWT (Simple Widget Toolkit) It supports multi-language (but only English and Brazilian Portuguese in the latest version). Some screenshots here are in portuguese. Sorry about that
*The name jotazul is a combination of the words jota (the name for J letter in portuguese) and azul (blue in portuguese) :)
MTJ - Matrix Toolkits for Java
he matrix toolkits and associated software libraries found here offer a very wide range of high-performance dtastructures and algorithms for scientific computing. Some of the problems which can be solved with this software includes
- Solving systems of equations, either square systems or over/under-determined systems
Direct solvers such as LU and Cholesky factorization can be used for small scale problems
Iterative solvers and preconditioners are available for large, sparse matrices
- Performing spectral analysis of matrices by eigenvalue solvers and singular value decompositions. Both symmetric and unsymmetric eigenvalue problems are supported
- Supports a comprehensive set of matrices. These include
General dense and structured sparse (banded, triangular, tridiagonal, symmetric)
Unstructured sparse matrices. These perform internal memory allocation, and are easy to use
Distributed memory matrices, for high-end parallel computing
- Parallel computing is supported on several levels:
It is possible to use native BLAS which may support CPU vectorization and SMP machine
Threads are used for parallel sparse matrix/vector products
- The distributed memory matrices offer the highest-performing parallelization by utilizing a custom message passing interface
Packages in MTJ
new2java - Information about Java technology for developers.
The New to Java project directs new and experienced developers to information for learning the Java platform. This area helps developers get to the information they need to quickly learn about various Java technologies. In addition, you can communicate with fellow developers, talk code, discuss problems, and share information.
Read articles, tutorials, take online quizzes, use code samples, and more from the Documents & files section. Discuss programming problems and solutions, share coding technqiues, and chat with fellow developers on the online Discussion forums. Sign up for announcements through the Mailing lists.