Dragon Wings
0.4
The aerospace swiss army knife written by Tristan Martindale
After spending many hours creating spreadsheets or simple c++ applications to perform a variety of aerospace analysis tasks I decided to create this open source c++ tool to do it for me. Although many aerospace analysis tools exist, most are still written in Fortran and I have not found a c++ tool which does everything I want.
This project is hosted on Sourceforge at the following url: https://sourceforge.net/projects/trantoo/
To checkout this project do the following: svn co https://trantoo.svn.sourceforge.net/svnroot/trantoo/trunk trantoo
To checkout the docs do the following: svn co https://trantoo.svn.sourceforge.net/svnroot/trantoo/docs docs
Take a look at Planned work for changes and improvements coming in the future.
The user should be able to carry out routine calculations and analysis as well as integrate new functions when required with the minimum amount of time and effort.
- All documentation will be written with Doxygen
- There will be a well defined interface to modules.
- The interface should provide the following functions or their equivalents:
- initialize
- run
- load / save
- import / export
- access to settings (e.g. simulation frequency)
- The tool should provide several, easily expandable, visualization options.
- Modules will be implemented using the QtPlugin framework.
- TRANTOO itself will not require any knowledge of the internal mechanics of the modules and the modules will only need to know the interface definition. This will fulfill the object orientated programming principle of abstraction.
- Use of code written in any language should be allowed as long as the appropriate c++ module wrapper can be written.
- XML will be used for configuration files.
- Multiple input/output interfaces should be provided. 10) Secure input/output interfaces should be provided.
- QwtPlot will be used for graphical plotting and data analysis.
- HTML or XML based help will be provided on a per module basis.
- The method for creating a new module will be well documented.
- Modules developed alongside TRANTOO during the initial definition phase will be independent but will be considered sub-projects and distributed together with TRANTOO. e.g. The Aircraft Performance Estimator (APE) module being used as a test case for development of the interface.
Copyright (C) 2008 by Tristan Martindale
tristanmartindale@gmail.com
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
For more screenshots visit https://sourceforge.net/project/screenshots.php?group_id=189761
Make sure that you have the following environmental variables pointing to the location of your QWT installation. If you are using KDevelop you must add them to the environmental variables in Project->Project Options->Make Options->Environmental Variables.
- QWT_INCLUDE=/the/location/of/your/qwt/header/files
Do the following:
- qmake
- make
- make install (need root permission)
- ./setup.sh
- In order to run the unit tests, the path to the module plugins must also be in LD_LIBRARY_PATH: LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/path/to/trantoo/modules
Simply change the line: "config += release" to "config += debug" in the relevant .pro files. Note that if you want to debug a module then the TRANTOO application must also be built in debug mode. For more information about this see the documentation for the Qt4 Plugin Module available at
http://www.trolltech.com
- The main TRANTOO application shall be tested for:
- Correct signal and slot connections in the:
- Main window
- Module manager
- Two dimensional plotting widget
- Correct implementation of:
- Module load
- Module save
- File load
- File save
- 18 December 2008
- Sketcher: Replaced the hard coded number of the last panel with a method to count the number of panels and use that instead.
- Sketcher: Removed conversion from inches to metres when calculating wing properties. The properties will now be in the same unit as the panel coordinates.
- Sketcher: Added absolute value to relevant property calculation results.
- Sketcher: Made sketcher properties results boxes more legible.
- Added unit converter class to tools.
- Sketcher: Added knowledge of unit system and conversion from inches to meters and vice versa.
- Removed exsiting unit test framework pending a rewrite based on CppUnit.
- 30 December 2008
- Sketcher: fixed segmentation fault when clicking draw wing with no data in table.
- Sketcher: Added calculate properties button.
- Sketcher: Added clear data button to properties tab (also clears table data).
- 23 February 2009
- Added unit tests for atmosphere and unit converter tools.
- The implementation of loading XML configuration files is very rudimentary and is likely to change.
- Panning causes the plot to rescale itself to scaleRect().
Release 1.0 shall provide the following:
- A help menu containing:
- Basic help (referencing the website)
- About
- A two dimensional plotting facility capable of:
- Plotting 2D data
- Toggling a grid on and off
- Zooming, panning
- Equalising the axis scale
- Outputting plots to comma seperated plain text files and xml files.
- The ability to import space separated data from a text file
- The ability to export such imported data to XML format.
- The Aircraft Perfomance Estimator Module
- Basic flight enevelope estimation
- The Missile Performance Estimator Module
- Normal force coefficient estimation
- Tangential force coefficient estimation
- References to source of equations.
- The Sketcher module
- Plot a sketch of half a wing based on the x-y input for four corners of each panel making up the wing.
- Provide basic wing geometry calculations for:
- mean aerodynamic chord
- span
- sweep (quater chord, leading and trailig edges)
- aspect ratio
- reference area
- wetted area
- taper ratio