MBSVT 1.0
Functions/Subroutines | Variables
Jacob Module Reference

Module of primitive jacobians. It's NOT a user module, it's used by the solver. More...

Functions/Subroutines

subroutine Jacob_Setup
subroutine deallocFiq
subroutine j_UnitEulParam (ir, iEul)
 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC Primitive jacobian of unitary Euler parameters.
subroutine j_dot1GB (ir, iEul2, u, v)
 Primitive dot-1 jacobian of a body attached on the ground.
subroutine j_dot1 (ir, iEul1, iEul2, u, v)
 Primitive dot-1 jacobian.
subroutine j_sphericalGB (ir, irg2, iEul2, pt1, pt2)
 Primitive jacobians of a spherical joint of a body attached to the ground.
subroutine j_spherical (ir, irg1, irg2, iEul1, iEul2, pt1, pt2)
 Primitive jacobians of a spherical joint between two bodies.
subroutine j_revoluteGB (ir, irg2, iEul2, pt1, pt2, u1, v1, vec2)
 Primitive jacobians of a revolute joint of a body attached to the ground.
subroutine j_revolute (ir, irg1, irg2, iEul1, iEul2, pt1, pt2, u1, v1, vec2)
 Primitive jacobians of a revolute joint between two bodies.
subroutine j_transGB (ir, irg2, iEul2, pt1, pt2, vec1y, vec1x, vec2x, vec2z)
 Primitive jacobians of a translational joint of a body attached to the ground.
subroutine j_trans (ir, irg1, irg2, iEul1, iEul2, pt1, pt2, vec1y, vec1x, vec2x, vec2z)
 Primitive jacobians of a translational joint between two bodies.
subroutine j_Drive_rgEul (ir, ind, i_MOTOR)
 Primitive driving jacobians for a generalized coordinate of the system.
subroutine j_Drive_distGB (ir, irg2, iEul2, pt1, pt2_loc, i_MOTOR)
 Primitive driving jacobians for a distance between a point in the ground and a point of one body.
subroutine j_Drive_dist (ir, irg1, irg2, iEul1, iEul2, pt1_loc, pt2_loc, i_MOTOR)
 Primitive driving constraints for a distance between two points of two bodies.

Variables

REAL(8), dimension(:,:),
allocatable 
PROTECTED
REAL(8), dimension(:,:),
allocatable 
Fiq

Detailed Description

Module of primitive jacobians. It's NOT a user module, it's used by the solver.


Function/Subroutine Documentation

subroutine Jacob::deallocFiq ( )
subroutine Jacob::j_dot1 ( integer,intent(in)  ir,
integer,dimension(4),intent(in)  iEul1,
integer,dimension(4),intent(in)  iEul2,
real(8),dimension(3),intent(in)  u,
real(8),dimension(3),intent(in)  v 
)

Primitive dot-1 jacobian.

Parameters:
irindex of the constraint
iEul1,iEul2indexes of the Euler parameters of the bodies.
uvector in the first body given in the body reference frame
vvector in the second body given in the body reference frame

Here is the call graph for this function:

subroutine Jacob::j_dot1GB ( integer,intent(in)  ir,
integer,dimension(4),intent(in)  iEul2,
real(8),dimension(3),intent(in)  u,
real(8),dimension(3),intent(in)  v 
)

Primitive dot-1 jacobian of a body attached on the ground.

Parameters:
irindex of the constraint
iEul2indexes of the Euler parameters of the body.
uvector attached on the ground
vvector in the second body given in the body reference frame

Here is the call graph for this function:

subroutine Jacob::j_Drive_dist ( INTEGER,intent(in)  ir,
INTEGER,dimension(3),intent(in)  irg1,
INTEGER,dimension(3),intent(in)  irg2,
INTEGER,dimension(4),intent(in)  iEul1,
INTEGER,dimension(4),intent(in)  iEul2,
REAL(8),dimension(3),intent(in)  pt1_loc,
REAL(8),dimension(3),intent(in)  pt2_loc,
INTEGER,intent(in)  i_MOTOR 
)

Primitive driving constraints for a distance between two points of two bodies.

Parameters:
irindex of the constraint.
irg1,irg2indexes of the centers of mass of the bodies.
iEul1,iEul2indexes of the Euler parameters of the bodies.
pt1_locpoint in the first body given in the body reference frame
pt2_locpoint in the second body given in the body reference frame
i_MOTORindex in the vector of motors (STATE::pos) to drive the constraint.

Here is the call graph for this function:

subroutine Jacob::j_Drive_distGB ( INTEGER,intent(in)  ir,
INTEGER,dimension(3),intent(in)  irg2,
INTEGER,dimension(4),intent(in)  iEul2,
REAL(8),dimension(3),intent(in)  pt1,
REAL(8),dimension(3),intent(in)  pt2_loc,
INTEGER,intent(in)  i_MOTOR 
)

Primitive driving jacobians for a distance between a point in the ground and a point of one body.

Parameters:
irindex of the constraint.
irg2index of the center of mass of the body.
iEul2index of the Euler parameters of the body.
pt1point in the ground given in the global reference frame
pt2_locpoint in the second body given in the body reference frame
i_MOTORindex in the vector of motors (STATE::pos) to drive the constraint.

Here is the call graph for this function:

subroutine Jacob::j_Drive_rgEul ( INTEGER,intent(in)  ir,
INTEGER,intent(in)  ind,
INTEGER,intent(in)  i_MOTOR 
)

Primitive driving jacobians for a generalized coordinate of the system.

