Part 1 - partial derivatives

The series' table of contents

As I mentioned in the introduction, I assume that the reader knows what a derivative of a function is. It is a good foundation, but to get our hands wet in relativity, we need to expand that concept a bit. Let's then get to know the partial derivative. What is it?

Let's remember the ordinary derivatives first. We denote a derivative of a function f(x) as f'(x) or \frac{df}{dx}. It means, basically, how fast the value of the function changes while we change the argument x. For example, when f(x) = x^2, then \frac{df}{dx} = 2x.

But what if the function depends on more than one variable? Like if we have a function f(x,y) = x^2 + y^2 that assigns to each point of the plane the square of its distance from the origin. How do we even define the derivative of such a function?


New feature in the Black Hole Simulator

Today I added a new feature to the simulator, as suggested by Rexerex. It is an indicator of the time that passed infinitely far from the black hole. Thanks to it you can watch how the flow of time changes depending of the proximity of the black hole and the velocity of the ship.

You can find a more detailed description of the phenomenon at the project site.

Development of the site

The website begins to be mature enough to be shown to someone, so if you are reading this, apparently I already did that :)

Apart from two articles about the project concerning procedural generation of a universe, I added a list of my projects and started writing their descriptions. As of now I described the Black Hole Simulator and I'm considering adding a part with some maths (comments about that will be welcome). I will add descriptions of the remaining projects during the next few days.

Generating the structure of the universe

The structure of space

When creating a universe, you have to begin somewhere. A good starting point is to define its shape.

The most convenient and probably the most obvious shape is a cube. Each of the three coordinates is then a number from the same range and it is very easy to make it so that there are no boundaries - it is enough to add a condition that leaving the cube on one side is equivalent to entering it on the other side. It is similar to the well-known Snake game, where the snake leaving the screen on the right returned from the left - just in three dimensions.

So we have a cubic space made of points described by three numbers: x,\; y,\; z\; \in (a,b). A question arises: what data type will be best for representing the coordinates of a point? The answer requires us to check the size of the numbers involved first.

The Universe Project

The project, which I temporarily call "Universe" (a better name would be nice, but it isn't urgent), aims to create an interactive universe in a realistic scale - that is, containing billions of galaxies, consisting of billions of stars themselves, some of which have planets, some being parts of multiple-star systems etc.

The inspiration comes from a few sources:

  • Space Engine - a program which lets you travel through a realistic universe
  • Minecraft - a game creating almost unlimited possibilities for building and interacting with the world
  • Wurm Online - a game similar to Minecraft in some aspects, also creating great possibilities of shaping the world

In short - the purpose would be to achieve interactiveness similar to that of Minecraft or Wurm, but in a universe the size of Space Engine.

Of course, this is a huge endeavour, so the project will probably take years, if I manage to finish it at all. Thus, I'm going to make small steps forward, until it takes some interesting shape sometime in the future, and describe the progress here, in the category "The Universe Project".