Resource Menu


1. What is SPIS?

SPIS stands for Spacecraft Plasma Interaction System. SPIS project aims at developing a software toolkit for spacecraft-plasma interactions modelling. This software development is co-ordinated by ESA contractors (ONERA in consortium with Artenum and University Paris 7), who thus develop the software framework. The numerical routines (solvers, specific tools...) are implemented or procured in collaboration between SPINE community and the contractors

2. What is the perimeter of the physics to be modelled ?

There is no a priori limitation in the range of physics that may be modelled by the developped software, within spacecraft-plasma interactions. It will certainly cover:

  • charging in GEO, LEO or other environments,
  • natural and artificial plasmas (EP, arbitrary plasma sources...),
  • surface physics: secondary emissions, photo-emission, surface and volume conductivity...
  • volume physics: electrostatic, electromagnetism, kinetic od fluid description, collisions...
  • multi-scale models: spacecraft, equipment, even microscopic scale for ESD modelling...
The software framework will be kept compatible with all of the requirements (in pdf) defined during 4th SPINE workshop. Only part of the routines necessary to handle these situations may be developed in a first phase, but the community effort shall later enrich the capabilities of the software.

3. Where is the SPIS's documentation ?

Currently the whole SPIS's documentation is packaged with the SPIS release itself. All documents are gathered in the $SPIS_ROOT_DIR/Data directory. To access to the data, the simplest is, through the SPIS-UI User Interface, click on the Help->Online Help, that will open your default Web browser on the $SPIS_ROOT_DIR/Data/index.html file.

All relevant documents are listed in the index file.

4. Where is the "quick start document" and the first step document for beginners in SPIS ?

In the SPIS documentation (see above), the two first documents to read are :

  • TN 1.0: SPIS-UI User Manual (UM): Quick Start and general user manual of SPIS, to use the framework.
  • SPIS/NUM Controlling NUM from UI: Explains how to set all control parameters in User Interface to define Numerical simulations, the user reference documentation.
After, each embedded tool (e.g Cassandra, Gmsh...) has its own documentation package or online.

5. Is SPIS really multi-platform ?

Yes, of course… and no… The core components of SPIS are written in Java language and are supported on platforms supporting a JVM standard edition 1.6 and higher. However, SPIS still includes native (i.e C/C++) components for which ones the native versions may depends on the targeted platforms (i.e hardware/OS couple). They also depend on the version of some related libraries (e.g GLibC). This is mainly the case of the VTK and Gmsh based components. All platform dependent components are in the $SPIS_ROOT_DIR/ThirdPart directory. The configuration files (e.g spis-ui.properties files) and launching scripts may also differ.

This is why several binaries images of SPIS are packaged for different platforms. Please check carefully the compliance table before download the most adapted SPIS package.

However, you remain free to compile yourself these native components if your platform is not supported. See the relevant section for the compilation procedures.

6. Is SPIS really open-source ?

Yes, of course… but check the SPIS INTELLECTUAL PROPERTY RIGHTS AND LICENSING STATUS in the SPIS's documentation to know the different licenses of the various software components and check if you can use them in your context.

7. How to check/know if SPIS is correctly installed and works correctly, especially for the native components and the JVM settings ?

Most of the installation difficulties are coming from the native components (i.e VTK and Gmsh) and/or the settings of the JVM. These components are the only ones OS dependent.

7.1 First run Spis! If SPIS at least does not start, with or without error message, this can be due to four things:

  • The launching scripts have been corrupted and/or have not the execution rights. This may happen if these files have been copied from a Windows based system (not recommanded) and/or no case sensitive (not recommended either). Please check and eventually correct the execution rights.
  • The embedded JVM is not compliant with your platform. Check this by directly run/test the embedded JVM in the $SPIS_ROOT_DIR/ThirdPart/JVM sub-driectory, In the JVM/bin, run the command: java -version
  • The memory stack allowed by default to the JVM is too large for your computer. You may edit (and reduce) it through the flag Xmx of the JVM in the spis-ui.properties files or… buy larger memory modules, because you will need them for the simulations...
  • There is one (or several) missing (and mandatory) modules in SPIS-UI… humm… well… try to re-unpack an uncorrupted tarball of SPIS otherwise submit a bug-report on the bugtracker...
7.2 SPIS starts but complains with error messages…

