How to rotate a 3D complex vector?

In summary, the conversation discusses the rotation of a 3D complex vector, with known components k1, k2, and k3, to a new vector t=[1 0 0]. The mathematical expression of the rotation matrix is unknown, and the difference between rotations in real and complex domains is questioned. The suggestion is made to use a 'axis-angle' formulation and calculate a matrix with the properties R*R^T = I, R^T = R^(-1), and |R| = 1. The information given for the rotation includes the known vector k, a 2x2 complex matrix S, and a set of basis matrices A. The linear transformation U*k^T= t^T is used,
  • #1
LingliRS
5
0
Hello,

I have a 3D complex vector k=[k1,k2,k3], and k1, k2, k3 are complex numbers respectively. Now, I want to rotate k to a new vector t=[1 0 0]. However, I do not know the mathematical expression of rotation matrix. What is the difference between rotation in real domain and rotation in complex domain?

Any suggestion would be wonderful. Many thanks.
 
Mathematics news on Phys.org
  • #2
LingliRS said:
Hello,

I have a 3D complex vector k=[k1,k2,k3], and k1, k2, k3 are complex numbers respectively. Now, I want to rotate k to a new vector t=[1 0 0]. However, I do not know the mathematical expression of rotation matrix. What is the difference between rotation in real domain and rotation in complex domain?

Any suggestion would be wonderful. Many thanks.

Hey LingliRS and welcome to the forums.

If you just want to rotate this vector like a normal vector in R^n for appropriate n, then just treat this as a six-dimensional vector that needs to be rotated.

In terms of actually 'rotating' the vector, there is no difference in terms of the geometric intuition: instead of it being a three-dimensional vector, it's a six-dimensional vector with three independent real components, and three independent complex components.

For six-dimensions, the best way way that I can think of is to use a kind of 'axis-angle' formulation by finding the vector you want to rotate around and then supplying an appropriate angle. After this, you can calculate a matrix and apply this matrix (since all rotations are linear transformations) and check that the matrix has the property that R*R^T = I and that R^T = R^(-1) and that |R| = 1 for a counter-clockwise oriented rotation (I think it's negative for a clockwise rotation). Either way the magnitude of the rotation matrix will always be 1.

Note that for high-dimensional spaces, you will need to use geometric algebra and the wedge product, which means you supply n-1 vectors to get the wedge product of those for an n-dimensional vector.

What information do you have for the rotation? Do you have a rotation axis for each complex number? Do you have angle information like Euler angles?
 
  • #3
chiro said:
Hey LingliRS and welcome to the forums.

What information do you have for the rotation? Do you have a rotation axis for each complex number? Do you have angle information like Euler angles?

Thank you for your reply!
I just know the vectors rotated before and after, and I do not know the angle information.
The known vector k is defined in k=Trace(A),Trace()is the sum of the diagonal elements of the matrix inside. S is 2*2 complex matrix, given by S=[a,b;b*,c], and A is a complete set of 2*2 basis matrices under a hermitian inner product. A is given by A = {[1,0;0,1], [1,0;0,-1], [0,1;1,0], [0,-i;i,0]}.

These are the known information of k. The linear transformation is U*k^T= t^T, and I want to achieve the mathematical expression of U.
I hope that I do not make myself confused.
Thank you!
 
  • #4
LingliRS said:
Thank you for your reply!
I just know the vectors rotated before and after, and I do not know the angle information.
The known vector k is defined in k=Trace(A),Trace()is the sum of the diagonal elements of the matrix inside. S is 2*2 complex matrix, given by S=[a,b;b*,c], and A is a complete set of 2*2 basis matrices under a hermitian inner product. A is given by A = {[1,0;0,1], [1,0;0,-1], [0,1;1,0], [0,-i;i,0]}.

These are the known information of k. The linear transformation is U*k^T= t^T, and I want to achieve the mathematical expression of U.
I hope that I do not make myself confused.
Thank you!


No this is ok, I understand what you have given.

The angle will be given by the interior (or inner or scalar) product between the vectors. In this particular case since all components are completely orthogonal to each other, then we can use the standard inner product in R^8.

Just for your future knowledge and endeavors, we will always use the cartesian basis if and only if all elements are independent of each other. If all elements are completely independent, then they are orthogonal and because of this, we can describe them in a cartesian type system.

We can't do this however when there is dependency between the two variables which translate into a dependency occurring between the basis vectors.

If you had for example say a complex number that followed the constraint |z| = 1 then you would get a geometry that looks like the circle and not a normal (x,y) co-ordinate system. This is the quick mental check that you need to use if you have to figure out whether to use a normal R^n system, or whether you can't use a normal R^n system.

I'll let you calculate the inner product first and then explain how to get the axis of rotation. (Hint convert your system to eight-dimensions and then figure out what you're two vectors are as eight-dimensional vectors and take the inner product of those vectors using the definition for a cartesian system in eight dimensions).
 
  • #5
chiro said:
No this is ok, I understand what you have given.

