# Open Source Engineering Tools

This is a DevelopSpace project to aid the space systems development by providing access to relevant, open source engineering software tools, using input provided by both DevelopSpace contributors and the wider space engineering community. We aim to both provide information on existing tools and identify areas in which new tools would be of use so as to encourage the development of such tools.

For tools that are available, our goal is to provide reviews regarding the usefulness of each tool for particular applications, guides on how to most effectively use the tools for various types of efforts related to space system development, and descriptions of how the tools can be used together. Where needs exist to either create new tools or enhance existing tools, we will aim to gather input regarding what functionality is desired and (when possible) point towards relevant commercial tools that could serve as models.

While the focus of this project is on tools that are relevant to space applications, space engineering has significant overlap with many other engineering disciplines, as such a significant number of the tools we describe will be relevant outside of the space arena.

Please help this project and the space engineering community as a whole by expanding the material available here. Also, please email us if you're interested in helping maintain this project on a continuing basis.

## Contents

- 1 Software Licenses
- 2 Software Listing
- 2.1 Space-specific Software
- 2.2 Computer Aided Design (CAD) Software
- 2.3 Computer vision software
- 2.4 Spreadsheets and Office Software
- 2.5 Finite Element Modeling / Analysis and Computational Fluid Dynamics Software
- 2.6 Numerical Programming Languages and Visualization Software
- 2.7 Software Engineering
- 2.8 Electronic Design Automation (EDA)
- 2.9 Communications and Ground Station Software
- 2.10 Systems Engineering Software
- 2.11 Additional Listings

- 3 Scientific and Engineering Linux Distributions
- 4 Free Engineering Websites (Discipline Specific)
- 5 Articles Related to Open Source Space Software

# Software Licenses

For the purposes of this project, we are interested in identifying software tools that are free and open source in the sense that the software's source code is provided and the software license allows you to use, modify, and freely redistribute the software without paying royalties or other fees. Software included here should meet the Open Source Definition of the Open Source Iniative (OSI) and the Free Software Definition of the Free Software Foundation (FSF) (where free means freedom).

OSI maintains a list of software they have approved here. FSF has a listing of software free and non-free software licenses here. The FSF listing also specifies whether the license is compatible with the GNU General Public License (GPL), a leading open source license.

# Software Listing

## Space-specific Software

- Java Astrodynamics Toolkit (GPL)
- General Mission Analysis Tool (NASA Open Source Agreement)
- OREKIT (ORbits Extrapolation KIT) (Apache License)
- Satellite tracking and orbit prediction (GPL)
- Orbit Reconstruction Simulation and Analysis (GPL)
- Asteroid Orbit Determination and Propagation (GPL)
- Libnova (LGPL) general purpose, double precision, Celestial Mechanics, Astrometry and Astrodynamics library
- Open-Source, Extensible Spacecraft Simulation And Modeling Environment (GPL)
- Distributed Spacecraft Attitude Control System Simulator (GPL)
- Solar Sail structure and flight simulator (GPL)
- SaVi satellite constellation visualizer (BSD License)
- Rocket Workbench Project (GPL)
- CpropepShell. Compute propellant performance. (Open* License)

## Computer Aided Design (CAD) Software

- BRL-CAD
- Blender
- OpenSCAD
- Python CAD
- VARKON
- OpenCASCADE
- FreeCAD
- Archimedes
- Wikipedia Free CAD Software Listing
- Linux.org CAD/CAM Software Listing

## Computer vision software

## Spreadsheets and Office Software

Because sometimes all you need is a good spreadsheet...

- LibreOffice (LGPL v.3) Includes the Calc spreadsheet as part of a complete office suite.
- Gnumeric (GPL) GNOME project spreadsheet.
- wikiCalc (GPL) Online spreadsheet system that allows users to edit in a wiki-like fashion.
- Dia (GPL) GNOME project diagramming software. Useful for system diagrams, schematics, etc.

## Finite Element Modeling / Analysis and Computational Fluid Dynamics Software

- DUNE (GPL with runtime exception) a modular toolbox for solving partial differential equations (PDEs) on parallel adaptive grids with finite element, finite volume, or finite difference
- Impact (GPL) Dynamic finite element suite
- Code_Aster Finite element modeling software
- SALOME (LGPL) Platform for Pre and Post-Processing for numerical simulation.
- Elmer Finite Element Software for Multiphysical Problems
- Gmsh A three-dimensional finite element mesh generator with built-in pre- and post-processing facilities
- OpenFVM A general three-dimensional CFD solver that uses Gmsh for pre- and post-processing
- Palabos A lattice Boltzmann based CFD solver including turbulence modeling, thermal, multi-phase, and free-surface flow, and embedded particles.
- Calculix A FEM program with interactive graphics

## Numerical Programming Languages and Visualization Software

- Octave (GPL) A high-level language, primarily intended for numerical computations, using a language that is mostly compatible with Matlab
- Package of Additional Octave Libraries
- SAGE (GPL) Open source alternative to Magma, Maple, Mathematica and Matlab
- ASCEND modelling environment
- OpenDX (IBM) Visualization Software
- Freshmeat.net Visualization Software Listing
- VisIt (BSD) Visualization/Graphical Analysis
- EngLab (GPL) Engineering mathematical platform
- SciLab (CeCILL license) Numerical computation platform
- WorldWind (NOSA) Geographic information visualization software (including Earth and Mars)
- Numpy/Scipy Fast Numerical Computation Platform for Python.

## Software Engineering

- Tigris Website dedicated to open source software engineering tools

## Electronic Design Automation (EDA)

- http://www.opencollector.org/collector.php
- EETimes.com Open Source EDA Listing by EETimes.com
- Freshmeat.net Electronic Design Automation Listing
- GEDA. Free, open sourced ensemble of EDA packages. Schamatic, PCB, FPGA, project organizer.
- FREE PCB. Free, open sourced PCB layout package with autorouter. Windows only.
- Tinycad. Free, open sourced schematic package. Windows only.
- KiCAD. Open sourced EDM package capture, PCB, DRC, Sim, Windows and Linux.

## Communications and Ground Station Software

- Ground Station Software Suite Aims to provide a set of open source tools for ham radio operators
- PREDICT (GPL) Multi-user satellite tracking and orbital prediction program
- Open Source Software Radio (GPL) May have some relevance for software defined radios on spacecraft

## Systems Engineering Software

- Protoforge (GPL) Web-based systems engineering platform for opnn, wiki-style, system development.

## Additional Listings

- iCivilEngineer.com Open Source Civil Engineering Tools Listing
- Scientific Applications on Linux Listing A collection of information and links to software of interest to scientists and engineers
- Freshmeat.net Scientific/Engineering Software Listings (beyond those included above)
- Wikipedia Software Listings (beyond those included above)
- Linux.org Computer Aided Engineering software Listing

# Scientific and Engineering Linux Distributions

- CAELinux Linux distribution (LiveCD) with a series of open source CAE tools including SALOME and Code-Aster
- Quantian Linux distribution (LiveCD) tailored to numerical and quantitative analysis

# Free Engineering Websites (Discipline Specific)

- http://www.epower-propulsion.com/
- http://www.efluids.com/
- http://www.emicronano.com/
- http://imechanica.org
- http://www.cesdb.com/
- http://nisee.berkeley.edu/software/
- http://www.cfd-online.com/