Parameters:
irindex of the constraint
indindex of the driven generalized coordinate.
i_MOTORindex in the vector of motors (STATE::pos) to drive the constraint. It is not necessary here, but it is kept for compatibility of the interfaces (less easy to make mistakes)
subroutine Jacob::j_revolute ( integer,intent(in)  ir,
integer,dimension(3),intent(in)  irg1,
integer,dimension(3),intent(in)  irg2,
integer,dimension(4),intent(in)  iEul1,
integer,dimension(4),intent(in)  iEul2,
REAL(8),dimension(3),intent(in)  pt1,
REAL(8),dimension(3),intent(in)  pt2,
REAL(8),dimension(3),intent(in)  u1,
REAL(8),dimension(3),intent(in)  v1,
REAL(8),dimension(3),intent(in)  vec2 
)

Primitive jacobians of a revolute joint between two bodies.

Parameters:
irindex of the constraint
irg1,irg2indexes of the centers of mass of the bodies.
iEul1,iEul2indexes of the Euler parameters of the bodies.
pt1,pt2points given in the bodies reference frames
u1,v1perpendicular vectors in the first body
vec2vector in the second body given in the body reference frame

Here is the call graph for this function:

subroutine Jacob::j_revoluteGB ( integer,intent(in)  ir,
integer,dimension(3),intent(in)  irg2,
integer,dimension(4),intent(in)  iEul2,
REAL(8),dimension(3),intent(in)  pt1,
REAL(8),dimension(3),intent(in)  pt2,
REAL(8),dimension(3),intent(in)  u1,
REAL(8),dimension(3),intent(in)  v1,
REAL(8),dimension(3),intent(in)  vec2 
)

Primitive jacobians of a revolute joint of a body attached to the ground.

Parameters:
irindex of the constraint
irg2index of the center of mass of the body
iEul2index of the Euler parameters of the body
pt1point in the ground
pt2point in the body given in the body reference frame
u1,u2perpendicular vectors in the ground
vec2vector in the body given in the body reference frame

Here is the call graph for this function:

subroutine Jacob::j_spherical ( integer,intent(in)  ir,
integer,dimension(3),intent(in)  irg1,
integer,dimension(3),intent(in)  irg2,
integer,dimension(4),intent(in)  iEul1,
integer,dimension(4),intent(in)  iEul2,
real(8),dimension(3),intent(in)  pt1,
real(8),dimension(3),intent(in)  pt2 
)

Primitive jacobians of a spherical joint between two bodies.

Parameters:
irindex of the constraint
irg1,irg2indexes of the centers of mass of the bodies.
iEul1,iEul2indexes of the Euler parameters of the bodies.
pt1,pt2points given in the bodies reference frames

Here is the call graph for this function:

subroutine Jacob::j_sphericalGB ( integer,intent(in)  ir,
integer,dimension(3),intent(in)  irg2,
integer,dimension(4),intent(in)  iEul2,
real(8),dimension(3),intent(in)  pt1,
real(8),dimension(3),intent(in)  pt2 
)

Primitive jacobians of a spherical joint of a body attached to the ground.

Parameters:
irindex of the constraint
irg2index of the center of mass of the body
iEul2index of the Euler parameters of the body
pt1point in the ground
pt2point in the body given in the body reference frame

Here is the call graph for this function:

subroutine Jacob::j_trans ( integer,intent(in)  ir,
integer,dimension(3),intent(in)  irg1,
integer,dimension(3),intent(in)  irg2,
integer,dimension(4),intent(in)  iEul1,
integer,dimension(4),intent(in)  iEul2,
REAL(8),dimension(3),intent(in)  pt1,
REAL(8),dimension(3),intent(in)  pt2,
REAL(8),dimension(3),intent(in)  vec1y,
REAL(8),dimension(3),intent(in)  vec1x,
REAL(8),dimension(3),intent(in)  vec2x,
REAL(8),dimension(3),intent(in)  vec2z 
)

Primitive jacobians of a translational joint between two bodies.

Parameters:
irindex of the constraint
irg1,irg2indexes of the centers of mass of the bodies.
iEul1,iEul2indexes of the Euler parameters of the bodies.
pt1point given in the first body given in the body reference frame
pt2point given in the second body given in the body reference frame
vec1y,vec1xperpendicular vectors in the first body given in the body reference frame
vec2x,vec2zperpendicular vectors in the second body given in the body reference frame

Here is the call graph for this function:

subroutine Jacob::j_transGB ( integer,intent(in)  ir,
integer,dimension(3),intent(in)  irg2,
integer,dimension(4),intent(in)  iEul2,
REAL(8),dimension(3),intent(in)  pt1,
REAL(8),dimension(3),intent(in)  pt2,
REAL(8),dimension(3),intent(in)  vec1y,
REAL(8),dimension(3),intent(in)  vec1x,
REAL(8),dimension(3),intent(in)  vec2x,
REAL(8),dimension(3),intent(in)  vec2z 
)

Primitive jacobians of a translational joint of a body attached to the ground.

Parameters:
irindex of the constraint
irg2index of the center of mass of the body
iEul2index of the Euler parameter of the body.
pt1point in the ground
pt2point in the body given in the body reference frame
vec1y,vec1xperpendicular vectors in the ground
vec2x,vec2zperpendicular vectors in the body given in the body reference frame

Here is the call graph for this function:

subroutine Jacob::j_UnitEulParam ( integer,intent(in)  ir,
integer,dimension(4),intent(in)  iEul 
)

CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC Primitive jacobian of unitary Euler parameters.

Parameters:
irindex of the constraint
iEulindexes of the Euler parameters
subroutine Jacob::Jacob_Setup ( )

Here is the call graph for this function:


Variable Documentation

REAL(8),dimension(:,:),allocatable Jacob::Fiq
REAL(8),dimension(:,:),allocatable Jacob::PROTECTED