я з половиною констант має задовольняти умовам на лівому краї (стартовому для прогонки) при всіх можливих значеннях констант, щоб потім знайти ці константи з умов на правому краї.
Те є в методі прогонки С.К.Годунова є проблема знаходження таких початкових значень Y (0), Y (0), Y (0), Y (0), Y * (0) векторів Y (x), Y (x), Y (x), Y (x), Y * ( x), щоб можна було почати прогонку з лівого краю x = 0, то Тобто щоб задовольнялися умови U в€™ Y (0) = u на лівому краї при будь-яких значеннях констант c, c, c, c.
Зазвичай ця трудність В«долаєтьсяВ» тим, що диференціальні рівняння записуються НЕ через функціонали, а через фізичні параметри і розглядаються самі найпростіші умови на найпростіші фізичні параметри, щоб початкові значення Y (0), Y (0), Y (0), Y (0), Y * (0) можна було вгадати. Тобто завдання зі складними крайовими умовами так вирішувати не можна: наприклад, завдання з пружними умовами на краях.
Нижче пропонується формула для початку обчислень методом прогонки С.К.Годунова.
Виконаємо порядкове ортонормірованіе матричного рівняння крайових умов на лівому краї:
U в€™ Y (0) = u,
де матриця U прямокутна і горизонтальна розмірності 4х8.
У результаті отримаємо еквівалентну рівняння крайових умов на лівому краї, але вже з прямокутною горизонтальної матрицею U розмірності 4х8, у якої будуть 4 ортонормированного рядки:
U в€™ Y (0) = u,
де в результаті ортонормірованія вектор u перетворений у вектор u.
Як виконувати порядкове ортонормірованіе систем лінійних алгебраїчних рівнянь можна переглянути в [Березін, Жидков].
Доповнимо прямокутну горизонтальну матрицю U до квадратної невиродженої матриці W:
W =,
де матриця М розмірності 4х8 повинна добудовувати матрицю U до невиродженої квадратної матриці W розмірності 8х8.
У Як рядків матриці М можна взяти ті крайові умови, тобто вираження тих фізичних параметрів, які не входять в параметри лівого краю або лінійно незалежні з ними. Це цілком можливо, оскільки у крайових задач стільки незалежних фізичних параметрів яка розмірність завдання, тобто в даному разі їх 8 штук і якщо 4 задані на лівому краї, то ще 4 можна взяти з правого краю.
Завершимо ортонормірованіе побудованої матриці W, тобто виконаємо порядкове ортонормірованіе і отримаємо матрицю W розмірності 8х8 з ортонормированного рядками:
W =.
Можемо записати, що
Y (0) = (М) транспонована = М.
Тоді, підставивши у формулу методу прогонки С.К.Годунова, отримаємо:
Y (0) = Y (0) в€™ з + Y * (0)
або br/>
Y (0) = М в€™ з + Y * (0). br/>
Підставами цю останню формулу в крайові умови U в€™ Y (0) = u і отримаємо:
U в€™ [М в€™ з + Y * (0)] = u. br/>
Звідси отримуємо, що на лівому краї константи c вже не на що не впливають, оскільки
U в€™ М = 0 і залишається тільки знайти Y * (0) з виразу:
U в€™ Y * (0) = u.
Але матриця U має розмірність 4х8 і її треба доповнити до квадратної невиродженої, щоб знайти вектор Y * (0) з рішення відповідної системи лінійних алгебраїчних рівнянь:
в€™ Y * (0) =,
де 0 - будь-який вектор, в тому числі вектор з нулів. p> Звідси отримуємо за допомогою зворотної матриці:
Y * (0) = в€™,
Тоді підсумкова формула для початку обчислень методом прогонки С.К.Годунова має вигляд:
Y (0) = М в€™ з + в€™. br/>
8 Другий алгоритм для початку рахунки методом прогонки С.К.Годунова
Цей алгоритм обраховано на комп'ютерах в кандидатській дисертації.
Цей алгоритм вимагає доповнення матриці крайових умов U до квадратної невиродженої:
В
Початкові значення Y (0), Y (0), Y (0), Y (0), Y * (0) знаходяться з рішення наступних систем лінійних алгебраїчних рівнянь:
в€™ Y * (0) =,
в€™ Y (0) =, де i = ,,, , br/>
де 0 - вектор з нулів розмірності 4х1. <В
9 Заміна методу чисельного інтегрування Рунге-Кутта в методі прогонки С.К.Годунова
Ця заміна формул Рунге-Кутта на формулу теорії матриць обраховано на комп'ютерах в кандидатської дисертації.
У методі С.К.Годунова як показано вище рішення шукається у вигляді:
Y (x) = Y (x) в€™ c + Y * (x).
На кожній конкретній ділянці методу прогонки С.К.Годунова між точками ортогоналізації можна замість методу Рунге-Кутта користуватися теорією матриць і виконувати розрахунок через матрицю Коші:
Y (x) = K (x-x) в€™ Y (x).
Так виконувати обчислення швидше, особливо для диференціальних рівнянь з постійними коефіцієнтами.
І аналогічно через теорію матриць можна обчислювати і вектор Y * (x) приватного рішення неоднорідної системи диференціальних рівнянь. Чи для цього вектора окремо можна використовувати метод Рунге-Кутта, тобто мо...