Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Vector projection in non-orthogonal coordinates

  1. Jun 29, 2010 #1
    Suppose I had a plane and for whatever reason, I chose two non-orthogonal vectors in R3 to define that plane (they define a basis for the plane?). Suppose I have another vector in that plane. How do I find the (contravariant?) coordinates of another arbitrary vector in that plane? All I want to do is decompose the vector along my vectors defining that plane s1 and s2, but simply dotting component-wise by saying

    v = dot(s1, v) * s1_vec + dot(s2,v) * s2_vec

    Doesn't look right geometrically because it maps the unknown vector V onto the basis vectors in Euclidian sense, instead of a curvilinear sense.

    Is the solution to this to use the metric tensor defined by Jtranspose J and use that to replace the Cartesian dot product?

    Thanks for any help
  2. jcsd
  3. Jun 29, 2010 #2
    I think I may have found the answer...

    You can find the (dual) contravariant basis vectors corresponding to that "s1" and "s2" set of vectors defining the plane, and then use your normal euclidian dot product to get the contravariant components of the vector I called V.

    Is that correct? Would an approach involving the metric be equivalent?
  4. Jun 29, 2010 #3
    You need to solve the linear system as_1 + bs_2 = v for a and b. Then (a,b) will be the components of v relative to the basis {s_1,s_2}.

    Another way to do this is like you think, and use instead a different inner product. This is J^t J where J is the inverse of the matrix with s_1, s_2 as its columns. With respect to the inner product (v,w) -> v^t J^t J w, the {s_1, s_2} is an orthonormal basis.
  5. Jun 30, 2010 #4
    thanks a lot.. however that linear system would have 3 equations and 2 unknowns. Is there some reason why it's guaranteed to have a unique solution?

    It also doesn't seem like you are enforcing those components to be covariant or contravariant. Are they inherently covariant or something? Is specifying contravariance or covariance the extra piece of information needed to get a unique solution? Am I just completely off here?
  6. Jun 30, 2010 #5
    Regarding your first question: it will have a solution since the vector is assumed to lie on the plane spanned by s_1 and s_2 (if you took a vector that wasn't on the plane then the equation wouldn't have a solution-- the system would be inconsistent). This solution must be unique since s_1 and s_2 are linearly independent: for if there are two solutions a,b and a',b' then we'd have as_1 + bs_2 = a's_1 + b's_2 so that (a-a')s_1 + (b-b')s_2 = 0. By linear independent you get that a = a', b = b'.

    For your second question, I'm not sure exactly what you mean. To me the covariat/contravariant distinction refers to vectors versus dual vectors (covectors). Here we're only working with vectors. Maybe you can clarify what your question is?
  7. Jul 3, 2010 #6
    My understanding is that COORDINATES of vectors ARE themselves covectors. Maybe you can clarify why I am confused but I think I see most of the reason.

    In finding scalar multiples "a" and "b" of the coordinates of vectors s1 and s2 I operate completely in Euclidian space and am never really defining a non-orthogonal coordinate system to begin with, but simply operating in R3.

    However, could you explain why you need to utilize the inverse metric, and why the Jacobian is defined with s1 and s2 in its columns? I may be mistaken but it seems like the inverse metric is exactly a calculation of the dual basis to these two vectors, such that afterwards you can use the general idea of dotting a vector with this new inner product to extract its (contravariant) component.
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook