marcdegraef / 3Drotations

This repository contains f95, IDL, MatLab, and C++ versions of a 3D rotations conversion library.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

3Drotations

This repository contains f95, IDL, MatLab, and C++ versions of a 3D rotations conversion library. Current development of this package is supported by an AFOSR/MURI grant, FA9550-12-1-0458.

The original routines were written in f95 by M. De Graef; the library contains pairwise conversion routines for the following rotation representations:

  • Euler angles (Bunge zxz setting)
  • rotation matrix
  • Rodrigues vector
  • quaternion
  • axis-angle pair
  • homochoric vector
  • cubochoric vector

The cubochoric representation is new and is fully described in the following publication:

D. Rosca, A. Morawiec, and M. De Graef. "A new method of constructing a grid in the space of 3D rotations and its applications to texture analysis". Modeling and Simulations in Materials Science and Engineering 22, 075013 (2014). [DOI: http://dx.doi.org/10.1088/0965-0393/22/7/075013]

The rotation conversions and all the sign conventions can be found in the following publication:

D.J. Rowenhorst, A.D. Rollett, G.S. Roher, M.A. Groeber, M.A. Jackson, P.J. Konijnenberg, and M. De Graef. "Tutorial: consistent representations of and conversions between 3D rotations". Modeling and Simulations in Materials Science and Engineering, 23, 083501 (2015). [DOI: http://dx.doi.org/10.1088/0965-0393/23/8/083501]

The scalar IDL version was written by M. De Graef; this version was extended to deal with arrays of rotations by D. Rowenhorst [NRL]. The MatLab version was created by Amy Wang, then a postdoctoral researcher at CMU. The C++ version was created from the f95 code by Mike Jackson and Sean Donegan, and is currently part of the EbsdLib library and also included in the DREAM3D package .

About

This repository contains f95, IDL, MatLab, and C++ versions of a 3D rotations conversion library.

License:BSD 2-Clause "Simplified" License


Languages

Language:C 37.6%Language:Fortran 29.2%Language:IDL 14.8%Language:Python 10.7%Language:MATLAB 7.6%Language:Makefile 0.1%