Most of the error messages come from the native layers and especially VTK. If SPIS gives the following message

WARN  "resourceLink" href="/projects/spine/home/spis/documentation/faq/CoreLogger">"error">! CoreLogger ! - 2011-01-31 17:39:56,241 Error in CassandraCaller: Impossible to load Cassandra.
WARN  "resourceLink" href="/projects/spine/home/spis/documentation/faq/CoreLogger">"error">! CoreLogger ! - 2011-01-31 17:39:56,241 Error in CassandraCaller: Impossible to load Cassandra.
DEBUG "resourceLink" href="/projects/spine/home/spis/documentation/faq/CoreLogger">"error">! CoreLogger ! - 2011-01-31 17:39:56,295 "error">invalid link : '  File "/home/juju/Boulout/MissionSupport/Dev20100901/SpisUI/Bin/CassandraCaller.py", line 80, in <module>n    from com.artenum.cassandra        import Cassandran'(Illegal character in path at index 1: '  File "/home/juju/Boulout/MissionSupport/Dev20100901/SpisUI/Bin/CassandraCaller.py", line 80, in <module>n    from com.artenum.cassandra        import Cassandran')
DEBUG "resourceLink" href="/projects/spine/home/spis/documentation/faq/CoreLogger">"error">! CoreLogger ! - 2011-01-31 17:39:56,295 "error">invalid link : '  File "/home/juju/Boulout/MissionSupport/Dev20100901/SpisUI/Bin/CassandraCaller.py", line 80, in <module>n    from com.artenum.cassandra        import Cassandran'(Illegal character in path at index 1: '  File "/home/juju/Boulout/MissionSupport/Dev20100901/SpisUI/Bin/CassandraCaller.py", line 80, in <module>n    from com.artenum.cassandra        import Cassandran')
DEBUG "resourceLink" href="/projects/spine/home/spis/documentation/faq/CoreLogger">"error">! CoreLogger ! - 2011-01-31 17:39:56,296        java.lang.NoClassDefFoundError: vtk.vtkCanvas
DEBUG "resourceLink" href="/projects/spine/home/spis/documentation/faq/CoreLogger">"error">! CoreLogger ! - 2011-01-31 17:39:56,296        java.lang.NoClassDefFoundError: vtk.vtkCanvas
WARN  "resourceLink" href="/projects/spine/home/spis/documentation/faq/CoreLogger">"error">! CoreLogger ! - 2011-01-31 17:39:56,308 Error in ViewPipeLine1: impossible to properly VtkGridBuilder from com.artenum.free.mesh.vtk 
Please check, if the path to JfreeMesh is properly set.
WARN  "resourceLink" href="/projects/spine/home/spis/documentation/faq/CoreLogger">"error">! CoreLogger ! - 2011-01-31 17:39:56,308 Error in ViewPipeLine1: impossible to properly VtkGridBuilder from com.artenum.free.mesh.vtk 
Please check, if the path to JfreeMesh is properly set.
WARN  "resourceLink" href="/projects/spine/home/spis/documentation/faq/CoreLogger">"error">! CoreLogger ! - 2011-01-31 17:39:56,393 Error in ViewPipeLine1: Impossible to load the VTK modules 
Module ViewPipeLine1 of groups visualisation not operational
WARN  "resourceLink" href="/projects/spine/home/spis/documentation/faq/CoreLogger">"error">! CoreLogger ! - 2011-01-31 17:39:56,393 Error in ViewPipeLine1: Impossible to load the VTK modules 
Module ViewPipeLine1 of groups visualisation not operational
Tasks loading.......Error in ViewPipeLine2: impossible to load VtkGridBuilder from com.artenum.free.mesh.vtk
Impossible to load VTK modules in ViewPipeLine2
Error in ViewPipeLine2: impossible to load VtkGridBuilder from com.artenum.free.mesh.vtk
Impossible to load VTK modules in ViewPipeLine2
.........................................Error in vtkGridBuilder: impossible to load the VTK stuff
Error in JavaLib: Impossible to load vtkCommonJava
Error in JavaLib: Impossible to load vtkRenderingJava
Error in JavaLib: Impossible to load vtkImagingJava
Error in JavaLib: Impossible to load vtkIOJava
Error in JavaLib: Impossible to load vtkFilteringJava
Error in JavaLib: Impossible to load vtkGraphicsJava
Error in JavaLib: Impossible to load vtkHybridJava
Error in JavaLib: Impossible to load vtkParallelJava
Error in JavaLib: Impossible to load vtkWidgetsJava
WARN  "resourceLink" href="/projects/spine/home/spis/documentation/faq/CoreLogger">"error">! CoreLogger ! - 2011-01-31 17:39:58,264 Warning in FieldDataListViewer2: Impossible to load VTK components. VTK export impossible.
WARN  "resourceLink" href="/projects/spine/home/spis/documentation/faq/CoreLogger">"error">! CoreLogger ! - 2011-01-31 17:39:58,264 Warning in FieldDataListViewer2: Impossible to load VTK components. VTK export impossible.
........................error: impossible to load DataFieldToVtkDataSetThread

