Home Artists Posts Import Register

Content

My week started working on the relativistic implementation of the new collision avoidance algorithm. I soon hit a problem I didn’t foresee: the new algorithm requires trying trajectories, evaluating them and accepting/rejecting them. While this functionality is super easy to implement for a classical point-like body (just do r(t) = r₀ + v₀t + a₀t²/2, v(t) = v₀ + a₀t), it turns out to be more complicated for a relativistic rigid body. I’ll make an attempt to explain this point. Forgive me if I fail…

The relativistic time-step is carried out in two phases: (phase 1) find out the smallest proper time along the principal trajectory of the body that makes all the body’s trajectories advance past the current frame time and (2) actually advance all the trajectories and compute the new Poincaré transformation matrix. (by body’s trajectories, I mean the trajectories of all of the body’s vertices) I wrote the code to do all this a long time ago and I didn’t dare to touch it much, as it is easily the most headache-causing code I wrote for this project. This time, however, there was no way around it. I had to substantially change it and implement the try-retry-accept functionality.

Truth is that - after one year of thinking intensely about relativistic motion - I fortunately can see much deeper into it than I could. Also, this area is the most tested in the codebase. Not coincidentally, I’d say!

I managed to review and improve the old code significantly. The new changes incorporate the lessons I learnt while writing the notes here, in particular the “four-vector equations” section. I also added a new section to this page. It is titled “Initial four-acceleration and proper-acceleration”. It tries to clarify the relationship between proper acceleration (the acceleration seen from the body’s reference frame) and initial four-acceleration (the one seen from an inertial observer.) I confess it wasn’t so clear to me before this week.

By the end of the week I still find myself working on a task I was planning to finish last week. That’s a bit painful, to be honest 🙁

Comments

No comments found for this post.