# rotsmoother¶

rotsmoother - Get mean rotations and covariance matrices from set of finite rotation

## Synopsis¶

**rotsmoother** [ *rottable* ]
[ **-A** ]
[ **-C** ]
[ **-N** ]
[ **-S** ]
[ **-T***ages* ]
[ **-V**[*level*] ]
[ **-W** ]
[ **-Z** ]
[ **-b**binary ]
[ **-d**nodata ]
[ **-h**headers ]
[ **-i**flags ]
[ **-o**flags ]
[ **-s**flags ]
[ **-:**[**i**|**o**] ]

**Note:** No space is allowed between the option flag and the associated arguments.

## Description¶

**rotsmoother** reads a table of total reconstructions and computes mean
rotations (and optionally covariance matrices) for sub-groups of rotations
based on rotation age.

## Required Arguments¶

*rottable*- Name of a rotation table containing (lon, lat, time, angle, [weight]) values.

## Optional Arguments¶

**-A**- Use opening angles as a proxy for time. Suitable when no time can be assigned to the
rotations. In this case, input is expected to contain
*lon lat angle*[*weight*] records and**-T**settings refer to angles instead of time. [Default expects*lon lat time angle*[*weight*] and**-T**refers to time].

**-C**- Compute covariance matrix for each mean rotation. This is done by converting each finite rotation to a quaternion, determining the mean quaternion (rotation) and the consider all rotations as perturbation to the mean rotation. From these perturbations we determine the covariance matrix.

**-N**- Ensure all poles are in northern hemisphere [Default ensures positive opening angles].

**-S**- Ensure all poles are in southern hemisphere [Default ensures positive opening angles].

**-T***ages*- Sets the desired groups of times. For a single time append
the desired time. For an equidistant range of reconstruction times
give
**-T***start*/*stop*/*inc*or**-T***start*/*stop*/*npoints***+**. For an non-equidistant set of reconstruction times please pass them via the first column in a file, e.g.,**-T***agefile*. The times indicate read or generated becomes the bin-boundaries and we output the average time of all rotations inside each bin.

**-V**[*level*] (more ...)- Select verbosity level [c].

**-W**- Expect weights in last column for a weighted mean rotation [no weights].

**-Z**- Report negative opening angles [positive].

**-bi**[*ncols*][**t**] (more ...)- Select native binary input. [Default is 2 input columns].

**-bo**[*ncols*][*type*] (more ...)- Select native binary output. [Default is same as input].

**-d**[**i**|**o**]*nodata*(more ...)- Replace input columns that equal
*nodata*with NaN and do the reverse on output.

**-h**[**i**|**o**][*n*][**+c**][**+d**][**+r***remark*][**+r***title*] (more ...)- Skip or produce header record(s).

**-i***cols*[**l**][**s***scale*][**o***offset*][,*...*] (more ...)- Select input columns (0 is first column).

**-o***cols*[,...] (more ...)- Select output columns (0 is first column).

**-s**[*cols*][**a**|**r**] (more ...)- Set handling of NaN records.

**-:**[**i**|**o**] (more ...)- Swap 1st and 2nd column on input and/or output.

**-n**[**b**|**c**|**l**|**n**][**+a**][**+b***BC*][**+c**][**+t***threshold*] (more ...)- Select interpolation mode for grids.

**-^**or just**-**- Print a short message about the syntax of the command, then exits (NOTE: on Windows just use
**-**). **-+**or just**+**- Print an extensive usage (help) message, including the explanation of any module-specific option (but not the GMT common options), then exits.
**-?**or no arguments- Print a complete usage (help) message, including the explanation of all options, then exits.

## Consequences of grid resampling¶

Resample or sampling of grids will use various algorithms (see **-n**) that may lead
to possible distortions or unexpected results in the resampled values.
One expected effect of resampling with splines is the tendency for the new
resampled values to slightly exceed the global min/max limits of the original
grid. If this is unacceptable, you can impose clipping of the resampled values
values so they do not exceed the input min/max values by adding **+c** to
your **-n** option.

## Geodetic versus Geocentric Coordiinates¶

All spherical rotations are applied to geocentric coordinates. This means that incoming data points and grids are considered to represent geodetic coordinates and must first be converted to geocentric coordinates. Rotations are then applied, and the final reconstructed points are converted back to geodetic coordinates. This default behavior can be bypassed if the ellipsoid setting PROJ_ELLIPSOID is changed to Sphere.

## Examples¶

To smooth rotation groups in increments of 3 Myr and ensure northern hemisphere poles, try

gmt rotsmoother rotations.txt -N -V > rot_means.txt

## See Also¶

backtracker, gmtpmodeler, grdpmodeler, grdspotter, hotspotter, originator, rotconverter