programmer's documentation
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
Data Types | Functions/Subroutines | Variables
Module for rotation zones (rotors)

Data Types

interface  rotation::rotation_define
 Define a global rotation. More...
 
interface  rotation::rotation_update_coords
 Update coordinates based on a global rotation and time. More...
 
interface  rotation::angular_velocity
 Return angular velocity associated with a rotation. More...
 
interface  rotation::rotation_velocity
 Compute rotation velocity at given point coordinates

\[ \vect{v}=\vect{\Omega}\wedge\vect{x},\quad \text{with }\vect{\Omega}\textnormal{ the rotation vector and } \vect{x}\text{ the point location.} \]

. More...

 
interface  rotation::add_coriolis_v
 Add a Coriolis term to a local vector

\[ \vect{w}=\vect{w}+C\vect{\Omega}\wedge\vect{u},\quad \text{with }C\text{ a multiplicative coefficient, } \vect{\Omega}\text{ the rotation vector and } \vect{u}\text{ the velocity.} \]

. More...

 
interface  rotation::coriolis_v
 Compute a Coriolis term for a vector

\[ \vect{w}=C\vect{\Omega}\wedge\vect{u},\quad \text{with }C\text{ a multiplicative coefficient, } \vect{\Omega}\text{ the rotation vector and } \vect{u}\text{ the velocity.} \]

. More...

 
interface  rotation::add_coriolis_t
 Add the dual tensor of a rotation vector to a tensor

\[ T_{ij}=T_{ij}+\epsilon_{imj}\Omega_m,\quad \text{for }\Omega_m\text{ the rotation vector components and } \epsilon_{imj}\text{ the permutation tensor components.} \]

. More...

 
interface  rotation::coriolis_t
 Compute the dual tensor of a rotation vector

\[ T_{ij}=\epsilon_{imj}\Omega_m,\quad \text{for }\Omega_m\text{ the rotation vector components and } \epsilon_{imj}\text{ the permutation tensor components.} \]

. More...

 

Functions/Subroutines

subroutine rotation_define (omega_x, omega_y, omega_z, invariant_x, invariant_y, invariant_z)
 
subroutine rotation_update_coords (n_coords, t_rot, coords)
 
subroutine angular_velocity (r_num, omega)
 
subroutine rotation_velocity (r_num, coords, vr)
 
subroutine add_coriolis_v (r_num, c, v, vr)
 
subroutine coriolis_v (r_num, c, v, vr)
 
subroutine add_coriolis_t (r_num, c, tr)
 
subroutine coriolis_t (r_num, c, tr)
 

Variables

integer nrotmx
 Maximum number of rotors. More...
 
double precision, dimension(3,
nrotmx), save 
rotax
 Rotation axis. More...
 
double precision, dimension(3,
nrotmx), save 
rotcen
 Rotation origin coordinates. More...
 

Detailed Description

Function/Subroutine Documentation

subroutine add_coriolis_t ( integer(c_int)  r_num,
real(c_double)  c,
real(c_double), dimension(3,3), intent(inout)  tr 
)
subroutine add_coriolis_v ( integer(c_int)  r_num,
real(c_double)  c,
real(c_double), dimension(3), intent(in)  v,
real(c_double), dimension(3), intent(inout)  vr 
)
subroutine angular_velocity ( integer(c_int)  r_num,
real(c_double), intent(out)  omega 
)
subroutine coriolis_t ( integer(c_int)  r_num,
real(c_double)  c,
real(c_double), dimension(3,3), intent(inout)  tr 
)
subroutine coriolis_v ( integer(c_int)  r_num,
real(c_double)  c,
real(c_double), dimension(3), intent(in)  v,
real(c_double), dimension(3), intent(out)  vr 
)
subroutine rotation_define ( real(c_double)  omega_x,
real(c_double)  omega_y,
real(c_double)  omega_z,
real(c_double)  invariant_x,
real(c_double)  invariant_y,
real(c_double)  invariant_z 
)
subroutine rotation_update_coords ( integer(c_int)  n_coords,
real(c_double)  t_rot,
real(c_double), dimension(3,*), intent(inout)  coords 
)
subroutine rotation_velocity ( integer(c_int)  r_num,
real(c_double), dimension(3), intent(in)  coords,
real(c_double), dimension(3), intent(out)  vr 
)

Variable Documentation

integer nrotmx

Maximum number of rotors.

double precision, dimension(3, nrotmx), save rotax

Rotation axis.

double precision, dimension(3, nrotmx), save rotcen

Rotation origin coordinates.