How do you translate back and forth between coordinate systems that use different basis vectors?
Full series: http://3b1b.co/eola
Future series like this are funded by the community, through Patreon, where supporters get early access as the series is being produced.
9:15, it's be more useful if you make it specific that the 90 rotation transformation is a transformation in OUR coordinate system but NOT Jennifer's, if it's in Jennifer's there's would be no need for all that formula at all.
7:50 You can find the inverse by turning it into a system of linear equations relating Jennifer's coordinates and ordinary coordinates and then use elimination to solve for Jennifer's coordinates. That helped me to understand easier. (Though I wonder if there's a simpler way to find where our basis vectors go in Jennifer's coordinate system?)
In our engineering course of structural dynamics, A^(-1) M A would come up incessantly and I was forced to wonder what it actually means mathematically. So much so that it affected the understanding of the subject itself. Due to lack of mathematical perspective and understanding of those tools. Looks like if I revisit that course now, it would make a lot more sense!
Is there a discussion forum specific to questions on video? i would like to understand why transformation matrix for jennifer is not same as our transformation matrix. if , to jeniffer, her basis is [0,1] and [1,0] as she is un-aware of anything else. ....wouldnt rotating her basis by 90degree require same matrix as ours. to me , it looks like the transformation matrix "in her language" is really , 'a transformation matrix for her basis...expressed in our coordinates'. is that right?
Can anyone help me our grid to Jennifer's Grid , Jennifer's Language to our language??
My understanding is that our grid has been transformed into his grid, because we know that the matrix does that by this teacher telling us
But numerically， it's his language to our language?? Thank you
At 7:22 we can rephrase the problem to be the exact same as the first one, only taking Jenny's point of view. Jenny sees the vector (3,2) in our system and wants to know what that is in her system. She now needs to describe in her system a transformation that takes her basis vectors to our basis vectors. Let's say that the earlier transformation taking our basis vectors to hers was M. Well (M)x(M^-1) = I, so the transformation that she has to do to get from her basis vectors to ours is (M^-1). She then computes (M^-1)x(3,2) and arrives at the same answer.
So, how do I deduce the LT between the two sets of basis vectors only knowing that the same vector is 3i + 2j*in one basis and (5/3)e1+ (1/3)e2 in the other? I'm stumped, because there doesn't seem to be a way to compute the unique matrix that will transform (3,2) to (5/3,1/3) if that's all we know. I wish I knew what property of LTs or general matrices that this references; maybe it's because I don't know its determinant a priori, the stretching part. We only get the transformation matrix by already knowing the details of the basis vectors in each coordinate system. It's a rotation composed with a shear ± stretching, or a shear ± etc. composed with a rotation. With any two independent vectors transformed, we could do it.
I have a doubt.
If i have a vector V in a A base, and i want to translate to B base,
first i multiply (A^-1)V to translate my vector to ij-hat base. Then i multiply by B: the
change of basis matrix is B(A^-1)
But now im studying Algebra and the matrix is: (A^-1)B
But I do have a question.
We know that A * inverse(A) = Identity Matrix
Let's say Jennifer chose a random vector [-1 2] (Please visualize this in one column) and that vector happens to land on
A= [2 -1]
So as a whole equation we have:
inverse (A) * transformation matrix * A * Jennifer's vector.
So, in the equation can we replace the multiplication of inverse(A) * A with an Identity matrix?
Linear transformed vector = identity matrix * transformation matrix * Jennifer's vector ?
What would happen if we apply this rule geometrically or what would we be actually doing?
Matrix multiplication is *not* commutative. This means that if A, B, and C are all nxn matrices, it is *not* in general true that ABC = ACB, etc. So you can't replace "inverse (A) * transformation matrix * A * Jennifer's vector" with "identity matrix * transformation matrix * Jennifer's vector". If you want a review of this, you can look at chapters 3 and 4 of the series, where linear transformations and matrix multiplication are discussed :)
The algorithm applied is quite simple when the coordinate system has only two unit vectors: i hat and j hat. However it gets more complicated with coordinate systems that have more than 3 unit vectors.
Wouldn't it be more accurate to say Jennifer has a different "starting perspective" (basis) than ours, instead of speaking a different language? The language seems to be the same (numbers, vectors, etc.), but her starting point, or "origin" from which she will express herself is different than ours (she starts her game from a different basis, foundation, fundamental starting point). In other words, she has a way of looking at things that starts out on a different platform than ours. I understand the idea of "translating languages," but I'm wondering whether seeing things from her "perspective" (point of view, vantage wise) might be more meaningful?
In linear transformation we are multiplying the vector in (i,j) domain say (x,y) with basis matrix (A) to get transformed version of (x,y). But here it is the other way, we are multiplying the already transformed vector with the basis matrix to get original vector. why it is so? shouldn't we multiply with the inverse to get the original vector? please someone clarify..:(
Until now, I've used A-1XA not knowing why even during the math class in my university. This expressions suggests take any vector into our perspective and transform with M, then change the viewpoint back to the original one. So impressive!! Thanks a lot
@3Blue1Brown @8:25 - you are describing this completely BACKWARDS! You JUST SAID that the matrix containing Jennifer's basis vectors is simply [[2,1][-1,1]]. So obviously, if I want a vector in that coordinate system, I will take X of the first column + Y of the second column of her matrix! Why are you suddenly contradicting yourself here! All your other videos are excellent, but this one is extremely confusing and damaging to my understanding. Can you please clarify? I really hope I'm wrong...
Unfortunately, I don't have much experience from that perspective. Math is my specialty. But maybe I can give it another go from 3Blue1Brown's perspective. I think I want to start with the following point: Whenever we write a vector in terms of coordinates (i.e., as an ordered list of numbers), we implicitly have an ordered basis in mind.
As an analogy, think about writing numbers in base ten vs. writing numbers in base eight. 321 in base ten is just a way of writing the number 3*10^2+2*10^1+1*10^0. Whereas 321 in base eight is just a way of writing the number 3*8^2+2*8^1+1*8^0. Even though the two symbols look the same, you are dealing with a different "basis" (powers of ten vs. powers of eight) and taking linear combinations of that.
And coordinates of a vector are basically the same thing. Seeing the vector [3,2,1], it really means
3 *a* + 2 *b* + 1 *c*
for some ordered basis *a* , *b* , *c* .
And the actual vector drawn as an arrow in space depends on what those three basis vectors are.
Usually, we use î, ĵ, and k^, which are the unit vectors pointing in the positive x-direction, positive y-direction, and positive z-direction, respectively. Just like how we normally use base ten to write integers. There's no _inherent, mathematical_ reason to use base ten. It's just convenient and something we're used to. It's the same thing for î, ĵ, and k^ vs any other set of basis vectors. There's no _inherent, mathematical_ reason to use î, ĵ, and k^ -it's just convenient and something we're used to.
So when we write a vector like [1,0], really, we're implicitly saying 1î+0ĵ.
Now, Jennifer is using a different pair of basis vectors, say ĝ and ĥ (like using base eight instead of base ten). So when she writes [1,0], she means 1ĝ+0ĥ.
If we have a matrix A with column vectors [2,1] and [-1,1], then it sends what we call [1,0] to [2,1]. And it sends what we call [0,1] to [-1,1]. But really, this just means we are sending î to 2î+1ĵ and we're sending ĵ to -1î+1ĵ. So everything is still written in our language.
Now, suppose this matrix A takes î to ĝ and ĵ to ĥ. Then this tells us that 2î+1ĵ = ĝ and -1î+1ĵ = ĥ. If we wanted to write î and ĵ in terms of ĝ and ĥ, then we would be writing in Jennifer's language. And we could solve it like a system. Take the first equation and add it to 2 times the second to get 3ĵ = ĝ+2ĥ, or ĵ = (1/3)ĝ+(2/3)ĥ. And adding the first equation to the negative of the second equation, we get 3î = ĝ-ĥ, or î = (1/3)ĝ+(-1/3)ĥ.
So now we know how to write our basis vectors (î, ĵ) in terms of Jennifer's basis vectors (ĝ, ĥ). So if Jennifer wants to send [1,0] (which is 1ĝ+0ĥ) to our first basis vector î, she needs to send it to (1/3)ĝ+(-1/3)ĥ, which is [1/3,-1/3] (written in her language), and if she wants to send [0,1] (which is 0ĝ+1ĥ) to our second basis vector ĵ, she needs to send it to (1/3)ĝ+(2/3)ĥ, which is [1/3,2/3] (written in her language).
This makes the matrix A^-1, and of course, it geometrically has to be A^-1, since it's doing the exact opposite of what A did. A was taking our basis to her basis. So A^-1 is taking her basis to our basis.
But A is written in terms of our basis vectors, since it gives a recipe in terms of _our_ basis vectors. A^-1, on the other hand, is written in terms of _her_ basis vectors, since it gives a recipe in terms of _her_ basis vectors.
So that's how we "translate" our vectors into her language.
A little bit, thanks for the effort. The Transposing honestly confused me more. As a 3D programmer, I'm used to thinking of this in terms of the camera view matrix, which (ignoring scale ), represents the INVERSE of the camera's POSITION and ROTATION in the scene. So since the camera will already have values for this, if you now want to see every object in the scene from the CAMERA's perspective, you multiply all those objects by the INVERSE of the matrix encoding the camera's rotation / translation. When I think of this intuitively in 3D it makes sense. I think it's the way he abstracts it with pure numbers that is really confusing in this video.
He's not contradicting himself. The key part of your misconception stems from what he says at around 6:45 - even though that matrix converts our grid to Jennifer's grid, numerically, it goes the opposite way for converting Jennifer's language into our language.
Here's one way to see that. If we take what we call î and transform it by that matrix, we get [2,1]^T (the ^T just changes it into a column). [2,1]^T is the actual vector that Jennifer thinks of as her first basis vector, but it's written in _our language_ being 2î+1ĵ (in terms of _our_ basis vectors). She would call this vector [1,0]^T, since it is simply her first basis vector.
Now switch perspectives and think from Jennifer's point of view. In order to get the transformation of the grid from Jennifer's grid to our grid, Jennifer has to create a matrix which has our first basis vector as a her first column, etc. So she needs a transformation that takes her first basis vector to our first basis vector and her second basis vector to our second basis vector. But this is precisely the inverse of the matrix we were talking about above.
But this inverse matrix takes [1,0]^T to [1/3, -1/3]^T. But this is [1,0]^T in _her_ language (since it is her first basis vector) to [1/3, -1/3]^T, which is _our_ first basis vector, geometrically speaking, but now it's written in terms of _her_ basis vectors.
Does that help?
Hi! I'm really interested in your videos and I couldn't stop playing these from start to end. But there's a bit confusing point about why translating process is reverse of linear transformation. I've pondered it deeply and realized it would be better to explain translating process as transforming coordinate system. Because transforming coordinate system means reverse of transforming vector in the same coordinate system.
I wouldn't use a computer to compute the inverse. The mechanical, generic computation is complex and computationally expensive, while its often possible to work out a much simpler and more efficient set of computations on paper -- thus, it often makes more sense to find the inverse matrix by hand and then program the computer to use it. At least, this is how I handled inverting the projection matrix used in 3D rendering.
It seems that new base should be perpendicular as well, so before transforming, i'd start with verifying the dot product = 0
I also think about changing the base as regular transformation, but basis vectors.
Matrix multiplication is stackable anyway! :)
The equation to calculate length (x^2 + y^2)^(1/2) (pythagoras) works only in the standard 90 degree system? I suppose yes, (correct me if i'm wrong ^^) so in order to calculate length, do we need to convert back?
This video should tell that 90 degree rotation is not a 90 degree rotation from Jen's point of view. And that what we're doing is not creating a matrix that from Jen's point of view does a 90 degree rotation. We're creating a matrix that translates space in a unknown way from Jen's point of view but from our point of view it does 90-degree rotation.
I love how when the "teacher' @5:30 asks "You've all watched chapter 3, right?" the Pi Creature to the left rolls his eyes trying to look normal with that stressed out facial expression, like "nope.." Very meticulous with these videos I love it.
We pick i-hat and j-hat as our default basis vectors similar to how we pick 10 as the default number base for our number representation.
The number "100" doesn't have any meaning until we specify its base, which is normally assumed to be 10 (the number 100 in base 10). It could be in base 2 (or the number 8 in base 10). Or any other base.
Similarly, (1,1) doesn't mean anything until we specify its basis vectors, which is normally assumed to be i and j. It could be a completely different vector with some other basis vectors.
Then, the process of converting from one basis to another is similar. We just pick the representation that works for us the best.
The confusing part in all these, though, is to settle on a default representation so we can actually describe things. We have to describe the basis vectors somehow and we are describing them in terms of i-hat and j-hat. Just like how we say a number is in base 16, we are implicitly implying that the "16" we are talking about is a number in base 10.
It's confusing, but when it clicks, everything makes sense.
Exactly. And this is also a good way to see why we would care about bases and why we require them to be linearly independent spanning sets.
If S is a spanning set, then every vector can be written as a linear combination of the vectors in S. So we can write every vector in terms of "coordinates" by S. But, the coordinates may not be unique.
If T is a linearly independent set, then every vector which can be written as a linear combination of the vectors in T has a unique representation in terms of coordinates by T. But, not every vector in your space may have coordinates by T.
So combining the two, since a basis B spans, every vector has coordinates by B, and since B is linearly independent, those coordinates are unique!
Storytime: I watched this video about 6 months ago for the first time when I stumbled across this channel and decided to watch this series (as well as most of the other ones) and I thought. that's cool, doubt I'll ever need to use it but its still cool. Until today, I'm working on a University project where we essentially have to triangulate the GPS coordinates of an object based off of compass bearings from known locations we are doing this over a small enough area that the "grid" of GPS coordinates can be considered rectangular (so the maths is still linear algebra) but sadly stuff doesn't work as nicely as with square coordinates. so after a good few minutes of thinking about how to solve this problem and, getting very frustrated, I took a 5-minute break to rest the brain and BAM!!! I remembered this video and thought "I can just change the base to a rectangular one". So here is a massive thank you for this amazing content that I watch in passing and then next thing I know. I'm thinking back to it using it in a real-world engineering problem, Keep it up dude Love the content. really wish I could support you on Patreon but.....University.
Linear transformation works in one basis system (coordinate system). A change of basis is a transformation from one coordinate system to another. They are similar in that you can use a linear transformation to define your new basis vectors. They are both the same thing, it depends on the context
6:44 This is what helped me solve the apparent "backwards" translation:
Consider Emily, who uses a (1D) grid which is 5 times larger than ours (her 1D basis vector is 5). So, all of her coordinates are 5 times smaller than "our" coordinates for the same vector.
1 * 5 = 5
vector in her language * her basis in our language = vector in our language
5 * 1/5 = 1
vector in our language * inverse of her basis (in our language) = vector in her language
That result at the end looks very similar to diagonalization of a matrix. However I can’t quite see the link. It’s all possible that I’m asking this and it comes up later but, can anyone help me figure out what diagonalization of a matrix actually means with relation to the stuff I have learnt from this video
I love you man. Rigid Body Kinematics, Control theory, Vibrations, Vehicle Dynamics, the majority of my masters boils down to this. Masters professors don't have time to teach the basics or solve fundamental doubts because of time-sensitive courses and frankly because they are basics. That's where you come in, a boon to humanity compensating for all the shitty education prior to this. Utmost respect and admiration for your intellect AND impeccable presentation skills. As soon as I start to earn, I'll make it a point to come back and donate generously. Genius!
Thanks a lot, this kind of video is the kind I understand better, the voice is very clear and precise, and repeating concepts (like repeating whose point of view we are seeing ) helps me keep on track.
The video too is top notch.
Really great job!
So the A-1MAv transforms v the same way M transforms v written in our system. What if we pretend the numerical entries of the transformation matrix A-1MA and the vector v to be in our system? Is there a visual connection between the two transformations?
Gosh I love this video, chapter 3 and 4 were so well-explained (+ I rewatched them several times because I love the math in it) that most of this felt very intuitive (which it sure wouldn't have if I had tried to power through using only textbooks. Thank youuu
Ax = v... Here I am confused of x and v. Whose is x and whose is v ? A is the transformation of basis vector to jenifer coordinates. But x is the vector that is in our coordinates and v is the resultant vector in jenifer coordinates or vice versa. Please explain
This is really helpful for me when I learn image processing now. For example, if I want to flip over an image from right to left, I found it was difficult in the past to transform the coordinates because the origin of an image is at the left upper corner and i hat points down and j hat points right. After this tutorial, now I have two ways to solve this problem. First I directly look for the transforming matrix in the image coordinate system. Second I translate the image coordinate system to x, y system and look for the transforming matrix in x, y system (this is a more natural way) and finally translate back to the image system. And I find that the first transforming matrix is the same as the composite matrix of A(-1)MA in the second way.
So I can really find the amazing power of linear algebra once I can understand its implication behind the numbers.
The miners are interested in finding a nonce which will create a hash with certain characteristics. Lastly, they have to find a random value that they included in the header, which makes the computed hash over that header a value below a particular target. In other words, they do not have to agree to change the protocol. Though there are a few gold diggers attempting to fill their pockets and certain projects that aren`t viable and shouldn`t be encouraged in any way. For users running a complete node, it is a fairly painless procedure to upgrade the software to the newest version. The process of locating a new block to extend the blockchain is known as mining. Proof-of-Work systems utilize cryptographic hashing algorithms to create the action of mining a block a complicated computation. Our software is totally incompatible with altcoins. Changes and modifications to how that it works need to be approved by consensus and every CPU gets a vote. To start with, it`s essential to realize that hardware wallet users control entirely their private keys. Whether you`re bullish or bearish on Bitcoin Gold, you ought not lose your coins as a result of careless mistakes! On the 1 hand, it may result in making a coin that solves all the pending issues. There`s no currency or digital asset named Bitcoin Core. Bitcoin Cash increases the range of transactions that may be processed per block. You could send any quantity of money, any place in the Earth, almost at no cost. You`ve made some great money already on the market, but you want more. For a wealthy individual, BTC`s price premium may be viewed as a plus. For someone without lots of money, BCH`s low price may look like a great deal for Bitcoin. If you have some concerns about the worth of Bitcoin after all forks, you need to be ready for a drop. The distinction is that not all of these suffer the chain split. The primary problem is Bitcoin imposes a hard limit on the magnitude of a block, the location where transaction information becomes stored. The end result is many straightforward wallets, called SPV wallets and very commonly found on your phone, will be quite confused about which chain is Bitcoin. In Bitcoin, the most important reason is known as the network effect.