ode - Онлайн в Хмарі

Це командна ода, яку можна запустити в постачальнику безкоштовного хостингу OnWorks за допомогою однієї з наших численних безкоштовних робочих станцій, таких як Ubuntu Online, Fedora Online, онлайн-емулятор Windows або онлайн-емулятор MAC OS.

ПРОГРАМА:

ІМ'Я


ода - чисельний розв'язок звичайних диференціальних рівнянь

СИНТАКСИС


ода [ опції ] [ файл ]

ОПИС


ода є інструментом, який розв’язує за допомогою чисельного інтегрування задачу на початкове значення для a
задана система звичайних диференціальних рівнянь першого порядку. Три різні числові
Доступні схеми інтеграції: Runge-Kutta-Fehlberg (за замовчуванням), Adams-Moulton і
Ейлер. Схеми Адамса-Моултона і Рунге-Кутта доступні з адаптивним розміром кроку.

Операція ода визначається програмою, написаною мовою її введення. The
Програма - це просто список виразів для похідних змінних
інтегрований разом з деякими контрольними операторами. Деякі приклади наведено в
ПРИКЛАДИ .

ода зчитує програму із зазначеного файлу або зі стандартного введення, якщо ім’я файлу немає
дано. Якщо читати зі стандартного введення, ода припинить читання та вийде, коли побачить a
окремої точки на рядку.

На кожному кроці часу записуються значення змінних, зазначених у програмі
стандартний вихід. Таким чином, буде створена таблиця значень, у кожному стовпці якої буде показано значення
еволюція змінної. Якщо є лише два стовпці, вихід можна передати
графік(1) або подібну програму побудови.

ВАРІАНТИ


вхід Опції
-f файл
--вхідний файл файл
Прочитати введення з файл перед читанням зі стандартного введення. Цей варіант робить це
можлива робота в інтерактивному режимі, після прочитання фрагмента програми, що визначає
система диференціальних рівнянь.

Вихід Опції
-p прец
--точність прец
Під час друку числових результатів використовуйте прец значущі цифри (за замовчуванням 6).
Якщо вказано цю опцію, формат друку буде науковою нотацією.

-t
-- назва
Надрукуйте рядок заголовка у верхній частині виводу, назвавши змінні в кожному стовпці.
Якщо вказано цю опцію, формат друку буде науковою нотацією.

інтеграцією Схема Опції
Наступні параметри визначають схему чисельного інтегрування. Тільки один із трьох
основні варіанти -R, -A, -E може бути вказано. За замовчуванням є -R (Рунге-Кутта-Фельберг).

-R [розмір кроку]
--runge-kutta [розмір кроку]
Використовуйте алгоритм Рунге-Кутта-Фельберга п'ятого порядку з адаптивним розміром кроку, якщо
вказано постійний розмір кроку. Коли вказано постійний розмір кроку і немає
запитується аналіз помилок, то класична схема Рунге-Кутта четвертого порядку
використаний

-A [розмір кроку]
--Адамс-Моултон [розмір кроку]
Використовуйте схему Адамса-Моултона-предиктор-коректор четвертого порядку з адаптивною
розмір кроку, якщо не постійний розмір кроку, кроковий розмір, вказано. The
Алгоритм Рунге-Кутта-Фельберга використовується для подолання "поганих" точок (якщо такі є).

-E [розмір кроку]
-- Ейлер [розмір кроку]
Використовуйте "швидку і брудну" схему Ейлера з постійним кроком. Значення за замовчуванням
of кроковий розмір становить 0.1. Не рекомендується для серйозних застосувань.

Параметри, пов’язані з помилкою -r та -e (див. нижче) не можна використовувати, якщо -E вказано.

-h hmin [hmax]
--обмежений розміром кроку hmin [hmax]
Використовуйте нижню межу hmin на щаблі. Числова схема не дозволить
кроки нижче hmin. За замовчуванням дозволяється зменшувати розмір кроку до
ліміт машини, тобто мінімальне ненульове число з плаваючою комою з подвійною точністю.

Необов’язковий аргумент hмакс, якщо включено, визначає максимальне значення для
кроковий розмір. Це корисно для запобігання швидкому пропуску числової процедури
над цікавим регіоном.

помилка Кордон Опції
-r rмакс [rmin]
--з відносними помилками rмакс [rmin]
Команда -r параметр встановлює верхню межу відносної однокрокової помилки. Якщо -r
Якщо використовується опція, відносна однокрокова помилка в будь-якій залежній змінній ніколи не буде
перевищувати rмакс (за замовчуванням для якого є 10^-9). Якщо це має статися, рішення
буде скасовано, і буде надруковано повідомлення про помилку. Якщо крок не є
постійна, розмір кроку буде зменшуватися "адаптивно", так що верхня межа буде продовжуватися
однокрокова помилка не порушена. Таким чином, вибираючи меншу верхню межу для
однокрокова помилка призведе до вибору менших розмірів кроків. Нижня межа rmin
за бажанням можна вказати, щоб запропонувати, коли слід збільшити розмір кроку (
за замовчуванням для rmin is rмакс/ 1000).

-e емакс [емін]
--з обмеженою абсолютною помилкою емакс [емін]
Як і в -r, але обмежує абсолютну, а не відносну однокрокову помилку.

-s
--suppress-error-bound
Придушити стелю на одноетапну похибку, що дозволяє ода продовжувати, навіть якщо це
перевищена стеля. Це може призвести до великих чисельних помилок.

Інформаційний Опції
--допомога Надрукуйте список параметрів командного рядка та вийдіть.

-- версія
Надрукуйте номер версії ода і пакет утиліт для малювання та вийдіть.

ДІАГНОСТИКА


Здебільшого все зрозуміло. Найбільшим винятком є ​​`синтаксична помилка', тобто є a
граматична помилка. Повідомлення про мовні помилки мають форму

ода: nnn: повідомлення...

де `nnn' - номер рядка введення, що містить помилку. Якщо -f опція
Використовується фраза "(файл)" слідує за `nnn' для помилок, що виникають у файлі.
Згодом, коли ода починає зчитувати стандартний вхід, номери рядків починаються спочатку з 1.

Не докладається жодних зусиль для успішного відновлення після синтаксичних помилок у введених даних. однак,
для повторної синхронізації докладено незначних зусиль, тому за одне сканування можна знайти більше однієї помилки.

Помилки під час виконання викликають повідомлення з описом проблеми, і рішення відкидається.

ПРИКЛАДИ


Програма

y' = y
y = 1
друк t, y
крок 0, 1

розв’язує початкову задачу, розв’язок якої y=e^t. Коли ода запускає цю програму, it
запише два стовпці чисел у стандартний вихід. У кожному рядку буде показано значення
незалежна змінна t, і змінна y, Як і t змінюється від 0 до 1.

Більш витонченим прикладом буде

синус = косинус
косинус = -синус
синус = 0
косинус = 1
друк t, синус
крок 0, 2*PI

Ця програма розв’язує задачу на початкове значення для системи двох диференціальних рівнянь.
Виявляється, що початкова задача визначає функції синуса і косинуса. Програма
крокує систему протягом повного періоду.

AUTHORS


ода написав Ніколас Б. Туфіляро (nbt@reed.edu), і трохи покращений Робертом
С. Майєр (rsm@math.arizona.edu), щоб об'єднати його з утилітами створення графіків GNU.

Використовуйте оди онлайн за допомогою сервісів onworks.net



Найновіші онлайн-програми для Linux і Windows