Monte Reference Documentation¶
Main Computational Packages¶
Monte is delivered with many different Python packages that you can import and use. The Monte package provides most of the computation core for the system. The mpy package contains most of the Python scripts written on top of the core.
Main Monte computational package. |
|
Main Monte Python utility package. |
Many of the remaining modules are primarily used internally by Monte in it's construction of delivered end-user applications. However, these can be extremely useful in certain advanced-programming cases.
Monte UI layer scripting module. |
|
Monte graphical widgets and 3-D plots. |
|
SparQ 3D toolkit with Monte bindings. |
|
Monte parsing utility module. |
|
Statistics computation. |
|
Navigation SIS file reading and writing package. |
|
Pre-canned text reports. |
|
Three-body science orbit design. |
Monte also has pre-built implementations of functions to deal with trajectories, data queries, measurement processing, and filtering. These have been made obsolete for the most part by the Navigation Interface, but they are fully functional and prefered by some users.
Examine, create, and export trajectories. |
|
Filtering utility package. |
|
Data browsing utility package. |
|
Measurement utility package. |
There are some particularly useful functions in the Monte namespace that are mpy with pointing out.
- mpy.io.data
Contains the default data loader.
In [1]: import mpy.io.data as defaultData
In [2]: boa = defaultData.load( [ "ephem/planet/de405", "frame", "body" ] )
- mpy.traj.force
Contains a gravity node builder.
In [1]: import Monte as M
In [2]: import mpy.traj.force.grav.basic as basicGrav
In [3]: boa = M.BoaLoad()
In [4]: basicGrav.add( boa, "MySc", [ "Sun", "Earth", "Moon" ], harmonics = [ "Earth" ] )
- mpy.units
Importable module that makes units available.
In [1]: from mpy.units import *
In [2]: distance = 5 * km
Supplementary Packages¶
Monte is delivered with a number of supplementary packages. The mpylab
and
mmath
modules are particularly useful, for unit-aware plotting and
mathematics, respectively.
Unit aware replacement for the python math module. |
|
Monte initialized matplotlib pylab interface. |
In [1]: import Monte as M
In [2]: from mpy.units import *
In [3]: import mpylab
In [4]: x = [ t for t in M.Epoch.range( "01-JAN-2000 00:00 ET",
...: "01-JAN-2000 12:00 ET", 60 *sec ) ]
In [5]: y = [ d * cm for d in range(720) ]
In [6]: fig, ax = mpylab.subplots()
In [7]: ax.plot( x, y )
In [8]: mpylab.show()
In [1]: from mpy.units import *
In [2]: import mmath
In [3]: mmath.cos( 45 * deg )
Out[3]: 0.7071067811865476
Monte Extensions¶
Monte extensions provide extra functionality from external components that are loaded as-needed. Some of the supported extensions are listed below.
SNOPT Optimizer |
For more information, see the Monte Extensions documentation.
Third Party Package Documentation¶
The following third-party Python packages are delivered in with Monte in the core and secondary tools packages.
File import |
|
MatPlotLib plotting documentation |
|
Array manipulation |
|
File and directory path manipulation. |
|
Monte wrapper for the Python sqlite3 package. |
|
Scientific programming |
There are several packages that cannot be automatically documented but are delivered with the tools. They can be imported into Monte but you will have to look for documentation for them on your own.
coverage |
Python source code test coverage utility. |
docutils |
re-Structured Text processing. |
Jinja |
Output templating system. |
libxml2 |
XML processing. |
libxslt |
XSLT processing. |
lxml |
XML processing. |
nose |
Python unit test runner. |
OpenGL |
Open GL interface. |
PIL |
Image manipulation |
ply |
Lex/Yacc style parser. |
Pygments |
Source code coloring and highlighting. |
qt |
Qt GUI widget library. |
reportlab |
PDF generation. |
roman |
Roman numeral utilities. |
sphinx |
Python documentation system. |
tz |
Time zone utilities. |