DAMASK with grid solvers  Revision: v2.0.3-2204-gdb1f2151
The Düsseldorf Advanced Material Simulation Kit with Grid Solvers
lambert Module Reference

Mapping homochoric <-> cubochoric. More...

Functions/Subroutines

pure real(preal) function, dimension(3), public lambert_cubetoball (cube)
 map from 3D cubic grid to 3D ball More...
 
pure real(preal) function, dimension(3), public lambert_balltocube (xyz)
 map from 3D ball to 3D cubic grid
More...
 
pure integer function, dimension(3) getpyramidorder (xyz)
 determine to which pyramid a point in a cubic grid belongs More...
 

Variables

real(preal), parameter spi = sqrt(PI)
 
real(preal), parameter pref = sqrt(6.0_pReal/PI)
 
real(preal), parameter a = PI**(5.0_pReal/6.0_pReal)/6.0_pReal**(1.0_pReal/6.0_pReal)
 
real(preal), parameter ap = PI**(2.0_pReal/3.0_pReal)
 
real(preal), parameter sc = A/AP
 
real(preal), parameter beta = A/2.0_pReal
 
real(preal), parameter r1 = (3.0_pReal*PI/4.0_pReal)**(1.0_pReal/3.0_pReal)
 
real(preal), parameter r2 = sqrt(2.0_pReal)
 
real(preal), parameter pi12 = PI/12.0_pReal
 
real(preal), parameter prek = R1 * 2.0_pReal**(1.0_pReal/4.0_pReal)/BETA
 

Detailed Description

Mapping homochoric <-> cubochoric.

Author
Marc De Graef, Carnegie Mellon University
Martin Diehl, Max-Planck-Institut für Eisenforschung GmbH

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).

Function/Subroutine Documentation

◆ getpyramidorder()

pure integer function, dimension(3) lambert::getpyramidorder ( real(preal), dimension(3), intent(in)  xyz)
private

determine to which pyramid a point in a cubic grid belongs

Author
Marc De Graef, Carnegie Mellon University
Martin Diehl, Max-Planck-Institut für Eisenforschung GmbH

Definition at line 186 of file Lambert.f90.

Referenced by lambert_balltocube(), and lambert_cubetoball().

+ Here is the caller graph for this function:

◆ lambert_balltocube()

pure real(preal) function, dimension(3), public lambert::lambert_balltocube ( real(preal), dimension(3), intent(in)  xyz)

map from 3D ball to 3D cubic grid

Author
Marc De Graef, Carnegie Mellon University
Martin Diehl, Max-Planck-Institut für Eisenforschung GmbH

Definition at line 132 of file Lambert.f90.

References beta, prec::deq0(), getpyramidorder(), math::math_clip(), pi12, pref, r1, r2, and sc.

Referenced by rotations::ho2cu().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ lambert_cubetoball()

pure real(preal) function, dimension(3), public lambert::lambert_cubetoball ( real(preal), dimension(3), intent(in)  cube)

map from 3D cubic grid to 3D ball

Author
Marc De Graef, Carnegie Mellon University
Martin Diehl, Max-Planck-Institut für Eisenforschung GmbH

Definition at line 76 of file Lambert.f90.

References ap, prec::deq0(), getpyramidorder(), math::pi, pi12, pref, prek, r2, sc, and spi.

Referenced by rotations::cu2ho().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Variable Documentation

◆ a

real(preal), parameter lambert::a = PI**(5.0_pReal/6.0_pReal)/6.0_pReal**(1.0_pReal/6.0_pReal)
private

Definition at line 51 of file Lambert.f90.

◆ ap

real(preal), parameter lambert::ap = PI**(2.0_pReal/3.0_pReal)
private

Definition at line 51 of file Lambert.f90.

Referenced by lambert_cubetoball().

◆ beta

real(preal), parameter lambert::beta = A/2.0_pReal
private

Definition at line 51 of file Lambert.f90.

Referenced by lambert_balltocube().

◆ pi12

real(preal), parameter lambert::pi12 = PI/12.0_pReal
private

Definition at line 51 of file Lambert.f90.

Referenced by lambert_balltocube(), and lambert_cubetoball().

◆ pref

real(preal), parameter lambert::pref = sqrt(6.0_pReal/PI)
private

Definition at line 51 of file Lambert.f90.

Referenced by lambert_balltocube(), and lambert_cubetoball().

◆ prek

real(preal), parameter lambert::prek = R1 * 2.0_pReal**(1.0_pReal/4.0_pReal)/BETA
private

Definition at line 51 of file Lambert.f90.

Referenced by lambert_cubetoball().

◆ r1

real(preal), parameter lambert::r1 = (3.0_pReal*PI/4.0_pReal)**(1.0_pReal/3.0_pReal)
private

Definition at line 51 of file Lambert.f90.

Referenced by lambert_balltocube().

◆ r2

real(preal), parameter lambert::r2 = sqrt(2.0_pReal)
private

Definition at line 51 of file Lambert.f90.

Referenced by lambert_balltocube(), and lambert_cubetoball().

◆ sc

real(preal), parameter lambert::sc = A/AP
private

Definition at line 51 of file Lambert.f90.

Referenced by lambert_balltocube(), and lambert_cubetoball().

◆ spi

real(preal), parameter lambert::spi = sqrt(PI)
private

Definition at line 51 of file Lambert.f90.

Referenced by lambert_cubetoball().