Wiki

Version 7 (J. Simmons, 11/01/2015 04:46 pm)

1 1 J. Simmons
h1. Mach 30's Mathematics Tool Kit
2 1 J. Simmons
3 6 J. Simmons
!>MTK_logo_sm2.png! 
4 6 J. Simmons
5 7 J. Simmons
Mach 30 believes documentation is essential to creating high quality engineering analysis and that integrating documentation steps into the engineering process is the key to ensuring documentation is created and maintained.  The Mathematics Tool Kit (MTK) is a unified engineering analysis and documentation tool created to address these needs. 
6 2 J. Simmons
7 7 J. Simmons
MTK is built on existing open source tools including "IPython":http://ipython.org/, "Jupyter":https://jupyter.org/ (and "several extensions":https://github.com/ipython-contrib/IPython-notebook-extensions), "Pint":http://pint.readthedocs.org/, and "Spyder":https://pythonhosted.org/spyder/ (coming soon).  The goal is to create a tool that makes it easy to switch between (and focus on) engineering analysis and documentation tasks, all in an environment optimized for engineers (e.g. built in support for units as first class mathematical constructs via Pint).
8 2 J. Simmons
9 3 J. Simmons
MTK's approach to integrating engineering analysis and documentation is based on three core principles of engineering documentation:
10 2 J. Simmons
11 2 J. Simmons
# *Document before you act* - In preparation for engineering analysis, engineers must find the correct mathematical models, identify the key equations from those models, and demonstrate why the selected models are the correct ones to use. This involves writing narratives and the equations covering these items and citing sources used to arrive at the selected equations. This phase should also identify test cases for later verification efforts. MTK's integrated documentation environment (with support for units, equations, calculations, and plots) makes it easy for users to capture this information in a format that supports adding additional information as the project progresses.
12 2 J. Simmons
# *Document as you act* - During engineering analysis, modern engineers spend their time coding up the equations from selected mathematical models, preferably into reusable modules (functions, classes, etc). Rigorous verification of engineering analysis should provide commentary on the critical sections of this code, showing how specific lines of code implement the required equations or methodologies (such as solver algorithms). MTK's unified analysis and documentation environment is critical to documenting in this way as it provides for seamless transition between coding and documenting.
13 2 J. Simmons
# *Document after you act* - Once the engineering analysis is complete, it needs to be verified. Verification should include the commentary mentioned above plus inspection of test case results.  This commentary can include plots and tables showing those results and narrative commentary to prove to readers that the analysis is ready to be used. MTK's ability to run engineering analyses directly within its documentation environment is essential to this part of the documentation process.