kinemetry
Kinemetry analyses 2D maps of the moments of the line-of-sight velocity distribution (LOSVD), such as the mean velocity and the velocity dispersion. The method is a generalisation of surface photometry (e.g. Jedrzejewski 1987) to all moments of the LOSVD. It performs harmonic expansion of 2D maps of observed moments (surface brightness, velocity, velocity dispersion, h3, h4...) along the best fitting ellipses (either fixed or free to change along the radii). Its purpose is to robustly quantify maps of the LOSVD moments, describe trends in structures and detect morphological and kinematic sub-components. Kinemetry can also be used for analysis of gas kinematics, in a similar way as classical tilted-ring analysis. This is because kinemetry, in the case of the velocity moment, assumes that motion is along circular orbits within a thin disk. More details about the method can be found in this paper Krajnović et al. (2006, MNRAS, 366, 787).
The software was original written in IDL programming language, which you can download from here. There is also a python version of the code, which is distributed via this link. See below for its contents.

Kinemetry on the velocity (top left) and velocity dispersion (top right) maps. 2nd row: illustration of the minimisation to find the best fitting ellipse (over-plotted on the map). Large black circle shows the location of the best fit parameters using the first step in minimisation via a grid (black dots), while large red circle shows the final set of best fitting parameters. 3rd row: velocities (left) and velocity dispersions (right) extracted along the best fitting ellipse. Red is the kinemetry model under assumptions for the odd (left) and even (right) moments of the LOSVD. 4th row: residuals and higher order kinemetry terms.
The python kinemetry distribution consists of (this link):
- kinemetry.py -- the main programme
- run_kinemetry_examples -- a set of python functions which can help you run kinemetry
- kin_mpfit.py - slight modification of the Michele Cappellari's python mpfit routine
- NGC2974_*_.txt -- velocity and velocity dispersion values (for the examples)
- NGC4473r.fits - an image, also for the examples, for photometry
You will also need python scripts for plotting maps. I use Michele Cappellari's plotbin (available here: https://pypi.org/project/plotbin/), as well as the usual set of python stuff: astropy, matplotlin, numpy, scipy. Finally, to run run_kinemetry_examples, you might need to set the path to the data files manually.