Package org.robwork.sdurw
Class Jacobian
- java.lang.Object
-
- org.robwork.sdurw.Jacobian
-
public class Jacobian extends java.lang.Object
-
-
Constructor Summary
Constructors Constructor Description Jacobian(long n)
Creates an empty 6\times n (uninitialized) Jacobian matrix
Jacobian(long cPtr, boolean cMemoryOwn)
Jacobian(long m, long n)
Creates an empty m\times n (uninitialized) Jacobian matrix
Jacobian(Rotation3Dd aRb)
Creates the velocity transform jacobian
\robabcdx{a}{b}{i}{i}{\bf{J_v}}
for transforming a velocity screw from one frame of reference b to
another frame a
Jacobian(Transform3Dd aTb)
Creates the velocity transform jacobian
\robabcdx{a}{b}{a}{b}{\bf{J_v}}
for transforming both the reference frame and the velocity
reference point from one frame b to another frame a
Jacobian(Vector3Dd aPb)
Creates the velocity transform jacobian
\robabcdx{i}{i}{b}{a}{\bf{J}_v}
for transforming the reference point of a velocity screw from one
frame b to another frame a
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addPosition(Vector3Dd part, long row, long col)
add position jacobian to a specific row and column in this jacobianvoid
addRotation(Vector3Dd part, long row, long col)
add rotation jacobian to a specific row and column in this jacobianvoid
delete()
EigenMatrixXd
e()
Accessor for the internal Eigen matrix state.SWIGTYPE_p_double
elem(int i, int j)
Get an element of the jacobian.
double
get(long row, long column)
static long
getCPtr(Jacobian obj)
void
set(long row, long column, double d)
long
size1()
long
size2()
java.lang.String
toString()
static Jacobian
zero(long size1, long size2)
Construct zero initialized Jacobian.
-
-
-
Constructor Detail
-
Jacobian
public Jacobian(long cPtr, boolean cMemoryOwn)
-
Jacobian
public Jacobian(long m, long n)
Creates an empty m\times n (uninitialized) Jacobian matrix
- Parameters:
m
- [in] number of rows
n
- [in] number of columns
-
Jacobian
public Jacobian(long n)
Creates an empty 6\times n (uninitialized) Jacobian matrix
- Parameters:
n
- [in] number of columns
-
Jacobian
public Jacobian(Transform3Dd aTb)
Creates the velocity transform jacobian
\robabcdx{a}{b}{a}{b}{\bf{J_v}}
for transforming both the reference frame and the velocity
reference point from one frame b to another frame a
- Parameters:
aTb
- [in] \robabx{a}{b}{\bf{T}}
Note: \robabcdx{a}{b}{a}{b}{\bf{J_v}}
\robabcdx{a}{b}{a}{b}{\bf{J_v}} = \left[ \begin{array}{cc} \robabx{a}{b}{\mathbf{R}} S(\robabx{a}{b}{\mathbf{d}})\robabx{a}{b}{\mathbf{R}} \\ \mathbf{0}^{3x3} \robabx{a}{b}{\mathbf{R}} \end{array} \right]
Change the frame of reference from b to frame a and reference point
from frame a to frame b:
\robabx{a}{b}{\bf{J}} = \robabcdx{a}{b}{a}{b}{\bf{J}_v} \cdot \robabx{b}{a}{\bf{J}}
-
Jacobian
public Jacobian(Rotation3Dd aRb)
Creates the velocity transform jacobian
\robabcdx{a}{b}{i}{i}{\bf{J_v}}
for transforming a velocity screw from one frame of reference b to
another frame a
- Parameters:
aRb
- [in] \robabx{a}{b}{\bf{R}}
Note: \robabcdx{a}{b}{i}{i}{\bf{J}_v}
\robabcdx{a}{b}{i}{i}{\bf{J_v}} = \left[ \begin{array}{cc} \robabx{a}{b}{\mathbf{R}} \mathbf{0}^{3x3} \\ \mathbf{0}^{3x3} \robabx{a}{b}{\mathbf{R}} \end{array} \right]
Change the frame of reference from b to frame a :
\robabx{a}{c}{\bf{J}} = \robabcdx{a}{b}{c}{c}{\bf{J}_v} \cdot \robabx{b}{c}{\bf{J}}
-
Jacobian
public Jacobian(Vector3Dd aPb)
Creates the velocity transform jacobian
\robabcdx{i}{i}{b}{a}{\bf{J}_v}
for transforming the reference point of a velocity screw from one
frame b to another frame a
- Parameters:
aPb
- [in] \robabx{a}{b}{\bf{P}}
Note: \robabcdx{i}{i}{b}{a}{\bf{J}_v}
\robabcdx{i}{i}{b}{a}{\bf{J}_v} = \left[ \begin{array}{cc} \bf{I}^{3x3} S(\robabx{a}{b}{\bf{P}}) \\ \bf{0}^{3x3} \bf{I}^{3x3} \end{array} \right]
transforming the reference point of a Jacobian from
frame c to frame d :
\robabx{a}{d}{\mathbf{J}} = \robabcdx{a}{a}{c}{d}{\mathbf{J_v}} \cdot \robabx{a}{c}{\mathbf{J}}
-
-
Method Detail
-
getCPtr
public static long getCPtr(Jacobian obj)
-
delete
public void delete()
-
size1
public long size1()
-
size2
public long size2()
-
zero
public static Jacobian zero(long size1, long size2)
Construct zero initialized Jacobian.- Parameters:
size1
- [in] number of rows.size2
- [in] number of columns.- Returns:
- zero-initialized jacobian.
-
e
public EigenMatrixXd e()
Accessor for the internal Eigen matrix state.
-
elem
public SWIGTYPE_p_double elem(int i, int j)
Get an element of the jacobian.
- Returns:
- reference to the element.
-
addRotation
public void addRotation(Vector3Dd part, long row, long col)
add rotation jacobian to a specific row and column in this jacobian- Parameters:
part
-row
-col
-
-
addPosition
public void addPosition(Vector3Dd part, long row, long col)
add position jacobian to a specific row and column in this jacobian- Parameters:
part
-row
-col
-
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
get
public double get(long row, long column)
-
set
public void set(long row, long column, double d)
-
-