VSim
VSim is a cross-platform computational framework for multiphysics including electrodynamics in the presence of metallic and dielectric shapes as well as with or without self-consistent charged particles and fluids. It is compatible with compatible with Windows, Linux, and macOS.
Developed by | Tech-X Corporation |
---|---|
Latest release | 10.0.1 September 20, 2019 |
It comes with VSimComposer, a full-featured graphical user interface for visual setup of any simulation, including CAD geometry import and/or direct geometry construction. With VSimComposer, the user can execute data analysis scripts and visualize results in one, two, or three dimensions. VSim computes using the powerful Vorpal computational engine, which has been used to simulate the dynamics of electromagnetic systems, plasmas, and rarefied as well as dense gases. VSim is used for modeling basic electromagnetics and plasma physics, complex metallic and dielectric shapes, photonics, vacuum electronics including multipactor effects, laser wake-field acceleration, plasma thrusters, and fusion plasmas.
The Vorpal computational engine is arbitrary dimensional, meaning that it can be run in one, two, or three dimensions. It can be run in full electromagnetic mode, using the FDTD algorithm, or with electrostatically or magnetostatically computed fields. Charged and neutral particles in Vorpal can be represented by a fluid or kinetically using the PIC algorithm in either case self-consistently. The fields and particles can interact with arbitrarily shaped structures, including conductors, particle absorbers, reflectors, and many more. Accuracy is maintained using cut-cell techniques. The computational domain can be periodic or mimic boundaries at infinity via PML or other outgoing wave boundary conditions. Vorpal outputs data in HDF5 (Hierarchical Data Format) that is VizSchema compliant.
Input
Simulations can be set up in the VSimComposer setup panel. Shapes can be imported or constructed, materials can be assigned to shapes, fields and particles can be added, and algorithms can be chosen. VSimComposer then writes out an input file suitable for use by the Vorpal computational engine.
For greater flexibility, the input file can be written directly. Here the user has complete control over the physical quantities to include in the simulation, including low-level control over algorithms and solvers. The user can specify the dynamics of the particles as fully relativistic, non-relativistic, unmagnetized, or other. Additional collisions between electrons, ions, and neutral gases (neutral gases being represented by either fluids or particles) are available in the input file, including self-splitting and self-combining operations. Field ionization can also be included. Advanced surface interactions can be modeled, including user-defined secondary electron emission, sputtering, and surface charging. Parallel decompositioning can also be specified manually for high performance applications.
Engine execution
VSim can be run from its VSimComposer GUI interface or invoked from the command line. The parallel version of VSim runs on systems that support the Message Passing Interface (MPI). Input to VSim is made via XML-like files used to create simulation objects. A Python-based macro-preprocessor, txpp.py, can be used to generate input files allowing users to set up their simulations with math functions, variable substitutions, macros, and loops.
Data analysis
Generated data can be analyzed using any of the built-in analyzers, or users can write their own analyzers in any language. Built-in analyzers output data in VizSchema form for immediate visualization in the VSimComposer visualization pane. For analyzers written in Python, VSim provides the VsH5 package, which facilitates writing output in VizSchema.
Visualization
Vorpal output files can be visualized within VSimComposer. Plots include those for particle data, field data, and simulation geometry, with lineouts for inspecting critical variations. The visualization within VSimComposer is accomplished by embedding the powerful VisIt tool, which users can download for more specific visualizations. Use of the VsH5 package along with popular Python tools like matplotlib allows creation of high-quality publication ready plots.