- #1
ltkach2015
- 37
- 1
If given a position vector defined for a orthogonal curvilinear coordinate system HOW would the matrices that make up the Levi Civita 3x3x3 matrix remain the same?
"Levi Civita 3x3x3 is said to be independent of any coordinate system or metric tensor"(https://en.wikipedia.org/wiki/Levi-Civita_symbol)Position Vector in a cartesian coordinate system
R = [x;y;z] = x*i + y*j + z*k = x*[1;0;0] + y*[0;1;0] + z*[0;0;1]
Cartesian Unit Vectors
i = [1;0;0], j = [0;1;0], k = [0;0;1]
Angular Velocity Vector
w = [w1;w2;w3]
Velocity Vector
V = cross(w,R) = w x R = CPM(w)*R
Cross Product Matrix (CPM) Derivation
[ 0 -w3 w2 ]
[ w3 0 -w1 ] = CPM(w)
[ -w2 w1 0 ]
And, as expected V = w x R = CPM(w)*R = [w2*z - w3*y; w3*x - w1*z; w1*y - w2*x]
--------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------------------------
Again how would the Levi Civita 3x3x3 matrix remain the same in an orthogonal curvilinear coordinate system?
For example given the position vector defined in spherical coordinates. Coordinates: r = radius, o = theta, p = phi
Should one assume the following to arrive at the matrices that form the Levi Civita symbol:
where the unit vectors are found from:
r = gradient(x) = [partial_dx/partial_dr; partial_dx/partial_do; partial_dx/partial_dp]
o = gradient(y) = [partial_dy/partial_dr; partial_dy/partial_do; partial_dy/partial_dp]
p = gradient(z) = [partial_dz/partial_dr; partial_dz/partial_do; partial_dz/partial_dp]OR Should one use the normalized unit vectors to form the matrices instead?
This spherical coordinate system is not right handed. Should one change the order from r, o, p to r, p, o?
https://math.stackexchange.com/ques...lculating-dot-and-cross-products-in-spherical
"Levi Civita 3x3x3 is said to be independent of any coordinate system or metric tensor"(https://en.wikipedia.org/wiki/Levi-Civita_symbol)Position Vector in a cartesian coordinate system
R = [x;y;z] = x*i + y*j + z*k = x*[1;0;0] + y*[0;1;0] + z*[0;0;1]
Cartesian Unit Vectors
i = [1;0;0], j = [0;1;0], k = [0;0;1]
Angular Velocity Vector
w = [w1;w2;w3]
Velocity Vector
V = cross(w,R) = w x R = CPM(w)*R
Cross Product Matrix (CPM) Derivation
Matrices that make up each 'page' of the 3x3x3 alternating tensor/symbol/Levi-Civita symbol
I = j*transpose(k) - k*transpose(j) = [0 0 0; 0 0 1; 0 -1 0]
J = -(i*transpose(k) - k*transpose(i)) = [0 0 -1; 0 0 0; 1 0 0]
K = i*transpose(j) - j*transpose(i) = [0 1 0; -1 0 0; 0 0 0]
I = j*transpose(k) - k*transpose(j) = [0 0 0; 0 0 1; 0 -1 0]
J = -(i*transpose(k) - k*transpose(i)) = [0 0 -1; 0 0 0; 1 0 0]
K = i*transpose(j) - j*transpose(i) = [0 1 0; -1 0 0; 0 0 0]
LeviCivita here is a 3x3x3 matrix
LeviCivita(all rows, all columns, page1) = I
LeviCivita(all rows, all columns, page2) = J
LeviCivita(all rows, all columns, page3) = K
LeviCivita(all rows, all columns, page1) = I
LeviCivita(all rows, all columns, page2) = J
LeviCivita(all rows, all columns, page3) = K
CPM = transpose(w)*LeviCivita
= [transpose(w)*LeviCivita(all rows, all columns, page1) ; transpose(w)*LeviCivita(all rows, all columns, page2); ...transpose(w)*LeviCivita(all rows, all columns, page3) ]
= [transpose(w)*I ; transpose(w)*J ; transpose(w)*K ]
= [transpose(w)*LeviCivita(all rows, all columns, page1) ; transpose(w)*LeviCivita(all rows, all columns, page2); ...transpose(w)*LeviCivita(all rows, all columns, page3) ]
= [transpose(w)*I ; transpose(w)*J ; transpose(w)*K ]
[ 0 -w3 w2 ]
[ w3 0 -w1 ] = CPM(w)
[ -w2 w1 0 ]
And, as expected V = w x R = CPM(w)*R = [w2*z - w3*y; w3*x - w1*z; w1*y - w2*x]
--------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------------------------
Again how would the Levi Civita 3x3x3 matrix remain the same in an orthogonal curvilinear coordinate system?
For example given the position vector defined in spherical coordinates. Coordinates: r = radius, o = theta, p = phi
R = [r*cos(o)*sin(p); r*sin(o)*sin(p); r*cos(p)] = r*normalized_r
normalized_r is the normalized unit vector for the r direction
normalized_r is the normalized unit vector for the r direction
Should one assume the following to arrive at the matrices that form the Levi Civita symbol:
r = o*transpose(p) - o*transpose(p)
o = -(r*transpose(p) - p*transpose(r))
p = r*transpose(o) - o*transpose(r)
o = -(r*transpose(p) - p*transpose(r))
p = r*transpose(o) - o*transpose(r)
where the unit vectors are found from:
r = gradient(x) = [partial_dx/partial_dr; partial_dx/partial_do; partial_dx/partial_dp]
o = gradient(y) = [partial_dy/partial_dr; partial_dy/partial_do; partial_dy/partial_dp]
p = gradient(z) = [partial_dz/partial_dr; partial_dz/partial_do; partial_dz/partial_dp]OR Should one use the normalized unit vectors to form the matrices instead?
r = normalized_o*transpose(normalized_p) - normalized_o*transpose(normalized_o)
o = -(normalized_r*transpose(normalized_p) - normalized_p*transpose(normalized_r))
p = normalized_r*transpose(normalized_o) - normalized_o*transpose(normalized_r)
None of these resulted in the matrices that comprised the Levi Civita 3x3x3 matrix.o = -(normalized_r*transpose(normalized_p) - normalized_p*transpose(normalized_r))
p = normalized_r*transpose(normalized_o) - normalized_o*transpose(normalized_r)
This spherical coordinate system is not right handed. Should one change the order from r, o, p to r, p, o?
https://math.stackexchange.com/ques...lculating-dot-and-cross-products-in-spherical
Last edited: