8.0
general documentation
Loading...
Searching...
No Matches
Module for rotation zones (rotors)

Data Types

interface  rotation_define
 Define a global rotation. More...
interface  rotation_update_coords
 Update coordinates based on a global rotation and time. More...
interface  angular_velocity
 Return angular velocity associated with a rotation. More...
interface  rotation_velocity
 Compute rotation velocity at given point coordinates. More...
interface  add_coriolis_v
 Add a Coriolis term to a local vector. More...
interface  coriolis_v
 Compute a Coriolis term for a vector. More...
interface  add_coriolis_t
 Add the dual tensor of a rotation vector to a tensor. More...
interface  coriolis_t
 Compute the dual tensor of a rotation vector. 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.
double precision, dimension(3, nrotmx), save rotax
 Rotation axis.
double precision, dimension(3, nrotmx), save rotcen
 Rotation origin coordinates.

Detailed Description

Function/Subroutine Documentation

◆ add_coriolis_t()

subroutine add_coriolis_t ( integer(c_int), value r_num,
real(c_double), value c,
real(c_double), dimension(3,3), intent(inout) tr )

◆ add_coriolis_v()

subroutine add_coriolis_v ( integer(c_int), value r_num,
real(c_double), value c,
real(c_double), dimension(3), intent(in) v,
real(c_double), dimension(3), intent(inout) vr )

◆ angular_velocity()

subroutine angular_velocity ( integer(c_int), value r_num,
real(c_double), intent(out) omega )

◆ coriolis_t()

subroutine coriolis_t ( integer(c_int), value r_num,
real(c_double), value c,
real(c_double), dimension(3,3), intent(inout) tr )

◆ coriolis_v()

subroutine coriolis_v ( integer(c_int), value r_num,
real(c_double), value c,
real(c_double), dimension(3), intent(in) v,
real(c_double), dimension(3), intent(out) vr )

◆ rotation_define()

subroutine rotation_define ( real(c_double), value omega_x,
real(c_double), value omega_y,
real(c_double), value omega_z,
real(c_double), value invariant_x,
real(c_double), value invariant_y,
real(c_double), value invariant_z )

◆ rotation_update_coords()

subroutine rotation_update_coords ( integer(c_int), value n_coords,
real(c_double), value t_rot,
real(c_double), dimension(3,*), intent(inout) coords )

◆ rotation_velocity()

subroutine rotation_velocity ( integer(c_int), value r_num,
real(c_double), dimension(3), intent(in) coords,
real(c_double), dimension(3), intent(out) vr )

Variable Documentation

◆ nrotmx

integer nrotmx

Maximum number of rotors.

◆ rotax

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

Rotation axis.

◆ rotcen

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

Rotation origin coordinates.