I'll let you calculate the inner product first and then explain how to get the axis of rotation. (Hint convert your system to eight-dimensions and then figure out what you're two vectors are as eight-dimensional vectors and take the inner product of those vectors using the definition for a cartesian system in eight dimensions).

Chiro, thank you for your patient and time.

I do not understand how to convert the system to eight-dimensions now. The eight-dimensions vector is not made up by four independent real components, and four independent complex components simply. And I do not understand the relationship between the group set and cartesian system.

In addition, if I do not change the systems, cloud I use the rotation matrix composed by two rotation angles(theta\tao) and one phase angle(phi), given by [1, 0, 0; 0, cos(2*phi), sin(2*phi); 0, -sin(2*phi), cos(2*phi)]*[cos(2*theta), 0, j*sin(2*theta); 0, 1, 0; j*sin(2*theta), 0, cos(2*theta)]*[cos(2*tao), -j*sin(2*tao), 0; -j*sin(2*tao), cos(2*tao), 0; 0, 0, 1]?

Thank you!
 
  • #6
LingliRS said:
Chiro, thank you for your patient and time.

I do not understand how to convert the system to eight-dimensions now. The eight-dimensions vector is not made up by four independent real components, and four independent complex components simply. And I do not understand the relationship between the group set and cartesian system.

In addition, if I do not change the systems, cloud I use the rotation matrix composed by two rotation angles(theta\tao) and one phase angle(phi), given by [1, 0, 0; 0, cos(2*phi), sin(2*phi); 0, -sin(2*phi), cos(2*phi)]*[cos(2*theta), 0, j*sin(2*theta); 0, 1, 0; j*sin(2*theta), 0, cos(2*theta)]*[cos(2*tao), -j*sin(2*tao), 0; -j*sin(2*tao), cos(2*tao), 0; 0, 0, 1]?

Thank you!

It looks like you have changed your question (from your initial post) to have 3 complex numbers instead of four.

Again if all complex numbers are independent and each complex number is independent from the real part, then this is just a vector in R^n where n = 2 times the number of complex components (which for 3 numbers is six). To understand this, read the previous reply above about orthogonality and what that means for using R^n systems.

So following this if you have the following two vectors:

[a0,a1,a2,a3,4,a5] and [b0,b1,b2,b3,b4,b5] where (a0,a1) = k1, (a2,a3) = k2, (a4,a5) = k3 and the b's represent your vector that you 'rotating to' (if its t=[1,0,0] then we have [1,0,0,0,0,0] for our b vector) then the inner product under R^n for n=6 is given by:

<a,b> = a0b0 + a1b1 + a2b2 + a3b3 + a4b4 + a5b5 + a6b6 for a given a and b vector.
 
  • #7
chiro said:
It looks like you have changed your question (from your initial post) to have 3 complex numbers instead of four.

Again if all complex numbers are independent and each complex number is independent from the real part, then this is just a vector in R^n where n = 2 times the number of complex components (which for 3 numbers is six). To understand this, read the previous reply above about orthogonality and what that means for using R^n systems.

In k=Trace(A), S=[a, b; c, d], and b = c, so we have a 3D vector. I am sorry to have made you confused.
I did not understand the orthogonality for using R^n system at first. The elements in vector k are not completely orthogonal to each other. Their correlation coefficients are not zero. I think they can not be described in cartesian type system. I'll try other method performed in C6.
Thank you!
 

1. How do I rotate a 3D complex vector?

To rotate a 3D complex vector, you can use a rotation matrix. This matrix is a mathematical tool that allows you to rotate a vector in three-dimensional space. You will need to know the angle of rotation and the axis of rotation to use this method.

2. What is the difference between a 2D and 3D vector rotation?

The main difference between a 2D and 3D vector rotation is the number of dimensions involved. In a 2D vector rotation, the vector is rotated around a single axis, while in a 3D vector rotation, the vector is rotated around a combination of three axes.

3. Can I use Euler angles to rotate a 3D complex vector?

Yes, you can use Euler angles to rotate a 3D complex vector. Euler angles are a set of three angles that describe the orientation of a rigid body in three-dimensional space. However, be cautious when using Euler angles as they are prone to gimbal lock, which can lead to incorrect rotations.

4. How do I calculate the new coordinates after rotating a 3D complex vector?

To calculate the new coordinates after rotating a 3D complex vector, you can use the rotation matrix method or the quaternion method. Both methods involve using mathematical equations to transform the original vector coordinates into the new rotated coordinates.

5. Is there a way to rotate a 3D complex vector without using matrices?

Yes, you can use quaternions to rotate a 3D complex vector without using matrices. Quaternions are a mathematical tool that represents rotations in 3D space as a four-dimensional vector. They offer advantages over rotation matrices, such as avoiding gimbal lock and providing smoother rotations.

Similar threads

Replies
2
Views
1K
Replies
8
Views
1K
Replies
9
Views
1K
Replies
3
Views
2K
  • Programming and Computer Science
Replies
15
Views
2K
Replies
4
Views
923
Replies
24
Views
2K
Replies
2
Views
1K
  • General Math
Replies
3
Views
2K
Back
Top