This means that SPIS is not able to load the VTK components. This is the most common error message at the launching phase. This can be due to:

  • This version of VTK is not compliant with or OS or its related libraries (e.g glibc). Try with you own local VTK installation.
  • The paths to VTK in the properties files (e.g. spis-ui.properties files under UNIX systems) are not correctly set.
  • Your X11 server is not started and/or does not support 3D acceleration/rendering.

8. Arrghh!!! Still SPIS refuses to work on my platform !

Don't panic! This is due to the fact that compiled versions of native component can be run on your platform. You just need to recompile them. Please see the SPIS Compilation Page.

9. How to compile and/or set SPIS for my platform

The SPIS compilation process is explained here: SPIS Compilation Page

10. SPIS seems work but refuse to mesh correctly my CAD model !

This is due to one of the following reasons:

a) The path to Gmsh is not correctly defined and/or the installed Gmsh does not work correctly on your platform. First, go into the relevant $SPIS_ROOT/ThirdPart/Gmsh/xxx directory and directly try Gmsh as standalone application. If Gmsh does not work correctly, well… you know what to do… install a working one. If Gmsh works, maybe the path to the application (printed in the SPIS's console) is not correctly defined. Check-it and correctly by setting properly the GL_CMD_GMSH variable in the $SPIS_ROOT/SpisUI/Bin/config.py.

b) The exchange direct is unreachable or you have not the write access to it. The exchange directory path is defined by the GL_EXCHANGE variable in the $SPIS_ROOT/SpisUI/Bin/config.py. By default, this set to /tmp under UNIX type OS and, for Windows like systems, the TMP directory given by the system (e.g C:/TMP) since SPSI 4.3 and C:/ for older version of SPIS. On some specific system configuration, these directories are unreachable for a non-administrator user and the GL_EXCHANGE variable should be adjusted. Check with your local help desk.

11. Gasp! SPIS is very chatty and tell me a lot of things I don't care in the console. How can I adjust the level of verbosity of the outputs ?

Since SPIS 4.3 most of the messages are printed through the Apache Common Logging, sfl4J and/or log4j logging systems. The level of verbosity can be defined independently for each output (i.e. logger).

These ones are defined in the $SPIS_ROOT/SpisUI/AuxLibs/resource/log4j.xml file and can set with the priority value. The root logger (defined at the end of the file) set the maximum value for all logger.

Please see the Log4J project documentation for further information.

12. Grrr! When I reload an old project, a lot of global parameters are missing. How to recover them ? How to update my global parameters ?

By default, SPIS reloads only global parameters in the format initially saved. On the other hand, we regulary add new global parameters with the evolutions of SPIS. These ones does not appear if you reload an old project.

But both are simple Python dictionnary and it is possible to update an old global parameter dictionnary with the following script:

# Script to update your global parameters in SPIS-UI
# Version 1.0.0
# Author: J. Forest, Artenum SARL, Paris, France
# Date 2011/01/26
# (c) Artenum SARL, France.

print "Start Global Parameters Update"

from Bin.Tasks.shared import * import DefaultValues.defaultGlobalParam

refGlobalParam = DefaultValues.defaultGlobalParam.sharedGlobals

for key in refGlobalParam.keys(): if key not in sharedGlobals.keys(): print "Adding the following global parameter" print " ", refGlobalParam[key] sharedGlobals[key] = refGlobalParam[key]

print "End Update"

The source code of this script is directly donwloadable in the Spis's Script Corner.


Back


Last edited by julien at Feb 10, 2011 9:49 AM - Edit content - View source