Карта сайта

Чисельне інтегрування функції використовуючи метод Ромберга в середовищі програмування delphi

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

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

Головне вікно delphi-проекту Чисельне інтегрування методом Ромберга

Головне вікно delphi-проекту Чисельне інтегрування методом Ромберга

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

Читати повністю

Розв'язок однорідних систем лінійних рівнянь в середовищі програмування delphi

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

Втім, більш важливим є випадок наявності у однорідної системи відмінних від нуля розв'язків, які, очевидно, будуть існувати тоді, коли матриця її коефіцієнтів є виродженою (визначник дорівнює нулю) або кількість її рівнянь менша за кількості невідомих. Більш детально розглядати інформацію про однорідні системи та процес знаходження їх загального розв'язку (фундаментальної системи рішень) тут не будемо, її можна знайти перейшовши за посиланням Знаходження розв'язку однорідної системи лінійних рівнянь, а перейдемо до розгляду delphi-проекту, який реалізує даний процес.

Отже, головне вікно розглядуваного delphi-проекту практично не відрізняється від проектів, які реалізують інші чисельні методи рішення задач такого типу, лише з однією відмінністю. Виходячи з того, що проект призначений для розв'язку однорідних системи, то вказувати значення стовпця вільних членів у відповідній таблиці TStringGrid не потрібно, вона по замовчуванню заповнюється нулями.

Читати повністю

Знаходження розв'язку однорідної системи лінійних алгебраїчних рівнянь

Розглянемо однорідну систему лінійних алгебраїчних рівнянь:

або у векторно-матричній формі , де

Якщо визначник матриці коефіцієнтів  даної системи відмінний від нуля, то в силу формул Крамера система (1) має нульовий розв'язок (), і причому єдиний.

Якщо ж , то в цьому випадку система (1) має безліч розв'язків, в тому числі і ненульові. З (2) випливає, що якщо  — являється розв'язком системи (2) то , де  — довільна стала, також є розв'язком цієї системи; якщо і  — розв'язок системи (2), то сума  і  — також є розв'язком цієї системи.

Читати повністю

Чисельне інтегрування функції методом Ромберга

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

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

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

Читати повністю

Побудова мінімального кістятка за алгоритмом Борувки в середовищі програмування delphi

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

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

Читати повністю

Побудова мінімального кістяка в неорієнтованому графі використовуючи алгоритм Борувки

Алгоритм Борувки, як і алгоритм Крускала та алгоритм Прима, призначений для відшукання дерева мінімальної вартості в неорієнтованому графі. Основна ідея даного алгоритму дещо подібна до першого, тобто пошук мінімального кістяка також починається з розгляду дерев, кожне з яких складається з однієї вершин. Після чого, з допомогою ітераційного процесу, відбувається обєднання найближчих дерев і продовжується даний процес до тих пір, поки всі об'єкти не належатимуть одному дереву. Відмітимо, що характерною особливістю алгоритму Буровки є те, що на кожній такій ітерації кількість дерев скорочується мінімум в два рази.

Ілюстрація роботи алгоритму Борувки

Ілюстрація роботи алгоритму Борувки

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

Читати повністю

Обчислення довжини дуги кривої в середовищі програмування delphi

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

  1. Панель інструментів: складається з чотироьох полів типу TEdit, два з яких відповідають за значення кінців інтервалу на якому відшукуються довжина дуги, і два що залишилось, відповідають за кількість відрізків, на які розбивається інтервал та функцію, що описує криву, довжину якої необхідно обчислити; дві кнопки типу TButton одна з яких безпосередньо реалізує алгоритми відшукання довжини дуги кривої та друга — видаляє всі введені користувачем значення і готує проект до нового прикладу; один компонент типу TMemo, головним призначенням якого є вивід результату роботи програми.
  2. Область графічного представлення: містить компонент типу TChart, який відображає графік функції, тобто форму кривої, довжину якої необхідно обчислити.

Після того, як призначення кожного з елементів форми проекту відомо, провіримо його роботу на конкретному прикладі, а саме знайдемо довжину дуги кривої , яка розташована в інтервалі між та .

Читати повністю

Наступна сторінка »