If you are interested in Guidance, Navigation, Control, Signal Processing, Modelling or Software Development for Aerospace Applications, use MATLAB and know your way around C/C++, then GNC Tools provides a suite of example software and models for free! See the GNC Tools Wiki for details on everything GNC!
The best way to get GNCTools is to clone the master branch from GitHub (this page!) using git. I like GitKraken which makes it easy to use git without the command line. Once you have git/GitKraken/some other git client, simply click Clone or download (above, green button) and copy the address of this repository, and clone it to your computer. This way each time I push updates to the master branch, you can simply pull them down without having to redownload the entire package again!
If you don't use git, and don't want to learn (remember its easy and you should use it!), simply click Clone or download and click Download ZIP and save GNCTools somewhere you can find it.
Once you have cloned or downloaded GNCTools to your PC, simply open MATLAB and navigate in MATLAB to the directory where you have placed GNCTools (hopefully somewhere permanent). Right click on GNCTools_Install.m
and click Run. Follow the prompts (Yes 'Y' is the normal response to every question) to install GNCTools - easy!
The best way to start using GNCTools is to have a look at the Wiki. There are lots of problem and code examples (which all work) as well as helpful definitions.
GNCTools is released under the 3-clause BSD license, as detailed below.
Copyright (C) 2023, Jonathan Currie All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
- Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
- Neither the name of Control Engineering nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.