/ / Як вирішити систему нелінійних одночасних рівнянь (у Matlab, Python, або Fortran) - математика, чисельні методи, нелінійні функції

Як вирішити систему нелінійних одночасних рівнянь (у Matlab, у Python або в Fortran) - математика, чисельні методи, нелінійні функції

Я дивлюся на систему нелінійних одночасних рівнянь. Дві змінні є u> 0 і b> 0. Як я можу вирішити цю проблему в Matlab, Python або Fortran? Дякую.

Нелінійні одночасні рівняння

Відповіді:

0 для відповіді № 1

Ви можете легко усунути одне з цих рівнянь, вирішивши # 1 для b. Потім використовуйте це для вирішення питання №2 для u.

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

Використовую чисельне інтегрування (5-го порядку Рунге-Кутта або щось інше) для обчислення інтеграла.


2 для відповіді № 2

Я чесно не впевнений у цьому питаннітут належить. Але рішення теоретично просте. Рівняння 1 тривіально вирішується для b як функція u. Замініть у рівняння 2, де b з'являється тільки одне місце.

Тепер ви можете використовувати кореневу систему на новомурівняння 2, розв'язуючи для значення u, що задовольняє цьому співвідношенню. З урахуванням значення u можна використовувати адаптивну числову квадратурну процедуру для інтеграції. У MATLAB це буде щось подібне до quadgk. (Не турбуйтеся про вирішувач ODE, оскільки вони дають вам більше інформації, ніж вам потрібно. Вам потрібно ТІЛЬКИ загальний інтеграл.)

Насправді, ядро ​​в цій інтеграціїпростий многочлен змінної t, а u ^ 10 факторів з інтеграла. Таким чином, обчислення першого семестру зробить інтеграцію вручну, хоча для цього потрібно буде взяти олівець і папір. Або символічний набір інструментів буде достатнім. Тут достатньо одного виклику, щоб вирішити, хоча це було б довгою лінією, і я відчуваю себе занадто лінивим, щоб її написати.

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

Дійсно, суть цієї відповіді полягає в тому, що викидання чисельного вирішувача на проблему - це ідея BAD, особливо коли інструментів, таких як символічний набір інструментів (або олівець і папір!) Достатній і доступний.