This page is for the current JSim version 2.0 and higher. Click here for the earlier JSim 1.6 version.
Introduction
JSim's architecture has been designed with placeholders for many features we wish to provide eventually, but have not yet gotten around to implementing. This document describes those features. NSR seeks collaborators interested in helping to develop these features so they can be incorporated into the standard JSim distribution. Some features are more amenable to collaborative development than others. If you are interested in discussing such collaboration, please contact us:
GUI Issues
The JSim GUI is still being refined to best balance simplicity for new users, effiency for frequent users and feature richness for power users. These needs are often in conflict, so the tinkering continues.
Some other worthwhile projects include:
- improved printing support (currently marginal);
- improvements in built-in text editor;
- integrated use of an external text editor program (e.g. vi, emacs);
- more informative error messages and access to appropriate help;
Tutorials and Other Documentation
JSim program documentation is still incomplete, but improves with time. Scientific tutorials, for use with JSim, are under development in areas for which NSR staff have expertise. Tutorials in other areas will, hopefully, be contributed by collaborators.
Operating Systems Support
JSim is currently available for Linux(amd64), Windows and Macintosh. An WWW applet version, for running in a WWW browser is also available. Collaborators will access to other OS platforms may contribute to the JSim effort with builds for their systems. With the advent of remote server implementation (above), there is interest in porting to supercomputer platforms.
Model Analysis Tools
None on the list currently.
Model Run-time Customization
This feature allows user to modify the default run-time appearance of the model to include diagrams and/or simplify navigation of parameter space. The end-result will be similar to that of the .cf file in NSR's XSIM simulator, although RTML (Run-Time Markup Language) has the following advantages:
- XML dialect improves robustness, openness and expandability;
- all pages are rescalable, depending upon screen real-estate;
- format supports eventual development of drag-and-drop editor.
Currently, model developers may customize models by writing RTML in the text editor pane of the Model Customization sub-tab. However, this is still experimental, and RTML tags are not yet documented.
Plot Graphics
Currently, XY plot, coutour and colormap plots are available. Future plans include surface plots and animated plots.
Computational Engine
JSim's MML (Mathematical Modeling Language) is quite general allowing continuing introduction of new capabilities without required changes to existing models. Some planned and possible features are:
- Non-linear zero finder implementation. This is mostly done, and is just waiting on the numeric method implementation and/or interfacing which should be fairly quick if someone finds this interesting;
- Support for C++, Fortran, Matlab and/or Mathematica language functions and procedures (F&P) in MML;
- Safety mechanisms for insuring F&P written in other languages are not malicious;
- Improved unit support in F&P;
- Improved F&P, data interpolation, multiblock and relation sequencing in the JSim planner.
- 2D and 3D PDE support (currently only 1D supported);
- 2nd and higher order ODE and PDE support;
- Expanded MML template support;
- More domain-specific template libraries and BCLs (e.g. membrane transporters, LRC circuits, flux-balance analysis);
- Structures equivalent to variable indexing;
- An expanded stable of ODE solvers;
- markov model support.
Macintosh-specific issues
Macintosh users should take notice that some standard Macintosh features have not yet been implemented into JSim. The JSim development team hoped to eventually address the following limitations:
- JSim will quit when all windows are closed.
- There is no Window menu. If there are several project windows open, they usually hide each other. Press and hold or right-click on the JSim icon on the Dock to switch between projects.
Comments or Questions?
Model development and archiving support at https://www.imagwiki.nibib.nih.gov/physiome provided by the following grants: NIH U01HL122199 Analyzing the Cardiac Power Grid, 09/15/2015 - 05/31/2020, NIH/NIBIB BE08407 Software Integration, JSim and SBW 6/1/09-5/31/13; NIH/NHLBI T15 HL88516-01 Modeling for Heart, Lung and Blood: From Cell to Organ, 4/1/07-3/31/11; NSF BES-0506477 Adaptive Multi-Scale Model Simulation, 8/15/05-7/31/08; NIH/NHLBI R01 HL073598 Core 3: 3D Imaging and Computer Modeling of the Respiratory Tract, 9/1/04-8/31/09; as well as prior support from NIH/NCRR P41 RR01243 Simulation Resource in Circulatory Mass Transport and Exchange, 12/1/1980-11/30/01 and NIH/NIBIB R01 EB001973 JSim: A Simulation Analysis Platform, 3/1/02-2/28/07.