Skip to content
Snippets Groups Projects
Commit 327e8df2 authored by Axel Schnitger's avatar Axel Schnitger
Browse files

Update documentation.

parent 29983b49
No related branches found
No related tags found
No related merge requests found
2018-08-21 Axel Schnitger <axel.schnitger@aei.mpg.de>
* CHANGELOG, README.md,
function_gfr/batch_processor_partitioned.m: Update documentation.
* commit 072c386874e366e6c23641cc45db2dea75b6f047
2018-08-20 Axel Schnitger <axel.schnitger@aei.mpg.de>
* CHANGELOG: Add CHANGELOG.
* commit 29983b4997d3999bec01f0a8fe56ac37586825e7
2018-08-20 Axel Schnitger <axel.schnitger@aei.mpg.de> 2018-08-20 Axel Schnitger <axel.schnitger@aei.mpg.de>
* README.md, continue_gfr_par_from_iteration.m, get_input_data.sh: * README.md, continue_gfr_par_from_iteration.m, get_input_data.sh:
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
## Overview ## Overview
GRACETOOLS is an archive of MATLAB software that can be used for gravity field GRACETOOLS is a collection of MATLAB scripts that can be used for gravity field
recovery using GRACE type satellite observations. recovery using GRACE type satellite observations.
**Features** **Features**
...@@ -14,48 +14,45 @@ recovery using GRACE type satellite observations. ...@@ -14,48 +14,45 @@ recovery using GRACE type satellite observations.
- This code can be easily modified to run on the user's local parallel - This code can be easily modified to run on the user's local parallel
computations clusters. computations clusters.
## Content **Content**
<!-- vim-markdown-toc GitLab --> <!-- vim-markdown-toc GitLab -->
* [Usage](#usage) * [Usage](#usage)
* [Example dataset](#example-dataset)
* [Linux & Mac](#linux-mac)
* [Manually](#manually)
* [Performance](#performance) * [Performance](#performance)
* [Files](#files) * [Files](#files)
* [Acknowledgments](#acknowledgments)
* [Contributors](#contributors) * [Contributors](#contributors)
<!-- vim-markdown-toc --> <!-- vim-markdown-toc -->
## Usage GRACETOOLS is open source software and licensed under
[GPLv3](https://gitlab.aei.uni-hannover.de/geoq/gracetools/blob/master/LICENSE).
Please reference this article if you use GRACETOOLS:
**Darbeheshti N., Wöske F., Weigelt M., McCullough C., Wu H. (2018) GRACETOOLS - GRACE gravity field recovery tools, Geosciences.**
The main m-files to run are: `gfr_parallel.m` and
`continue_gfr_par_from_iteration.m`.
### Example dataset ## Usage
To be able to run these scripts you need an example data-set. The main m-files to run are:
#### Linux & Mac - `gfr_parallel.m`
- `continue_gfr_par_from_iteration.m`
If you're working with Linux or MacOS simply use the `get_input_data.sh` script You need an example dataset to run these scripts. If you're on Linux or MacOS
to get the dataset: use the `get_input_data.sh` script to get the dataset:
``` ```
$ ./get_input_data.sh $ ./get_input_data.sh
``` ```
#### Manually If you prefer the manual way download the dataset:
Download the following dataset:
- [Download dataset](https://seafile.projekt.uni-hannover.de/f/3ee8fef6c6cb485489b4/?dl=1) - [Download dataset](https://seafile.projekt.uni-hannover.de/f/3ee8fef6c6cb485489b4/?dl=1)
Move the dataset into the `input_data` directory and extract it. Then delete Move the zip file into the `input_data` directory, extract it and delete the
the `input_data.zip` file. In a terminal the commands look like this from the now unnecessary `input_data.zip` file. For completeness here are the terminal
GRACETOOLS main directory: commands:
``` ```
$ mv ~/Downloads/input_data.zip input_data/ $ mv ~/Downloads/input_data.zip input_data/
...@@ -64,14 +61,7 @@ $ unzip input_data.zip ...@@ -64,14 +61,7 @@ $ unzip input_data.zip
$ rm -f input_data.zip $ rm -f input_data.zip
``` ```
Again from the GRACETOOLS main directory you can check the directory structure The directory structure of `input_data/` should look like this:
of the input_data/ directory with the following command:
```
$ tree input_data/
```
The output should look like this:
``` ```
input_data input_data
...@@ -96,55 +86,62 @@ input_data ...@@ -96,55 +86,62 @@ input_data
└── GGM05S.gfc └── GGM05S.gfc
``` ```
## Performance ## Performance
With an older intel i5 (4 cores) a test case with degree and order 10 with 4 With an older Intel i5 (4 cores) a test case with degree and order 10 with 4
days of observation, each iteration takes about 1h 10min. days of observation, each iteration takes about 1h 10min.
## Files ## Files
| m-file | Description | - `batch_processor_partitioned.m` - batch processing algorithm for GRACE
| :------------------------------ | :-------------------------------------------------------------------------------------------------------------------- | range-rate observations
| `batch_processor_partitioned.m` | batch processing algorithm for GRACE range-rate observations. | - `cs2sc.m`- converts the square containing spherical harmonics coefficients
| `cs2sc.m` | converts the square containing spherical harmonics coefficients storage format into a rectangular format. | storage format into a rectangular format
| `cs2vec` | rearranges a field of spherical harmonic coefficients in cs-or sc-format to a vector shape. | - `cs2vec`- rearranges a field of spherical harmonic coefficients in cs-or
| `deriv.m` | calculates equation of motion and all partials. | sc-format to a vector shape
| `dv_geoidn.m` | reads an Earth's gravity field model and plots the degree variances. | - `deriv.m`- calculates equation of motion and all partials
| `dv_geoidn_no_plot` | reads an Earth's gravity field model and gives the degree variances without plotting. | - `dv_geoidn.m`- reads an Earth's gravity field model and plots the degree
| `grtenpshs.m` | calculates the gradient and the tensor of the gravity field. | variances
| `hmat.m` | makes the Hi_tilda matrix. | - `dv_geoidn_no_plot`- reads an Earth's gravity field model and gives the
| `importGravityField.m` | import numeric data from a text file as a matrix. | degree variances without plotting
| `initplm.m` | initialzes a plm calculation. | - `grtenpshs.m`- calculates the gradient and the tensor of the gravity field
| `inter_sat_dist.m` | calculates range and range rate from position and velocity. | - `hmat.m`- makes the Hi_tilda matrix
| `llpartialgradV.m` | determines the partial derivative of the gradient of the gravity field w.r.t. the coefficients. | - `importGravityField.m`- import numeric data from a text file as a matrix
| `multmatvek.m` | mulitplicates a matrix and a vector. | - `initplm.m`- initializes a plm calculation
| `odeint.m` | integrates one step with step size dt from t0 and initial values y0. | - `inter_sat_dist.m`- calculates range and range rate from position and
| `odeint_abm.m` | integrates one step with step size h from t0 and initial values y0. | velocity
| `odeint_dp8.m` | integrates one step with step size h from t0 and initial values y0 with Runge-Kutta (RK) integrator. | - `llpartialgradV.m`- determines the partial derivative of the gradient of the
| `odeint_dp8_abm_init.m` | integrates one step with step size h from t0 and initial values y0 with Runge-Kutta (RK) integrator. | gravity field w.r.t. the coefficients
| `odeint_rk4.m` | integrates one step with step size h from t0 and initial values y0 with simple 4th order Runge-Kutta (RK) integrator. | - `multmatvek.m`- mulitplicates a matrix and a vector
| `odeint_rk4_abm_init.m` | integrates one step with step size h from t0 and initial values y0 with simple 4th order Runge-Kutta (RK) integrator. | - `odeint.m`- integrates one step with step size dt from t0 and initial values
| `plm.m` | fully normalized associated Legendre functions for a selected order M. | y0
| `plmsp.m` | fully normalized associated Legendre functions for all degree and order but in a single points. | - `odeint_abm.m`- integrates one step with step size h from t0 and initial
| `readACC.m` | Read GRACE ACC1B data | values y0
| `readGFC.m` | Read gfc files | - `odeint_dp8.m`- integrates one step with step size h from t0 and initial
| `readGNV.m` | Read GRACE GNV1B data | values y0 with Runge-Kutta (RK) integrator
| `readKBR.m` | Read GRACE KBR1B data | - `odeint_dp8_abm_init.m`- integrates one step with step size h from t0 and
| `readSCA.m` | Read GRACE SCA1B data | initial values y0 with Runge-Kutta (RK) integrator
| `Ri2e.m` | returns the rotation matrix from an inertial frame to an Earth-fixed coordinate system. | - `odeint_rk4.m`- integrates one step with step size h from t0 and initial
| `Ri2e_dot.m` | returns the derivative of the rotation matrix from inertial frame to an Earth-fixed Earth-centered coordinate system. | values y0 with simple 4th order Runge-Kutta (RK) integrator
| `save_vars2continue_itr.m` | save all important variables of a gravity estimation. | - `odeint_rk4_abm_init.m`- integrates one step with step size h from t0 and
| `vec2cs.m` | rearranges a vector shaped set of spherical harmonic coefficients into cs-format. | initial values y0 with simple 4th order Runge-Kutta (RK) integrator
- `plm.m`- fully normalized associated Legendre functions for a selected order
## Acknowledgments M
- `plmsp.m`- fully normalized associated Legendre functions for all degree and
- GRACETOOLS is open source software (LICENSE GPLv3). order but in a single points
- Please reference this article if you use GRACETOOLS: - `readACC.m`- Read GRACE ACC1B
- `readGFC.m`- Read GFC file
``` - `readGNV.m`- Read GRACE GNV1B
Darbeheshti N., Wöske F., Weigelt M., Mccullough C., Wu H. (2018) GRACETOOLS - GRACE gravity field recovery tools, Geosciences. - `readKBR.m`- Read GRACE KBR1B
``` - `readSCA.m`- Read GRACE SCA1B
- `Ri2e.m`- returns the rotation matrix from an inertial frame to an
Earth-fixed coordinate system
- `Ri2e_dot.m`- returns the derivative of the rotation matrix from inertial
frame to an Earth-fixed Earth-centered coordinate system
- `save_vars2continue_itr.m`- save all important variables of a gravity
estimation
- `vec2cs.m`- rearranges a vector shaped set of spherical harmonic coefficients
into cs-format
## Contributors ## Contributors
......
function batch_processor_partitioned(Mday,FolderName,lmaxcs,mKBR,field,data_plm,GM,ae,lmaxf,state,timeKBR,observation,x0x) function batch_processor_partitioned(Mday,FolderName,lmaxcs,mKBR,field,data_plm,GM,ae,lmaxf,state,timeKBR,observation,x0x)
% Batch processing algorithm for GRACE range-rate observations. % BATCH_PROCESSOR_PARTITIONED provides a batch processing algorithm for GRACE
% separation between local and global parameters, which are estimated for % range-rate observations.
%
% Separation between local and global parameters, which are estimated for
% different arcs. E.g. Initial states daily and spherical harmonics % different arcs. E.g. Initial states daily and spherical harmonics
% coefficients for the whole time. Using Partitioned Normal Equations % coefficients for the whole time. Using Partitioned Normal Equations based on:
% based on:
% - Gunter's MSc(2000)thesis, page 27 % - Gunter's MSc(2000)thesis, page 27
% - Statistical Orbit Determination (Tapley et al., 2004), page 196-197 % - Statistical Orbit Determination (Tapley et al., 2004), page 196-197
% %
...@@ -23,7 +24,7 @@ function batch_processor_partitioned(Mday,FolderName,lmaxcs,mKBR,field,data_plm, ...@@ -23,7 +24,7 @@ function batch_processor_partitioned(Mday,FolderName,lmaxcs,mKBR,field,data_plm,
% x0x = state deviation [12x1] % x0x = state deviation [12x1]
% %
% Output: function has no output, output is saved in file for easy % Output: function has no output, output is saved in file for easy
% paralleization % parallelization
% %
% Example: see gfr_parallel.m % Example: see gfr_parallel.m
% %
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment