Норри Д. - Введение в метод конечных элементов (1050664), страница 33
Текст из файла (страница 33)
5одм 51 В, 4, 51 Еппые !с*о С.,(вп Н М, 1м-иагавм ге е) Ые Ь, !п Р!пце Е!вне 1 тесьпь!ее в Бгв !ига(.Ам!Уеэ (т непьещ н, н еьы с, езз), сьар(ег 10, 5 й и рга !)ю! Ргею, 1970. ш )ааесе 1. т, А сп мд сиыс !4)эски!э пп (е м* 1 1ог звепнэ1 пап рмыепп, 1 )ежа( 1. Миме мль д е кгк, 7, ма 3 337 — 344 (1973). МЕТОДЫ РЕШЕНИЯ УРАВИВНИй И ТЕХНИКА ПРОГРАММИРОВАНИЯ В случае линейной стационарной зада!н метод зовечных зле.
ментов прнволвт к системе лннейных алгебраичсскнх уравнений внда АХ = В, ()О Н где А = (ал) — матрица коэффициентов, Х= (хА — системный узловой вектор нснзвестнык н В = (8,) — заданная матркца-столбец. Задачи,иа собственные значения и двнамичссюге задачи танке приводит к линейным алгебраичсскнм уравнениям, хоти н отличным от (!О 1) Су!цсствующие способы решения свстсм линейных уравнений можно разлепить иа нряммс и нтсрацпанные В прямых методах рсшенне Х получастся неносрелствснно в ршультате одного прпмснсния вычислительной процедуры, Напротив, в итерацвон. ных методах решение задачи требует повторяющегося прнмсненнн алгоритма.
Длн начала итерационной процедуры необко. димо задать начальное прнблнженнс бешенна Прн последую. щнх итерациях получаются асе более тачныс оцснкн решения. Для проверки скодвмостн последнее полученное приближение резнения сравнивают с прсдыдушим Итерацнониый процесс заканчивается, если разность последовательных прнблкженнй становнтсв меньше заданной величины Создано много вариантов прямых и втерацноннмх мстодоя. В некоторых вариантах для уменьшения количества вычислительных операцнй н(илн) объема требуемой оамятк попользуются, напрнмер, такне свойства матрицы А, кан спмметрня, лспточпость нлп разреженность. Лучшие п известных алгоритмов запрограммпрованы для ЭВМ, н многие нч ннх являютс» стандартммми бкблнотечнымк подпрограммами. Такие программы часто называют ревателяии улазхеьеш (сйца(юп зоыегз), хотв нногда этот терман нспользуется также в качестве названия метода, на кагором осмаване программа.
В наставшей главе опнсаны наиболее важные способы рс. шення уравнений в сравнлваются нх достопнстна. Также даны пояснення но поводу выбора прогрзммы решения уравнений для той нлк иной конкретной задачн. пм ГП Мюэдн рю»«з уэ щз «хщш зрз Эамлилэвззея тю 10.1. ВЫВОР ПРОГРАММЫ РЕШЕНИЯ СИСТЕМЫ ЛИНЕЙНЫХ УРАВНЕНИЙ Прн выборе программы регпения снстемы линейных уравненнй прежде ясего нужно решить, лолжен ли быть метод прямым илн нтерзционныч. Для простых задач с небольшой матрицей коэф. фнцэентоа А обычно используются стандартные библиотечные подпрограммы.
Для более ыожных систем, требующих большого объема вычислений и значите»юной памяти, стоимость еычнсленнй становятся весьма важной, я приходятся искать и, если необхолимо, создавать процелуру минимизация стоимОсти вычислений. Наиболее важными крятернячн выбора метода являются объем вычислительных операций, трудности прогрэммнрования, память н количество обслуживающих программ, необхолимых для созлапня программы гИожет окаааться, что многие методы регпепня требуют больше оперативной памяти, чем имеется а наличии. Это побуждает ныбнрать программы, требующие дополнительных пмчнсленнй.
Обычно приходится идти на компромисс чежду колячестяом обмеаоэ с внешней па. мягью, объемом вычислений, объемом памяти, временем н стоимостью вычнсленнй. В 50-х голах вычнслительные машины .имели небольшую оператнпеую память н малую скорость записи (считывания) данных на магнитную ленту, Следовательно, прямые метолы можно биле применять только лчя простых залач.
Для более сложных задач испольаовалнсь итерационные Методы авилу небольшого объема требуечой памяти После того как существенна уэелнчклся объем оцератнвной памяти, нзпглн прнмененяе лучшие нз прямых методов. В оперативной памяти болыких современных вычислительных машин можно полностью разме. стнть матрацы коэффициентов кля задач средних размеров, что позволяет быстро полугять рещение, используя прямой метол, В случае больших задач (нлн даже лля неболыпнх при решения на меннмашннах) может бить полеанмы то обстоятельство, что для прямых мстопов е каждый момент времени нужна е о ератзваой амата только часть зтрнцы коэффнцяг то . Прк больпгай соврсмюгной скорости обчеяа с внешней па«гатью мож.
ао бмстро пересылать в оперативную память частн ыатрнцы. Это позволяет последовательно прололжать решение без чрезмер. аых затрат времени. Олаако в стучае очень больщнх задач все еще могут быть необходнлгы итерационные методы даже прн использояанпн современных способов экономия оператнаной памяти. Отвлекаясь от частностей, можно дать следуюшне общее рекомендацни выборе чегола решення снстемы уравнений; 1) для небольших задач пелесообразно использовать нанболее удобные стандартные программы, основанные, как правило, на прямых методах; 2) для задач среднпх размеров следует выбирать прямой метол, экономя нв режнмак хранения данных, когда это аоз. можно; 3) для больших залая, когда память ограничена, пеобходнмо рассматринзть итерационные методы.
Хотя в втой главе рассматриваются лншь системы линейных уравнений вида (10.1), получающееся а случае эллнптическнх дифференциальных уравнений, аналогичные процелуры сущеетвуют я лля других типов задач, Например, коеечяозлементная формулировка линейной задачи на собственные значения праволнт к злгебрпической задаче на собственные значения, которая может бить регпена либо прямым, либо итера~!ионным методом.
Рекомендация относительно выбора метода аналогичны рекоменлацяям для стационарной задачи. Линейные динамические залечи, однако, приводят к ураэненням, зависящем от эре. меин, для которых более полхолящимп являются итерационные методы. Для решения нелннейкых систем уравнений не существует прамых методов, поэтому приходится использовать итера. ционные процедуры. В слелуюшпх разделах дан краткий обзор прямых н итерационных методоя, а также некощрых соотеегствую~цкх прнемое уменыпення времени н стоимостн решения.
102. ПРЯМЫЕ МЕТОДЫ РЕЕ!ЕНИЯ Используемые на практике прямые методы решения обычно состоят нз днух процедур, первая яз которых — приведение ма. трнцы системы к треугольному веду послеловательным исключением нли факторнзвцней, а вторая — обратная полствноека. И исключение, н факторизацня являются, строго говоря, процедурамя разложения, и именно так они будут здесь рзссматрнватьса, хотя некоторые ааторы используют терман «разложение» только применительно к факторизации. В настоящее время метод Гаусса, СО(.г-факторггзаггня, разложенне Холесского и фронтальный метод являются нанболее нажнымн нз прямык метопоп для рассматриваемого применения, Последние тря яз ннх могут рассматряеатьсн как варнанты цетола нсючючеггия Гаусса (!).
Среди недавно предложенных методов наиболее прнвлекательнымк яаляются де»од быстрого пргобразоволцл Фурщ и пагод разбиения яа блока (2). Сущест. вуют н другие чеюды, исеольэующне разреженность ленточной матрицы А. Онн будут рассыогрены а разя 10,20. Тексты Фар. трен-программ ряла пряммх четодоя оеублнкаазны н удобной форме (3, 4) В публикациях можно найти программы н для прутах методов. Г ава Ю Мвюд рвмвхи урв в В в гвшв р р г рован 225 га2.3, МЕТОД ГАУССА принимает аначения 3, 4, .....
В реаультате получаеьг В методе исключения Гаусса с помощью действий над строками симметричная ленточная матрица А приводится к верх. ней треугольной матрице О, а матрица.столбец В креобравуетси соответственно к матрице-столбцу С. Ниже иалагаетсн процеду. ра длн ленточной матрицы А с шириной лепты, рваной 5 Верх. няя часть матричного уравнения системы (1О.!) в этом случае принимает вил т, Х2 хг ((аЯ НапРимеР, числа Ова, Он н Ьг нолУчены по фоРмУлам Ом Ом — (пл/О„) Ом, йн = агг — (О,г/нл) Ом, (10.8) Ьг = Ьг — (ам/йм) 63.
Продолжение этого процесса приволпт в итоге к следующему матричному уравнению системы х, Огг Огг Ож х, (10.2) Огв Огг Огг «3 а„авв Оы Ог* Огв гщ Ов хв Огг ип и,г и,г И ивв «3 Нв первом шаге исключения, умножая первую стРоку в уравне- нии (19.2) иа О,г/Он и вычитая ее ие (-й строки, где 3 последо- вательно принимает значения 2, 3, . „, получаем сг сг с (ГО.У) х, 3, и, и Ясна, что процедуре исключении преобразует симметричную ленточную матриц» А в уравнении 110.1) к верхней треугольной ленточной матрице О, и итоговое уравнение приобретает вид ОХ=С.