[Archive] Can results be saved mid-way through a simulation?

Message by David Parrott:
I’m currently running a simulation in SPIS, which is taking around a week to complete a 1.5 ms real-time period. This is partly because I’ve set default timestep and speedup parameters in an attempt to reduce statistical noise.
In fact the system has reached stability within 1/3 of this time, as indicated by the node potentials.
Is there any way that I can save the results up to a given real-time, through the JyConsole interface, before the simulation has finished running?
This would be extremely useful where resources are being shared with other users
I’d also like to know more about the possibilities offered by JyConsole, which I’ve ignored up to now.
Best Regards,

Message by Benoit Thiebault:
Hi David,
Yes, you can save a simulation before it’s over.
Go in the menu Solver>SPIS-NUM>Simulation Control>Extract Data
You can now save your project or go in the datafield manager to view your results.
Regarding JyConsole, it allows you to manipulate directly the objects loaded in memory thanks to Jython introspection capabilities. So you can print, edit data or do almost every thing via command line. It’s however a bit tricky and I don’t know if there is existing documentation explaining how to do it in SPIS, but if you are interested, let me now.

Message by David Parrott:
Hi Benoit,
Our Operations Engineer sends his thanks!
I’m interested in simulating equipment failures and commanded changes in thruster demand when the system is evolved to stability. This could be done by suddenly changing the surface current density. Ideally I’d like to be able to control the output of individual thrusters even when they all share a common electric node or physical group.
Changing the impedances between super-nodes would also be interesting to try, perhaps an ESD could be modelled in this way. Certainly the facility to play with system settings and watch what happens would help to gain greater insight.
Can you advise on the best way to do this?

Message by Jean-Francois Roussel:
Hi David,
concerning changing some simulation parameters in the course of the simulation, there is no general answer.
For a simple quantitative change (like changing a conductivity or a potential), it is not very difficult but you have to to write some code since these capabilities were not offered through UI (there are too many of them!).
There are yet progresses in that respect in version 3.7:

  • a general mechanism through the objet Scenario, a layer above the object Simulation, which typically periodically integrates the Simulation, changes some parameters, and integrates again...
  • there is one specific Scenario supplied, PotentialSweep which allows sweeping surface potentials
So the idea would be to write another Scenario following that supplied example For qualitative changes like adding another plasma population, turning on a thruster, etc, things are a bit more complicated since new objects must ne instantiated (in the first case only paramaters of existing objects had to be modified) There you should look how such objects are instantiated when created at simulation start (look at the init() methof of SimulationFromUIParams) and try to do likewise in your Scenario (no better general rule possible). JFR