== Instrument the Code [[PageOutline]] !VisIt provides numerous examples how to make use of its in-situ library libsim. * [http://visit.ilight.com/svn/visit/branches/2.10RC/src/tools/DataManualExamples/Simulations/ example codes] * [wiki:VisIt/libsim libsim functions] In the following our own Fortran90 implementation is discussed. [[Image(VisIt-libsim-loop.png, align=right, margin=10, height=300)]] * Fortran90 example (from [http://www.fz-juelich.de/ias/jsc/EN/Expertise/High-Q-Club/psOpen/_node.htm psOpen]): [attachment:psopen_visit.F90 psOpen_visit.F90] \\ ---- === Instruction-Paths in Flow-Diagram for different Modes || Mode || Diagram || ||run + never update \\ * simulation is running in max. speed \\ * plots are NOT updated \\ * ONLY check for new commands ||[[Image(VisIt-libsim-loop_run-noupdate.png, align=right, margin=10, height=150)]] ||run + always update \\ * simulation is interrupted EVERY iteration \\ * plots are ALWAYS updated \\ * ALWAYS check for new commands ||[[Image(VisIt-libsim-loop_run.png, align=right, margin=10, height=150)]] ||pause ||[[Image(VisIt-libsim-loop_pause.png, align=right, margin=10, height=150)]] ||step ||[[Image(VisIt-libsim-loop_step.png, align=right, margin=10, height=150)]] ||run-update-now ||[[Image(VisIt-libsim-loop.png, align=right, margin=10, height=150)]] ||run-update-never ||[[Image(VisIt-libsim-loop.png, align=right, margin=10, height=150)]] ||run-update-always ||[[Image(VisIt-libsim-loop.png, align=right, margin=10, height=150)]] ---- any feedback welcomed - [mailto:h.zilken@fz.juelich.de], [mailto:j.goebbert@fz-juelich.de]