Visualiser -- класс, который визуализирует действие системы диффуров на набор точек.
В нем derivativeX и derivativeY -- функции для подсчета x' и y' соответственно.
Для визуализации используется метод, аналогичный ломаной Эйлера:
точка с координатами (x, y) переходит в точку с координатами (x + f_1(x, y) * h, y + f_2(x, y) * h).
Это происходит в методе transform. Это преобразование происходит 10 раз в секунду,
а h является достаточно маленьким, что позволяет добиться большой точности.
Кроме того, есть переменная trace. Если она true, то точки оставляют за собой след. Таким образом рисуется множество интегральных кривых, проходящих через соотвнтствующие точки.
Асимптотика работы визуализатора: O(<количество кадров> * <количество точек> * <время подсчета функции производной>)
В классе Main происходит само расплющивание кота. Кот - набор точек.
Для того чтобы расплющить его, нужна система диффуров, которая сохраняет площадь. Это значит xy = C,
откуда следует x'y + y'x = 0, то есть x'/x = -y'/y. Тогда нам подходит система
x' = x
y' = -y