Решение Maple ODE, графика не завершена. Почему?

Итак, мы пытаемся решить простую ОДУ. Мы используем текст book (предупреждение - русский). Это код, представленный в качестве примера в книге (стр. 18):

> with(DEtools); with(plots);
> eq1 := diff(x(t), t) = y(t); eq2 := diff(y(t), t) = -sin(x(t));

> init := [[x(0) = 1, y(0) = 0], [x(0) = 0, y(0) = 2]];
> DEplot([eq1, eq2], [x, y], t = 0 .. 110, x = -2*Pi .. 2*Pi, init, scene = [x, y], stepsize = 0.5e-1, obsrange = true, color = black, linecolour = black, arrows = 'MEDIUM')

Этот код должен рисовать:введите здесь описание изображения

Но для меня клен выводит это:введите здесь описание изображения

1) Почему он решает функцию только на один квартал?

2) Как решить, чтобы было как в книге?


person Rella    schedule 13.05.2011    source источник


Ответы (1)


Мне не кажется, что что-то не так с сюжетом, который вы показываете. Что меня больше удивляет, так это сюжет, который дает книга, согласно тому, что вы вставили выше. Подумайте о своих начальных условиях. Первый из них [x (0) = 1, y (0) = 0], который начинается в точке (1,0) и перемещается вперед во времени на 110 приращений (согласно предоставленному вами коду). Это явно внутренний круг.

Однако ваш второй набор начальных условий, [x (0) = 0, y (0) = 2], кажется, правильно начинается там, где он должен (верхняя часть графика в точке (0,2)), а затем он двигайтесь вдоль линий поля, чтобы, как мне кажется, иметь примерно ту же длину дуги, что и меньший внутренний участок. Судя по линиям поля, в этом больше смысла. Одна проблема может быть чувствительна к числовым параметрам на пике вокруг точки (пи, 0). Если он не доводит значение y до нуля в машинном эпсилоне, то следующая точка, к которой он переместится, будет подниматься обратно в верхний правый угол, как показывает ваш график.

Вы пробовали играть с немного другими начальными условиями и временными приращениями? Попробуйте начать с точки (-pi,0) и продолжайте намного дольше, скажем, t=0..300, и посмотрите, что произойдет. Иногда в книгах, подобных этой, сюжет, который они хотят показать, не совсем точно генерируется из кода, который они вам дают, и они не упоминают об этом.

person ely    schedule 26.05.2011
comment
Хорошая мысль. Также рассмотрите IC, такие как [x (0) = 0, y (0) = 2-0,001] и [x (0) = 0, y (0) = 2-0,000001] и т. д. Вы также можете посмотреть на сцены [t ,x] или [t,y] и посмотрите, что произойдет при небольших вариациях этой IC. - person acer; 27.05.2011