GRACETOOLS
Overview
GRACETOOLS is an archive of MATLAB software that can be used for gravity field recovery using GRACE type satellite observations.
Content
Usage
To be able to run the program download the following dataset and extract it into the input_data
directory:
The directory structure of input_data
should look lie this:
input_data
├── MockData_do10_nod4
│ ├── 2005-05-01
│ │ ├── GNV1B_2005-05-01_A_02.asc
│ │ ├── GNV1B_2005-05-01_B_02.asc
│ │ └── KBR1B_2005-05-01_X_02.asc
│ ├── 2005-05-02
│ │ ├── GNV1B_2005-05-02_A_02.asc
│ │ ├── GNV1B_2005-05-02_B_02.asc
│ │ └── KBR1B_2005-05-02_X_02.asc
│ ├── 2005-05-03
│ │ ├── GNV1B_2005-05-03_A_02.asc
│ │ ├── GNV1B_2005-05-03_B_02.asc
│ │ └── KBR1B_2005-05-03_X_02.asc
│ └── 2005-05-04
│ ├── GNV1B_2005-05-04_A_02.asc
│ ├── GNV1B_2005-05-04_B_02.asc
│ └── KBR1B_2005-05-04_X_02.asc
├── EGM96.gfc
└── GGM05S.gfc
The main mfiles to run are: gfr_parallel.m
and continue_gfr_par_from_iteration.m
.
Features
- The code is written using a batch least squares algorithm.
- Three different fixed step numerical integration schemes are provided.
- MATLAB parallel for-Loops (parfor) is used for calculation over arcs (days here).
- This code can be easily modified to run on the user's local parallel computations clusters.
Content
m-file | Description |
---|---|
batch_processor_partitioned.m |
batch processing algorithm for GRACE range-rate observations. |
cs2sc.m |
converts the square containing spherical harmonics coefficients storage format into a rectangular format. |
cs2vec |
rearranges a field of spherical harmonic coefficients in cs-or sc-format to a vector shape. |
deriv.m |
calculates equation of motion and all partials. |
dv_geoidn.m |
reads an Earth's gravity field model and plots the degree variances. |
dv_geoidn_no_plot |
reads an Earth's gravity field model and gives the degree variances without plotting. |
grtenpshs.m |
calculates the gradient and the tensor of the gravity field. |
hmat.m |
makes the Hi_tilda matrix. |
importGravityField.m |
import numeric data from a text file as a matrix. |
initplm.m |
initialzes a plm calculation. |
inter_sat_dist.m |
calculates range and range rate from position and velocity. |
llpartialgradV.m |
determines the partial derivative of the gradient of the gravity field w.r.t. the coefficients. |
multmatvek.m |
mulitplicates a matrix and a vector. |
odeint.m |
integrates one step with step size dt from t0 and initial values y0. |
odeint_abm.m |
integrates one step with step size h from t0 and initial values y0. |
odeint_dp8.m |
integrates one step with step size h from t0 and initial values y0 with Runge-Kutta (RK) integrator. |
odeint_dp8_abm_init.m |
integrates one step with step size h from t0 and initial values y0 with Runge-Kutta (RK) integrator. |
odeint_rk4.m |
integrates one step with step size h from t0 and initial values y0 with simple 4th order Runge-Kutta (RK) integrator. |
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. |
plm.m |
fully normalized associated Legendre functions for a selected order M. |
plmsp.m |
fully normalized associated Legendre functions for all degree and order but in a single points. |
readACC.m |
Read GRACE ACC1B data |
readGNV.m |
Read GRACE GNV1B data |
readKBR.m |
Read GRACE KBR1B data |
readSCA.m |
Read GRACE SCA1B data |
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. |
Acknowledgments
- GRACETOOLS is open source software (LICENSE GPLv3).
- 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.
Contributors
- Neda Darbeheshti, neda.darbeheshti@aei.mpg.de
- Florian Wöske, florian.woeske@zarm.uni-bremen.de
- Axel Schnitger, axel.schnitger@aei.mpg.de