Spherical Harmonics Manipulator old pre-v1 hgCode
Software to make fast synthesis of spherical harmonics global models
Status: Beta
Brought to you by:
climbercat
| File | Date | Author | Commit |
|---|---|---|---|
| bin | 2013-06-18 |
|
[2995ca] Updating the code to 0.9.6.1 |
| config | 2013-04-17 |
|
[f0e500] New Fixing the possibility to read TIM GOCE R4 ... |
| data | 2013-06-18 |
|
[2995ca] Updating the code to 0.9.6.1 |
| img | 2012-03-30 |
|
[0efce7] Screenshot update |
| source | 2013-06-18 |
|
[2995ca] Updating the code to 0.9.6.1 |
| README.txt | 2013-04-17 |
|
[f0e500] New Fixing the possibility to read TIM GOCE R4 ... |
| changelog.txt | 2013-04-17 |
|
[f0e500] New Fixing the possibility to read TIM GOCE R4 ... |
==============================================================================
Manipulator README FILE v0.9.6
==============================================================================
This software computes synthesis of spherical harmonics models on sparse
coordinates or grids (provided in a geodetic or geocentric reference system).
Input and output are stored in matlab ".mat" file format (as default options)
It's possible to read and write from plain text files
The SW is able to provide this outputs:
--------------------------------------
T
N
Tl, Tt, Tr
Tn, Te, Tz
Dg
Tll, Tlt, Tlr, Ttt, Ttr
Tee, Ten, Ter, Tnn, Tnr, Trr
Trrr
--------------------------------------
where:
l lambda
t theta
r radial
n nord
e east
z radial
The source code is available for modification and compilation.
A binary executable for Window @64bit is available
==============================================================================
INPUT AND OUPUT FILES
==============================================================================
The current version of the software accepts .mat (or .txt) files as input,
and it creates .mat (or .txt) output.
To get some sample input data visit the SVN archive.
MODELS
Coefficients of a model must be stored in two variables called: cnm and snm
they must be full matrixes.
e.g. EGM2008 up to 2190
it is composed by two matrixes each of the size of 2190x2190
Optionally it is possible to load GFZ format models - change the parameter
[UseGFZ] in the .ini file
COORDINATES
The matlab file containing the coordinates must have 3 variables:
- theta, lambda, r in case of geocentric coordinates
- theta, lambda, h in case of geodetic coordinates
theta and lambda must be expressed in radians
Optionally it is possible to load the coordinates from plain text files
Those file must contain 3 columns (theta, lambda, r/h)
The first row of the text file must contain the dimension of the three
In case of Grids saved in a plain text file, columns without different
size must be padded with zeros.
Example: 2 by 3 grid
Input file (discard row numbers):
line 1: 2 3 2
line 2: 0.11000e1 0.01000e1 2.50e5
line 3: 0.12000e1 0.02000e1 2.50e5
line 4: 0.0 0.03000e1 0.0
- SPARSE DATA ------------------------------------------------
The software compute the output for each point (theta(i), lambda(i), r(i)/h(i))
- GRIDS ------------------------------------------------------
If grid mode is selected, the arrays must have this size:
- theta [#divTheta x 1]
- lambda [#divLambda x 1]
- r [#divTheta x 1]
and the final output will be a grid (or more) with this size
- Dg [ #divTheta * #divLambda]
==============================================================================
USAGE
==============================================================================
This is a command line program.
Any parameter / constant can be modified in the .ini file provided with the
software.
for help digit: manipulator --help
See also "NOTES FOR WINDOWS USER"
==============================================================================
CREDITS
==============================================================================
This software has been written by Andrea Gatti
Laboratorio di Geomatica - Politecnico di Milano - Como
If you find any bug or have some question about the software contact:
andrea.gatti@mail.polimi.it
In case you make any modification/addition to this software it is appreciated
that you send the modified files to me using email.
==============================================================================
DEVELOPMENT PLATFORM
==============================================================================
The software has been compiled with Intel Composer 12 and
tested on Mac OS X 10.7.x (up to degree and order 2190) and Windows 2008 R2
A couple of makefiles to build the software with or without MATLAB support
are present as examples
==============================================================================
REQUIREMENTS
==============================================================================
The software requires 64bit system (support for quadruple precision float), some
redistributable Mathworks Matlab libraries (to read and write .mat files), and an
Intel mop library.
They are provided as additional download.
From version v0.9 it is possible to compile the code without MATLAB support
(no MATLAB libraries are in this way required)
==============================================================================
NOTES FOR WINDOWS USER
==============================================================================
How to run it:
1. Open a command window (cmd)
2. Launch ansicon.exe - needed to correctly display informations
3. Launch manipulator.exe
ansicon.exe can be found in the folder .\ansi151\x64
==============================================================================
DISCLAMER
==============================================================================
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ``AS IS'' AND ANY EXPRESSED
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 HOLDERS 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.