Семейство усеченных карт палаткиC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Семейство усеченных карт палатки

Сообщение Anonymous »

Я пытаюсь изучить поведение семейства карт t_h: [0,1]-> [0,1] определено T_H (x) = min (H, 1-2 | X-1/2 |). Я наткнулся на семью в конце этой статьи о теореме Шарковского, дающего доказательство «резкости» теоремы. h (m): = min (maxo | o period-m orbit of t_1) дает первое событие карты с некоторым периодом M в семье. Я не мог найти каких -либо вычислений значений h (n), поэтому я написал программу, но она дико неэффективна.
Потребуется несколько часов, чтобы вычислять 25, а скорость роста того времени больше, чем экспоненциально, поэтому я не буду рисковать, не зафиксируя его. Ниже: я написал рациональный класс, потому что мне нужно было справиться с точными обоснованиями и не мог признать ошибки усечения; Кэш - это не то, что я на самом деле знаю, это происходит от внимания CHATGPT об оптимизации программы; Pert1 вычисляет точки периода n, так как их легко получить.#include
#include
#include
#include
#include
#include
#include
#include

// ===================
// Rational type
// ===================
struct Rational {
long long num;
long long denom;

Rational(long long n = 0, long long d = 1) {
if (d == 0) throw std::runtime_error("Zero denominator");
if (d < 0) { n = -n; d = -d; }
long long g = std::gcd(n,d);
num = n/g;
denom = d/g;
}

Rational operator+(const Rational& r) const {
return Rational(num*r.denom + r.num*denom, denom*r.denom);
}
Rational operator-(const Rational& r) const {
return Rational(num*r.denom - r.num*denom, denom*r.denom);
}
Rational operator*(const Rational& r) const {
return Rational(num*r.num, denom*r.denom);
}
Rational operator/(const Rational& r) const {
return Rational(num*r.denom, denom*r.num);
}

bool operator

Подробнее здесь: https://stackoverflow.com/questions/796 ... -tent-maps
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»