fact-project / fact-tools

The fact-tools are an extension to the streams framework to analyse the data of the First G-APD Cherenkov Telescope.
http://sfb876.tu-dortmund.de/FACT/
GNU General Public License v3.0
6 stars 1 forks source link

Change coordinate system #327

Closed maxnoe closed 6 years ago

maxnoe commented 6 years ago

We rotate the coordinate system by 90 degrees counter-clockwise so that when one looks onto the camera from the telescope dish, x points right and y points up.

This is the same coordinate system used by MARS and makes it easier to plot things into the camera, as x and y fit intuition.

This is a breaking change that requires changes in all downstream software handling coordinate transformations (e.g. pyfact)

maxnoe commented 6 years ago

To check that we did not break the Coordinate transformation, I ran this version on the star pedestals we took in 20151115, you can nicely see how the by FACT-Tools calculated star positions in the camera coincide with higher values of pedvar:

aldebaran algol

kbruegge commented 6 years ago

This is a breaking change that requires changes in all downstream software handling coordinate transformations (e.g. pyfact)

Does that mean we can't analyze old data anymore? How do you propose we handle that? Can we add version information to the data files?

maxnoe commented 6 years ago

Does that mean we can't analyze old data anymore? How do you propose we handle that? Can we add version information to the data files?

With pyfact / classifier-tools versions newer than the version that incorporates this change, we would not be able to analyse old data, if we do not make the rotation optional. We could however do that with a command line switch for the tools that use it (--old-coordinate-system or --no-coord-rotation

maxnoe commented 6 years ago

I think using a more intuitive coordinate system that is the same as MARS makes up for this inconvenience.

E.g. to plot the coordinates of the stars I could just do

camera(pedvar)
plt.plot(x, y)

Instead of having to do

camera(pedvar)
plt.plot(-y, x)