Текст
                    "Я
А.Н. ТИХОНОВ
A.B. ГОНЧАРСКИЙ
B.B. СТЕПАНОВ
А.Г. ЯГОЛА
¦¦V-'r
ЧИСЛЕННЫЕ МЕТОДЫ
РЕШЕНИЯ
НЕКОРРЕКТНЫХ
ЗАДАЧ
\
. .. -J
МОСКВА "НАУКА"
ГЛАВНАЯ РЕДАКЦИЯ
ФИЗИКО-МАТЕМАТИЧЕСКОЙ ЛИТЕРАТУРЫ
1 990


Глава IV Алгоритмы и программы решения линейных некорректно постанлеиных задач . § 1. § 2. §3. §4. §6. § 7. Описание программ решения некорректно поставленных задач методом регуляризации Описание программы решения интегральных уравнений с априор- априорными ограничениями методом регуляризации Описание программы решения интегрального уравнения типа свертки ' Описание программы решения двумерных интегральных уравнений типа свертки Описание программ решения некорректно поставленных задач на специальных множествах. Метод условного градиента Описание программы решения некорректно поставленных задач на специальных множествах. Метод проекций сопряженных градиентов Описание программы решения некорректно поставленных задач на специальных множествах. Метод сопряженных градиентов с проецированием на множество векторов с неотрицательными ком- компонентами Приложения . I. Программа решения интегральных уравнений Фредгольма 1-го рода методом Тихонова с преобразованием уравнений Эйлера к трехдиаго- нальному виду II. III. IV. V. VI нальному виду Программа решения интегральных уравнений фредгольма 1-го рода методом Тихонова с использованием метода сопряженных гра- градиентов Программа решения интегральных уравнений Фредгольма 1-го рода на множестве неотрицательных функций методом регуляризации . . . Программа решения одномерных интегральных уравнений типа свертки Программа ««-тения пвумеоных интегральных уравнений типа решения двумерных интегральных свертки Программа решения интегральных уравнений Фредгольма 1-го рода „„„„v „ fHm,i выпуклых функций. Метод на множествах монотонных и условного градиента (или) выпуклых фуь УСЛОВНОГО 1радиста VII. Программа решения интегральных уравнений Фредгольма 1-го рода на множествах монотонных и (или) выпуклых функций. Метод проекции сопряженных градиентов VIII.Программа решения интегральных уравнений Фредгольма 1-го рода — '™m»i нчттукльтх Функций. Метод 101 104 118 123 130 136 142 148 157 157 169 174 178 185 192 на множествах монотонных и (или) выпуклых функций, проекций сопряженных градиентов на множество векторов рицательными координатами IX. Общие программы с неот- Список литературы 206 212 218 ВВЕДЕНИЕ С точки зрения современной математики все задачи принято условно делить на корректно и некорректно поставленные. Рассмотрим операторное уравнение Az = и, z G Z, и G U, (В.1) где Z, U- метрические пространства. Согласно Адамару [213] задача (В.1) называется корректной, или корректно поставленной, если выполнены два условия: а) уравнение (В.1) разрешимо для любого и S U единственным об- образом; б) решение уравнения (В.1) устойчиво относительно возмущения пра- правой части уравнения, т.е. оператор А'1 определен на всем U и является непрерывным. Типичным примером некорректно поставленной задачи является линейное операторное уравнение (В.1) в случае, когда оператору! вполне непрерывен. В этом случае, как известно, нарушаются оба условия коррект- корректности задачи по Адамару. Если Z — бесконечномерное пространство, то, во-первых, оператор А~1 определен не на всем U (AZ Ф U) и, во-вторых, А'1 (определенный hzAZ С U) не является непрерывным. К некорректно поставленным задачам относятся многие задачи теории оптимального управления, линейной алгебры, задача суммирования рядов Фурье с неточно заданными коэффициентами, задача минимизации функ- функционалов и многие другие. Теория и методы решения некорректных задач получили интенсивное развитие после выхода в свет основополагающих работ [164—166]. Важ- Важнейшим открытием было введенное в [166] понятие приближенного реше- решения некорректных задач. В основе новой постановки лежит понятие регуля- ризирующего алгоритма (РА) как способа приближенного решения некор- некорректной задачи. Рассмотрим следующую абстрактную задачу. Даны метрические про- пространства I и У и отображение G: X -* Y, заданное на подмножестве DG С X. Необходимо по элементу х G DG найти его образ G(x) S Y. Если вернуться к задаче (В.1), то в новых терминах G = А ~1, X = U, Y = Z и за- задача состоит в вычислении оператора А. Роль Dq в этом случае играет DG = AZ С U. Отображение G может играть роль оператора, переводящего множество данных какой-либо экстремальной задачи в элемент, на котором достигает- достигается экстремум, и т.п. 5
Если отображение G определено на всех Хи непрерывно, то рассматри- рассматриваемая задача корректна по Адамару (корректно поставлена). В этом случае если вместо элемента jc ? Dq известно его приближенное значение — элемент х^ S X такой, что Рх{*б> *) < 8, то в качестве приближенного значения элемента у - GCc) можно взять элемент G(xs) G Y, причем Py(G(xs), у) -* 0 при 6 -»• 0. Если задача некорректно поставлена, то элемент G(x^) может вовсе не существовать, так как Х(, не обязательно принадлежит DG, а если и принадлежит, то py(G(x6), у), вообще говоря, не стремится к нулю при 5^-0. Таким образом, рассматриваемую проблему можно трактовать как задачу о приближенном вычислении значения абстрактной функции G(x) при неточно заданном аргументе х. Понятие неточно заданного аргумента нуждается в определении. Под приближенными данными л: будем пони- понимать пару (jcg, б) такую, что px(*g, х) <5, причем элемент х6 не обяза- обязательно принадлежит Dq . Фундаментальным понятием теории решения некорректных задач является понятие регуляризирующего алгоритма как способа приближен- приближенного решения некорректной задачи. Введем в рассмотрение оператор R, определенный на паре (jcs, б), *g ? X, 0<6 <60, с областью значений в пространстве Y. Можно использовать другое обозначение для операто- оператора R, а именно R (xs, S) = /?s (xfi), т.е. будем говорить о параметрических семействах операторов R^(x), определенных на всем X с областью зна- значения в Y. Введем в рассмотрение погрешность A(Rs,8,x) = sup (Я(*)С( xsex РХ(Х6> х) < 6 РХF> Определение. Функция G называется регуляризируемой h если существует отображение R(x, 5) = Rs(x), действующее из прямого произведения пространств X и {5}, такое, что ton A(R6, б, х) = 0 5 -*. 0 для любых х € DG. Сам оператор R (х, 6) (Rs (*)) называетсярегулярыза- рующим оператором (регуляризирующим семейством операторов). Абстрактная постановка задачи, предложенная в следующем разделе, включает различные некорректные задачи (решение операторных уравне- уравнений, задачи минимизации функционалов и т.п.). Понятие регуляризируе- мости распространяется на все эти задачи. Так, задача (В.1) будет назы- называться регуляризируемой, если оператор А'1 регуляризируем на области своего определения AZ С U. В этом случае существует оператор R, кото- который каждой паре us e U и 5 > 0 ставит в соответствие элемент zg = = R(iib,8) такой, что zg -*¦ z при 5 -> 0. В теории регуляризации существенно, что приближение к G(x) строит- строится с использованием пары (xg,5). Ясно, что при построении приближенного решения нельзя использовать тройку (jcs, 5, х), так как точное значение 1с неизвестно. Возникает вопрос о возможности построения приближенного решения только по значению xs (погрешность 5 неизвестна, но известно, что Px(xs, x) -*-0 при 5 -*•()). Следующее утверждение показывает, что это возможно только для задач, по существу являющихся корректными. Отображение G регуляризируемо на DG семейством Rs = R(- , 5) = = /?(•) тогда и только тогда, когда G(x) продолжается на все X, причем это продолжение непрерывно на DG в ДГ(см. [16]). Последнее означает, что для некорректной задачи (В.1) (например, пусть в (В.1) оператору! взаимно однозначен из Z в t/и вполне непреры- непрерывен) отображение G = А ~1 не может быть продолжено на все пространст- пространство U с множества Dq = AZ С U так, чтобы оно было непрерывно на Dq, поскольку оператор А'1 не является непрерывным. Это значит, что в указанной задаче регуляризация при помощи оператора /?(•)> не завися- зависящего от 5, невозможна. Таким образом, пара (*$, 5) является, вообще говоря, той минималь- минимальной информацией, которая необходима для построения приближенного решения некорректных задач. Соответственно для задачи (В.1) минималь- минимальной информацией является пара (xs, 5). Зададимся следующим вопросом: насколько широк круг задач, кото- которые допускают построение регуляризирующего семейства отображений, т.е. постараемся описать круг задач, регуляризируемых по Тихонову. Очевидно, что множество таких задач не пусто, так как для любой кор- корректной задачи в качестве регуляризирующего семейства можно взять /?g = G. На этом факте по сути дела основана вся классическая вычисли- вычислительная математика. Регуляризируемыми являются не только корректные, но и значительная часть некорректных задач. Так, например, если в урав- уравнении (В.1) оператор А линеен, непрерывен и инъективен, a Z и U - гиль- гильбертовы пространства, то такая задача регуляризируема. Этот результат является основным результатом главы I. Более того, в первой главе будут предложены конструктивные методы построения регуляризирующих алгоритмов для задачи (В.1) в случае, когда с погреш- погрешностью задана не только правая часть уравнения, но и сам оператор. Пусть заданы элементы Mg и линейный оператор А^ такие, что || Mg — ы||(/<§, \\Ah - А || < h. Таким образом, входной информацией является набор {Mg, Af,, S, h}. По этим данным требуется построить элемент z^ G. Z, z _ 17 = {5, h } такой, что zn -*¦ z при rj-*- 0. Для решения этой задачи широко используется следующая конструкция. Рассмотрим функционал Ma[z] = \\Ahz-us\\b+a\\z\\2z. (B.2) Пусть z2 - экстремаль функционала Ma[z], т.е. элемент, минимизи- минимизирующий Ma[z] Ha Z- Если параметр регуляризации а = а(т?) согласован определенным образом 1? = {5, /г}, то элемент za(T^ и будет в определен- определенном смысле решением задачи (В.1). В главе I подробно обсуждаются способы согласования параметра регуляризации а с погрешностью задания входной информации т/. Заметим сразу, что если пытаться строить приближенные решения так, чтобы а не являлось функцией от погрешности т/, то последнее эквивалентно по- попытке построить регуляризатор R ( • , т?) = R ( " ), что, как мы уже знаем, возможно лишь для корректных задач. 7
В главе I подробно обсуждаются априорные схемы выбора параметра регуляризации, впервые предложенные в работе [165]. Особый интерес для практики представляет схема выбора параметра регуляризации по обобщенной невязке [58, 185]. В монографии подроб- подробно изложены методы решения несовместных уравнений. Значительное место в главе I отведено проблемам конечно-разностной аппроксимации и численным методам решения полученных после ап- аппроксимации систем линейных уравнений. Особое внимание уделено современным методам решения интегральных уравнений типа свертки. Регуляризирующие алгоритмы решения уравнений от разности аргумен- аргументов нашли широкое применение в задачах обработки изображений, компью- компьютерной томографии и т.п. [183, 184]. Построение регуляризирующих алгоритмов основано на использова- использовании дополнительной априорной информации об искомом решении. Особен- Особенно просто эта задача решается, если есть информация о принадлежности искомого решения компактному классу [185]. Как показано в главе II, этой информации вполне достаточно, чтобы построить регуляризирующий алгоритм. Более того, в этом случае оказывается возможным построить не толь- ко приближенное решение (B.I) z6 такое, что zs -*¦ z при 5 -*-0, но и полу- получить оценку точности приближения, т.е. указать е(б), для которого || Zfi - J ||z < еF), причем еE) -»¦ 0при 5 ->-0. Вопрос об оценке погрешности решения задачи (В.1) непрост. Пусть Д(Я6,6,г)= sup_ - погрешность решения некорректной задачи (В.1) в точке I при помощи алгоритма R5. Оказывается, что если задача (В.1) регуляризируема не- непрерывными отображениями R$ и существует равномерная на множестве D оценка погрешности sup A(RS,8,J) < еE) -»• О, ?е d то сужение оператора А ~х на множество AD С U непрерывно на AD С U [16]. Последнее утверждение не дает возможности построить погреш- погрешность решения некорректной задачи на всем пространстве Z. Однако если D компакт, то обратный оператор А'1, определенный на AD С U, непрерывен, что и позволяет находить вместе с приближенным решением его погрешность. Следующий важный вопрос, который обсуждается в главе II — это вопрос о том, как в конкретной задаче, используя априорную информацию об искомом решении задачи, выделять компактное множество коррект- корректности М- В целом ряде обратных задач математической физики имеется качест- качественная информация об искомом решении обратной задачи, такая, как моно- монотонность искомых функций, их выпуклость и т.п. [71]. Как показано в главе П, этой информации достаточно, чтобы на ее основании построить РА решения некорректной задачи A.1) [74]. Следующая проблема, решаемая в главе II, - как построить эффектив- эффективные численные алгоритмы решения некорректных задач на выделенном множестве корректности М. В перечисленных выше случаях задача построе- построения приближенного решения сводится к решению задач выпуклого про- программирования. Используя специфику ограничений, можно построить эффективные алгоритмы решения некорректных задач на компактных множествах. Необходимо отметить, что хотя для построения регуляризирующих алгоритмов в монографии широко используются итерационные методы, мы не касаемся проблем итеративной регуляризации, которая представляет самостоятельное большое направление в теории регуляризации. Этому направлению посвящено несколько монографий, в том числе [16, 31]. В главе III подробно обсуждаются численные аспекты построения эффективных регуляризирующих алгоритмов на специальных множест- множествах. Алгоритмы решений некорректных задач на множествах специаль- специальной структуры (используется информация о монотонности искомого решения, его выпуклости, существования конечного числа точек перегиба и т.п.) получили широкое распространение в решении некорректных задач диагностики и проектирования [51, 52, 183]. В главе IV приведено описание пакета программ решения некоррект- некорректных задач. Среди приведенных программ содержатся: а) различные варианты решения линейных интегральных уравнений первого типа (В.1), основанные на использовании схемы Тихонова; б) специальные программы решения одномерных и двумерных интег- интегральных уравнений 1-го рода типа свертки с использованием быстрого преобразования Фурье; в) различные варианты решения одномерных интегральных уравнений Фредгольма 1-го рода на множествах монотонных, выпуклых функций, функций, имеющих заданное число экстремумов, точек перегиба и т.п. Каждая программа снабжена тестовыми примерами. Глава V содержит тексты программ. Книга предназначена для студентов и аспирантов физико-математи- физико-математических специальностей, а также для инженеров и научных работников, интересующихся вопросами обработки и интерпретации данных экс- эксперимента.
Глава I МЕТОДЫ РЕГУЛЯРИЗАЦИИ В настоящей главе рассмотрим методы решения некорректно постав ленных задач при условии, что априорной информации, вообще говоря, не- недостаточно для выделения компактного множества корректности. Основ- Основные идеи этой главы были высказаны в работах [165, 166]. Мы будем рас- рассматривать случай, когда оператор также задается приближенно, а мно- множество ограничений задачи — выпуклое замкнутое множество в гильберто- гильбертовом пространстве. Случай точно заданного оператора и случай отсутствия ограничений (т.е. множество ограничений совпадает со всем пространст- пространством) являются частными случаями рассмотренной постановки задачи. § 1. Постановка задачи. Сглаживающий функционал Пусть Z, U — гильбертовы пространства; D — такое замкнутое вы- выпуклое множество априорных ограничений задачи (D С z), что 0 ? Л (в частности, если рассматривается задача без ограничений, то D - Z); A, Ah - линейные ограниченные операторы, действующие из Z в U, при- причем || А - Ah || < h, h > 0. Построим приближенное решение уравнения Az = и, A) A принадлежащее множеству D, по заданному набору данных {Ац, Mg, 17}, 77 = (S, /г), где 6 > 0 — погрешность задания правой части уравнения A) м5, т.е. || м8 - м II < S, ы = AJ. Здесь I - точное решение A), J G D, соответствующее правой части ы. Введем сглаживающий функцио- функционал [165] Ma[z) = IIAhz - иъ + а || z B) (а > 0 - параметр регуляризации) и рассмотрим экстремальную задачу: найти inf Ma[z]. z e D C) я любых а > 0 us G U и линейного ограниченного ; D, причем II z% II < II "s Il/Va- D) Доказательство. Очевидно, что функционал Ма [z] дважды дифференцируем по Фреше, причем (Ma[z])' =2(A*hAhz + A*hub +az), (Ma[z])" = 2(A%Ah+aE) (A*h: U -* Z - оператор, сопряженный к Ah). Для любого z 6 Z ((Ma[z])"z, z) > 2a || z ||2, поэтому функционал Ma[z] является силь- сильно выпуклым; следовательно, он достигает минимума на любом замкну- замкнутом (не обязательно ограниченном) множестве D ^ z в единственной точке zjj [33]. Поскол ьку 0 € D, то inf Ma[z] < Ma[0], откуда следует оценка D). Функционал Ma[z]. является сильно выпуклым функционалом в гильбертовом пространстве [27]. Для отыскания экстремали z°?fl при фиксированном a > 0 достаточно применить, например, градиентные ме- методы минимизации функционалов с ограничениями или без ограничений, ecnnZ) = Z [33]. Напомним, что необходимым и достаточным условием того, что z" — точка минимумам [z] на D, является условие [76] ((M<K])',z-z«)> 0 VzGD. Еяли z" — внутренняя точка D (или D = Z), то это условие принимает вид (Ma[z^])' = 0, или A*hAhzav+azav =A*hus. E) Таким образом, в этом случае вместо минимизации функционала М [z] можно решать уравнение Эйлера E). Численные аспекты реализации обоих подходов будут рассмотрены ниже. § 2. Выбор параметра регуляризации Идея построения регуляризирующего алгоритма на основе экстремаль- экстремальной задачи C) для функционала Ма [z] заключается в построении такой функции a = aG7), что z^^ -*¦ F при т? ->0, или, другими словами, в согла- согласовании параметра регуляризации а с погрешностью задания входных данных г). Теорема 1 [165, 166, 169, 170]. Пусть А - взаимно однозначный оператор, 1 S D. Тогда г"(т?) -*¦ I при т? -»• 0, если a(r?) -*¦ 0 таким образом, (h + 8Jl(i) 0 что Доказател ьство. Предположим противное, т.е. z^n' +* г". Это означает, что существуют такое е > 0 и такая последовательность ¦(), что || za^Vk^ - z" || > е. Поскольку FG D, то для любого а>0 Ma[z ) = \\Ahz- us ||2 +a || z ||2 = | za^Vk^ - z = inf Ma[z] ze D = \\Ahz-Az + a +a 11
Отсюда F) II *п и - v- ii - .. В силу условий теоремы существует такая константа С, не зависящая от т) при 5 < 50, А <А0 E0 > 0, ho > 0 — некоторые положительные числа), что (/2||z||+5J/a(r0 < С. Далее, используя слабую компактность шара в гильбертовом про- пространстве [92], из последовательности z^nfc) можно выделить подпо- подпоследовательность, слабо сходящуюся к z* G D (поскольку D слабо замкнуто). Не ограничивая общности, будем считать, что z4feSfc^—* z*. Используя слабую полунепрерывность снизу нормы [123], условие (А + 6J/а(т7) -*¦ 0, и неравенство F) легко получить: <llz||. G) II г* II < Jim ||. .. к -* °° к ->¦ Теперь рассмотрим неравенство (-Лг|| < \\Az\ + < Л ||г||2I/2 +((hk\\Y\\+8kf +aG7fc)l|z||2I/2 +8k. Переходя к пределу при к -»• °°, используя условие <*(%) ->¦ 0 и сла- слабую полунепрерывность снизу функционала \\Az - A'z\\, получим \\Az* AJ\\ - 0 те z* = z в силу взаимной однозначности А. Тогда олунепрерывность снизу функционала \\Az A\\, у \\Az* -AJ\\ - 0, т.е. z* = z в силу взаимной однозначности А. Тогда из G) следует, что lim || z"^nfc) || = ||?||. Гильбертово пространство к -» оо обладает Я-свойством (из слабой сходимости и сходимости норм следует сильная сходимость [95]), поэтому lim z<4 = z. Полученное противоречие доказывает теорему. Замечание. Пусть А не является взаимно однозначным операто- оператором. Определим нормальное решение z уравнения A) на множестве D, соответствующее правой части ы = A~z, как решение экстремальной за- задачи ||z ||2 = inf||z||2, z&{z: Множество {z: z fjz) = \\z\\2 c»_- z ? D существует и единственно [33]. Если в формулировке теоремы 1 отказаться от требования вза- взаимной однозначности оператора А, то ее утверждение остается справедли- справедливым, если считать, что г" — нормальное решение уравнения A). Таким 12 z & D, Az = и ) выпукло и замкнуто, функционал сильно выпуклый; следовательно, нормальное решение [33] образом, в этом случае z <*(п) ^ v z при г) ->¦ 0, где z — решение уравне- уравнения A) с минимальной нормой. Теорема 1 указывает порядок убывания а(т?), достаточный для по- построения регуляризирующего алгоритма. Обычно при обработке реаль- реальных экспериментальных данных уровень погрешности т? фиксирован и известен. Ниже будет рассмотрен подход, позволяющий использовать для построения устойчивых приближенных решений уравнения A) фик- фиксированные значения погрешности задания исходных данных. Определим меру несовместности уравнения A) с приближенными данными на множестве D ? Z как ze d \Ahz-us Очевидно, что А1ч(ы6, Ah) - 0, если us G AhD (черта означает замыкание по норме соответствующего пространства). Лемма 2. Если || ы8 - м || <5, Л = AI, J G D, \\А - Ah || <А, то \хп{цъ,Ан) -> 0 при п -> 0. Доказательство. Оно следует из того, что lxr)(us,Ah)= inf \\Ahz-us\\ < \\Ahz-us\\ < 8+h\\z\\ > 0. z e d n -•¦ о В дальнейшем будем предполагать, что мера несовместности вычисля- вычисляется с погрешностью к. > 0, т.е. вместо ?tn(Mg, Ah) известно такое U%(us,Ah), что Погрешность определения меры несовместности к будем считать согласо- согласованной с погрешностью задания входных данных т? таким образом, что к = к(г))^>-0 при т?-*0 (например, k(t?) = /z+5). Введем в рассмотрение функцию, называемую обобщенной невяз- невязкой [57, 59]: Сформулируем так называемый обобщенный принцип невязки для выбора параметра регуляризации. Пусть условие \\щ\\2>д2+(^(щ,Ан)J (8) не выполнено: тогда в качестве приближенного решения уравнения A) выберем zn = 0. Если же условие (8) выполнено, то обобщенная невязка имеет положительный корень a *> 0 (см. § 4), т.е. ||Лйг«*-м8||2= E+Л||г^||J+(м>6М)J. (9) В этом случае положим приближенное решение уравнения A) zn = z" , причем, как будет показано ниже, z^ определяется единственным об- образом. Теорема 2. Пусть А - взаимно однозначный оператор, т? = E,/г) -> 0 таким образом, что || А - Ah || <h, \\ us - и || < 5, и = AI, z~ € D. Тогда lim zn = J, где zn выбирается согласно обобщенному принципу невязки. г)->- 0 Если А не является взаимно однозначным оператором (КегЛ Ф {0}), то 13
утверждение теоремы остается справедливым, если считать z нормальным решением уравнения A). Доказательство. Если z~ = 0, то || us || < 6 и условие (8) не выполнено. В этом случае zn = 0 и теорема доказана. Пусть теперь 1 Ф 0. Тогда, поскольку 52 + (/^(ufi, Ah)J ~* 0 при г\ -*¦ 0 (см. лемму 2 и определения ^и«), || us \\ ~> \\ п \\ Ф 0, то усло- условие (8) будет выполнено по крайней мере для достаточно малых г/. Схема доказательства теоремы 2 в этом случае не отличается от схе- схемы доказательства теоремы 1. Опять предположим, что z"**-n' +>¦ Y. Это означает, что существуют такое е > 0 и такая последовательность % -> 0, что || I -¦ z"*^nfc) || > е. В силу экстремальных свойств z^*^4fc) €?)полу- чим (*) ?) ^ -иЬк ||+aJ||z Учитывая обобщенный принцип невязки (9), имеем г z ИJ z Таким образом, где f(x) = iA + BxJ + Сх2, А = дк > 0, B = hk> строго монотонна при х > 0, а следовательно, , C=a*k>0. Функция Считая, как и при доказательстве теоремы 1, что z"k чим неравенство IU'11 < _Um ||z«* ||< ИпТ \\zfk\\ < || j ||, , полу- которое аналогично G). Теперь для того, чтобы завершить доказательство, так же, как и в * \ Э ует из неравенства Теперь для того, чтобы зар теореме 1, осталось доказать, что. z * = z\. Это следует из неравенства 1/2 х И ИЗ ТОГО, ЧТО Вр*К [.62] замечено, ™ » па невязки можно положить Мп(«б 14 и& Ф AftD. А именно, определим обобщенную невязку pn(a) = \\Ahz*-u6 ||2-(8+Л||г^||J. Условие (8) примет вид II «6 II > §. A0) Сформулируем теперь обобщенный принцип невязки в следующем виде. 1. Если условие \\us || > 8 не выполнено, то полагаем приближенное решение уравнения A) zn = 0. 2. Если условие ||м8||>6 выполнено, то: а) если найдется а* > 0 — корень функции рт7(а), то в качестве реше- решения возьмем z"*; б) если рп(а) > 0 для всех а > 0, то положим приближенное решение равным г„ = lim z%. а - 0 + 0 Теорема 3. Если А - взаимно однозначный оператор, то сформули- сформулированный выше алгоритм является регуляризирующим. Если А не являет- является взаимно однозначным, то имеет место сходимость регуляризированных приближенных решений zn к нормальному решению уравнения A) на множестве D. Доказательство. Ясно (см. теорему 2), что если J = 0, то утверждение теоремы справедливо. В случае, когда г" Ф 0 и существует корень рч(а), теорема также уже доказана, так как действуя как при доказательстве теоремы 2, легко показать, что (8* II2 = z +hk || z IIJ +a*k || z | т.е. ||z^*|| < l|z"||. В остальном доказательство теоремы 2 практически не меняется. Итак, осталось исследовать случай, когда рч(а) > 0 для всех a > 0. Так как -us ||2 + a ||z« ||2 <\\Ahl-us \\Ahz%-us\\>8+h\\z*\\, \\Ahl~ub || < 8+AHzH, TO Отсюда, как и прежде, следует, что || z^ || < || ! || для всех a > 0. Тем самым, для любой последовательности а„, сходящейся к нулю, можно выделить такую подпоследовательность а'„, что za" слабо сходится к zn e D (так как D слабо замкнуто). Не ограничивая общности, будем считать, что z " lim Ma[ а -* 0 + 0 z,. В § 4 будет доказано, что 15
Поэтому, поскольку (nv(ub,Ah)? < при а„ ->• 0, то \\Ahzr]-us || = inf \\Ahz-us г е d и zn - экстремаль функционала Ma [z] при а = 0 (т.е. zn - квазирешение уравнения A) с приближенными данными), удовлетворяющая неравенст- неравенству || zv\\ < IIIII, a za" - последовательность, минимизирующая функцио- функционал \\Ahz - us ||2 на множестве D. Функция \U% II монотонно не воз- возрастает по а (см. § 4) и ограничена сверху || z II, поэтому существует lim || za4 II = а, а -* 0 + 0 причем lim |z«"|l = a > \\zv Покажем, что || zn || = a. Предположим, что это не так. Тогда, начиная с некоторого номераN, || z^« || > II zn ||. Но, поскольку 2 2 \Ahz«»-us\\2 +an\\z*" an (так как za" - экстремаль Ma"[z]), то ||Лйг«« - и6 II <^ч(и6, Л Л), на- начиная с номера N. Но в силу определения меры несовместности \\Ahz°^ ~щ\\= nv(us,Ah). Поэтому zv - экстремаль функционала Ma [z] для всех а„, начиная с но- номера 7V (определяемая единственным образом), т.е. IUJI = \\zav"\\. Полученное противоречие показывает, что \\zv\\ = limJU^"!!, a значит, za» сходится к zn не только слабо, но и сильно. Для доказательст- доказательства существования Um+ z* теперь достаточно доказать, что предел zn последовательности%"»} не зависит от выбора последовательности {а„}. Ч«} б вья экстремалью функционала экстремаль функционала последовательности%»} не зависит от выбора д Действительно, пределЧ{г«"} будет являться экстремалью функционала M°[z] с минимальной нормой. Пусть zn функционала М° [ z] с минимальной нормой, т.е. \\Ahln ~щ ||2 - (цп(и6,А„)J < Очевидно, что -щ i2 Следовательно, ton II г„ II, а значит, = lim || zan \\ и так как ziT) - экстремаль M°[z], то гч=гч. 16 Таким образом показано, что z- = lim z2 является решением -* 0 + 0 задачи: найти zGD, \\Ahz-us || = ixv(us,Ah). Решение этой задачи существует и единственно. Тем самым доказано, что существует lim z" = zn (z_ - нормальное псевдорешение уравне- а -* 0+0 ч Для завершения доказательства теоремы достаточно заметить, что || Azn - п || < || Лгч - Лйгч + Лйгч - «8 + «8 - п II < < h\\zv\\+nv(U{,,Ah) + 0 при TJ-+O. Отметим что в отличие от алгоритма, обоснованного в теореме 2, дан- данная модификация обобщенного принципа невязки не требует вычисления ju^(mj, Af,). Однако при этом алгоритм теоремы 3 требует, чтобы уравне- уравнение A) с точными данными было разрешимо на множестве D. Замечания. 1. В работах [90, 163] доказана оптимальность по порядку обобщенного принципа невязки на компакте, являющемся об- . I разом шара рефлексивного пространства при вполне непрерывном Г-отображении. "" >^ 2. Предложенный в настоящем параграфе подход к решению линей- ^ ных задач с приближенно заданным оператором можно считать обобще- к-, нием метода наименьших квадратов Лежандра [217] и Гаусса [210], ко- , ' торый, как известно, неустойчив относительно возмущений оператора (матрицы системы линейных алгебраических уравнений). 3. В работах [174-177] для систем линейных алгебраических уравне- уравнений и линейных уравнений в гильбертовом пространстве предложен метод, позволяющий не только находить приближенное решение задачи с воз- возмущенным оператором (матрицей), но и оператор (матрицу), реализую- реализующий данное решение. Устойчивые методы решения задач с приближенно заданным операто- оператором были предложены в работах [169, 170]. Обобщенный принцип невяз- невязки является развитием принципа невязки выбора параметра регуляриза- регуляризации из равенства \\Az" - и& \\ = 8 (wir\\Az" - us || = С8, О l),i?= E, 0), 5>0, || и6 || >5 (см. [10,38,88, 128,131, 135]). Обобщенный принцип невязки для гильбертовых пространств был предложен и обоснован в [57, 59, 63], для рефлексивных пространств в [203, 205]. Обобщенный принцип невязки рассматривался в [90, 100,101, 122, 138, 163, 206]. Применение обобщенного принципа невязки для реше- решения практических задач, а также модельные расчеты можно найти в [71, 73, 94, 96, 118, 185]. Обобщенный принцип невязки для нелинейных задач рассмотрен в [7, 112, 114-117]. В заключение рассмотрим вопрос об устойчивости решения экстремаль- экстремальной задачи C) к малым возмущениям и&, Ah, а. Аналогичный вопрос для случая точно заданного оператора с использованием схемы компакт- компактного вложения рассмотрен в [90]. Пусть P(us, Ah, a) = z^ есть отображе- 17
ние, действующее из произведения пространств t/XHom(Z, U) XR+ в множество fl ^ Z и описывающее решение задачи минимизации Ма [z] на D. Здесь Hom(Z, U) — пространство линейных ограниченных операто- операторов, действующих из Z в U с равномерной операторной метрикой, R+ — пространство положительных чисел с естественной метрикой. Теорема 4. Отображение Р из пространства t/XHom(Z, U)XR+ в пространствоZ непрерывно. Доказательство. Если Р не является непрерывным, то найдет- найдется такая последовательность (и„, Ап, а„), что (м„, Ап, ап) -»• {и, А, а), ног„ = Р(и„,А„,а„) -t»za =P(u,A, а) • Не ограничивая общности, будем считать, что \\zn-za\\>d>Q, d= const. Так как zn = Р(и„, А„,а„),то \Anza-un \\2 = = inf z GD В силу D) || г„|| < sup И ы„ Ц/inf п п Поскольку а = lim ап Ф О, то из последовательности г„ можно выделить последовательность, слабо сходящуюся к некоторому г* ? D. Не ограни- сл чивая общности, будем считать, что вся последовательность zn-—-»-z* S Z> (так как Z> выпукло и замкнуто и, следовательно, слабо замкнуто) и ел || г„ || -*а. Легко видеть, что A nzn -*-А г*. Действительно, II {Ап -A)zn || < || Ап -А || sup|| ип ||/infv^- ГС ГС Поэтому (/!„ —Л)г„ -»• 0 при л -»• °° сильно, а следовательно, и слабо. Далее ел ел Azn -+Az*. Так как А —линейный ограниченный оператор, то Anzn -+Az . Итак, 2 а|| z* ||2 < Um (|| Anzn -и„ ||2 + ап\\ zn ||2)< -и | lim (\\Anza-unf+aJzaf)< Hm _<* II2 (П) Поскольку z* 6 В, то г* = г" и в последней цепочке неравенств все нера- неравенства следует заменить на равенства. Переходя к пределу при п -*¦ °° в неравенстве \А„г„-и„\ \ Anza -ип\ _<* ||2 и учитывая, что || zn || -»¦ а, получим IUz* - и II2 + аа2 = \\Aza -и \\2 +a\\za \\2. Сравнивая это равенство с A1), получим || г*|| = a = || za ||, т.е. г„ и II г„ || -^Нг011|, илиг„ -'•z0' сильно, что противоречит предположению. § 3. Эквивалентность обобщенного принципа и обобщенного метода невязки Для того чтобы лучше понять смысл выбора параметра регуляриза- регуляризации в соответствии с обобщенным принципом невязки, докажем экви- эквивалентность его обобщенному методу невязки — экстремальной задаче с ограничениями: найти zG{z: z GD,\\ Ahz -us\\2 <(8 +h \\ z \\J + bi*(.us,Ah)J}. A2) Обобщенный метод невязки, введенный впервые в работе [58] для решения нелинейных некорректных задач с приближенно заданным опера- оператором в конкретных функциональных пространствах, является обобще- обобщением метода невязки (h = 0) решения подобных задач с точно заданным оператором. Идея метода невязки была впервые высказана в [218], однако строгая постановка задачи и обоснование метода впервые были приведены в работе [88]. Дальнейшее развитие круга идей, связанных с применением методов невязки для решения некорректных задач, дается в работах [34, 36, 37, 89, 121, 139, 161, 209]. Обобщенный метод невязки в рефлексив- рефлексивных пространствах изучается в работах [102,204]. Эквивалентность обобщенного метода невязки и обобщенного принци- принципа невязки впервые доказаны в работе [162] , однако при некоторых из- излишних предположениях. Ниже мы будем придерживаться схемы доказа- доказательства, предложенной в работе [205]. Теорема 5. Пусть A, Ah - линейные ограниченные операторы из Z в U; D — замкнутое выпуклое множество, содержащее точку 0,D^Z; \\А -Ah || < h, || ив -й || < 5, п = Al, z 6 D. Тогда обобщенный принцип невязки и обобщенный метод невязки эквивалентны, т.е. решение уравне- уравнения A), выбранное из условий (8), (9), и решение экстремальной зада- задачи A2) совпадают. Доказательство. Пусть условие (8) не выполнено. Тогда 0G{z: zGD,\\Ahz-u&\\2<(8 +h \\ z ||J + (цЧ,(ив, Ah)J}, и решение задачи A2) есть zv - 0. Поскольку обобщенный принцип не- невязки в этом случае также приводит к zn = 0, то остается доказать их эквивалентность в случае, когда (8) выполнено. В этом случае задача A2) эквивалентна задаче: найти ze{z: В самом деле, zGD, \\Ahz -us II2 < E +h II z IIJ + +• (ju^ (us,Ah)J ) . ПустьгчGD-такое решение задачи A2),что \\Ahzn -us ||2 <E +h\\zv\\J K2 Функция 19 18
вещественной переменной х, где zx = xzn непрерывна на [О, 1}, причем /@) > 0, /A) < 0. Поэтому найдется такое х G @, 1), что f(x) = 0, т.е. Ahzs |2 = = E + А || г- IIJ + (nKv(us,Ah)J. Но что противоречит тому, что zn - решение задачи A2). а. Обратимся теперь к обобщенному принципу невязки. Пусть zn = zn , /у * а* > 0, z~ определяется единственным образом, причем zn Ф 0 и (как будет показано ниже) имеет место неравенство Вместо функционалам" [z] рассмотрим функционал Mx[z] =\[\\Ahz-u5 ||2 - (8 + А || zl* ||J -Gi>6 ,Ah)J] где Х = 1/а. В силу равенства (9) для любого X > 0 (здесь X* = 1/а*). Поскольку z"* -экстремаль функционала Ma*[z], а следовательно, и функционала М к* [z], то для любого z G Z> Поэтому (z%*, X*) - седловая точка функционала Мх [z]. По теоре- теореме Куна - Таккера [90] zf является решением задачи: найти inflUH, На самом деле, пусть во множестве ограничений существует элемент z такой, что Тогда что противоречит неравенству Ж71* [zf] <МХ* [г] для любого z G D. Последняя экстремальная задача в силу условия 0^{z: zeD,\\Ahz-u6\\2 <(8+h\\z^ \\J +AлКп(и8,Ан)J}, следующего из (8), (9) и доказанных ниже (лемма 3) монотонности 0п(а) и предельных соотношений при а ->+°° эквивалентна экстремальной 20 задаче (доказательство эквивалентности аналогично доказательству экви- эквивалентности двух экстремальных задач в начале теоремы) : найти infllzll, . A3) Решение этой задачи существует и единственно в силу замкнутости и выпуклости множества {z: z G D, \\Ahz ~иь\\2 < E + 2 II) + (nv(us, Ah)J} из гильбертова пространства Z. Поэтому это решение есть z. Покажем, что zn а* решение задачи A2). Предположим, что в мно- мноz || < жестве ограничений задачи A2) найдется такой элемент z, что а* а* < || || ( а (отметим, что zv удовлетворяет ограничениям задачи A2) в Т n силу (9) ). Тогда z G D и а* Hoz4 является решением задачи A3) и С {z: z GD,\\ Ahz -us\\ * Л Л | > \\ zn ||, так как || z || > \\ z \\, где z - решение задачи: Таким образом, | найти infllzll, z G{z: z G Д || Ahz -us ||2 < (8 + А || z IIJ + ,Ah)J }. единствехшое решение Полученное противоречие показывает, что z^ задачи A2). Итак, решение экстремальной задачи A2) с невыпуклыми ограниче- ограничениями можно свести к задаче выпуклого программирования - минимиза- минимизации функционала Ма [z] с выбором параметра регуляризации по обобщен- обобщенному принципу невязки. Замечания. 1. Пусть D = Z, AhZ = U. Тогда в формулировке обоб- обобщенного принципа невязки и задачи A2) можно положить ixv(us,Af,) = 0. 2. Легко показать (на простых примерах), что модификация обобщен- обобщенного принципа невязки, рассмотренная в теореме 3, вообще говоря, не эквивалентна задаче A2), в которой отсутствует ju4, т.е. не эквивалентна задаче: найти infHzll, zG{z: геД||Лйг-и6||<6+А||г||}. Связь обобщенного метода невязки и обобщенного принципа невязки для нелинейных некорректных задач исследована в [116]. 21
§ 4. Обобщенная невязка и ее свойства В настоящем параграфе мы подробно изучим свойства некоторых вспомогательных функций параметра регуляризации а > 0: 7T)(a)=||z?||2, A5) и свойства обобщенной невязки рп (а), введенной в § 2. Лемма 3. Функции Фп(а),уп(а), ^(а) как функции параметра а обладают следующими свойствами. 1. Они непрерывны при а > 0. 2. Функции Фц (а) вогнута, дифференцируема и Ф'п (а) = уц (а). 3. Функция 7т)(а) монотонно не возрастает, а функции Фч(а), 0ч(а) монотонно не убывают при а > 0, причем на интервале @, а0) таком, что zn° Ф 0, функция Фч(а) строго монотонна. 4. Справедливы следующие предельные соотношения: lim 7„(а)= lim а7т,(а)=0; lim OL —> + о &r)(a)= lim |3Г)(а)= || м5 ||2; lim а7„(а)=0; а->0+0 lim ФТ)(а)= lim рп(а)= (nv(us а ->0 + 0 а ->0 + 0 Доказательство. Утверждения 2 и 3 легко вытекают из нера- неравенства A8), впервые полученного и примененного для исследования вспомогательных функций в работах [127-131]. Фиксируя а' € @, а) и вычитая из очевидного неравенства Ча||. выражение для Фп (а'), получим Аналогично получаем неравенство Фт)(а')-Фт)(а)<(а'-а)||г^||2. Из последних двух неравенств вытекает, что A7) A8) ; а — а Поскольку || z^ ||2 > 0, то Фп(а) монотонно не убывает, а если || z^ || ^ 0 на интервале @, а0), то Фт)(а) монотонно возрастает на этом интервале. Из A8) следует также, что если a' G @, а), то || z^ ||2 < || z^ II2,что озна- означает невозрастание функции уп (а). 22 Из неравенства D) следует, что если мы фиксируем а0: 0 <а0 < а' < < а, то Из этого неравенства и неравенства A7) вытекает непрерывность Ф-п(а) для любого а > 0. Далее из D) получаем, что lim у (а) = 0. Отсюда в силу непрерыв- ности оператора Ah lim ^(a)= lim \\Ahz"-us \\2 = || иь ||2. ПосколькуMa[z"] <Ma[0] =||м5||2,то lim <xyv(a)=0; lim Фп(а)= || us ||2. Покажем теперь, что невязка ^(а) монотонно не убывает. Для этого достаточно заметить, что при а' € @, а) \\Ahz" -M6||2 + a'||z" ||2< Второе из этих неравенств является следствием невозрастания функции 7г)(а)- Для доказательства непрерывности уц{а) воспользуемся условием {(Ma[zan})\ z-z")>0 VzeD, Va>0, или {AhAhzri +ot'zr} —A*hub, z —Zj, )> 0 VzGZ). Положив в первом из этих неравенств z = z * , а во втором z = z " и сложив их, получим или или <xzv ~olzn, zr)-zr))<0, Отсюда z-z т.е. 7^ (a) = || zn \\2 непрерывна (даже липшиц-непрерывна). Непрерывность функции Pv (а) следует из непрерывности функций ч\, (а), 7?, (а). 23
Из неравенства A8) и непрерывности 7т)(а) следует, что Ф^Са) диф- дифференцируема для любого а > О, причем Ф^,(а) = уп(а). Тем самым функ- функция Фп(а) вогнута, так как ее производная yv(a) монотонно не возрас- возрастает [91]. В силу того, что lim || zn || = 0 и || z" || не возрастает при увеличе- + а + нии а, легко видеть, что еслиz^" - 0 при некотором а0 € @,+°°), toz^ =0 и при всех а> а0. Если z"° Ф 0 при а0 > 0, то zn Ф0 при всех а € @, а0) ¦ Рассмотрим теперь поведение функций Ф^, (а), yv(а),/3^ (а) при а ->-0 + 0. Зададим произвольное е > 0. Тогда найдется такое z6 S D, что Очевидно неравенство pri(a)<<S>ri(a)<\\Ahze-u8\\2+a\\ze\\2, из которого следует, что Hm~ ft,(a)< Urn Фг,(а)<(дч а —0 + 0 а — 0 + 0 Но так как &,((*)> infnIUftz-M5||2 = (Mr](M5, ТО lim a — Теперь в силу произвольности е > 0 получим lim а —0 + 0 а также ||2 = 0; lim а -0 + 0 lim а | а -0 + 0 Следствие. Обобщенная невязка р^, (а) = ($v (а) - E + Ал - (ixv(us, Ah)J обладает следующими свойствами: 1) pv (а) непрерывна и монотонно не убывает при а > 0; 2) lim pKr,(a) = \\us\\2-52-(^}(us,Ah)J; 3) lim" pl(a)<-52; а -0 + 0 4) если выполнено условие (8), го найдется такое а* > 0, что Рч(в')=0- A9) Последнее уравнение эквивалентно уравнению (9), причем элемент z"* не рдвеи н^лад и определяется единственным образом. Д о к а з ат е л ь с т в о. Утверждения пп. 1)—3) следуют из свойств функций 07,(а), 7т)(а)- Понятно, что в п. 4) достаточно доказать лишь единственность элемента z^*. Вообще говоря, в силу того, что функция p^iot) может не обладать свойством строгой монотонности, элемент а* может определяться неодно- неоднозначно. При этом множество корней уравнения pr}(at) = 0 заполняет, вообще говоря, некоторый интервал. Пусть а* принадлежит этому интер- ct * валу. Для всех zv выполнено условие A9). Из A9) и монотонности функций 0,,(а), 7п(а) следует, что эти функции постоянны на указанном интервале. Следовательно, элемент zv , взятый для произвольного а* из указанного интервала и определенный единственным образом, является экстремалью функционала B) для любого а*, удовлетворяющего A9). Свойства функции pv(ot) = /^(a) - E + hs/y^ia.)J могут быть легко получены аналогичным образом, однако, как отмечалось в § 3, корень уравнения рп (а) = 0 может не существовать при a > 0. Прежде чем перейти к вопросам, связанным с отысканием корня обобщенной невязки, рассмотрим, какие дополнительные свойства приоб- приобретают вспомогательные функции и обобщенная невязка в случае задачи без ограничений (?> = Z) (или если z^ - внутренние точки множества D). В этом случае экстремаль функционала может быть найдена как реше- решение уравнения Эйлера E), а именно Лемма 4. Оператор Rn обладает следующими свойствами: 1) если D(Ah) = Z, то D(R%) = Z; 2) || Л° ||< I/a; 3) R^ положительно определен; 4) Rn непрерывно зависит от а в равномерной операторной топологии. Доказательство. Оператор А%АН самосопряженный, неотри- неотрицательно определенный, а > 0, поэтому Ker(AhAh + аЕ) = 0 . Отсюда следует существование оператора Rv. Найдем его область определения. Пусть R(AfrAh + аЕ) - множество значений оператора A*hAh + аЕ. Ясно, что это линейное многообразие в Z. Покажем, что оно замкнуто. Пусть последовательность zn = {A*hAh + аЕ)ф„ сходится к z0 € Z. Докажем,что найдется такое ф0 G Z, чтог0 = (A*hAh + аЕ) ф0^ Поскольку го (А*нАнфп,фп)>0, Ф„\\< (\1а)\\(А%А„+аЕ)фп\\< B0) Гем самым последовательность ф„ ограничена. Выберем из нее слабо схо- сходящуюся подпоследовательность. Не ограничивая общности, будем считать, 25 74
ел что фп -»¦ i^o- В силу слабой замкнутости замкнутого выпуклого множест- множества D^A^Af,) гильбертова пространства Z ^0 принадлежит D{A*hAh). По- Поскольку A*hAh + аЕ - линейный ограниченный оператор, то он является непрерывным из слабой топологии в слабую [95], из этого следует, что (AftAf, + аЕ) фо = 2о- Таким образом, мы показали, что Я(А^,А^ + аЕ) — подпространство Z. Покажем, чтоR(AflAfl + аЕ) совпадает с Z. Разложим Z в прямую сумму: Z = R(A'hAh + aE)®(R(A'hAh + аЕ)I. Предположим, чтог € {R{A*hAh + аЕ)I, т.е. (z, (A*hAh + aE)y) = 0 для любого у € Z. Выбирая у = z, получим (z, A*hAhz + az) = \\Ahz ||2 + + a|| z ||2 =0, т.е. z = 0; это означает, что Z = R(A^Ah + аЕ) для любого a>0. Оценка нормы оператора Rn п. 2) сразу следует из B0). Утвержде- Утверждение п. 4) леммы является следствием оценки п. 2) и отношения sup ( Да| ... " a(a + Да) Лемма доказана. Лемма 4 гарантирует разрешимость и единственность решения урав- уравнения Эйлера E) для любого us € U. Покажем, какие дополнительные свойства приобретают в этом случае функции p,r,(a), Фт,(а), 0т,(а), уп(а). Лемма 5. Пусть D = Z. Тогда функции Фп(а), yv(a), @v(a), p1^(a) кроме свойств, перечисленных в лемме 3 и ее следствии, обладают сле- следующими свойствами (рис. 1.1). 1. Они непрерывно дифференцируемы при а > 0 (Рт,(а) непрерывно дифференцируема, если zn ФО), причем = -7; (а) (а + Д__ + h\ ф; (а) = 7; (а). ^ У7т,(а) / B1) 2. Функции ФГ](а), 7г)(а), ид интервале @, а0) таком, ункции ФГ](а), 7г)(), Рг)() Р^() что гц" Ф 0, строго монотонны, причем достаточным условием строгой монотонности функций при всех а > Оявляется условие (8). 3. Фун кцмя Вт, (X) = 0т, A/Х) выпукла по X при X > 0. Доказательство. Для доказательства п. 1 заметим, что из п. 2 леммы 3 следует, что достаточно найти y'v(a). Зафиксируем a > 0 и рас- рассмотрим такие приращения Да, что а + Да > 0. Обозначим Дг " = zn - 26 К Рис. 1.1. Функции условие (8) Са), 7т)(а). 0т)(а) и p^(a) в случае, если D =Z и выполнено -zn. По утверждению 4) леммы 4 || Az% || -> 0 при Да ->0. Запишем урав- уравнения Эйлера, соответствующие а и a + Да: =AhuS> Вычитая эти равенства, получим Дг? = -Aa(A*hAh + (a 4 Рассмотрим теперь разностное отношение Azri) - (zrj, zrj) Да Да Да Да Следовательно, \{A*hAh + {a + ba)Erlzl 7т, (а + Да) -7т, (а) Да -2((A*hAh z") при Да ->¦ 0. При этом мы воспользовались непрерывностью Rn no a и огра- ограниченностью Rv как линейного оператора из Z в Z. Формула B1) дока- доказана. Так как Rv - положительно определенный оператор (лемма 4), то 7т,(а) < 0 для любого а е @, а0], где z"" Ф 0, т.е. 7т,(а) (а также Фт,(а), 27
(^(a), pn(a)) строго монотонны на интервале @, а0]. Для завершения доказательства п. 2 заметим, что поскольку U — гильбертово пространст- пространство, то оно представимо в виде прямой суммы двух ортогональных под- подпространств [90] : U = A^Z ®КегЛ*. Поэтому «5 однозначно представимо в виде щ = и§ + wg, и§ S Кет А^, W8 *= ^л^> причем (Mr,(«5,^)J= inf \\Ahz-us\\2 = \\w8-us\\2 = \\vb\\2. г ez Если zn = 0, то из уравнения .Эйлера следует, что A*hи& = 0, т.е. щ е Кег Л^, «8 = и6. Следовательно, если ||«s||2 > 52 + (ц^(и&, Ah)J = 52 + + (II v& || + кJ, то zn не может равняться нулю ни при каких a > 0. Пункт 3 доказывается с помощью замены переменной a = 1 /X и непосред- непосредственным вычислением второй производной функции РчA/Х) способом, аналогичным вычислению первой производной функции 7т, (а) • Следствие. Если D - Z, то а.*, которое определяется согласно обобщенному принципу невязки рп(а*) = 0, единственно. Замечание. Производные функций Фт,(а), 7т,(а)> Ptj(а) были вычислены в работах [135, 136] в конечномерном случае с помощью раз- разложения решения уравнения Эйлера E) по собственным векторам матри- матрицы Af,Afi. Там же была отмечена выпуклость функции ^(Х) = (^(l/X) по X, что позволяет решать уравнение 0т,(X) = 52 для выбора параметра регуляризации по принципу невязки (й = 0) методом Ньютона. Рассмотрим подробнее вопрос об отыскании корня уравнения A9) в случае D = Z. В этом случае pn(oi) — строго монотонно возрастающая (если выполнено условие (8)), дифференцируемая функция при a > 0, причем если h = 0, то функция сГт,(Х) = рпA/\) — выпуклая. Для реали- реализации поиска корня уравнения A9) желательно иметь оценку сверху для параметра регуляризации а*, т.е. такое значение параметра a > a*, что Рт,(о) > 0. Отметим, что оценка сверху параметра регуляризации при выборе его по принципу невязки (А = 0) была получена для уравне- уравнений типа свертки в работе [56], а затем была обобщена в работе [38]. Для простоты будем считать, что AhZ = U, т.е. цп(и6, А^) можно поло- положить равным нулю (случай 1лп(и&, Ah) > 0 рассматривается совершен- совершенно аналогично с заменой 5 на 5 +|ит,-(м5,у4/,)). Лемма 6 [38] . Пусть D = Z, z% Ф 0. Тогда справедливы неравен- неравенства \\Ah\\\\Ahzan-ub Ah\\2\\Ahzn-ub\ -м6 B2) B3) 28 Доказательство. Поскольку z% - экстремаль функционала Ма [z], то на элементах вида A -y)z^, у € (— оо, +°°), функционал Ма [z] достигает минимума при у = 0; следовательно, для любого уЕ (— оо, +оо) 0<Ma[(l-y)z°]-Ma[z°]. Оценим сверху Ма[A - 7) г^ ] при 7 ? [0,1]: II2 «О - т) - us ) 7(| ft Отсюда 0<Ma[(l-y)z*] - Сокращая полученное неравенство на у>0 и устремляя у к нулю справа, получим ^ lAhz*UAhz*-usl llz«l|2 откуда легко следует B2) . Остается заметить, что llz?ll> \\Ahz% II/ \\Ah II > A1м5 II - - II Ahz% -м5 II)/ II Ah II и что II us II > \\Ahz^- us II, ибо в противном слу- случае получим Ма [0] < Ма [z^ ], что противоречит условию z^ Ф 0. Подстав- Подставляя в B2) оценку снизу для z^, получим B3) . Следствие. Если «= 1иЛ112С5 II ug II-С5 С= const B4) го (Зт,(а)>С252. Действительно, если 0п(а) =С252, то, подставляя ИЛ^г" — м§ II = С5 в B3), получаем верхнюю оценку а параметра регуляризации при выборе его по принципу невязки (h = 0). Если С=\, то уравнение ^(а) =52 может иметь решение и при а = 0 [36], что показывает отсутствие оценки снизу для а без дополнительных предположений. Лемма 7 [202]. Пусть точное решение уравнения A) есть ТФО, 11и6-4г"|1<8 и 11м511/5>С>1, С = const, для всех 5€ @, 50]. Тогда *< ,где a = - 1 / а определяется формулой B4). Доказательств о. Из B2) имеем II 7 а 29
Для оценки снизу ционала Ма [z ]: 0<С282 <pn( = E + h IIzf IIJ Отсюда следует, что воспользуемся тем, что z% - экстремаль функ- функ=(/i2 + S)\\z«*\ C2-l V^+(c2- .. Подставляя оценку для llz^*ll в оценку для а*, получим утверждение леммы. Рассмотрим подробнее вопрос реализации метода Ньютона для решения уравнения A9) . Вообще говоря, метод Ньютона применим лишь в случае начального приближения, достаточно близкого к корню а* уравнения A9) (поскольку (р!^(а))'>0 и существует (р^(а))" , непрерывная при а>0 [91]). Функция о^(Х) =р^A/Х) выпукла по Х>0, если h = О, поэтому итерационный процесс метода Ньютона удобно строить по формуле , и = 0,1,..., или B5) В качестве начального приближения а0 можно взять a, указанное в лемме 7. Если h = 0, то последовательность а„, получаемая по формуле B5) , будет сходится к а* (в этом случае в качестве начального прибли- приближения а0 естественно взять а из B4) при С = 1) . При h Ф 0 гарантировать сходимости итерационного процесса нельзя. В этом случае при реализа- реализации решения уравнения A9) можно рекомендовать применение методов деления отрезка пополам или хорд [91], или комбинации этих методов с методом Ньютона. Методы отыскания корня (если он существует) обоб- обобщенной невязки pv(a) = \\Ahz%—us\\2 — E +Allz"llJ аналогичны. Заметим, что для отыскания экстремали сглаживающего функционала (или его конечно-разностной аппроксимации) при фиксированном а>0 можно вместо решения уравнения Эйлера воспользоваться каким-либо методом минимизации дифференцируемого выпуклого функционала в гильбертовом пространстве (методом скорейшего спуска, сопряженных градиентов, Ньютона и т.п.) . Подробное описание этих методов можно найти, например,в работах [32,33,93,144, 146,152,191, 192]. Рассмотрим теперь случай D Ф 2. В этом случае уп (а) , /3 ^ (а) , р^ (а) не являются, вообще говоря, дифференцируемыми функциями для лю- любого а > 0. Выбор параметра регуляризации также может проводиться по обобщенному принципу невязки, т.е. из решения уравнения A9), однако для поиска корня уравнения A9) необходимо применять чис- 30 ленные методы, не требующие вычисления производных функций р^(а), такие как, например, метод хорд, метод деления отрезка пополам. При этом для отыскания z"S D при фиксированном а>0 необходимо приме- применять градиентные методы минимизации сглаживающего функционала с ограничениями [43, 145]. Некоторые алгоритмы численной реализации обобщенного принципа невязки для задач как без ограничений, так и с простыми ограничениями будут рассмотрены ниже. В настоящей работе мы совершенно не касаемся вопроса о решении неустойчивых экстремальных задач, рассматриваемого, например, в рабо- работах [14, 28, 33, 111, 117, 137, 171-173, 179]. В стороне остались также вопросы применения регуляризованных ньютоновских, квазиньютонов- квазиньютоновских и других итерационных методов [1, 15, 16, 30, 31, 44, 45, 80, 81, 154,187,188]. § 5. Конечномерная аппроксимация некорректных задач При решении некорректных задач обычно необходимо аппроксимиро- аппроксимировать исходную, чаще всего бесконечномерную задачу некоторой конечно- конечномерной задачей, для которой и будут разрабатываться вычислительные алгоритмы и программы для ЭВМ. Мы рассмотрим вопрос о переходе к конечномерной аппроксимации на примере интегрального уравнения Фредгольма первого рода. Мы не будем останавливаться на том, какие условия должны быть наложены, чтобы гарантировать сходимость конечномерных экстремалей аппрокси- аппроксимированного сглаживающего функционала к экстремали исходного функ- функционала Ма [z] при неограниченном увеличении размерности конечно- конечномерной задачи [90]. Можно рассматривать переход к конечномерной аппроксимации как внесение дополнительной погрешности в оператор и применять некоторую модификацию обобщенного принципа невязки [61]. В дальнейшем будем считать, что размерность конечномерной зада- задачи выбрана настолько большой, что погрешность аппроксимации опера- оператора А уравнения A) значительно меньше погрешностей h и 5. Рассмотрим интегральное уравнение Фредгольма первого рода: ь Az = fK(x,s)z(s)ds = u(x), c^x<d. B6) а Будем предполагать, что К(х, s) — действительная функция, непрерыв- непрерывная в прямоугольнике n={a<s<i,c<JC<G?}. Будем также считать для простоты, что ядро К невырождено. Пусть вместо и = A~z нам известно такое ее приближенное значение и§ , что II м$ — 17 11^з <5, т.е. U= Z,2 [c,d]. Пусть из априорных соображений можно считать, что точное решение 2~(s), соответствующее п~(х), есть гладкая функция на [а, Ь]. Например, будем считать что T(s) непрерывна на [а, Ь] и имеет почти всюду про- производную, интегрируемую на [а,Ь] с квадратом. В этом случае естественно положить 2 = W\ [а, Ъ ]. Пусть вместо K(x,s) известна такая функция AT/,(x,s), что I К И/.2(п) ^h. Тогда \\А — Ан\ ц/' <A, где Ah — интегральный оператор, соответствующий ядру Kh (x,s). 31
Используя стандартную схему построения регуляризируюшего алго- алгоритма, мы получим приближенное решение z™*1" € Z = W\ [a, b ], которое при т?->0 сходится к z" в норме пространства W\ [a, b] .Из теоремы вложе- вложения Соболева [153] следует, что z^1^ при т?->0 сходится к Y равномер- равномерно на [а,Ь] ,т.е. max |z^(T))(s)-F(s)|—> 0. В описанной постановке функционал Ма [z] для задачи B6) имеет вид Ma[z] = = Г s)]2}ds. B7) При построении конечно-разностной аппроксимации для простоты будем исходить из выражения B7) для сглаживающего функционала. Для этого прежде всего выберем сетки {$/}"= j и {jc,-}m_j соответст- соответственно на отрезках [а, Ь] и [с, d]. После этого, пользуясь каким-либо квадратурными формулами, например формулами метода трапеций, можем построить конечно-разностный аналог оператора А интегрального урав- уравнения B6). Конечно-разностный оператор (который мы также будем обозначать через A: R"^-Rm там, где это не вызывает недоразумений) является линейным оператором с матрицей А = {д(/}. Простейший вариант аппроксимации, которым мы будем пользоваться в дальнейшем, дается формулами ац = Kh (х/, Sj), j = 2,... , n - 1; au = Kh (x,-, s/)/2, / = 1, и; i = 1,2,..., m. Для завершения перехода к конечномерной задаче теперь достаточно аппроксимировать интегралы, входящие в квадраты норм в пространст- пространствах W\ и L2 .Будем считать для простоты, что сетки равномерны с шагами hs и hx. Обозначим z (sf) -Zj, u$ (jc,-) =м,-. Используя для аппроксимации s x f) j ( интегралов формулы прямоугольников, получим d b m n f[fKh(x,s)z(.s)ds-u8(x)]2dx* 2 [ 1Laijzjhs-ui\2hx; с а / = 1 / = 1 ] [z'(s)]2dS {Zj-Z;_{flhs. Теперь можем легко выписать условия минимума по переменным Zj, j = 1, 2,. .. ,п,функционала л т п Ma[z] = S [S aijZjhs-Uifhx* i / i / = 1 / = 2 32 аппроксимирующего B7): п от hxhs 2 [2 aikai] к = 1 ( = 1 п от hxhs 2 [2 анац] zk k=l i=l +ahsz1 -a „ 7 A. / = l = 2 ацщНхН,, / = 2,3,... ,и- 1; n m s 2 [ 2 к = 1 ( = l ~a 1 = 2 ainUihxhs. Обозначим hx 2 Д;а:д// =bjk, bjk — элементы матрицы В, 2 ay <¦ = i компоненты вектора /. Таким образом, мы приходим к задаче решения системы уравнений Baz =Bz+aCz=f, B8) где г 1 1 + 1 hi 0 1 hi 1 ~ hi 1 + 0 2 0 . . l 0 . . 0 0 1 ¦ ~ aT 0 0 1 1 + — ti С= - - Заметим, что если рассматривать оператор А интегрального уравнения B6) как действующий из L2 [я, Ь] в i2 [с, d) (информация о гладкости точного решения z~(s) отсутствует), то сглаживающий функционал при- принимает вид и уравнение для его экстремали после перехода к конечно-разностной аппроксимации записывается в форме B8) с матрицей С=Е =  0 0 0 1 0 Lo о о 0 0 0 0 о i К системе уравнений B8) можно прийти, исходя из уравнений Эйлера hAhz -A^Uf, + olz - 0 в W\ [a, b]. Здесь Ah - оператор из W\ [a, b] в 2. А.Н. Тихонов 33
zk 1,0 0,8 0,6 0,4 0,2 0\ 0,2 0,4 0,6 0,8 1,0 s a 0\ 0,2 0,4 0,6 0,8 1,0 5 6 1,0 0,8 0,6 0,4 0,1 0 - : \J \ :j \ -V \ *• Л i , i . i i i . \i , 0,2 0,4 0,6 0,8 1,0 S 8 Рис, 1.2. Результаты модельного расчета с помощью решения уравнения Эйлера и вы- выбора параметра регуляризации по обобщен- обобщенному принципу невязки при следующих уровнях погрешностей: a) h2 = 100, S2 = 10 ° б) h1 = 2,24 X 10" в) Л2 =2,24Х 10' = 6,41 X 10" S2 = 3,14 X 10- L2 [а, Ь], А% — оператор, сопряженный к Ан, А^: 12 [с, d] -^W\ [a,b]. Используя свойства оператора А%: L2^W\ [165,181] и переходя в уравнении Эйлера к конечно-разностной аппроксимации, нетрудно вновь получить систему уравнений B8) . В качестве иллюстрации рассмотрим результаты решения модельной задачи для уравнения B6). Пусть я = 0, й= 1, с=-2, d=2; K{x,s)= 1/A + 100(x-sJ); T(s) = (exp { -(s - 0,3J /0,03 } + + exp{ ~(s - 0,7J/0,03 } )/10,9550408 - 0,052130913; n = m = 41. Результаты расчетов на ЭВМ с помощью численного решения уравнения Эйлера и выбора параметра регуляризации в соответствии с обобщенным принципом невязки при различных уровнях погрешностей приведены на рис. 1.2 (z^(s) изображена сплошной линией, приближенное решение точками). Л Для отыскания минимума функционала Ма [z] можно применять численные методы минимизации функционалов, например метод сопряжен- 34 Рис. 1.3. Результаты модельного расчета с помощью минимизации функционала Ma[z\ методом сопряженных градиентов при уровнях погрешностей h2 =2,24 X 10, 52 =6,87 X 10 О I 0,2 0,4 0,6 0,8 1,0 s ных градиентов. При этом можно рассматривать задачи с ограничения- ограничениями (D=?Z). Подробнее о применении градиентных методов см. гл. 3, здесь же приведем лишь результат модельного расчета. Пусть z~(s) = = exp{-(s — 0,5J/0,06}, ядро К(х, s) и Другие параметры указаны выше. Результаты расчета (рис. 1.3). § 6. Численные методы решения некоторых задач линейной алгебры Для решения системы линейных уравнений B8) можно использовать различные численные методы. При этом следует учитывать, что матрица Ва системы является симметричной и положительно определенной. Это позволяет использовать для решения B8) очень эффективные специаль- специальные методы. В качестве одного из таких методов можно предложить метод квадрат- квадратного корня [189]. Поскольку матрица Ва с элементами bf: вещественна, симметрична и положительно определена, то она представима в виде про- произведения матриц (Та)*Та,тце Та -верхняя треугольная матрица: 4-а 0 '12 ta '22 Чп о о . . . tann Элементы матрицы Та находятся последовательно по следующим фор- формулам : ta = i-l - 2 k = l .1/2 '"=2,3,. .. ,л; i = 2,3,..., и; - 2 : = 1 ta ta 'ki'kj B9) t?,=.°> i>j. 35
Система B8) принимает вид (TaYTaza=f. Введя обозначение уа = Taza, можно заменить уравнение B8) эквива- эквивалентно двумя другими: Каждое из этих уравнений решается элементарно, так как имеет треуголь- треугольную матрицу. В [189] приведены экономичные стандартные программы решения систем линейных уравнений методом квадратного корня. При отыскании корня невязки или обобщенной невязки систему уравнений B8) приходится решать неоднократно при различных а > 0. При этом матрица Ва системы B8) зависит от а. специальным образом, а правая часть вообще не изменяется. Это позволяет строить специальные экономичные методы многократного решения системы B8) (см. [41]). Пусть для различных а>0 необходимо решать систему уравнений Здесь Af, — действительная матрица порядка mXn, zR", u€ Rm, ш>и, С — симметричная положительно определенная матрица, А% — матрица, транспонированная к Ah. Пользуясь методом квадратного корня, по формулам B9) трехдиаго- нальную матрицу С можно представить в виде С = S *S (отметим, что мат- матрица S будет двухдиагональной). Сделав замену уа =Sza (za =S~1ya), получим Умножая это уравнение слева на E1) *, получим Представим матрицу D в виде D=QPR, где Q — ортогональная мат- матрица порядка тХт,R — ортогональная матрица порядкапХп,Р — правая двухдиагональная матрица порядка тХп (матрица Р имеет отличными от нуля лишь элементы Pu,Pi,;+\)- Для построения такого разложения дос- достаточно найти такие Q'1, R'1, чтобы матрица P=Q'1DR~1 была двух- диагональной. Матрицы Q'1 ,R~* можно искать, например, в виде Q'1 - Qn .. . Q2Q1, R'1 =R,/?2 . . Rn, где Qj,Rt — матрицы операторов отражения G=1,2,... ... , и) (см. [40]) , удовлетворяющие равенствам Q; = Q*= Qj1, Rj = R*= = R;1 (/=1, 2, ...,«). Тем самым Q = QiQ2 ¦ ¦ ¦ Qn, R =RnRn-i ...Ri- Матрицы Qj, Rj будем строить следующим образом. Пусть я, — первый столбец матрицы D. Матрицу б, будем искать из условия обращения в нуль всех элементов, начиная со второго, в первом столбце матрицы Q\D, т.е. если qj — строки матрицы Q, то (q/, а,) =0, / =2, 3, . .. , т; q/ G Rm. Матрицей, удовлетворяющей этому условию, будет являться матрица оператора отражения [40] с образующим вектор-столбцом (в, - Wajl) g ~ Be, -Ид, II/ II ' где / - вектор-столбец из Rm с координатами A, 0, 0, .. ., 0). Таким образом, Теперь матрицу Л, будем выбирать так, чтобы в (Q1D)R1 .во-первых, остались ненулевыми элементы первого столбца, начиная со второго, и, во-вторых, элементы первой строки, начиная с третьего, были нулями. Первому требованию можно удовлетворить, если искать R, в виде '1 0 ... 0 0 L0 Пусть Ъх - первая строка матрицы g,D без первого элемента, ?, € R". Тогда второе условие будет означать, что (й,, и,) = 0, и,- — столбцы мат- матрицы Я,, Vj € R" ~! (/ = 3, 4, . .., ri) . Следовательно, ражения с образующим вектором матрица от- ~_ 6,-116,117 II л-1 II А, - II Ьг 11/11 Но тогда Л, будет матрицей отражения с образующим вектором ( ~ ) = = /iA>€R". \А/ Далее, так же будем искать ?>,-, R,- в виде Г El'-» 0 1 Г ?(') 0 где Qj, R{ — матрицы отражения в пространствах меньшей размерности. Заметим, что производить перемножение матриц Qj и R{ для получения Q и R нет необходимости. Достаточно запомнить образующие векторы g-(') и /,(<) и результат действия операторов Qj и R{ на вектор w вычис- вычислять по формулам w-2?-(/> (?¦('">, w), RjW = w Итак, пусть найдены такие матрицы Р, Q, R, что D= QPR. Теперь в уравнении (D*D+ aE)ya =D*u сделаем замену переменных xa=Rya (ya=R-1xa) . Получим (R'P'Q'QPR + aE)R-1xa =Dmumn (P'P+ aE) X Xxa =RD*u=f. Матрица Р*Р трехдиагональная, и последнее уравнение без труда решается с использованием порядка п операций, например мето- методом прогонки [151]. Обратный переход от переменных ха к переменным za осуществляется оператором S ~1R'1. Однако этотпереходк переменной za часто нет необходимости делать при каждом а. Например, если h = 0 и вы- выбор а производится по принципу невязки, то необходимо только проверять условие \\Ahza - м|| = 5, которое эквивалентно условию \\Рха - Q*ul\ = 8, так как \\Рха -Q'uW = II Ahza -u\\. В гл. 4 рассмотрены программы, реализующие описанный алгоритм. 36 37
§ 7. Уравнения типа свертки Даже при решении на больших ЭВМ одномерных интегральных урав- уравнений Фредгольма 1-го рода размерности сеток по каждой из перемен- переменных не могут превышать 80—100 точек. Для уравнений типа свертки, которые будут рассмотрены ниже, оказывается возможным построить численные методы, позволяющие решать одномерные уравнения типа свертки на сетках более чем из 1000 точек, используя лишь оперативную память ЭВМ средней мощности. При этом учитывается специфический вид уравнений типа свертки и применяется преобразование Фурье (для не- некоторых других типов уравнений 1-го рода с ядрами специального вида эф- эффективно применяются другие интегральные преобразования, см. [82, 143, 178]). Разработка численных методов специально для уравнений 1 -го рода типа свертки началась в работах [53, 56, 156— 158, 178]. В настоящем параграфе будут рассмотрены методы решения одномер- одномерных и двумерных уравнений типа свертки. Рассмотрим часто встречаю- встречающееся в приложениях (примеры физических задач см. в [71, 178]) интег- интегральное уравнение 1-го рода Az= f К(х s) z(s)ds = u(x), —° C0) Пусть входящие в уравнение функции удовлетворяют требованиям К (у) G L, (-«>, +оо)п/,2(-«>, +«>), u(x)GL2(-°°, +оо), т.е. A: W\-+L2. Будем также предполагать, что ядро К (у) замкнуто, т.е. А — взаимно однозначный оператор. Будем рассматривать задачу C0) без ограничений (D = Z). Пусть некоторой функции ~п (х) соответствует единственное решение уравнения C0) — функция z~(s) G W\, причем известны не сама функция и~ (х) и оператор А, а заданные с известными погрешностями 5>0, h > 0 такие функция м§ (х) и оператор А/, типа свертки с ядром Kh (у) , что Рассмотрим сглаживающий функционал Ma[z] = \\Ahz-ub\\2L +a\\z\ wl Поскольку W\(—°°, +°°) — гильбертово пространство, то (см. §1) для любого а>0 и любого м5 GL2 существует единственный элемент z^(s), реализующий минимум функционала Ма [z]. Если выбор параметра регу- регуляризации производить по обобщенному принципу невязки (см. § 2), то z"*-11^) при т? —>0 стремится к точному решению уравнения C0) по норме W\. Пространство W\ [a, b] компактно вложено в пространство С[а, Ь] для любого отрезка [а, Ь] (см. [153]), поэтому z"(^(s) равно- равномерно сходится к F(s) на каждом замкнутом отрезке вещественной оси. Воспользовавшись теоремой о свертке, равенством Планшереля [23] и проварьировав функционал Ma[z] на множестве функций из W\, 38 I получим [3, 178] L(co) + a(co2 dco, где К? (со) = Kh (-to), L (со) = \Kh (со) 12 = КЦ (co)Kh (со) .. м6 (со) - фурье-образцы функций К,, (у) ,us (x); например, u6(to)= / us(x)eiuxdx. C1) a Kh(co), Если выражение для й5 (со) подставить в C1) и поменять пределы интегрирования, то z"(s) примет вид „a/^\= r is a _ \ (x\dx где ядро обращения Ка (t) имеет вид 2тг -о C2) (со) + а (со2 + 1) dec. Ввиду того, что обычно w5 (x) при решении практических задач имеет ограниченный носитель, интегрирование в C2) ведется лишь по области, где иь (х) отлична от нуля. Таким образом, для отыскания z"(x) при фиксированном а достаточно найти численно фурье-образ ядра Kh (со), а затем построить ядро обращения Ka(t), используя стандартные програм- программы вычисления интегралов от быстро осциллирующих функций, и при- применить формулу C2). Вопрос о выборе параметра регуляризации а рас- рассмотрен в § 2. Рассмотрим случай, когда решение и ядро уравнения имеют локальные носители. В этом случае уравнение C0) запишется в виде 2а Az= / K(x -s)z(s)ds = u(x), xG[Q,2a]; C3) A: W\[0, 2a]-+L2[0,2a]. Оператор А (ядро К (у)) может быть задан как точно, так и прибли- приближенно. Пусть выполнены следующие условия на носители входящих в уравнение функций: Г lz lz supp z(s)C \a — — , a + — suppK(y)C | —,- где а > 0, / > 0, /z > 0, 21 + lz < 2а (lz - длина носителя решения z (s)). Лемма 8. Пусть и(х) е A W\ [0, 2а], АФ0. Тогда решение C3) единственно. Доказательство. Достаточно доказать, что однородное уравне- уравнение имеет лишь тривиальное решение. Предположим, что это не так. Тогда найдется такая функция z (s) Ф0, что 2а J K(x-s)z(s)ds = 39
Поскольку К (у) и z (х) имеют локальные носители, то, доопределив указанные функции нулями на всей числовой оси и применив преобра- преобразование Фурье, получим где К(и>), z~(w) - образы функций К (у), z (s). Функции К (у) и z(s) имеют локальные носители, поэтому K(oj) и z(oj) — аналитические функ- функции (см. [23]) и, следовательно, z (s) = 0. Лемма доказана. В силу условий, наложенных на носители, после доопределения нуля- нулями функций z (s), и(х) на отрезке [0, 2а] и функции К (у) на отрезке [—а, а] их можно периодически продолжить с периодом 2а на всю вещест- вещественную ось, причем уравнение C3) после этого также может рассматри- рассматриваться на всей вещественной оси. Теперь введем равномерные сетки по х и s: xk~ sk= kAx, Ах = lain, к = 0, 1,.. . , п - 1 (в дальнейшем п предполагается четным). Аппроксимируем уравнение C3) для простоты по формуле прямоугольников: п — \ 2 К(хк- j.) z (S/) Ax = и (хк). i = o Обозначим ик=и(хк), Zj=z{sj), Kk^j = K(xk - s;) , T=2a. Опре- Определим дискретное преобразование Фурье [17, 125] для функции fk диск- дискретной переменной к (периодичной с периодом и: fk+n = fk У к): /m fk fk, к=0 А: = 0 m = 0, 1,. .., п - 1. Здесь com = mAoj, Aoj=2rr/T. Обратное дискретное преобразование Фурье имеет вид 1 и-1 ~ . П m =0 к = 0, 1,...,л- 1. Доказательство этого факта непосредственно следует из соотношения «-1 ., ... (и, если Л делится на и; 2 е2ж,(mk/п)-\ ' т = о I 0, если к не делится на п. Из этого равенства следует также равенство Планшереля, которое мы запишем для вещественных fk: и-1 1 л-1 _ 2 /!=- 2 \fm\2- к =0 П от =0 40 Точно так же легко получается аналог теоремы о свертке для дискрет- дискретного преобразования Фурье, а именно 2 ("? * =0 / = 0 = Дл"? Z f = 0 "т, z"T, Kfc . /=0 k=0 К е-г^тр1п) = AxzmKm. p=-j К j Здесь существенна периодичность Кр с периодом п. Запишем теперь конечно-разностную аппроксимацию функционала Ма [z] для уравнения C3) : Л 1 Я-*"СКГ1 V /V is А \2л i 1Ш/Й ~ ' I ^ I ^^ X ¦ У »1 ^ /\ "V* f f I /\ "Vе ^to iri [^ J — ?j \ ?j "k 1%г?лл — Mfc) tiJC т к = о / = о n-\ n-\ т a z, ztw + a z, (z [xk)) ax. к =0 A: =0 Здесь функция z (s) и значения zm связаны соотношением 1 n-\ П т =0 где zm - дискретное преобразование Фурье от zk. Тогда для коэффициен- коэффициентов дискретного преобразования Фурье вектора z\xk) будем иметь [133] И от =0 = iи>т 1т; к, т = 0, 1,... ,п — 1. Л Теперь функционал Ма [z], аппроксимирующий Ma[z], легко пред- представить в виде Ах "-1 ~ . Ma[z) =— П т =0 л Отсюда минимум Ма достигается на векторе с коэффициентами дискрет- дискретного преобразования Фурье [60] К'т ит Ах C4) Применяя обратное дискретное преобразование Фурье, находим г^(х) в точках сетки sk. Замечание. Можно предложить несколько иную аппроксимацию функционала М01 Ы — II Л 7 II II 2 + П II 7 II 2 , LZJ - "^Л z ~ И i2 [0,2а] + " I|Z " w\ [0,2а] > 41
основанную на другой аппроксимации выражения S2t = J (z' (s)Jds. о Аппроксимируем S2j выражением Дх 1 Дх п-1 п-1 2 | 2 Ах ЛТ 2 И (Д х) к = О И (ДхJ т = 0 ' к = О Ах 1 "-1 п ¦ , П (ДхJ т = О р = 1 Дх 1 I2 = п-1 - 2 П (Ах) т = О Ах 1 п—: 2 П (ДхJ m = О Дх I 1 - i2 = И га = О Ах П га = О Дх Дх sin 2 7TW sin Дх п При использовании такой аппроксимации в выражениях для экстремали C4), а также в приведенных ниже выражениях для функций рКп, Фп, уп, @п нужно заменить выражение 1 + ( — \ а 1 на 1 +( -—sin — ) . / \Ах п / Описанный выше метод допускает простую и быстродействующую программную реализацию, поскольку существуют методы быстрого пре- преобразования Фурье [207, 125, 193], для которых созданы стандартные программы [142]. При использовании обобщенного принципа невязки для выбора параметра регуляризации необходимы функции 7т)> ?г)> кото- которые в рассматриваемом случае могут быть вычислены по формулам Km\2(Axf\um |2 A + (пт/а)J /3» = и m =о [|?га|2(ДхJ+аA + (тгт Дх и-1 а2A + (пт/аJ)\ит \2 п (ДхJ +аA+(тгт/аJ)]: 42 Производная функция 7т)(<*) легко вычисляется по формуле 2Д^ »-1 \Km\2(AxJ\Um\2(l+(nm/aJ) (а) 2J ^(а) V m = 0 [\Km\2(Axf+oc(l+(nm/aJ)}3 Производные функций j3^(a), pKn (а) могут бьпь вычислены с помощью формул B1). Рис. 1.4. Модельная задача для одно- одномерного уравнения типа свертки z\ %о 0,8 0,6 ол 0,2 i ¦ 0,4 - - - -J 0 п д / 0,4 0,8 1,2 s В качестве примера применения описанных выше методов рассмотрим следующую модельную задачу. Пусть дано уравнение /tf(x-s)z(s) </s = «(*), х6[0,2], /:(>-) = ехр{-80(>'-0,5J}, о с локальным носителем @, 1), F(s)= ((exp {-(s - 0,3J/0,03} + + ехр{-(х- 0,7J /0,03 })./0,9550408- 0,052130 913I,4-х. Результаты расчета модельной задачи при уровнях погрешностей h2 = = 6,73Х10"9,52 =1,56Х 10 приведены на рис. 1.4. Рассмотрим теперь двумерное интегральное уравнение типа свертки Az= f fK(x~s,y - t)z(s,t)dsdt= u(x,y), C5) -°° < х, у < +°°. Пусть ядро уравнения K(v, w) и правая часть и(х, у) принадлежат 1-2 [(-°°, +°°) X (-°°, +°°)], а точное решение z~(x, t) GW5[(—°°. +°°) X X (—°°, +°°)]*), оператор А непрерьтен и однозначен. Пусть вместо точно *) Пространство W\ - пространство функций, имеющих обобщенные производ- производные второго порядка, интегрируемые с квадратом. Из теорем вложения [153] выте- вытекает, что из сходимости в норме W\ следует сходимость, равномерная на любом прямоугольнике [а, Ь] X [с, d]. Это и определяет выбор Z = W\. 43
известных что и и ядра К известны их приближенные значения м5 и Kh такие, " "б -"" И/,, < 5, IU -Ah II ^,2_ Lj < h. Рассмотрим функционал Тихонова Ma[z] = \\Ah-us l\ + aizPw,. Для любого а > 0 существует единственная экстремаль функционала Тихонова z™, реализующая минимум Af*[z]. При выборе параметра а = = а(т?) по обобщенному принципу невязки (см. § 2) z°^ стремится при т? -»• 0 к точному решению задачи в норме W\, а следовательно, [153] и рав- равномерно на каждом прямоугольнике [а, Ь] X [с, d]. Как и для одномерных уравнений, легко выписать экстремаль функционалаМа [z]: 1 za(s,t)= — где ?* (to, ?2) =*,, (-w, -ft) ,L (w, ?2) =| *Л (w, ?2) I 2 ,?„ (со, ?2) , щ (ы,?2) - фурье-образы /СЛ (и, w) и и& (х, у), определяемые как = 7 dvdw. Можно выразить z^(x, t) в виде, аналогичном C2) : z*(s,t)=+j / Ka(x-s,y ~t)us(x,y)dxdy, где Будем теперь рассматривать случай, когда точное решение z (s,t) и ядро К (v, w) имеют локальные носители: supptf (u,w) С [l1)Ll] X [12,L2], supp 7(s,r) Q [fl,^] X [Z>,jS]; тогда для ~п (х, у} имеем supp п (х, у) Q [с, С] X [d, D], где с = я + /ь С = = Л +Li,d=b + l2,D = B + L2- Будем считать, что приближенная правая часть Ms (х, у) имеет локальный носитель [с, С ] X [d, D], а приближенное решение [а, А ] X [Ь, В ]. Аналогично рассмотрению, проведенному для одномерных уравне- уравнений, перейдем к уравнению 2R 2г I / K(x -s,y-t)z(S,t)dsdt = u(x,y), C6) о о в котором локальные носители z (s,t) и и(х, у) лежат внутри прямоуголь- прямоугольника [0, 2г] X [О, 2R ], а сами z и и доопределены нулями вне их носите- носителей на этом прямоугольнике. Проделав аналогичную процедуру с K(v, w), будем считать все функ- функции периодически продолженными (с периодом 2г по первому аргументу и 2R — по второму) и рассмотрим уравнение C6) на всей плоскости. Введя равномерные сетки по (х, у) и (х, t) Xk = sk = k Ax, yi= tf = lAy; Ax = 2rjnx, Ay= 2R/n2; k = 0,l,...,ni-l; /=0,1,.. . ,и2 - 1 («i и п2 будем считать четными), и аппроксимируя уравнение по формуле прямоугольников, получим л, — 1 л2 — 1 2 2 Кк_т ,_jZmjAx Ay= ukh ra = 0 / = 0 где Ukl = u(Xk,yi), zmj = z(sm, tj), Kk-m,i-j = Kh(xk-Sm,y,-tj). Дискретное преобразование Фурье определим как 1тп = "'2 2 д/е-'"«**- '"пУ/, т = 0,1,...,и1-1; fc = 0 /=0 и =0, 1,. .. ,п2 - 1; я я сот = т А со; Дсо = - ; 12„ = и Д S2 ; г обратное преобразование имеет вид 1 л, -1 л2 -1 ^ Д,= 2 2 /B,e'u»J* + lC m = 0 л=0 к = 0, 1,. . . ,«! - 1; /=0, 1,. ..,п2 - 1. Двумерный аналог равенства Планшереля имеет вид л( — 1 л2 —I 2 2 а = о / = о а теоремы о свертке л,—1 л2 — 1 л,—1 л2 — 1 2 2 { 2 2 fc=0 /=0 р = 0 j - О п1 — 1 л2 — 1 2 2 ш = О л=0 АхАу; m = 0,l,...,ni-l; п = 0, 1,. . ., п2 - 1. 45
Запишем конечно-разностную аппроксимацию функционала Af [z] для уравнения C5): л, -1 л2 -1 «,-1 «2 -1 Г [z] = 2 2B 2 к = 0 1=0 р = 0 / = О 2 2 <z2 + к=о /=о( *' L dsdt bt2 Как и в предыдущем параграфе, получим b2z{sk ,t, Эх2 bt2 bt2 к ,т =0, 1,... ,«i-l; /, « = О, 1,... ,и2-1; а функционал Ма [z ] представляется в виде АхАу и,-1 и2-1 ^ ~ , Ma[z) = - 2 2 {\KmnzmnAxAy~umn\2 + «1«2 "!=¦ О л = О C7) Минимум функционала C7) достигается на векторе с коэффициентами Фурье К*тпитпАхАу __ m = 0,l,...,«i - 1; и = 0, 1,. ..,«2 - 1. Решение z^(s, t) на сетке (sk,t,) получается обратным дискретным преоб- преобразованием Фурье « = О л = 0 Как и для одномерных уравнений, выражения для функций /Зп(а), 7т,(«)^ Zk 4 в * 0,4 0,6 " 1,0 S ОЛУ " 0,2 0,4 0,6 0,8 в и а Р и с. 1.5. Модельная задача для двумерного уравнения типа свертки: а) сечение s = 0,28125; б) сечение t = 0,46875 рп(ос) и их производных по а могут быть получены без вычисления экст- экстремали z™. Приведем некоторые из них: АхАу «.-1 «1 = о производная по а для рп (а) =/3^(а) — E + h^Jyn (a) ) 2 есть т=о «=о 2 1 fmn |2 | итп |2 (Д х Д>02 .-// .- - i - ч—m -- ru л.- V 7т, (а) В приложениях к книге приведена стандартная программа решения двумерного интегрального уравнения от разности аргументов, основанная на технике быстрого преобразования Фурье с выбором параметра а по обоб- обобщенному принципу невязки. Приведен пример тестового расчета. Пусть дано уравнение 1 1 / fK(x-s,y-t)z(s,t)dtds = u(x, о о 47
с ядром К (. v, w) = ехр [-20[(и - 0,5J + (у - 0,5J ]}, 0<и, w < 1; K(v, w) = 0, (u,w)e [0, 1] X [0, 1]. Точное решение выберем в виде z(s,t)= ((ехр {-(«- 0,3 J /0,03} + ехр {-(х-0,7J/0,03})/ /0,955040800-0,052130913) X ехр{-(' - 0,5J/0,0 3}. Зададим размерность сеток пх = п2 = 32, уровни погрешностей 52 = = 6,3 X 10~7, h2 = 3,7 X 10'. Результаты приведены на рис. 1.5. § 8. Нелинейные некорректно поставленные задачи При решении нелинейных некорректно поставленных задач возникает ряд трудностей не только вычислительного характера. Основные утвержде- утверждения и теоремы § 1 существенно используют свойство линейности операто- оператора А. Для нелинейных операторов аналогичные результаты получаются с использованием схемы компактного вложения. Подробное рассмотрение методов решения нелинейных некорректных задач не входит в рамки данной книги, и мы ограничимся описанием двух подходов к решению нелинейных некорректных задач. Как и прежде, будем рассматривать уравнение Az = и, z S Z , u&U. Пространства Z и U будем считать нормированными, а оператор A: Z-*U— взаимно однозначным и непрерывным. Возмущенные операторы Ah также будем считать непрерывными. Кроме того, считаем, что II Az - Ahz\\ < < ф{п, Иг II), где 4>(h, у) — непрерывная по совокупности аргументов функция при h > 0, у > 0, монотонно неубывающая по первому аргумен- аргументу, неотрицательная и такая, что ф(п, у) => 0 при h -»¦ 0 равномерно по у на любом отрезке [0, С]. Пусть К - взаимно однозначный оператор, действующий из гильберто- гильбертова пространства 1в Z. Пусть К усиленно непрерывен, т.е. переводит слабо сходящиеся последовательности в сильно сходящиеся. Например, если X компактно вложено в Z, то К может быть оператором вложения. Пусть D - замкиутое выпуклое множество ограничений задачи, DQX. Будем предполагать, что Г е VD С Z. Как и ранее, считаем п =Аг~, II и - м$ i! < 5. Таким образом приходим к задаче AVx = u, AV.X-+U, xeD; C9) причем вместо п а А заданы их приближения. Оператор новой задачи А V вполне непрерывен и взаимно однозначен [29]. Рассмотрим экстремальную задачу: найти D0) inf 1Ы1, х е xv Vx-u& ф(Н,\\Ух II)}. Очевидно, что множество Хп непусто, так как содержит по крайней мере такую точку Зс", что z = Vx. Следовательно, эта задача эквивалентна задаче: найти inf llxjl , D1) х <Е Xn n S (О, R) где S @, R) - замкнутый шар в пространстве X с центром в нуле и радиу- радиусом R = II х~ II. Для того_чтобы доказать разрешимость задачи D1) достаточ- достаточно показать, что Хц П S @, R) - слабый компакт в X, а далее воспользо- воспользоваться тем, что выпуклый непрерывный функционал' fix) = II х II в гиль- гильбертовом пространстве X слабо полунепрерывен снизу, и применить теоре- теорему Вейерштрасса [33]. Лемма 9. Множество ХПГ\ S @, R) есть слабый компакт в X. Доказательство. Множество О П S @, R) непусто и ограничено, а пространство^ гильбертово, поэтому множества D П ^@,^?) и, следова- следовательно, Хп П S_J0, R) относительно слабо компактны. Докажем, что мно- множество Хц П S @,/?), слабо замкнуто. Пусть последовательность {хп} , хп& Xv Г\ S @, Я)_слабо сходится к х*е X. Так как Хп П ^@,^) QDD П S @, R), a D П S @, R) выпукло и замкнуто, то х*е ?>П J@,R). Из соотношения «Л„К;с*-"б II = 1ЫЙ Кх* -Ан Vxn+AhVxn -uB II < Vxn II) * ~AhVxn используя усиленную непрерьюность операторов V я AV и непрерывность 4>(h, у) по второму аргументу, после перехода к пределу получим \\AhVx* -us II < 5 + фф, II Кх* II), 48 т.е. x*eXvD J@,R). Замечание. Если 0 G D, но 0 ё Хп, т.е. II Лй КО - и6 II > 5 + + ф(к, II КО II), то задача D0) эквивалентна задаче: найти inf II х II, xS{x: xGD, \\Ah Vx-ub II = 5 + ф (h , II Kx II)}. Действительно, предположим, что эти задачи не эквивалентны. Тогда найдется решение хп е О задачи D0), удовлетворяющее неравенству II Ah Vxv - и& IK 5 + ф(к, II Кх,, II). Функция Ф(Х) = \\Ah Пх^ - иь II - б - - i//(A, II V\xn II) непрерывна и Ф@) > 0, а ФA) < 0. Поэтому найдется такое Х*е @, 1), что Ф(Х*) =0,но IIX*xn ll = X*Uxn IK IIх„ II, что противо- противоречит тому, что Хг, - решение D0). Итак, для любых h> 0,д> 0,us&U таких, что \\А Vx - иь II < 5, задача D0) разрешима. Обозначим множество решений этой задачи через Х^ ¦ Зададим последовательность т?„ -»• 0. Теорема 6. Последовательность хп, состоящая из произвольных элементов множеств Xv*, сходится к х~Е D по норме пространства X. Доказательство. Для любого цп справедливо неравенство II х„ II < II х II, а пространство X гильбертово, поэтому из последователь- последовательности х„ можно выделить последовательность х„., слабо сходящуюся 49
кх* = Dr\S (Q,R). При этом \AVx nk < *AHnJ*nk-' 1+ \\AVxnk-AhnVxn + Ъи6пк-и 1К2E„Л+ ф(кпк, II Vxnk II)). Последовательность хПк слабо сходится, поэтому последовательность II Ухп II ограничена: 0 < II Ух„к II <С. Переходя к пределу при к -*°° и поль- пользуясь свойствами функции \p(h,y) и усиленной непрерывностью оператора /1 К, получим WAVx* -п 11 = 0. В силу взаимной однозначности оператора А V справедливо равенство х* = х . Далее, так как II х II слабо полунепрерывна снизу, то т.е. \x* II < ]im IIx ll< lim II х„ II < Их II, lim \\х„к 11= IIЗГ Поскольку X — гильбертово пространство, то х„к -+х по норме прост- пространства X. Это верно для любой последовательности {х„к} ,поэтому lim xn = jc. п -» °° Замечания. 1. Поскольку АV усиленно непрерывен, то zn = Vxn сходится к Т — решению уравнения A) — по норме пространства Z. 2. Пусть оператор А V не является взаимно однозначным и X — мно- множество решений уравнения Л Кх = и , X QD. Применяя лемму 9 для случая /г = 0, 5 = 0, X = X, получим, что это уравнение имеет нормальное реше- решение 5с. Из доказательства теоремы 6 следует, что алгоритм отыскания приб- приближенного решения как решения экстремальной задачи D0) обеспечивает сходимость последовательности регуляризиров энных приближений к нор- нормальному решению. Обобщенный метод невязки к форме решения задачи D0) впервые был предложен в рэботе [58] для случэя D = X = W\ [a, b], Z = L2 [a, b], U = L 2 [а, Ь], V - оператор вложения, \p(h, у) = hy. В работе [204] исследо- вэнэ данная задэчэ при условии, что X — рефлексивное пространство. Отметим, что в описанной постановке, если отказаться от требования II мй — м" II < 5, м~6 A VD, задача D0) не является, вообще говоря, разре- разрешимой, поскольку множество Хп может быть пустым. Для построения приближенных решений некорректно поставленной задачи в случае нелинейного операторэ тэк же, как и в § 1, может быть применен функционал Ма. Впервые метод регуляризации для решения нелинейных зэдэч с использовэнием сглзживэющего функционала был применен в работах [167, 168, 182]. Рассмотрим вопрос о выборе пара- параметра регуляризации в нелинейных задачах при условии, что оператор А известен точно. При этом будем рассматривать регуляризатор конкретного вида. О других способах задания регуляризаторов в сглаживающем функ- функционале при решении нелинейных некорректных задач см. [178]. 50 Нетривиальность поставленного вопроса демонстрирует приведенный ниже пример, свидетельствующий о том, что в нелинейных задачах даже при отсутствии ограничений обычное поведение (непрерывность, строгая монотонность) таких функций, как невязка, не имеет места [62, 64]. В качестве пространства Z и {/выберем Z = U= R-пространство дейст- действительных чисел с естественной нормой II z IIR = | z |. Пусть а0 - положи- положительный числовой параметр, а г, и — фиксированные элементы из R, свя- связанные соотношением z = и j\fa0, и > 0. Рассмотрим нелинейный оператор А: Z -» Ц который задается следующим образом: гп, z< о, Az = (и2 ~а0 z2I/2, 0< z < F -й~2I/2, z> г". Легко видеть, что и = и соответствует единственное решение z G R. Пусть 5 - любое число, удовлетворяющее условию 0 < 6 <60 < II ~п IIR. Будем считать, что каждому значению погрешности 5 соответствует эле- элемент м5 = и S U. Рассмотрим функционал Ma[z] = \\Az -us llR + a Hz IIR. Нетрудно видеть, что в нашем случае экстремаль функционала Ма [z] определяется соотношениями z", 0< a < a0, 0, ao<a. Здесь z* — любое число из отрезка [0, z ]. Вычисляя невязку, получим 06 (а) = \\А z" -uh \2R = 0, 0 < а < а0, II2, ао<«- \\п\\2 Отсюда следует, что выбор параметра регуляризации по принципу невязки из равенства &(«)= ЪАг%-и6 IIR = 52 IIZII2 невозможен, каково бы ни было 5 > 0 из интервала .@, 50) . Этот простой при- пример показывает, что в случае нелинейных задач принцип невязки в форме j36 ( a) = fit ^ На рис. 1.6 изобра- ц^-,. = б2 неприменим. Рис. 1.6. Графики функций Ф6(а), 75 (а) , 06 (а) Для нелинейной задачи а 51
жены графики функций Ф6(а) = Ма [zf], 7б(°0 = II Z6 II2 и j36(a) для дан- данного примера. Итак, пусть дана задача C9), причем операторы А, V и пространства Z, X, U удовлетворяют условиям, перечисленным выше; о множестве D ? X дополнительно предположим, что 0 6 D. Оператор А будем считать заданным точно. Рассмотрим функционал Ма[х] = lAVx-uB II2 + a llx II2. Меру несовместности уравнения C9) на множестве D определим как Мб ( ,А)= inf \AVx- us II. х е d Как и в § 1, будем считать, что нам известно приближение цк8(щ,А) меры несовместности /х§ с точностью к > 0. Точность к будем считать согласованной с 5 таким образом, что к E) -»0 при 5 -*0. Лемма 10. Для любого us G Uu любого a > 0 задача: найти inf е D Ма[х] разрешима, т.е. множество экстремалей Х% Ф ф. Доказательство этой леммы фактически дано в работе [168]. При рас- рассмотрении задачи с ограничениями необходимо учесть, что множество D П П S @, R) для любого R > 0 слабо компактно, так как X - гильбертово пространство, а D выпукло и замкнуто, и необходимо воспользоваться непрерывностью оператора А V, действующего из слабой топологии прост- пространства X в сильную топологию пространства U, а также слабой полунепре- полунепрерывностью снизу функционала Их II2. Пусть Q — оператор выбора, сопоставляющий множеству экстремалей X" фиксированный элемент*" € X": QX" =x" G X*. Как и в§ 4, рассмот- рассмотрим вспомогательные функции Ф6(а) = \\AVxas-u6 II2 + a II х^ II2, 76 (а) = ps{a)=lAVx$-ub Лемма 11. Функции Ф6, 7 6. Рь обладают следующими свойствами. 1. Функция Фб (а) непрерывна и вогнута при а > 0. 2. Функция 7б (а) монотонно не возрастает, а функции Ф6 (а), /36 (а) монотонно неубывают при а > 0, причем на интервале @, а0) таком, что х" Ф 0 для любого a G @, а0), функция Ф6 (а) строго монотонна. 3. Справедливы следующие соотношения: lim -> + оо 76 (а) = lim Ф6(в)= lim a ys (a) = 0; a -* 0 + 0 a76(a)=0; j36(a)= \\AV0-us II2 =v\; lim Ф6 (a) = lim j36 (a) = (ju6 (и6 , A )J. 52 Доказательство аналогично доказательству соответствующих пунктов в лемме 3 § 4. Заметим, что если 5с G D, IIA Vx - м5 И<6, то ju6 (м6, Л) <5. Будем считать, что 5 G @, 50] E0 фиксировано) и выполнено естест- естественное условие v& = \\ AVQ - и& II > 50 + цк&(и&, А). Пусть число С, не зависящее от 5, удовлетворяет соотношениям КС < D2) Для данных Си Ms введем в рассмотрение множества [64] Al={a: a>0, Cs(a)> E+ Мбк (ид, А )J}; Л2 ={a:a > 0, Д6 (а) < С2 E + ^ь(иь,А)J}; В\ ={ос. a>0, ^6(a)< E+ ^(u В2&={а: ос>О, С2E+ я*{иь, А Лемма 12.Множества А\ , А\, В\, В\ непусты. Доказательство. Справедливы следующие утверждения: А\фф,тяккяк. lim 06(а) = f2, >С2E + ju? (м6, Л)J; a —»¦ + °° А\ Ф ф, так как lim j36 (a) = (ju6/«6, Л )J < С2 E + м? («6, А)J a -> 0 + О , так как lim а -•¦ О + О (us, А)J , A)J; 2; lim Ф6 (e) = i'| > С2 E + ju? (и6> А Все эти предельные соотношения доказаны в лемме 11. Лемма 13. Множество Е& = {А 1Ь П А \ ) U №§ П в\) непусто. Доказательство. Пусть Л§ П Л2 =0. Тогда выбор а по принципу невязки из неравенства E + juK6 (м6, А)J < /36 (a) <C2F +ju§(m6>v4)J невозможен. Покажем, что в этом случае В\ <^В\ Фф. Для этого заметим, что поскольку 06 (а) монотонно не убывает при a > 0, то найдется такое a* = sup {а: а > 0, 06 (в)<F + м? («6 ,А))г) = supB\, что а* > 0. Причем по предположению шп &(«) < E+ Мв("б,Л)J,- а -> а - О lim 06(а)> С2E+ дИ"б.^)J- а ->¦ а* +0 53
Но тогда в силу непрерывности Фй (а) и в силу предельных соотно- соотношений lim а -» а * + 0 , А)J+а* \\xf (последнее неравенство верно, если Jt§ ф 0), й, А)J< С2E+цк(и8! А)J, lim а -* 0 + 0 можно утверждать, что В\ П В \Фф- Если же .v" = 0, то Х^ ={0) и Ф6 (а) = /35 (а) = v\ для всех а > а* a поэтому lim Ф5(а)= Ф6(а*)=^2 > С2 E + иЦиь, А)J ¦ а -> а* + О Сформулируем теперь альтернативный принцип выбора параметра регуляризации: пусть м = A Vx, х G ?), II и - мй II < 5 -*¦ О при 5 -»0 и пусть выполнено D2). Тогда в качестве приближенного решения C9) будем выбирать хь =х" G X", где aG ?5 . Теорема 7. Пусть §„, к „ -> 0 при п -> °°. Тогда xs -* х, a Кхй -*¦ -* z = V х сильно в норме пространства Z. Доказательство. Если а,, Е /l'6 П Л2 , то в силу экстремаль- экстремальных свойств ха справедливо E„ + р.к" (иЬп , А)J + а„ II хЬп \\2 < < \\AVx&n-ubn II2 + а„ \\хЬп\\2 < < WAVx -ич <(б„ + //;_(< и,следовательно, + а„ II Зс II2 < 52 + а„ II х )J + an\\ х II2, < IIjc6 II < II х Если а„ B\ , то < (8„+ м^" ("й„,/1)J+й„ Их II2. Из этих неравенств получаем с2 - 1 ~ .. .., c2-i < а„ \\х II2 54 откуда С2 Таким образом, последовательность {хй } относительно слабо компакт- компактна. Далее, поскольку в обоих случаях " п п ьп п при п -> °° и оператор /1 К усиленно непрерывен, то, как в теореме 1, ел _ а- . Следовательно, _ _ V х = z в норме пространства Z. Замечания. 1. Таким образом, z§ = Vxs можно рассматривать как приближенные решения уравнения A) с нелинейным оператором А. 2. Альтернативный принцип невязки означает, что если выбор а по принципу невязки j36 (а) = E + ju? (м6 , А)J оказывается невозможным (поскольку в соответствующей точке функция невязки /3§ (а) терпит раз- разрыв), то необходимо выбирать параметр регуляризации левее точки раз- разрыва согласно принципу сглаживающего функционала [120, 128, 138]. 3. В формулировке альтернативного принципа невязки можно по- положить /Ug(Ms, A) = 0, при этом теорема 7 остается справедливой [64]. Однако в этом случае выбор параметра регуляризации согласно альтерна- альтернативному принципу невязки гарантируется только для тех mj G U, для которых существует такое х G D, что IIA Vx - и^ IK 5. О выборе параметра регуляризации в нелинейных задачах см. работы [7, 46, 47, 154, 178]. Дальнейшее развитие конструктивные способы выбо- выбора параметра регуляризации в нелинейных задачах нашли в работах А.С. Лео- Леонова [112, 114—117], причем им был рассмотрен случай, когда оператор задан приближенно. § 9. Несовместные некорректные задачи Вернемся к постановке задачи, рассмотренной в начале § 1, но будем считать, что точное решение уравнения A) Az =u,rp,ez?DCZ,uG U, Z, U — гильбертовы пространства, при и = Л, возможно, не существует, однако существует элемент z & Z, на котором достигается минимум невязки: Д" = inf \\Az-u\\>Q z e D (Д— мера несовместности уравнения A) с точными данными и, А). Если Д~> 0, то такой элемент 7 = argmin \\Az - и II (IIА Г - м II = Ц, Y G D) назы- z e D __ вается псевдорешением. Если множество псевдорешений Z = { г: z G D, \\Az —lil = /I}состоит не из единственного элемента, то легко видеть, что Z выпукло и замкнуто, а поэтому существует единственный элемент z~ & Z, наименее удаленный от нуля. Такой элемент называется нормаль- нормальным псевдорешением; z = argmin II г II. D3) 55
Если псевдорешение г единственно, то будем считать, что г является также нормальным псевдорешением, а если д = 0 (уравнение A) совмест- совместно), то псевдорешение является решением A), а нормальное псевдореше- псевдорешение является нормальным решением. Будем рассматривать, как самую общую, задачу построения приближе- приближений к нормальному псевдорешению несовместного уравнения A) по приближенным данным {Ah, ы5> т)}; т? = F, А), 6 > 0, А > О, II «g - и II < < 6, II Af, — А II < А, рассматривая как частный случай рГ= О- Легко показать, что построенный выше (§2) алгоритм не является регуляризирующим в случае, если Д~> 0. Рассмотрим пример [100]: D = /JC\ = Z = U - R , г =[ ). Уравнение A) - система линейных алгебраических \У/ уравнений. Точная система имеет вид * = 0, [1 О] /0\ т.е. А = , п= [ ). х=1, Ll oJ 41/ Приближенная система имеет вид ау = 5, 2оу=1, т.е. Ah = 2a где I a I < \\A-Ah\\<h, us = ( V IIms-mII = 5, 5>0. Мера несовместности точной системы д = 1/ у/Т, нормальное псевдореше- /1/2\ ние г = 1 ). Мера несовместности возмущенной системы ц^ = = inf \Ahz - и5 II = 0 МаФ 0, 5 > 0, так как Ah соответствует невырож- Z денная матрица. Рассмотрим обобщенный метод невязки, состоящий в решении задачи (§ 3): найти inf II г II, n ={z: z&D, \\Ahz-us \\2<E+h II г IIJ или в данном случае z Zv ={z: (x + oy- -о- + оу-ЬУ +(х + 2оу- if <[S+h(x2 +y2)l/2]2}. Для достаточно малых /г, 6 Т ф. Zn, так как, предположив противное, приходим к неверному неравенству 1/2 < 5A — 5) + E + А/2J, правая часть которого сколь угодно мала. Легко видеть, что нельзя также указать элементы zn& Zn такие, что "zv -» Г при V ->0. Таким образом, решение, полученное по обобщенному методу невязки (а также по эквивалентному ему обобщенному принципу невязки), не сходится к Г при 5, h -* 0. Однако алгоритм, построенный в § 2, легко обобщается на случай не- несовместных операторных уравнений, если вместо меры несовместности приближенного уравнения ^„(ms, Af,) = inf ИЛ/,г — u^ll использовать z e d следующую оценку сверху для меры несовместности [35, 111]: К(иь,Аи) = inf {b+h\\zU\\Ahz-ub\\). D4) z e D Лемма 14 [35]. При сформулированных выше условиях ^ (us, Ah) > > Д", причем lim Дт)(мбМл) = Д"' Г) - 0 Доказательство. Поскольку для любых г S D Д- = inf \\Ahz-ub IK 11D -ЛА)г11 + 11м-ы6 II + то + Й/1Аг - м6 IK А II гII + 6 + IIЛлг - м5 II, Д"<, inf F+А II г 11+ IUaz-msII) = mT)(m Далее, пусть г е D таково, что WAz - и II = р". Тогда = inf E + A llzll+IUAz-MSii ZED аг -м61К б+А IIFII+ II (Л -Лл)г /Г <Mn(M6,v4A) = inf E + A ZED б +А ll IIufi - -п И<2E +А т.е. -Л отсюда следует второе утверждение леммы. Обозначим, как и ранее, экстремаль функционала B) Л/а[г] через г" и введем в рассмотрение обобщенную невязку [101] РЧ(«) = 1АН2* - щ II2 - F + А II z« D5) несколько отличающуюся от обобщенной невязки, введенной в § 2, в частности, jUt) заменена на ju^. Если цп вычисляется с погрешностью к ^ 0, то можно аналогично § 2 ввести обобщенную невязку р» - IUA4 -  II2 - E +А II ^ где Заметим, что в соответствии с леммой 14 ^ {us, ЛА) ^ М> так как к > 0, и juJ5 ("s > Ah) -* д при tj -> 0, если к согласовано с т? так, что к = к (т?) -» 0 при г? -* 0. Аналогично следствию из леммы 3 можно получить следующие свойства обобщенной невязки pj^ (a): 1) р^ (а) непрерывна и монотонно не убывает при a > 0; (а) = II м6 II2 - F + % ("s, ^А)J; 2) lim 3) fim" a -> О + 0 0, так как 57
4) пусть выполнено условие D6) D7) D8) причем элемент z" не равен нулю и определяется единственным образом. Сформулируем следующую модификацию обобщенного принципа невязки: по заданным ЫА, Mg, т?} вычисляется тогда найдется такое а* > 0, что р!5(«*) =о- Последнее уравнение эквивалентно уравнению \Ahzf -us\\ = 8+h\\zf\\ = inf F+А Hzll+ K; к>0, к=к к(т?)-*0 при tj -» 0 (подробнее о вычислении n^(us, Ah) см. ниже). Если условие D6) не выполнено, то в качестве приближения к нор- нормальному псевдорешению уравнения A) полагаем гv = 0. Если D6) выпол- выполнено, то находим а*, удовлетворяющее уравнению D7). В качестве при- приближения к нормальному псевдорешению уравнения A) полагаем zn=zf. Теорема 8. lim zn = z, где z — нормальное псевдорешение урав- ч-> о нения A), т.е. построенный алгоритм является регуляризирующим алго- алгоритмом отыскания нормального псевдорешения уравнения A). Доказательство. Если г~ = 0, то Им611= \\Az -п +п -и ? т.е. условие D6) не выполнено, и в соответствии с обобщенным принципом невязки zn = 0, следовательно, zn -»7 при т? ->0. Пусть теперь ~z Ф 0. Тогда II п II > Д" (предположение II1711 < /х противоречит определению меры несовмести- несовместимости, поскольку \\Az' - mII = II и! < дТдля z' = 0 G D, а предположение ИмII = ^противоречит тому, что z~ =? 0, а также единственности нормаль- нормального псевдорешения уравнения A) ). Поскольку 6 + ju^(m5, Ah) -> (ппри tj -» 0, D8) влечет выполнение условия D6), по крайней мере для достаточно малых tj. Как и при дока- зательстве теоремы 2, предположим, что z^ (n> ft- z. Это означает, что су- ществует такое е > 0 и такая последовательность щ ->0, что И z — z4* II > е, afc = a* (Vk) ~ решение уравнения D7). В силу экстремальных свойств zv? S D (zVk = zv* ) z4k - ич IP +a^ II z^ll2 < \\Ahkz - u5kf+a*k II z IP, 58 Ahkz4k откуда, используя D8) и результаты леммы 14, имеем hh \\zVk\\ znk - u&k\? + , Ahk)f hkznk zVk IP + hk II z И + Д"J + ct*k 11 z IP. D9) (Здесь используется неравенство \\Af,z - ms II = \\(Af, - A) z~ + п - Ms +AI - п IK <5+А llz 11 + Д\) Из D9) и строгой монотонности функции вещественного переменного f(x) = (А + ВхJ + Сх2 при* >0, А =дк +J> О, В =hk>0, C = a^>0 следует, что llz^lKllzll. E0) ел Считая, как и при доказательстве теорем 1, 2, что zVk -*z*,z* e D, получим неравенство ~~ E1) lim Пг„. IK lim Hz-. IK Hz* II. к - oo '* k -+ oo '* Теперь для того, чтобы завершить доказательство и прийти к про- противоречию с предположением в начале теоремы, остается доказать, что z*=z. Так как \\Azr.. - м IK5ft +hk \\zn. 11+ \\Ah.zn, - м6. IK д при rik -*¦ 0, то вследствие слабой полунепрерывности снизу II Az — "м II по z и определения меры несовместности имеем 1Ыг* — г7Н = "Д. В силу E1) и единственности нормального псевдорешения z* = Т. Далее, как и при доказательстве теоремы 1, из E1) следует, что llz^11 -> 11Г11; учитывая, ел что z Пк z и гильбертово пространство Z обладает //-свойством, полу- получаем zr)k ->Г. Теорема доказана. Замечания. 1. Подчеркнем, что описанная модификация обобщен- обобщенного принципа невязки является регуляризирующим алгоритмом в не- независимости от того, совместно исходное уравнение A) или нет. 2. Аналогично теореме 5 можно доказать, что данная модификация обобщенного принципа невязки эквивалентна обобщенному методы невяз- невязки, который в рассматриваемом случае состоит в решении экстремальной задачи с ограничениями: найти inf II z II, ze{z<=D, IUAz-M6IK5 A llzll} 59
О других подходах к решению линейных некорректных несовместных задач см. [45, 135, 138]. Обобщенный метод невязки может быть применен и для решения нелинейных несовместных некорректных задач, если соответствующим образом построить оценку меры несовместности [102]. Пусть выполнены предположения, сформулированные в начале § 8, а уравнение C9), вооб- вообще говоря, является несовместным. Пусть точным данным {А, п~} соот- соответствует мера несовместности Д" = inf \\AVx -пII, E2) х е d причем множество псевдорешений X ={х: х€Д WAVx -mII =у[)Фф. Аналогично доказательству замечания 2 к теореме легко показать, что в X существует непустое множество нормальных псевдорешений Хц={хн: х~н = argmin Их 11} = Argmin llxll. х е х х <= х Теперь по приближенным данным {Ah, и$, V} построим оценку сверху меры несовместности x e d {6 + ф(п, II Vx\\)+ \\AhVx -us\ E3) (требования к функции \jj(h, у) сформулированы в начале § 8). Лемма 15. При сформулированных в начале §8 условиях от- относительно пространств X, Z, U, операторов А, Ан и функции \jj(h, у) Mr, (us ,Ah)>Jx, причем lim Дг, («s > Ah) = Jx. Доказательство. Аналогично доказательству леммы 14 заме- заметим, что для любого х е D U = inf WAVx -u\\<\\AVx -п\\ = х е d = WAVx - AhVx + us -п +AhVx - us IK < ф(п, II Vx II) + 5 + II Ah Vx - us II. Отсюда /Г« inf E + ф(п, II Vx II) + \\Ah Vx ~ щ II) = ^(Mg ,Ah). x e d Далее, пусть x e X Q D, т.е. IIA Vx- м II =~Д. Тогда Д"<^(Ms, Ah) = inf F + фф, II VxII) + \\AhVx - щ II) < x e d Fx"ll)+ \\AhVx -M5II< п, II Vx\\)+ \\AhVx ~AVx 11+ Им - us II + + IU Fx - п II < 2F+^(A, II Vx Н)) + Д"-*рГ при г? -*0, что и доказывает второе утверждение леммы. 60 Если оценка меры несовместности вычисляется с погрешностью к > 0, то естественно рассматривать ju?j (us, Ah) : причем мы будем предполагать, что к = к (tj) -> 0 при tj -» 0. В этом случае лемма 15 справедлива и для ц.^(и^, Ah). Рассмотрим теперь экстремаль- экстремальную задачу: найти inf Их II хех E4) Xv ={x: х?Д \\AhVx-иь\\<Ь+ф(п,\\ Vx\\) + ?кп(и6,Ah)}. Очевидно, что множество Хп Ф Ф, так как содержит по крайней мере X 4= Xv. На самом деле, для любого элемента x€I? D \\AhVx -us\\= \\AhVx -AVx +м - us + AVx - м IK < ф(п, II Vx И)+ 5 +Д" <5 +ф(п, II Vx \\) + {l«(us,Ah)- Возьмем теперь произвольный элемент хн. Очевидно, хн S Хн Я X, поэто- поэтому задача E4) эквивалентна задаче: найти inf II х II, E5) xexnns (о, \\х~н И), где S @, И х"н II) - замкнутый шар в пространстве X с центром в нуле и ра- радиусом II хн II. Дословно повторяя доказательство леммы 9 (учитывая лишь, что в определении множества Xv участвует оценка меры несовместности ju^(ms, Ah)), легко показать, что множество Хп П S @, ИЗГНН) - слабый компакт в X а поэтому задача E5) разрешима. Обозначим множество решений этой задачи X *v ¦ _ Теорема 9. Имеет место ^-сходимость Хп к ХИ при tj ->0. Доказательство. /5-сходимость Х^ к Хн при tj^-О означает, что j3 — полуотклонение: Х„)= sup inf II х* - х„ II > 0. Доказательство теоремы проведем от противного. Пусть найдутся такие последовательность т?„ -> 0, элементы хТ)п е Х,*п и число е > 0, что II xVn - хн II > е для всех^н G Хн. Обозначим хТ)п = хп. Поскольку из E5) II х„ II < И хн II, а пространство X гильбертово, из последовательности х„ можно выделить подпоследовательность х„к, слабо сходящуюся к х* & S D П 5 @, II хн II). При этом "а -м IK 2E, К-пк = 61
Последовательность х„к слабо сходится, поэтому последовательность II Ух„к\\ ограничена: 0 < II Ух„к\\ < С. Переходя к пределу при fc-»°° и пользуясь свойствами функции фф, у), усиленной непрерывностью опе- оператора АV и леммой 15, получим 1ЫКх* -п~И = Д". Так как ,x*?D,to х*&Х. Далее II х II слабо полунепрерывна снизу, поэтому Их*И< ]im llxnfcll< Нгт7 х„к\\< 113сн т.е. х* ? Хн и lim к -> во, то lim хп. н и lim II хп . II = II х* II. Поскольку X — гильбертово пространст- = х ? Хи, что приводит к противоречию. Теорема до- казана. Следствие. Пусть нормальное псевдорешение ~хн единственно. Тогда х^ ->хн при т? ->0, гдехп - произвольный элемент множества X*. О применении обобщенного принципа невязки для решения нелиней- нелинейных несовместных некорректных задач с приближенно заданным опера- оператором см.работы [116, 117]. В заключении параграфа рассмотрим вопрос о вычислении оценки сверху меры несовместности jl^fus, Ац) при решении линейных некор- некорректных задач. Введем функционал Тогда = S+A ИгВ+ \\Ahz - us I й) = inf d E6) E7) Отметим некоторые элементарные свойства функционала ФТ)(г): 1) Ф,,^) — выпуклый непрерывный функционал; 2) Фт](г) — функционал,дифференцируемый по Фреше везде, кроме г = 0 и г =А'пхиь (если последний элемент существует); 3) если h > 0, то задача E7) разрешима, т.е. существует (возможно, не единственный) элемент гц е D такой, что fiv(us,Ah) =ФТ](г). Докажем последнее свойство. Рассмотрим последовательность г„ (и=1, 2, ...) zn?D, 4>v(zn)-> inf Фп(г). Тогда Ф^гп) <Фя(гt), и z 6 D задача E7) эквивалентна задаче: найти Hn(us,Ah) = inf Ф^г), zGDnS@,R), где S (О, R) — замкнутый шар с центром в нуле и радиусом R = \jh ¦ Ф^ (г,). Множество D П S (О, Л) — выпукло, замкнуто и ограничено, следовательно, из последовательности г„ ? ?) П 5@, R) можно выделить подпоследова- подпоследовательность znk, слабо сходящуюся к элементу г* ? D <~) S@, R). Посколь- Поскольку Фп(г„к) -> inf Фт,(г), а функционал ФгДг) слабо полунепрерывен снизу, то переходя к пределу при пк -+°°, получим Ф^ (г*) = inf Ф^ (г), z e d 62 Итак, задача отыскания ^(и^, А^) есть задача выпуклого программи- программирования, для решения которой имеются эффективные численные методы. В случае, если D = Z, алгоритм эффективной оценки меры несовместности предложен в работах [110, 111]. Опишем этот алгоритм. Лемма 16 [ПО]. Пусть h > 0. Для того чтобы минимум Фп(г) достигался на элементе гц = 0, необходимо и достаточно, чтобы выпол- выполнялось неравенство h IIu6 II> \\А*нщ\\. E8) Доказател ьство. Запишем ФгДг) в виде суммы ФтДг) = = Ф, (г) + Ф2(г), гделФ, (г) = \\Анг - щ\\, Ф2 (г) =/г11г11 + 5. Если иь = = 0, то очевидно, что г^ = 0 — единственная точка минимума ФТ](г), при- причем E8) выполнено. При w§ Ф 0, учитывая, что Ф! (г), Ф2 (г) — непрерыв- непрерывные выпуклые на Z функционалы, Ф] (г) дифференцируема по Фреше в окрестности г = 0 и Ф, @) = -A*h —— , то в соответствии с [110] г = 0 II иъ II является точкой минимума Ф,,^) тогда и только тогда, когда (Ф',@), г-0) + Ф2(г)-Ф2@)>0 V или Отсюда h II г I -) + h Иг 11 + 5 -5>0 VzGZ или E9) Максимальное значение правой части E9), очевидно, достигается при г =AhUs, что и доказывает справедливость леммы. Замечание. При численной реализации условие E8) легко прове- проверяется. Лемма 17 [ПО]. Если функционал Фт,(г) при h > 0 достигает ми- минимального значения хотя бы на двух разлитых элементах г,, г2 ? Z, то справедливы следующие утверждения: 1) уравнение Ahz = wg разрешимо; 2) минимум Фт](г) достигается на отрезке [0, г], где г — нормальное решение уравнения Ahz = w5: 3) min Фт,(г) = II u6 II + 5 = А II zll + 5. z e z Доказательство. Так как Ф-^iz) - выпуклый непрерывный функционал, то множество его экстремалей Zmin выпукло, замкнуто (см., например, [71]) и, как было показано выше, ограничено. По пред- предположению существуют г1; г2 GZmin,zt фг2- Для определенности будем считать, что г2 ф 0. В силу выпуклостиZmx n отрезок, соединяющий гх, г2, 63
т.е. [г,, г2] = { г: г = Хг, + A - Х)г2, X е [О, 1]} также принадлежит Zm,- n. Поэтому для любого X е [0,1] Фч(Хг! +A -X)z2) = min Фч(г) = z (E Z = 5 + А II Хг, +A -X)z2ll+ 11,4Л(Хг, +A -X)z2)-u6ll = = 5 + ХА Hz, ll + (l-X)Allz2ll + X \Ahzx - иь II + A -X) 1ЫЛг2 - щ I F0) Из последнего равенства и выпуклости II г II и \\А^г — «g II вытекает, что для любого XS [0,1] II Хг, +A -Х)г211 = Х11г, II + A - X) II г2 II, \\ЧАн*х -«б)+A -Х)(ЛЛг2 -м6)Н= F1) = XlU,,z, - щ II + A - X) \\Ангг -иь\\. Доказательство этих равенств легко получается от противного. Если предположить, что при некотором X* S @, 1) какое-то из равенств F1) не выполнено, то не будет выполнено и равенство F0). В силу строгой выпуклости гильбертовых пространств Z и U най- найдутся такие числа к # 1 и /J, что либо г, =кг2, Ahzx - иь = /3(ЛЛг2 -м6), F2) либо г, =кг2, Ahzl~u&-0 (т.е. /3=0). Во втором случае п. 1 леммы выполнен. Рассмотрим первый случай. От противного легко показать, что /J ф 1. На самом деле, пусть /3=1. Так как Фч(г1) = Фч(г2)> т.е. 5 + А II г, II + II Ah г2 - и& II = 5 + А II г2 II + II Ahz2 - «g II. Отсюда, учитывая /3=1, получаем I г 1II = | к | II г 2 II, т.е. | к | = 1 • Если к = 1, то получим противоречие с условием г, Ф г2. Если к = —1, то г, = = -г2, и из условий B) следует, что Ahz, = ЛЛг2 =0, т.е. г1; г2 е КегЛЛ. Но тогда г,, г2 S Zmin в том и только в том случае, если zx = г2 = 0, поскольку 1ЫЛг, - ий II = 1ЫЛг2 - и& II = llugll, а Иг, II = 11г2|| > 0. По условию же г j =? г2. Итак, /3 =? 1. Из F2) получаем г = (к-«г2/A-©, Анг=щ, $ Утверждение 1) леммы полностью доказано. Очевидно, что ws ф 0 (так как если «g = 0, то минимум Фт,(г) дости- достигается только при г, = z 2 = 0). Поэтому к Ф /3. Положим т = A — /3)/ (к — /?), t = кт. Тогда г2 =77, г, = ?г (еслиЛЛг2 =ц5)то берем г=г2, т = 1, г = к). Поскольку zt Фг2,т:о t Фт. Заметим, что Фг)(г1) = 5+/г II г, 11+ 1Лйг, - и6 II = = 5 + | Г | II г II + II tAhz - ШЬ + fti6 - «s || = = 5+|г| 11г|| + | г- 1| llugll. 64 Аналогично, Ф„(г2) = причем Bug И, Подставляя выражения для z,,z2 и\ = 1/2 в равенства F1), получаем, сократив на II г II ф О, II щ II Ф О, \t + r\ = \t\ +|т|, U-l+T-l| = |r-l| + |T- 1|, т.е. t, т (аналогично / — 1, т — 1) либо неотрицательны, либо неположитель- неположительны. Пусть сначала t > 0, т > О, Г - 1 < 0, т - 1 < 0. Тогда из равенства Фг,(г,) =Ф„(г2) следует A -г) IIм6 11 +гй Ilzil + S =A -т) Нм611 + тА11г11+5, т.е. (? - т)йИ г II = (t — т) II w§ II. Так как t Ф т, то отсюда вытекает спра- справедливость и. 3 леммы. Если t>0, т>0, t \>0, т - 1 > 0, то it- I) IIm6II + /AIIzII + 5 =(r-l) llugll + TAllzll + 5 или (t — T)h II г II = (г - t) II Ms tl> что невозможно, так как t Ф т, II г II > 0, II иь II > 0. Аналогично рассматривается случай t < 0, т < 0, t - 1> 0, т - 1 > 0, при котором справедлив п. 3 леммы, и случай г < 0, т < 0, Г - 1 < 0, т - 1 < 0, который невозможен. Итак, Ф^^) = All z II + 5 = min ФтДг). z e z Для завершения доказательства леммы осталось показать, что г — нормальное решение уравнения Ahz = и&. На самом деле, пусть г' — реше- решение уравнения Ahz = иь и II г' И< II г II. Тогда Ф„(г') = 5 +h 11г'11<Ф„(г) = 5 + А II г 11= min Ф (г), z e Z что невозможно. То, что отрезок [0,г| С Zmin, следует из равенства п. 3 Фч@) = 5 + II иь II = Фт;(г) = 5 + А II г II и выпуклости Zmin. Лемма доказана. Следствие. Если неравенство E8) не выполняется, то задача ми- минимизации ФТ)(г) иры /г > 0 имеет единственное решение zn Ф 0. В этом случае, если Ahzri Ф и^, функционал ФтДг) дифференцируем в точке znu zn является решением уравнения _ , _ A*hAhz - A*hub r г = 0. F3) В силу выпуклости Ф,Дг) условие F3) является и достаточным усло- условием минимума функционала ФпB) ¦ Лемма 18 [110J. Если условие E8) не выполнено, то задача мини- минимизации Фг)(г) эквивалентна задаче минимизации функционала Ма [г] 3. А.Н. Тихонов 65
B) с выбором параметра регуляризации из принципа наименьшей оценки невязки, т.е. выбирается а> 0 такое, что ф(а) = min Ф(<х), где функция а » О i//(a) определяется равенством ф(а) = \\Ahz^ - uh II + //II z" II. Доказательство. Из леммы 17 и условия E8) следует, что решение задачи минимизации Фп[г\ гц существует и единственно. Пусть Иг,,! = г > 0. Очевидно, что zv является единственным решением вариа- вариационной задачи: найти inf \\Ahz - иь? , llzll2 <r2. Как показано в [90], найдется такое а > 0, что zn будет являться экстремалью Л/а[г]. Так как zv — единственное решение задачи отыска- отыскания минимума Фт](г) на всем пространстве, то тем более zv является един- единственным решением задачи минимизации <&n(z) на множестве экстрема- экстремалей функционала Ма [г] при всех а > 0, т.е. ф(а) = min ф(а). Из непре- а > О рывности и строгой монотонности llz^ll как функции а (лемма 5) сле- следует, что значение а единственно. Заметим, что а = 0, если lim II z"ll = а — О + О = г = II гТ|11, и. как показано при доказательстве теоремы 3, в этом случае zn является нормальным псевдорешением уравнения Ahz = u&. Лемма доказана. В заключение параграфа докажем следующую теорему, в которой дается обоснование метода наименьшей оценки невязки. Теорема 10 [111]. Пусть h > 0. Метод наименьшей оценки невяз- невязки эквивалентен следующему принципу обобщенной невязки. Если выпол- выполнено условие E8), то полагаем zn = 0. В противном случае гц находится как экстремаль функционала B) Ма [z] с выбором параметра регуляри- регуляризации из условия минимума при а> 0 функции ф(а); при этом функция ф(а) непрерывно дифференцируема при а > 0, имеет единственную точ- точку а локального минимума, являющуюся также точкой глобального мини- минимума на [0, +°°); zn = г". Если а Ф 0, то а - единственное решение уравнения а II г" II = А IIЛ „г" - иь II. F4) Доказательство. Если выполнено условие E8), то в соответ- соответствии с леммами 16, 17 г^ = 0. Рассмотрим второй случай. Напомним, что г^ является решением уравнения Эйлера E) для функционала Ма [г], поэтому F5) AUb =-<<¦ соответствии с результатами § 4 (лемма 5) функция ф{а) = - us || + /z||z?j|| непрерывно дифференцируема при а > 0 и ее производная равна В а F6) Если ф(а) имеет стационарную точку (локальный экстремум), то ф'(а) = 0 и выполнено условие F4). Но учитывая F4), F5), получаем, что выполнено достаточное условие экстремума Фт,(г) F3), т.е. экстре- экстремали функционала Ма [z], соответствующие значениям параметра регуля- регуляризации а — решениям уравнения ф' (а.) = 0, являются экстремалями функ- функционала Фт)(г). По лемме 17 экстремаль функционала Фп(г) единственна, а в соответствии с леммой 18 существует единственное значение а > 0 такое, что а является точкой глобального минимума ф(а) на [0, +«>) и zn = г^. Таким образом, ф(а) не имеет локальных минимумов. Теорема доказана. Результаты теоремы положены в основу численного алгоритма, реали- реализованного на ЭВМ.
Глава II ЧИСЛЕННЫЕ МЕТОДЫ ПРИБЛИЖЕННОГО РЕШЕНИЯ НЕКОРРЕКТНЫХ ЗАДАЧ НА КОМПАКТНЫХ МНОЖЕСТВАХ В гл. I обсуждались общие вопросы построения регуляризирующих алгоритмов для решения широкого круга некорректных задач. В данной главе подробно остановимся на том случае, когда априори известно, что точное решение задачи принадлежит некоторому компактному мно- множеству. Идея такого подхода была впервые высказана еще в 1943 г. [164]. В [85-87] было введено понятие квазирешения как приближенного решения некорректной задачи на компактном множестве. Там же был доказан ряд теорем о существовании, единственности и непрерывной зависимости квазирешения от правой части. Можно указать достаточно общий подход для приближенного нахождения квазирешений [79, 87]. Построению приближенного решения некорректных задач на ком- компактных множествах посвящены работы [215, 216]. Здесь множество корректности — образ шара при отображении вполне непрерывным опе- оператором. Связанные с этим вопросы подробно обсуждаются в [90, 108]. В указанных работах множество корректности — некоторое абстрактное множество. На наш взгляд, представляют интерес две следующие задачи. Задача 1. Какой "качественной" информации о точном решении достаточно, чтобы выделить множество корректности? Задача 2. Как научиться эффективно решать некорректную задачу, если такое множество выделено? Для некоторых специальных задач (обратная задача теории потенциала, некоторые задачи теории аналитических функций) ряд интересных резуль- результатов по определению множества корректности был получен в работах [215,85,83, 84, 104-106,147,148]. В работах [74, 196] впервые было указано на то, что для широкого класса обратных задач математической физики, таких как обратные задачи геофизики, распознавания образов, диагностики плазмы, астрофизики, существует априорная информация о характере искомого решения (его монотонность, выпуклость и т.п.). Используя такую информацию, можно построить эффективные алгоритмы приближенного решения некоррект- некорректных задач [49, 54, 65-67]. Применение методов решения некорректно поставленных задач, осно- основанных на использовании априорной информации о поведении неизвестных функций, позволило для целого ряда прикладных задач получить сущест- существенные результаты [6, 18-22, 69, 70, 72, 124, 94, 200]. ?8 §1.0 приближенном решении некорректных задач на компактных множествах Рассмотрим некорректно поставленную задачу Az = u, zGZ, wGt/. A) Здесь г, и принадлежат некоторым функциональным нормированным пространствам Z [a, b], U [с, d], а оператор A: Z -* V непрерывен. Пусть, как обычно, вместо точных значений и = А г и А нам известны такие их приближения «5 и непрерывный оператор Ан, что || i/g — п || < 5, || A/,z - - Аг || < ф(п, || z ||) (см. § 8 гл. I). Если операторы А, А/, линейны, то ф(п, у) = hy. Пусть априори известно, что точное решение задачи z~ при- принадлежит некоторому компакту М, а оператор А взаимно однозначно отображает М на AM С U. Пусть, как и ранее, т? = {5, h). Определим множество Zд^ (т?) таких элементов zn G М, что \\Ahzn-ub\\<i>(hA\zn\\) + b (заметим, что множество Z 1,7G7) определяется заданием значений ц. А/,, иг,). Множество Zд/ (т?) для всякого ц > 0 непусто, так как содержит эле- элемент z . Лемма 1. Пусть zn — произвольный элемент множества Z\j (т?). Тогда zп-*1 в Z при rj-*O. Доказательство. Множество Л/ - компакт в пространстве Z, поэтому sup || г || = Со < + °°. :t-M Поскольку z^GZ^ G7), то справедлива оценка \\Azv-Az \\<\\Azr,-A,,zr,\\ + + \\Allzr)--uf> ||+ || м6 -й ||<2(^(A,||zI?||) + 6). Из свойств функции \!/(/г, ||г||) и непрерывности оператора А'1 на множестве AM [95] и последнего неравенства следует справедливость леммы. Таким образом, если z G Л/, то за приближенное решение задачи A) можно принять произвольный элемент zv из множества Z^{jt). При этом, если h = 0, то за приближенное решение задачи A) можно принять такой произвольный элемент zs из Л/, что || Лг5 - w5 II < 5. Рассмотрим вопрос погрешности приближенного решения. В качестве погрешности фиксированного приближения решения z* задачи A) с прибли- приближенно заданной правой частью wg и приближенным оператором А), на множестве априорных ограничений D С Z естественно использовать ве- величину eG?)=sup||z*T1-z||. zG{ z: zGZ). \\ A,,z ~ u6 II < ^ (A. II г ||) + S}. Ясно, что II z,* — Г IK 6G7). Отметим, что вопрос погрешности уклоне- уклонения приближенного решения некорректной задачи A) от точного решения имеет смысл лишь тогда, когда D - компакт в Z, D = М. В этом случае e(rj) -+0 при г? ->0. 69
Таким образом, в случае, когда априори известно, что точное решение z задачи A) принадлежит компакту, можно не только указать приближен- приближенное решение некорректно поставленной задачи A), но и найти оценку погрешности приближения. § 2. Некоторые теоремы о равномерном приближении к точному решению некорректно поставленных задач В целом ряде обратных задач математической физики существует априорная информация о монотонности искомого решения. Этой инфор- информации оказывается достаточно для построения устойчивых алгоритмов приближенного решения уравнения A). Пусть априори известно, что точное решение z~(s) некорректно постав- поставленной задачи A) есть монотонная на отрезке функция (для определен- определенности будем считать ее невозрастающей), ограниченная сверху и снизу соответственно константами С! и С2. Не уменьшая общности, будем счи- считать, что С] =С>0, С2 = 0. Введем в рассмотрение множество Zlc не- возрастающих функций г (х), ограниченных константами С и 0, т.е. Oz(s)>0 Vx?[a,6]. Пусть z^x), z2(s),..., г„(х),... - последовательность функций из Zlc- Тогда согласно теореме Хелли [95] существует такая функция z(x) 6 Zlc и такая последовательность индексов пк, что в каждой точке х G [а, Ь] lim г „ = z(s). Из сходимости в каждой точке и равномерной ограниченности следует сходимость в Lp [а, Ь], р > 1. Таким образом, Z 1с — компакт в Lp. Будем считать, что Z - Lp [а, Ь], р > 1, а оператор А взаимно однозначно отобра- отображает Zlc на AZic, т.е. из равенства || А г, - Агг \\ = О, zi,z2&Z\c, z следует, что zi = z2. Введем в рассмотрение множество Zlc(r])*) таких элементов z из ZI с, что \\Ahz-us ||<iKft,||z||) + 8. Элементы этого множества будем обозначать через zv Из леммы 1 следует, что произвольный элемент zn из Z 1с О?) является приближенным решением задачи A), причем zn -»z" в Lp при г? -»0. Пусть известно, что решение задачи z~(x) ? Zlc ~ непрерывная на [а, Ь] функция, и пусть т?„ -» 0 при п -><». Тогда справедливо более сильное утверждение. Теорема 1 [74, 75]. Пусть ~z{s) ? С[а, b], zn - произвольный элемент из Zlc(wn)- Пусть [у, а] - произвольный фиксированный от- отрезок из (а, Ь). Тогда при п -»• °° последовательность zn(s) сходится к F(s) равномерно на [у, а]. *) Множество Zi с (ч) определяется заданием элементов А/,, «§• *< Доказательство. Покажем сначала, что при п -» °° последова- последовательность zn(s) сходится к F(x) в каждой точке s e (a, b). Согласно теоре- теореме Хелли из последовательности zn всегда можно выбрать подпоследо- подпоследовательность г„к, сходящуюся в каждой точке i? [a, b], а следовательно, и в Z, к некоторой функции I (s) G Zlc- Пусть Ah> , ц&: — подпоследо- подпоследовательности соответственно изА,,п, и^п- Легко убедиться в справедливости оценки i A1 - Аг„ „к + \\АгЯк - г»к 70 + И An,kz,,k - usk || + || иь,к - п II < ek + 2(ф (h'k, II z,,k II) + 8'„к), причем г„к равномерно ограничены в Z, а ек = || Az~ — Аг„к \\. В силу того, что zHfc -> ~z в Z, а оператор ^4 непрерывен, е^ ->• 0 при fc -*-°°. Отсюда следует, что A~z =u, а тогда в силувзаимной однозначности отображения А справедливо равенство z = F, т.е. г" (х) = z (х) почти всюду на [д, Ь]. Покажем, что z (х) = z(x) в каждой внутренней точке х0 ? (а, Ь). Предположим, что F(x0) Ф z (s0). Пусть для определенности z (х0) = = z~(x0) + е, е > 0. Функция F(x) по условию теоремы непрерывна на отрезке [а, Ь], в том числе и в точке х0- Следовательно, существует такое 5 > 0, что | F(x) — <Т(х0) I < е/2 для любых s G (s0 - 5, х0 +5). Посколь- Поскольку z (х) монотонно не возрастает, то для любых s ? (х0 — б, х0) выпол- выполняется неравенство ? (х) — F(x) > е/2. Но тогда || F — F||i > 0, что про- противоречит тому, что ?_(s) = F(s) почти всюду на [д, 6]. Таким образом, z (х) = F(x) в каждой внутренней точке х ? (а, />). Поскольку из последовательности zn всегда можно выбрать сходящуюся подпоследовательность, а сходятся они, как мы убедились, к одному и тому же элементу F(x), то это означает, что и сама последовательность zn(x) сходится к F(x) при п ->• °° в каждой точке х ? (а, Ь). Покажем теперь, что последовательность г„ сходится к F(x) при п -*°° равномерно на каждом отрезке [7, а] С [а, Ь]. Зафиксируем произвольное число е > 0. Из равномерной непрерывности z"(x) на отрезке [7, о] следует, что для V е > 0 существует такое 5 (е) > 0, что для любых X!, х2 ? [7, о] таких, что \s\ — S2 I < S(e), выполняется неравенство |F(si) — F(x2)| < <е/4. Разобьем отрезок [7, о] точками у = Xi < s2 < . . . < х„, = а таким образом, чтобы | Xf+i - х,- | < б(е) (г = 1, 2, . .. , т - 1). Выберем Л^(е) так, чтобы для любой точки разбиения s,- (/ = 1,2,..., т) при п > УУ(е) выполнялись неравенства ияE,)-гE,)|<е/4. Из монотонности F(x) и г„(х) следует, что для любых х ? [х,-, х/+1] график функции г„(х) принадлежит прямоугольнику П,- и, следовательно, выпол- Зе няется неравенство |z,,(x) —z (x)| < — < е, как только п > N(e) (рис. 2.1). 71
Замечания. 1. Интересен тот факт, что функция zn(s) не является, вообще говоря, непрерывной. В теореме 1 важно, чтобы z~(s) была не- непрерывной, а приближенное решение zn(s) может быть разрывной моно- монотонной функцией. Тем не менее z4(s) -»• z~(s) при т? -»• 0 равномерно на любом отрезке [7, о] С (а, Ь). 2. Теорема 1 легко обобщается на случай, когда точное решение зада- задачи A) есть кусочно-непрерывная функция. В этом случае последователь- последовательность приближений будет сходится к Y(s) равномерно на каждом замкну- замкнутом отрезке, не содержащем точек разрыва функции z~(.s) и точек s = а, s =Ь. b s Рис. 2.1 Таким образом, в случае, когда априори известно, что точное решение z~(s) некорректно поставленной задачи A) есть монотонная ограниченная функция, за приближенное решение задачи можно принять произвольный lp _ элемент zn из множества Zic(j})- При этом z^ —» z при rj -*•(). Более того, если F (s) — кусочно-непрерывная функция, то имеет место равномерная сходимость последовательности приближенных решений к точному реше- решению задачи на каждом замкнутом отрезке, не содержащем точек разрыва функции z~(s) и точек s =a, s -Ь. Кроме априорной информации о монотонности точного решения некор- некорректно поставленной задачи A) в ряде обратных задач есть основания предполагать, что точное решение Y(s) является выпуклой или монотонной выпуклой функцией. ^ Введем в рассмотрение множество Zq выпуклых (для определенности вверх) функций, ограниченных сверху и снизу соответственно константа- ми С и 0. Пусть также Z\q — множество выпуклых (вверх) невозрастаю- щих ограниченных константой С неотрицательных функций (ZI с = = zicnzc). Будем вместе с Zidv) рассматривать множества Zc(v)> Ziciv)- Аналогично, Zic(rf) — это множество таких функций zn соответственно из Zt' и Zic, чт0 \\A,,zv-us || Пусть, как и прежде, цп ^0 при п ~>оо, az(s) G Zlc (либо Zc) Будем считать, что оператор А взаимно однозначно отображает Z4^(ZC) на 72 ^ Теорема 2. Пусти zn - произвольный элемент из Zic(r}n) (либо Zc(vn))> а [7. о] - некоторый отрезок из интервала (а, Ь). Тогда после- последовательность zn(s) -*~z (s) при п -*°° равномерно на [у, а]. Справедливость теоремы 2 для сличая, когда Y S ZIc(t?«), следует из теоремы 1. Для случая, когда Y e Zc, утверждение теоремы доказано в [149]. Замечания. 1. Непрерывность функции Y (&) в каждой внутренней точке s G (а, Ь) следует из того, что F(s) ? Zc- 2. Для случая, когда T(s)^? Z\q, теорему 2 можно усилить. Пусть zn — произвольный элемент из Z\c (Vn) ¦ Тогда последовательность zn (s) ->¦ -*z~(s) при п ->°° равномерно на любом отрезке [а, Ь — е], е > 0. Для доказательства этого факта достаточно заметить, что из равенства z (s) = z (s), z ,z e Z|c, следует,что z (a)-z (a). 3. В случае, когда Y(s) e Z|c (или Zc), имеет место не только равно- равномерная сходимость приближений, но и при определенных условиях сходи- сходимость их производных [149]. Таким образом, за приближенное решение некорректно поставленной задачи A), когда г"(х^ G Zic (или Zc), можно принять произвольный элемент из множества Zic С1?) (или Zc(v) ) • Доказанные в настоящем параграфе утверждения позволяют для построения приближенных решений использовать какой-либо процесс минимизации функционала невязки Ф(г) = \\Ahz — «g||2 соответственно на множествах Z\q, Zic %c- При этом, если операторы А, А/, — линей- линейные, достаточно найти такой элемент zn, принадлежащий указанному множеству, для которого Ф(гт)) < (hC0 + SJ, где Со = Cy/b> - а. В слу- случае линейной задачи (когда операторы A, Ah линейны) задача миними- зации функционала Ф(г) на множествах Zic, Zic, ^c ~~ задача выпук- выпуклого программирования. § 3. Некоторые теоремы о выпуклых многогранниках в R" В настоящем параграфе рассматриваются свойства конечно-разностной аппроксимации множеств Z|c, Zic, Zc. Эти свойства будут использо- использованы в дальнейшем при построении алгоритмов приближенного решения задачи A) на компактах Zic, Zic, Zc- При численной реализации этих алгоритмов будем использовать равномерные сетки по s на отрезке [а, Ь]. При переходе к конечно-разностной аппроксимации задачи A) функ- функционал невязки Ф(г), определенный на множествах Zic, Zic или Zc, заменяется его конечно-разностной аппроксимацией^- функцией Ф(г), определенной на R". При этом множества Zic, Zc, Zic переходят соот- соответственно в следующие множества векторов из R" *) ; Mic= z: zGR", zl+1 — z,-<0, i= 1,2,. . . ,n - 1 0 < z,- < C, i = 1,2,. .. , n *) Здесь г,- = z (s,-) — значение функции z (s) в узлах сетки. 4. А.Н.Тихонов B) 73
= lz: z E R" Шс= j z: zSR", ^,_i -2z,- + zl+1 <0, i = 2,3,. . . ,n-\ 0<z,<C, i= 1,2,.. . ,n Zi_x -2zj+zi+1 <0, /=2,3,. ..,n- z,-+1 - z,- < 0, / = 1, 2,. . . , и — 1 0<z,<C, i= 1,2,...,и C) ¦ D) Покажем, что каждое из множеств М\с, Мс, Mic представляет собой замкнутый выпуклый ограниченный многогранник в R", и найдем верши- вершины этих многогранников. Для этого нам понадобятся некоторые тривиаль- тривиальные сведения о многогранниках в R". Будем придерживаться следующей терминологии. Будем говорить, что векторы z,- € R" (/ = 1, 2, . .., т) выпукло неза- независимы, если ни один из них не является выпуклой комбинацией остальных. Выпуклым многогранником в R" будем называть выпуклую оболочку конечного числа векторов z/ S R" (/ = 1, 2,. .., /). Точку z назовем вершиной выпуклого многогранника М= С {z,}' = i i ' х = { х: х = 2 ujZj, а/ > 0, 2 д;- = 1}, если существует такой вектор =i неравенство b G R", что для любого вектора х S М справедливо (Ь, х — z) > 0 и равенство достигается лишь при х = z. Не представляет сложности доказательство следующих тривиальных утверждений [185]. Лемма 2. Пусть дан выпуклый многогранник М = C{z,-}™0. Яусгь f — вершинаМ. Тогда существует такоер: 0 < р < ш, что zp = t. Лемма 3. Пусть дан выпуклый многогранник М = C{zt} ™0- Тогда для того, чтобы элемент Zq S Мявляется вершиной М, необходимо и доста- достаточно, чтобы z0 не являлся выпуклой комбинацией z,- (i = I, 2, . .., m). Лемма 4. Всякий выпуклый многогранник есть выпуклая оболочка своих вершин. Эта лемма является тривиальным следствием лемм 2, 3. Таким обра- образом, если нужно выяснить, дает ли набор векторов Zj (г = 0, 1, .. ., ni) все вершины некоторого выпуклого многогранника М С R", то необхо- необходимо проверить выполнение двух условий: а) любой вектор z & М можно представить в виде выпуклой комбина- комбинации z,- (i = 0, 1,..., гп); б) векторы Z/ (i = 0,1,... ,ш) выпукло независимы. Теорема 3. Множество М1С представляет собой выпуклый много- многогранник в R", вершины которого Т^'> (/ = 0, 1, . .. , и) можно выписать в явном виде: 0, />/, /=1,2,...,и. E) 74 Доказательство. Покажем, что векторы линейно независимы. Действительно, пусть п 2 < (/ = 1, 2,. . ., и) 0. F) Определим оператор Ьк, действующий из R" в R, следующим образом: С „ . ?. _ 1 Л « 1 Подействовав оператором Ьк на равенство F), получим 0=5* 2с, /=О = 2 c /=0 Отсюда следует, что ск = 0 {к = 1,2,. . . , п - 1). Рассмотрев л-ю компоненту равенства F), получим Ссп = 0, т.е. с„ = 0. Линейная независимость Г О (/ = 1, 2,. .., п) доказана. Покажем теперь, что любой вектор z e Mic можно представить в виде выпуклой комбинации Г(/) (/ = 1, 2, . . ., п). Поскольку векторы образуют базис в R", то существуют такие числа а/, что G) г= 2 а,- /=i Подействовав на равенство G) оператором Ьк, получим 8к z = ак Ьк Т{к > = в* (- С), * = 12,..., п - 1. Отсюда <** = -С 0 - 1, 2, Поскольку z G Л/4-с^ т0 S^z < 0. Таким образом, ак .. ., и - 1). Легко видеть, что а„ = zn/C> О. Рассмотрев равенство G) для первой компоненты, получим, что 2 al = Поскольку г= 2 = 0, то / = 0 причем я,- > 0 (/ = 0, 1, . . ., п), 2 а, = 1. Здесь а0 = 1 - S а; > 0. /=о /~i Нам осталось доказать, что векторы Г(/) (/ = 0, 1, . .., и) выпукло независимы. Выше было показано, что векторы Г(/) (/ = 1, 2, . . ., и) линейно независимы, поэтому ясно, что Г(о) =0 не может быть выпуклой комбинацией этих Г(/). Предположение, что один из векторов ТA> (/' = = 1, 2, ..., п) является выпуклой комбинацией остальных, приводит также к линейной зависимости векторов ТA' ¦ 4* 75
Теорема 4. Множество Mic представляет собой выпуклый много- многогранник в R", вершины которого Т1-^ (/ = 0, 1, ... , и) выписываются в явном виде: с, п - (8) л-/ -С, />/, /=1,2,...,л. Доказательство. Покажем, что векторы 7^') (/ = 1, 2,.. . , п) линейно независимы. Определим оператор 8к ', действующий из R" в R, следующим образом: 5fc2)" = "/c-i -2uk+uk+i, к = 2,3,. . . ,п- 1. Предположим, что существуют такие Cj, что 2 (9) Подействовав на (9) оператором 5^ , получим ? Поскольку б?2O"(*> < 0, то cfc = 0 (fc = 2, 3, . .. , л - 1). Рассмотрев в равенстве (9) л-ю компоненту, получим, что с„ = 0. Подействовав на (9) оператором 5^ получим c*i5 5,7"^^ Ф 0, то С! = 0. Линейная независимость доказана. Покажем, что всякий вектор z S Mic можно представить в виде выпуклой комбинации Т^'^ (/ = 0, 1, . . ., п). Поскольку векторы Т^1' (/ = 1, 2, .. ., и) линейно независимы, то существуют такие числа а/, что =0. Поскольку (/ = 1, 2, . .. , п) z = (Ю) Подействовав на A0) оператором б* , получим Отсюда следует, что ак = Sk z/8k2^ Т^ (к = 2,3,... ,п — 1). Поскольку z G Mic т0 легко убедиться в том, что ак > 0 (Л: = 2, 3, .. ., и — 1). Ис- Используя и-ю компоненту равенства A0), получим, что zn = а„С, или а„ = Подействовав на равенство A0) оператором 51, получим 5lZ= ? eiS1 /=1 Отсюда 76 = 51 z/S j > 0. Таким образом, равенство A0) однозначно определяет а,- (/ = 1, 2, . .., п), причем все а,- > 0. Рассмотрим теперь 1-ю компоненту равенства A0), получим =C а/; или Следовательно, любой вектор z ? Mic можно представить в виде п п z = 2 а,Г(/), причем а/ > 0 (/ = 0, 1, ..., п), 2 а,- = 1. Здесь а0 = 1 - /=о /=о - 2 а,>0. Остается доказать выпую1ую независимость векторов Т^'' (/ = 0, 1, .. ., п). Это делается абсолютно так же, как и при доказательстве теоремы 3. ^ Теорема 5 [113]. Множество Мс С R" является выпуклым много- многогранником в R", вершины которого т''3^ , 0 < i < / < п, можно выписать в явном виде: J>@,0) _ Q к- 1 С, k<i, т«./) = i— I С, i < к < j, п-к n-j С, Отметим, что^сли многогранники Mic, Mic имеют по п + 1 вершине, то многогранник Мс имеет и (и + O/2 + 1 вершину. Теорема 6. Множество Мс содержится в выпуклом многогранни- многограннике М'2с, вершины которого 7"^ (/ = 0, 1, .. ., п) выписываются в яв- явном виде: =о, I- 1 2С , I- 1 2 С, i = j, (П) и-/ Доказательство. Аналогично тому, как это было сделано при доказательстве теорем 3, 4, легко проверяется линейная пошит и мость векторов Т^1' (/ = 1, 2,. .. ,п).
Пусть z — произвольный вектор из Мс- Покажем, что г l^j • / у = 0. Поскольку Т*-') (/ = 1, 2, . . . , п) линейно независимы, то существуют такие числа Ду (/ = 1, 2, . . ., п), что z= 2 д,Г(/). A2) Подействовав на A2) оператором 5? (к = 2, 3,. . . , п - 1), получим или Поскольку z ? Л/с, то 5? ' z < 0, а следовательно, afc > О (Л = 2, 3, ... .. ., и — 1). Рассмотрев в равенстве A2) л-ю компоненту, получим, что ап ~ гп/(?С) =** 0. Первая компонента векторного равенства A2) дает л #i =Zj/BC) > 0. Остается показать, что 2 ду < 1. Действительно, нетрудно убедиться в том, что f nC> i=l>n> I (и~1)С, /=2,3,....л-1. Суммируя покомпанентно равенство A2), получим 2z,= 2 д.- 2 Г1(/) = 1=1 / = 1 1=1 2 д;-, /=2 ИЛИ л /= 1 п 2 ду. /= 1 Учитывая равенства at = z1/BC), а„ =zn/BС),получим С(п - 1) 2 д.- = — + — +  z,-. /=1 2 2 /=2 Поскольку z ? Мс, то z,- < С (i = 1, 2, ..., и). Тогда из предыдущего п неравенства следует, что 2 ду- < 1. Таким образом, для произвольного элемента z ? Мс справедливо п п представление z = 2 ДуГ(/), причем Ду > 0, 2 д,- = 1. Здесь д0 = /=о /=О = 1 - 2 а,->0. Следовательно, Мс С М'2С = С{Г(/)}у" 0. /'= ' Для завершения доказательства теоремы достаточно проверить выпук- выпуклую независимость векторов Г0) (J = 0, I,. . . ,п). Это легко делается ана- аналогично теоремам 3,4. 78 Замечание. Из теоремы 6 следует, что если точное решение задачи принадлежит Мс, то приближенное решение можно искать на множестве М'2с- В самом деле: 1) качественная информация о выпуклости вверх "функций" сохраняется, поскольку М\с СМ2с', 2) множество "функций" из М\с ограничено сверху константой 2С, поэтому все теоремы о сходи- сходимости последовательности приближений к точному решению задачи при за- замене Мс наМ'2С останутся в силе. Таким образом, мы подробно изучили структуру многогранников М I с, Mq, Ml с. Каждый из них является выпуклым ограниченным много- многогранником в R", вершины которого известны. § 4. О решении некорректно поставленных задач на множествах выпуклых функций Вернемся к доказанным в § 1 теоремам 1,2. Как видно из формулиро- формулировок этих теорем, информация о равномерной ограниченности множества допустимых функций является существенной при их доказательстве (дока- (доказательства опираются на теорему Хелли). Однако в обратных задачах математической физики типичным является случай, когда известна кон- константа, ограничивающая множество допустимых функций снизу (например, Сг = 0, искомые функции неотрицательны), и неизвестна константа С. Откажемся от равномерной ограниченной сверху множества допустимых решений. Пусть Z |, Z, ZI — соответственно множество монотонных (невозрастающих), множество выпуклых (для определенности вверх), множество выпуклых (вверх) монотонных (невозрастающих) ограничен- ограниченных неотрицательных функций. Будем считать, что оператор А линеен, ограничен и известен точно, т.е. h = 0*). Так же, как и в § 2, введем мно- жество таких функций Z I E), Z(8\ Z I E) соответственно из Z{, Z, Z{, что \\Аг-и6 ||<8. Пусть 5„ — такая произвольная последовательность, что 5„ ->• 0 + 0 при п ->• °°. Пусть zn - произвольный элемент из Z(8n). Покажем, что все функции zn в совокупности ограничены, т.е. существует такая константа С > 0, что для любых п выполнено неравенство zn(s) < С для всех s? [a, b]. Этот результат будет означать, что если точное решение задачи — выпуклая или монотонно выпуклая на [a, b ] функция, то при поиске приближенного ре- шения можно отказаться от ограниченности множеств Zc{t}\ Zlc(ri), заменив их соответственно на ZE), Z I E). Нетрудно убедиться в справедливости двух лемм. Пусть f(x) - неотри- неотрицательная функция, определенная на отрезке [д, Ь] и выпукла^ вверх на этом отрезке. Лемма 5. Пусть /((д + Ь)/2) < 2. Тогда f(x) < 4 для любых х ? ?[д, 61. *) Как и ранее, считаем, что Z = Lp[a, b], p > 1. 79
Лемма 6. Пусть f{x*) > 4 в некоторой точке х* ? [а, Ь]. Тогда /((в + *)/2)>2. Теорема 7. Пусть zn — произвольный элемент Z(8 „). Тогда су- существует такая константа С > 0, что для всех п г„(х) < С при всех s ? e[a,b]. Д о к а з ад е л ь с т в о. Заметим, что в силу линейности оператора А множество ZEn) выпукло и, следовательно, выпукло множество значе- значений функций z(s) ? ZE „) в каждой точке s? [a, b], в том числе и в точке s = x* =(a+b)/2. Предположим, теперь^противное, т.е. существуют подпоследователь- подпоследовательность функций znk(.s) из Z(f>nk) и такая последовательность точек sk из от- отрезка [а, Ь], что znk(sk) > k- Тогда по лемме 6 znfc(s*) > 2> как только й: > 4. ^ Заметим, что z(s) ? ZEn ) и z(s*) < 1. Поскольку множество значений функций из ZEn ) в точке s = х^выпукло, то для каждого fc существует такой элемент z% из множества ZEn/(), что z?(s*) = 2. Согласно лемме 5 все функции z\{s) равномерно ограничены. Тогда в силу теоремы Хелли [95] можно выбрать последовательность z°kj, сходящуюся в каждой точ- . Ясно, что z при /->мв силу равномер- равномерке к некоторой функции ной ограниченности z?(. В силу непрерывности оператора А имеем \\Az - п\\ = 0, откуда сле- = lp = дует, что z = z. С другой стороны, z(s*) = 2, a z(s*)< 1. Отсюда следует, = Lp - что поскольку обе функции непрерывны в точке s*, то z =^= z. Полученное противоречие доказывает теорему. Таким образом, в случае, когда точное решение некорректно постав- поставленной задачи выпукло или монотонно и выпукло, для того, чтобы по- построить приближенное решение, нет необходимости знать константу, огра- ограничивающую точное решение задачи сверху. Этот важный факт мы будем использовать позднее в гл. III. Для случая, когда точное решение — моно- монотонная на [а, Ь] функция, аналогичное утверждение, вообще говоря, не- неверно . §5.0 равномерном приближении решений с ограниченной вариацией Будем рассматривать, как и прежде, некорректно поставленную задачу Az = u, zGZ = Lp, P>1, u?U. Пусть А — непрерывный оператор из Z в U. Будем предполагать, что точ- точное решение z(s) задачи A) — непрерывная на отрезке [а, Ь] функция ограниченной вариации. Пусть, как обычно, вместо А им нам известны их приближения: непрерывный оператор Ан и элемент us. Как и прежде, будем строить алгоритмы, равномерно приближающие z(s). Для этого рассмотрим множество VC Lp[a, b] функций ограниченной вариации, и среди функций из V, приближенно удовлетворяющих уравне- уравнению A), будем искать наиболее "гладкую". За меру гладкости примем 80 вариацию K*(z) функции 2. (Такая постановка задачи удобна в некоторых обратных задачах спектроскопии, ядерной физики, астрофизики [71].) Поскольку из равенства Ка6(г, - z2) = 0 следует, что функции z^s) и z2(s) могут отличаться на константу, естественно закрепить значения функ- функций на одном из концов отрезка [а, Ь]. Будем для определенности считать, что нам известно значение точного решения z~(s) в точке s = а. Не уменьшая общности, положимТ(д) = 0. Введем в рассмотрение множество К(т?) таких элементов z ? V, что 1) z(a) = 0; 2) \\Ahz - иь || < ф(И, \\z\\) +5. Будем считать, что оператор/1 взаимно однозначно отображает V на А КС U, т.е. из равенства Azl = Az2 Lp следует, что zt = z2. Лемма 7. Пусть zn -> z0 при п->°°в каждой точке s ? [а, Ь\, причем zn ? V и все Va(zn) ограничены в совокупности. Тогда z0 ? V, причем Va\z0)< Jim Va\zn). п-> °° Доказательство. Возьмем произвольное разбиение Г отрезка [а, Ь] точками ?,- (/ = 1, 2, . . . , rri) и такую последовательность znft, что Va(znt) "* М V%{zn) при * -к». Тогда 1=1 ,-=1 < ^ V*(z )= Km Vab(zri). Лемма 8 [\85].Пусть ~z(s), z(s) ? К, причем z($) непрерывна на [а, Ь]^Пусть ~z(s) и z(s) совпадают на [a, b] почти всюду. Тогда V%(z)< < ^e6(z). -ёс/ш лее ~z(s) не совпадает с z(s) тождественно на [а, Ь] то Vab(Z-)<Vab(z). Справедливы следующие утверждения. Теорема 8. Функционал V%(z) достигает на К(т?) своей точной ниж- нижней грани. Доказательство. Пусть zn — минимизирующая последователь- последовательность zn ? К(т?): lim Vba(zn)= inf F( Покажем, что функции zn равномерно ограничены. Ясно, что К*(г„)< < С для любых п. С другой стороны, из определения K*(z) следует, что для любой точки s из отрезка [а, Ь] справедливо I2»(s)l = |zn(s) -zn(a)\<C. Последнее соотношение и доказывает равномерную ограниченность после- последовательности zn(s). Теперь согласно теореме Хелли [95] из последовательности zn(s) мож- можно выделить подпоследовательность znk(s), сходящуюся при к -+ °° в каж- 81
дой точке х е [а, Ь] к некоторой функции z(x). Из леммы 7 следует, что 2(х) е F Из сходимости в каждой точке и равномерной ограниченности сле- z _ дует сходимость в Lp. Таким образом, znk—* z при к -> °°. Легко убедить- убедиться в том, что II? II)+ 6. Следовательно, 2 e К(т7). С другой стороны, согласно лемме 7 Ffl&B)<limF*Bn;,) = m. 3 амечание. Теорема 8 доказана в предположении, что все функции г(х) e F(tj) имеют закрепленный конец: z(a) = 0. Для случая, когда опера- оператор А из Lp в ?/, р >1, линеен, непрерьшен и известен точно (й = 0), теоре- теорему 8 можно доказать и без этого предположения. Для этого нужно лишь отдельно доказать равномерную по п ограниченность последовательности 2n(s). Докажем, что последовательность 2п(х) в этом случае действительно равномерна ограничена. Предположим противное. Тогда существуют такая подпоследователь- подпоследовательность znk(s) и такие точки sk G [а, Ь], что последовательность znk(sk) = = ак — бесконечно большая. Ясно, что Fa6 B„к) < С для любых пк. Поэтому «*'- C<znk(s)<ak+C для любых х € [д, й]. Введем в рассмотрение функции z°(s) = 1 для всех х е [д, й] и J'fc(x) = znfc(x) - znk(a). Очевидно, что нормы.yfc ограничены в совокупности. Из линейности оператора^ следует, что АгПк = 2„к(д)^42° + + Аук. Заметим, что Az° ф 0, а элементы НДу/Л ограничены в совокуп- совокупности. С другой стороны, числовая последовательность znk(a) неограничена и, стало быть, неограничена и функциональная последовательность Aznk = znk(a)Az° +Ayk. Однако это противоречит неравенству \\Aznk - м6 || < 6. Таким образом, доказано, что последовательность функций zn(s) равномерно ограничена. Дальнейшее доказательство теоремы 8 проводится без изменений. Пусть теперь zn e V(rf) — произвольный элемент, для которого КвьB„)= inf Va\z). eK() Теорема 9 [66]. Яусгь 2(х) ?С[а, й] П F Гогдд гц -> г равномерно на отрезке [а, Ь] при т?->0. Доказательство. Пусть rjn -> 0 при п -> °°. Покажем сначала, что zrjn(x) "* ^(х) -в каждой точке х Е [а, Ь]. Заметим, что поскольку z €E G K(tj) для любого г) > 0, то Vaizr] )^ ^С2 )• Аналогично доказательству теоремы 8 можно показать, что функции 2г,„(х) равномерно ограничены. Тогда из последовательности zrjn(x) можно выделить подпоследователь- подпоследовательность z°k = 2„ , сходящуюся к некоторому элементу 2 ?Кв каждой точке, 'пк а следовательно, и в метрике пространства Z. Переходя к пределу, легко убедиться, что Az = Az, а следовательно, г = 2, т.е. функции 2(х) и г(х) 82 совпадают на [а, Ь] почти всюду. Поскольку Ка&B?) < Ка°B), то из леммы 7 получаем Ка&(?)< Ит КайB^)<Ка&Сг), т.е. получаем, что Теперь согласно лемме 8 2~(х) = z(s) тождественно для любого s? [a, b]. Таким образом, последовательность z°k(s) сходится при к->°° к г(х) в каждой точке х е [д, Ь]. Теперь доказать поточечную сходимость самой последовательности 2^^(х) к г(а) не составляет труда. Докажем, что последовательность zv (s) сходится при«->«> к ~z(s) равномерно на отрезке [а, Ь]. Предположим противное. Тогда существуют такая подпоследовательность 2^ = z\ и такие числа %к G [a, b], e > 0. что к Рассмотрим такое разбиение Тотрезка [а, Ь] точками хр, р = 1, т, что mi Очевидно, что в силу равномерной непрерывности функции z(x) на отрезке [а, Ъ] разбиение Т можно выбрать таким, чтобы для любых х', х" е е \хр> xp + i]> Р = \, m — 1, выполнялось неравенство Щх')-Т(х")\<е/6. В силу доказанной выше поточечной сходимости существует такое jV(e), что для всех к > N(e) \zk(xp)-T(xp)\<elDm-l)), p=l,2,...,m. Выберем произвольное к > N(e), рассмотрим элемент z\ и получим оценку снизу для его вариации на [а, Ь]. Пусть %к ?[xt, xl+l]. Тогда при к > N(e) имеем т — 1 V^(Z0} > 2 I 2° (Х ) — 2° (X ) I + I 2° (X ^ — 2° Г? 1 I + Р= 1 рФ1 m~l 2e(m-2) u\ i+u *«*я p=j v p; v. p + ui 4(m_1} p*l 2e p= i 3e 6 83
Последнее неравенство противоречит определению элемента z°k(s) = zVn (s) как элемента с минимальной вариацией на множестве. Замечания. 1. Таким образом, если априори известно, что точное решение некорректно поставленной задачи A) есть непрерывная функция ограниченной вариации, то за приближенное решение можно взять любой элемент г,,, который реализует минимум функционала V%(z) на мно- множестве V(rf). При этом можно гарантировать равномерную сходимость последовательности приближений к точному решению задачи A). В гл. III будут рассмотрены алгоритмы, решающие эту задачу. 2. Если оператор А в Ьр линеен, непрерывен и известен точно (й = 0), то теорема 9 остается справедливой и в случае, когда мы отказываемся от предположения, что все функции z(s) e F(tj) имеют закрепленный конец. Доказательство равномерной ограниченности функции znn(s) проводится точно так же, как это было сделано в замечании к теореме 8. В остальном доказательство теоремы 9 проводится для этого случая без изменений. Глава III АЛГОРИТМЫ ПРИБЛИЖЕННОГО РЕШЕНИЯ НЕКОРРЕКТНО ПОСТАВЛЕННЫХ ЗАДАЧ НА СПЕЦИАЛЬНЫХ МНОЖЕСТВАХ В гл. II нам удалось в ряде случаев решить первую, поставленную нами задачу — как, исходя из качественной информации об искомом решении, выделить компактное множество корректности М, содержащее точное ре- решение. Как было показано, это легко сделать, если точное решение задачи принадлежит Z4-с, Zc, Z\c. Равномерное приближение к точному реше- решению задачи можно построить, если точное решение — непрерывная функция ограниченной вариации. Перейдем теперь ко второй задаче — как построить эффективные численные алгоритмы решения некорректной задачи на ука- указанных выше множествах. § 1. Применение метода условного градиента для решения задач на специальных множествах Остановимся сначала на решении некорректно поставленной задачи = L2, ueu, A) при условии, что оператор А из Z в U непрерывен, линеен и известен точно (h = 0). В качестве М будем рассматривать одно из множеств Z lc, Z^ или Zic- Будем предполагать, что U — гильбертово пространство. Как бы- было показано в гл. II, за приближенное^ решение задачи A) в случае, когда z принадлежит Z \с, Zc либо Z \ с^ можно пгжнять произвольный элемент zs соответственно из Z\,c, Zc либо Z I c, для которого \\Azs-us\\<6. w w Каждое из множеств ZIс Zq, Z{^ представляет собой ограниченное, замкнутое, выпуклое множество в Z. Рассмотрим функционал Ф(г) = \\Аг- иъ ||2, B) определенный для всех z, принадлежащих соответственно Z\q, Zc или Z\c- Поскольку оператор Л линеен, то Ф(г) — квадратичная функция z. Очевидно, что функционал Ф(г) выпуклый и дифференцируемый, причем его производная Фреше [95] равна ф'(г) = 2(А'Аг~А'и&). C) Здесь A*: U-+Z — оператор, сопряженный оператору А. Заметим, что 2\\A'A(zl -^ЛКгНЛН2!!*,- z2\]. Таким образом, производная Фреше функционала Ф(г) удовлетворяет условию Липшица с константой L = 2|И||2. 85
Задачу отыскания приближенного решения в нашем случае можно решить, минимизируя функционал Ф(г) соответственно на множествах ZKC, Zc, Z\C- При этом нет необходимости находить минимум Ф(г) на этих множествах. Достаточно найти такой элемент г§ из указанных мно- множеств, что Ф(гг)<52. Таким образом,^для отыскания приближенного ре- решения A) на множествах Zic, Zc, Zic необходимо научиться строить последовательность, минимизирующую некоторый выпуклый дифферен- дифференцируемый функционал на замкнутом выпуклом ограниченном множестве в гильбертовом пространстве. Если, как это имеет место в нашем случае, производная Фреше функ- функционала удовлетворяет условию Липшица, то для решения этой за- задачи может быть использован, например, метод условного градиента [32,33,76,208]. В методе условного градиента наряду с минимизирующей последова- последовательностью z(k\ начинающейся с произвольной допустимой точки z@) G G М ^> строится вспомогательная последовательность z W следующим образом. Пусть z(fc) построено, тогда z(fc) является решением задачи (Ф\г(к)\ г{к)) = min (Ф'(г(/с)),г). D) г ем Эта jafla4a разрешима, т.е. существует (вообще говоря, не единственная) точка z(k), в которой линейный функционал (Ф'B ^Х2) достигает свое- своего минимального значения на множестве М [27]. Ясно, что z ^ > принадле- принадлежит границе множества М (рис. 3.1). Заметим, что особенно просто задача D) решается, если М — ограниченный замкнутый выпуклый много- многогранник в R", Тогда задача D) - задача линейного программирования, ко- Рис. 3.1. К выводу формулы D) торая решается симплекс-методом [25, 28], а в случае, когда вершины мно- многогранника М известны, просто перебором всех его вершин. ^ найдена. Далееz (fc+1) строится по формуле E) где Xfc G [0,1] является решением одномерной задачи минимизации min \ е [О, l] *) Допустимая точка - произвольный элемент z e M. Так как все множества , Zq, Zic содержат 0,то в качестве допустимой точки можно взять z ' ' = 0. 86 Последняя задача — задача минимизации Ф(г) на отрезке [z ^ , z ^ ]. Поскольку множество М выпукло, то z (fc+1^ e М- Таким образом, начав итерационный процесс сг'0' G М, в процессе минимизации мы не можем выйти за пределы множествам Если Ф(?) — квадратичная функция (это имеет место в случае, когда оператор А линеен), то задача E) тривиальна: найти минимум параболы по Л на отрезке [0, 1]. Если оператор А линеен, то построенная последо- последовательность z (к> является минимизирующей для функционала Ф(г) на множестве М [28]. Таким образом, поскольку в нашем случае Ф(г) — квадратичная функция и задача E) решается тривиально, то для построения эффектив- эффективных алгоритмов приближенного решения некорректно поставленной задачи A) на множествах Z lc,Zc,Zlc достаточно научиться эффективно решать задачу D). В § 3 гл. II мы просто вычислили вершины многогранников Mic, Mlc> М& М'гс-. в которые переходят множества Z\c, Zlc, Zc при конечно-разностной аппроксимации. Теперь задача D) может быть просто решена перебором вершин указанных многогранников. При этом решении задачи A) на множестве выпуклых функций Zc многогранник Мс можно заменить на многогранник Мгс (см. замечание к теореме 6 гл. II). Послед- Последний многогранник имеет п + 1 вершину и решение задачи D) также не сос- составляет труда. Итак, задача линейного программирования D) решается на каждой итерации за п шагов перебором вершин указанных многогранни- многогранников. Замечание. Рассмотрим случай, когда оператор А задан прибли- приближенно. Пусть точное решение задачи A) принадлежит одному из множеств Z{c, Zc или Z{c. В этом случае (см. гл. II) за приближенное решение мож- можно принять произвольный элемент гц соответственно из Z\,C,ZC или Zic, для которого II Ау1гц — щ II < ф (h, II z^ II) + 6, а если операторы А, Ау, ли- линейны, то II Ahzn - Ms И < h II zn II + 6. Очевидно, что в последнем неравен- неравенстве норму Zjj можно заменить ее оценкой сверху постоянной Со = sup I z II соответственно на множествах Zlc, Zc или Zic. В качестве Со можно принять, например, С(Ь -аI^2. После этого алгоритмы отыскания прибли- приближенного решения некорректно поставленной задачи A) на множествах Zlc, Zc или Z\.c строятся так же, как и в случае, когда оператор известен точно. Проиллюстрируем возможности методов типа условного градиента на специальных множествах. Будем, как и прежде, в качестве модельной задачи рассматривать интегральное уравнение 1 / К(х, s)z(s)ds=u(x), -2<x<2, F) о с ядром 1 "у~'"' 1 + 100(л: - sJ На рис. 3.2 приведены результаты расчета для уравнения F) на мно- множестве монотонно убывающих функций. За точное решение уравнения 87
О 0,2 0,4 0,6 0,8 1,0 s Рис. 3.2. О 0,2 0,4 0,6 0,8 1,0 s Рис. 3.3 0 0,2 0,4 0,6 0,8 1,0 S Рис. З.4. F) берется z (x) = 1 - s2, правая часть F) возмущается случайной погреш- погрешностью, равномерно распределенной на отрезке [—60, 50], где 60 составляет 1 % от максимума значений правой части. При этом среднеквадратичная погрешность соответствует значению б2 = 7,36-10~6. Точное решение и най- найденное после 400 итераций приближенное решение изображено на рис. 3.2*). Полученное приближенное решение соответствует значению функционала невязки Ф(г) = 7,97 • 10~6. Дальнейшее применение метода условного градиента мало изменяет невязку и решение. Использовалось начальное приближение z ^ (s) = 0. На рис. 3.3 приведены результаты расчета той же модельной задачи F) на множестве монотонных выпуклых функций. Точное решение!: (s) - = 1 - s2. Уровень возмущения входных данных составляет 3 % от макси- максимума правой части. Полученное при этом приближенное решение соответ- соответствует значению невязки 6,62 • 10~s и получено после 50 итераций метода условного градиента. Начальное приближение z (°) (s) = 0. *) На рис. 3.2-3.12 точкам соответствует приближенное решение, сплошной ли- линии - точное решение. 88 Возможности метода условного градиента демонстрирует и рис. 3.4. Здесь задача F) решается на множестве выпуклых функций. Точное реше- решение z (s) = 4s A — х), правая часть возмущена таким образом, что б2 = = 8,22 ¦ 10~6. Приближенное решение, полученное после 800 итераций ме- метода условного градиента, соответствует значению невязки 9,31- 10~6, что составляет примерно 1 %от максимума правой части. Метод условного градиента может быть использован также для пост- построения приближенных решений задачи A) на множестве функций ограни- ограниченной вариации V. В § 5 гл. II было показано, что за приближенное реше- решение задачи A) в случае, когда точное решение есть непрерывная функция ограниченной вариации, можно взять произвольный элемент гц , реализую- реализующий минимум V\ (z) на множестве V(tj) . Будем для простоты считать опе- оператор А линейным и известным точно (h = 0). Тогда за приближенное ре- решение задачи A) принимаем такой элемент zs, что Vba(zs)= min Vba(z) = m. F() Будем решать эту задачу следующим образом. Пусть С такая произ- произвольная константа, что От. Поставим следующую задачу. На множест- множестве функций Vc = { z: V%(z) < С }, вариации которых не превосходят С, найти такой элемент zc, что \\ Azc - us II < б*). Эту задачу можно решать, минимизируя функционал невязки Ф(г) = II Az - 145 II2 на множестве функций 2 € Vс- При этом минимизацию нужно продолжать до тех пор, пока Ф(я) не окажется меньшим либо равным б2. Ниже будут предложе- предложены эффективные численные алгоритмы решения некорректной задачи на множестве Vc. Теперь остается найти наименьшее значение С, для которого выполне- выполнено условие min Ф(г)<52, гбКс т.е. задача нахождения zc разрешима. Приближенно эту задачу можно ре- решать простым перебором (уменьшая С) на выбранной сетке значений пара- параметра С. Таким образом, мы пришли к следующей задаче: построить последова- последовательность, минимизирующую квадратичный функционал Ф(г) на множест- множестве функций, вариация которых не превосходит заданного значения С. После перехода к конечно-разностной аппроксимации возникает задача: построить последовательность векторов z^k' e R", минимизирующую квадратичную функцию \р (z) на множестве Му„ векторов z E R", компоненты которых удовлетворяют неравенству I г2 - z, | + | z3 - z21 + . . . + I zn - zn_ 11 < С Предположим для простоты, что известно одно из граничных значений Дд) или ~z(b). He уменьшая общности, будем считать, что^г(Ь) = 0- Тогда естественно положить zn = 0. *) Последняя задача имеет самостоятельный интерес, так как множество Кс яв- является компактом в Lp, p > 1. Таким образом, приближенное решение, полученное на множестве корректности Vq, сходится к точному решению задачи z в Lр, р > 1. 89
Рассмотрим более подробно вопрос о том, что представляет собой множество Мус векторов из R", для компонент которых выполнены соотношения | Z3 - Z2 | | Zn - Zn C, Аналогично тому, как это делалось в § 3 гл. II, покажем, что множест- множество Мус — выпуклый многогранник в R", имеющий 2 (л - 1) вершин. Предварительно докажем лемму. Пусть в R" заданы векторы Г^ (/ = = — (я — 1), . . ., — 2, - 1, 1, 2,. .. ,п — 1) с компонентами G) O, i>/, /= 1,2 л-1, 7-(-') = _Г(/), /= 1,2, ...,п- 1. Лемма 1. Векторы Т(/) (/ = - (и - 1), . . . , - 1, 1, . . . , я - 1) выпукло независимы. Доказательство. Предположим противное. Пусть для некото- некоторого к (не ограничивая общности, можно считать, что к > 0) V j =_(„_!) / # fc, 0 л-1 (8) , о Пусть 6fc — оператор из R" в R, введенный в § 3 гл. II, Ьки = ик+1 - ик {к = 1,2,. .., я - 1) . Подействовав оператором 6fc на (8), получим j Ф к, 0 Поскольку ЬкТ( ' = ~ ЬкТ( ' Ф 0, то из последнего равенства следует, что а_к < 0. Полученное противоречие доказывает лемму. Теорема 1. Множество векторов Mvc представляет собой выпук- выпуклый многогранник в R" вершины которого Т^1"* (/ = — (я — 1),...,— 1, 1,. .., я - 1) имеют вид G). До казательство. Поскольку выпуклая независимость векторов Т (*"* доказана в лемме 1, достаточно показать, что произвольный вектор z GМус можно представить в виде выпуклой комбинации Т^', т.е. z= 1*0 90 причем Д/>0, п-1 /Ф О в/=1. Покажем, что такие а/ существуют. Действуя на разложение z по оператором дк (к = 1,2,..., я — 1), получим п-1 /=-(п-1) ' Выберем ак по следующему правилу: если 5kz > 0, то dkz dkz с 0, если же 6fcz<0, то dkz -С 0, а_к=0, к= 1,2,.. . ,я- Легко убедиться в том, что построенные д;- являются коэффициентами разложения z по Г^7^ .При этом,если z G М^с , то а, > 0, 1. /=-(П-1) /Ф О Если эта сумма равна единице, то теорема доказана. Пусть п-1 2 а, = у<1. / = _(„_!) j* О В этом случае вместо ах, а_ у достаточно взять а\ =в! +A-7)/2, a!_i=a_!+(l-T)/2. Теперь задача построения последовательности, минимизирующей функционал Ф(г) на множестве Кс функций, вариации которых не пре- превосходят С, легко решается методом условного градиента. (Эта задача, как отмечалось, представляет самостоятельный интерес для приложений.) Рис. 3.5 демонстрирует возможности условного градиента для реше- решения задач на множестве функций, вариация которых не превосходит за- заданной константы. Точное решение задачи F) г^) = (е-^-0-3>2/°-03+е-^-0'7>2/0'03H,9550408- 0,052130913. Правую часть уравнения F) возмутим равномерно распределенной случайной погрешностью таким образом, что б2 =5,56 • 10~6. Приближенное решение z (s) получено после 800 итераций. Значение функционала невяз- невязки Ф (z) = 2,27 ¦ 10"s, что соответствует примерно 1.5 % от максимума пра- правой части. Использовалось начальное приближение z ^0;(х) = 0. 91
1,0 0,8 0,6 0,4 0,2 0 - \ /. I , I , I , I , \ . 0,2 0,4 0,6 0,8 1,0 s Рис. З.5. Таким образом, показано, что все методы, предложенные в. § 2, 5 гл. II для решения некорректно по- поставленных задач на множествах спе- специальной структуры, легко реализу- реализуются методом условного градиента, поскольку в каждом случае, пере- переходя к конечно-разностной аппрок- аппроксимации, мы приходим к задаче ми- минимизации квадратичного функцио- функционала (оператор А линеен) на мно- множестве, которое представляет собой выпуклый многогранник в R", вер- вершины которого удается найти в яв- явном виде. После этого алгоритмы решения задачи элементарно реализуются. В § 2 гл. IV приведем описание программ, реализующих эти алгоритмы. Замечания. 1. Заметим, что даже в случае, когда оператор известен точно, при переходе к конечно-разностной аппроксимации мы заменяем оператор А на некоторый конечномерный оператор Ац. В этом случае необходимо контролировать погрешность аппроксимации (выбором коли- количества узлов сетки) так, чтобы выполнялось соотношение hC0 <Ь. 2. Сложности, возникающие при попытке перенести результаты настоя- настоящей главы на случай нелинейного оператора А, хорошо известны и связаны с тем, что при этом функционал Ф(г) = \\Az - и& II2 может уже не являться выпуклым. Поэтому гарантировать сходимость итерационных алгоритмов с произвольного допустимого начального приближения невозможно. § 2. Применение метода проекций сопряженных градиентов для решения некорректно поставленных задач на множествах специальной структуры В предыдущем параграфе были предложены алгоритмы приближенного решения некорректных задач на специальных множествах, основанные на методе условного градиента. Эти методы нашли широкое применение для решения целого ряда практических задач. Однако, как показала практика, указанные итерационные алгоритмы являются действительно эффективны- эффективными лишь при относительно невысокой точности задания входной информа- информации (приблизительно несколько процентов). В случае, когда требуется достигнуть меньших значений функционала невязки Ф(г) (более высокая точность задания входной информации), время счета резко возрастает. С другой стороны, в настоящее время точность задания входной информации в некоторых обратных задачах физики [71] составляет доли процента, и это еще не является пределом. Поэтому возникла необходимость создания высокоэффективных алгоритмов решения некорректно поставленных за- задач с ограничениями. Ряд интересных алгоритмов решения некорректных задач на специальных множествах предложен в работах [48,141, 149,150] . 92 В §2,3 этой главы будут предложены эффективные алгоритмы решения некорректных задач на специальных множествах, решающие задачу построе- построения приближенного решения за конечное число шагов. Пусть точное решение задачи A) принадлежит одному из множеств Z lc> Zc или Z 1С. Будем для простоты считать, что оператор А известен точно и линеен. За приближенное решение, как мы убедились, можно при- принять такой произвольный элемент zg, принадлежащий соответственно Z lc, Zc или Z 1с,что II Az —ug IK6. Как было показано в гл. II, в случае, когда z~(s) ? Zc или Z ic, приближенное решение можно искать соответ- ственно на множествах Z или Z I, т.е. отказаться от равномерной ограни- ограниченности функций константой С (см. теорему 7 гл. II). При конечно-раз- ностной аппроксимации множества Z lc, Z, Z I переходят в выпуклые множества 2,41 -z,<0, i= 1,2,. . . ,«- 1 0<z,<C, г=1,2,...,л J' w I М = z: 0, /=2,3,....л- 1 1 J z,>0, 1=1,2,...,л Ml =\z: *,-_! -2z,+2,+ 1 1 = 2,3... .,Л- 1 i= 1,2, (9) A0) (И) Функционал Ф(г) = II Az - us II2 переходит в квадратичную функцию >p(z). Таким образом, приходим к следующей задаче: построить минимизи- минимизирующую последовательность для функционала Ф(г) на одном из мно- множеств (9)-A1). Пусть Y ~ одно из множествМ lc, M или Mi- Заметим, что любое огра- ограничение (9) —A1) может быть записано в виде Fz<g, A2) где F - матрица размера т0 Хп, т0 - количество условий, определяющих множество, g — вектор ограничений длины т0. Неравенство понимается в смысле покомпонентных неравенств. Если z находится на границе множества, то одно или несколько нера- неравенств в A2) могут обращаться в равенства. Множеством активных огра- ограничений /(z) (в точке z) будем называть множество индексов (быть мо- может, не всех), для которых в точке z выполнены равенства /= 1 Fijzj=gi. Через dim/ будем обозначать число элементов в множестве /. Назовем матрицей активных элементов матрицу Fj размера dim/ X п, строками ко- которой являются строки матрицы F, номера которых принадлежат /(z). 93
Квадратичную функцию y(z y(z) = (z, Qz) + (d, z) + е. представим в виде A3) Метод проекции сопряженных градиентов для минимизации функции A3) при ограничениях A2) проще всего записывается в алгоритмическом виде [145, 146]. Шаг 1. Минимизация начинается с произвольной допустимой точки z e Y и проводится в R" методом сопряженных градиентов. Положим число активных ограничений т; - 0. Положим счетчик итераций метода проекции сопряженных градиентов без изменения матрицы активных огра- ограничений к : = 0- Шаг 1.1. Поскольку метод сопряженных градиентов находит минимум в R" за п шагов, если к = п, то решение найдено. В этом случае переходим на шаг 6. Шаг 1.2. Вычисляется направление спуска р(fc): если к = 0, то иначе _ = *(*) Шаг 1.3. Вычисляется направления по формуле — величина оптимального шага вдоль этого ), p<fc>) определяе- определяеД/дг 1.4. Вычисляется дтах - величина максимально возможного шага вдоль этого направления р(к^, не выводящего за пределы множества Y. Шаг 1.5.Если afc<flmax, то z(fc+1>: = z<fc> + afcp(fc), fc: = fc + l и пере- переходим на шаг 1.1; иначег(к+1>: = z<fc) + flmaxp(fc) и переходим на шаг 2. Шаг 2. Появились новые активные ограничения. Находим одно из но- новых активных ограничений и включаем его в множество активных ограни- ограничений /(z). В соответствии с этим изменяем матрицу активных ограниче- ограничений; т: =т + 1. Шаг 3. Вычисляем проектор Р{ на подпространство Rn мое условиями FjZ = 0, по формуле Pi = E-Ff(FIFjy1FI. Шаг 4. Повторяем шаг 1, только в качестве начальной точки берется z (Л), а всюду вместо grad<^(z(fc)) берутся их проекции i'/grad^(z(fc)). Точ- Точный минимум на (п - т)-мерном линейном многообразии находится мето- методом сопряженных градиентов за п - т шагов. Поэтому выход из шага 4 проводится по сравнению к = п — т. Если минимум на многообразии найден и т = 0, то переходим на шаг 6. Если минимум найден и т Ф 0, то переходим на шаг 5. Если минимум не найден (т.е.дЛ > дтах), то переходим на шаг 2. 94 Шаг 5. Сюда мы попадаем лишь в том случае, если на соответствующем многообразии найден точный минимум. Дальнейшее перемещение в этом многообразии или в более узких, получаемых добавлением новых ограни- ограничений не позволяет уменьшить значение \р (z). Необходимо выбросить одно из ограничений так, чтобы при движении по направлению, ставшему теперь возможным, функционал \p(z) убывал, а точка не выходила за пределы допустимого множества Y. Для этого поступим следующим образом. Шаг 5.1. Вычисляем набор из т теневых параметров по формуле и0 =(F/F;)-1F/grad^. Шаг 5.2. Если все u'j >0 (i = 1,2,. . . ,т), то найдено решение задачи (ни одного ограничения нельзя выбросить из множества активных огра- чений). Переходим на шаг 6. Шаг 53. Если и? < Одля каждого г, то г'-е активное ограничение ис- исключаем из /(z) и переходим на шаг 3, положив т. =т — 1. Шаг 6. Конец. Как видно из алгоритма, при каждом переходе к новому подпрост- подпространству необходимо вычислять оператор проектирования Рг, а для этого в алгоритме необходимо обращать матрицу FjFj . Та же проблема возника- возникает при вычислении теневых параметров и0. Очевидно, что это возможно лишь в случае, когда строки матрицы Fj линейно независимы. Приведен- Приведенный алгоритм в случае, если строки матрицы активных ограничений неза- независимы, решает задачу минимизации квадратичной функции tp(z) на мно- множестве A2) за конечное число шагов [145, 146]. Проверим являются ли независимыми ограничения, определяющие множества М\с, м< м^- Рассмотрим сначала многогранники М и Mi. Нет- Нетрудно убедиться в том, что ряд ограничений, определяющих множества М, можно отбросить. Очевидно, что из условий zi_1 - 2zt + zi+l < 0 (г = = 2, 3, . . . , п - 1) и условий zi> 0, zn > 0 следуют неравенства zt > 0 (г = 2, 3, . . . , п - 1) . Таким образом, множество М можно задавать сово- совокупностью пусловий: М= \ z: zi_1 -2zj + zi+1 г = 2,3,. .. ,п - A4) о, ,-,.,.....„- ,. A5) В обоих случаях все оставшиеся условия линейно независимы, поэтому во всех матрицах Fj, которые могут появиться при реализации метода проекции сопряженных градиентов, строки также будут линейно незави- независимы. 95
z 7,0 0,8 0,6 0,4 0,2 О I I I I I I I I I .. I > 0,2 0,< 0,6 0,8 1,0 в Рис. 3.6 го 0,8 0,6 0,4 0,2 0 - 1 1 1 1 . 0,2 0,4 *\ ¦ III , \ > 0,6 0,8 1,0 s Рис. 3.7 ем Для случая, когда решение задачи ищется на множестве Mic, мы име- имеп+ 1 ограничение: zn>0 /= 1,2,. ..,n~ 1 A6) Однако нетрудно показать, что для любой выборки к ограничений, к < п, строки матрицы активных ограничений будут линейно независимы. Все п + 1 ограничений одновременно не могут быть активными, поскольку это приводит к равенству С = 0. Таким образом, после указанных изменений в ограничениях, опреде- ляющих множества Мi^, M,Mi, задачу построения последовательности, ми- минимизирующей <^(z) на одном из указанных множеств, можно решать методом проекции сопряженных градиентов. В § 4 гл. IV приведено описа- описание программы, реализующей описанный алгоритм. Проиллюстрируем возможности метода проекции сопряженных гради- градиентов решением модельных задач. На рис. 3.6 приведены точное и приближенное решения модельной задачи F) с использованием априорной информации о монотонном убыва- убывании искомой функции и ее ограниченности сверху константой С = 1. Точ- Точное решение z (s) = 1 — s2. Задача решалась с точной входной информацией 5=0. Полученное приближенное решение соответствует значению невязки Ф(г) = 9,28 • 10~12. В качестве начального приближения использовалась функция z ( )(s) = 0,5. Для решения задачи потребовалось 15 минут време- времени центрального процессора на БЭСМ-6. Было сделано 100 больших циклов. Задача F) с точным решением z~(x) = 1 — х2, но правой частью, возму- возмущенной случайной погрешностью таким образом, что б2 = 6,63 • 10~s, имеет приближенное решение, изображенное на рис. 3.7. Это решение соответству- соответствует значению функционала невязки Ф(г) = 6,62 • 10"s, т.е. примерно 3 % по отношению к максимуму правой части. Для получения решения потре- потребовалось 23 больших цикла. § 3. Применение метода проекций сопряженных градиентов с проецированием на множество векторов с неотрицательными компонентами для решения некорректно поставленных задач на множествах специальной структуры Вернемся к задаче отыскания приближенного решения некорректно поставленной задачи A) на множествах Zi, Z, Zi. В § 2 был предложен алгоритм построения приближенного решения задачи A) для линейного оператора А за конечное число шагов. Однако при реализации этого алго- алгоритма необходимо обращать матрицу FjFj , что при достаточно большом числе активных ограничений приводит к значительным затратам машинно- машинного времени. В настоящем параграфе предложен алгоритм, основанный на методе проекции сопряженных градиентов с проецированием на множество векторов с неотрицательными компонентами. В этом случае проектор вы- вычисляется элементарно. Рассмотрим сначала задачу построения минимизирующей последова- последовательности для квадратичного функционала \р (z), z €E R", на одном из мно- жеств М или Mi. Докажем предварительно ряд утверждений. Пусть Y - одно из множеств М или Mi, TA > (j = 0,1,...,«)— соот- ветственно вершины выпуклых ограниченных многогранников Мс, M\q (см. § 3 гл. II). Лемма 2. Пусть z €E F. Тогда справедливо единственное представле- представление п i = 1 причем п] > 0 (/ = 1,2,.. . , п). Доказательство. Справедливость леммы следует из линейной независимости векторов Т *¦') (/' = 1,2,. . ., п). Неотрицательность коэф- коэффициентов dj следует из явного вида коэффициентов д; (см. § 3 гл. II). Рассмотрим оператор Т из R" в R", определенный по формуле Тх= 2 XjT(-n, x<ERn. Поскольку Т ('' (j = 1, 2, ...,«) образуют базис в R", то существует обратный оператор Т~х, определенный на всем R". Рассмотрим множество векторов П+ С R", имеющих все неотрицательные координаты: i?ll+, если Xj > 0 (/= 1.2,...,«). Очевидно, чтоГП+ = Ги7'У = П + . Рассмот- Рассмотрим теперь функцию f(x) = <р (Тх), определенную на множестве П +. Тогда вместо задачи минимизации ^ (z) на Y можно решать задачу минимизации f(x) на П + , поскольку между Y и П+ оператор Г осуществляет взаимно однозначное соответствие. В силу линейности оператора Т функция /(х) - квадратичная, так же как и функция tp(z). Таким образом, задача отыскания приближенного решения некорректно поставленной задачи A) на множествах Z и Zi сво- сводится к построению последовательности, минимизирующей квадратич- 97
If ную функцию/(г) на множестве векторов с неотрицательными компонен- компонентами. Аналогично можно решать задачу построения приближенного решения A) на множестве монотонных функций, если отказаться от ограниченности сверху константой С функций из множества Zlc. Рассмотрим z, + I -z,<0, /= 1,2, . ..,п- 1 1 z: z<ER" I ( zt>0, /=1,2,...,л j- Легко убедиться, что и в этом случае оператор Т взаимно однозначно отображает П+ на Ml (Г^ (/ = 1, 2, . . . , п) - вершины выпуклого ограниченного многогранника М1С - определяются формулами G)*). Остается заметить, что метод проекции сопряженных градиентов в П+ сравнительно легко реализуем [146], поскольку проектор на П+ строит- строится тривиально. Напомним, что нам необходимо найти такой элемент хg €E S П + , что/(хв) <52. Приближенное решение z5 задачи A) находится пос- после этого по формуле zs = Тх$. Описанный в настоящем параграфе метод предложен в работах [65, 67], в § 5 гл. IV мы опишем его программную реализацию. Проиллюстрируем возможности метода сопряженных градиентов с проецированием на множество векторов с неотрицательными компонента- компонентами. В качестве модельной задачи рассматривалась задача F). Точное реше- решение г~(х) = 4s (I — s). Использовалась априорная информация о выпуклос- выпуклости этого решения. Точность задания правой части принималась равной нулю. Полученное приближенное решение изображено на рис. 3.8 точками- Значе- Значение невязки Ф(?) = 1,05 • 10~'4, что соответствует относительной погрешности примерно 5 • 10~s % (по отношению к максимуму правой части). Всего для нахождения полученного решения потребовалось 42 итераций. В качест- качестве начального приближения использовалась функция z (°\s) = 0. На рис. 3.9 изображено приближенное решение задачи F) с возмущен- возмущенной правой частью. Величина возмущения выбиралась таким образом, что- чтобы б2 = 7,40 • 10~s, что составляет 3 % от максимума правой части. Приб- Приближенное решение было получено после 2 итераций метода проекции сопря- сопряженных градиентов и соответствует значению невязки Ф(г) = 7,29 • 10~s. Получаемое при решении задачи F) на множестве монотонно убываю- убывающих, выпуклых вверх функций с точным решением z(x) = 1 —х2 (погрешность задания правой части равна нулю) приближенное решение изображено на рис. 3.10. Это решение соответствует "точному" минимуму (с точностью до накопления погрешностей округления в программе) функционала невяз- невязки Ф(г). Для нахождения этого решения потребовалось 224 итерации метода проекции сопряженных градиентов. Значение функционала невязки на *) Заметим, что в случае, когда точное решение z - монотонная ограниченная функция, для доказательства сходимости приближений к точному решению сущест- существенна информация о равномерной ограниченности функций из Zip- Здесь мы эту информацию опускаем. 98 О 0,2 0,4 0,6 0,8 1,0 S Рис. 3.8 0\ 0,2 0,-1- 0,6 0,8 W S Рис. 3.10 О 0,2 0,4 0,6 0,8 1,0 S Рис. 3.9 z i О\ 0,2 0,4 0,6 0,8 1,0 S Рис. 3.11 1,0 s Рис. 3.12 99
на приближенном решении Ф(г) = 1,69-10 : \ что соответствует погрешности около 0,0005 % от максимума правой части. Начальное приближение 2<°>(S)=O. На рис. 3.11 точками изображено приближенное решение, получаемое при минимизации соответствующего функционала невязки на множестве монотонно невозрастающих неотрицательных функций. Значение невязки на этом решении составляет Ф(г) =3,37 ¦ 101. Для нахождения этого решения потребовалось 42 итерации метода проекций сопряженных гра- градиентов . Таким образом, удается построить алгоритмы приближенного решения всех задач, поставленных в гл. II. Эффективность этих алгоритмов будет иллюстрироваться расчетами модельных задач в гл. IV. Заметим, что, имея указанный комплекс алгоритмов, можно решать и более сложные задачи, когда об искомом решении известно, например, что оно имеет заданное количество экстремумов и заданное количество точек перегиба. Обозначим последние х,- (г = 1, 2, . . . , т). Если их поло- положение известно, то приведенные выше алгоритмы без труда модернизи- модернизируются на этот случай (в промежутке между точками х,- искомая функ- функция монотонна или соответственно выпукла). В приложениях приведена программа, эффективно решающая некорректные задачи типа A) на мно- множестве кусочно-монотонных (кусочно-выпуклых функций). Задача существенно усложняется, если положение точек х,- неизвестно. Высокая эффективность алгоритмов, основанных на методах типа со- сопряженных градиентов, позволяющих решать задачу при фиксированных Sj за несколько секунд, делает возможным решать задачу выбора s,- (i = 1,2, ..., т) при небольших т простым перебором. Представляется интересными алгоритмы, позволяющие вести целена- целенаправленный перебор точек экстремумов и перегибов [155]. На рис. 3.12 представлены результаты расчета модельной задачи F) на множестве кусочно-монотонных (кусочно-выпуклых) функций. В ка- качестве начального решения в итерационном процессе задавалась функция, тождественно равная нулю. Глава IV АЛГОРИТМЫ И ПРОГРАММЫ РЕШЕНИЯ ЛИНЕЙНЫХ НЕКОРРЕКТНО ПОСТАВЛЕННЫХ ЗАДАЧ В настоящей главе приводятся описания программ, реализующих ос- основные алгоритмы, рассмотренные в книге. Описания программ снабжены примерами расчетов модельных задач. Эти примеры призваны служить двум целям. Во-первых, они должны иллюстрировать описания программ. Во-вторых, эти примеры должны убедить читателя, желающего восполь- воспользоваться нашими программами, что программы правильно перенесены им на доступный вычислительной машине носитель. Модельные расчеты могут служить в этом случае тестом для такого контроля. Имеет смысл сделать сначала несколько общих замечаний о структуре программ и о целях, вызвавших такую структуру. Задачи, рассмотренные в гл. I, П, сводятся в большинстве случаев к решению систем линейных уравнений, заданных в том или ином виде. Наиболее сложные и трудоем- трудоемкие проблемы возникают именно на этой стадии. В соответствии с этим, ядром предлагаемого комплекса программ являются программы, реали- реализующие различные алгоритмы решения, вообще говоря, плохо обусловлен- обусловленных систем линейных уравнений. Тем не менее, следует иметь в виду, что задачи решения систем уравнений являются в большинстве случаев произ- производными — в процессе обработки различного рода экспериментальной информации, при решении задач синтеза или интерпретации возникают задачи другого уровня. Наиболее часто задачи такого типа приводят к интегральным уравнениям Фредгольма 1-го рода: ь / К(х, s)z(s)ds = u(x), c<x<d. A) а Для того чтобы облегчить использование комплекса программ для различных конкретных приложений, мы считаем целесообразным привес- привести программы, специально предназначенные для решения интегральных уравнений A). Однако наиболее интересными являются программы, реа- реализующие решение плохо обусловленных систем линейных уравнений (в том числе при наличии априорных ограничений). В связи с этим, основное внимание уделяется именно этим программам, несмотря на то, что они, как правило, не являются головными. Мы предполагаем, что заинтересо- заинтересованный читатель сам без труда сможет скомпилировать из приведенных блоков любую необходимую ему конфигурацию, дополнив ее при необ- необходимости любыми другими программами. Все программы написаны на языке Фортран. Более того, возможности языка были сознательно ограничены. При написании программ на них на- 101
кладывались дополнительные требования, позволяющие включать прог- программы практически в любые библиотеки стандартных программ на Форт- Фортране. В большинстве случаев эти требования не являются слишком обре- обременительными и для их удовлетворения нет необходимости существенно усложнять программы. Все программы в достаточной степени проком- прокомментированы. Основные программы содержат среди параметров параметр - код за- завершения программы, характеризующий результат работы программы. Для удобства использования головных программ количество параметров в них мы стремились свести к минимуму, объединяя в один все рабочие массивы. Тексты основных программ помещены в соответствующих приложе- приложениях. Кроме того, некоторые небольшие подпрограммы, использующиеся в различных алгоритмах, вынесены в отдельное приложение IX. Их список и назначение приведены ниже. Некоторые общие программы. Достаточно подробные описания пере- перечисленных ниже программ содержатся в комментариях: PTICR0 - одномерная минимизация сглаживающего функционала; PTICR0 — вычисление матрицы оператора; PTICR1 — пересылка массивов; PTICI2 — засылка целого числа в массив; PTICR2 - засылка числа типа REAL в массив; PTICR3 - умножение матрицы на вектор; PTICR4 - вычисление градиента нормы y(z) = II Az - иъ ||^m ; PTICR5 - вычисление невязки <p(z); PTICR6 - вычисление скалярного произведения векторов; PTICR7 — вычисление взвешенного скалярного произведения; PTICR8 - вычисление градиента стабилизатора; PTICR9 - вычисление значения стабилизирующего функционала II z II* , „ В настоящую главу вынесены также результаты тестовых расчетов. Для большинства методов в качестве модельного уравнения использовалось уравнение A) с ядром K(x,s)= — B) и значениями a=0,b = l,c = -2,d = 2. Значения правой части и(х) уравнения A) на сетке {х,} tP=l на от- отрезке [с, <1] выбирались в соответствии со следующим правилом. В качестве вектора и правой части использовался вектор, полученный умножением матрицы А размера т X п, аппроксимирующей оператор в A), на вектор-столбец z значений точного решения на сетке {х,- } "_ } на отрезке [а, Ь]: i = C) Такой способ выбора правой части гарантирует, что минимум функционала невязки Ф(г) = II Az - w5 II2 на соответствующем множестве векторов будет равен нулю. Это свойство решения существенно при исследовании 102 свойств итерационных алгоритмов решения некорректно поставленных задач. Остановимся на одном существенном факторе, характеризующем итерационные алгоритмы решения некорректно поставленных задач (это касается в первую очередь алгоритмов решения некорректно поставленных задач на компактных множествах). Общим свойством большинства итера- итерационных алгоритмов является быстрое спадание скорости минимизации при приближении к точке минимума функционала. Поэтому важной харак- характеристикой итерационных алгоритмов является тот фактический мини- минимальный уровень значений функционала невязки, до которого удается до- довести процесс минимизации за реальное время. Этот параметр позволяет за- заранее оценить ту погрешность задания входной информации, при которой имеет смысл применение данного метода. Или наоборот, по погрешностям входной информации выбрать алгоритм, наиболее пригодный для решения данной задачи. Так, если на модельных задачах мы за реальное время мо- можем минимизировать функционал невязки до уровня ~1% (по отношению к норме правой части), то ясно, что при помощи этого алгоритма, вообще говоря, бесполезно решать задачи, где погрешность задания входной инфор- информации составляет ~0,1 %. А именно, такие погрешности в задании входных данных характерны для некоторых высокочастотных астрофизических исследований. Именно для того, чтобы исследовать уровень, до которого удается минимизировать невязку, и используются правые части уравнения A), вычисленные в соответствии с C). Заметим, что описанные ниже программы решения интегральных уравнений Фредгольма 1-го рода переходят к задаче для системы линейных уравнений (вообще говоря, плохо обусловленной), аппроксимируя интег- грал в A) по формуле трапеций на равномерной сетке {ху} "_ j на отрезке [а, Ь] для каждого из значений аргумента х на сетке {х,} "г= t, также равномерной. Матрица линейного оператора Л, аппроксимирующего интег- интегральный оператор в уравнении A), выбирается при этом в виде ..КС*,,.,), /=2,3,...,«-1, D) I/' ( \ ' — 1 — К[Х(, Sj), 1- 1,П, где hs = (b - а)/(п - 1) - шаг равномерной сетки {s,-} "_ 1 на [а, Ь], X] = = а, х„ = Ь. При необходимости использовать более точные аппроксимационные формулы достаточно изменить лишь программу PTICR0, осуществляю- осуществляющую переход к конечно-разностной задаче и формирующую элементы мат- матрицы А. При решении тестовых задач параметры выбирались таким образом, что погрешность аппроксимации задачи A) системой линейных уравнений ф(z) = { hx 2 [ / K(xt, s)z(x)ds - 2 A,/z(x,) ]2 }'/2, ; = 1 a / = 1 где hx = (d - c)/(m - 1) - шаг равномерной сетки по х на [с, d], Xi =c, 103
xm = d, на точном решении ф(г) составляет ~10 4. Это значение погреш- погрешности аппроксимации соответствует относительной погрешности Ф(гI\\п \\ь2 =0,001. Вообще говоря, при решении уравнения A) всегда следует следить за тем, чтобы погрешность аппроксимации интеграла в A) была значитель- значительно меньше погрешности задания правой части 5. Для этого необходимо либо выбирать достаточно густые сетки, повышать размерность задачи, что вызывает существенное увеличение затрат машинного времени, либо ис- использовать более точные квадратурные формулы (программа PTICR^). В противном случае погрешность аппроксимации должна учитываться путем рассмотрения задачи с приближенно заданным оператором. § 1. Описание программ решения некорректно поставленных задач методом регуляризации В настоящем параграфе описаны программы PTIMR и PTIZR, реализую- реализующие метод регуляризации для решения интегрального уравнения Фред- гольма A), описанный в § 2, 5, 6 гл. 1. Оба рассматриваемых алгоритма используют выбор параметра регуляризации в соответствии с принципом обобщенной невязки (§ 2 гл. 1), т.е. находят параметр регуляризации из уравнения р(о) = \\Ahza-us ||2 - (8+h\\za\\f - = 0. В качестве стабилизирующего функционала используется стабилизатор первого порядка, т.е. используется Z = W\ [a, b], и =/ \z\s)\2)ds. Это позволяет гарантировать сходимость приближенных решений к точ- точному в метрике пространства W\ [a, b], а следовательно, и равномерную сходимость. Для отыскания экстремали сглаживающего функционала Ма [z ] = = \\Ahz - щ ||2 + а|| 7 1|2 при фиксированном значении параметра регуля- регуляризации а программа PTIMR использует алгоритм многократного решения системы уравнений, аппроксимирующей уравнение Эйлера для функцио- функционала М а [z ]: A*Az + aCz = А*иъ (А - матрица оператора, аппроксимирующего интегральный оператор в A), (z,Cz) аппроксимирует норму \\z II ^1, см. § 6 гл. I), описанный в § 6 гл. I и основанный на приведении этой системы к трехдиагональному виду. Программа PTIZR для минимизации функционала Ма [z] использует метод сопряженных градиентов. Эта программа является, вообще говоря, менее быстродействующей по сравнению с PTIMR. 104 Отметим, что поскольку \\А \\W' -*ьг ^ II--4 IIl,->l,, то в качестве ме- меры погрешности задания оператора А можно использовать такую оценку h > >\\A-Ah IIl1-l,,4toA-»-0. Для отыскания корня обобщенной невязки р(а) обе программы ис- используют некоторую модификацию метода хорд. А именно, заметим, что в случае h = 0 (точно заданный оператор) функция а(д) = рA/д) является монотонно убывающей и выпуклой. На рис. 4.1 изображена 10 -5 -10 -5 3,2 *1Off s Рис. 4.1 зависимость обобщенной невязки а(^) = рA/м) от величины, обратной параметру регуляризации, для уравнения A) с ядром B) при z(s) = - 0,3J + exp - ¦ ,9550408 - [ 0,03 -0,0521309113, h2 =2,24X10~7, 52 = 6,41 X 10. Если начальное приближение параметра регуляризации а выбрано до- достаточно большим, то значение р (а) будет положительным. Пусть а0 = 1/мо, «1 = I/Mi таковы, что р(а0), p(ai) положительны, и пусть а0 > «1, т.е. р(а0) > p(ai). Тогда последовательность метода хорд, построенная по формулам Mo -Mi . . 1 ,,>. д„ = Mo - ——; ;—;°(Р-о), "„ = —, Mo=Mi, Mi~Mn. E) будет монотонной: ц„+1 > д„ и при этом а(д„) > 0 для всех п. Сходи- Сходимость метода хорд в этом случае гарантируется. Если же h Ф 0 и оператор задан с погрешностью, то вьтуклость обобщен- обобщенной невязки а(д) = рA/м) может нарушаться и гарантировать монотон- монотонность и сходимость последовательности метода хорд в этом случае нель- нельзя. Однако, если о(ц„) = рA/мп) > 0 для всех ц„, построенных по фор- формулам E), то в силу монотонности обобщенной невязки Mn+i > V-n- Та- Таким образом, если значения обобщенной невязки во всех точках д„ поло- положительны, то можно утверждать, что метод хорд сходится. Если же а(/л„ ) < 0 при каком-либо п0, то дальнейшее применение метода хорд 5.А.Н.Тихоное 105
в формуле E) необоснованно. Поэтому в этом случае для решения урав- уравнения а(д), = 0 при п > п0 применяется следующая модификация метода хорд: Mo-Mi , 1 Мл = Mo - —— —-о(цо), а„ = —, ц„ если о(р.о)о(Нп) < 0, то Hi - цп; если o(jjii)o(nn) < О, то Мо=Ми- F) Выполнение же одного из этих условий всегда можно гарантировать. 1. Описание программы PTIMR. Программа PTIMR может быть ис- использована в двух режимах: 1) в первом режиме производится минимизация функционала Ма [z ] при фиксированном значении параметра регуляризации а; 2) во втором режиме программа PTIMR подбирает значения парамет- параметра регуляризации а в соответствии с принципом обобщенной невязки (см.§ 2 гл. 1). Форма обращения к программе: CALL PTIMR (AK, U0, А, В, С, D, N, M, Z, AN2, DL, Н, * Cl, MAX, ALFA, U, NU, IERR, AMU, C2, ALP, EPSF) Здесь: АК(Х, S) — подпрограмма-функция вычисления ядра К(х, х) урав- уравнения A). U0 — входной параметр — массив значений правой части уравнения A) на равномерной сетке {xi}™_1 на отрезке [c,d],x\ = с, хт =d, со- состоящей из М точек. А, В, С, D — входные параметры — соответственно величины а, Ь, с, d уравнения A). N — входной параметр — размерность равномерной сетки {Sj}"_ x на отрезке [a, b], Si = а, х„ = Ь, на которой ищется неизвестная функция z(s). М — входной параметр — размерность сетки, на которой задана пра- правая часть уравнения A) (значение М должно быть не менее N). Z — выходной параметр — массив из N чисел. После окончания рабо- работы программы PTIMR массив Z будет содержать экстремаль функциона- функционала Ма [z] при значении параметра регуляризации ALFA. AN2 — выходной параметр — содержит после окончания работы про- программы значение функционала невязки Ф(га) = ||Л>,га - ы6 II ?2 на най- найденной экстремали функционала ЛР [z]. DL — входной параметр — значение погрешности 52 задания правой части уравнения A): 52 > || us - п ||?2. Н — входной параметр — значение погрешности задания оператора А уравнения A) : И2 > \\ А - Ан \\\г. С1 — входной вещественный параметр, определяющий режим работы программы PTIMR: Cl < 1.0 режим поиска экстремали функционала Ma[z] при фикси- фиксированном значении параметра регуляризации ALFA, 106 Cl > 1.0 - режим подбора параметра регуляризации по принципу обобщенной невязки, т.е. из условия р(а) = 0, параметр С1 определяет в этом случае также точность решения уранения невязки, а именно, ишет- ся такое значение а, что | р(а) | < е = (ti - 1M2, где ct - значение па- параметра С1. IMAX - входной параметр - максимально допустимое число итера- итераций метода хорд при решении уравнения невязки, а также максимально допустимое число изменений параметра регуляризации при подборе та- такого значения, при котором обобщенная невязка положительна. ALFA — входной и выходной параметр — параметр регуляризации: - в первом режиме (С1 <1.0) содержит значение параметра регуляриза- регуляризации, при котором определяется экстремаль функционала Ма [z]; - во втором режиме (С1 > 1.0) служит начальным приближением для корня уравнения р(а) = 0. Начальное приближение рекомендуется выби- выбирать таким образом, чтобы значение обобщенной невязки на нем было по- положительным. Если || м6 ||2 > 52, то это условие будет выполняться для всех достаточно больших значений параметра регуляризации а. Если зна- значение обобщенной невязки на заданном начальном приближении пара- параметра регуляризации отрицательно, то он умножается на 2 до тех пор, пока обобщенная невязка не станет положительной (но не более IMAX раз). Для построения последовательности метода хорд в качестве вто- второй точки используется значение параметра регуляризации в 2 раза боль- большее содержащегося в ALFA; - в режиме подбора значения параметра регуляризации (С1 > 1.0) по окончании работы программы PTIMR параметр ALFA содержит най- найденный корень уравнения невязки. U — рабочий массив длиной не менее N*M+10*N+2*M. NU — длина рабочего массива — входной параметр. IERR — выходной параметр — код завершения программы: IERR = 0 — найдено значение параметра регуляризации, удовлетво- удовлетворяющее с заданной точностью принципу обобщенной невязки, если это требовалось (С1 > 1.0) (при этом использовался лишь вариант метода хорд в форме E)), или найдена экстремаль функционала Ма [z] при фик- фиксированном значении параметра регуляризации ALFA (Cl < 1.0) ; IERR = 1 - найдено значение параметра регуляризации, удовлетворяю- удовлетворяющее принципу обобщенной невязки, при реализации метода хорд встрети- встретились отрицательные значения обобщенной невязки, т.е. нарушена выпук- выпуклость функционала а(ц) = p(l/jii) (применялась модификация F) мето- метода хорд); IERR = 64 - длины массива U не хватает для размещения рабочих мас- массивов, значения всех выходных параметров не определены; IERR = 65 - при подборе такого значения параметра регуляризации а, что р (а) > 0, значение а было умножено IMAX раз на 2, но значение р (а) осталось отрицательным; Z содержит экстремаль функционала Ma[z] при значении параметра регуляризации, содержащемся в ALFA; IERR = 66 — при решении уравнения невязки р (а) = 0 сделано IMAX итераций метода хорд по формулам E), но заданная точность не достиг- достигнута; по окончании работы PTIMR в Z содержится экстремаль функцио- функционала Ma[z] при текушр" 'чении параметра регуляризации из ALFA; 5* • 107
IERR = 67 - при решении уравнения невязки р(а) = О всего сделано ШАХ итераций метода хорд по формулам E) и F) . Нарушена выпук- выпуклость функции сг(д) = p(l/ju) (в методе хорд встретились отрицательные значения обобщенной невязки), в Z содержится экстремаль Ма [z ] при текущем значении ALFA; IERR = 68 — задан или получился в процессе решения уравнения не- невязки параметр регуляризации, равный нулю, в Z — экстремаль функциона- функционала M°[z]; IERR = 69 - за ШАХ умножений значения а на 2 не удалось локали- локализовать минимумр\ (а) = \\Aza - и \\ +h\\ za ||; IERR = 70 - минимум pi (а) с заданной точностью не найден. Остальные четыре параметра используются при С2 > 1. AMU - выходной параметр — содержит найденное программой AUMINM значение минимума функционала pi (а). С2 — входной вещественный параметр, определяющий работу програм- программы AUMINM: если С2 > 1, то программа AUMINM ишет минимум р^ (а); минимум считается достигнутым, если на п-п итерации \ап — ап_1 \ < 1/С2 или |p,(an)-p1(al,_1)|<EPSF. ALP - входной и выходной параметр. При обрашении к PTIMR задает начальное приближение а для процедуры минимизации функции pi(a) программой AUMINM. После окончания работы программы содер- содержит вычисленное значение а, на котором достигает минимума функ- функция рДа). EPSF — входной параметр — задает точность вычисления минимума дляр1(а):|р1(а„) -pi(a,,_i) | <EPSF. При решении некорректно поставленной задачи для уравнения Фред- гольма 1-го рода может возникнуть необходимость определить экстре- экстремаль фунционала Ма [z ] при различных значениях параметра регуляри- регуляризации а и одних и тех же значениях правой части уравнения A). Непосред- Непосредственное использование программы PTIMR для этой цели повлечет за со- собой многократное преобразование одной и той же системы линейных уравнений к трехдиагональному виду. Избежать этих повторных преоб- преобразований позволяет вход PTIMRE программы PTIMR. При использова- использовании этого входа необходимо сохранять и восстанавливать перед обраше- нием ко входу содержимое рабочего массива U. Отметим, что исполь- использование входа PTIMRE возможно и в случае подбора параметра регуляри- регуляризации, например в случае, когда PTIMR завершилась по коду IERR = 65, 66 или 67. Вызываемые подпрограммы: PTIMRC, PTIMRS, PTIMRD, PTIMR0, PTIMR1, PTIMRP, PTIMRQ, PTIMRR, PTIMRN, PTIMRA, PTIMRK, PTICR0, PTICR1, PTICR6, AUMINM. Кратко Опишем работу программы PTIMR. Операторы с 11 по 39 формируют начала рабочих массивов, а также устанавливают некоторые признаки и счетчики итераций. Затем, если это необходимо (вход не че- через PTIMRE), последовательным обращением к соответствуюшим под- подпрограммам производятся следующие действия. 1. В массиве АК формируется матрица А линейного оператора, ап- аппроксимирующего интегральный оператор (подпрограмма PTICR0). 108 2. Формируется диагональ С и наддиагональ В матрицы стабилиза-' тора: С = 1 + -г —т --г 1 + -г - — 1 -- 1 + - —^ 1 1 _i 0 2 h2 1 h2 h2 J 3. Построенная матрица представляется в виде произведения С = SrS, где S - двухдиагональная матрица (S1 — ее диагональ, S2 - ее наддиа- наддиагональ) . Для получения этого представления используется метод квадрат- квадратного корня. 4. Подпрограмма PTIMRD преобразует матрицу системы, умножая ее на обратную к S матрицу справа: A =AS'1. 5. Подпрограмма PTIMR0 представляет матрицу А в виде QPR, где Q, R — ортогональные матрицы соответственно размерности т X т, п X п, Р — верхняя двухдиагональная матрица. Для построения этого разложения используется алгоритм, описанный в § 6 гл. I, основанный на последовательном применении к исходной мат- матрице операций отражения строк и столбцов. Подпрограмма PTIMR$ выдает диагональ и наддиагональ матрицы Р соответственно в массивах Р1 и Р2 длины п. Как отмечалось в гл. I, нет необходимости формировать и сохра- сохранять в явном виде ортогональные матрицы Q, R, равные соответственно Q = QiQi ¦ ¦ ¦ Qn, R = Кп-г^п-з ¦ ¦ -RiRi, где Q(, R( - соответственно матрицы операторов отражения столбцов и строк. Каждая из таких мат- матриц определяется единичным вектором нормали к гиперплоскости соот- соответственно в пространствах Rm, R". При формировании Qu Rt в соответ- соответствии с алгоритмом из § 6 гл. I число ненулевых элементов в этих век- векторах есть соответственно т — i + 1, п — i. Это позволяет разместить век- векторы отражения, определяющие матрицы б,-, Rt, на месте матрицы А раз- размером т X п, которая тем самым не сохраняется программой PTIMR^). Если через wik (/' = 1, 2,.. ., т) обозначить элементы вектора отражения, определяющего матрицу Qk {к = 1, 2,..., п), а через Vjk (j = 1, 2,.. ., п) — элементы вектора, определяющего матрицу Rk, то размешение векторов на месте матрицы А можно записать в следующем виде: Wl 1 V2 1 ... V„ _ ! ! Vn i A = W2 2 Vfl2 Wn-l\ 1-12 Wn_Jn_i 0 wmi wm2 ... wmn_l wmn j где невыписанные элементы векторов отражения — нули. 109
При реализации алгоритма следует учитывать возможность накопле- накопления погрешностей округлений, а также возникновения машинных нулей. В связи с этим при вычислении скалярных произведений и нормировке векто- векторов следует применять специальные приемы. В частности, мы предлагаем для вычисления нормы векторов использовать программу PTIMR1, в ко- которой применяется предварительная нормировка векторов. 6. Подпрограмма PTIMRQ вычисляет вектор q = Q'ug и размещает его в массиве U2, здесь и& — правая часть интегрального уравнения A). Вектор U2 используется затем в подпрограмме PTIMRA для вычисления невязки. Для умножения матрицы Q на вектор правой части этот вектор последовательно отражается с использованием векторов, хранящихся в столбцах матрицы АК. 7. Подпрограмма PTIMRP формирует трехдиагональную матрицу Р'Р. В массивах С, В, А получаются соответственно поддиагональ, диагональ и наддиагональ этой матрицы. 8. Наконец, подпрограмма PTIMRR формирует в массиве Ш вектор / = RD'ui,, умножая вектор q, содержащийся в U2 и вычисленный програм- программой PTIMRQ, на двухдиагональную матрицу Р'. Вектор / служит правой частью трехдиагональной системы уравнений (Р'Р + аЕ)х =/. m Операторы с 51 по 55 присваивают переменной AN1 значение 2 q2. i=n\\ ' Эта переменная входит как слагаемое в невязку независимо от параметра регуляризации а. Эта величина является оценкой снизу для величины меры несовместности исходной системы уравнений и используется програм- программой PTIMRA при вычислении обобщенной невязки как мера несовмести- несовместимости. Если задано значение погрешности в операторе h Ф О, то для нахождения минимизирует функционал pi (a) = \\Aza - м || + A||z ||. Для этого снача- сначала умножением а на 2 локализуется точка а0 минимума Pi (а) справа и слева, а затем методом золотого сечения строится последовательность а„, сходящаяся к а0. Вычисления заканчиваются при | ап — oin_i | < <1/С2или|р,(а„) -pi(an_,) I <EPSF. Операторы 59, 61 формируют диагональ системы (Р'Р + аЕ)х =/ и ре- решают эту систему методом прогонки (подпрограмма PTIMRN). Затем подпрограмма PTIMRA вычисляет невязку и обобщенную невязку, соот- соответствующую данной экстремали Z, полученной подпрограммой PTIMRN. При этом, как указывалось в гл. I, нет необходимости производить пере- переход к исходным неизвестным, поскольку невязка может быть вычислена по формуле || Рх - q ||2, где Р - двухдиагональная матрица. Как мы уже отмечали, часть слагаемых в этой норме постоянна и не зависит от пара- параметра регуляризации и их сумма AN1 вычисляется 1 раз. Если задано значение погрешности в операторе h Ф 0, то для нахождения обобщенной невязки необходимо вычислять норму решения в простран- пространстве W\- Для этого также нет необходимости возврашаться к старым пе- переменным, так как норма решения в конечномерном аналоге простран- пространства W\ совпадает с нормой решения трехдиагональной системы (Р'Р + + аЕ)х =/ в обычном евклидовом пространстве. Вычисленные таким образом невязка и норма решения домножаются на шаги сеток по переменным х и х в уравнении A) таким образом, чтобы 110 полученные нормы били аппроксимацией интегральных норм в простран- пространствах L2 [с, d] и W\ [a, b]. Тот же смысл имеет операция умножения пара- параметра регуляризации а на отношение шагов сетки при формировании диагонали матрицы Р'Р + аЕ в операторах 60, 75, 91, 100. Операторы с 63 по 69 проверяют необходимость окончания работы программы PTIMR и выполнение условия р (а) > 0. Если это условие не выполнено, то параметр регуляризации а умножается на 2 до тех пор, пока р (а) не станет положительным. Всего допускается IMAX таких ум- умножений параметра а на 2. Операторы с 70 до 77 формируют вторую точку, соответствующую удвоенному значению параметра регуляризации, необходимую для нача- начала работы метода хорд. Операторы с 78 по 94 реализуют метод хорд. Если значение обобщен- обобщенной невязки становится отрицательным, то происходит переход на опе- оператор 95 — начало модифицированного метода хорд, реализуемого опера- операторами с 95 по 114. Программа PTIMR завершает свою работу формированием призна- признака завершения и обратным переходом к старым переменным, реализо- реализованным в подпрограмме PTIMRK, как это описано в § 6 гл. I. В качестве тестового расчета предлагается использовать решение за- задачи A) с ядром B) и значениями а = 0, Ъ = 1. с = -2, d = 2. В качестве точного решения задачи будем использовать Сетку по переменной х на отрезке [а, Ь] выберем из п = 41 точек. Будем использовать значения правой части на сетке из т = 41 точек, вычислен- вычисленные в соответствии с C). Точности задания правой части и оператора бу- будем считать равными соответственно 52 = 10 "8 и И2 = 10~10. В качестве начального приближения параметра регуляризации выберем значение a = 4 X 10~4. Уравнение невязки р(а) =0 будем решать с точностью 10' (т.е. зададим значение параметра С1 = 1,001) и будем искать такие а, что IpWKIO1. Числовые значения приближенного решения, а также программа, вы- вызывающая PTIMR, приведены на рис. 4.2. 2. Описание программы PTIZR. Программа PTIZR может быть исполь- использована так же, как и PTIMR, в двух режимах: 1) в первом режиме производится минимизация функционала Ma [z ] при фиксированном значении параметра регуляризации; 2) во втором режиме программа PTIZR подбирает параметр регуля- регуляризации а в соответствии с принципом обобщенной невязки р(а) =0 (см. § 2 гл. I). Форма обращения к программе: CALL PTIZR(AK, U0, А, В, С, D, N, M, Z, AN2, DL, H, C1, МАХ, * ALFA, U, NU, IERR) Здесь: АК(Х, S) — подпрограмма-функция вычислениия ядра К(х, s) урав- уравнения A). 111
0001 ¦ IMPLICIT REAL*8(A-H,0-Z) 0002 DIMENSION Z0D1),U0D1),UE000),ZD1) 0003 EXTERNAL AK 0004 X1=0. 0005 X2=l. 0006 Yl=-2. 0007 Y2=2. 0008 N=41 0009 M=41 0010 IMAX=1000 0011 Cl=1.001 0012 ALFA=0.0004 0013 HX=(X2-X1)/(N-1.) 0014 CALL PTICR0(AK,U,X1,X2,Y1,Y2,N,M) 0015 H=1.E-10 0016 DO 57 1=1,N 0017 X = X1+HX*A-1. ) 0018 Z0(I)=(DEXP(-(X-0.3)**2/0.03)+ +DEXP(-(X-0.7)**2/0.03))/0.955040800- -0.0521309113 0019 57 CONTINUE 0020 CALL PTICR3(U,Z0,U0,N,M) 0021 PRINT 501,(Z0(II),11=1,N) 0022 501 FORMAT(IX,'ТОЧНОЕ РЕШЕНИЕ='/EF11.7)) 0023 DL=l.E-8 0024 PRINT 502,H,DL 0025 502 FORMAT(' .'/ ¦'ПОГРЕШНОСТИ: В ОПЕРАТОРЕ -'.D16.9/ *' В ПРАВОЙ ЧАСТИ ~',D16.9) 0026 CALL PTIMR(AK,U0,X1,X2,Y1,Y2,N,M,Z,AN2, *DL,H,C1,IMAX,ALFA,U,10000,IERR) 0027 PRINT 503,(Z(II),11=1,N) 0028 PRINT 504,I ERR,AN2,ALFA 0029 503 FORMAT(' .'/ ¦ ' ПРИБЛИЖЕННОЕ РЕШЕНИЕ:'/EF11.7)) 0030 504 FORMAT(' .'/ * ¦ КОД ЗАВЕРШЕНИЯ :',I5/ * ' НЕВЯЗКА :',D16.9/ ¦ ' ПАРАМЕТР РЕГУЛЯРИЗАЦИИ :',016.9) 0031 0032 0001 0002 0003 0004 0005 STOP END FUNCTION IMPLICIT AK=1./A. RETURN END AK ( X , Y ) REAL*8(A-H, ,+100.*(X-Y) O-Z) ¦ *2) РЕЗУЛЬТАТЫ РАСЧЕТА ******* ТОЧНОЕ РЕШЕНИЕ= -0.0000000 0 0.3251419 0 0.9124512 0 0.8468924 0 0.4998815 0, 0.8468924 0, 0.9124512 0, 0.3251419 0, —0.0000000 ПОГРЕШНОСТИ: 0320465 4425163 9758983 7502625 5188144 9288697 8164924 2238816 0.0782459 0.5699656 1.0000000 0.6540358 0.5728488 0.9829996 0.6983832 0.1415609 0.1415609 0.6983832 0.9829996 0.5728488 0.6540358 1.0000000 0.5699656 0.0782459 0.2238816 0.8164924 0.9288697 0.5188144 0.7502625 0.9758983 0.4425163 0.0320465 8 ОПЕРАТОРЕ - 0.999999944D-10 8 ПРА80Й ЧАСТИ - 0.100000008D-07 112 ПРИБЛИЖЕННОЕ 0.0173081 0.3296361 0.9084308 0.8447169 0.5017045 0.8447169 0.9084308 0.3296361 0.0173083 РЕШЕНИЕ: 0.0311578 0.4487824 0.9725681 0.7506126 0.5213061 0.9256576 0.8137768 0.2238399 0.0715787 0.5745464 0.9974897 0.6567675 0.5762365 0.9802096 0.6991498 0.1366338 0 0. 0. 1366338 6991498 0.9802096 0.5762365 0.6567675 0.9974897 0.5745464 0.0715788 0.2238399 0.8137768 0.9256576 0.5213061 0.7506126 0.9725681 0.4487824 0.0311579 КОД ЗАВЕРШЕНИЯ : НЕВЯЗКА : 0.178224585D-07 ПАРАМЕТР РЕГУЛЯРИЗАЦИИ : 0.244141302D-06 Рис. 4.2 U0 — входной параметр — массив значений правой части уравнения A) на равномерной сетке {xi}'P_1 на отрезке [с, d~\,Xi = с, хт = d, со- состоящей из М точек. А, В, С, D — входные параметры — соответственно величины а, Ъ, с, d уравнения A). N — входной параметр — размерность равномерной сетки {sy}"=1 на отрезке [a, b\, sl = a, sn = b, на которой определяется неизвестная функция z (s). М — входной параметр — размерность равномерной сетки {Х|-}™=1, на которой задана правая часть уравнения A). Z - входной и выходной параметр. При обращении к PTIZR в Z зада- задается начальное приближение к экстремали функционалам01 [z] при задан- заданном в ALFA значении параметра регуляризации (массив длины N). Пос- После окончания работы программы PTIZR параметр Z содержит массив значений экстремали функционала Af^jz] при значении параметра регу- регуляризации, содержащемся в ALFA. AN2 - выходной параметр - простая переменная, содержащая после окончания работы программы значение функционала невязки Ф(г) = = || Af,z — wg ||2 на найденной экстремали Z. 113
DL — входной параметр — значение погрешности 52 задания правой части уравнения A) : 52 > \\ щ - п ||2 . Н - входной параметр - погрешность h2 задания оператора А урав- уравнения (\):h2>\\Ah-A ||2. С1 — входной вещественный параметр, определяющий режим работы программы PTIZR: С1 < 1.0 — режим поиска экстремали функционалаМа [z] при фикси- фиксированном значении параметра регуляризации ALFA; С1 > 1.0 — режим подбора параметра регуляризации в соответствии с принципом обобшенной невязки, т.е. из условия р(а) = 0; в этом слу- случае параметр С1 задает также точность решения уравнения невязки — под- подбирается такое значение параметра регуляризации а, что I р (а) | < е = = (ci - 1M2, где значение су задано в параметре С1. IMAX — входной параметр — максимально допустимое число итераций метода хорд при решении уравнения невязки, а также максимально до- допустимое число умножений параметра регуляризации на 2 при подборе такого значения, при котором обобщенная невязка положительна. ALFA — входной и выходной параметр: — в режиме подбора параметра регуляризации (С1 > 1.0), задаваемое в ALFA при обращении к PTIZR значение параметра регуляризации служит начальным приближением для корня уравнения невязки. При этом реко- рекомендуется задавать такое начальное приближение параметра ALFA, при котором значение обобщенной невязки на экстремали функционала поло- положительно. Если квадрат нормы правой части || и& ||2 больше значения DL, то это условие выполняется для всех достаточно больших значений пара- параметра регуляризации. Если значение обобшенной невязки на начальном приближении отрицательно, то параметр регуляризации умножается на 2 до тех пор, пока обобщенная невязка не станет положительной (но не более ШАХ раз). После окончания программы PTIZR переменная ALFA содержит (в режиме С1 > 1.0, в случае успешного завершения) значе- значение параметра регуляризации, удовлетворяющее принципу обобщенной невязки; — в режиме С1 < 1.0 параметр ALFA при обрашении содержит значение параметра регуляризации, при котором необходимо определить экстре- экстремаль функционалам" [z]. U — рабочий массив длиной не менее N*M + 2*N + M. NU - входной параметр - длина рабочего массива. IERR — выходной параметр — код завершения программы: IERR = 0 — найдено значение параметра регуляризации, удовлетворяю- удовлетворяющее принципу обобшенной невязки, если это требовалось (при этом ис- использовался метод хорд в форме E)), или найдена экстремаль функцио- функционала Ma[z] при фиксированном значении параметра ALFA (C1 < 1.0); IERR = 1 — найдено значение параметра регуляризации, удовлетворяю- удовлетворяющее принципу обобщенной невязки; при решении уравнения невязки использовался модифицированный метод хорд F) (встретились отрица- отрицательные значения обобщенной невязки, т.е. нарушена выпуклость функции ст(д) = рA/,ц)); после окончания PTIZR в Z - экстремаль функциона- функционала Ма [г]; 114 IERR = 64 — не хватает длины рабочего массива; значения всех выход- выходных параметров не определены; IERR = 65 - при подборе значений параметра регуляризации а, которо- которому соответствует положительное значение обобщенной невязки, сдела- сделано ШАХ умножений параметра о на 2, а обобщенная невязка отрицатель- отрицательна; по окончании — в Z экстремаль функционала Ma[z] при значении параметра регуляризации, содержащемся в ALFA; IERR = 66 — при решении уравнения невязки р(а) = 0 сделано ШАХ итераций метода хорд в форме E), а заданная точность не достигнута; по окончании в Z экстремаль при текущем значении параметра а из ALFA; IERR = 67 — при решении уравнения невязки сделано ШАХ итераций методом хорд E) и модифицированным методом хорд F), но заданная точность не достигнута; при реализации метода хорд встретились отрица- отрицательные значения обобщенной невязки; нарушена выпуклость функции ст(д) = рA1ц); по окончании в Z экстремаль функционала Ma[z] при текущем значении параметра регуляризации ALFA; IERR = 68 — задано или получено значение параметра регуляризации а = 0; по окончании в массиве Z содержится экстремаль фунционала M°[z]. При решении уравнения A) может возникнуть необходимость опре- определения экстремали функционала Ма [z ] при различных значениях па- параметра регуляризации а. В этом случае использование входа PTIZRE позволяет избежать повторного формирования матрицы оператора. Для этого достаточно при повторных вызовах программ обращать- обращаться ко входу PTIZRE с теми же фактическими параметрами. При этом необходимо следить за сохранением между обращениями к PTIZR и PTIZRE первых N * М элементов рабочего массива U. Использование вхо- входа PTIZRE возможно также в режиме подбора параметра регуляризации по принципу обобщенной невязки, если, например, программа PTIZR окончилась по коду IERR = 65, 66 или 67. Вызываемые подпрограммы: PTIZR I, PTIZRA, PTICRO, PTICR0, PTICR1, PTICR3, PTICR4, PTICR5, PTICR6, PTICR8. Кратко опишем работу программы PTIZR. Операторы с 9 но 29 фор- формируют начала массивов, делают необходимые начальные установки, а также, если это необходимо, формируют матрицу А оператора (подпро- (подпрограмма PTICR0). Операторы с 30 по 39 подбирают такой параметр регуляризации а, что соответствующее ему значение обобщенной невязки положительно. Для этого параметр регуляризации последовательно умножают на 2 (не более ШАХ раз). Для нахождения экстремали функционала Ма [z ] ис- используется подпрограмма PTIZR 1, реализующая метод сопряженных гра- градиентов. Подпрограмма PTIZRA вычисляет значения обобщенной невязки. Операторы с 40 по 46 формируют вторую начальную точку для мето- метода хорд. Затем операторы с 47 по 60 реализуют метод хорд. Если возни- возникает необходимость (нарушена выпуклость обобшенной невязки), то операторы с 61 по 79 реализуют модифицированный метод хорд. Отметим, что в качестве начального приближения для минимизации фунционала Ма \г ] на очередном шаге используется экстремаль функцио- функционала Ма [z] при предыдущем значении параметра регуляризации. 45
0001 0002 0003 0004 0005 0006 0007 0008 0009 0010 0011 0012 0013 0014 0015 0016 0017 0018 0019 0020 0021 0022 0023 0024 0025 0026 0027 0028 0029 0030 0031 0032 0033 0034 0001 0002 0003 0004 0005 IMPLICIT REAL*8(A-H,0-Z) DIMENSION U0D1),ZD1),UE000),Z0D1) EXTERNAL AK X1=0. X2=l. Yl=-2. Y2=2. N=41 M=41 IMAX=1000 Cl=1.001 ALFA=0.000001 HX=(X2-X1)/(N-1.) CALL PTICR0(AK,U,X1,X2,Y1,Y2,N,M) H=1.E-10 DO 57 1=1, N X=X1+HX*(I-1. ) Z0 (I) = (DEXF(-(X-0.5)**2/0.06) ) 57 CONTINUE PRINT 501,(Z0(II),11=1,N) 501 FORMAT(IX,"ТОЧНОЕ РЕШЕНИЕ='/EF11.7)) CALL PTICR3(U,Z0,U0,N,M) DL=l.E-8 PRINT 502.H.DL 502 FORMAT(" .'/ *'ПОГРЕШНОСТИ: *' DO 34 1=1,N 34 Z(I)=0. CALL PTIZR(AK,U0,XI,X2,Yl,Y2,N,M,Z *AN2,DL,H,Cl,IMAX,ALFA,U, *10000,IERR) PRINT 503,(Z(II),11=1,N) PRINT 504,IERR.AN2,ALFA 503 FORMATC . "/ *' ПРИБЛИЖЕННОЕ РЕШЕНИЕ:'/EF11.7)) 504 FORMATC . '/ *' КОД ЗАВЕРШЕНИЯ :',15/ *' НЕВЯЗКА :',D16.9/ *' ПАРАМЕТР РЕГУЛЯРИЗАЦИИ :',D16.9) STOP END FUNCTION AK(X.Y) IMPLICIT REAL*8(A-H,O-Z) AK=1./A.+100.*(X-Y)**2) RETURN END В ОПЕРАТОРЕ -',D16.9/ В ПРАВОЙ ЧАСТИ -'.D16.9) 116 ******* РЕЗУЛЬТАТЫ РАСЧЕТА ******* ТОЧНОЕ РЕШЕНИЕ= 0.0155039 0.0959671 0.3528661 0.7707304 1.0000000 0.7707304 0.3528661 0.0959671 0.0155039 ПОГРЕШНОСТИ: 0.0232740 0.1298122 0.4300946 0.8464817 0.9896374 0.6872893 0.2835359 0.0694834 0.0342181 0.1719732 0.5134171 0.9105104 0.9591895 0.6002454 0.2231302 0.0492711 0.0492711 0.2231302 0.6002454 0.9591895 0.9105104 0.5134171 0.1719732 0.0342181 0.0694834 0.2835359 0.6872893 0.9896374 0.8464817 0.4300946 0.1298122 0.0232740 В ОПЕРАТОРЕ - 0.999999944D-10 В ПРАВОЙ ЧАСТИ - 0.100000008D-07 ПРИБЛИЖЕННОЕ РЕШЕНИЕ: 0.0211643 0.0957261 0.3545593 7708297 9975960 7708297 3545593 0.0957261 0.0211644 0.0240784 0.1302309 0.4316402 0.8457517 0.9871938 0.6878841 0.2850577 0.0684072 0.0328794 0.1728098 0.5146232 0.9088284 0.9568809 0.6011371 0.2243092 0.0475972 0.0475972 0.2243091 0.6011371 0.9568809 0.9088284 0.5146232 0.1728098 0.0328794 0.0684072 0.2850577 0.6878841 0.9871938 0.8457517 0.4316402 0.1302309 0.0240785 КОД ЗАВЕРШЕНИЯ НЕВЯЗКА ПАРАМЕТР РЕГУЛЯРИЗАЦИИ : 0 : 0.151755077D-07 : 0.929922942D-06 Рис. 4.3 Подпрограмма PTIZR1 минимизации функционала Ma[z] делает N итераций метода сопряженных градиентов. Для вычисления градиента функционала Ма [z ], значения фунционала невязки и одномерной мини- минимизации используются соответствующие подпрограммы (PTICR4, PTICR5, PTICR8, PTICRO). В качестве тестового примера использовании программы PTIZR рас- рассмотрим решение задачи A) с ядром B) и значениями а = О, Ъ = 1, с = —2, d = 2 при точном решении I z (х) = ехр . 0,06 Сетки по обеим переменным выберем из 41 точки (п=т = 41). В качестве правой части используем значения, вычисляемые в соответствии с C). Точности задания оператора и правой части будем считать равными соот- соответственно h2 = 100 и 52 = 10~8. Начальное приближение параметра регуляризации а = 10~6. Уравнение невязки будем решать с точностью до 10~1!, что соответствует значению С1 = 1,001. Числовые значения полу- полученного решения показаны на рис. 4.3. Это решение соответствует значе- значению параметра регуляризации а = 9,30 X 10~7 и невязке 1,52 X 10~8. 117
§ 2. Описание программы решения интегральных уравнений с априорными ограничениями методом регуляризации В настоящем параграфе описывается программа PTIPR, предназна- предназначенная для решения интегральных уравнений Фредгольма A) в случае, когда относительно решения имеется априорная информация о его по- положительности или монотонности. Основа метода описана в § 2, 5, 6 гл. I. Для выбора параметра регуляризации используется принцип обобщен- обобщенной невязки. В качестве стабилизирующего функционала используется стабилизатор первого порядка, т.е. используется Z - гильбертово про- пространство с нормами II z Л? = /(iz(x)l2 + \z'(s)\2)ds, II z Щ = z(ft) + f\z'(s)\2ds. a a Это позволяет гарантировать равномерную сходимость приближен- приближенных решений к точному. Для отыскания экстремала сглаживающего функ- функционала Ма [z] = \\Ahz - и& II2 + а II z II2 при фиксированном значении параметра регуляризации а программа PTIPR использует метод проек- проекции сопряженных градиентов, описанный в § 3 гл. III. Для выбора параметра регуляризации используется модификация метод;: хорд, описанная в предыдущем параграфе. Описание программы PTIPR. Программа PTIPR может быть исполь- использована в двух режимах: 1) в первом режиме производится минимизация функционала Ма [z] при фиксированном значении параметра регуляризации; 2) во втором режиме программа PTIPR подбирает параметр регуля- регуляризации а в соответствии с принципом обобщенной невязки р(а) = О (см. § 2 гл. I). Форма обращения к программе: CALL PTIPR(AK, U0, А, В, С, D, N, M, Z, 1С, AN2, DL, * Н, Cl, ANGRD, ШАХ, ALFA, U, NU, IERR) Здесь: АК(Х, S) — подпрограмма-функция вычисления ядра К(х, х) урав- уравнения A). U0 — входной параметр-массив значений правой части уравнения A) на равномерной сетке {х,} ,™ i на отрезке [с, d],X\ = с, хт ~d, состоя- состоящей из М точек. А, В, С, D — входные параметры — соответственно величины а, Ъ, с, d уравнения A). N — входной параметр — размерность равномерной сетки {ху}у = [ на отрезке [a, b], х, = а, х„ = Ь, на которой определеляется неизвестная функция z (х). М - входной параметр - размерность равномерной сетки {*,} J"=1, на которой задана правая часть уравнения A). Z - входной и выходной параметр. При обращении к PTIPR в Z за- задается начальное приближение к экстремали функционала М [z] при заданном в ALFA значении параметра регуляризации (массив длины N). 118 После окончания работы программы PTIPR параметр Z содержит массив шачений экстремали функционала Ма [z] при значении параметра регу- 1яризации, содержащемся в ALFA. 1С — входной параметр, определяющий множество априорных огра- ограничений на искомое решение. 1С = 0 — решение уравнения A) — ищется на множестве неотрица- юльных функций z(s) > 0. В качестве нормы в Z используется Hz II,. 1С = 1 - решение уравнения A) - ищется на множестве неотрица- юльных монотонно невозрастающих функций. В качестве нормы в Z в этом случае используется II z ll2. AN2 - выходной параметр - простая переменная, содержащая после окончания работы программы значение функционала невязки Ф (z) = = II Ahz ~ иъ \\2L 2 на найденной экстремали z (x) . DL - входной параметр - значение погрешности б2 задания пра- правой части уравнения A) : б2 > II и& - п II? . Н - входной параметр - погрешность h2 задания оператора А урав- уравнения A): h2 > \\Ah - A II2. Cl — входной вещественный параметр, определяющий режим работы программы PTIPR: Cl < 1,0 — режим поиска экстремали функционала Ма [z] при фик- фиксированном значении параметра регуляризации ALFA; Cl > 1,0 — режим подбора параметра регуляризации в соответствии с принципом обобщенной невязки, т.е. из условия р(а) = 0; в этом слу- случае параметр задает также точность решения уравнения невязки — под- подбирается такое значение параметра регуляризации а, что |р(а)| <е = = (Ci — 1 M2 , где значение с± задано в параметре С1. ANGRD — входной вещественный параметр, характеризующий точ- точность решения задачи минимизации сглаживающего функционала при фиксированном параметре. Минимизация ведется до тех пор, пока II gradiW" [z] II не станет меньше значения, указанного в ANGRD. IMAX — входной параметр — максимально допустимое число итера- итераций метода хорд при решении уравнения невязки, а также максимально допустимое число умножений параметра регуляризации на 2 при под- подборе такого значения, при котором обобщенная невязка положительна. ALFA — входной и выходной параметр. В режиме подбора параметра регуляризации (С1 > 1,0) задаваемое в ALFA при обращении к PTIPR значение параметра регуляризации слу- служит начальным приближением для корня уравнения невязки. При этом рекомендуется задавать такое начальное приближение параметра ALFA, при котором значение обобщенной невязки на экстремали функционала Ма [z] положительно. Если квадрат нормы правой части II w5 ll? боль- больше значения DL, то это условие выполняется для всех достаточно боль- больших значений параметра регуляризации. Если значение обобщенной / невязки на начальном приближении отрицательно, то параметр регуля- регуляризации умножается на 2 до тех пор, пока обобщенная невязка не ста- станет положительной (но не более IMAX раз). После окончания программы PTIPR переменная ALFA содержит (в режиме С1 > 1,0 в случае успеш- успешного завершения) значение параметра регуляризации, удовлетворяющее принципу обобщенной невязки. 119
0001 0002 0003 0004 0005 0006 0007 0008 0009 0010 0011 0012 0013 0014 0015 0016 0017 0018 0019 0020 0021 0022 0023 0024 0025 0026 0027 0028 0029 0030 0031 0032 0033 0034 0035 0001 0002 0003 0004 0005 IMPLICIT REAL*8(A-H,0-Z) DIMENSION U0D1),ZD1),UA0000),Z0D1) EXTERNAL AK X1=0. X2=l. Yl=-2. Y2=2. N=41 M=41 IMAX=1000 Cl=1.001 IC=0 ALFA=0.000001 HX=(X2-X1)/(N-l.) CALL PTICR0(AK,U,X1,X2,Yl,Y2,N,M) H=1.E-10 DO 57 1=1,N X = X1+HX*A-1. ) Z0(I)=(DEXP(-(X-0.5)**2/0.06)) 57 CONTINUE PRINT 501,(Z0(II),11=1,N) 501 FORMATCIX,'ТОЧНОЕ РЕШЕНИЕ='/EF11.7) ) CALL PTICR3(U,Z0,U0,N,M) DL=l.E-8 PRINT 502,H,DL 502 -FORMAT ( ' . ' / «'ПОГРЕШНОСТИ: *' DO 34 1=1,N 34 Z(I)=0.5 CALL PTIPR(AK,U0,X1,X2,Y1,Y2,N,M,Z,1С, *AN2,DL,H,C1,ANGRD,IMAX,ALFA,U, *10000,IERR) PRINT 503,(Z(II),11=1,N) PRINT 504,IERR,AN2,ALFA 503 FORMAT(' .'/ *' ПРИБЛИЖЕННОЕ РЕШЕНИЕ:'/EF11.7)) 504 FORMAT(' .'/ *• КОД ЗАВЕРШЕНИЯ :',15/ *' НЕВЯЗКА :',D16.9/ *' ПАРАМЕТР РЕГУЛЯРИЗАЦИИ :',016.9) STOP END FUNCTION AK(X,Y) IMPLICIT REAL*8(A-H,0-Z) AK=1./A.+100.*(X-Y)**2) RETURN END В ОПЕРАТОРЕ -',D16.9/ В ПРАВОЙ ЧАСТИ -',D16.9) 120 ******* РЕЗУЛЬТАТЫ РАСЧЕТА ******* ТОЧНОЕ РЕШЕНИЕ= 0.0155039 0.0959671 0.3528661 0.7707304 1 .0000000 0.7707304 0.3528661 0.0959671 0.0155039 ПОГРЕШНОСТИ: ПРИБЛИЖЕННОЕ 0.0209515 0.0958447 0.3542541 0.7708668 0.9980419 0.7708668 0.3542541 0.0958446 0.0209516 0.0232740 0.1298122 0.4300946 0.8464817 0.9896374 0.6872893 0.2835359 0.0694834 0.0342181 0. 1719732 0.5134171 0.9105104 0.9591895 0.6002454 0.2231302 0.0492711 0.0492711 0.2231302 0.6002454 0.9591895 0.9105104 .5134171 .1719732 0. 0. 0.0694834 0.2835359 0.6872893 0.9896374 0.8464817 .4300946 . 1298122 0. 0. 0.0342181 0.0232740 8 ОПЕРАТОРЕ - 0.999999944D-10 В ПРАВОЙ ЧАСТИ - 0.100000008D-07 РЕШЕНИЕ: 0.0239206 0.1302666 0.4313463 0.8459039 0.9876165 0.6878113 0.2847854 0.0685403 0.0328357 , 1727281 .5143773 0.9090915 0.9572387 .6009675 .2241152 0. 0. 0. 0. 0.0476677 0.2241152 0.6009675 0.9572387 0.9090915 .5143773 .1727281 0. 0. 0.0685403 0.2847853 0.6878113 0.9876165 0.8459039 0.4313463 0.1302666 0.0476677 0.0328357 0.0239207 КОД ЗАВЕРШЕНИЯ НЕВЯЗКА ПАРАМЕТР РЕГУЛЯРИЗАЦИИ : 67 : 0.104321284D-07 : 0.766789180D-06 Рис. 4.4 В режиме С1 < 1,0 параметр ALFA при обращении содержит значе- значение параметра регуляризации, при котором необходимо определить эк- экстремаль функционала Ма [z]. U — рабочий массив длиной не менее N*M + 3*N + 2*M. NU - входной параметр — длина рабочего массива. IERR — выходной параметр — код завершения программы: IERR = 0 - найдено значение параметра регуляризации, удовлетво- удовлетворяющее принципу обобщенной невязки, если это требовалось (при этом использовался метод хорд в форме E) или найдена экстремаль функ- функционала Ма [z] при фиксированном значении параметра ALFA (C1 < 1,0)); IERR = 1 — найдено значение параметра регуляризации, удовлетво- удовлетворяющее принципу обобщенной невязки р(а) = 0 с заданной точностью, использовался модифицированный метод хорд F) (встретились отри- отрицательные значения обобщенной невязки, т.е. нарушена выпуклость функции т (д) = рA/д)), после окончания PTIPR в Z — экстремаль функ- функционала Ма [z]; IERR = 64 — не хватает длины рабочего массива; значения всех вы- выходных параметров не определены; IERR = 65 — при подборе значения параметра регуляризации а, ко- которому соответствует положительное значение обобщенной невязки, сде- 121
лано ШАХ умножений параметра а на 2, а обобщенная невязка отрица- отрицательна; по окончании — в Z экстремаль функционала Ма [z] при значении параметра регуляризации, содержащемся в ALFA; IERR = 66 — при решении уравнения невязки р(а) = 0 сделано ШАХ итераций метода хорд в форме E), а заданная точность не достигнута; по окончании в Z — экстремаль Ма [z] при текущем значении парамет- параметра а из ALFA; IERR = 67 — при решении уравнения невязки р(а) = 0 сделано ШАХ итераций методом хорд F), но заданная точность не достигнута; при реализации метода хорд встретились отрицательные значения обобщен- обобщенной невязки; нарушена выпуклость функции а(ц) = рA/р); по окон- окончании в Z — экстремаль функционала Ма [z] при текущем значении па- параметра регуляризации ALFA; IERR = 68 — задано или получено значение параметра регуляризации а = 0; по окончании в массиве Z содержится экстремаль функционала M°[z]; IERR = 69 — задано значение 1С, отличное от нуля и единицы. Значе- Значения входных параметров не определены. При решении уравнения A) может возникнуть необходимость опре- определения экстремали функционала Л/а[г] при различных значениях пара- параметра регуляризации а. В этом случае использование входа PTIPRE поз- позволяет избежать повторного формирования матрицы оператора и ее пре- преобразований. Для этого достаточно при повторных вызовах программы обращаться ко входу PTIPRE с теми же фактическими параметрами. При этом необходимо сохранять и восстанавливать между обращениями к PTIPR и PTIPRE первые N * М элементов рабочего массива U. Использо- Использование входа PTIPRE возможно также в режиме подбора а по принципу обобщенной невязки, если, например, программа PTIPR окончилась по коду IERR = 65, 66 или 67. В любом случае при обращениях к PTIPR и PTIPRE необходимо за- задавать начальное приближение Z допустимым; при 1С = 0 начальное при- приближение должно быть неотрицательным, а при 1С = 1, кроме того, еще и монотонно невозрастающим. Вызываемые подпрограммы - PTISR1, PTISR2, PTISR3, PTISR4, PTICRO, PTICR0, PTICRl, PTICR2, PTICI2, PTICR3, PTICR4, PTICR5, PTICR6, PTICR7,PTICR8,PTICR9. Работа программы PTIPR аналогична работе программы PTIZR, но вместо обращения к программе минимизации методом сопряженных градиентов PTIZR1 производится обращение к программе минимиза- минимизации методом проекции сопряженных градиентов PTISR1. Необходимые преобразования матрицы оператора и очередного приближения произ- производятся программами PTISR2 и PTISR3. Описания программ PTISR1, PTISR2, PTISR3 см. в § 7 настоящей главы. В качестве тестового примера использования программы рассмот- рассмотрим решение задачи A) с ядром B) и значениями а = 0, Ъ = 1, с - -2, d = 2 при точном решении ~z (s) = 1 — s2. Сетки по обеим переменным выбраны из 41 точки. Программа, обращение и числовые значения ре- результатов показаны на рис. 4.4. 122 § 3. Описание программы решения интегрального уравнения типа свертки В настоящем параграфе описана программа, реализующая алгоритм решения интегрального уравнения типа свертки с использованием ме- юда регуляризации, основанного на определении экстремали функцио- функциоа [] \ A Hi рр нала Л/а [z] = \ Ahz — Hi + а II z и выборе параметра регуляриза- регуляризации в соответствии с принципом обобщенной невязки (см. § 2 гл. I). Рассмотрим уравнение / К{х - s)z(s)ds = и{х). G) Пусть известно, что локальный носитель ядра K(t) сосредоточен на отрезке [Li, L2] ¦ Если точное решение Y(s) уравнения G) имеет локаль- локальный носитель на отрезке [а, Ь], то тем самым точная правая часть Tt(x) сосредоточена на отрезке [с, d], где с = а + Lis d = b + L2. Будем считать, 'но приближенная правая часть известна на отрезке [с, d]. В такой по- постановке мы приходим к задаче, эквивалентной G): ь fK(x - s)z(s)ds = и(х), х G [с, d]. а И силу предположений о расположении локального носителя решения .: (х) последнее уравнение можно переписать в виде <*-(/.,+ L2)/2 / К(х - s)z(s)ds = и(х), х е [с, d], (8) с - (L, + L2)/2 поскольку \с — — , d Э [а, о\. Остается отметить, что в силу соотношений между локальными но- носителями решения z~(s) и ядра А^(/), ядро K(t) можно считать перио- периодически продолженным с его локального носителя [L\, L2] с периодом i/ — с = Т. Таким образом, мы приходим к задаче, рассмотренной в § 7 гл. I (с точностью до тривиальных замен переменных). Поскольку ядро K(t) можно считать периодическим с периодом Т - d — с, то для реше- решения задачи может быть применена методика, основанная на применении быстрого преобразования Фурье, описанная в гл. I. Отметим, что рассматриваемый алгоритм решения задачи (8) с пе- периодическим ядром, а значит и задачи G) с финитным ядром, дает ре- ] Г i пение z(s) на отрезке с — , d — содержащем локаль- локальный носитель точного решения z~(s) задачи G)*). Алгоритм решения задачи (8) с ядром K(t), периодическим с периодом Т = d — с, в соот- соответствии с § 7 гл. I реализован в виде программ PTIKR и PTIKRl.npn пом для решения уравнения невязки р(а) = II Ahza - us II2 - E + h II za IIJ = 0 *)Расширение области интегрирования при переходе к (8) до отрезка длиной Г = d — с > b — а может быть проведено, вообще говоря, различными способами. 123
применяется метод Ньютона. Необходимая для реализации этого метода производная функции р(се) легко вычисляется по формуле B1) гл. I. (Выражение для у'(се) см. в § 6 гл. I.) Поскольку, как уже отмечалось в § 1 настоящей главы, в случае h = 0 функция а(/л) = рA/р.) является монотонно убывающей и выпуклой, что гарантирует сходимость метода Ньютона (если на начальном приближении ц0 значение а(/л0) = рA/р.о) положительно), то предлагаемая программа реализует применение ме- метода Ньютона фактически для решения уравнения а(ц) = рA/р-) =0.При этом о'(ц) = р'(\1иIц2. В случае решения задачи (8) с приближенно заданным оператором (h Ф 0) выпуклость функции а(Р-) может нарушаться и сходимость ме- метода Ньютона гарантировать нельзя. Поэтому, если в процессе реализа- реализации метода Ньютона появляются такие значения параметра регуляриза- регуляризации се = l/fx, что р(се) < 0 (что может произойти, если нарушена выпук- выпуклость a(ji)), то происходит переход на модификацию метода хорд F). Программа PTIKR, так же как и программы, описанные в предыду- предыдущих параграфах, может быть использована в двух режимах: 1) в первом режиме определяется экстремаль сглаживающего функ- функционала Ма [z] при фиксированном значении параметра регуляризации се; 2) во втором режиме программа PTIKR подбирает параметр регу- регуляризации се в соответствии с принципом обобщенной невязки: р(а) = \\Ahza - щ II2 - E + h II za IIJ = 0, здесь za — экстремаль сглаживающего функционала Ma[z] = \\Ahz - иъ\\\г + allzll2^. 1. Описание программы PTIKR. Форма обращения к программе: CALL PTIKR(AK, Щ, А, В, С, D, LI, L2, N, *Z, AN2, DL, H, C1, ШАХ, ALFA, U, NU, IERR) Здесь: AK(S) — подпрограмма-функция вычисления ядра K(s) уравне- уравнения (8). U0 — массив значений правой части us уравнения (8) на равномерной d-c/ 1\ сетке {лу} / = i на отрезке [с, d], состоящей из N точек: Xj = [ / ) (число точек сетки должно быть равно целой степени двойки). Г L, + L2 А, В — выходные параметры — границы отрезка с — , d — ;— , на котором находится приближенное решение уравне- уравнения (8). С, D — входные параметры — соответственно величины с, d уравне- уравнения (8). Ll, L2 — входные параметры — границы локального носителя ядра K(s) уравнения (8) (переменные типа REAL). 124 N — входной параметр — размерность равномерных сеток Li d - с/ 1 J--) + с - {Xj}j= I, {S/};= Г АЛ I соответственно на отрезках [с, d\ и с — A , d — , , на ко- которых задается правая часть уравнения (8) и ищется его решение; число N должно иметь вид 2к, где к - целое. Z — выходной параметр — массив длиной N; после окончания работы программы PTIKR содержит экстремаль функционала Ма [z] при зна- значении параметра регуляризации, находящегося в ALFA. AN2 — выходной параметр — простая переменная, содержащая пос- после окончания работы программы значения функционала невязки Ф (z) = = \Ahz — us II2 на экстремали функционала Ма [z], находящейся в массиве Z. DL — входной параметр — значение погрешности 52 задания правой части уравнения (8): 52 > II us — п lli,[c, <*]¦ Н — входной параметр — значение погрешности И2 задания операто- Li L2 Li +L2] pa А в уравнении (8), как оператора из W2 с — d , d — и L2 [с, d\:h> \\A - Ah II. Cl — входной параметр, определяющий режим работы программы: С1 < 1,0 — режим поиска экстремали функционала Ма [z] при фик- фиксированном значении параметра регуляризации се; С1 > 1,0 — режим подбора параметра регуляризации се в соответст- соответствии с принципом обобщенной невязки, т.е. из условия р(сё) = 0; при этом уравнение решается с точностью е = (ci — 1M2 (ci — значение па- параметра С1), т.е. ищется такое значение параметра а, что I р(се) I < 6. ШАХ — входной параметр — максимально допустимое число итера- итераций метода Ньютона и метода хорд при решении уравнения невязки р(а) = 0. ALFA — задаваемое значение параметра регуляризации. Во втором режиме (С1 > 1,0) служит начальным приближением для корня уран- нения р(се) = 0. Начальное приближение рекомендуется выбирать таким образом, чтобы значение обобщенной невязки р(се) на нем было поло- положительным. Если квадрат нормы правой части IIus 111 больше 52, ю это условие будет выполнено при достаточно больших значениях пира метра регуляризации ALFA. Если условие р(се) > 0 на начальном при ближении не выполнено, то значение параметра регуляризации умиода ется на 2 до тех пор, пока значение обобщенной невязки не станс i noun жительным (но не более ШАХ раз), а затем строится последовагслыни п< Ньютона, начиная от этого значения параметра. Во втором режиме (CI ¦ > 1.0) по окончании работы программы PTIKR параметр ALFA еодоржт значение параметра регуляризации, удовлетворяющее условию I/>(<«)! м U — рабочий массив длиной не менее 6 * N. NU - входной параметр — длина рабочего массива U; служиi или контроля достаточности рабочего массива U. IERR — выходной параметр — код завершения программы.
IERR = 0 - найдена экстремаль za функционала Ма [z] при фикси- фиксированном значении параметра регуляризации в случае задания С1 < 1.0, или найдено методом Ньютона значение параметра регуляризации ALFA, удовлетворяющее принципу обобщенной невязки, если это требовалось (С1 > 1,0); IERR = 1 - в случае С1 > 1,0 при реализации метода Ньютона встре- встретились отрицательные значения обобщенной невязки р(а), т.е. нарушена выпуклость обобщенной невязки; решение уравнения невязки р(а) = 0 найдено методом хорд; IERR = 64 — не хватает длины рабочего массива U; значение пара- параметра регуляризации ALFA при этом не изменилось, значение остальных выходных параметров не определено; IERR = 65 - в случае С1 > 1,0 задано такое начальное значение па- параметра регуляризации а, что р(а) < 0; умножением параметра регу- регуляризации на 2 не удалось подобрать такого значения, при котором обобщенная невязка положительна, т.е. p(a2'max) < q. после оконча- окончания программы PTIKR в ALFA — значение параметра регуляризации, в 2'max раз больше исходного, в Z - экстремаль, соответствующая этому параметру, IERR = 66 - в случае С1 > 1,0 при реализации метода Ньютона сде- сделано ШАХ итераций, а корень уравнения невязки I р(а) I <е = (с1 - 1M2 не на? т,ен; по окончании программы в ALFA — очередное приближение параметра регуляризации, а в Z - соответствующая ему экстремаль; IERR = 67 — при реализации метода Ньютона встретились значения обобщенной невязки, меньшие нуля, произошел переход на метод хорд (это возможно при нарушении выпуклости обобщенной невязки о(ц) (h Ф 0)); всего методом Ньютона и методом хорд сделано ШАХ итера- итераций, а решения уравнения невязки не найдено; по окончании в ALFA — очередное приближение метода хорд, а в Z - соответствующая ему экст- экстремаль функционала Ма [z]. При использовании программы PTIKR для решения уравнения (8) может возникнуть необходимость определять экстремаль функционала Ма [z] при различных значениях параметра регуляризации а и одних и тех же значениях правой части (8). Непосредственное использование прог- программы PTIKR повлечет за собой многократное применение преобразо- преобразования Фурье для одних и тех же функций. Избежать этих повторных пре- преобразований позволяет вход PTIKRE программы PTIKR. При этом при повторном обращении достаточно обращаться не к самой программе PTIKR, а ко входу PTIKRE с фактическими параметрами, имеющими тот же смысл. При обращении ко входу PTIKRE необходимо следить за со- сохранением (восстановлением) перед обращением содержимого рабочего массива U. Заметим, что использование входа PTIKRE возможно и в случае режима подбора параметра регуляризации, например, в случае, когда PTIKR завершилась по коду IERR = 65,66 или 67*). *) Программа PTIKR может быть применена также для решения задач (8) с периодическими ядрами. В этом случае ядро К (t) с периодом Т = d - с должно быть задано на отрезке [L,, L2\ длиной ?2 - Л, = 2Т. Границы L,, L2 должны быть согласованы с носителями правой части [с, d] и решения [а, Ь]: Ъ - а = d - с. На- Например, если [с, d] = [а, Ь], то необходимо выбирать /,, = —Т = с — d, ai, = Т. 126 Собственно решение интегрального уравнения осуществляется прог- программой PTIKR1, которая осуществляет поиск экстремали функционала Ма [z] и решение уравнения невязки р(а) = 0 методом Ньютона и хорд. Операторы с 7 по 20 программы PTIKR 1 вычисляют значение ядра и производят преобразование Фурье над ядром и правой частью, обра- обращаясь к стандартной программе FTF1C, составленной Сысоевым А.Ф. (Текст этой программы см. в Приложении IV.) Программа FTF1C формирует действительную и мнимую части (со- (соответственно ARE и AIM) выражения ~ " | 2тг zm = 2 ехр -' — /' = 1 I п или -(/ - 1) (т - 1)\zj п = 2 / = ехр i (/ _ 1) (От - \)\z, I п J по заданному вектору z в зависимости от знака последнего параметра Р. Действительная и мнимая части исходного вектора после работы прог- программы замещаются действительной и мнимой частями его дискретного "йраза Фурье*). При повторном входе в программу PTIKR 1 преобразование Фурье по производится. Операторы с 21 по 48 подбирают значение параметра регуляризации, мнорому соответствует положительное значение обобщенной невязки. 1сли значение переменной EPRO - точности решения уравнения невязки - ыдано равным нулю, то после первого вычисления экстремали програм- программа прекращает работу. В противном случае операторы с 49 по 83 реали- ivют метод Ньютона для решения уравнения невязки. Если реализация метода Ньютона приводит к отрицательным значениям обобщенной не- невязки, то программа переходит на метод хорд, реализованный операто- операторами с 84 по 117. Наконец, операторы с 118 по 148 формируют код завершения прог- программы и производят обратное преобразование Фурье, снова обращаясь к программе FTF1C со значением Р < 0. В качестве тестового расчета предлагается использовать решение уравнения / К(х - s)z(s)ds = и(х), х G @, 2). о 15 качестве ядра уравнения будем использовать функцию K(t) = = e~80(f ~0'5) с локальным носителем на интервале @, 1). Точное решение выберем в виде z(s) = ((е-<*-о.з) 2/о,оз+ е-<*-о,7J/о,оз)/ - 0,052130913) * 1,4s. *) Нужно отметить, что в последнее время очень интенсивно разрабатываются программы быстрого дискретного преобразования Фурье. Если у читателей есть фугие стандартные программы БДПФ, быть может, более удобные или быстродей- тующие, то необходимо внести соответствующие изменения в программу PT1KR1. 127
0001 0002 0003 0004 0005 0006 0007 0008 0009 0010 0011 0012 0013 0014 0015 0016 0017 0018 0019 0020 0021 0022 0023 0024 0025 0026 0027 0028 0029 0030 0031 0032 0033 0034 0035 0036 0037 0038 0039 0040 0041 0042 0043 IMPLICIT REAL*8(A-H,0-Z) HEAL*8 KERN,LI,L2 DIMENSION UD00)]U0F4),Z0F4),ZF4), *ERRF4),KERNF4) EXTERNAL AK C=0.0 D=2.0 L1=0.0 L2=1.0 ALPHA=1.0 Cl=1.000001 N=64 IMAX=500 ST=(D-C)/N DO 5 1=1,N S=(I-0.5)*ST-0.5 Z0(I)=0. IF(S.LT.0.0.OR.S.GT.1.0)GOTO 5 Z0(I)=((DEXP(-(S-0.3)**2/0.03)+ +DEXP(-(S-0.7)**2/0.03))/0.955040800- -0.052130913)*1.4*S 5 CONTINUE DO 554 K=1,N S=0.5*(Ll+L2)+ST*(K-N/2-l) KERN(K)=0. IF(S.LT.L1.OR.S.GT.L2)GOTO 554 KERN(K)=AK(S) 554 CONTINUE HH=l.E-9 DO 771 1=1,N S=0.0 DO 770 J=1,N IND=I-J+N/2+l IF(IND.LT.1.OR.IND.GT.N)GQTO 770 S=S+KERN(IND)*Z0(J) 770 CONTINUE U0(I)=S*ST 771 CONTINUE DL=l.E-8 PRINT 999,(Z0(I),I=1,N) 999 FORMATC ТОЧНОЕ РЕШЕНИЕ:'/EF11.8)) PRINT 553,DL,HH 553 FORMATC ПОГРЕШНОСТИ:'/ *' ПРАВОЙ ЧАСТИ :',D16.9/ *' ОПЕРАТОРА :',D16.9) CALL FTIKR(AK,U0,A,B,C,D,L1,L2,N,Z,AN, *DL,HH,C1,IMAX,ALPHA,U,400,IERR) PRINT 501,IERR,AN,ALPHA, *A,B,(Z(II),11=1,N) 501 FORMATC . '/ *' КОД ЗАВЕРШЕНИЯ :', * 15/ *' НЕВЯЗКА :', * D16.9/ *' ПАРАМЕТР РЕГУЛЯРИЗАЦИИ :', * D16.9/ *' РЕШЕНИЕ ИЩЕТСЯ НА ИНТЕРВАЛЕ : С, * F4.1,','.F3.1,')'/ *' .'/' ПРИБЛИЖЕННОЕ РЕШЕНИЕ :'/ * EF11.8)) 128 0044 0045 0001 0002 0003 0004 0005 STOP END FUNCTION AK(Y) IMPLICIT REAL*8(A-H,O-Z) AK=DEXP(-80.*(Y-.5 RETURN END )**2) ******* РЕЗУЛЬТАТЫ РАСЧЕТА ТОЧНОЕ РЕШЕНИЕ: 0.0000000 0.0000000 0.0000000 0.0000000 0.0781444 0.4153146 0.3580418 0.6716434 0.9171859 0.1946139 0.0000000 0.0000000 0.0000000 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. ПОГРЕШНОСТИ: 0000000 0000000 0000000 0004057 1332505 4493240 3440349 8078591 7965067 0955264 0000000 0000000 0000000 ПРАВОЙ ЧАСТИ ОПЕРАТОРА КОД ЗАВЕРШЕНИЯ НЕВЯЗКА ПАРАМЕТР РЕГУЛЯРИЗАЦИИ 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. [ : [ 0000000 0000000 0000000 0046980 2030311 4531892 3662307 9200444 6420254 0255588 0000000 0000000 0000000 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. ******* 0000000 0000000 0000000 0164927 2807711 4305406 4321194 9836398 4775492 0000000 0000000 0000000 0000000 0. 100000008D-07 0.100000008D-08 РЕШЕНИЕ ИЩЕТСЯ НА ИНТЕРВАЛЕ : (-0 ПРИБЛИЖЕННОЕ РЕШЕНИЕ : -0.0001732 0.0000774 -0.0001262 -0.0004805 0.0789945 0.4134268 0.3586625 0.6739294 0.9146427 0.1925503 -0.0052890 -0.0003223 0.0004465 -0 0 0 0 0 0 0 0 0 0 -0 -0 0 .0000900 .0000496 .0000864 .0000786 .1350374 .4464959 .3457038 .8072445 .7976260 .0957308 .0008893 .0010524 .0002744 0 -0 0 0 0 0 0 0 0 0 0 -0 0 .0000035 .0000177 .0003455 .0042919 .2051117 .4504874 .3689687 .9161068 .6452813 .0344657 .0021278 .0008654 .0000081 0. 0. .5, 0 -0 0 0 0 0 0 0 0 0 0 -0 -0 0 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0000000 0000000 0000000 0397695 3556787 3930758 5386594 9833472 3238375 0000000 0000000 0000000 . 344029377D-07 . 573252231D-06 ,1.5) .0000602 .0001153 .0003963 .0160250 .2821066 .4287878 .4357499 .9776574 .4801247 .0034491 .0025232 .0002313 .0001597 0 -0 0 0 0 0 0 0 0 -0 0 0 .0000801 .0001816 .0000355 .0397120 .3554450 .3925543 .5423629 .9778753 .3237098 .0064979 .0012019 .0002975 Рис. 4.5 12V
Значения правой части и(х) на равномерной сетке на [0, 2] опреде- определим как произведение циркулянтной матрицы А, аппроксимирующей интегральный оператор в уравнении по формуле прямоугольником (рис. 4.5), на вектор значений точного решения. Погрешности задания пра- правой части и оператора возьмем соответственно равными h2 = 10~9, 52 = = 1(Г8. Применение к этой задачи программы PTIKR позволяет получить решение, численные значения которого приведены на рис. 4.5. Это ре- решение является экстремалью функционала Ма [z] при значении пара- параметра регуляризации а = 5,7 X 10~7 и соответствует значению невязки 3,44 X Ю-8. В качестве начального приближения параметра регуляризации ис- использовалось значение а = 1, уравнение невязки решалось с точностью до 0,000001 52, т.е. искалось значение а, для которого I р(а) | < 0,000001 52. § 4. Описание программы решения двумерных интегральных уравнений типа свертки В настоящем параграфе рассмотрена программа, предназначенная для решения двумерного уравнения Фредгольма 1-го рода типа свертки Az = f f К(х - s, у - t)z(s, t)dsdt = u(x, у). (9) Пусть известно, что носитель suppK(u, н>) С [/,, L i] X [l2, L2], a suppz'O, t) С [а, А] X [Ь, В], тогда supp«(jc, у) С [с. С] X [d,D], где с = а + li,C = A+L1,d=lb + l2,D = B + L2. Будем считать, что прибли- приближенная правая часть mj (x, у) известна на прямоугольнике [с, С] X [с/, ?>]. Доопределив z(s, t) нулем вне [а, А] X [Ь,В], получим уравнение /, + L. Az = 2 2 / / K(x - s, у - t)z(s, t)dsdt = u(x, у), 1, + L, l2 + L2 Q Q —_ /i +Z,, /i + Li 1 I /2 +Z-2 поскольку [a, A] X [b, В] С \c , С - I X \d- D — . Продолжая ядро с его локального носителя [^ , Li] X X [h, L2] с периодом Т1 = С - с по первому аргументу и Т2 = D — d по второму, мы получаем возможность применить результаты, описанные в гл. I для решения двумерных уравнений типа свертки с помощью дву- двумерного быстрого дискретного преобразования Фурье. Алгоритм решения реализован в программе PTITR. Для решения уравнения р(а) = II Ahzan - щ II?,, - E + h II z% \\к J = О применяется метод Ньютона; необходимая для этого производная р'(а) 130 легко вычисляется в явном виде. Все замечания по поводу сходимости этого метода, сделанные в предыдущем параграфе, остаются в силе. Го- Головной программой является программа PTITR, вызов которой осуще- осуществляется оператором CALL PTITR(AK, U0, ALIM, N1, N2, Z, DL, H, * Cl, ALFA, AN2, U, NU, IMAX, IERR) Здесь: AK(U, W) - программа-функция вычисления ядра К(и, w) урав- уравнения (9); U0 — массив значений правой части и6 (х, у) на равномерных сетках {x^}^'=]> {j^}/2^i на прямоугольнике [с, С] X [d, D\. Числа точек сеток {rii и п2) должны быть целыми степенями 2. ALIM — вещественный массив длины 12; в последних 8 элементах должны быть заданы значения с, С, d, D, I,, L1, 12 и L2 последовательно; в элементах с 1 по 4 вычисляются параметры с — , С — , /2 + L2 l2 +L2 d — , D — — границы прямоугольника, на котором полу- получено приближенное решение уравнения. N1, N2 — размерности равномерных сеток по 1-му и 2-му аргумен- аргументам; сами эти сетки, на которых задается правая часть, имеют вид All V 2/ D-d/ 1\ Ук = * ) + d, к = 1, 2,. . ., n2. n2 \ 2/ Решение ищется на сетках {sj)j'=1, {tk}k'^i таких, что h /2 +L2 / ,, tk= yk Числа N1 и N2 должны быть целыми степенями двух. Z — выходной параметр — массив длины N1 * N2; после окончания работы программы содержит экстремаль функционала Ма [z] на выше- вышеуказанной сетке при значении параметра регуляризации, находящемся в ALFA. DL — входной параметр — значение погрешности 52 правой части уравнения 52 > II «j — и \\\ . Н — входной параметр — значение погрешности h2 оператора A: h2 > > II А - Ah II2. Если вместо функции К(и, w) известна функция Kh(u, w), заданная с погрешностью на прямоугольнике [/ь Lx ] X [l2 , L2], то значение И2 может быть оценено сверху: h2 < 4(L2 - 12){L, - /1) / / I Kiu, w) - Kh(u, w)\2dudw. Cl — входной параметр, определяющий режим работы программы: С1 < 1,0 — режим поиска экстремали Ма [z] при фиксированном значении параметра регуляризации ALFA; 131
Cl > 1,0 — режим выбора параметра регуляризации в соответствии с обобщенным принципом невязки, т.е. из уравнения р(а) = 0. При этом уравнение р(а) = 0 решается с точностью е = (с, - 1 M2 (сi — значение переменной С1) , т.е. ищется такое а, что I р(а) | < б. ALFA — в первом режиме (С1 < 1,0) входной параметр; во втором (С1 > 1,0) — входной и выходной; начальное его значение служит ну- нулевым приближением для корня обобщенной невязки. AN2 — выходной параметр; по окончанию работы программы со- содержит значение невязки II Af,za - us I'i на экстремали функционала Ма [z], содержащейся в Z. ШАХ — входной параметр — максимально допустимое число итера- итераций при решении уравнения р(а) = 0. U - рабочий массив длины не менее 5*N1*N2+NI+ N2; NU — входной параметр — длина массива U. IERR — выходной параметр — код завершения; IERR = 0 — найдена экстремаль za функционала Ма [z] при фиксированном значении пара- параметра регуляризации в случае задания С1 < 1.0 или найдено методом Ньютона значение параметра регуляризации ALFA, удовлетворяющее принципу обобщенной невязки, если это требовалось (С1 > 1,0): IERR = 1 — в случае С1 > 1,0 при реализации метода Ньютона встре- встретились отрицательные значения обобщенной невязки р(а), г.е. нарушена выпуклость обобщенной невязки; решение уравнения невязки р(а) = = 0 найдено методом хорд; IERR = 64 — не хватает длины рабочего массива U; значение пара- параметра регуляризации ALFA при этом не изменилось, значение остальных выходных параметров не определено; IERR= 65 —в случае С1 > 1,0 задано такое начальное значение параметра регуляризации а, что р(а) < 0. Умножением параметра регуляризации на 2 не удалось подобрать такого значения, при котором обобщенная невязка положительна, т.е. р(а • 2'тах) < 0. После окончания программы PTITR в ALFA — значение параметра регуляризации в 2 шах раз больше исход- исходного, в Z — экстремаль, соответствующая этому параметру; IERR = 66 — в случае С1 > 1,0 при реализации метода Ньютона сделано МАХ итераций, а корень уравнения невязки I р(а) | < е = (с, — 1M2 не найден; по окончании программы в ALFA — очередное приближение параметра регуляризации, а в Z — соответствующая ему экстремаль; IERR =67—при реализации метода Ньютона встретились значения обоб- обобщенной невязки, меньшие нуля, произошел переход на метод хорд (это возможно при нарушении выпуклости обобщенной невязки а(д) (ИФ0)). Всего методом Ньютона и методом хорд сделано IMAX итераций, а решения уравнения невязки не найдено; по окончании в ALFA — очередное прибли- приближение метода хорд, а в Z — соответствующая ему экстремаль функцио- функционала Ма[г\; IERR=68 —в режиме подбора параметра регуляризации (С1 > 1,0) в качестве начального приближения задано значение ALFA, равное нулю, либо значение а, равное нулю, появилось в процессе реализации итера- итерационных методов решения уравнения невязки; по окончании работы программы PTITR в Z — экстремаль функционала М° [z]. 132 0001 IMPLICIT REAL*8(A-H,O-Z) 0002 REAL*8 KERN,L1,L2 0003 DIMENSION UF500),U0C2,32),Z0C2,32), *ZC2,32),ALIMA2),KERNC2,32) 0004 EXTERNAL AK 0005 ALIME)=0. 0006 ALIMF)=2.0 0007 ALIMG)=0. 0008 ALIM(8)=2.0 0009 ALIM(9)=0. 0010 ALIMA0)=1.0 0011 ALIMA1)=0.0 0012 ALIMA2)=1.0 0013 ALPHA=1.000 0014 C1=1.000001D0 0015 N1=32 0016 N2=32 0017' IMAX=500 0018 R=0. 0019 ST1=(ALIMF)-ALIME))/N1 0020 ST2=(ALIM(8)-ALIMG))/N2 0021 DO 5 1=1,N1 0022 DO 5 J=1,N2 0023 Sl=(I-0.5)*STl-0.5 0024 S2=(J-0.5)*ST2-0.5 0025 Z0(I,J)=0. 0026 IF(S1.LT.0.0.OR.S1.GT.1.0. * OR.S2.LT.0.0.OR.S2.GT.1.0) * GOTO 5 0027 Z0(I,J)=((DEXP(-(Sl-0.3)**2/0.03)+ +DEXPC-(Sl-0.7)**2/0.03))/0.9550408- -0.052130913)*DEXF(-(S2-0.5)**2/0.03) 0028 5 CONTINUE 0029 DO 554 K=1,N1 0030 DO 554 L=1,N2 0031 Sl=(ALlM(9)+ALIMA0))/2.+STl*(K-Nl/2-l) 0032 S2=(ALIM(ll)+ALIMA2))/2.+ST2*(L-N2/2-l) 0033 KERN(K,L)=0. 0034 IF(S1.LT.ALIM(9).OR.Sl.GT.ALIMA0). * OR.S2.LT.ALIMA1).OR.S2.GT.ALIMA2)) * GOTO 554 0035 KERN(K,L)=AK(S1,S2) 0036 554 CONTINUE 0037 HH=3.68D-11 0038 DO 771 11=1,N1 0039 DO 771 12=1,N2 0040 S=0. 0041 DO 770 J1=1,N1 0042 DO 770 J2=1,N2 0043 INDl=Il-Jl+Nl/2+l 0044 IND2=I2-J2+N2/2+l 0045 IFdNDl.LT.l.OR. IND1 .GT.N1 )GOTO 770 0046 IFCIND2.LT.1.OR.IND2.GT.N2)GOTO 770 0047 S=S+KERN(IND1,IND2)*Z0(J1,J2) 0048 770 CONTINUE Рис. 4.6 133
0049 U0(I1,I2)=S*ST1*ST2 0050 IF(R.LT.U0(I1,12)) R=U0(I1,I2) 0051 771 CONTINUE 0052 DL=6.32D-07 0053 PRINT 553,DL,HH 0054 553 FORMATC ПОГРЕШНОСТИ :'/ *' ПРАВОЙ ЧАСТИ: '.D16.9/ *' ОПЕРАТОРА: '.D16.9) 0055 CALL PTITR(AK,U0,ALIM,N1,N2,Z.DL.HH, *C1,ALPHA,AN,U,6500,IMAX,IERR) 0056 PRINT 501,IERR,AN,ALPHA 0057 501 FORMATC . ' ,/ *'КОД ЗАВЕРШЕНИЯ :', 15/ *'НЕВЯЗКА :'.D16.9/ ^'ПАРАМЕТР РЕГУЛЯРИЗАЦИИ :',D16.9) 0058 PRINT 503 0059 PRINT 502,(Z0A3,I),1=1,N2), *(ZA3,I),I=1,N2) 0060 PRINT 505 0061 PRINT 502,(Z0A,16),1=1,N1), *(Z(I,16),1=1,N1) 0062 502 FORMATC ТОЧНОЕ РЕШЕНИЕ:'/8DF8.4/). *' ПРИБЛИЖЕННОЕ РЕШЕНИЕ:'/8DF8.4/)) 0063 503 FORMATC .'/' СЕЧЕНИЕ Х=0.28125 ') tf2N4 505 FORMATC .'/' СЕЧЕНИЕ Y=0.46375 ') 0065 1000 STOP 0066 END 0001 DOUBLE PRECISION FUNCTION AK(X,Y) 0002 IMPLICIT REAL*8(A-H,O-Z) 0003 AK=DEXP(-20.*(X-0.5)**2-20.*(Y-0.5)**2) 0004 RETURN 0005 END РЕЗУЛЬТАТЫ РАСЧЕТА ******* I СЕЧЕНИЕ Х=0.28125 ТОЧНОЕ РЕШЕНИЕ: 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0006 0.0040 0.0192 0.0706 0.2000 0.4369 0.7354 0.9542 0.9542 0.7354 0.4369 0.2000 0.0706 0.0192 0.0040 0.0006 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 ПРИБЛИЖЕННОЕ РЕШЕНИЕ: -0.0063 -0.0077 -0.0080 -0.0047 0.0019 0.0076 0.0061 -0.0053 -0.0199 -0.0206 0.0150 0.1039 0.2449 0.4134 0.5661 0.6572 0.6572 0.5661 0.4134 0.2449 134 0.1039 0.0150 -0.0206 -0.0053 0.0061 0.0076 -0.0047 -0.0080 -0.0077 СЕЧЕНИЕ Y=0.46875 ТОЧНОЕ РЕШЕНИЕ: 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0408 0.1950 0.4586 0.9542 0.9152 0.7023 0.5123 0.7023 0.9152 0.7633 0.4586 0.1950 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 ПРИБЛИЖЕННОЕ РЕШЕНИЕ: 0.0000 0.0030 0.0031 -0.0244 -0.0397 -0.0309 0.1322 0.2834 0.6572 0.6766 0.6387 0.6593 0.5792 0.4454 0.0233 -0.0309 -0.0062 0.0031 0.4454 0.6593 0.6766 0.2834 -0.0397 0.0030 -0.0199 0.0019 -0.006 3 0.0000 0.0000 0.7633 0.5123 0.9542 0.0408 0.0000 0.0000 -0.0062 0.0233 0.5792 0.6387 0.6572 0.1322 -0.0244 0.0000 Рис. 4.6 (окончание) При использовании программы PTITR для решения уравнения (8) может возникнуть необходимость определять экстремаль функционала A/a[z] при различных значениях параметра регуляризации а и одних и тех же значениях правой части (8). Непосредственное использование про- программы PTITR повлечет за собой многократное применение преобразования Фурье для одних и тех же функций. Избежать этих повторных преобразо- преобразований позволяет вход PTITRE программы PTITR. При этом при повторном обращении достаточно обращаться не к самой программе PTITR, а ко входу PTITRE с фактическими параметрами, имеющими тот же смысл. При обращении ко входу PTITRE необходимо следить за сохранением (восстановлением) перед обращением содержимого рабочего массива U. Заметим, что использование входа PTITRE возможно и в случае режима подбора параметра регуляризации, например в случае, когда PTITR завер- завершилась по коду IERR = 65, 66 или 67). Вызываемые функции и подпрограммы PTIKR3, FTFTC, PTICR1, PTICR2 приведены в Приложениях V и IX. Программу быстрого дискрет- дискретного преобразования Фурье FTF1C см. в Приложении IV. В качестве тестового примера рассмотрим применение программы PTITR для решения интегрального уравнения 1 i о о cxP{-80[(jc -s-0,5J - t-O,5f]}z(s,t)dsdt, x, 135
Точное решение г (s, t) выберем в виде (s-0.3J _ е о.оз + е z (s, г) = ¦ 0,0 3 0,955040800 --0,052130913 )с (I-O.5J 0.03 I Будем считать, что локальный носитель ядра сосредоточен на прямоуголь- прямоугольнике [0, 1] X [0,1]. На рис. 4.6 приведена программа, вызывающая PTITR для решения приведенного выше уравнения, и численные значения решения при s = 0,5 иг =0,5. § 5. Описание программ решения некорректно поставленных задач на специальных множествах. Метод условного градиента Программы, рассмотренные в настоящем параграфе, предназначены для решения интегрального уравнения A) с точно заданным оператором (// = 0). В случае И Ф 0 для решения задачи A) можно использовать эти программы, если вместо величины погрешности задания правой части 6 ис- использовать величину S + ИС0, где константа Со -оценка сверху для нормы точного решения (см. § 1 гл. II), которая легко может быть получена в каждом случае на основании известных констант, ограничивающих точ- точное решение. Метод условного градиента (см. § 1 гл. III) для решения задачи A) на множествах Z4-c монотонно^ невозрастающих, Zi-c монотонно невоз- растающих выпуклых вверх, Zq выпуклых вверх ограниченных функ- функций, а также на множестве функций ограниченной вариации Vq = { Vba (z) < < С }реализован в программах PTIGR, PTIGR1, PT1GR2. Заметим, что задачи решения уравнения A) с использованием априор- априорной информации о принадлежности точного решения множествам функций, направление и монотонности и выпуклости которых не совпадают с пре- предусмотренными программой PTIG, простыми заменами переменных легко приводятся к виду, к которому напосредственно можно применять описы- описываемую программу. Алгоритм, реализованный в программе PTIGR, строит минимизирую- минимизирующую последовательность для функционала невязки ФB)= f[jK(x,s)z(s)ds-us(x)]2dx с а (конечно, в его конечно-разностной аппроксимации) до тех пор, пока не выполнится условие Ф(г) < 52, где 5 — погрешность задания правой части || м§ —п\\ь < 5. 1. Описание программы PTIGR. Головной программой метода яв- является программа PTIGR. Форма обращения к ней CALL PTIGR (AK, U0, А, В, С, D, N, M, Z, AN2, ITER, DL, *ШАХ, С1, С2,1С, U, NU, IERR) Здесь: АК(Х, S) - подпрограмма-функция вычисления ядра К(х, s) урав- уравнения A). 136 U0 — входной параметр — массив значений правой части иь (х) урав- уравнения A) на равномерной сетке {a',}/"j на отрезке [с, d], хх = с, хт =d, состоящей из М точек. А, В, С, D — входные параметры — соответственно величины а, Ь, с, d уравнения A). N — входной параметр — размерность равномерной сетки [sj)j=i на отрезке [a, b], xt = a, s,, = b, на которой ищется неизвестная функция z (s). М — входной параметр — размерность равномерной сетки {х/}'"^ на отрезке [с, d], на которой задана правая часть уравнения A). Z — входной и выходной параметр. При обращении к программе PTIGR содержит начальное приближение к экстремали функционала невязки (массив длиной N). Начальное приближение должно быть допустимой точкой, т.е. монотонным, выпуклым или монотонным и выпуклым одно- одновременно, а также ограниченным константами С, снизу и С2 сверху, или (в случае задачи на Ус) должно иметь обобщенную вариацию \ z,,\ + n—l + 2 \zt— z, + i | < C2. После окончания работы программы PTIGR массив / -1 Z будет содержать найденное приближенное решение. AN2 — выходной параметр — простая переменная, содержащая после окончания работы программы значение функционала невязки Ф(г) = = || Az —Us II i2 на найденном приближенном решении. ITER — выходной параметр — после завершения программы содержит число сделанных программой итераций метода условного градиента. DL — входной параметр — значение погрешности 52 задания правой части уравнения A) : 52 > || и& - п ||22 ; программа PTIGR минимизирует функционал невязки Ф (z) до этого значения. МАХ — входной параметр — максимально допустимое число итераций. Cl, C2 — входные параметры — константы С\, С2, ограничивающие решение или его вариацию. 1С — входной параметр, определяющий множество корректности, на котором программа PTIGR минимизирует невязку Ф(г) = || Az - и$ ||?,: 1С = 1 — множество монотонно невозрастающих функций, ограничен- ограниченных константами С\ и С2 соответственно снизу и сверху; 1С = 2 — множество монотонно невозрастающих, выпуклых вверх функций, ограниченных снизу константой Ct и сверху — константой С2; 1С = 3 — множество выпуклых вверх функций, ограниченных констан- константами Ci и С2; в этом случае минимизация фактически производится на множествеМ\с ~ С {Т^'^}"=0 - выпуклой оболочке векторов Т (Л = Ci+2(C2-Ci), i = j, /=1,2,..., и, d +2(C2 -^ n-j 6. A.H. Тихонов (9) 137
1С =—1 — в этом случае должно быть задано С1 = 0, минимизация производится на множестве функций, удовлетворяющих условию V% (z) + + z(b) <С2 (см. § 1 гл. III). U — рабочий массив длиной не менее N*M + 2 *N + 2 *M. NU — входной параметр — длина рабочего массива U. IERR — выходной параметр — код завершения программы: IERR = 0 - достигнуто значение функционала невязки Ф(г) менее DL или сделано ШАХ итераций метода условного градиента; IERR = 1 — на очередном шаге минимизации невязка не уменьшалась, дальнейшее применение метода условного градиента бесполезно; после окончания в Z — очередное приближение, а в AN2 - соответствующая ему невязка Ф (z) ; IERR = 64 — не хватает длины рабочего массива U, значения выходных параметров в этом случае не определены. Вызываемые подпрограммы: PTIGR1, PTIGR2, PTICRO, PTICR0, PTICR1, PTICR2, PTICR3, PTICR4, PTICR5, PTICR6. Кратко опишем работу программы PTIGR. Операторы с 9 по 15 фор- формируют начало рабочих массивов и проверяют достаточность длины рабо- рабочего массива U программы для размещения рабочих массивов. Затем обращением к программе PTICR0 формируется матрица линейного опера- оператора А, аппроксимирующего интегральный оператор уравнения A). Нако- Наконец, программа PTIGR1 осуществляет собственно минимизацию функцио- функционала <p(z), аппроксимирующего функционал невязки Ф(г) на соответ- ч_, ч. Л- 1 ствующем множестве М\с, М1С> М2с или Муг - ( z: | гп | + S [ г,- - I 2. Описание программы PTIGR1. Поскольку эта программа может представлять самостоятельный интерес, опишем подробнее ее работу. Программа PTIGR1 предназначена для минимизации методом условного градиента квадратичного функционала т п *(?)= 2 ( ЪА„г,-щУ A0) i /i на некоторых специальных множествах. Форма обращения к программе: CALL PTIGR1 (A, Z0, U0, С1, С2,1С, N, M, ITER, DL, *ANGRD, ШАХ, AN2, Z, U, U1, Н, G, IERR) Здесь: А — матрица оператора А из R" в Rm, входящая в выражение для минимизируемого функционала ^ (z) A0). Z^ — начальное приближение (массив длиной N); начальное прибли- приближение должно быть допустимой точкой. Ш — массив длиной М значений координат вектора и, входящего в A0). 138 Cl, C2, 1С — параметры, определяющие множество, на котором мини- минимизируется ip(z) (Ci, Сг - значения параметров С1, С2) : 1С=1 { г: Zi>zt + 1, C2>zi>Cl, i= 1,2 и}; IC = 2 {z: zt IC=3 ?=1, где T^1 ' определяются формулами (9) : IC=~1, Cl =0 {z: \zn л-1 -i \<C2). N, M — соответственно параметры п, т в A0). ITER - число сделанных программой PTIGR 1 итераций. DL — уровень, до которого программа PTIGR 1 минимизирует функ- функцию у (z), определяемую A0). ANGRD — уровень выхода по градиенту: ||grad^(z) ||2 = 4||/l*/lz — — А*и \\2Rm> если квадрат нормы градиента становится меньше этого зна- значения, программа прекращает свою работу. ШАХ — ограничение на число итераций, программа PTIGR 1 не может сделать более ШАХ итераций. AN2 - значение функционала i^(z) = \\Az - и ||^m на найденном приближенном решении. Z — найденное приближенное решение, при вызове подпрограммы PTIGR1 фактические параметры, соответствующие Z и Z(&, могут совпадать. U — значение Az на найденном приближенном решении. G, Н — рабочие массивы длиной N. U1 — рабочий массив длиной М. IERR — код завершения программы: IERR = 0 — нормальное окончание — достигнут уровень невязки или сделано ШАХ итераций; IERR = 1 — на очередном шаге невязка не уменьшилась. Операторы с 12 по 16 последовательно производят следующие дейст- действия, обращаясь к соответствующим подпрограммам. 1. Начальное приближение Z0 пересылается в Z. 2. Вычисляется произведение матрицы оператора А на Z и записывает- записывается в U. 3. Вычисляется невязка <p(z) = \\Az — и ||^га на начальном прибли- приближении. 4. Вычисляется вектор-градиент функционала невязки 2 (А * Az — А*и) = = g на начальном приближении. 5. Вычисляется квадрат нормы градиента ||? [|2, а затем проверяется условие окончания работы программы и, если они не выполнены, то пере- переходим к осуществлению итерационного процесса: а) обращением к программе PTIGR2 вычисляется вершина Н много- многогранника, определяемого значением параметра 1С, в которой достигается минимальное значение линейного функционала (g, t) = 4>(t); б) вычисляется вектор, направленный из найденной вершины в теку- текущее приближенное решение, т.е. направление, противоположное направ- направлению спуска; 6* 139
0001 0002 0003 0004 0005 0006 0007 0008 0009 0010 0011 0012 0013 0014 0015 0016 0017 0018 0019 0020 0021 0022 0023 0024 0025 0026 0027 IMPLICIT REAL*8(A-H,0-Z) DIMENSION U0D1),ZD1),UD1,260),Z0D1) EXTERNAL AK X1=0. X2=l. Yl=-2. Y2=2. N=41 M=41 IMAX=400 IC=2 DL=0. C1=0. C2=l. DO 1 J=1,N X=X1+(X2-X1)/(N-1.)*(J-1.) 1 Z0(J)=1.-X*X CALL FTICR0CAK,U,XI,Х2,Yl,Y2,N,M) CALL PTICR3(U,Z0,U0,N,M) DO 4 J=1,N Z(J)=0. 4 CONTINUE CALL PTIGH(AK,U0,X1,X2,Y1,Y2,N,M,Z,AN, *ITER,DL,IMAX,C1,C2,1С,U,41*260,IERR) PRINT 5,Z0,Z,DL,AN,ITER,IERR STOP 5 FORMATA5X,'ТОЧНОЕ РЕШЕНИЕ:'/'¦'/ * 8EF11.6/),F11.6/'.'/ *15X,'ПРИБЛИЖЕННОЕ РЕШЕНИЕ:'/'.'/ * 8EF11.6/).F11.6/'.'/ *10X,'КВАДРАТ ОШИБКИ В ПРАВОЙ ЧАСТИ :', * D14.6/ *10Х,'НЕВЯЗКА :', * D14.6/ *10Х,'КОЛИЧЕСТВО ИТЕРАЦИЙ :', * 114/ *10Х,'ЗНАЧЕНИЕ IERR :', * 114) END 0001 0002 0003 0004 0005 1.000000 0.984375 0.937500 0.859375 FUNCTION AK(X,Y) IMPLICIT REAL*8(A-H,O-Z) AK=1./A.+100.*(X-Y)**2) RETURN END РЕЗУЛЬТАТЫ РАСЧЕТА ******* ТОЧНОЕ РЕШЕНИЕ: 0.999375 0.977500 0.924375 0.840000 0.997500 0.969375 0.910000 0.819375 0.994375 0.960000 0.894375 0.797500 0.990000 0.949375 0.877500 0.774375 140 0.750000 0.609375 0.437500 0.234375 0.000000 0.988767 0.984712 0.939958 0.856882 0.746579 0.616290 0.430246 0.232469 0.023540 0.724375 0.577500 0.399375 0.190000 0.697500 0.544375 0.360000 0.144375 0.669375 0.510000 0.319375 0.097500 ПРИБЛИЖЕННОЕ РЕШЕНИЕ: 0.988767 0.981902 0.928279 0.836975 0.723870 0.581252 0.390691 0.192914 0.988576 0.974724 0.916600 0.814705 0.701114 0.545292 0.351135 0.150570 0.987790 0.963316 0.896694 0.791996 0.676169 0.508441 •0.311580 0.108227 0.640000 0.474375 0.277500 0.049375 0.986477 0.951637 0.876788 0.769288 0.647221 0.469801 0.272024 0.065883 КВАДРАТ ОШИБКИ В ПРАВОЙ ЧАСТИ НЕВЯЗКА КОЛИЧЕСТВО ИТЕРАЦИЙ ЗНАЧЕНИЕ IERR Рис. 4.7 0.000000D+00 0.207510D-06 400 0 в) программой PTICRO производится минимизация функционала невязки <p(z) на отрезке z - \h, где X Е [0, 1]; результатом работы про- программы PTICRO является величина шага X; г) изменяется приближенное решение в соответствии с найденным шагом X; д) снова вычисляются значение оператора на новом приближении, градиент в новой точке, значение невязки и квадрат нормы градиента; е) производится проверка условий окончания работы программы: если условие окончания не выполнены, то проверяется, уменьшилось ли значение функционала невязки <p(z), если не уменьшилось, то програм- программа завершает свою работу с кодом завершения 1; в противном случае запоминается текущее значение невязки и продолжается итерационный процесс. 3. Описание программы PTIGR2. Программа PTIGR2 служит для вы- выбора оптимальной вершины ?0 соответствующего многогранника Mq,. т.е. вершины, в которой достигается минимальное значение функционала ФA0) = (g, t0) = min ф (?) = min (g, t), где g - заданный фиксированный вектор. Форма обращения к программе: CALL PTIGR2 (TOP, G, N, С1, С2,1С) Здесь: ТОР — найденная оптимальная вершина (массив длины N) — результат работы программы. 141
G — градиент функционала невязки g — фиксированный задаваемый вектор длины N. Cl, C2 — константы, значения которых Сх, С2 определяют множест- множество Мс- 1С — параметр, определяющий многогранник Мс (см. описание про- программы PTIGR1). ; Поиск оптимальной вершины t0 среди вершин Т*-'^ (/ = 0, 1, . . . , п) осуществляется перебором. Координаты вершин Т^1' легко выписывают- выписываются в явном виде, как это сделано в § 3 гл. III. При реализации перебора нет необходимости каждый раз явно вычислять координаты векторов Г(;) (/ = 0, 1, . . . , и) и величину скалярного произведения (g, Г(/)). Заметим, что достаточно сравнивать значения скалярных произведений (g, Т^'^ - 7^°)). Координаты векторов Г^ - Т^0^ выписаны в фор- формулах F), (9), A2) гл. Пи C) гл. III. В качестве тестового расчета предлагается использовать решение за- задачи A) с ядром К(х, j), определяемым B),и значениями границ отрез- отрезков [а, Ь] = [0, 1], [с, d] = [—2, 2]. Будем использовать точное решение задачи Y(s) =1 — s2 и при решении некорректно поставленной задачи воспользуемся априорной информацией о монотонности и выпуклости этого решения. Размерности сеток по обеим переменным выберем равны- равными 41 (и = m = 41). В качестве правой части уравнения A) воспользуем- воспользуемся значениями, вычисляемыми в соответствии с C), таким образом, имеем точность задания правой части уравнения, равную нулю. Применение для решения этой задачи программы PTIGR позволило найти приближенное решение z (s), численные значения которых даны на рис. 4.7, содержащем также обращение к программе PTIGR. Значение невязки Ф (z) = \\ Az — и$ II2 на найденном приближенном решении соста- составило 2,08Х1(Г7, что соответствует относительной погрешности примерно 0.15% (по отношению к максимуму правой части). Всего для нахождения полученного решения потребовалось 400 итераций. § 6. Описание программы решения некорректно поставленных задач на специальных множествах. Метод проекций сопряженных градиентов Метод, описанный в § 2 гл. 3 для решения интегрального уравнения A) на множествах монотонных ограниченных функций Zlc> монотонных выпуклых ZI и выпуклых неотрицательных функций, основанный на применении метода проекции сопряженных градиентов для минимизации функционала невязки Ф(г) = \\Az — ы§ \\\ на соответствующем множест- множестве, реализован в виде программ PTILR, PTILR1, PTILR0, PTILR3, PTILR5, PTILR6, PTILR7, PTILRA, PTILRB. 1. Описание программы PTILR. Головная программа - PTILR. Форма обращения к ней: CALL PTILR (AK, U0, А, В, С, D, N, M, Z, AN2, DL, ITER, * IMAX, C2,1С, О, NU, IERR) 142 «5 - и ||2, программа PTILR минимизирует \ Здесь: АК(Х, S) — подпрограмма-функция вычисления ядра К(х, s) урав- уравнения A). Up — входной параметр — массив значений правой части и$ уравне- уравнения A) на равномерной сетке {х,}™1 на.отрезке [с, d], хх = с, xm = d, состоящей из М точек. А, В, С, D — входные параметры — соответственно величины а, Ь, с, d уравнения A). N — входной параметр — размерность равномерной сетки {s;}"=i на отрезке [а, Ь], Si=a, sn = b, на которой ищется неизвестная функцияz (s). М — входной параметр — размерность сетки {xf} ^L t, на которой задана правая часть уравнения A). Z - входной и выходной параметр. При обращении к программе PTILR в Z должно быть задано начальное приближение (массив из N чисел), начальное приближение должно быть допустимой точкой, т.е. монотонным, выпуклым или монотонным и выпуклым одновременно, неотрицательным, а также в случае множества Zlc AС = 1) оно должно быть ограничено сверху константой С2 ¦ После окончания работы программы PTILR массив Z будет содержать найденное приближенное решение уравнения A). AN2 - выходной параметр - содержит после окончания работы про- программы значение функционала невязки Ф (z) = \\Az - ы5 ||2 на найденном приближенном решении. DL — входной параметр — значение погрешности 52 задания правой части уравнения A): 52 функционал Ф (z) до этого значения. ITER - выходной параметр - число сделанных программой PTILR больших циклов (число изменений активных ограничений). IMAX — входной параметр — максимально допустимое число больших циклов. С2 - входной параметр - константа, значение которой С2, ограничи- ограничивает решение сверху в случае, когда оно ищется на множестве Z\q AС = 1). 1С — входной параметр, определяющий множество, на котором про- программа PTILR минимизирует функционал невязки: 1С = 1 — множество неотрицательных, монотонно убывающих, ограни- ограниченных сверху константой С2 функций (Z lc) i ^ 1С = 2 — множество неотрицательных выпуклых вверх функций (Z); 1С = 3 — множестве) неотрицательных, монотонно убывающих, вы- выпуклых вверх функций (ZI). U — рабочий массив длиной не менее пт + 5 и2 + 5 и + шах {л, т) + 1, если 1С = 1, то длина рабочего массива не менее пт + 5 и2 + 8 и + + тах{л, т} + 4. NU - входной параметр - длина рабочего массива U. IERR - выходной параметр - код завершения: 1ERR = 0 - найдена точка минимума функционала невязки Ф (z) на соответствующем множестве (выход на шаг 6 в алгоритме § 2 гл. III); IERR = 1 — достигнуто значение функционала невязки меньшее задан- заданного значения погрешности DL; IERR = 2 - найдена точка минимума функционала невязки Ф (z) (нор- (норма градиента функционала равна машинному нулю); 143
1ERR = 3 - сделано ШАХ больших циклов (изменений множества активных ограничений); IERR = 64 — не хватает длины рабочего массива U, значения всех вы- выходных параметров не определены; IERR = 65 — ошибка в задании множества корректности, задано 1С либо меньшее 1, либо большее 3, либо при 1С = 1 задано значение С2 = 0.0. Зна- Значения всех выходных параметров в этом случае не определены. Вызываемые подпрограммы: PTILR1, PTILR2, PTILR3, PTILR4, PTILR5, PTILR6, PTILR7, PTILRA, PTILRB, PTICR0, PTICRl, PTICR2, PTICI2, PTICR3, PTICR5, PTICR6, PTILR0. Краткое описание работы программы PTILR. Операторы с 9 по 26 формируют начала рабочих массивов и проверяют достаточность длины рабочего массива U программы для размещения рабочих массивов. Обра- Обращением к программе PTICR0 формируется матрица линейного оператора, действующего из R" в R™, аппроксимирующего интегральный оператор уравнения A). Затем программа PTILRA преобразует функционал не- невязки ip(z) = \\Az - us ||2 к виду v? (z) = (z, Qz) + (d,z) + e, т.е. фор- формирует матрицу Q- А*А и вектор d = 2А*и&. Программа PTILRB форми- формирует матрицу F и вектор g ограничений Fz < g в соответствии со значением параметра 1С, определяющего множество корректности. Основа метода реализована в виде программы PTILR1, служащей для минимизации функционала невязки (z, Qz) + (d,z) + е при наличии ограничений вида Fz < g. Невязка AN2, выдаваемая программой PTILR1, вычисляется в пространстве R'", и поэтому после обращения к PTILR1 она нормируется в соответствии с метрикой Ьг [с. d]. Вход PTILRE, служащий для продолжения счета по программе, позво- позволит избежать при повторном обращении к алгоритму формирования матриц оператора и ограничений и преобразования функционала невязки к виду (z, Qz) + (d, z) + e. При этом вместо обращения к программе PTILR1 происходит обращение к ее входу PTILR2. 2. Описание программы PTILR1. Поскольку основой реализации ал- алгоритма является, как уже отмечалось, программа PTILR1, представляю- представляющая самостоятельный интерес, то приведем краткое ее описание. Програм- Программа PTILR1 служит для минимизации квадратичной функции \\Аг -и ||^,„ = = (z, Qz) + (d, z) + e при наличии ограничений вида Fz <g. Минимизация проводится методом проекции сопряженных градиентов, как это описано в § 2 гл. III. Форма обращения: CALL PTILR1 (М, MF, MASK, A, AJ, F, P, U0, PI, G, GR, * W, PI, WORK, IMAX, ITER, Q, X, D, N, NN, AN2, DL, * ANGRD, IEND) Здесь: М - число точек сетки, на которой задается правая часть и (в случае WORK = .FALSE, можно не задавать). MF - целая рабочая переменная - число активных ограничений. MASK - рабочий массив длиной NN - число ограничений; содержит признаки активности ограничений. 144 \ А — матрица M*N оператора А (в случае WORK = .FALSI.. можно не задавать). AJ - рабочий массив длиной не менее NN * N. F - матрица ограничений размерности NN * N. Р - рабочий массив длиной не менее NN * N. Щ - правая часть уравнения A) (в случае WORK = .FALSE, можно не задавать). PI — рабочий массив длиной не менее N * N. G — вектор ограничений g длиной NN. GR — рабочий массив длиной не менее N. W — рабочий массив длиной не менее max{NN, M, N}. Р1 — рабочий массив длиной не менее N. WORK — логическая переменная, определяющая режим вычисления невязок: WORK = .TRUE. - заданы входные параметры М, A, U0, DL; на каждом большом цикле производится вычисление невязки <p(z) ~\\Az -и ||j^m и ее сравнение с заданной величиной DL; WORK = .FALSE. — вычисления невязки не производится (величины М, A, U0, DL при обращении можно не задавать). IMAX — максимально допустимое число больших циклов. ITER - число сделанных больших циклов. Q - матрица Q функционала невязки <р (г) = (z, Qz) + (d,z) + е. X - начальное приближение; после завершения программы массив X длины N содержит найденное приближенное решение. D - вектор d функционала <р (z) = (z, Qz)+ (d, z) + e длины N. N - размерность пространства решений. NN - число ограничений. AN2 — содержит после окончания работы программы значение функ- функционала невязки ip(z) = || Az - и ||^m на найденном приближенном реше- решении в случае задания параметра WORK = .TRUE. DL — предельный уровень минимизации по невязке; когда ip (z) = = || Az — u||2 становится менее DL, программа прекращает свою работу. ANGRD - уровень выхода по градиенту || grad^(z) ||2 = || 2Qz + d\\2, если квадрат нормы градиента становится менее этого значения, то про- программа прекращает свою работу. IEND - код завершения программы: IEND = 0 - найдена точка минимума <p(z) на рассматриваемом мно- множестве (выход на шаг 6 алгоритма § 2 гл. III); IEND = 1 - достигнуто значение функционала <р(г), меньшее DL; IEND = 2 - достигнуто значение нормы градиента, меньшее ANGRD; IEND = 3 — сделано IMAX больших циклов. Программа имеет вход PTILR2, предназначенный для повторного обращения для продолжения минимизации. Для этого необходимо обра- обратиться ко входу PTILR2, определив все необходимые входные параметры, а также восстановив значения параметров MF и MASK. При этом удается избежать процедуры накопления активных ограничений при помощи фик- фиктивных шагов, требующих обращение матрицы. Обращаем внимание на то, что параметры DLh AN2, характеризующие невязку, имеют для программ PTILR и PTILR1 различный смысл. 145
0001 0002 0003 0004 0005 0006 0007 0008 0009 0010 0011 0012 0013 0014 0015 0016 0017 0018 0019 0020 0021 0022 0023 0024 0025 0026 IMPLICIT REAL*8(A-H,0-Z) DIMENSION U0D1),ZD1),UD1,260),Z0D1) EXTERNAL AK X1=0. X2=l. Yl=-2. Y2=2. N=41 M=41 IMAX=100 IC=1 DL=0. C2=l. DO 1 J=1,N X=X1+(X2-X1)/(N-1.)*(J-1. ) 1 Z0(J)=1.-X*X CALL FTICR0(AK,U,XI,Х2,Yl,Y2,N,M) CALL PTICR3(U,Z0,U0,N,M) DO 4 J=1,N Z(J)=0.5 4 CONTINUE CALL FTILR(AK,U0,XI,X2,Yl,Y2,N,M,Z,AN, *DL,ITER,IMAX.C2,1С,U,41*260,IERR) PRINT 5,Z0,Z.DL.AN,ITER,IERR STOP 5 FORMATA5X,'ТОЧНОЕ РЕШЕНИЕ:'/'.'/ * 8EF11.6/).F11.6/'.'/ *15X,'ПРИБЛИЖЕННОЕ РЕШЕНИЕ:'/'.'/ * 8EF11.6/).F11.6/'.'/ *10X,'КВАДРАТ ОШИБКИ В ПРАВОЙ ЧАСТИ :', * D14.6/ *10Х,'НЕВЯЗКА :', * D14.6/ *10Х,'КОЛИЧЕСТВО ИТЕРАЦИЙ :', * 114/ *10Х,'ЗНАЧЕНИЕ IERR :', * 114) END 0001 002 0003 0004 0005 FUNCTION AK(X,Y) IMPLICIT REAL*8(A-H,O-Z) AK=1./C1.+100.*(X-Y)**2) RETURN END 1.000000 0.984375 0.937500 0.859375 0.750000 РЕЗУЛЬТАТЫ РАСЧЕТА ******* ТОЧНОЕ РЕШЕНИЕ: 0.999375 0.977500 0.924375 0.840000 0.724375 0.997500 0.969375 0.910000 0.819375 0.697500 0.994375 0.960000 0.894375 0.797500 0.669375 0.990000 0.949375 0.877500 0.774375 0.640000 146 0.609375 0.577500 0.544375 0.510000 0.474375 0.437500 0.234375. 0.000000 1.000000 0.980707 0.949780 0.834447 0.745504 0.609797 0.377656 0.166467 0.000000 0.399375 0.190000 0.360000 0.144375 - 0.319375 0.097500 ПРИБЛИЖЕННОЕ РЕШЕНИЕ: 1.000000 0.980707 0.905914 0.834447 0.735822 0.591852 0.377656 0.166467 КВАДРАТ ОШИБКИ НЕВЯЗКА 0.995091 0.959777 0.905914 0.827738 0.735322 0.591852 0.377656 0.155991 0.995091 0/959777 0.902689 0.823042 0.620072 0.591852 0.366507 0.108782 В ПРАВОЙ ЧАСТИ : 0. КОЛИЧЕСТВО ИТЕРАЦИЙ ЗНАЧЕНИЕ IERR : 0. : 0.277500 0.049375 0.995091 0.956411 0.897000 0.745504 0.620072 0.377656 0.351647 0.044609 000000D+00 397428D-13 100 3 Рис. 4.8 Использование программы PTILR1 возможно также при решении за- задачи A) при наличии информации о положении, например, экстремумов искомой функции. Для этого достаточно в программе PTILR использо- использовать другую программу PTILRB формирования матрицы F и вектора огра- ограничений g. При этом следует следить, чтобы в любой допустимой точке строки матрицы активных ограничений были линейно независимы. В про- простейшем случае изменения сводятся к перемене знаков у соответствую- соответствующих строк матрицы ограничений. Приведем для примера программу PTILRB для случая задачи на множестве функций, неубывающих при а < s < х0 и невозрастающих при х0 < s < Ъ. Предполагается, что точка х0 принадлежит сетке, на которой ищется решение и задается в COMMON- блоке своим номером J0. SUBROUTINE PTILRB (F, G, N, NN. IT ASK, C, IERR) COMMON J0 С * ПАРАМЕТРЫ ITASK, С ФИКТИВНЫЕ DIMENSION F(NN, N), G(NN) REAL *8F,G,C INTEGER N, NN, ITASK, IERR, L, I, J0 С * ФОРМИРУЕМ NN - ЧИСЛО ОГРАНИЧЕНИЙ NN = N - 1 С* ЗАНУЛЯЕМ МАТРИЦУ CALL PTICR2(F, 0. О, N * NN) С * ФОРМИРУЕМ ВЕКТОР ОГРАНИЧЕНИЙ CALL PTICR2(G,0.0, NN) 147
С * ФОРМИРУЕМ МАТРИЦУ ОГРАНИЧЕНИЙ DO 11 1 = 2, J0 F(l- 1,1- 1)= 1.0 F(I- 1,1) =-1.0 . 1 1 CONTINUE L = N 1 DO 12 1 = J0, L F(I, I) = 1.0 FA,1+ 1>= 1.0 12 CONTINUE IERR = 0 RETURN END. В качестве тестового расчета предлагается использовать расчет с по- помощью программы PTILR задачи A) с ядром B) (а = 0, Ъ = 1, с = -2, d = 2) и точным решением I(s) = 1 - s2. Значения п, т возьмем равны- равными 41. Правая часть выбирается в соответствии с формулой C). На рис. 4.8 приведена программа-обращение, реализующая решение этой задачи с использованием априорной информации о монотонном убывании искомой функции и ее ограниченности сверху константой С2 = 1. Там же приведены результаты - приближенное решение z(s). Отметим, что решение задачи A) с помощью программы PTILR тре- требует неоднократного обращения матрицы активных ограничений, что требует значительных затрат машинного времени. Кроме того, задание "неудачного" начального приближения (на ребре малой размерности) может привести к необходимости накопления активных ограничений, требующего фиктивных шагов, на каждом из которых обращается матри- матрица активных ограничений. Тем самым для задач большой размерности при- применение программы PTILR может оказаться неэффективным. § 7. Описание программы решения некорректно поставленных задач на специальных множествах. Метод сопряженных градиентов с проецированием на множество векторов с неотрицательными компонентами Метод решения интегрального уравнения A) на множествах моно- монотонных (ZI), выпуклых (Z) неотрицательных функций, основанный на переходе к новым переменным, как это описано в § 3 гл. III, реализо- реализован в виде программ PTISR, PTISR1, PTISR2, PTISR3, PTISR4. 1. Описание программы PTISR. Головная программа - PTISR. Форма обращения к ней: CALL PTISR(AK,U0, А, В, С, D, N, M, Z, AN2, ITER, * DL, ШАХ, 1С, U, NU, 1ERR) 148 Здесь: АК(Х, S) - подпрограмма-функция вычисления ядра К(х, s) уравне- уравнения A). U0 - входной параметр — массив значений правой части уравнения A) на равномерной сетке (х,}™= , на отрезке [с, d], Xi - с, хт = d, состоя- состоящей из М точек. А, В, С, D — входные параметры — соответственно величины а, Ь, с, d уравнения A). N — входной параметр — размерность п равномерной сетки !$,!"= i на отрезке [a, b],st = a, sn = b, на которой ищется неизвестная функ- функция z (s). М — входной параметр — размерность сетки {xi)™= t, на которой зада- задана правая часть уравнения A). Z — входной и выходной параметры. При обращении к программе PTISR должен содержать начальное приближение к экстремали функцио- функционала невязки (массив из N чисел). Начальное приближение должно быть обязательно допустимой точкой, т.е. монотонным, выпуклым или моно- монотонным и выпуклым одновременно, а также неотрицательным. После окончания работы программы PTISR массив Z будет содержать найден- найденное приближенное решение. AN2 — выходной параметр — простая переменная, содержащая после окончания работы программы значение функционала невязки Ф(г) = = \\ Az — us ||? ^ на найденном приближенном решении Z. ITER - выходной параметр - после завершения программы содержит число сделанных программой PTISR итераций метода проекций сопря- сопряженных градиентов. DL — входной параметр — значение погрешности 52 задатппг правой части уравнения A); программа PTISR минимизирует функционал не- невязки Ф(г) до этого значения. IMAX входной параметр — максимально допустимое число итераций. 1С - входной параметр, определяющий множество, на котором про- производится минимизация функционала невязки: 1С = 1 - множество монотонно не возрастающих, неотрицательных функций; 1С = 2 — множество монотонно невозрастающих, выпуклых вверх не- неотрицательных функций; 1С = 3 множество выпуклых вверх, неотрицательных функций; 1С = 4 множество монотонно невозрастающих, выпуклых вниз, неотрицательных функций; 1С = 5 - множество выпуклых вниз функций, неотрицательных на краях рассматриваемого отрезка (в точках а, Ь). U — рабочий массив длиной не менее N*M + 3*N + 2*M. NU — выходной параметр — длина рабочего массива U. IERR — входной параметр код завершения программы: IERR = 0 - найдена точка минимума функционала невязки Ф(г) = = || Az - иь ||2 на соответствующем множестве (норма градиента функцио- функционала равна машинному нулю или найден минимум в текущем подпростран- подпространстве и никакое ограничение нельзя исключить из множества активных); !49
IERR = 1 функционал невязки Ф(г) достиг значения меньшего DL или сделано IMAX итераций метода проекции сопряженных градиентов; IERR = 2 -- невязка Ф(г) не уменьшилась на очередном шаге, дальней- дальнейшее применение метода проекции сопряженных градиентов бесполезно: по окончании программы PT1SR в Z очередное приближение к точке минимума; IERR = 64 — не хватает длины рабочего массива, в этом случае значе- значения всех выходных параметров не определены: IERR = 65 - возникает из-за накопления погрешностей округления, в этом случае значениям выходных параметров доверять нельзя. Вызываемые- подпрограммы: PTISRl, PTISR2, PTISR3, PTISR4. PTICRO, PTICR0, PT1CR1, PTICR2, PTICI2, PTICR3, PTICR4, PTICR5, PTICR6, PTICR7, PTICR8, PTICR9. Кратко опишем работу подпрограммы PTISR. Операторы с 9 по 19 фор- формируют начала рабочих массивов и проверяют достаточность длины рабо- рабочего массива U программы PTISR. Затем обращением к программе PTISRp формируется матрица А линейного оператора, аппроксимирующего ин- интегральный оператор уравнения A). Вслед за этим программа PTISR2 преобразует матрицу А и начальное приближение Z в соответствии с заме- заменой переменных, переводящей задачу минимизации в множество II* (см. § 3 гл. III). Программа PTISRl осуществляет минимизацию функционала невязки у(х) = \\Ах — и ||2 „ на множестве П+ векторов с неотрицатель- ными компонентами методом проекции сопряженных градиентов. Заме- Заметим, что в программе PTISR невязка вычисляется в аналоге интегральной метрики L2 [ с, d ], а в программе PTISRl эта величина вычисляется в обыч- обычной евклидовой метрике и-мерного пространства R". После завершения минимизации экстремальная точка х подвергается обратному преобразо- преобразованию z = Тх из П+ в множество, определяемое значением параметра 1С. Это преобразование осуществляется программой PTISR3. Вход PTISRE служит для повторного обращения к программе и для продолжения счета. В этом случае нет необходимости заново формиро- формировать матрицу А и осуществлять ее преобразование и преобразование на- начального приближения. Матрица А в преобразованном виде сохраняется в первых N * М элементах рабочего массива U. Для сохранения текущего приближения х ? II+ используется 26-й оператор, пересылающий его в следующие N элементов массива U. Таким образом, для продолжения счета достаточно сохранить и восстановить первые N * (М + 1) элементов рабочего массива U. 2. Описание программы PTISRl. Основой реализации алгоритма явля- является программа PTISRl, служащая в общем случае для минимизации сглаживающего функционала Ma[z] = \\Az-u\\\m + a(||z||2R«+p||z'||2R«-i) на множестве II+ векторов с неотрицательными компонентами г,- > О (в комплексе с программой PTISR программа PTISRl используется для минимизации невязки, т.е. а = 0) методом проекции сопряженных гра- градиентов. 150 Форма обращения к программе: CALL PTISRKA, Z0, U0, N. М. ITER. DL, ANGRD, ШАХ, AN2, * ALF. RO. Z.U.U1.H.G, [PLUS, IERR) Здесь: А матрица оператора A: R" -* R'" - массив размерности М * N. Z0 начальное приближение, все компоненты начального приближе- приближения должны быть неотрицательными - массив длиной N. U0 правая часть уравнения — массив длиной М. N, М размерности пространств. 1TER число сделанных программой итераций. DL уровень выхода по невязке tp(z) = ||.4z-м ||^»i; как только ?(z) становится меньше этого значения, программа прекращает работу с кодом ответа IERR = 1. ANGRD - уровень выхода по градиенту; программа прекращает ра- работу с IERR = 1, если || gradMa [z] ||R« становится меньше этой величины. IMAX — максимально допустимое число итераций. AN2 -- значение невязки ^(z) на найденном приближенном решении. ALF - значение параметра регуляризации в Ма [z]. RO значение веса р в выражении для Ма [z]. Z найденное приближенное решение — массив длиной N. U значение Az E R'" на приближенном решении - массив длиной М. Ш рабочий массив длиной М. Н, G, IPLUS ¦ рабочие массивы длиной N. 1ERR код завершения программы: 1ERR = 0 - найден "точный" минимум функционалам" [z] на II+ ; 1ERR = 1 сделано IMAX итераций, или достигнуто значение невяз- невязки DL, или достигнуто значение квадрата нормы градиента меньшее ANGRD; IERR = 2 - на очередном шаге невязка не уменьшилась; IERR = 65 вычисленный шаг вдоль очередного направления спуска получился отрицательным (этот случай возможен только при накопле- накоплении погрешностей округления). Кратко опишем работу программы PTISRl. Операторы с 13 по 23 последовательно производят следующие действия, обращаясь к соответст- соответствующим подпрограммам: 1) начальное приближение пересылается в Z: 2) вычисляется значение U оператора А на начальном приближении Z; 3) вычисляется невязка и добавляется к ней значение стабилизатора; 4) вычисляется градиент невязки и к нему добавляется градиент ста- стабилизатора. Операторы с 27 по 45 формируют (или изменяют в зависимости от значения признака JCH) множество активных ограничений и вычисляют размерность текущей грани. Затем обращением к программе PTICR7 вычисляется квадрат нормы проекции градиента на множество активных ограничений (на текущую грань). Операторы с 47 по 56 изменяют и формируют счетчик итераций на текущей грани и по нему определяют достижимость точного минимума этой грани. Если минимум на грани достигнут, то множество активных
ограничений формируется заново, и если i'io |>;i пчерносгь при этом не из- изменяется, то считается, что достигну! гочный минимум, и противном слу- случае вычисления продолжаются с оператора 5(> Оисраюры с 57 по 61 фор- формируют направление спуска в соответствии со ншченисм признака пере- перехода на другую грань КН. Затем операторы с d2 но 72 находят наиболь- наибольший возможный шаг, не выводящий из М*, и номер нового возможного ограничения. Последовательно осуществляются: одномерная минимиза- минимизация программой PTICRO, переход в новую точку, вычисление невязки, сглаживающего функционала и их градиентов, устанавливаются необходи- необходимые признаки и проверяются условия окончания работы программы. После запоминания невязки управление возвращается па начало итераций оператор 24. Программа PTISR2 служит для преобразования матрицы оператора А: R" ->¦ R'" и начального приближения при переходе в И + . Форма обращения: CALL PTISR2(A. Z. N, M, 1С, S) Здесь: А матрица оператора. Z начальное приближение. N,M размерности пространств. 1С - параметр, определяющий множество корректности М. имеющий то же значение, что и при обращении к программе PTISR, S - рабочий массив длины N. Программа PTISR3 служит для возврата из П+ в множество коррект- корректности, определяемое параметром 1С. Форма обращения: CALL PT1SR3(Z, N. 1С, Y) Здесь: Z - преобразуемый вектор длины N, Y — рабочий массив длины N. Программы PTISR2 и PTISR3 используют при работе программу-функ- программу-функцию PT1SR4, вычисляющую элементы матрицы перехода Г.';' из 11+ в множество, определяемое параметром 1С (см. § 3 гл. 111). Форма обраще- обращения: S = PTISR4(I,J,IC,N). Описанные в настоящем параграфе программы могут быть модифи- модифицированы для решения уравнения A) в случаях, когда об искомом реше- решении имеется информация о кусочной монотонности или выпуклости, при- причем точки экстремумов или перегибов известны. В этом случае задачу минимизации функционала невязки на соответствующем множестве мож- можно также свести к задаче минимизации квадратичной функции <4>(z) на множестве П + . Пусть, например, известно, что искомая функция является кусочно- монотонной с экстремумами, расположенными в точках sJ (/ =1,2,...,/), либо кусочно-выпуклой с / точками перегиба s" (/ = 1, 2, . . . , /). Будем считать, что а < s? < si < . . . < s' < b, аналогично а < s" < . . . < s" < b. He ограничивая общности, будем считать, что на участке (a, s') искомая 152 0001 SUBROUTINE FTISR5(A.Z,N,M,IC.L.ISL) С * ПРЕОБРАЗОВАНИЕ МАТРИЦЫ ОПЕРАТОРА A(M,N) И С * НАЧАЛЬНОГО ПРИБЛИЖЕНИЯ ПРИ РЕШЕНИИ ЗАДАЧИ С * НА КУСОЧНО-МОНОТОННЫХ И ВЫПУКЛЫХ ФУНКЦИЯХ 0002 DIMENSION A(M,N),Z(N),ISL(N) 0003 REAL*8 A,Z,R 0004 INTEGER N.M.L,I,J.ISL,J0,1С 0005 J0=1 0006 R=1. 0007 DO 1 J=1,N 0008 IF (J0.EQ.L+1) GOTO 2 0009 IF (J.NE.ISL(J0)) GOTO 2 0010 J0=J0+1 0011 R=-R 0012 2 CONTINUE ~~ 0013 Z(J)=R*Z(J) 0014 DO 3 1=1,M 0015 A(I,J)=R*A(I,J) 0016 3 CONTINUE 0017 1 CONTINUE 0018 RETURN 0019 END Рис. 4.9 0001 SUBROUTINE PTISR6(Z,N,1С,L,ISL) С * ОБРАТНОЕ ПРЕОБРАЗОВАНИЕ РЕШЕНИЯ В СЛУЧАЕ С * КУСОЧНО-МОНОТОННЫХ (ВЫПУКЛЫХ) ФУНКЦИЙ 0002 DIMENSION Z(N),ISL(N) 0003 REAL*8 Z,R 0004 INTEGER N.L,I,J.ISL.J0,1С 0005 J0=1 0006 R=l. •0007 DO 1 J=1,N 0008 IF (J0.EQ.L+1) GOTO 2 0009 IF (J.NE.ISL(J0)) GOTO 2 0010 J0=J0+1 0011 R=-R 0012 2 CONTINUE 0013 Z(J)=R*Z(J) 0014 1 CONTINUE 0015 RETURN 0016 END Рис. 4.10 функция не возрастает, либо, в случае кусочно-выпуклой функции z(s) выпукла кверху на (a, s"). Для решения задачи A) на множествах кусочно-монотонных или кусочно-выпуклых функций в число формальных параметров программы PTISR необходимо дополнительно ввести параметры: L — входной параметр, число экстремумов или точек перегиба иско- искомой функции;
0001 0002 0003 0004 0005 0006 0007 0008 0009 0010 0011 0012 0013 0014 0015 0016 0017 0018 0019 0020 0021 0022 0023 0024 0025 0001 0002 0003 000 A 0005 IMPLICIT REAL*8 (A-H.O-Z) DIMENSION U0D1),ZD1),UD1,260),Z0D1) EXTERNAL AK X1=0. X2=l. Yl=-2. Y2 = 2. N=41 M=41 IMAX=400 IC=3 DL=0. DO 1 J=1,N X=X1+(X2-X1)/(N-1.)*(J-1.) 1 Z0(J)=4.*X*A.-X) CALL PTICR0(AK,U,X1,X2,Y1,Y2,N,M) CALL PTICR3(U,Z0,U0,N,M) DO 4 J=1,N Z(J)=0. 4 CONTINUE CALL FTISRCAK.ira.Xl.XZ.Yl^.N.M, Z.AN, *ITER,DL,IMAX,1С,U,41*260,IERR) PRINT 5,Z0,Z,DL,AN,ITER,IERR STOP 5 FORMATA5X,'ТОЧНОЕ РЕШЕНИЕ:'/'•'/ * 8EF11.6/),F11.6/'.'/ *15X,'ПРИБЛИЖЕННОЕ РЕШЕНИЕ:'/'.'/ 8EF11.6/).F11.6/'.'/ 'КВАДРАТ ОШИБКИ В ПРАВОЙ ЧАСТИ :', D14.6/ 'НЕВЯЗКА :', D14.6/ 'КОЛИЧЕСТВО ИТЕРАЦИЙ :', 114/ 'ЗНАЧЕНИЕ IERR : ' , 114) * *10Х, * *10Х, * *10Х, *10Х, * END FUNCTION AK(X,Y) REAL*8 AK.X.Y AK=1./A.+100.*(X-Y)**2) RETURN END ******* РЕЗУЛЬТАТЫ РАСЧЕТА ******* ТОЧНОЕ РЕШЕНИЕ: 0.000000 0.437500 0.750000 0.937500 1.000000 0.937500 0.750000 0.097500 0.510000 0.797500 0.960000 0.997500 0.910000 0.697500 0.190000 0.577500 0.840000 0.977500 0'. 990000 0.877500 0.640000 0.277500 0.640000 0.877500 0.990000 0.977500 0.840000 0.577500 0.360000 0.697500 0.910000 0.997500 0.960000 0.797500 0.510000 0.437500 0.000000 0.000000 0.437501 0.749999 0.937500 1.000000 0.937500 0.749999 0.437501 0.000000 0.360000 0.277500 0.190000 0.097500 ПРИБЛИЖЕННОЕ РЕШЕНИЕ: 0.097502 0.510001 0.797500 0.960000 0.997500 0.910000 0.697499 0.360000 0. 189998 0.577501' 0.840000 0.977500 0. 990000 0.877500 0.639999 0.277498 0.277498 0.639999 0.877500 0.990000 0.977500 0.840000 0.577501 0.189998 0.360000 0.697499 0.910000 0.997500 0.960000 0.797500 0.510001 0.097502 КВАДРАТ ОШИБКИ В ПРАВОЙ ЧАСТИ НЕВЯЗКА КОЛИЧЕСТВО ИТЕРАЦИЙ ЗНАЧЕНИЕ IERR Рис. 4.11 0.000000D+00 0.946452D-18 88 0 ISL — входной целый массив, содержащий номера точек экстремума или перегиба искомой функции на равномерной сетке {s.}"= , S\ -a, sn = Ъ. Номера точек в массиве ISL должны строго возрастать. Значения и смысл всех остальных параметров сохраняется. При 1С = 1 ищется кусочно-монотонное решение, а при 1С = 3 — кусочно-выпуклое. В программу PTISR должны быть внесены следующие изменения. 1. После обращения к программе PTISR2 (оператор 20) необходимо обратиться к программе PTISR 5: CALL PTISR5(R(NA), Z, N, M, 1С, L, ISL) Текст программы PTISR5 приведен на рис. 4.9. 2. По окончании работы программы, перед обращением к программе PTISR3 (оператор 26) необходимо обратиться к программе PTISR6: CALL PTISR6(Z, N, 1С, L, ISL) Текст программы PTISR6 приведен на рис. 4.10. 3. Непосредственно перед обращением к программе PTISR1 (опера- (оператор 24) произвести присваивания N1=2 IF(IC.EQ.l)N.l = 1 N2 = N - 1 4. В программе PTISR1 операторы 29 и 64 заменить соответственно на DO 4 N1, N2 и DO 10 N1, N2. 5. В начале программ PTISR и PTISR1 вставить описание COMMON - блока COMMON N1, N2. 154 155
В качестве тестового расчета предлагается использовать решение за- задачи A) с ядром B) и значениями границ интервалов а = 0, b = I, с= —2, d =? 2. Точное решение задачц примем равным J(s) = 4s (I — s). Будем использовать априорную информацию о выпуклости этого решения. В ка- качестве правой части уравнения воспользуемся значениями, вычисленными в соответствии с C). Точность задания правой части б2 будем иметь в этом случае равной нулю. Применение для решения такой задачи программы PTISR позволяет найти приближенное решение z (s), числовые значения которого и про- программа-обращение помещены на рис. 4.11. Значение невязки Ф(г) = = || Az - иь ||2 на найденном приближенном решении составляет9,46 X 10~х 9, что соответствует относительной погрешности примерно 5 Х10~9% (по отно- отношению к максимуму правой части). Все для нахождения полученного ре- решения потребовалось 88 итераций. В качестве начального приближения использовались функции z^{s) =0. ПРИЛОЖЕНИЯ I. Программа решения интегральных уравнений Фредгольма 1 -го рода методом Тихонова с преобразованием уравнений Эйлера к трехдиагональному виду 0001 SUBROUTINE FTIMRC AK.U0,А,В,С,D.N.M,Z, *AN2,DL,Н,С1,IMAX,ALFA,U,NU,IERR,AMU, *C2,ALP,EPSF) С * ПРОГРАММА РЕШЕНИЯ ИНТЕГРАЛЬНОГО УРАВНЕНИЯ С * ПЕРВОГО РОДА МЕТОДОМ РЕГУЛЯРИЗАЦИИ С * ТИХОНОВА С ВЫБОРОМ ПАРАМЕТРА РЕГУЛЯРИЗА- С * ЦИИ ПО ПРИНЦИПУ ОБОБЩЕННОЙ НЕВЯЗКИ С * С ПРЕОБРАЗОВАНИЕМ СИСТЕМЫ УРАВНЕНИЙ С * К ДВУХДИАГОНАЛЬНОМУ ВИДУ 0002 IMPLICIT REAL*8(A-H,O-Z) 0003 INTEGER N,M,IERR,IMAX,NAK,NC,NB,NS1,NS2 0004 INTEGER NF1,NP2,NU1,NU2,NA,NG,NAL,NBT 0005 INTEGER NOM,K1,K2,ICONT,NM,I,NAN 0006 REAL*3 A,B,C,D,AN2,DL,H,C1,ALFA,RO,EPS 0007 REAL*8 SUM,AN4,HX,HY>U>F,F0,X>X0,Y 0008 REAL*8'U0,Z,DU,DH,AK,AN1,DD 0009 DIMENSION U0(M),Z(N),U(NU) 0010 EXTERNAL FTICR0,PTIMRC,FTIMRS,FTIMRD, *PTIMRP,FTIMRR,FTIMRQ,PTIMRN, *PTIMRK,PTICR6,FTIMR0,PTIMRA,AUMINM 0011 ICONT=0 С * ICONT-ПРИЗНАК РАБОТЫ С ПРОДОЛЖЕНИЕМ С * 1СОЫТ=0-НАЧАЛО РАБОТЫ С * ICONT=1-BXOД ДЛЯ ПРОДОЛЖЕНИЯ 0012 110 CONTINUE 0013 DU=DSQRT(DL) 0014 DH=DSQRT(H) С * ТАБЛИЦА СООТВЕТСТВИЯ С * НАЗВАН.* ДЛИНА * СОДЕРЖАНИЕ С * AK(D) N*M МАТРИЦА СИСТЕМЫ, С * D=A*INV(S) МАТРИЦА С * ВЕКТОРОВ ОТРАЖЕНИЯ С * С ' N ДИАГОНАЛЬ СТАБИЛИЗАТОРА, С * ПОДДИАГОНАЛЬ Р'*Р С * В N НАДДИАГОНАЛЬ СТАБИЛИЗА- С * ТОРА, НАДДИАГОНАЛЬ Р'*Р С * SI N ДИАГОНАЛЬ Б.ГДЕ C=S"*S 157
С * S2 N НАДДИАГОНАЛЬ S С * PI N ДИАГОНАЛЬ МАТРИЦЫ Р С * Р2 N НАДДИАГОНАЛЬ МАТРИЦЫ Р С * Ul N ВЕКТОР U1=R*D'*U0 С * U2 М ВЕКТОР U2=Q'*U0, С * РАБОЧИЙ ДЛЯ PTIMR0 С * А N ДИАГОНАЛЬ Р'*Р С * G M(N) РАБОЧИЙ, С * ДИАГОНАЛЬ P'*P+ALFA*E С * AL N ПРОГОНОЧНЫЕ КОЭФФИЦИЕНТЫ С * ВТ N ПРОГОНОЧНЫЕ КОЭФФИЦИЕНТЫ С * ФОРМИРУЕМ НАЧАЛА МАССИВОВ 0015 NAK=1 0016 NC=NAK+N*M 0017 NB=NC+N 0018 NS1=NB+N 0019 NS2=NS1+N 0020 NP1=NS2+N 0021 NP2=NF1+N 0022 NU1=NP2+N 0023 NU2=NU1+N 0024 NA=NU2+M 0025 NG=NA+N 0026 NAL=NG+M 3027 NBT=NAL+N 0028 NOM=NBT+N 0029 IF(NOM-l.GT.NU) GOTO 64 С * К1.К2-СЧЕТЧИКИ ИТЕРАЦИЙ 0030 K1=0 0031 K2=0 0032 KJ=0 0033 AMU=0. 0034 FUNC=0. С * RO - ВЕС ПРОИЗВОДНОЙ В НОРМЕ W 0035 RO=1. 0036 HX=(B-A)/(N-1.) 0037 HY=(D-C)/(M-1. ) 0038 DD=HX/HY С * EPS - ТОЧНОСТЬ РЕШЕНИЯ УРАВНЕНИЯ НЕВЯЗКИ 0039 EPS=(C1-1.)*DL 0040 IF(ICONT.EQ.l) GOTO 111 С * ФОРМИРУЕМ МАТРИЦУ ОПЕРАТОРА А 0041 CALL PTICR0(AK,U(NAK),A,B,C,D)N,M) С * ФОРМИРУЕМ МАТРИЦУ СТАБИЛИЗАТОРА 0042 CALL PTIMRC(U(NC),U(NB),N,RO/HX**2) С * ПРЕДСТАВЛЯЕМ МАТРИЦУ СТАБИЛИЗАТОРА С * В ВИДЕ S'*S 0043 CALL FTIMRS(U(NC),U(NB),U(NS1),U(NS2'. С * ВЫЧИСЛЯЕМ D=A*INV(S) 0044 CALL FTIMRD(U(NS1) ,U(NS2),U(NAK),N,MN. С * QFR-АЛГОРТМ ПРЕОБРАЗОВАНИЯ МАТРИЦЫ АК С * СИСТЕМЫ УРАВНЕНИЙ 0045 CALL PTIMR0(U(NAK),U(NP1),U(NP2), *U(NG),N,M) С * ФОРМИРУЕМ ТРЕХДИАГОНАЛЬНУЮ МАТРИЦУ P'*F 0046 CALL FTIMRF(U(NF1),U(NF2),U(NC), 158 *U(NB),U(NA),N,M) С * ФОРМИРУЕМ U2=Q'*U0 ДЛЯ ВЫЧИСЛЕНИЯ НЕВЯС- 0047 CALL PTIMRQ(U0,U(NAK),U(NU2),N,M,U(NG С * ФОРМИРУЕМ U1=R*D'*U0=F'*U2 С * ПРАВУЮ ЧАСТЬ СИСТЕМЫ 0048 CALL PTIMRR(U(NU1),U(NU2), *U(NF1),U(NP2),N,M) 0049 111 CONTINUE 0050 NAN=NA+N-1 С * ВЫЧИСЛЕНИЕ МЕРЫ НЕСОВМЕСТНОСТИ - AN1 0051 AN1=0.0 0052 IF(N.EQ.M)GOTO 13 0053 CALL FTICR6(U(NU2+N),U(NU2+N),M-N,AN1 0054 AN1=AN1*HY 0055 13 CONTINUE 0056 IF(C2.GE.l.) CALL AUMINM(U(NA),ALP, *IMAX,U(NC),U(NB),U(NG).U(NU1).U(NAL), *U(NBT),Z,N,AN1,AN2,M,DU,DH,HX,HY,AN4, *U(NF1),U(NP2),U(NU2),AMU,C2,KJ,EPSF) 0057 GOTO G0,71,69),KJ 0058 71 CONTINUE С * НАЧАЛО ЦИКЛОВ ПО ПАРАМЕТРУ РЕГУЛЯРИЗАЦИИ 0059 DO 22 I=NA,NAN 0060 22 U(I+N)=U(I)+ALFA*DD С * РЕШАЕМ СИСТЕМУ МЕТОДОМ ПРОГОНКИ 0061 CALL FTIMRN(U(NC),U(NB),U(NG),U(NU1), *U(NAL),U(NBT),Z,N) С * ВЫЧИСЛЯЕМ ОБОБЩЕННУЮ НЕВЯЗКУ 0062 CALL PTIMRA(AN1,AN2,Z,N,M,DU,DH,HX,HY> *AN4,U(NP1),U(NP2),U(NU2),FUNC,AMU,C2) 0063 IF(C1.LE.1)GOTO 100 0064 IF(ALFA.EQ.0.)GOTO 68 0065 IF(AN4.GE.EPS) GOTO 11 С * ЕСЛИ НЕВЯЗКА МЕНЬШЕ EPS TO УМНОЖАЕМ НА 2 С * ПОКА НЕ СТАНЕТ БОЛЬШЕ EPS 0066 ALFA=2.*ALFA 0067 К1=К1+1 0068 IF(K1.EQ.IMAX) GOTO 65 0069 GOTO 13 С * ЗАДАЕМ НАЧАЛЬНЫЕ ТОЧКИ ДЛЯ МЕТОДА ХОРД 0070 11 F0=AN4 0071 X0=1./ALFA 0072 ALFA=ALFA*2. 0073 X=1./ALFA 0074 DO 5 I=NA,NAN 0075 5 U(I+N)=U(I)+ALFA*DD С * МЕТОД ПРОГОНКИ 0076 CALL PTIMRN(U(NC),U(NB),U(NG),U(NU1),. *U(NAL),U(NBT),Z,N) С * ВЫЧИСЛЯЕМ НЕВЯЗКУ AN2 С * И ОБОБЩЕННУЮ НЕВЯЗКУ AN4 0077 CALL PTIMRA(AN1,AN2,Z)N,M,DU,DH,HX,HY> *AN4,U(NF1),U(NF2),U(NU2),FUNC,AMU,C2) 007 8 14 CONTINUE С * ЕСЛИ ВЫПОЛНЕНО УСЛОВИЕ: С * НЕВЯЗКА МЕНЬШЕ EPS,НО БОЛЬШЕ -EPS, 159
С * ТО ПРОГРАММА РАБОТУ ЗАКАНЧИВАЕТ 007 9 IF(DABS(AN4).LE.EPS) GOTO 100 0080 1 CONTINUE С * ЕСЛИ НЕВЯЗКА МЕНЬШЕ -EPS, С * ТО ИДЕМ НА МОДИФИЦИРОВАННЫЙ МЕТОД ХОРД 0081 IFCAN4.LT.-EPS) GOTO 2 0082 IFCALFA.EQ.0.)GOTO 68 0083 К2=К2+1 0084 IF(K2.EQ.IMAX)GO TO 66 С * СОБСТВЕННО МЕТОД ХОРД 0085 Y=X0-F0/(AN4-F0)*(X-X0) 0086 Х0=Х 0087 X=Y 0088 F0=AN4 0089 ALFA=1./X 0090 DO 7 I=NA,NAN 0091 7 U(I+N)=U(I)+ALFA*DD С * МЕТОД ПРОГОНКИ 0092 CALL PTIMRNCU(NC),U(NB),U(NG),U(NU1), *U(NAL),U(NBT),Z,N) С * ВЫЧИСЛЯЕМ НЕВЯЗКУ AN2 С * И ОБОБЩЕННУЮ НЕВЯЗКУ AN4 0093 CALL PTIMRA(AN1,AN2,Z)N,M,DU,DH,HX,HY1 *AN4,U(NF1),U(NP2),U(NU2),FUNC,AMU,C2) 0094 GOTO 14 0095 2 CONTINUE С * СЮДА ПОПАДАЕМ ЕСЛИ ОБОБЩЕННАЯ НЕВЯЗКА С * СТАНОВИТСЯ ОТРИЦАТЕЛЬНОЙ, С * В ЭТОМ СЛУЧАЕ ПЕРЕХОДИМ С * НА МОДИФИЦИРОВАННЫЙ МЕТОД ХОРД 0096 F=AN4 0097 23 Y=X0+F*(X-X0)/(F-F0) 0098 ALFA=1./Y 0099 DO 15 I=NA,NAN 0100 15 U(I+N)=U(I)+ALFA*DD С * МЕТОД ПРОГОНКИ 0101 CALL FTIMRN(U(NC),U(NB),U(NG),U(NU1), *U(NAL),U(NBT),Z,N) С * ВЫЧИСЛЯЕМ НЕВЯЗКУ AN2 С * И ОБОБЩЕННУЮ НЕВЯЗКУ AN4 0102 CALL PTIMRA(AN1,AN2,Z>N,M,DU,DH>HX.HY, *AN4,U(NF1),U(NP2),U(NU2), *FUNC,AMU,C2) С * ЕСЛИ НЕВЯЗКА >-EPS,HO <EPS С * TO ПРОГРАММА РАБОТУ ЗАКАНЧИВАЕТ 0103 IF(DABS(AN4).LE.EPS) GOTO 102 0104 K2=K2+1 0105 IF(K2.GE.IMAX) GOTO 67 0106 IF(ALFA.EQ.0.)G0TO 68 0107 IF(AN4.LE.-EPS) GOTO 37 0108 X0=Y 0109 F0=AN4 0110 GOTO 23 0111 37 CONTINUE С * МЕНЯЕМ ИНТЕРВАЛ 0112 X=Y 160 0113 0114 0115 0116 0117 0118 0119 0120 0121 0122 0123 0124 0125 0126 0127 0128 0129 0130 0131 0132 0133 0134 0135 0136 0137 0138 0139 0140 0141 0142 0143 0144 0145 0146 0147 С * 64 С * 65 С * С * 66 С * 67 С * С * 68 С * F=AN4 GOTO 23 ENTRY PTIMRE ВХОД ДЛЯ ПРОДОЛЖЕНИЯ ICONT=1 GOTO 110 CONTINUE HE ХВАТАЕТ ДЛИНЫ РАБОЧЕГО МАССИВА IERR=64 GOTO 101 CONTINUE СДЕЛАНО IMAX УМНОЖЕНИЙ НА 2, А ОБОБЩЕННАЯ НЕВЯЗКА < НУЛЯ IERR=65 GOTO 101 CONTINUE СДЕЛАНО IMAX ИТЕРАЦИЙ IERR=66 GOTO 101 CONTINUE СДЕЛАНО IMAX ИТЕРАЦИЙ, ПРИМЕНЯЛСЯ МОДИФИЦИРОВАННЫЙ МЕТОД IERR=67 GOTO 101 CONTINUE ЗАДАНО ИЛИ ПОЛУЧИЛОСЬ ALFA=0. IERR=68 GOTO 101 . 69 CONTINUE С * •; С * С * МИНИМУМ НЕ ЛОКАЛИЗОВАН ЗА IMAX ПОПЫТОК IERR=69 GOTO 101 70 CONTINUE AMU С ДАННОЙ ТОЧНОСТЬЮ НЕ НАЙДЕНО ЗА IMAX ИТЕРАЦИЙ IERR=70 GOTO 101 102 CONTINUE С * с * НОРМАЛЬНОЕ ОКОНЧАНИЕ С ПРИМЕНЕНИЕМ МОДИФИЦИРОВАННОГО МЕТОДА ХОРД IERR=1 GOTO 101 100 CONTINUE С * НОРМАЛЬНОЕ ОКОНЧАНИЕ IERR=0 101 CONTINUE С * С * ВЫПОЛНЯЕМ ОБРАТНОЕ ПРЕОБРАЗОВАНИЕ К СТАРЫМ ПЕРЕМЕННЫМ CALL PTIMRK(Z,U(NS1),U(NS2),U(NAK), *N,M,Z,U(NG)) RETURN END 0001 SUBROUTINE PTIMRC(C,B,N,RO) С * ПОДПРОГРАММА ФОРМИРУЕТ СТАБИЛИЗАТОР, 161
0002 0003 0004 0005 0006 0007 0008 0009 0010 0011 0012 0001 0002 0003 0004 0005 0006 0007 0008 0009 0010 0011 0012 0001 0002 0003 0004 0005 0006 0007 0008 0009 0010 0011 0012 0013 0014 0001 162 С * С-ДИАГОНАЛЬ,В-НАДДИАГОНАЛЬ IMPLICIT REAL*8(A-H,O-Z) INTEGER N,I REAL*8 RO.C.B DIMENSION C(N),B(N) DO 1 1=1,N C(I)=1.+2.*RO B(I)=-RO IFd.EQ.l.OR. I.EQ.N) C(I) = 1.+RO 1 CONTINUE RETURN END SUBROUTINE PTIMRS(C,B,S1,S2,N) С * ПОДПРОГРАММА ПРЕДСТАВЛЯЕТ СТАБИЛИЗАТОР С * В ВИДЕ S'*S, С * SI-ДИАГОНАЛЬ,32-НАДДИАГОНАЛЬ IMPLICIT REAL*8(A-H,O-Z) INTEGER N,I REAL*8 C,B,S1,S2 DIMENSION C(N),B(N),S1(N),S2(N) S1A)=DSQRT(CA)) S2A)=BA)/S1A) DO 1 1=2,N S1(I)=DSQRT(C(I)-(S2(I-1))**2) 1 S2(I)=B(I)/S1(I) RETURN END SUBROUTINE PTIMRD(S1,S2,AA,N,M) С * ПОДПРОГРАММА ФОРМИРУЕТ МАТРИЦУ D=A*INV(S), С * S ЗАДАНА ДИАГОНАЛЬЮ SI И НАДДИАГОНАЛЬЮ S2 С * РЕЗУЛЬТАТ ОСТАЕТСЯ НА МЕСТЕ МАТРИЦЫ А IMPLICIT REAL*8(A-H,O-Z) INTEGER N,M,I,J REAL*8 S1.S2.AA DIMENSION S1(N))S2(N),AA(M,N) DO 1 J=1,M 1 AA(J,1)=AA(J,1)/S1A) DO 2 1=2,N DO 3 J=1,M AA(J,I)= 3 CONTINUE 2 CONTINUE RETURN END SUBROUTINE PTIMR0(D,P1,P2,A,N,M) С * QPR-АЛГОРИТМ ПРЕОБРАЗОВАНИЯ С * МАТРИЦЫ D(M,N)=Q*P*R - С * Р1,Р2 - ДИАГОНАЛЬ И С * НАДДИАГОНАЛЬ МАТРИЦЫ Р С * НА МЕСТЕ МАТРИЦЫ D(M,N) ОСТАЮТСЯ: С * В СТОЛБЦАХ ПОД ДИАГОНАЛЬЮ - С * ВЕКТОРА ОТРАЖЕНИЙ СЛЕВА (Q) С * В СТРОКАХ НАД ДИАГОНАЛЬЮ - С * ВЕКТОРА ОТРАЖЕНИЙ СПРАВА (R) 0002 IMPLICIT REAL*8(A-H,O-Z) 0003 REAL*8 D,P1,P2,A,B,T,S 0004 INTEGER N.M.K.Kl,I,J 0005 DIMENSION D(M,N),P1(N),P2(N),A(M) 0006 EXTERNAL PTIMR1 0007 DO 6 K=1,N С * ВЫБИРАЕМ К-ЫЙ СТОЛБЕЦ 0008 DO 11 J=K,M 0009 11 A(J)=D(J,K) С * ФОРМИРУЕМ ВЕКТОР ОТРАЖЕНИЯ 0010 CALL PTIMR1(A(K),M-K+1,B) 0011 А(К)=А(К)-В 0012 CALL PTIMR1(A(K),M-K+1,T) 0013 IF(T.EQ.0.)GOTO 12 0014 DO 13 J=K,M 0015 13 A(J)=A(J)/T 0016 GOTO 14 0017 12 CONTINUE 0018 DO 15 J=K,M 0019 15 A(J)=0. 0020 14 CONTINUE С * A(K) - A(M) - ВЕКТОР ОТРАЖЕНИЯ С * ЗАПИСЫВАЕМ ВЕКТОР ОТРАЖЕНИЯ В МАТРИЦУ D 0021 DO 16 J=K,M 0022 16 D(J,K)=A(J) С * ФОРМИРУЕМ ЭЛЕМЕНТ ДИАГОНАЛИ - Р1 0023 Р1(К)=В С * ОТРАЖАЕМ СТОЛБЦЫ С К+1 ПО N МАТРИЦЫ D 0024 К1=К+1 0025 DO 17 I=K1,N 0026 S=0. 0027 DO 18 J=K,M 0028 18 S=S+D(J,I)*A(J) 0029 DO 19 J=K,M 0030 19 D(J,I)=D(J,I)-2.*S*A(J) 0031 17 CONTINUE 0032 IF(K1.LT.N)GOTO 60 0033 IF(K1.EQ.N)P2(K)=D(K,K1) 0034 GOTO 6 0035 60 CONTINUE С * ВЫБИРАЕМ К-УЮ СТРОКУ МАТРИЦЫ D 0036 DO 21 I=K1,N 0037 21 A(I)=D(K,I) С * ФОРМИРУЕМ ВЕКТОР ОТРАЖЕНИЯ 0038 CALL PTIMRKA(Kl) .N-K1 + 1.B) 0039 А(К1)=А(К1)-В 0040 CALL PTIMRKA(Kl) ,N-K1+1,T) 0041 IF(T.EQ.0.)GOTO 22 0042 DO 23 I=K1,N •¦63
0043 23 A(I)=A(I)/T 0044 GOTO 24 0045 22 CONTINUE 0046 DO 25 I=K1,N 0047 25 A(I)=0. 0048 24 CONTINUE С * В A(K1) - A(N) - ВЕКТОР ОТРАЖЕНИЯ С * ЗАПИСЫВАЕМ ВЕКТОР ОТРАЖЕНИЯ С * В К-УЮ СТРОКУ МАТРИЦЫ D 0049 DO 26 I=K1.N 0050 26 D(K,I)=A(I) С * ФОРМИРУЕМ ЭЛЕМЕНТ ПОДДИАГОНАЛИ Р2 0051 Р2(К)=В С * ОТРАЖАЕМ СТРОКИ С К+1 ПО М МАТРИЦЫ D 0052 DO 27 J=K1,M 0053 S=0. 0054 DO 28 I=K1,N 0055 " 28 S=S+D(J,I)*A(I) 0056 DO 29 I=K1,N 0057 29 D(J,I)=D(J,I)-2.*S*A(I) 0058 27 CONTINUE 0059 6 CONTINUE 0060 RETURN 0061 END 0001 SUBROUTINE PTIMR1(A,N,S) С * ВЫЧИСЛЕНИЕ НОРМЫ S ВЕКТОРА А ДЛИНЫ N 0002 IMPLICIT REAL*8(A-H,O-Z) 0003 REAL*8 A,S,R,R1 0004 INTEGER N,I 0005 DIMENSION A(N) 0006 R=0- 0007 DO 1 1=1,N 0008 R1=DABS(A(D) 0009 IF(R1.GE.R)R=R1 0010 1 CONTINUE 0011 S=0. 0012 IFCR.EQ.0.)GOTO 999 0013 R1=0. 0014 DO 2 1=1,N 0015 R1=R1+(A(I)/R)**2 0016 2 CONTINUE 0017 S=DSQRT(R1)*R 0018 999 CONTINUE 0019 RETURN 0020 END 0001 SUBROUTINE PTIMRP(P1,P2,A,B,C,N,M) С * ПОДПРОГРАММА ФОРМИРУЕТ МАТРИЦУ Р'*Р, С * С-ДИАГОНАЛЬ,А-ПОДДИАГОНАЛЬ, С * В-НАДДИАГОНАЛЬ РЕЗУЛЬТАТА 0002 IMPLICIT REAL*8(A-H,O-Z) 164 0003 INTEGER N.M.I.Nl 0004 REAL*8 P1,P2,A,B,C 0005 DIMENSION P1(N),P2(N),A(N),B(N),C(N) 0006 CA)=P1A)**2 0007 BA)=P1A)*P2A) 0008 AB)=BA) 0009 C(N)=P1(N)**2+P2(N-1)**2 0010 B(N)=0. 0011 AA)=0. 0012 N1=N-1 0013 DO 1 1=2,N1 0014 C(I)=P1(I)**2+P2(I-1)**2 0015 B(I)=P1(I)*P2(I) 0016 A(I+1)=B(I) 0017 1 CONTINUE 0018 RETURN 0019 END 0001 SUBROUTINE PTIMRQ(U0,D,U2,N,M,A) С * ПРОГРАММА ФОРМИРОВАНИЯ ВЕКТОРА U2=Q'*U0 С * ДЛЯ ВЫЧИСЛЕНИЯ НЕВЯЗКИ 0002 IMPLICIT REAL*8(A-H,O-Z) 0003 INTEGER N,M,J,K 0004 REAL*8 U0,D,U2,A,S 0005 DIMENSION U0(M),D(M,N),U2(M),A(M) 0006 EXTERNAL PTICR6.PTICR1 С * ПЕРЕСЫЛАЕМ ПРАВУЮ ЧАСТЬ U0 0007 DO 1 J=1,M 0008 1 U2(J)=U0(J) С * ПОСЛЕДОВАТЕЛЬНО ОТРАЖАЕМ ВЕКТОР U2 0009 DO 3 K=1,N 0010 DO 4 J=K,M 0011 4 A(J)=D(J,K) С * В А - ВЕКТОР ОТРАЖЕНИЯ С * ОТРАЖАЕМ ВЕКТОР U2 0012 CALL PTICR6(A(K),U2(K),M-K+1,S) 0013 CALL PTICR1(U2(K),A(K),U2(K), *M-K+1,-2.*S) 0014 3 CONTINUE 0015 RETURN 0016 END 0001 SUBROUTINE PTIMRR(U1,U2,P1,P2,N>M) С * ПРОГРАММА ФОРМИРАВАНИЯ ПРАВОЙ ЧАСТИ С * U1=P'*U2 ДЛЯ ПРОГОНКИ 0002 IMPLICIT REAL*8(A-H,O-Z) 0003 INTEGER N,M,I 0004 REAL*8 U1,U2,P1,P2 0005 DIMENSION U2(M),P1(N),P2(N),U1(N) И006 U1A)=P1A)*U2A) И007 DO 1 1=2, N ЧИ08 Ul(I)=U2(I1! )*P2(I-1)+U2(I)*P1(I) 165
0009 0010 0011 1 CONTINUE RETURN END 0001 SUBROUTINE PTIMRN(A,B,C,F,AL,BT,X,N) С * РЕШЕНИЕ МЕТОДОМ ПРОГОНКИ СИСТЕМЫ YP-НИЙ: С * A(I)*X(I-1)+C(I)*X(I)+B(I)*X(I+1)=F(I) 0002 IMPLICIT REAL*8(A-H,O-Z) 0003 INTEGER N,I,J 0004 REAL*8 Y,A(N),B(N),C(N),F(N),AL(N) 0005 REAL*8 BT(N),X(N) 0006 ALA)=0. 0007 BTA)=0. 0008 DO 1 1=2,N 0009 Y=-(C(I-1)+A(I-1)*AL(I-D) 0010 AL(I)=B(I-1)/Y 0011 BT(I)=(A(I-1)*BT(I-1)-F(I-1))/Y 0012 1 CONTINUE С * ПРОГОНОЧНЫЕ КОЭФФИЕЦИЕНТЫ ВЫЧИСЛЕНЫ 0013 X(N)=(A(N)*BT(N)-F(N))/ /(-C(N)-A(N)*AL(N)) 0014 DO 2 1=2,N 0015 J=N-I+2 0016 X(J-1)=AL(J)*X(J)+BT(J)' 0017 2 CONTINUE 0018 RETURN 0019 END 0001 SUBROUTINE PTIMRA(AN1,AN2>Z,N,M,DL,H, *HX,HY,AN4,PI,P2,U2,FUNC,AMU,C2) С * ПОДПРОГРММА ВЫЧИСЛЯЕТ НЕВЯЗКУ AN2 С * И ОБОБЩЕННУЮ НЕВЯЗКУ AN 4 С * AN1 - МЕРА НЕСОВМЕСТНОСТИ С * СИСТЕМЫ УРАВНЕНИЙ С * DL.H - ОШИБКИ ПРАВОЙ ЧАСТИ С * И ОПЕРАТОРА (БЕЗ КВАДРАТОВ) 0002 IMPLICIT REAL*8(A-H,O-Z) 0003 INTEGER N.M.I 0004 REAL*8 AN1,AN2,AN4)H,HX,HY,S 0005 REAL*8 DL,Z,P1>P2,U2,SUM 0006 DIMENSION P1(N),P2(N),Z(N),U2(M) 0007 EXTERNAL PTICR6 С * ВЫЧИСЛЯЕМ НЕВЯЗКУ - AN2 0008 SUM=0. • 0009 DO 46 1=2,N 0010 46 SUM=SUM+(P1(I-1)*Z(I-1)+ +P2(I-1)*Z(I)-U2(I-1))**2 0011 SUM=SUM+(P1(N)*Z(N)-U2(N))**2 0012 IF(C2.GE.l.) GOTO 6 0013 AN2=SUM*HY+AN1 С * ВЫЧИСЛЯЕМ ОБОБЩЕННУЮ НЕВЯЗКУ 0014 AN4=AN2-DL**2-AN1 166 7, I 0015 0016 0017 0018 0019 0020 0021 0022 0023 0024 0025 0026 0027 0028 0001 00fcJ 0003 0004 0005 0006 0007 0008 0009 0010 0011 0012 0013 0014 0015 0016 0017 0018 0019 0020 0021 0022 С С С с с с с с с * 5 6 7 * * * 2 * * 1 * * 5 IF(H.EQ.0.)GOTO 5 ЕСЛИ Н!0., ТО ВЫЧИСЛЯЕМ НОРМУ РЕШЕНИЯ CALL PTICR6(Z,Z,N,S) S=DSQRT(S*HX) S - НОРМА РЕШЕНИЯ В W21 AN4=AN2-(DL+H*S)**2-AN1 CONTINUE GOTO 7 AN2=SUM*HY AN3=DSQRT(AN2) CALL PTICR6(Z,Z,N,S) S=DSQRT(S*HX) FUNC=AN3+H*S AN4=AN3-H*S-DL-AMU RETURN END SUBROUTINE PTIMRK(X,SI,S2,D,N,M,Z,A) ПРОГРАММА ОБРАТНОГО ПЕРЕХОДА К СТАРЫМ НЕИЗВЕСТНЫМ Z=INV(S)*R'*X IMPLICIT REAL*8(A-H,O-Z) INTEGER N,M,II,K,K1,N1,I.J REAL*8 X,S1,S2,D,Z.A.S DIMENSION X(N),S1(N),S2(N), *D(M,N),Z(N),A(N) EXTERNAL PTICR6.PTICR1 DO 1 11=3,N K=N-II+1 K1=K+1 DO 2 I=K1,N A(I)=D(K,I) В А - ВЕКТОР ОТРАЖЕНИЯ ОТРАЖАЕМ ВЕКТОР X CALL PTICR6(A(K1),X(K1),N-K1+1,S) CALL PTICR1(X(K1),A(K1),X(K1), *N-K1+1,-2.*S) CONTINUE УМНОЖАЕМ НА ОБРАТНУЮ К S МАТРИЦУ Т.Е. РЕШАЕМ СИСТЕМУ N1=N-1 Z(N)=X(N)/S1(N) DO 5 1=1,N1 J=N-I Z(J)=(X(J)-S2(J)*Z(J+1))/S1(J) CONTINUE RETURN END ИИ01 SUBROUTINE AUMINM(ZV,ALP,KMAX,A,В,С,F, *AL,ВТ,X,N,AN1,AN 2,M,DL,H,HX,HY, *AN4,P1,P2,U2,AMU,C2,K2,EPSF) 167
0002 0003 0004 0005 0006 0007 0008 0009 0010 0011 0012 0013 0014 0015 0016 0017 0018 0019 0020 0021 0022 0023 0024 0025 0026 0027 0028 0029 0030 0031 0032 0033 0034 0035 0036 0037 0038 0039 0040 0041 0042 0043 0044 0045 0046 0047 0048 0049 0050 0051 0052 0053 0054 0055 168 IMPLICIT REAL*8(A-H,0*-Z) INTEGER M,N LI.K2.K3 REAL*8 ZV(N),A(N),B(N),C(N),F(N),AL(N) REAL*8 BT(N),X(N),P1(N),F2(N),U2(M) EXTERNAL PTIMRN.PTIMRA LI=0 DD=HX/HY K3=0 K2=0 X1=0.D0 1 CONTINUE DO 13 I=1,N 13 C(I)=ZV(I)+ALF*DD CALL PTIMKN(A,B,C,F,AL,BT,X,N) CALL PTIMRA(AN1,AN2,X,N,M,DL,H,HX,HY> *AN4,PI,P2,U2,FUNC,AMU,C2) GOTOB,5,6),LI F2=FUNC X2=ALP ALP=ALP*2.D0 LI=1 GOTO 1 2 F3=FUNC X3=ALP IF(F3-F2) 3,3,4 3 F1=F2 X1=X2 F2=F3 X2=X3 ALP=ALP*2.D0 K3=K3+1 IFCK3.GE.KMAX) GOTO 15 GOTO 1 4 X4=X3 F4=F3 AU=(DSQRTE.D0)-1.D0)/2.D0 10 X3=Xi+AU*(X4-Xl) X2=X4-AU*(X4-X1) ALP=X2 LI=2 GOTO 1 5 F2=FUNC ALP=X3 LI=3 GOTO 1 6 F3=FUNC IF(DABS(X3-X2).LE.1.D0/C2) GOTO 12 IFCX1.EQ.0.) GOTO 322 IF(DABS(DMIN1(F2,F3)-DMAX1(F1,F4)). .LE.EPSF) GOTO 12 GOTO 321 322 IF(F4-DMIN1(F2,F3).LE.EPSF) GOTO 12 321 K2=K2+1 IF(K2.GE.KMAX) GOTO 14 IF(F3-F2) 7,8,9 7 X1=X2 0056 0057 0058 0059 0060 0061 0062 0063 0064 0065 0066 0067 0068 0069 0070 9 8 14 12 15 16 F1=F2 GOTO 10 X4=X3 F4=F3 GOTO 10 X4=(X4+X3)/2.D0 GOTO 10 K2 = l ALP-(X3+X2)/2.D0 AMU=(F3+F2)/2.D0+DL K2 = 2 GOTO 16 K2=3 RETURN END I П. Программа решения интегральных уравнений Фредгольма 1-го рода мегодом Тихонова с использованием мекыа сопряженных градиентов 0001 SUBROUTINE PTIZRf AK.U0. А.Е. "".D.N.M,;;. *AN2.DL.H,C1,IMAX, *ALFA,U,NU,IERR) С * ПРОГРАММА РЕШЕНИЯ ИНТЕГРАЛЬНОГО УРАВНЕНИЯ С * ПЕРВОГО F'JflA МЕТОДОМ РЕГУЛЯРИЗАЦИИ С * ТИХОНОВА С ВЫБОРОМ ПАРАМЕТРА РЕГУЛЯРИЗАЦИИ С * В СООТВЕТСТВИИ С ПРИНЦИПОМ С * ОБОБЩЕННОЙ НЕВЯЗКИ С * ДЛЯ МИНИМИЗАЦИИ ФУНКЦИОНАЛА ТИХОНОВА С * ИСПОЛЬЗУЕТСЯ МЕТОД СОПРЯЖЕННЫХ ГРАДИЕНТОВ 0002 IMPLICIT REAL*8(A-H,O-Z) 0003 INTEGER ISRR,K1.K2.NU1,NU,M,N,NA.NGRD, *NS,NP,N1.I,IMAX.ITER,IER 0004 REAL*8 U0,U,Z,DU,DH,AK,DD 0005 REAL*8 A,B,C,D,AN2,DL,H,C1,ALFA,RO,EPS 0006 REAL*8 AN4.F0,F,X0.X.Y,HX,HY 0007 DIMENSION U0(M) ,U(NU) ,.Z(M) 0008 EXTERNAL PTICR0.PTIZR1,PTIZRA С * ТАБЛИЦА СООТВЕТСТВИЯ С * ИМЯ ДЛИНА СОДЕРЖАНИЕ С * A N*M МАТРИЦА ОПЕРАТОРА С * GRD N ГРАДИЕНТ В PTIZR1 С * S N НАПРАВЛЕНИЕ СПУСКА В PTIZR1 С * Р М РАБОЧИЙ МАССИВ ДЛЯ PTIZR1 0009 ICONT=0 С * ICONT - ПРИЗНАК РАБОТЫ С ПРОДОЛЖЕНИЕМ С * ICONT=0 - НАЧАЛО РАБОТЫ С * ICONT=1 - ВХОД ДЛЯ ПРОДОЛЖЕНИЯ 0010 110 CONTINUE 0011 DU=DSQRT(DL) 0012 DH=DSQRT(H) С * ФОРМИРУЕМ НАЧАЛА МАССИВОВ 0013 NA=1 0014 NGRD=NA+N*M 7.Л.Н. Тихонов f
0015 0016 0017 0018 0019 0020 0021 0022 0023 0024 0025 0026 0027 0028 0029 0030 0031 0032 0033 0034 0035 0036 0037 0038 0039 0040 0041 0042 0043 0044 0045 0046 0047 170 NS=NGRD+N NP=NS+N NU1=NP+M IF(NUl-l.GT.NU) GOTO 64 С * K1,K2 - СЧЕТЧИКИ ИТЕРАЦИЙ K1 = 0 K2=0 N1=N+1 HX=(B-A)/(N-1. ) HY=(D-C)/(M-1.) W — UA/ LJ 1 С * RO - ВЕС ПРОИЗВОДНОЙ В ПРОСТРАНСТВЕ W21, С * ДЕЛЕННЫЙ НА КВАДРАТ ШАГА СЕТКИ RO=1./HX**2 С * EPS - ТОЧНОСТЬ РЕШЕНИЯ УРАВНЕНИЯ НЕВЯЗКИ EPS=(C1-1.)*DL IF(ICONT.EQ.l) GOTO 111 С * ФОРМИРУЕМ МАТРИЦУ ОПЕРАТОРА А CALL PTICR0(AK,U(NA),А,В,С,D,N,М) 111 CONTINUE С * ПОДБИРАЕМ ALFA ТАК.ЧТОБЫ С * ОБОБЩЕННАЯ НЕВЯЗКА БЫЛА ПОЛОЖИТЕЛЬНОЙ 13 CONTINUE С * ИЩЕМ МИНИМУМ ФУНКЦИОНАЛА С * МЕТОДОМ СОПРЯЖЕННЫХ ГРАДИЕНТОВ CALL PTIZRKU(NA) , Z,U0,N,M, ITER, *0.,0.,N,AN2,ALFA*DD,RO,Z, *U(NGRD),U(NS),U(NP),IER) С * ВЫЧИСЛЯЕМ ОБОБЩЕННУЮ НЕВЯЗКУ CALL PTIZRA(AN2,Z,N,DU,DH,HX,НУ,RO,AN4) IF(C1.LE.1.)GOTO 100 IF(ALFA.EQ.0.)GOTO 68 IF(AN4.GT.EPS) GOTO 11 С * ЕСЛИ ОБОБЩЕННАЯ НЕВЯЗКА <EPS, С * ТО УМНОЖАЕМ ALFA НА 2,ПОКА НЕСТАНЕТ >ЕР5 С * ИЛИ НЕ БУДЕТ СДЕЛАНО IMAX ИТЕРАЦИЙ К1=К1+1 IF(K1.EQ.IMAX) GOTO 65 ALFA=2.*ALFA GOTO 13 С * ЗАДАЕМ ДВЕ НАЧАЛЬНЫЕ ТОЧКИ МЕТОДА ХОРД 11 CONTINUE F0=AN4 X0=1./ALFA ALFA=ALFA*2 . X=1./ALFA С * МЕТОД СОПРЯЖЕННЫХ ГРАДИЕНТОВ CALL PTIZR1(U(NA),Z,U0,N,M,ITER, *0.,0.,N,AN2,ALFA*DD,RO,Z, *U(NGRD),U(NS),0(NP),IER) С * ВЫЧИСЛЯЕМ ОБОБЩЕННУЮ НЕВЯЗКУ CALL PTIZRA(AN2,Z,N,DU,DH,HX,HY,RO,AN4) 14 CONTINUE С * ЕСЛИ ОБОБЩЕННАЯ НЕВЯЗКА <EPS,HO >-EPS, С * ТО ПРОГРАММА РАБОТУ ЗАКАНЧИВАЕТ 0048 IF(DABS(AN4).LE.EPS) GOTO 100 С * ЕСЛИ ОБОБЩЕННАЯ НЕВЯЗКА <-EPS, С * ТО ПЕРЕХОДИМ НА МОДИФИЦИРОВАННЫЙ С * МЕТОД ХОРД 0049 IF(AN4.LE.-EPS)GOTO 2 0050 IF(ALFA.EQ.0.)GOTO 68 0051 K2=K2+1 IF(K2.EQ.IMAX)GOTO 66 С * СОБСТВЕННО МЕТОД ХОРД Y=X0-F0/(AN4-F0)*(Х-Х0) Х0=Х 0055 X=Y F0=AN4 ALFA=1./X С * МЕТОД СОПРЯЖЕННЫХ ГРАДИЕНТОВ 0058 CALL PTIZR1(U(NA),Z,U0,N,M,ITER, *0. , 0. , N, AN2 , ALFA*DD , RO, Z, *U(NGRD),U(NS),U(NP),IER) С * ВЫЧИСЛЯЕМ ОБОБЩЕННУЮ НЕВЯЗКУ CALL PTIZRA(AN2,Z,N,DU,DH,HX.HY.RO,AN4) GOTO 14 .2 CONTINUE С * СЮДА ПОПАДАЕМ,ЕСЛИ'ОБОБЩЕННАЯ НЕВЯЗКА С * СТАЛА <-EPS. ПЕРЕХОДИМ НА МОДИФИЦИРОВАННЫЙ С * МЕТОД ХОРД F=AN4 23 CONTINUE Y=X0+F*(Х-Х0)/(F-F0) ALFA=1./Y С * МЕТОД СОПРЯЖЕННЫХ ГРАДИЕНТОВ 0066 CALL PTIZR1(U(NA),Z.U0,N,M,ITER, *0.,0.,N,AN2,ALFA*DD,RO,Z, *U(NGRD),U(NS),U(NP),IER) С * ВЫЧИСЛЯЕМ ОБОБЩЕННУЮ НЕВЯЗКУ 0067 CALL PTIZRA(AN2,Z,N,DY,DH,HX,HY,RO,AN4) С * ЕСЛИ ОБОБЩЕННАЯ НЕВЯЗКА <EPS,HO >-EPS, С * ТО ПРОГРАММА PABOTY ЗАКАНЧИВАЕТ 0068 IF(DABS(AN4).LE.EPS) GOTO 101 0069 IF(AN4.LE.-EPS) GOTO 37 0070 IF(ALFA.EQ.0.)GOTO 68 0071 K2=K2+1 0072 IF(K2.EQ.IMAX)GOTO 67 0073 X0=Y 0074 F0=AN4 0075 GOTO 23 0076 37 CONTINUE С * ИЗМЕНЕНИЕ ИНТЕРВАЛА 0077 X=Y .1078 F=AN4 0079 GOTO 23 .1080 ENTRY PTIZRE С * ВХОД ДЛЯ ПРОДОЛЖЕНИЯ '081 ICONT=1 ¦082 GOTO 110 ¦083 64 CONTINUE 171
0084 0085 0086 0087 0088 0089 0090 0091 0092 0093 0094 0095 0096 0097 0098 0099 0100 0101 0102 0103 0104 0105 0001 0002 0003 0004 0005 0006 0007 172 С * НЕ ХВАТАЕТ ДЛИНЫ РАБОЧЕГО МАССИВА IERR=6 4 GOTO 999 65 CONTINUE С * СДЕЛАНО ШАХ УМНОЖЕНИЙ НА 2, С * А НЕВЯЗКА-ОТРИЦАТЕЛЬНАЯ IERR=65 GOTO 999 66 CONTINUE С * СДЕЛАНО ШАХ ИТЕРАЦИЙ МЕТОДОМ ХОРД IERR=66 GOTO 999 67 CONTINUE С * СДЕЛАНО IMAX ИТЕРАЦИЙ, С * ПРИМЕНЯЛСЯ МОДИФИЦИРОВАННЫЙ МЕТОД IERR=67 GOTO 999 68 CONTINUE С * ЗАДАНО ИЛИ ПОЛУЧИЛОСЬ ALFA=0. IERR=68 GOTO 999 100 CONTINUE С * РЕШЕНИЕ НАЙДЕНО МЕТОДОМ ХОРД IERR=0 GOTO 999 101 CONTINUE С * РЕШЕНИЕ НАЙДЕНО С ПРИМЕНЕНИЕМ С * МОДИФИЦИРОВАННОГО МЕТОДА ХОРД IERR=1 999 CONTINUE' RETURN END SUBROUTINE PTIZRKA, Z0, U0,N,M, ITER, DL2 , *ANGRD,IMAX,AN2,ALF,RO,Z,GRAD,S,U,IERR) С * ПОДПРОГРАММА МИНИМИЗИРУЕТ ФУНКЦИОНАЛ С * ТИХОНОВА МЕТОДОМ СОПРЯЖЕННЫХ ГРАДИЕНТОВ С * AK(M,N) - МАТРИЦА ОПЕРАТОРА В УР-НИИ AZ=U С * Z0 - НАЧАЛЬНОЕ ПРИБЛИЖЕНИЕ С * U0 - ПРАВАЯ ЧАСТЬ УРАВНЕНИЯ AZ=U С * DL2 - УРОВЕНЬ ВЫХОДА ПО НЕВЯЗКЕ С * ANGRD - ПО НОРМЕ ГРАДИЕНТА С * AN2 - ПОЛУЧЕННАЯ НЕВЯЗКА С * ALF - ПАРАМЕТР РЕГУЛЯРИЗАЦИИ С * RO - ВЕС РАЗНОСТНОЙ ПРОИЗВОДНОЙ С * В СТАБИЛИЗАТОРЕ С * РЕШЕНИЕ - ЭКСТРЕМАЛЬ В МАССИВЕ Z IMPLICIT REAL*8(A-H,O-Z) INTEGER ITER.N.M,IMAX,IERR,IED REAL*8 A,Z0,U0,Z,GRAD,S,U REAL*8 DL2,ANGRD,AN2,ALF,RO.ALM REAL*8 RNORM1,RNORM,BETA,RNM DIMENSION A(M,N),Z0(N),U0(M), *Z(N),GRAD(N),S(N),U(M) 0008 EXTERNAL PTICR1,PTICR4.PTICR8, *PTICR6,PTICR3,PTICR5,PTICRO 0009 ITER=0 0010 CALL PTICR1(Z0,Z0,Z,M,0.) С * НАХОДИМ ГРАДИЕНТ ФУНКЦИОНАЛА 0011 CALL PTICR3(A,Z,U,N,M) 0012 CALL PTICR4(GRAD,U,U0,A,M,M) 0013 CALL PTICR8(GRAD,Z,N,ALF,RO) С * НАХОДИМ СОПРЯЖЕННОЕ НАПРАВЛЕНИЕ 5 0014 CALL PTICRKGRAD,GRAD,S,N,0. ) С * НАХОДИМ НОРМУ S 0015 CALL PTICR6(S,S,N,RNORM1) С * ВНИМАНИЕ! МАШИННАЯ КОНСТАНТА 0016 ALM=1.E+18 С * РЕШАЕМ ОДНОМЕРНУЮ ЗАДАЧУ МИНИМИЗАЦИИ, С * НАХОДИМ ШАГ 0017 7 CONTINUE 0018 CALL PTICRO(A,Z,GRAD,U,S,ALM,BETA, *N,M,ALF,RO,IED) 0019 IF(BETA.EQ.0.)GOTO 14 0020 BETA=-BETA С * НАХОДИМ НОВОЕ ПРИБЛИЖЕНИЕ Z 0021 CALL PTICR1(Z,S,Z,N,BETA) С * ВЫЧИСЛЯЕМ НЕВЯЗКУ 0022 CALL PTICR3(A,Z,U,N,M) 0023 CALL PTICR5(U,U0,M,AN2) С * ЕСЛИ НЕВЯЗКА < DL2, С * TO ПРОГРАММА РАБОТУ ЗАКАНЧИВАЕТ 0024 IF(AN2.LE.DL2)GOTO 10 0025 ITER=ITER+1 С * НАХОДИМ ГРАДИЕНТ ФУНКЦИОНАЛА 0026 CALL PTICR4(GRAD,U,U0,A,N,M) 0027 CALL PTICR8(GRAD,Z,N,ALF,RO) С * НАХОДИМ НОРМУ ГРАДИЕНТА 0028 CALL PTICR6(GRAD,GRAD,N,RNORM) 0029 RNM-RMORM/RNORM1 С * НАХОДИМ СОПРЯЖЕННОЕ НАПРАВЛЕНИЕ 0030 CALL PTICR1(GRAD,S,S,N,RMM) 0031 RMORM1=RNORM С * ЕСЛИ НОРМА ГРАДИЕНТА < ANGRD, С * ПРОГРАММА РАБОТУ ЗАКАНЧИВАЕТ 0032 IF(RNORM1.LE.ANGRD) GOTO 11 0033 IF(ITER,GE.IMAX) GOTO 13 0034 GOTO 7 0035 10 CONTINUE С * НЕВЯЗКА СТАЛА < DL2 . 0036 IERR=0 0037 GOTO 999 0038 11 CONTINUE С * НОРМА ГРАДИЕНТА СТАЛА < ANGRD 0039 IERR=1 0040 GOTO 999 0041 13 CONTINUE С * СДЕЛАНО IMAX ИТЕРАЦИЙ 0042 IERR=2 i-1043 GOTO 999 173
0044 14 CONTINUE С * ШАГ МИНИМИЗАЦИИ НУЛЕВОЙ 0045 IERR=3 0046 999 CONTINUE 0047 RETURN 0048 END 0001 SUBROUTINE FT IZRA(AN2,Z,N, *DL,DH,HX,HY,RO,AN4) С * ПОДПРОГРАММА ВЫЧИСЛЯЕТ ОБОБЩЕННУЮ НЕВЯЗКУ 0002 IMPLICIT REAL*8(A-H,O-Z) 0003 INTEGER I,N 0004 REAL*8 AN2,AN4,DL,DH,HX,HY,S,S1,RO,Z 0005 DIMENSION Z(N) 0006 EXTERNAL PTICR6,D5QRT С * НОРМИРУЕМ НЕВЯЗКУ 0007 AN2=AN2*HY 0008 AN4=AN2-DL**2 С * ЕСЛИ Н=0., ТО С * ВЫЧИСЛЯТЬ НОРМУ РЕШЕНИЯ НЕ НУЖНО 0009 IF(DH.EQ.0.)GOTO 999 С * ВЫЧИСЛЯЕМ НОРМУ РЕШЕНИЯ В W21 0010 CALL PTICR6(Z,Z,N,S) 0011 S=S*HX С * S - КВАДРАТ НОРМЫ РЕШЕНИЯ В L2 0012 S1=0". 0013 DO I I=2,N 0014 S1=S1+(Z(I)-Z(I-1))**2 0015 1 CONTINUE 0016 S1=S1*HX С * SI - КВАДРАТ НОРМЫ ПРОЗВОДНОЙ РЕШЕНИЯ В L2 0017 S=DSQRT(S+RO*S1) С * S - НОРМА РЕШЕНИЯ В W21 0018 AN4=AN2-(DL+DH*S)**2 0019 999 CONTINUE 0020 RETURN 0021 END III. Программа решения интегральных уравнений Фредгольма 1 -го рода на множестве неотрицательных функций методом регуляризации 0001 0002 0003 174 SUBRDUTINE PTIPR(АК,U0,А,В,С,О,N,М,Z, * I С,AN2,DL,Н,Cl,ANGRO,IMAX, *ALFA,R,NR,IERR) С * ПРОГРАММА РЕШЕНИЯ ИНТЕГРАЛЬНОГО УРАВНЕНИЯ С * ПЕРВОГО РОДА МЕТОДОМ РЕГУЛЯРИЗАЦИИ С * ТИХ0Н08А С ВЫБОРОМ ПАРАМЕТРА РЕГУЛЯРИЗА- С * ЦИИ В СООТВЕТСТВИИ С ПРИНЦИПОМ ОБОБЩЕННОЙ С * НЕВЯЗКИ. ДЛЯ МИНИМИЗАЦИИ ФУНКЦИОНАЛА С * ТИХОНОВА ИСПОЛЬЗУЕТСЯ МЕТОД С * СОПРЯЖЕННЫХ ГРАДИЕНТОВ IMPLICIT REAL*8(A-H.O-Z) INTEGER IERR,K1,K2,NR,M,N,NA,N6,NH,NU, 0004 0005 0006 0007 0008 0009 0010 0011 0012 0013 0014 0015 0016 0017 0018 0019 0020 0021 0022 0023 0024 0025 0026 0027 0028 0029 0030 0031 0032 0033 0034 003 5 *NU1,NS,NMAX,N1,I,IMAX,ITER,IER REAL*8 U0,R,Z,DU,DH,AK,DO REAL*8 A,B,C,D,AN2,DL,H,Cl,ALFA REAL*8 RD,EPS,AN4,F0,F,X0,X,Y,HX,HY DIMENSION U0(M),R(NR),Z(N) EXTERNAL PTICR0,PTICRl, *PTI SRI,PTISR2.PTISR3 С * AK - ПОДПРОГРАММА-ФУНКЦИЯ ВЫЧИСЛЕНИЯ ЯДРА ТАБЛИЦА СООТВЕТСТВИЯ С * С * С * С * С * С * С * С * С * С * ИМЯ ДЛИНА СОДЕРЖАНИЕ A: N*M МАТРИЦА ОПЕРАТОРА Н: N НАПРАВЛЕНИЕ СПУСКА G: N ГРАДИЕНТ U: М ЗНАЧЕНИЕ ОПЕРАТОРА Ul: M РАБОЧИЙ МАССИВ S: N РАБОЧИЙ МАССИВ NR=N*M+3N+2M ICONT=0 С * ICONT - ПРИЗНАК РАБОТЫ С ПРОДОЛЖЕНИЕМ С * ICONT=0 НАЧАЛО РАБОТЫ С * ICONT=1 ВХОД ДЛЯ ПРОДОЛЖЕНИЯ 110 CONTINUE IF(IC.NE.0.AND.IC.NE.l)GDTO 69 С * ФОРМИРОВАНИЕ НАЧАЛА МАССИВОВ NA=1 NH=N*M+1 NG=NH+N NU=NG+N NU1=NU+M NS=NU1+M NMAX=NS+N IF(NMAX-1.GT.NR)GOTO 64 DU=DSQRT(DL) DH=DSQRT(H) С * K1.K2 - СЧЕТЧИКИ ИТЕРАЦИЙ K1=0 К2=0 N1=N+1 HX=(B-A)/(N-1. ) HY=(D-C)/(M-1. ) DD=HX/HY С * RO - 8EC ПРОИЗВОДНОЙ В ПРОСТРАНСТВЕ W21, С * ДЕЛЕННЫЙ НА КВАДРАТ ШАГА СЕТКИ IF(IC.EQ.0)RO=1./HX**2 IF(IC.EQ.1)RO=0.0 С * EPS - ТОЧНОСТЬ РЕШЕНИЯ УРАВНЕНИЯ НЕ8ЯЗКИ EPS=(C1-1.)*DL IF(ICONT.EQ.l) GOTO 111 С * ФОРМИРУЕМ МАТРИЦУ ОПЕРАТОРА А CALL PTICR0(AK,R(NA),A,B,C,D,N,M) 111 CONTINUE С * ПЕРЕХОДИМ В ПИ-ПЛЮС CALL PTISR2(R(NA),Z,N,M,IC,R(NS)) CALL PTICRKZ,Z,R(NH),N,0.) С * ПОДБИРАЕМ ALFA ТАК, ЧТОБЫ 175
С * ОБОБЩЕННАЯ НЕВЯЗКА БЫЛА ПОЛОЖИТЕЛЬНОЙ 0036 13 CONTINUE С * ИЩЕМ МИНИМУМ ФУНКЦИОНАЛА С * МЕТОДОМ СОПРЯЖЕННЫХ ГРАДИЕНТОВ 0037 CALL PTISRKR(NA) , Z , U0 , N , М , ITER, *0., 0.,N,AN2,ALFA*D0,R0,Z,R(NU), *R(NU1),R(NH),R(NG),R(NS),IER) С * ВЫЧИСЛЯЕМ ОБОБЩЕННУЮ НЕВЯЗКУ 0038 CALL PTIZRA(AN2,Z,N,DU,OH,HX,HY,RO,AN4) 0039 IF(C1.LE.1.)GOTO 100 0040 IF(ALFA.EQ.0.)GOTO 68 0041 IF(AN4.GT.EPS) GOTO 11 С * ЕСЛИ ОБОБЩЕННАЯ НЕВЯЗКА <EPS, С * ТО УМНОЖАЕМ ALFA НА 2,ПОКА НЕ СТАНЕТ >EPS С * ИЛИ НЕ БУДЕТ СДЕЛАНО IMAX ИТЕРАЦИЙ 0042 К1=К1+1 0043 IF(K1.EQ.IMAX) GOTO 65 0044 ALFA=2.*ALFA 0045 GOTO 13 С * ЗАДАЕМ ДВЕ НАЧАЛЬНЫЕ ТОЧКИ МЕТОДА ХОРД 0046 11 CONTINUE 0047 F0=AN4 0048 X0=1./ALFA 0049 ALFA=ALFA*2. 0050 X=1./ALFA С * МЕТОД СОПРЯЖЕННЫХ ГРАДИЕНТОВ 0051 CALL PTISRKR(NA) , Z ,U0,N,M, ITER, *0.,0.,N,AN2,ALFA*DD,R0,Z,R(NU), *R(NU1),R(NH),R(NG),R(NS),IER) С * ВЫЧИСЛЯЕМ ОБОБЩЕННУЮ НЕВЯЗКУ 0052 CALL PTIZRA(AN2,Z,N,DU,DH,HX,НУ,RO,AN4) 0053 14 CONTINUE С * ЕСЛИ ОБОБЩЕННАЯ НЕВЯЗКА <EPS,HO >-EPS, С * TO ПРОГРАММА РАБОТУ ЗАКАНЧИВАЕТ 0054 IF(DA8S(AN4).LE.EPS) GOTO 100 С * ЕСЛИ ОБОБЩЕННАЯ НЕВЯЗКА <-EPS, С * ТО ПЕРЕХОДИМ НА МОДИФИЦИРОВАННЫЙ С * МЕТОД ХОРД 0055 IF(AN4.LE.-EPS)GOTO 2 0056 IF(ALFA.EQ.0.)GOTO 68 0057 К2=К2+1 0058 IRK2.EQ. IMAX )GOTO 66 С * СОБСТВЕННО МЕТОД ХОРД 0059 Y=X0-F0/(AN4-F0)*(Х-Х0) 0060 Х0=Х 0061 Х=У 0062 F0=AN4 0063 ALFA=1./X С * МЕТОД СОПРЯЖЕННЫХ ГРАДИЕНТОВ 0064 CALL PTISR1(R(NA),Z,U0,N,М,ITER, *0.",0. ,N,AN2,ALFA*DD,RQ, Z , R ( NU ) , *R(NU1) ,R(NH) ,R(NG) ,R(NS) , IER) С * ВЫЧИСЛЯЕМ ОБОБЩЕННУЮ НЕВЯЗКУ 0065 CALL PTIZRA(AN2,Z,N,DU,DH,HX,НУ,RO,AN4) 0066 GOTO 14 0067 2 CONTINUE 176 С * СЮДА ПОПАДАЕМ ЕСЛИ ОБОБЩЕННАЯ НЕВЯЗКА С * СТАЛА OEPS С * ПЕРЕХОДИМ НА МОДИФИЦИРОВАННЫЙ МЕТОД ХОРД 0068 F=AN4 0069 23 CONTINUE 0070 Y=X0+F*(Х-Х0)/(F-F0) 0071 ALFA=1./Y С * МЕТОД СОПРЯЖЕННЫХ ГРАДИЕНТОВ 0072 CALL PTISRKR(NA) , Z , U0 , N , М , ITER, *0.,0.,N,AN2,ALFA*DD,R0,Z,R(NU), *R(NU1),R(NH),R(NG),R(NS),IER) С * ВЫЧИСЛЯЕМ ОБОБЩЕННУЮ НЕВЯЗКУ 0073 CALL PTIZRA(AN2,Z,N,DY,ОН,HX,НУ,RO,AN4) С * ЕСЛИ ОБОБЩЕННАЯ НЕВЯЗКА <EPS,HO >-EPS, С * ТО ПРОГРАММА РАБОТУ ЗАКАНЧИВАЕТ 0074 IF(DABS(AN4).LE.EPS) GOTO 101 0075 IF(AN4.LE.-EPS) GOTO 37 0076 IF(ALFA.EQ.0.)GOTO 68 0077 K2=K2+1 0078 ' IF(K2.EQ.IMAX)GOTO 67 0079 X0=Y 0080 F0=AN4 0081 GOTO 23 00B2 37 CONTINUE С * ИЗМЕНЕНИЕ ИНТЕРВАЛА 00B3 X=Y 00B4 F=AN4 00B5 GOTO 23 0086 ENTRY PTIPRE С * ВХОД ДЛЯ ПРОДОЛЖЕНИЯ 0087 ICDNT=1 0088 GOTO 110 0089 64 CONTINUE С * НЕ ХВАТАЕТ ДЛИНЫ РАБОЧЕГО МАССИВА 0090 IERR=64 0091 GOTO 9999 0092 65 CONTINUE С * СДЕЛАНО IMAX УМНОЖЕНИЙ НА 2, С * А НЕВЯЗКА-ОТРИЦАТЕЛЬНАЯ 0093 IERR=65 0094 GOTO 999 0095 66 CONTINUE С * СДЕЛАНО IMAX ИТЕРАЦИЙ МЕТОДОМ ХОРД 0096 IERR=66 0097 GOTO 999 0098 67 CONTINUE С * СДЕЛАНО IMAX ИТЕРАЦИЙ, С * ПРИМЕНЯЛСЯ МОДИФИЦИРОВАННЫЙ МЕТОД 0099 IERR=67 0100 GOTO 999 0101 68 CONTINUE С * ЗАДАНО ИЛИ ПОЛУЧИЛОСЬ ALFA=0. W102 IERR=68 И103 GOTO 999 И104 69 CONTINUE С * 1С HE РАВЕНО 0 ИЛИ 1 177
0105 IERR=69 0106 GOTO 9999 0107 100 CONTINUE С * РЕШЕНИЕ НАЙДЕНО МЕТОДОМ ХОРД 0108 IERR=0 0109 GOTO 999 0110 101 CONTINUE С * РЕШЕНИЕ НАЙДЕНО С ПРИМЕНЕНИЕМ С * МОДИФИЦИРОВАННОГО МЕТОДА ХОРД 0111 IERR=1 0112 999 CONTINUE С * ВОЗВРАТ ИЗ ПИ-ПЛЮС 0113 CALL PTICR1(Z,Z,R(NH),N,0.) 0114 CALL PTISR3(Z,N,IC,R(NS)) 0115 9999 CONTINUE 0116 RETURN 0117 END IV. Программа решения одномерных интегральных уравнений типа свертки 0001 0002 0003 0004 0005 0006 0007 0008 SU8R0UTINE PTIKR(AK,U0,A,B,C,D, *L1,L2,N,Z,AN,DL,HH,C1,I MAX,ALPHA, *U,NU,IERR) IMPLICIT REAL*8(A-H.O-Z) REAL * 8 A,AK,ALPHA,AN,8,С,Cl,D,DL,HH REAL*8 L1,L2,DM,T,U,U0,Z,EPRO INTEGER IERR,IMAX,IP,IQ.N INTEGER NAI,NAR,NMAX,NU,NUI,NUR,NW,NZI OIMENSION U(NU),U0(N),Z(N) EXTERNAL PTICR1,PTICR2,PTIKR1 * ТАБЛИЦА СООТВЕТСТВИЯ ИМЯ ДЛИНА НАЗНАЧЕНИЕ ARE N ДЕЙСТВ. ЧАСТЬ ОБРАЗА ФУРЬЕ ЯДРА AIM N МНИМ. ЧАСТЬ ОБРАЗА ФУРЬЕ ЯДРА URE N ДЕЙСТВ. ЧАСТЬ ОБРАЗА ФУРЬЕ ПРАВОЙ ЧАСТИ UIM N МНИМ. ЧАСТЬ ОБРАЗА ФУРЬЕ ПРАВОЙ ЧАСТИ МНИМАЯ ЧАСТЬ РЕШЕНИЯ СТАБИЛИЗАТОР N N 0009 0010 0011 0012 0013 0014 178 ZIM W 1Р=1 С * IP - ПРИЗНАК РАБОТЫ: С * ПРИ ПЕРВОМ ОБРАЩЕНИИ 1Р=+1 С * ПРИ ПОВТОРНОМ ВХОДЕ ЧЕРЕЗ PTIKRE 1Р=-1 EPRO=0. IF(C1.GT.l.)EPRO=(C1-1.)*DL С * EPRO - ТОЧНОСТЬ РЕШЕНИЯ УРАВНЕНИЯ НЕВЯЗКИ С * ЕСЛИ EPRO=0, TO ВЫЧИСЛЯЕТСЯ ЭКСТРЕМАЛЬ С * ПРИ ФИКСИРОВАННОМ ALFA 100 CONTINUE С * ВЫЧИСЛЕНИЕ ЛОКАЛЬНОГО НОСИТЕЛЯ РЕШЕНИЯ A=C-.5*(L1+L2) B=D-.5*(L1+L2) С * Т- ПЕРИОД ПРОДОЛЖЕНИЯ 0015 T=D-C С * ФОРМИРОВАНИЕ НАЧАЛ МАССИВОВ 0016 NAR=1 0017 NAI=NAR+N 0018 NW=NAI+N 0019 NZI=NW+N 0020 NUR=NZI+N 0021 NUI=NUR+N 0022 NMAX=NUI+N С * КОНТРОЛЬ ДЛИНЫ РАБОЧЕГО МАССИВА 0023 IF(NMAX-l.GT.NU) GO TO 64 0024 IF(IP.EQ.-l) GO TO 101 С * ЗАДАНИЕ ПРАВОЙ ЧАСТИ 0025 CALL PTICR1(U0,U0,U(NUR),N,0.) 0026 CALL PTICR2(U(NUI),0.,N) 0027 101 CONTINUE С * СОБСТВЕННО РЕШЕНИЕ УРАВНЕНИЯ 0028 CALL PTIKR1(AK,U(NAR),U(NAI),Z, *U(NZI),U(NUR),U(NUI),U(NW),N,ALPHA, *L1,L2,AN,OM,T,DSQRT(DL),DSQRT(HH), * IP,EPRO,IQ,IMAX,IERR) 0029 GO TO 999 0030 64 CONTINUE С * НЕ ХВАТАЕТ ДЛИНЫ РАБОЧЕГО МАССИВА 0031 IERR=64 0032 GO TO 999 С * ВХОД PTIKRE ПРЕДНАЗНАЧЕН С * ДЛЯ ПОВТОРНОГО РЕШЕНИЯУРАВНЕНИЯ С * С ТЕМИ ЖЕ ЯДРОМ И ПРАВОЙ ЧАСТЬЮ 0033 ENTRY PTIKRE 0034 IP=-1 0035 GO TO 100 0036 999 CONTINUE 0037 RETURN 003B END 0001 SUBROUTINE PTIKR1(AK,ARE,AIM,ZRE,ZIM, *URE,UIM,W,N,ALP,L1,L2,BETA,RO,A, *DEL,HH,IPAR,EPRO,IQ,IMAX,IERR) 0002 IMPLICIT REAL*8(A-H,0-Z) 0003 REAL*B A,A8,AIM,AK,ALP,ARE,A0,A1,A2, *8A,BETA,Cl,C2,C3,DEL,DP,DQ,EPRO, *F1,F2,F3,H,HA,HH,LI,L2,P,RO,R0,Rl,SSI , *UIM,URE,U2,W,X,ZIM,Z NOR,Z RE,Z Z 0004 INTEGER I,IERR,IMAX,IPAR,IQ,M,N 0005 DIMENSION ARE(N) ,ZRE(N),URE(N), *AIM(N),ZIM(N),UIM(N),W(N) 0006 EXTERNAL FTF1C 0007 H=A/N 0008 HA=H/N С * ПРОВЕРЯЕМ ПЕРВЫЙ ЛИ ВХОД 0009 IF(IPAR.EQ.-l) GO TO 2 С * ЗАДАНИЕ ЯДРА УРАВНЕНИЯ 179
0010 04311 0012 0013 0014 0015 0016 0017 0018 0019 0020 0021 0022 0B23 0024 0025 0026 0027 0028 0029 0030 0031 0032 0033 0034 0035 0036 0037 0038 0039 0040 0041 0042 0043 0044 0045, 0046 0047 0048 0049 E050 0051 180 DO 1 1=1,N v ARG=(I-N/2-1)*H+0.5*(L1+L2) ARE(I)=AK(ARG)*H AIM(I)=0.0 IF(ARG.LT.L1.0R.ARG.GT.L2) ARE(I)=0.B W( I) = B.0/H*DSINC.14159265358D0/ /N*A-1)))**2 1 CONTINUE P=l .0 С * ПРЕОБРАЗОВАНИЕ ФУРЬЕ ЯДРА И ПРАВОЙ ЧАСТИ CALL FTF1C(ARE,AII4,N,1,1 ,P) CALL FTF1C(URE,UIM,N,1,1,P) 2 CONTINUE С * ПОДБИРАЕМ ALP ТАК, ЧТО RO(ALP) > 0 С * IQ - СЧЕТЧИК ИТЕРАЦИЙ IQ=0 77 CONTINUE IQ=IQ+1 С * ВЫЧИСЛЕНИЕ НЕВЯЗОК F1=0.0 F2=0.0 DO 44 M=1,N U2=URE(M)**2+UIM(M)**2 A2=ARE(M)**2+AIM(M)**2 X=l.0+W(M) IF(A2.EQ.0.0) GO TO 42 8A=X/(A2+ALP*X) AB=1.0-ALP*BA C1=HA*U2*(8A*ALP)**2 C2=HA*U2*A8*8A F1=F1+C1 F2=F2+C2 GO TO 44 42 F1=F1+HA*U2 44 CONTINUE С * ВЫЧИСЛЕНИЕ ОБОБЩЕННОЙ НЕВЯЗКИ С * ДЛЯ ПРОВЕРКИ RO(ALP)>0 8ETA=F1 RO=F1-(DEL+HH*DSQRT(F2) )**2 С * ЕСЛИ ЗАДАНО EPRO=0, TO КОНЧАЕМ IF(EPRO.EQ.0.0) GO TO 10 С * ЕСЛИ ЗАДАНО ALP=0.0, TO КОНЧАЕМ IF(ALP.EQ.0.0) GO TO 68 IF(RO.GT.0.0) GO TO 33 С * ПЕРЕХОД К ВЫЧИСЛЕНИЮ РЕШЕНИЯ, С * ЕСЛИ НЕ УДАЛОСЬ С * ПОДОБРАТЬ ALP ТАКОЕ, ЧТО RO(ALP) > 0 IF(IQ.GT.IMAX) GO TO 65 ALP=2.0*ALP GO TO 77 С * НАЧАЛО ПОИСКА КОРНЯ МЕТОДОМ НЬЮТОНА 33 CONTINUE IQ=0 3 CONTINUE IQ=IQ+1 С * БЛОК ВЫЧИСЛЕНИЯ НЕВЯЗОК 0052 F1=0.0 0053 F2=0.0 0054 F3=0.0 0055 DO 4 M=1,N 0056 U2=URE(M)**2+UIM(M)**2 0057 A2=ARE(M)**2+AIM(M)**2 0058 X=1.0+W(M) 0059 IF(A2.EQ.0.0) GO TO 41 0060 8A=X/(A2+ALP*X) 0061 A8=1.0-ALP*BA 0062 C1=HA*U2*(BA*ALP)**2 0063 C2=HA*U2*AB*BA 0064 C3=2.0*C1*AB 0065 F1=F1+C1 0066 F2=F2+C2 0067 F3=F3+C3 0068 GO TO 4 0069 41 F1=F1+HA*U2 0070 4 CONTINUE С * ВЫЧИСЛЕНИЕ НЕВЯЗКИ -BETA, С * НОРМЫ РЕШЕНИЯ 8 W21 -ZNOR, С * ОБОБЩЕННОЙ НЕВЯЗКИ - RO С * И ЕЕ ПРОИЗВОДНОЙ- DR 0071 BETA=F1 0072 ZN0R=DSQRT(F2) 0073 R0=8ETA-(DEL+HH*ZN0R)**2 0074 IF(ALP.EQ.0.0) GO TO 68 0075 DR=-F3*ALP-(DEL+HH*ZN0R)*HH*F3/ZN0R С * ПЕРЕХОД К ВЫЧИСЛЕНИЮ РЕШЕНИЯ, С * ЕСЛИ ТОЧНОСТЬ ДОСТИГНУТА 0076 IF(DABS(RO).LT.EPRO) GO TO 10 С * ПЕРЕХОД НА МЕТОД ХОРД, С * ЕСЛИ ОБОБЩЕННАЯ НЕВЯЗКА НЕ ВЫПУКЛА 0077 IF(RO.LT.0.0) GO TO 61 С * ВЫЧИСЛЕНИЕ НОВОГО АРГУМЕНТА С * ПО МЕТОДУ НЬЮТОНА С * И ПЕРЕХОД К СЛЕДУЮЩЕМУ ШАГУ 0078 DQ=-RO/DR 0079 A1=ALP 0080 R1=RO 0081 ALP=1.0/A.0/ALP+DQ) 0082 IF(IQ.GE.IMAX) GO TO 66 0083 GO TO 3 С * МЕТОД ХОРД 0084 61 CONTINUE С * ИЗМЕНЕНИЕ ИНТЕРВАЛА ПРИ RO<0 0085 6 CONTINUE 0086 A0=ALP 0087 R0=RO W0B8 7 CONTINUE 0089 IQ=IQ+1 С * ВЫЧИСЛЕНИЕ НОВОГО АРГУМЕНТА С * ПО МЕТОДУ ХОРД •1090 ALP=A0*A1* (R0-R1 ) / (A0*R0-A1*R1 ) С * ВЫЧИСЛЕНИЕ НЕВЯЗОК 181
1 0091 0092 0093 0094 0095 0096 0097 009В 0099 0100 0101 0102 0103 0104 0105 0106 0107 0108 0109 0110 0111 0112 0113 0114 0115 0116 0117 0118 0119 0120 0121 0122 0123 0124 0125 0126 0127 0128 0129 0130 0131 0132 0133 С С С с с с с с с с с с с 8 CONTINUE I F1=0.0 1 F2=0.0 1 DO 9 M=1,N I U2=URE(M)**2+UIM(M)**2 1 A2=ARE(M)**2+AIM(M)**2 X=1.0+W(M) IF(A2.EQ.0.0> SO TO 91 BA=X/(A2+ALP*X) AB=1.0-ALP*BA C1=HA*U2*(BA*ALP)**2 C2=HA*U2*AB*8A F1=F1+C1 F2=F2+C2 GO TO 9 91 F1=F1+HA*U2 9 CONTINUE * ВЫЧИСЛЕНИЕ НЕВЯЗКИ, * ОБОБЩЕННОЙ НЕ8ЯЗКИ И НОРМЫ РЕШЕНИЯ BETA=F1 ZNOR=DSQRT(F2> RO=BETA-(DEL+HH*ZNOR)**2 IF(ALP.EQ.0.0) GO TO 68 * ПЕРЕХОД К ВЫЧИСЛЕНИЮ РЕШЕНИЯ, * КОГДА ТОЧНОСТЬ ДОСТИГНУТА IF(DABS(RO).LT.EPRO) GO TO 11 . IF(IQ.EQ.IMAX) GO TO 67 IF(RO.LT.0.0) GO TO 6 * ИЗМЕНЕНИЕ ИНТНРВАЛА, КОГДА RO>0 A1=ALP R1=RO GO TO 7 65 CONTINUE * HE УДАЛОСЬ ПОДОБРАТЬ ALP, ТАК * ЧТО RO(ALP) БОЛЬШЕ НУЛЯ IERR=65 GO TO 999 66 CONTINUE * СДЕЛАНО IMAX ИТЕРАЦИЙ МЕТОДОМ НЬЮТОНА IERR=66 GO TO 999 67 CONTINUE * СДЕЛАНО IMAX ИТЕРАЦИЙ, * ПРИМЕНЯЛСЯ МЕТОД ХОРД IERR=67 GO TO 999 6B CONTINUE * ЗАДАНО ИЛИ ПОЛУЧИЛОСЬ ALP=0.0 IERR=68 GO TO 999 11 CONTINUE * РЕШЕНИЕ НАЙДЕНО МЕТОДОМ ХОРД Щ IERR=1 Щ GO ТО 999 Щ 10 CONTINUE 1 ¦ * НОРМАЛЬНОЕ ОКОНЧАНИЕ Ш 0134 0135 0136 0137 0138 0139 0140 0141 0142 0143 0144 0145 0146 0147 0148 0149 0150 IERR=0 999 CONTINUE С * ВЫЧИСЛЕНИЕ ФУРЬЕ-ПРЕОБРАЗОВАНИЯ РЕШЕНИЯ SSI=-1.0 DO 12 M=1,N SSI=-SSI ZZ=N*(ARE(M)**2+AIM(M)**2+ +ALP*A.0+W(M) ) ) IF(ZZ.NE.0,0) GO TO 111 ZRE(M)=0.0 ZIM(M)=0.0 GO TO 12 111 ZRE(M)=SSI*(ARE(M)*URE(M)+ +AIM(M)*UIM(M) )/ZZ ZIM(M)=SSI*(ARE(M)*UIM(M)- -AIM(M)*URE(M))/ZZ 12 CONTINUE С * ОБРАТНОЕ ФУРЬЕ-ПРЕОБРАЗОВАНИЕ РЕШЕНИЯ Р=-1.0 CALL FTF1C(ZRE,ZIM,N,1,1,Р) RETURN END И001 .SU8ROUTINE FTF1C(ARE,AIM,N,IN,К,P) 0002 IMPLICIT REAL*8(A-H.O-Z) С * ПРОГРАММА БЫСТРОГО ПРЕОБРАЗОВАНИЯ ФУРЬЕ С * ФУНКЦИИ, ДЕЙСТВИТЕЛЬНАЯ ЧАСТЬ КОТОРОЙ С * НАХОДИТСЯ В ARE(N), А МНИМАЯ - В AIM(N). С * ПРОИЗВОДИТСЯ ПРЯМОЕ ПРЕОБРАЗОВАНИЕ ФУРЬЕ, С * ЕСЛИ Р БОЛЬШЕ НУЛЯ С * И ОБРАТНОЕ ПРЕОБРАЗОВАНИЕ, С * ЕСЛИ Р МЕНЬШЕ НУЛЯ. С * ПРИ ОБРАЩЕНИИ ПАРАМЕТР Р С * ДОЛЖЕН ВЫЗЫВАТЬСЯ ПО НАИМЕНОВАНИЮ. С * РЕЗУЛЬТАТ - НА МЕСТЕ МАССИ8ОВ ARE И AIM. С * N - ЦЕЛАЯ СТЕПЕНЬ ДВОЙКИ. С * ИМЕЕТСЯ ВОЗМОЖНОСТЬ НАХОЖДЕНИЯ С * ОБРАЗА ФУРЬЕ ЛИШЬ НЕКОТОРОГОПОДМНОЖЕСТВА С * ТОЧЕК МАССИ8ОВ ARE И AIM (НАЧАЛЬНАЯ ТОЧКА С * П0ДМН0ЖЕСТ8А 8 IN, ШАГ - В К). 0003 REAL*8 ARE,AIM,P,R,A,B,S,C,T,SI,CO 0004 INTEGER N,IN,К,I,II,J,JJ,M,MM,N1,N2 0005 DIMENSION ARE(N),AIM(N) 0006 Nl=N/2 0007 MM=Nl/2 0008 N2=N1+K 0009 J=IN И010 JJ=J i/1011 1 J=J+K /1012 IF( J-Nl J,2, 10 0013 2 II=JJ+N1 И014 R=ARE(J) 0015 ARE(J)=ARE(I I ) 0016 ARE(II)=R 183 182
0017 001В 0019 0020 0021 0022 0023 0024 0025 0026 0027 002В 0029 0030 0031 0032 0033 0034 0035 0036 0037 0038 0039 0040 0041 0042 0043 0044 0045 0046 0047 0048 0049 0050 0051 0052 0053 0054 0055 0056 0057 0058 0059 0060 0061 0062 0063 0064 0065 0066 0067 006В 0069 0070 0071 3 4 5 6 10 11 13 14 15 16 17 R=AIM(J ) AIM(J)=AIM(II) А1М(II)=R J=J+K М=ММ IF(JJ-MM,5,4 JJ=JJ-M М=М/2 GO TO 3 JJ=JJ+M IF(JJ-JI,1,6 R=ARE(J) AfiE(J)=ARE(JJ) ARE(JJ)=R R=AIM(J) AIM(J)=AIM(JJ) AIM(JJ)=R I=J+N2 II=JJ+N2 R=ARE(I) ARE(I)=ARE(II) ARE(II)=R R=AIM(I) AIM(I)=AIM(II) AIM(II)=R GO TO 1 I=K T=3.14159265359 IF(PI3,17,11 T=-T P=-T SI=0. CO=1. S-DSIN(T) C=DCOS(T) T=0.5*T 11 = 1 1 = 1 + 1 DO 16 M=IN,II,K DO 15 J=M,N,I JJ=J+II A=ARE(JJ) B=AIM(JJ) R=A*CO-B*SI ARE(JJ)=ARE(J)-R ARE(J)=ARE(J)+R R=B*CO+A*SI AIM(JJ)=AIM(J)-R AIM(J)=AIM(J)+R R=C*CO-S*SI SI=C*SI+S*CO CO=R IF(i-NI4,17,17 RETURN ENO ИМЯ ARE AIM URE UIM ZIM 1 И W2 ДЛИНА N1*N2 N1*N2 N1*N2 N1*N2 N1*N2 N1 и N2 НАЗНАЧЕНИЕ ДЕЙСТВ. ЧАСТЬ ОБРАЗА ФУРЬЕ ЯДРА МНИМ. ЧАСТЬ ОБРАЗА ФУРЬЕ ЯДРА ДЕЙСТВ. ЧАСТЬ ОБРАЗА ФУРЬЕ ПРАВОЙ ЧАСТИ МНИМ. ЧАСТЬ ОБРАЗА ФУРЬЕ ПРАВОЙ ЧАСТИ МНИМАЯ ЧАСТЬ РЕШЕНИЯ СТАБИЛИЗАТОРЫ V. Программа решения двумерных интегральных уравнений типа свертки 0001 SUBROUTINE PTITR(AK,U0,ALIM,N1,N2,Z, *DL,HH,C1,ALPHA,AN,U.NU,IMAX,IERR) 0002 IMPLICIT REAL*8(A-H,O-Z) 0003 INTEGER IERR,IMAX,IP,IQ,N1,N2,NAI,NAR, *NMAX,NU,NUI,NUR,NW,NZI,NQI 0004 REAL*8 AK,ALIM,ALPHA,AM,C1,DL,HH, *OM,T1,T2,U,U0,Z,EPRO 0005 DIMENSION U(NU),U0(N1,N2) 0006 DIMENSION Z(N1,N2),ALIMA2) С * ТАБЛИЦА СООТВЕТСТВИЯ С * С * С * С * С * С * С * С * С * С * С * 0007 1Р=1 С * IP - ПРИЗНАК РАБОТЫ: С * ПРИ ПЕРВОМ ОБРАЩЕНИИ 1Р=+1 С * ПРИ ПОВТОРНОМ ВХОДЕ ЧЕРЕЗ PTIKRE 1Р=-1 0008 EPRO=0. 0009 IFCC1.GT.1.)EPRO=(C1-1.)*DL С * EPRO - ТОЧНОСТЬ РЕШЕНИЯ УРАВНЕНИЯ НЕВЯЗКИ С * ЕСЛИ EFRO=0, TO ВЫЧИСЛЯЕТСЯ ЭКСТРЕМАЛЬ С * ПРИ ФИКСИРОВАННОМ ALFA 0010 100 CONTINUE С * ВЫЧИСЛЕНИЕ ЛОКАЛЬНОГО НОСИТЕЛЯ РЕШЕНИЯ 0011 ALIMA)=ALIME)-.5*(ALIM(9)+ALIMA0)) 0012 ALIMB)=ALIMF)-.5*(ALIM(9)+ALIMA0)) 0013 ALIMC)=ALIMG)-.5*(ALIMA1)+ALIMA2)) 0014 ALIMD)=ALIM(8)-.5*(ALIMA1)+ALIMA2)) С * Tl, T2 - ПЕРИОДЫ ПРОДОЛЖЕНИЯ 0015 T1=ALIMF)-ALIME) 0016 T2=ALIM(8)-ALIMG) С * ФОРМИРОВАНИЕ НАЧАЛ МАССИВОВ 0017 NAR=1 0018 NQU=N1*N2 0019 NAI=NAR+NQU 0020 NW1=NAI+NQU 0021 NW2=NW1+N1 0022 NZI=NW2+N2 0023 NUR=NZI+NQU 0024 NUI=NUR+NQU 0025 NMAX=NUI+NQU С * КОНТРОЛЬ ДЛИНЫ РАБОЧЕГО МАССИВА 0026 IF(NMAX-l.GT.NU) GOTO 64 0027 IF(IP.EQ.-l) GOTO 101 184 185
С * ЗАДАНИЕ ПРАВОЙ ЧАСТИ 0028 CALL PTICR1(U0,U0,U(NUR),NQU,0.) 0029 CALL PTICR2(U(NUI),0.,NQU) 0030 101 CONTINUE С * СОБСТВЕННО РЕШЕНИЕ УРАВНЕНИЯ 0031 CALL PTIKR3(AK,U(NAR),U(NAI),Z.U(NZI), *U(NUR),U(NUI),U(NW1),U(NW2),N1,M2, ¦ALPHA,ALIM,AN,OM,T1,T2,DSQRT(DL) , ' *DSQRT(HH),IP,EPRO,IQ,IMAX,IERR) 0032 GOTO 999 0033 64 CONTINUE С * НЕ ХВАТАЕТ ДЛИНЫ РАБОЧЕГО МАССИВА 0034 IERR=64 0035 GOTO 999 С * ВХОД PTITRE ПРЕДНАЗНАЧЕН С * ДЛЯ ПОВТОРНОГО РЕШЕНИЯ УРАВНЕНИЯ С * С ТЕМИ ЖЕ ЯДРОМ И ПРАВОЙ ЧАСТЬЮ 0036 ENTRY PTITRE 0037 IP=-1 0038 GOTO 100 0039 999 CONTINUE 0040 RETURN 0041 END 0001 SUBROUTINE PTIKRSCAK.ARE.AIM.ZRE.ZIM, *URE,UIM,Wl,W2,N1,N2,ALP,ALIM,BETA,RO, *T1,T2,DEL,HH,IPAR.EPRO.IQ,IMAX,IERR) 0002 IMPLICIT REAL*8(A-H,O-Z) 0003 INTEGER I,IERR,IMAX,IPAR,IQ,J,M,N,N1,N2 0004 REAL*8 AB,AIM,ALIM,AIiF,ARE,ARGl,ARG2, *A0,Al,A2,BA,BETA,Cl,C2,C3,DEL,DQ,DR, *EPRO,Fl,F2,F3,HA,HH,H1,H2,P,RO, *R0,R1,SSI,T1,T2,UIM,URE,U2, *W1,W2,X,ZIM,ZNOR,ZRE,ZZ 0005 DIMENSION ARE(N1,N2),ZRE(N1,N2), *URE(N1,N2),AIM(N1,N2),ZIM(N1,N2), *UIM(N1,N2),W1(N1),W2(N2),ALIMA2) 0006 H1=T1/N1 0007 H2=T2/N2 0008 HA=H1/N1*H2/N2 С * ПРОВЕРЯЕМ, ПЕРВЫЙ ЛИ ВХОД 0009 IF(IPAR.EQ.-l) GOTO 2 С * ЗАДАНИЕ ЯДРА УРАВНЕНИЯ 0010 DO 1 1=1,N1 0011 DO I J=1,N2 0012 ARGl=(I-Nl/2-l)*Hl+ +0.5*(ALIM(9)+ALIMA0)) 0013 ARG2=(J-N2/2-l)*H2+ +0.5*(ALIMA1)+ALIMA2)) 0014 • ARE(I,J)=AK(ARG1,ARG2)*H1*H2 0015 AIM(I,J)=0. 0016 IF(ARG1.LT.ALIM(9).OR.ARG1.GT.ALIMA0). .OR.ARG2.LT.ALIMA1).OR.ARG2.GT.ALIMA2)) * ARE(I,J)=0. 186 0017 W1(I)=B.0/H1* * DSINC.14159265359D0/N1*A-1)))**2 0018 W2(J)=B.0/H2* * DSINC.14159265359D0/N2*(J-1)))**2 0019 1 CONTINUE 0020 P=1.0 С * ПРЕОБРАЗОВАНИЕ ФУРЬЕ ЯДРА И ПРАВОЙ ЧАСТИ 0021 CALL FTFTC(ARE,AIM,N1,N2,P) 0022 Р=1.0 0023 CALL FTFTC(URE,UIM,N1,N2,P) 0024 2 CONTINUE С * ПОДБИРАЕМ ALP ТАК, ЧТО RO(ALP) > 0 0025 IQ=0 0026 77 CONTINUE 0027 IQ=IQ+1 С * ВЫЧИСЛЕНИЕ НЕВЯЗОК 0028 F1=0. 0029 F2=0. 0030 DO 44 M=1,N1 0031 DO 44 N=1,N2 0032 U2=URE(M,N)**2+UIM(M,N)**2 0033 A2=ARE(M,N)**2+AIM(M,N)**2 0034 X=1.+(W1(M)+W2(N))**2 0035 IFCA2.EQ.0.) GOTO 42 0036 BA=X/(A2+ALP*X) 0037 AB=1.-ALP*BA 0038 C1=HA*U2*(BA*ALP)**2 0039 C2=HA*U2*AB*BA 0040 F1=F1+C1 0041 F2=F2+C2 0042 GOTO 44 0043 42 F1=F1+HA*U2 0044 44 CONTINUE С * ВЫЧИСЛЕНИЕ ОБОБЩЕННОЙ НЕВЯЗКИ С * ДЛЯ ПРОВЕРКИ RO(ALP)>0 0045 BETA^Fl 0046 RO=F1-(DEL+HH*DSQRT(F2))**2 С * ЕСЛИ ЗАДАНО EFRO=0, TO КОНЧАЕМ 0047 IFCEPRO.EQ.0.) GOTO 10 С * ЕСЛИ ЗАДАНО ALF=0.0, TO КОНЧАЕМ 0048 IF(ALP.EQ.0.) GOTO 68 0049 IF(RO.GT.0.) GOTO 33 С * ПЕРЕХОД К ВЫЧИСЛЕНИЮ РЕШЕНИЯ, С * ЕСЛИ НЕ УДАЛОСЬ ПОДОБРАТЬ ALP ТАКОЕ, С * ЧТО RO(ALP) > 0 0050 IF(IQ.GT.IMAX) GOTO 65 0051 ALP=2.*ALF 0052 GOTO 77 С * НАЧАЛО ПОИСКА КОРНЯ МЕТОДОМ НЬЮТОНА 005 3 33 CONTINUE 0054 IQ=0 0055 3 CONTINUE - 0056 IQ=IQ+1 С * БЛОК ВЫЧИСЛЕНИЯ НЕВЯЗОК 0057 F1=0. 187
0058 0059 0060 0061 0062 0063 0064 0065 0066 0067 0068 0069 0070 0071 0072 0073 0074 0075 0076 0077 0078 0079 0080 0081 0082 0083 0084 0085 0086 0087 0088 0089 0090 0091 0092 0093 0094 0095 0096 0097 188 С С с с с с с с с с с с с с с с F2=0. F3=0. DO 4 M=1,N1 DO 4 N=1,N2 U2=URE(M,N)**2+UIM(M,N)**2 A2=ARE(M,N)**2+AIM(M,N)**2 X=1.+(W1(M)+W2(N))**2 IF(A2.EQ.0.) GOTO 41 BA=X/(A2+ALP*X) AB=1.-ALP*EA C1=HA*U2*(BA*ALP)**2 C2=HA*U2*AE*EA C3=2.*C1*AB F1=F1+C1 F2=F2+C2 F3=F3+C3 GOTO 4 41 F1=F1+HA*U2 * * * * * * * * * * * * 61 * 6 7 * * * 4 CONTINUE ВЫЧИСЛЕНИЕ НЕВЯЗКИ -BETA, НОРМЫ РЕШЕНИЯ В W21 -ZNOR, ОБОБЩЕННОЙ НСВЯЗКИ -RO И ЕЕ ПРОИЗВОДНОЙ- DR BETA=F1 ZNOR=DSQRT(F2) RO=BETA-(DEL+HH* ZNOR)**2 IF(ALP.EQ.0.) GOTO 68 DR=-F3*ALF-(DEL+HH*ZNOR)*HH*F3/ZNOR ПЕРЕХОД К ВЫЧИСЛЕНИЮ РЕШЕНИЯ, ЕСЛИ ТОЧНОСТЬ ДОСТИГНУТА IF(DABS(RO).LT.EPRO) GOTO 10 ПЕРЕХОД НА МЕТОД ХОРД, ЕСЛИ ОБОБЩЕННАЯ НЕВЯЗКА НЕ ВЫПУКЛА IF(RO.LT.0.) GOTO 61 ВЫЧИСЛЕНИЕ НОВОГО АРГУМЕНТА ПО МЕТОДУ НЬЮТОНА И ПЕРЕХОД К СЛЕДУЮЩЕМУ ШАГУ DQ=-RO/DR A1=ALP R1=RO ALP=1./A./ALP+DQ) IF(IQ.GE.IMAX) GOTO 66 GOTO 3 МЕТОД ХОРД CONTINUE ИЗМЕНЕНИЕ ИНТЕРВАЛА ПРИ R0<0 CONTINUE A0=ALP R0=RO CONTINUE IQ=IQ+1 ВЫЧИСЛЕНИЕ НОВОГО АРГУМЕНТА ПО МЕТОДУ ХОРД ALP=A0*A1*(R0-R1)/(A0*R0-A1*R1) ВЫЧИСЛЕНИЕ НЕВЯЗОК F1=0. ./ 0098 0099 0100 0101 0102 0103 0104 0105 0106 0107 0108 0109 0110 0111 0112 0113 0114 0115 0116 0117 0118 0119 0120 0121 0122 0123 0124 0125 0126 0127 0128 0129 0130 0131 0132 0133 0134 0135 0136 0137 0138 0139 И140 С С с с с с с с с с с с с F2=0. DO 9 M=1,N1 DO 9 N=1,N2 U2=URE(M,N)**2+UIM(M,N)**2 A2=ARE(M,N)**2+AIM(M,N)**2 X=1.+(W1(M)+W2(N))**2 IF(A2.EQ.0.) GOTO 91 BA=X/(A2+ALP*X) AB=1.-ALP*BA C1=HA*U2*(BA*ALF)**2 C2=HA*U2*AB*BA F1=F1+C1 F2=F2+C2 GOTO 9 91 F1=F1+HA*U2 9 CONTINUE * ВЫЧИСЛЕНИЕ НЕВЯЗКИ, ОБОБЩЕННОЙ НЕВЯЗЮ * И НОРМЫ РЕШЕНИЯ BETA=F1 ZNOR=DSQRT(F2) RO=BETA-(DEL+HH*ZNOR)**2 IF(ALP.EQ.0.) GOTO 68 * ПЕРЕХОД К ВЫЧИСЛЕНИЮ РЕШЕНИЯ, * КОГДА ТОЧНОСТЬ ДОСТИГНУТА IF(DABS(RO).LT.EPRO) GOTO 11 IFdQ.EQ. IMAX) GOTO 67 IFCRO.LT.0.) GOTO 6 * ИЗМЕНЕНИЕ ИНТЕРВАЛА, КОГДА RO>0 A1=ALP R1=RO GOTO 7 65 CONTINUE * HE УДАЛОСЬ ПОДОБРАТЬ ALP ТАК, * ЧТО RO(ALP) БОЛЬШЕ НУЛЯ IERR=65 GOTO 999 66 CONTINUE * СДЕЛАНО IMAX ИТЕРАЦИЙ МЕТОДОМ НЬЮТОНА IERR=66 GOTO 999 67 CONTINUE * СДЕЛАНО IMAX ИТЕРАЦИЙ, * ПРИМЕНЯЛСЯ МЕТОД ХОРД IERR=67 GOTO 999 68 CONTINUE * ЗАДАНО ИЛИ ПОЛУЧИЛОСЬ ALP=0.0 IERR=68 GOTO 999 11 CONTINUE * РЕШЕНИЕ НАЙДЕНО МЕТОДОМ ХОРД IERR=1 GOTO 999 10 CONTINUE * НОРМАЛЬНОЕ ОКОНЧАНИЕ IERR=0 189
0141 0142 0143 0144 0145 0146 0147 0148 0149 0150 0151 0152 0153 0154 0155 0156 0157 0158 0001 0002 0003 0004 0005 0006 0007 0008 0009 0010 0011 0012 0013 0001 0002 0003 190 111 12 999 CONTINUE С * ВЫЧИСЛЕНИЕ ФУРЬЕ-ПРЕОБРАЗОВАНИЕ РЕШЕНИЯ SSI=1.0 DO 12 M=1,N1 SSI=-SSI DO 12 N=1,N2 SSI=-SSI ZZ=N1*N2*(ARE(M,N)**2+AIM(M,N)**2+ +ALP*A.0+(W1(M)+W2(N))**2)) IF(ZZ.NE.0.) GOTO 111 ZRE(M,N)=0. ZIM(M,N)=0. GOTO 12 ZRE(M,N)=SSI*(ARE(M,N)*URE(M,N)+ +AIM(M,N)*UIM(M,N))/ZZ ZIM(M,N)=SSI*(ARE(M,N)*UIM(M,N)- -AIM(M,N)*URE(M,N))/ZZ CONTINUE С * ОБРАТНОЕ ФУРЬЕ-ПРЕОБРАЗОВАНИЕ РЕШЕНИЯ Р=-1.0 CALL FTFTC(ZRE,ZIM,N1,N2,P) RETURN END SUBROUTINE FTFTC(ARE,AIM,N1,N2,P) С * ПРОГРАММА БЫСТРОГО ДВУМЕРНОГО С * ДИСКРЕТНОГО ПРЕОБРАЗОВАНИЯ ФУНКЦИИ, С * ДЕЙСТВИТЕЛЬНАЯ ЧАСТЬ КОТОРОЙ НАХОДИТСЯ С * В ARE(N1,N2),A МНИМАЯ - В AIM(N1,N2). С * ЕСЛИ Р > 0, ТО ПРОИЗВОДИТСЯ ПРЯМОЕ, С * А ЕСЛИ Р < 0 - ОБРАТНОЕ ПРЕОБРАЗОВАНИЕ. С * РЕЗУЛЬТАТ ОСТАЕТСЯ НА МЕСТЕ МАССИВОВ С * ARE И AIM. РАЗМЕРНОСТИ МАССИВОВ N1 И N2 С * ДОЛЖНЫ БЫТЬ ЦЕЛЫМИ СТЕПЕНЯМИ ДВОЙКИ. С * ПАРАМЕТР Р НЕ СОХРАНЯЕТСЯ. IMPLICIT REAL*8(A-H,O-Z) INTEGER Г, J,N1,N2 REAL*8 ARE,AIM,F DIMENSION ARE(N1,N2),AIM(N1,N2) DO 1 1=1,N1 CALL FTF1C(ARE,AIM,N1*N2,I,N1,F) 1 CONTINUE DO 2 J=1,N2 CALL FTFlC(AREd.J) , AIM( 1, J) ,N1,1,1, P) 2 CONTINUE RETURN END SUBROUTINE FTF1C(XARE,XAIM,N,IN.K.P) IMPLICIT REAL*8(A-H,O-Z) INTEGER N, IN,К,1,11,J,JJ,M,MM,N1,N2 0004 15005 0006 0007 0008 0009 0010 0011 0012 0013 0014 0015 0016 0017 0018 0019 - 0020 0021 0022 0023 0024 0025 0026 0027 0028 0029 0030 0031 0032 0033 0034 0035 0036 0037 0038 0039 0040 0041 0042 0043 0044 0045 0046 0047 0048 0049 0050 0051 0052 0053 005 4 0055 0056 0057 0058 0059 1 2 3 4 5 6 10 11 13 14 REAL*8 XARE(N),XAIM(N) Nl=N/2 MM=Nl/2 N2=N1+K J=IN JJ=J J=J+K IF(J-N1J,2,10 II=JJ+N1 R=XARE(J) XARE(J)=XARE(II) XARE(II)=R R=XAIM(J) XAIM(J)=XAIM(II) XAIM(II)=R J=J+K M=MM IF(JJ-MM,5,4 JJ=JJ-M M=M/2 GOTO 3 JJ=JJ+M IF(JJ-JI,1,6 R=XARE(J) XARE(J)=XARE(JJ) XARE(JJ)=R R=XAIM(J) XAIM(J)=XAIM(JJ) XAIM(JJ)=R I=J+N2 II=JJ+N2 R=XARE(I) XARE(I)=XARE(II) XARE(II)=R R=XAIM(I) XAIM(I)=XAIM(II) XAIM(II)=R GOTO 1 I=K T=3.14159265359 IF(PI3,17,11 T=-T P=-T SI=0. CO=1. S=DSIN(T) C=DCOS(T) T=0.5*T 11=1 1=1+1 ' DO 16 M=IN,II,K DO 15 J=M,N,I JJ=J+II A=XARE(JJ) B=XAIM(JJ) R=A*CO-B*SI 191
0001 0060 XARE(JJ)=XARK(J)-R 0061 XARE(J)=XARE(J)+R 006 2 R=B*CO+A*SI 0063 XAIM(JJ)=XAIM(J)-R 0064 15 XAIM(J)=XAIM(J)+R 0065 R=C*CO-S*SI 0066 SI=C*SI+S*CO 0067 16 CO=R 0063 IF(I-N)il,17,17 0069 17 RETURN 0070 END VI. Программа решения интегральных уравнений Фредгольма 1-го рода на множествах монотонных и (или) выпуклых функций. Метод условного градиента SUBROUTINE PTIGR(АК,U0,X1, Х2,Yl,Y2,N,М, *Z,AN2,ITER,DL,IMAX,С1,С2,1С,R,NR,IERR) РЕШЕНИЕ ИНТЕГРАЛЬНОГО УРАВНЕНИЯ ПЕРВОГО РОДА МЕТОДОМ УСЛОВНОГО ГРАДИЕНТА ДИСПЕТЧЕР МЕТОДА АК - ПОДПРОГРАММА-ФУНКЦИЯ ВЫЧИСЛЕНИЯ ЯДРА ТАБЛИЦА СООТВЕТСТВИЯ ИМЯ ДЛИНА СОДЕРЖАНИЕ A: N*M МАТРИЦА ОПЕРАТОРА Н: N НАПРАВЛЕНИЕ СПУСКА G: N ГРАДИЕНТ U: М ЗНАЧЕНИЕ ОПЕРАТОРА Ul: M РАБОЧИЙ МАССИВ NR=N*M+2(N+M) IMPLICIT REAL*B(A-H,O-Z) REAL*8 U0,Z,R,AK REAL*8 XI,X2,Yl,Y2,DL,C1,C2,AN2 INTEGER IMAX,1С,NR,ITER,IERR,N,M INTEGER NA,NH,NG,NU,NU1,NMAX EXTERNAL PTICR0,PTIGRl DIMENSION U0(M),Z(N),R(NR) ФОРМИРУЕМ НАЧАЛА МАССИВОВ NA=1 NH=N*M+1 NG=NH+N NU=NG+N NU1=NU+M NMAX=NU1+M IF(NMAX-1,GT.NR)GOTO 64 ФОРМИРУЕМ МАТРИЦУ ОПЕРАТОРА CALL PTICR0-(AK,R(NA) , X 1 , Х2 , Yl , Y2 , N , M ) МИНИМИЗАЦИЯ НЕ8ЯЗКИ CALL PTIGRl(R(NA),Z,U0,C1,C2,IC,N,M, *ITER,DL*(M-1. )/(Y2-Y1) ,0. , IMAX.AN2, *Z,R(NU),R(NU1),R(NH),R(NS),IERR) AN2=AN2*(Y2-Y1)/(M-l.) GOTO 999 CONTINUE 0002 0003 0004 0005 0006 0007 0008 0009 0010 0011 0012 0013 0014 0015 0016 0017 0018 0019 0020 С С С С С с с с с с с с с с с с 6 * * * X! * * X! * * X! * * * * * * 4 192 С * НЕ ХВАТАЕТ ДЛИНЫ РАБОЧЕГО МАССИВА 0021 IERR=64 0022 GOTO 999 0023 999 CONTINUE 0024 RETURN 0025 END 0001 SUBROUTINE PTIGR; ,-¦, Z0,U0,C1 ,C2, IC,N,M , *ITER,DL2,ANGRD,IMAX,AN2, *Z,U,U1,H,G,IERR) МЕТОД УСЛОВНОГО ГРАДИЕНТА МИНИМИЗАЦИИ ФУНКЦИОНАЛА НЕВЯЗКИ A(M,N) - МАТРИЦА ОПЕРАТОРА Z0(N) - НАЧАЛЬНОЕ ПРИБЛИЖЕНИЕ U0(M) - ПРАВАЯ ЧАСТЬ С1,С2 - КОНСТАНТЫ, ОГРАНИЧИВАЮЩИЕ PEILJIHHE 1С - ПАРАМЕТР, ОПРЕДЕЛЯЮЩИЙ МНОЖЕСТВО КОРРЕКТНОСТИ ITER - КОЛИЧЕСТВО СДЕЛАННЫХ ИТЕРАЦИЯ DL2 - УРОВЕНЬ ВЫХОДА ПО НЕВЯЗКЕ ANGRD - УРОВЕНЬ ВЫХОДА ПО НОРМЕ ГРАДИЕНТА IMAX - МАКСИМАЛЬНОЕ ЧИСЛО ИТЕРАЦИЙ Z(N) - ПРИБЛИЖЕННОЕ РЕШЕНИЕ U(M) - ЗНАЧЕНИЕ ОПЕРАТОРА НА НЕМ AN2 - ЗНАЧЕНИЕ НЕВЯЗКИ НА НЕМ G(N),H(N) - РАБОЧИЕ МАССИВЫ U1(M) - РАБОЧИЙ МАССИВ ДЛЯ ОДНОМЕРНОЙ МИНИМИЗАЦИИ IMPLICIT REAL*8(A-H.O-Z) REAL*8 A,Z0,U0,U1,U,G,H,Z,C1,C2 REAL*8 ALMAX,AN2,AN20,DL2,ANGR,ANGRD INTEGER IC,N,M,ITER,IMAX,I ED,IERR EXTERNAL PTIGR2.PTICR1,PTICR3 EXTERNAL PTICR5,PTICR4,PTICR6 DIMENSION U1(M),U(M),G(N),H(N),Z(N) DIMENSION A(.1,N) , Z0(N) , U0 ( M ) ITER=0 ALMAX = 1 . CALL PTICR1(Z0,Z0,Z,N,0.) CALL PTICR3(A,Z,U,N,M) CALL PTICR5(U,U0,M,AN2O) CALL PTICR4(G,U,U0,A,N,M) CALL PTICR6(G,G,N,ANGR) IF(AN20.LE.DL2.OR.ANGR.LE.ANGRD.OR. . ITER'.GE . IMAX JGOTO 20 НАЧАЛО ИТЕРАЦИЙ CONTINUE ITER=ITER+1 CALL PTIGR2(H,G,N,C1,C2,1С) CALL PTICR1(Z,H,H,N,-1.) CALL PTICRO(A,Z,G,U1,H,ALMAX,AL, *N,M,0.,0,IED) CALL PTICRK Z ,H, Z ,N,-AL) CALL PTICR3(A,Z,U,N,M) 0002 0003 0004 0005 0006 0007 000B Й009 И010 0011 0012 0013 0014 0015 0016 0017 0018 0019 0020 Li 021 11022 'ЛЙ23 Л024 С С с с с с с с с с с с с с с с с с с * * X! * * * * * X! X! X! * X! * ¦ * х< X! * 14 193
0025 CALL PTICR4(G,U,U0,A,N,M) 0026 CALL PTICR6(G,G,N,ANGR ) 0027 CALL PTICR5(U,U0,M,AN2) 0028 IF(AN2.LE.DL2.OR.ANGR.LE.ANGRO.OR. .ITER.6E.IMAX)GOTO 20 0029 IF(AN2.GE.AN20)G0T0 21 С * ЗАПОМИНАЕМ НЕ8ЯЗКУ 0030 AN20=AN2 0031 GOTO 14 0032 20 CONTINUE С * НОРМАЛЬНОЕ ОКОНЧАНИЕ 0033 IERR=0 0034 GOTO 999 0035 21 CONTINUE С * НЕВЯЗКА НЕ УМЕНЬШИЛАСЬ. НЕФАТАЛЬНО . 0036 IERR=1 0037 999 CONTINUE 0038 RETURN 0039 END 0001 SUBROUTINE PTIGR2(TOP,G,N,C1,C2,1С) с * выбор оптимальной вершины С * G - МАССИВ, ГРАДИЕНТ С * ТОР - МАССИВ, НАЙДЕННАЯ ВЕРШИНА С * С1,С2 - КОНСТАНТЫ, ОГРАНИЧИВАЮЩИЕ РЕШЕНИЕ С * 1С=1 - МОНОТОННЫЕ ФУНКЦИИ С * 1С=2 - МОНОТОННЫЕ ВЫПУКЛЫЕ ФУНКЦИИ С * 1С=3 - 8ЫПУКЛЫЕ ФУНКЦИИ С * 1С=-1,С1=0. - ФУНКЦИИ С ВАРИАЦИЕЙ, С * ОГРАНИЧЕННОЙ 2*С2 0002 IMPLICIT REAL*8(A-H,0-Z) 0003 REAL*8 TOP,G 0004 REAL*8 Cl,C2,AL,S1,S2,SS,SG,A,8 0005 INTEGER N,1С,ICM,K,K1,I 0006 EXTERNAL IABS.PTICRl,PTICR2 0007 DIMENSION TOP(N),G(N) 0008 AL=0. 0009 S1=0. 0010 S2=0. 0011 B=l./(N-l.) 0012 A=l.-8 0013 SS=+1. С * 8 Kl - НОМЕР ЛУЧШЕЙ С * К НАСТОЯЩЕМУ ВРЕМЕНИ ВЕРШИНЫ 0014 К1=0 0015 ICM=IABS(IC) 0016 IF(ICM.EQ.1)GOTO 101 0017 DO 1 1=2,N 0018 S2=S2+G(I)*A 0019 1 A=A-B С * 8 S2 - ЗНАЧЕНИЕ ЛИНЕЙНОГО ФУНКЦИОНАЛА С * БЕЗ УЧЕТА ЛЕВОЙ ТОЧКИ 0020 101 CONTINUE 194 .1021 DO 2 K = 1,N '.1022 SG=S1 + S2+G(K) С * SG - ЗНАЧЕНИЕ ФУНКЦИОНАЛА W023 IF(AL.LE.SGJGOTO 3 Й024 AL=SG И025 K1=K Ш26 SS=+1 . W027 3 CONTINUE W02B IF(IC.GE.0)GOTO 8 С * ПРОВЕРЯЕМ СИММЕТРИЧНУЮ ВЕРШИНУ, С * ЕСЛИ НУЖНО AС<0) И029 IF(AL.LE.-SG)GOTO 4 И030 AL=-SG Й031 К1=К 0032 SS=-1. С * SS=-1 - ПРИЗНАК ТОГО, С * ЧТО 8ЫБРАНА СИММЕТРИЧНАЯ 8ЕРШИНА И033 4 CONTINUE И034 8 CONTINUE С * В SI - ЛЕВАЯ ПОЛОВИНА ФУНКЦИОНАЛА С * А 8 S2 - ПРА8АЯ «1035 IF( I CM. EQ. 1 .OR. ICM . EQ . 2 ) S1=S1+G ( К) ..1036 IF( ICM.EQ.3)S1=(S1+G(K) )* (K-l . ) /K /1037 IF(K.GE.N-l .OR. ICM.EQ.1 )GOTO 7 Л03В S2=S2*(N-K)/(N-K-1.)-G(K+l) 1-3039 GOTO 6 И040 7 S2=0. 0041 6 CONTINUE И042 2 CONTINUE с * номер оптимальной вершины найден - ki С * ФОРМИРУЕМ ЭТУ ВЕРШИНУ И043 IF(K1.NE.0)GOTO 9 0044 CALL PTICR2(TOP,C1,N) 0045 GOTO 999 И046 9 CONTINUE 0047 DO 5 1 = 1 ,N 0048 GOTO (B01,802,603),ICM 0049 801 IF(I.LE.K1)TOP(I)=C2 0050 IF(I.GT.K1)TOP(I)=C1 0051 GOTO 5 0052 802 IF(I.LE.K1)TOP(I)=C2 0053 IF(I.GT.Kl) * TOP(I)=TOPA-1)-(C2-Cl)/(N-Kl) 0054 GOTO 5 0055 803 IF(I.LE.Kl.AND.K1.NE.1 ) * TOP(I)=C1+(C2-C1)/(Kl-l.)*(I-l.)*2. 0056 IF(I.GE.K1.AND.K1.NE.N ) * TOP(I)=C1+(C2-C1)/(N-Kl)*(N-I+0.) *2. 0057 5 CONTINUE 0058 IF(IC.GE.0)GOTO 999 0059 CALL PTICR1(TOP,TOP,TOP,N,SS-1.) 0060 GOTO 999 0061 999 CONTINUE 0062 RETURN 4063 END 195
VII. Программа решения интегральных уравнений Фредгольма 1-го рода на множествах монотонных и (или) выпуклых функций. Метод проекции сопряженных градиентов 0001 0002 0003 0004 0005 0006 0007 0008 0009 0010 0011 0012 0013 0014 0015 0016 0017 0018 0019 0020 0021 0022 0023 0024 0025 196 С С С С С С С С С С С С С С С С С С SU8ROUTINE PTILR(AK,U0,X1,X2,Yl,Y2,N,M, *Z,AN2,DL,ITER,IMAX,C2,IC.R.NR,I ERR) IMPLICIT REAL*8(A-H,O-Z) REAL*8 X1,X2,Y1,Y2,AN2,DL,C2,U0,Z,R,AK INTEGER N,M,IC,NR,I ERR,NN,NA,NC,ND INTEGER INCON,N8,NMASK,NAJ,NP,NPI,NGR INTEGER NW,NP1,NMAX,IE,ICONT,ITER,IMAX DIMENSION U0(M),Z(N),R(NR) EXTERNAL PTICR0,PTICR1, *PTILRA,PTILRB,PTILR1,PTILR2 ТАБЛИЦА СООТВЕТСТВИЯ ДЛИНА СОДЕРЖАНИЕ 1 ЧИСЛО АКТИВНЫХ ОГРАНИЧЕНИЙ ДЛЯ PTILRKPTILR2) A: N*M МАТРИЦА ОПЕРАТОРА С: N*N (С#Х,Х) D: N (D,X ) CON: NN*N МАТРИЦА ОГРАНИЧЕНИЙ В: NN ВЕКТОР ОГРАНИЧЕНИЙ MASK: NN МАСКА АКТИВНОСТИ ОГРАНИЧЕНИЙ (РАБОЧИЙ) NN*N МАТРИЦА АКТИВНЫХ ОГРАНИЧЕНИЙ * ИМЯ IM АЛ Р: Pi! GR; W: PI: NN*N N*N N MAX(NN,N,M) N РАБОЧИЙ ПРОЕКТОР (РАБОЧИЙ) РАБОЧИЙ РАБОЧИЙ РАБОЧИЙ С * NR>=3*N*M+3*N*N+8*N+MAX(M,N+l)+3 С * С * ICONT - ПРИЗНАК ПРОДОЛЖЕНИЯ С * ICONT=0 - БЕЗ ПРОДОЛЖЕНИЯ С * ICONT=1 - ИДЕТ ПРОДОЛЖЕНИЕ ICONT=0 101 CONTINUE С * ЧИСЛО ОГРАНИЧЕНИЙ NN NN=N IF(IC.EQ.l)NN=N+1 С * ФОРМИРУЕМ НАЧАЛА МАССИВ08 NA=2 NC=NA+N*M ND=NC+N*N , NCON=ND+N NB=NCON+N*NN NMASK=NB+NN NAJ=NMASK+NN NP=NAJ+NN*N NPI=NP+NN*N NGR=NPI+N*N NW=NGR+N NP1=NW+MAX0(NN,M,N > NMAX=NP1+N 0026 IF(NMAX-1..GT.NR)GOTO 64 0027 IF(ICONT.EQ.l)GOTO 100 С * ЕСЛИ ICONT=1, С * TO ПЕРЕХОДИМ НА ВЫЗО8 ПРОДОЛЖЕНИЯ С * В ПРОТИВОПОЛОЖНОМ СЛУЧАЕ С * ФОРМИРУЕМ МАТРИЦУ ОПЕРАТОРА 0028 CALL PTICR0(AK,R(NA),Х1,X2,Yl,Y2,N,M) С * ПРЕОБРАЗУЕМ ФУНКЦИОНАЛ НЕВЯЗКИ С * К 8ИДУ (C*X,y>+(D,X)+H 0029 CALL PTILRA(R(NA),U0,R(NC),R(ND),N,M) С * ФОРМИРУЕМ МАТРИЦУ ОГРАНИЧЕНИЙ 0030 CALL PTILRB(R(NCON),R(N8),N,NN,IC,C2,IE) 0031 IF(IE.NE.0)GOTO 65 С * МИНИМИЗИРУЕМ НЕ8ЯЗКУ 0032 CALL PTILR1(M,R,R(NMASK),R(NA), R(NAJ), *R(NCON),R(NP),U0,R(NPI),R(N8),R(NGR), *R(NW),R(NP1) , .TRUE. ,I MAX,ITER,R(NC) ,Z, *R(ND),N,NN,AN2,DL*(M-1.)/(Y2-Y1) , *0.,IERR) 0033 102 CONTINUE 0034 AN2=AN2*(Y2-Y1>/(M-l.) 0035 GOTO 999 0036 ENTRY PTILRE С * 8Х0Д ДЛЯ ПРОДОЛЖЕНИЯ 0037 ICONT=1 0038 GOTO 101 0039 100 CONTINUE С * ВЫЗО8 ПРОГРАММЫ ПРОДОЛЖЕНИЯ 0040 CALL PTILR2(M,R,R(NMASK),R(NA),R(NAJ), *R(NCON),R(NP),U0,R(NPI),R(NB),R(NGR), *R(NW),R(NP1),.TRUE.,IMAX,ITER,R(NC),Z, *R(ND),N,NN,AN2,DL*(M-1.)/(Y2-Y1), *0.,IERR) 0041 GOTO 102 0042 64 CONTINUE С * HE X8ATAET ДЛИНЫ РАБОЧЕГО МАССИВА 0043 IERR=64 0044 GOTO 999 0045 65 CONTINUE С * НЕСУЩЕСТВУЮЩИЙ 8ИД РАБОТЫ 0046 IERR=65 0047 GOTO 999 0048 999 CONTINUE 0049 RETURN 0050 END 0001 SUBROUTINE PTILR5(A,AJ,Bl,MASK,N,M,NN, *GR,PI,P,P1,C,X,D,K,IED.DGR) С * ПОДПРОГРАММА МИНИМИЗАЦИИ ФУНКЦИОНАЛА С * 8 ПРОСТРАНСТВЕ,ОПРЕДЕЛЯЕМОМ АКТИ8НЫМИ С * ОГРАНИЧЕНИЯМИ AJ, ИХ НОМЕРАВ MASK, С * НАЧАЛЬНАЯ ТОЧКА X, КОНЕЧНАЯ 8 X, С * ПРОЕКТОР НА ПОДПРОСТРАНСТВО В PI. С * IED - КОД ОТВЕТА:0-НО8ОЕ ОГРАН., 197
0002 0003 0004 0005 0006 0007 000В 0009 0010 0011 0012 0013 0014 0015 0016 0017 0018 0019 0020 0021 0022 0023 0024 0025 0026 0027 0028 0029 0030' 0031 0032 0033 0034 0035 198 С * 1-МИНИМУМ,2-ВЫХ0Д ПО НОРМЕ ГРАДИЕНТА IMPLICIT REAL*8(A-H,O-Z) REAL*8 AJ,81,GR,PI,P,P1,C,X,A,D,AN1,R, *DGR,AN,AN2.R1,R2,ALPHA,ALM,ALP INTEGER NP,MASK,NN,I,J,K,M,N,IED DIMENSION AJ(NN,N),81(NN) ,MASK(NN), *GR(N),PI(N,N),P(N),P1(N),C(N,N), *X(N),A(NN,N),D(N) EXTERNAL PTICR1,PTICR2, *PTICR3,PTICR6,PTILR7 С * К --СЧЕТЧИК ИТЕРАЦИЙ С * В ДАННОМ ПОДПРОСТРАНСТВЕ. К=0 AN1=1. С * ПРИ К=0 СОПРЯЖ. ГРАДИЕНТ РАВЕН 0. CALL PTICR2(P,0.0,N) С * ЦИКЛ ПО СОПРЯЖЕННЫМ ГРАДИЕНТАМ С * И ПРОВЕРКА НА МИНИМУМ С * ПО КОЛИЧЕСТВУ СДЕЛАННЫХ ШАГОВ. 11 IF(K.EQ.N-M) GOTO 14 С * ВЫЧИСЛЯЕМ ГРАДИЕНТ, ЕСЛИ ЕГО НОРМА < DGR, С * ТО НА 8ЫХОД. CALL PTILR7(X,C,N,GR,D) CALL PTICR6(GR,GR,N,R) IF(R.LT.DGR) GOTO 17 С * PI - ПРОЕКЦИЯ АНТИГРАДИЕНТА CALL PTICR3(PI,GR,P1,N,N) CALL PTICRl(Pl,Pl,Pl,N,-2.0) С * AN - НОРМА ПРОЕКЦИИ, С * AN2- КОЭФФИЦИЕНТ ДЛЯ ОЧЕРЕДНОГО СОП.НАПР. CALL PTICR6(P1,P1,N,AN) AN2=AN/AN1 С * Р - НО8ОЕ СОПРЯЖЕННОЕ НАПРАВЛЕНИЕ CALL PTICR1(P1,P,P,N,AN2) С * R:=(P,GR) CALL PTICR6(P,GR,N,R) С * R1:=(CP,P) R1 = 0.0 DO 4 1=1,N R2=0.0 DO 5 J = 1,N R2=R2+C(I,J >*P(J > 5 CONTINUE R1=R1+P(I)#R2 4 CONTINUE IF(R1.EQ.0.0) GOTO 14 с * оптимальный шаг =-0.sr/ri ALPHA=-R/Rl/2. С * ИЩЕМ БЛИЖАЙШУЮ ПЛОСКОСТЬ ALM=ALPHA+1.0 NP=0 701 DO 6 1=1,NN С * АКТИВНЫЕ ОГРАНИЧЕНИЯ ПР08ЕРЯТЬ НЕ НУЖНО IF(MASK(I).EQ.l) GOTO 6 R=0.0 R1=0.0 0036 DO 7 J=1,N 0037 R=R+A(I,J)*X(J) 0038 R1=R1+A(I,J)*P(J) 0039 7 CONTINUE С * Rl > 0 - НУЖНЫЙ ЛУЧ НА ПРЯМОЙ 0040 IF(R1.LE.0.0) GOTO 6 С * ALP - РАССТОЯНИЕ ДО ПЛОСКОСТИ 0041 ALP=(B1(I)-R)/Rl С * ИЩЕМ МИНИМАЛЬНОЕ 0042 -IF(ALM.LE.ALP) GOTO 6 0043 ALM=ALP С * NP - НОМЕР ОГРАНИЧЕНИЯ 0044 NP=I 0045 6 CONTINUE С * ЕСЛИ ALPHA > ALM - ВЫШЛИ НА ОГРАНИЧЕНИЕ 0046 IF(ALPHA.GE. ALM) GOTO 12 С * ЕСЛИ ALPHA < 0 - МИНИМУМ, С * ИНАЧЕ К СЛЕДУЮЩЕМУ ШАГУ 0047 IF(ALPHA.LE.0.0) GOTO 14 0048 CALL PTICR1(X,P,X,N,ALPHA) 0049 K=K+1 0050 AN1=AN 0051 GOTO 11 0052 12 ALPHA=ALM С * ПЕРЕШЛИ 8 НОВУЮ ТОЧКУ НА ГРАНИЦЕ 0053 CALL PTICR1(X,P,X,N,ALPHA) С * ВКЛЮЧИЛИ НОВОЕ ОГРАНИЧЕНИЕ 8 МАСКУ 0054 MASK(NP)=1 0055 М=М+1 0056 IED=0 0057 GOTO 16 0058 14 IED=1 0059 GOTO 16 0060 17 CONTINUE ¦0061 IED=2 0062 16 CONTINUE 0063 RETURN 0064 END 0001 SUBROUTINE PTILR7CX,C,N,GR,D) С * ПОДПРОГРАММА ВЫЧИСЛЕНИЯ ГРАДИЕНТА С * ЛИНЕЙНОГО ФУНКЦИОНАЛА 0002 IMPLICIT REAL*8(A-H,0-Z) 0003 REAL*8 X,C,GR,D,R 0004 INTEGER N,I,J 0005 DIMENSION С(N,N),X(N),GR(N),D(N) С * GR:=2LX+D 0006 DO 1 .1 = 1, N 0007 R=0.0 0008 DO 2 J=1,N 0009 R=R+(C(I,J)+C(J,I))*X(J) 0010 2 CONTINUE 0011 GR(I)=R+D(I) 0012 1 CONTINUE 199
Й013 0014 RETURN END 0001 0002 0003 0004 0005 0006 0007 0003 0009 0010 0011 0012 0013 0014 0015 0016 0017 0018 0019 0020 0021 0022 0023 0024 0025 0026 0027 002B 0029 0030 0031 0032 0033 0034 0035 0036 0037 003B 0039 0040 0041 0042 0043 С С С с с с с с * * * * * * * * SUBROUTINE PTILR4(AJ,P,PI,M,N,NN) ПОДПРОГРАММА ФОРМИРОВАНИЯ ПРОЕКТОРА IMPLICIT REAL*8(A-H.O-Z) , REAL*B AJ,P,PI,R INTEGER M.N.NN,I,J,K,L DIMENSION AJ(NN,N) ,P(NN,N) ,PI ( 1) EXTERNAL PTILR0,PTICR2 IF(M.EQ.0) GOTO 1 PI :=AJ*AJ¦ DO 2 1=1,M DO 2 J=l,I R=0.0 DO 3 K=1,N R = R+AJ ( I ,K) *AJ ( J ,,<) 3 CONTINUE L=M*(I-l)+J PI(L)=R L=M*(J-1)+I PI(L)=R 2 CONTINUE PI:=INV(PI) CALL PTILR0(PI,M) P:=-PI*AJ 00 4 1=1,M DO 4 J=1,N R=0.0 DO 5 K=1,M L=M*(I-l)+K R=R+PI(L)*AJ(K,J) 5 CONTINUE P(I,J)=-R 4 CONTINUE PI:=AJ'*P 00 6 1=1,N DO 6 J=l,I R=0.0 DO 7 K=1,M R=R+AJ(K,I)*P(K,J) 7 CONTINUE L=N*( I-D+J PI(L)=R L=N*(J-1)+I PI(L)=R 6 CONTINUE GOTO 10 1 CONTINUE ЕСЛИ НЕТ АКТИВНЫХ ОГРАНИЧЕНИЙ, ТО PI:=0, P:=0 CALL PTICR2(PI,0.0,N*N) CALL PTICR2(P,0.0,N*NN) PI :=E+PI 0044 004 5 0046 0047 0048 0049 10 9 DO 9 1=1,N L=N*(I-l)+I PI(L)=PI(L)+l.0 CONTINUE RETURN END 0001 0002 0003 0004 0005 0006 0007 0008 0009 0010 W011 0012 0013 0014 00:. 5 0001 0002 0003 0004 0005 0006 0007 0008 0009 0010 0011 0012 0013 И014 1/1015 «016 И017 И018 SUBROUTINE PTILR3(AJ,A,N,NN,MASK) С * ПОДПРОГРАММА ФОРМИРОВАНИЯ С * АКТИВНЫХ ОГРАНИЧЕНИЙ ПО МАСКЕ IMPLICIT REAL*8(A-H.O-Z) REALMS AJ,A INTEGER N,NN,MASK,K,I,J DIMENSION AJ(NN,N),A(NN,N),MASK(NN) K = 0 DO 1 1=1,NN IF(MASK(I).EQ.0) GOTO 1 K=K + 1 DO 2 J=1,N AJ(K,J)=A(I,J) 2 CONTINUE 1 CONTINUE RETURN END SUBROUTINE PTILR6(A,X,P,MASK, *GR,N,M,NN,C,D,IED) С * ПОДПРОГРАММА ВЫБРОСА ОГРАНИЧЕНИЙ С * IED - КОД ОТВЕТА: С * 0-НИЧЕГО НЕЛЬЗЯ 8Ы6РОСИТЬ, С * 1-ЧТО-ТО ВЫБРОСИЛИ IMPLICIT REAL*8(A-H,0-Z) REAL*8 A,X,P,GR,C,D,AL,R INTEGER MASK,N,M,NN,K,I,J,NNN,IED OIMENSION P(NN,N),GR(N),MASK(NN) DIMENSION A(NN,N),X(N),C(N,N),D(N) EXTERNAL PTILR7 CALL PTILR7(X,С,N,GR,D) K=0 IED=0 AL=1.0 DO 1 1=1,NN IF(MASK(I).EQ.0) GOTO 1 С * ДЛЯ АКТИ8НЫХ ОГРАНИЧЕНИЙ СЧИТАЕМ С * ТЕНЕВОЙ ПАРАМЕТР К=К+1 R=0.0 DO 2 J=1,N R=R+P(K,J)*GR(J) 2 CONTINUE С * ИЩЕМ МИНИМАЛЬНЫЙ ТЕНЕ8ОЙ ПАРАМЕТР IF (R.GE.AL) GOTO 1 200 A.H. Тихонов 201
C02 002 0 1 0022 002 002 002 002 002 002 4 b 7 8 0B01 0002 0003 0004 0005 0006 0007 000B 0009 0010 0011 0012 0013 0014 0015 0016 0017 001В 0019 0020 0021 0022 0023 2 2 AL=R NNN=1 1 CONTINUE С * ЕСЛИ ОН > 0,TQ ВСЕ, С * ИНАЧЕ ВЫБРАСЫВАЕМ NNN-E ОГРАНИЧЕНИЕ IF (AL.GE.0.2) GOTO 3 MASK(NNN)=0 IED=1 M=M-1 3 RETURN END SUBROUTINE PTILR1(MN,M,MASK,AO.AJ,A,P, *U,PI ,B,GR,W,P1,WORK, I CM, 1С I ,С , X ,D.N.NN, *R,DEL,DGR,IEND) С * ДИСПЕТЧЕР МЕТОДА С * WORK=.TRUE.- РАБОТА С ЗАДАННОЙ МАТРИЦЕЙ А С * ICI - СЧЕТЧИК БОЛЬШИХ ЦИКЛОВ С * ICM - ОГРАНИЧИТЕЛЬ ЧИСЛА БОЛЬШИХ ЦИКЛОВ IMPLICIT REAL*B(A-H,O-Z) REAL*8 AQ.AJ,A,P,U,PI,B,6R,W, *P1,C,D,X,R.DEL,DGR INTEGER MN,M,MASK,N,NN,I END, *I,ICI,ICM,IED DIMENSION A(NN,N) ,MASK(NN) ,AJ(NN,N) , *P(NN,N),PI(N,N),B(NN),GR(N),W(MN), *P1(N),C(N,N),X(N),D(N),AQ(MN,N),U(MN) LOGICAL WORK EXTERNAL PTICI2,PTICR3,PTICR5, *PTILR3.PTILR4,PTILR5.PTILR6 CALL PTICI2(MASK,0,NN> С * M - ЧИСЛО АКТИВНЫХ ОГРАНИЧЕНИЙ M=0 ENTRY PTILR2 С * НАЧИНАЕМ ИТЕРАЦИИ БОЛЬШОГО ЦИКЛА 1С1=0 2 CONTINUE IFUCI .EQ.ICM! GOTO 12 ICI=ICI+1 IF(.NOT.WORK) GOTO 101 С * ВЫЧИСЛЯЕМ НЕВЯЗКУ - Rl, И ЕСЛИ ОНА < DEL, С * ТО ВЫХОДИМ CALL PTICR3(AQ,X,W,N,MN) CALL PTICR5(W,U,MN,R1) 101 CONTINUE IF(R1.LE.DEL) GOTO 9 С * ГОТОВИМ ОГРАНИЧЕНИЯ ПО МАСКЕ CALL PTILR3(AJ,A,N,NN,MASK) С * ГОТОВИМ ПРОЕКТОР CALL PTILR4(AJ,P,PI,M,N,NN) С * МИНИМИЗИРУЕМ НА ГРАНИ CALL PTILR5(A,AJ,B,MASK,N,M,NN,GR, *PI,W,P1,C,X,D,K,IED,06R) IF4 IED.EQ.0) GOTO 2 DGR, TO ВЫХОДИМ С * ЕСЛИ НОРМА ГРАДИЕНТА < 0024 IFUED.EG.2) GOTO 11 С * ПРОВЕРЯЕМ ОГРАНИЧЕНИЯ С * НА ВОЗМОЖНОСТЬ ВЫБРОСА И ИСКЛЮЧАЕМ 0025 CALL PTILR6(A,X,P,MASK, *GR,N,M,NN,C,D,IED) С * ЕСЛИ ЧТО-ТО ВЫБРОСИЛИ, С * ТО ПРОДОЛЖАЕМ, ИНАЧЕ ВЫХОД 0026 IF(IED.EG.l) GOTO 2 С * НОРМАЛЬНОЕ ОКОНЧАНИЕ. ТОЧНЫЙ МИНИМУМ 0027 IEND=0 0028 GOTO 10 0029 9 CONTINUE С * НОРМАЛЬНОЕ ОКОНЧАНИЕ. ВЫХОД ПО НЕЗЯЗКЕ 0030 IEND=1 0031 GOTO 10 0032 12 CONTINUE С * ВЫХОД ПО ЧИСЛУ ИТЕРАЦИЙ 0033 IEND=3 0034 GOTO 10 0035 11 CONTINUE С * ВЫХОД ПО НОРМЕ ГРАДИЕНТА 0036 IEND=2 0037 10 CONTINUE 0038 IF(.NOT.WORK)GOTO 102 С ¦ ВЫЧИСЛЯЕМ ЗНАЧЕНИЕ ФУНКЦИОНАЛА НЕВЯЗКИ С * ДЛЯ ВЫДАЧИ 0039 CALL PTICR3(AD,X,W,N,MN) 0040 CALL PTICR5(W,U,MN,R) 0041 102 CONTINUE 0042 RETURN 0043 END 0001 0002 0003 0004 0005 0006 0007 0008 0009 0010 0011 0012 0013 0014 0015 0016 0017 С С С 6 С * * * * SUBROUTINE PTILRAtAD,U,С,D,N,MN) ПРИВЕДЕНИЕ ФУНКЦИОНАЛА НЕВЯЗКИ К D 5 L ВИДУ (C*X,X)+(D,X)+E IMPLICIT REAL*8(A-H,O-Z) REAL*B AQ,U,C,D,R INTEGER N,MN,I,J,K DIMENSION AQ(MN,N) ,U(MN),C(N,N) ,D(N) :=-2A'*U 00 6 1=1,N R=0.0 DO 5 J=1,MN R=R+AQ(J,I)*U(J) CONTINUE D(I)=-2.0*R CONTINUE :=A'*A DO 7 i=l,N DO 7 J=l,I R=0.0 DO 8 K=1,MN R=R+AQ(К,I)*AQ(К,J) 203
\.W 1 II ИИ IV 0020 0021 0022 0023 8 7 CONTINUE C(I,J)=R C(J,I)=R CONTINUE RETURN END 0001 SUBROUTINE PTILRB( A , 8 , N , NN , ITASK.C, IERR). С * ПРОГРАММА ФОРМИРОВАНИЯ МАТРИЦЫ ОГРАНИЧЕНИЙ 0002 IMPLICIT REAL*B(A-H,O-Z) 0003 REAL*B А,В,С 0004 INTEGER N,NN,I TASK,IERR,L,I 0005 DIMENSION A(NN,N),В(NN) 0006 EXTERNAL PTICR2 С * ЗАДАН НЕСУЩЕСТВЫЮЩИй ТИП ОГРАНИЧЕНИЙ 0007 IERR=99 0008 IF(ITASK.GT.3.0R.ITASK.LT.l) GOTO 777 С * НА МОНОТОННЫХ ФУНКЦИЯХ С * КОНСТАНТА ОГРАНИЧЕНИЯ 0 0009 IERR=9B 0010 IF(ITASK.EQ.1.AND.С.EQ.0.0) GOTO 777 0011 IERR=0 С * ЗАНУЛЯЕМ МАТРИЦУ 0012 CALL PTICR2(A,0.0,N*NN) 0013 L=N-1 С * ПЕРЕКЛЮЧАТЕЛЬ 0014 GOTO A,2,3),I TASK 0015 1 CONTINUE С * НА МОНОТОННЫХ ФУНКЦИЯХ 0016 DO 11 1=1,N 0017 A(I,I)=1.0 001B A(I+l,I)=-1.0 0019 B(I+1)=0.0 0020 11 CONTINUE 0021 BA)=C 0022 60T0 777 0023 2 CONTINUE С ¦ НА ВЫПУКЛЫХ ФУНКЦИЯХ 0024 DO 12 1=2,L 0025 A(I,I)=-2.0 0026 A(I,I-1)=1.0 0027 A(I,I+1)=1.0 002B B(I)=0.0' 0029 12 CONTINUE 0030 A(l,l)=-1.0 0031 A(N,N)=-1.0 0032 BA)=0.0 0033 B(N)=0.0 0034 GOTO 777 0035 3 CONTINUE С * НА МОНОТОННЫХ ВЫПУКЛЫХ ФУНКЦИЯХ 0036 DO 13 1=2, L 0037 A(I,I)=~2.0 003B A(I,I-1)=1.0 204 0039 0040 0041 0042 0043 0044 0045 0046 0047 004B 0049 A( I , I + l) = 1.0 B(I)=0.0 13 CONTINUE A(l,l)=-1.0 A(l,2)=1.0 A(N,N)=-1.0 BA)=0.0 B(N)=0.0 777 CONTINUE RETURN END 0001 SUBROUTINE PTILR0(A,N) С * ОБРАЩЕНИЕ СИММЕТРИЧНОЙ ПОЛОЖИТЕЛЬНОЙ С * МАТРИЦЫ A(N,N) ПОРЯДКА N. РЕЗУЛЬТАТ С * ПОМЕЩАЕТСЯ НА МЕСТО ИСХОДНОЙ МАТРИЦЫ. С * МАТРИЦА А ДОЛЖНА ИМЕТЬ N+1 СТОЛБЦОВ С * ( A(N,N+1) ), ПОСЛЕДНИЙ ИЗ КОТОРЫХ С * ИСПОЛЬЗУЕТСЯ КАК РАБОЧИЙ МАССИВ. С * ДОСТАТОЧНО ЗАДАВАТЬ ЛИШЬ ЭЛЕМЕНТЫ С * ПОД ДИАГОНАЛЬЮ МАТРИЦЫ С * А(I.J), ГДЕ I>=J 0002 IMPLICIT REAL*B(A-H.O-Z} 0003 REAL*B A,X,Y,Z 0004 INTEGER I,I1,I2,I3,J,J1,J2,J4,K,K1 0005 DIMENSION A(N,1) 0006 DO 1 1=1,N 0007 11=1+1 000B DO 1 J=I,N 0009 J1=J+1 0010 X=A(J,I) 0011 12=1-1 0012 IF(I2.LT.1)GOTO 2 0013 DO 3 Kl=l,12 0014 K=I-K1 0015 X=X-A(K,J1)*A(K,I1) 0016 3 CONTINUE 0017 2 CONTINUE 001B IF(J.NE.I) GOTO 4 0019 Y=1./DSQRT(X) 0020 A(I,11)=Y 0021 GOTO 1 0022 4 A(I,J1)=X*Y 0023 1 CONTINUE 0024 DO 5 I=1,N 0025 13=1+1 0026 IF(I3.GT.N)G0T0 5 0027 DO 6 J=I3.N 002B Z=0. 0029 J1=J+1 0030 J2=J-1 0031 DO 7 K1=I,J2 0032 K=J-1-K1+I 0033 7 Z=Z-A(K,Jl)*A(I,K+1) 205
0034 0035 0036 0037 0038 0039 0040 0041 0042 0043 0044 0045 0046 0047 0048 0049 0050 0051 0052 6 5 9 8 11 A(I,Jl)=Z*A(J , Jl} CONTINUE .CONTINUE DO 8 I=1,N DO 8 J=I,N Z=0. J1=N+1 J4=J+1 DO 9 K=J4,J1 Z=Z+A(J,K)*A(I,K) A( I,J + 1)=Z CONTINUE DO 11 1=1,N DO 11 J=I,N A(J,I)=A(I,J+1) A(I,J)=A(I,J+1) CONTINUE RETURN ENO VIII. Программа решения интегральных уравиений Фредгольма 1-го рода на множествах монотонных и (или) выпуклых фуикций. Метод проекций сопряженных градиентов на миожество векторов с неотрицательными координатами 0001 SUBROUTINE PTISR(AK,U0,X1,Х2,Yl,Y2,N,M, *Z,AN2,ITER.DL,IMAX,1С, *R,NR,IERR) 0002 IMPLICIT REAL*B(A~H,O-Z) РЕШЕНИЕ ИНТЕГРАЛЬНОГО УРАВНЕНИЯ ФРЕДГОЛЬМА ПЕРВОГО РОДА МЕТОДОМ ПРОЕКЦИИ СОПРЯЖЕННЫХ ГРАДИЕНТОВ ДИСПЕТЧЕР МЕТОДА АК - ПОДПРОГРАММА-ФУНКЦИЯ ВЫЧИСЛЕНИЯ ЯДРА ТАБЛИЦА СООТВЕТСТВИЯ С * С * С * С * С * С * С * С * С * С * С * с * с * с * с * 0003 0004 0005 0006' 0007 000В 0009 206 С * С * С * ИМЯ ДЛИНА СОДЕРЖАНИЕ A: N*M МАТРИЦА ОПЕРАТОРА Н: N НАПРАВЛЕНИЕ СПУСКА G: N ГРАДИЕНТ U: М ЗНАЧЕНИЕ ОПЕРАТОРА U1: М РАБОЧИЙ МАССИВ S: N РАБОЧИЙ МАССИВ NR=N*M+3N+2M REAL*B U0,Z,R,AK REAL*B XI,X2,Y1,Y2,DL,AN2 INTEGER IMAX,IC.NR,ITER,IERR.N.M INTEGER NA,NH,NG,NU,NU1,NS,NMAX,ICONT DIMENSION U0(M),Z(N),R(NR) EXTERNAL PTICR0,PTICRl, *PTISR1,PTISR2,PTISR3 . ICONT=0 ICONT - ПРИЗНАК РАБОТЫ С ПРОДОЛЖЕНИЕМ ICONT=0 НАЧАЛО РАБОТЫ ICONT=1 ВХОД ДЛЯ ПРОДОЛЖЕНИЯ 0010 100 CONTINUE С * ФОРМИРОВАНИЕ НАЧАЛА МАССИВОВ C011 NA=1 0012 NH=N*M+1 0013 N6=NH+N 0014 NU=NG+N 0015 NU1=NU+M 0016 NS=NU1+M 0017 NMAX=NS+N 001B IF(NMAX-1.GT.NRN0T0 64 0019 IF( ICONT.EQ.-l N0T0 101 С * ФОРМИРОВАНИЕ МАТРИЦЫ ОПЕРАТОРА 0020 CALL PTICR0(AK,R(NA),X1,Х2,Yl,Y2,N,M) С * ПЕРЕХОДИМ В ПИ-ПЛЮС 0021 CALL PTISR2(R(NA),Z,N,M,IC,R(NS)) 0022 CALL PTICRl(Z,Z,R(NH),N,0.) 0023 101 CONTINUE С * МИНИМИЗАЦИЯ НЕВЯЗКИ 0024 CALL PTISRKR(NA) ,R(NH) ,U0,N,M, ITER, *DL*(M-1.)/(Y2-Y1),0.,IMAX,AN2,0.,0., ¦Z,R(NU),R(NU1),R(NH),R(NG),R(NS),IERR) 0025 AN2=AN2*(Y2-Y1)/(M-l.) С * ВОЗВРАТ ИЗ ПИ-ПЛЮС 0026 CALL PTICR1(Z,Z,R(NH),N,0.) 0027 CALL PTISR3(Z,N,IC,R(NS)) 002B GOTO 999 0029 ENTRY PTISRE С * ВХОД ДЛЯ ПРОДОЛЖЕНИЯ МИНИМИЗАЦИИ 0030 ICONT=1 0031 64 CONTINUE С * НЕ ХВАТАЕТ ДЛИНЫ РАБОЧЕГО МАССИВА 0032 IERR=64 0033 GOTO 999 0034 999 CONTINUE 0035 RETURN 0036 END 0001 SUBROUTINE PTISRKA,Z0,U0,N,M,ITER.DL2, *ANGRD,IMAX,AN2,ALF,RO, *Z,U,U1,H,G,IPLUS,IERR) С * МИНИМИЗАЦИЯ ФУНКЦИОНАЛА ТИХОНОВА С * МЕТОДОМ ПРОЕКЦИИ СОПРЯЖЕННЫХ ГРАДИЕНТОВ С * В ПЕРВОМ КВАДРАНТЕ 0002 IMPLICIT REAL*B(A-H,O-Z) 0003 INTEGER N,M,IMAX,IERR 0004 INTEGER IPLUS,ITERBN,IDIM,IDIMO,I PRIM 0005 INTEGER IEND,ITER,JCH,ICH,IED 0006 REAL*B DL2,ANGRD,AN2,ALF.RO 0007 REAL*B U0,Z0,Z,U,A,H,U1,G,AL,BT 0008 REAL*B AS2,AS20,ANGRI,ANGRIO.ALMAX 0009 DIMENSION U0(M),Z0(N),Z(N),U(M), *A(M,N),H(N),U1(M),G(N),IPLUS(N) 0010 EXTERNAL PTICRl,PTICI2,PTICR3 0011 EXTERNAL PTICR4,PTICR5,PTICR6 207
0012 EXTERNAL РТICR7,PTICRB,PTICR9 0013 ITERBN=0 0014 IEND=0 0015 ITER=0 0016 JCH=-1 0017- CALL PTICR1(Z0,Z0,Z,N,0.) 001B CALL PTICR3(A,Z,U,N,M) 0019 CALL PTICR5(U,U0,M,AN2) 0020 CALL PTICR9(AS20,AN2,Z,N,ALF.RO) 0021 CALL PTICR4F,U,U0,A,N,M). 0022 CALL PTICR8(G,Z,N,ALF,RO) 0023 CALL PTICR2(H,0.,N) С * НАЧАЛО ИТЕРАЦИЙ 0024 14 CONTINUE 0025 ITER=ITER+1 0026 13 ICH=0 С * ICH - ПРИЗНАК ИЗМЕНЕНИЯ МНОЖЕСТВА С * АКТИВН. ОГР. НА ПРЕДЫДУЩЕМ ШАГЕ С * 1СН=0 - НЕ ИЗМЕНИЛОСЬ 0027 IF(JCH) 1,2,3 0028 1 CALL PTICI2(IPLUS,1,N) С * IPLUS(I)=0 - 1-ОЕ ОГРАНИЧЕНИЕ АКТИВНО С * IPLUS(I)=1 - 1-ОЕ ОГРАНИЧЕНИЕ НЕ АКТИВНО 0029 DO 4 1=1.N 0030 IF(Z(I).GT.0..OR.G(I).LT..0)GOTO 5 0031 IPLUS(I)=0 0032 Z(I)=0. 0033 5 CONTINUE 0034 4 CONTINUE С * МНОЖЕСТВО АКТ. ОГРАНИЧЕНИЙ СФОРМИРОВАНО 0035 IDIM=0 0036 DO 15 1=1,N 0037 15 IDIM=IDIM+IPLUS(I) С * IDIM - РАЗМЕРНОСТЬ ТЕКУЩЕЙ ГРАНИ 0038 1СН=1 0039 GOTO 2 0040 3 CONTINUE С * ДОБАВЛЯЕМ НОВОЕ АКТИ8Н0Е ОГРАНИЧЕНИЕ 0041 IPLUS(IPRIM)=0 0042 Z(IPRIM)=0 0043 6 ICH=1 0044 IDIM=IDIM-1 0045 2 CONTINUE 0046 CALL PTICR7(G,G,IPLUS,N,ANGRI) 0047 ITERBN=ITERBN+1 С * ITERBN - СЧЕТЧИК ИТЕРАЦИЙ НА ГРАНИ 0048 IF(ICH.EQ.l)ITERBN=1 0049 IF(ANGRI.6T.AN6RD,ANO.ITERBN.NE.IOIM+1. .ANO.IEND.NE.DGOTO 7 0050 IF( IEND.EQ. LAND. IDIM.EQ. IDIMO)GOTO 99 С * IEND=1 - ИДЕТ ПРОВЕРКА ДОСТИЖЕНИЯ С * ТОЧНОГО МИНИМУМА 0051 IEND=1-IENO 0052 IDIMO=IDIM 0053 IF(IEND.EQ.0NOTO 7 0054 JCH=-1 208 0055 GOTO В 0056 7 CONTINUE С * ФОРМИРОВАНИЕ НАПРАВЛЕНИЯ СПУСКА - Н 0057 ВТ=0. 0058 IF(ICH.EQ.0)BT=ANGRI/ANGRIO С * ЗАПОМИНАЕМ НОРМУ ПРОЕКЦИИ ГРАДИЕНТА 0059 ANGRIO=ANGRI 0060 DO 9 I=1,N 0061 9 H(I)=(BT*H(I)+G(I))*IPLUS(I) С * НАПРАВЛЕНИЕ СПУСКА СФОРМИРОВАНО С * ****** ВНИМАНИЕ? МАШИННАЯ КОНСТАНТА 0062 ALMAX=1.E1B 0063 IPRIM=0 0064 00 10 1=1,N 0065 IF(H(I).LE..0)GOTO 11 0066 AL=Z(I)/H(I) 0067 IF(ALMAX.LT.AL)GOTO 12 0068 ALMAX=AL 0069 IPRIM=I 0070 12 CONTINUE 0071 11 CONTINUE 0072 10 CONTINUE С * НАШЛИ МАКСИМАЛЬНО ВОЗМОЖНЫЙ ШАГ ALMAX С * IPRIM - НОМЕР НОВОГО С * ВОЗМОЖНОГО АКТИ8Н0Г0 ОГРАНИЧЕНИЯ 0073 CALL PTICROtA,Z,G,U1,H, «ALMAX,AL,N,M,ALF,RO,IED) 0074 CALL PTICR1(Z,H,Z,N,-AL) 0075 CALL PTICR3(A,Z,U,N,M) 0076 CALL PTICR4(G,U,U0,A,N,M) 0077 CALL PTICR8F,Z,N,ALF,RO) 0078 CALL PTICR7(G,G,IPLUS,N,ANGRI) 0079 CALL PTICR5(U,U0,M,AN2) 0080 CALL PTICR9(AS2,AN2,Z,N,ALF,RO) 0081 JCH=0 00B2 IF(IEO.EQ.1)JCH=1 С * IED=1 - ВЫШЛИ НА НОВОЕ ОГРАНИЧЕНИЕ 0083 IF(IED.EQ.2)G0T0 22 00B4 IF(AN2.LE.DL2;0R.ITER.GE.IMAX)GOTO 20 00B5 . IF(AS2.GE.AS20)G0T0 21 00B6 AS20=AS2 0087 GOTO 14 0088 20 CONTINUE С * ВЫХОД ПО НЕВЯЗКЕ ИЛИ ЧИСЛУ ИТЕРАЦИЙ 0089 IERR=1 0090 GOTO 999 0091 99 CONTINUE С * НАШЛИ ТОЧНЫЙ МИНИМУМ. С * НОРМАЛЬНОЕ ОКОНЧАНИЕ 0092 IERR=0 0093 GOTO 999 0094 В CONTINUE С ¦ ВОЗВРАЩАЕМСЯ НА НАЧАЛО С * ДЛЯ ПРОВЕРКИ ТОЧНОГО МИНИМУМА 0095 GOTO 13 0096 21 CONTINUE 209
0097 009В 0099 0100 0101 C102 0103 0104 22 С * С * 999 IERR=2 GOTO 999 CONTINUE ШАГ ОТРИЦАТЕЛЕН . ОШИБКА ЗНАКООПРЕДЕЛЕННОСТИ IERR=65 GOTO 999 CONTINUE RETURN END 0001 0002 0003 00C4 0005 0006 0007 000B 0009 0C10 0011 0012 0013 0014 0015 0016 0017 0018 0019 0020 0021 0022 0023 0024 0025 0026 0027 002B 0029 210 С С SUBROUTINE PTISR2(A,Z,N,M,IC,S) * ПРЕОБРАЗОВАНИЕ МАТРИЦЫ ОПЕРАТОРА A(M,N) * И НАЧАЛЬНОГО ПРИБЛИЖЕНИЯ Z С * ПРИ ПЕРЕХОДЕ В ПЕРВЫЙ КВАДРАНТ С * S(N) - РАБОЧИЙ С * 1С - МНОЖЕСТВО КОРРЕКТНОСТИ IMPLICIT REAL*8(A-H.O-Z) REAL*B A.Z.S.T INTEGER N, M , 1С , IC1 , N1 , I , J , К DIMENSION A(M,N),Z(N),S(N) EXTERNAL PTICR1,PTISR4 IC1=IA8S(IC)+1 N1=N-1 GOTO (B00,801,602,803,604,805),IC1 800 CONTINUE С * НЕОТРИЦАТЕЛЬНЫЕ ФУНКЦИИ. С * НИЧЕГО ДЕЛАТЬ НЕ НАДО GOTO 999 С * ПРЕОБРАЗОВАНИЕ НАЧАЛЬНОГО ПРИБЛИЖЕНИЯ - Z 801 CONTINUE С * МОНОТОННЫЕ, 1С=1 DO 101 1=2,N S(I-1)=Z(I-l)-Z(I) S(N)=Z(N) GOTO 799 CONTINUE С * МОНОТОННО УБЫВАЮЩИЕ,ВЫПУКЛЫЕ ВВЕРХ 1С=2 DO 102 1=2, N1 102 S(I)=(I-N)*(ZA-1)-2.*Z(I)+ZA+1)) S(N)=Z(N) SA)=(ZA)-ZB))*(N-1 GOTO 799 B03 CONTINUE С * ВЫПУКЛЫЕ ВВЕРХ 1С=3 DO 103 I=2,N1 103 S(I)=(ZA-1)-2.*Z(I)+ 101 B02 ) S(N)=Z(N) SA)=ZA) GOTO 799 B04 CONTINUE С * МОНОТОННО УБЫВАЮЩИЕ,ВЫПУКЛЫЕ ВНИЗ 1С=4 0030 0031 0032 C033 0034 0035 0036 0037 003 В 0039 0040 0041 0042 0043 0044 0045 0046 0047 0048 0049 0050 0051 0C52 0053 0054 0055 C001 0002 00C3 0004 0005 0006 0007 000В 0C09 C01C 0011 0012 0013 0014 DO 104 1=2,N1 . 104 S(I-l)=(Z(I-l)-2.*Z(I)+Z(I+l))*(I-0.) S(N1)=(Z(N1)-Z(N))*(N-1.) S(N)=Z(N) GOTO 799 B05 CONTINUE С * ВЫПУКЛЫЕ ВНИЗ.ПОЛОЖ. НА КРАЯХ 1С=5 DO 105 1=2,N1 1C5 S( I ) = (Z( I-1)-2.*Z( I ) + + Z( 1 + 1) ) *'(N-I ) «( 1-1. )/(N-l . ) S(N)=Z(N) SA)=ZA) GOTO 799 799 CONTINUE CALL PTICR1(S,S,Z,N,0.) С * С НАЧАЛЬНЫМ ПРИБЛИЖЕНИЕМ КОНЧЕНО? С * ПЕРЕФОРМИРОВЫВАЕМ МАТРИЦУ А DO I K=1,M С * ЗАНУЛЯЕМ МАССИВ S CALL PTICR2(S,0.,N) DO 2 J=1.N DO 3 1=1,N С * ВЫЧИСЛЯЕМ ЭЛЕМЕНТ МАТРИЦЫ ПЕРЕХОДА T=PTISR4(I,J,IC,N) 3 S(J)=S(J)+A(K,I)*T 2 CONTINUE С * ПРЕОБРАЗОВАЛИ К-УЮ СТРОКУ МАТРИЦЫ А. С * ПЕРЕСЫЛАЕМ 4 1 999 DO 4 J=1,N A(K,J)=S(J) CONTINUE CONTINUE RETURN END FUNCTION PTISR4(I,J,IC,N) С * ВЫЧИСЛЕНИЕ ЭЛЕМЕНТОВ МАТРИЦЫ ПЕРЕХОДА С * ИЗ ПИ-ПЛЮС В КОМПАКТ, С * ОПРЕДЕЛЯЕМЫЙ ПАРАМЕТРОМ 1С IMPLICIT REAL*B(A-H,O-Z) REAL*B PTISR4.H INTEGER I,J,IC,IC1 IC1=IABS(IC)+1 GOTO (B00,B01,B02,B03,B04,B05),IC1 800 CONTINUE С * НЕОТРИЦ. - ТОЖДЕСТВ. ПРЕОБРАЗОВАНИЕ H=0. IF(I.EQ.J)H=1 . 60T0 99B 801 CONTINUE С * МОНОТОННО УБЫВАЮЩИЕ - IC=1 H=0. IF(I.LE.J)H=1. GOTO 998 211
0015 0016 0017 И01В 0019 0020 0021 0022 0023 0024 0025 0026 0027 002В 0029 0030 0031 0032 0033 0034 0035 0036 0001 0002 0003 0004 0005 0006 0007 000В 0009 0010 0011 0012 0013 0014 0015 802 CONTINUE С * МОНОТОННО УБЫВАЮЩИЕ.ВЫПУКЛЫЕ ВВЕРХ 1С=2 Н=1. IF(I.GT.J)H=(N-I)/(N-J+0.) 60Т0 99В 803 CONTINUE С * ВЫПУКЛЫЕ ВВЕРХ 1С=3 IF(I.LE.J.AND.J.NE.1)H=(I-l.)/(J-l.) IF(I.6E.J.AND.J.NE.N)H=(N-I)/(N-J+0.) GOTO 99B 804 CONTINUE С * МОНОТОННО УБЫВАЮЩИЕ,ВЫПУКЛЫЕ ВНИЗ 1С=4 Н=0. IF(I.LE.J.AND.J.NE.N)H=(J-I+1.)/(J+0.) IF(J.EQ.N)H=1. 60Т0 998 805 CONTINUE С * ВЫПУКЛЫЕ ВНИЗ,ПОЛОЖИТЕЛЬНЫЕ НА КРАЯХ 1С=5 IF(I.LE.J.AND.J.NE.1)H=(I-1.)/(J-l.) IF(I.6E.J.AND.J.NE.N)H=(N-I)/(N-J+0.) IF(J.NE.1.AND.J.NE.N)H=-H 60T0 998 ?9B CONTINUE PTISR4=H RETURN ENO SUBROUTINE PTISR3(Z,N,IC,Y) С * ПЕРЕХОД ИЗ ПИ-ПЛЮС В ПРОСТРАНСТВО, С * ОПРЕДЕЛЯЕМОЕ 1С IMPLICIT REAL*B(A-H,O-Z) REAL*8 Z,Y,S INTEGER N,IC,I,J DIMENSION Z(N),Y(N) EXTERNAL PTISR4,PTICR1 DO 1 1=1,N S=0. DO 2 J=1,N 2 S=S+Z(J)*PTISR4(I,J,IC,N) Y(I)=S 1 CONTINUE CALL PTICR1(У,У,Z,N,0.) RETURN END DC. Общие программы 00G1 0002 SUBROUTINE PTICRe(AK,A,Xl,X2, Yl, V2,N,r",> IMPLICIT REAL*B(A-H,O-Z) С * СВЕДЕНИЕ ИНТЕГРАЛЬНОГО УРАВНЕНИЯ С » К ЛИНЕЙНОЙ СИСТЕМЕ С * AK(X,Y) - ПОДПРОГРАММА-ФУНКЦИЯ С * ВЫЧИСЛЕНИЯ ЯДРА УРАВНЕНИЯ С * XI,Х2 - ПРЕДЕЛЫ ИНТЕГРИРОВАНИЯ 212 С * Y1.Y2 - П^ЕД€ЛЬ ИЗМЕНЕНИЯ ПЕРЕМЕННОЙ f С » N.M - ЧИСЛО ТОЧЕК ИНТЕГРИРОВАНИЯ С * И ИЗМЕНЕНИЯ Y С » A(M,N) - ФОРМИРУЕМАЯ МАТРИЦА С * ИНТЕГРИРОВАНИЕ ПРОИЗВОДИТСЯ С * ПО ВТОРОЙ ПЕРЕМЕННОЙ АК(X,У) 0003 REAL*B H.X1,Х2,У1,У2,Х,У,АК,А,PTICR0 0004 INTEGER I.J.N.M 0005 DIMENSION A(M,N) 0006 H=(X2-X1)/(N-l.) 0007 DO 1 1=1,N 0008 X=X1+(X2-X1)/(N-1.)*(I-l.) 0009 DO 2 J=1,M 0010 Y=Y1+(Y2-Y1)/(M-l. )*(J-l. ) 0011 A(J,I)=AK(X,Y)*H 0012 IF(I.EQ.l.OR.I.EQ.N)A(J,I)=A(J,I)/2. 0013 2 CONTINUE 0014 1 CONTINUE 0015 RETURN 0016 END 0001 SU8RDUTINE PTICRO(A,Z,e,U,H,ALM,AL,N,M, »ALF,RO,IED) С * ОДНОМЕРНАЯ МИНИМИЗАЦИЯ С * СГЛАЖИВАЮЩЕГО ФУНКЦИОНАЛА С * НА ЛУЧЕ Z-AL*H AL>0 С * A(M,N) - МАТРИЦА ОПЕРАТОРА С * Z(N) - НАЧАЛЬНАЯ ТОЧКА С * 3(N) - ГРнДИЕНТ В ТОЧКЕ Z С * H(N) - НАПРАВЛЕНИЕ СптСКА С * ALM - ОГРАНИЧЕНИЕ НА ШАГ AL<ALM С * U(M) - РАБОЧИЙ МАССИВ С * AL - НАЙДЕННЫЙ ШАГ С * ALF - ПАРАМЕТР РЕГУЛЯРИЗАЦИИ С * RO - ВЕС РАЗНОСТНОЙ ПРОИЗВОДНОЙ С * В НОРМЕ W21 С * IED - КОД ОТВЕТА: С * 0 - НОРМ., 1- РАБОТАЕТ ОГРАНИЧЕНИЕ, С * 2 - ШАГ ОТРИЦАТЕЛЬНЫЙ С * 3 - ДОЛЖНО ПРОИЗОЙТИ ДЕЛЕНИЕ НА НОЛЬ 0002 IMPLICIT REAL*B(A-H,O-Z) 0003 REAL*B A,Z,G,U,H,PTICRO 0004 REAL*B ALM,AL,S,GH,AH2,H2,ALF,R0 0005 INTEGER I.N.M.IED 0006 DIMENSION A(M,N),Z(N),G(N),U(M),H(N) 0007 EXTERNAL PTICR6.PTICR3 00OQ H2»0. 0029 CALL PTICR6(G,H,N,GH) 0010 IF(SH.LT.0.)SOTO 2 B011 CALL PTICR3(A,H,U,N,M) 3012 CALL PTICR6(U,U,M,AH2) B013 IF(ALF.EO.0.)GOTO 3 С * ПАРАМЕТР РЕГУЛЯРИЗАЦИИ НЕ РАВЕН НУЛЮ 0014 DO 4 1=2.N 213
иг 15 0016 0017 0018 0019 002И 0021 0022 0023 0024 0025 0026 0027 0028 0029 0030 0031 0032 0033 0034 0035 0036 0037 4 3 1 С « 2 С * 998 С * 999 Н2=Н2+(Н(I)-H(I-l))»*2*P0+H(I)**2 Н2=Н2*НA )»*2 CONTINUE IF(AH2+H2*ALF.EO.0.0)SQTO 998 AL=GH/(AH2+H2*ALF)*.5 IF(AL.GC.ALM)GOTO 1 IED=0 GOTO 999 CONTINUE РАБОТАЕТ ОГРАНИЧЕНИЕ НА ШАГ AL=ALM IED=1 GOTO 999 CONTINUE ШАГ ОТРИИАТЕЛ?Н ИЛИ Н>ЛЬ. ЗАНУЛЯЕМ ЕГО ~> AL=0. IED=2 G0T0*999 CONTINUE ДЕЛЕНИЕ НА НОЛЬ.ПОЛАГАЕМ ШАГ РАВНЫМ НУЛЮ IED=3 AL=0. БОТО 999 CONTINUE RETURN END 0001 SUBROUTINE PTICRt(В,С,A,N,P) С * ПЕРЕСЫЛКА МАССИВОВ С * A(I):=B(I)+P*C(I), 1=1,N 0002 0003 0004 0005 0006 0007 0008 0009 0001 0002 0003 0004 0005 • 0006 0007 0008 0009 1 С * С * 1 IMPLICIT REAL*B(A-H,O-7) REAL*3 A,B,C,P,PTICR1 INTEGER I,N DIMENSION A(N),8(N),C(N) DO 1 1=1,N A(I )=B(I)+P*Ct I ) RETURN END SUBROUTINE PTICR2(A,R,N) ЗАСЫЛКА ВЕЩЕСТВЕНОГО ЧИСЛА R 8 МАССИВ А ДЛИНОЙ N IMPLICIT PEAL*B(A-H.O-Z) REAL*B A,R,PTICR2 INTEGER N,I DIMENSION A(N) 00 1 1=1,N ft(I)=R RETURN END 0001 0002 0003 0004 0005 0006 0007 0008 С * С * 1 SUBROUTINE PTICI2(A,R,N) ЗАСЫЛКА ЦЕЛОГО ЧИСЛА R В МАССИВ А ДЛИНОЙ N REAL*B PTICI2 INTEGER N,I,R,A DIMENSION A(N) DO 1 1=1,N A(I)=R RETURN ENO 0001 SUBROUTINE PTICR3(A,Z,U,N,M) С * УМНОЖЕНИЕ МАТРИЦЫ fl(M,N) Hft ВЕКТОР Z(N) С * U(M) - ВЕКТОР РЕЗУЛЬТАТ 0002 IMPLICIT REflL*B(A-H,O-Z) 0003 REAL*B U,A,Z,S,PTICR3 0Й04 INTEGER I,J,N,M 0005 DIMENSION U(M),A(M,N),Z(N) 0006 DO 1 1=1,M 0007 S=0. 0008 DO 2 J=1,N 0009 2 S=S+A(I,J)*Z(J) 0010 1 U(I)=S 0011 RETURN 0012 END 0001 SUBROUTINE PTICR4(e,U,U0,A,N,M) С * ВЫЧИЛЕНИЕ ГРАДИЕНТА НОРМЫ flZ-U0 с * u=fl*z значение оператора на точке z С * G(N) - РЕЗУЛЬТАТ 0002 IMPLICIT REAL*B(A-H,O-Z) 0003 REAL*8 G,U,U0,fl,S,PTICR4 0004 INTEGER I,J,N,M 0005 DIMENSION G(N),U(M),U0(M),fl(M,N) 0006 DO 1 J=1,N 0007 S=0. 000B DO 2 1=1,M 0009 2 S=S+A(I,J)*(U(I)-U0(I)) 0010 1 G(J)=S*2. 0011 RETURN 0012 END 0001 SUBROUTINE PTICR5(A,B,N,S) С * ВЫЧИСЛЕНИЕ НЕВЯЗКИ С * S - РЕЗУЛЬТАТ 0002 IMPLICIT REAL*8(A-H,0-Z) 0003 REAL*8 A,B,PTICR5 0004 REAL*8 S 0005 INTEGER I,N 0006 DIMENSION A(N),B(N) 0007 S=0. 215
0008 0009 0010 0011 0001 0002 0003 0004 0005 0006 0007 0008 0009 0010 0001 0002 0003 0004 0005 0006 0007 0008 0009 0010 DO 1 1=1,N S=S+(A(I)-8(I) )**2 RETURN END • ¦ SUBROUTINE PTICR6(A,B,N,S) С * ВЫЧИСЛЕНИЕ СКАЛЯРНОГО ПРОИЗВЕДЕНИЯ А С * S - РЕЗУЛЬТАТ IMPLICIT REAL*B(A-H,O-Z) REAL*B A,B,S,PTICR6 INTEGER I,N DIMENSION A(N),B(N) S=0. DO 1 1=1,N 1 S=S+A(I)*B(I) RETURN END SUBROUTINE PTICR7(A,B,C,N,S) С * ВЗВЕШЕННОЕ СКАЛЯРНОЕ ПРОИЗВЕДЕНИЕ С * С ВЕСАМИ С(I) С * ВЕКТОРОВ АИВ ДЛИНОЙ N, С * S - РЕЗУЛЬТАТ IMPLICIT REAL*B(A-H,O-Z) REAL*B S,A,B,PTICR7 INTEGER I,N,C DIMENSION A(N),B(N),C(N) S=0. DO 1 1=1,N 1 S=S+A(I)*B(I)*C( I ) RETURN END И В 0001 SUBROUTINE PTICRBtG,Z,N,ALF,RO) С * ВЫЧИСЛЕНИЕ ГРАДИЕНТА СТАБИЛИЗАТОРА С * С ВЕСОМ RO С * И ДОБАВЛЕНИЕ ЕГО К G(N) С * Z(N) - ТОЧКА С ¦ ALF - ПАРАМЕТР РЕГУЛЯРИЗАЦИИ 0002 IMPLICIT REAL*8(A-H,0-Z) 0003 REAL*B ALF,Z,G,RO,PTICRB 0004 INTEGER I,N 0005 DIMENSION Z(M),G(N) 0006 IF(ALF.EQ.0.)GOTO 999 0007 DO 1 I=1,N 000B Q(I)=G(I)+2.*ALF*Z(I) 0009 IF( I .NE. LAND. I .NE.N)G( I )=G( I ) + *2.*ALF*B.*Z(I)-Z(I-l)-Z(I+l))*RO 0010 IF(I.EQ.l) + G(I)=G(I)+2.*ALF*(ZA)-ZB))*RO 216 0011 0012 0013 0014 0015 1 999 IF(I.EQ.N) + GU )=G( I)+2.*ALF*(Z(N)-Z(N-1 CONTINUE CONTINUE RETURN END )*RO 0001 SUBROUTINE PTICR9(AS2,AN2,Z,N,ALF,RO) С * ВЫЧИСЛЕНИЕ СТАБИЛИЗАТОРА С * И ДОБАВЛЕНИЕ ЕГО К AN2 С * Z(N) - ТОЧКА С * ALF - ПАРАМЕТР РЕГУЛЯРИЗАЦИИ С * RO - ВЕС РАЗНОСТНОЙ ПРОИЗВОДНОЙ С * В НОРМЕ W21 С * AS2 - РЕЗУЛЬТАТ 0002 IMPLICIT REAL*8(H,0-Z) 0003 INTEGER N 0004 REAL*8 AN2,AS2,ALF,Z(N),S,R0,PTICR9 0005 S=0. 0006 IF(ALF.EQ.0.)GOTO 999 0007 DO 4 I=2,N 000B 4 S=S+(Z(I)-ZA-1))**2*R0+Z(I)**2 0009 S=S+ZA)**2 0010 999 CONTINUE 0011 AS2=AN2+S*ALF 0012 RETURN 0013 END 217
СПИСОК ЛИТЕРАТУРЫ \.Алифанов О.М., Артюхин Е.А., Румянцев СВ. Экстремальные методы решения некорректных задач. -- М.: Наука, 1988. 2.Антонюк В.А., Pay Э.И., Савин Д.О. и др. Восстановление пространственного распределения двумерных микроиолей методами реконструктивной вычисли- вычислительной томографии // Изв. АН СССР- Сер. физ. - 1987. - Т. 51, № 3. - С. 475- 479. З.Арсснин В.Я., Иванов В.В. О решении некоторых интегральных уравнений 1-го рода типа свертки методом регуляризации // ЖВМиМФ. - 1968. - Т. 8, № 2. - С 310-321. 4. Арушанян О.Б. Дисциплина программирования на стандарте языка ФОРТРАН // Вопросы конструирования библиотек программ. •- М.: Изд-во МГУ, 1980. - С 3-18. 5. Баев А.В. О выборе параметра регуляризации для операторов, заданных с по- погрешностью / МГУ. - М.. 1976. - Доп. в ВИНИТИ. №493-76. 6. Баев А.В. О решении одной обратной задачи сейсмики: - Дис. ... канд. физ.-мат. наук. - М.. 1977. - 165 с. 7. Баев А.В. О построении нормального решения нелинейных некорректных задач методом регуляризации // ЖВМиМФ. - 1979. - Т. 19, № 3. - С. 594-600. 8. Бакушинский А.Б. Об одном численном методе решения интегральных уравне- уравнений Фредгольма 1-го рода // ЖВМиМФ. - 1965. - Т. 5. № 4. - С. 744-749. 9. Бакушинский А.Б. Один общий прием построения регуляризирующих алгорит- алгоритмов для линейного некорректного уравнения в гильбертовом пространстве // ЖВМиМФ. - 1967. - Т. 7, № 3. - С 672-676. 10. Бакушинский А.Б. К распространению принципа невязки // ЖВМиМФ. - 1970. - Т. 10, № 1. - С. 210-213. 11. Бакушинский А.Б. Регуляризирующис алгоритмы дчя решения некорректных экстремальных задач // Методы управления большими системами. — Иркутск: Изд-во ИГУ, 1970. - Т. 1. - С. 223-235. 12. Бакушинский А.Б. Замечания об одном классе регуляризирующих алгорит- алгоритмов // ЖВМиМФ. - 1973. - Т. 13, № 6. - С. 1596-1598. 13. Бакушинский А.Б. К обоснованию принципа невязки // Дифференциальные и интегральные уравнения. - Иркутск: Изд-во ИГУ, 1973. - С 117-126. 14. Бакушинский А.Б. Регуляризирующий алгоритм на основе метода Ньютона — Канторовича для решения вариационных неравенств //ЖВМиМФ. - 1976. - Т. 16, №6. -С 1397-1404. 15. Бакушинский А.Б. Методы решения монотонных вариационных неравенств, основанные на принципе итеративной регуляризации // ЖВМиМФ. - 1977. - Т. 17, №6. -С. 1350-1362. 16. Бакушинский А.Б., Гончарский А.В. Итерационные методы решения некоррект- некорректных задач. - М.: Наука, 1988. 17. Бахвалов Н.С. Численные методы. - М.: Наука, 1975. 18. Бисноватый-Коган Г.С, Гончарский А.В., Комберг Б.В. и др. Оптические харак- характеристики аккреционного диска в системе Геркулеса (Геркулес X-I) // Астрон. журн. - 1977. - Т. 54, №2. - С. 241-253. 19. Богданов М.Б. Нахождение распределения яркости по диску звезды из анализа 218 фотометрических наблюдений ее покрытий Луной // Астрон. журн. - 1978. — Т. 55, №3. - С. 490-495. 20. Богданов М.Б. Распределение яркости но диску углеродной звезды ТХ Рыб. полученное из анализа фотометрических наблюдений ее покрытий Луной // Астрон. журн. - 1979. - Т. 56, № 5. - С. 1023-1029. 21. Богданов М.Б. О нахождении функции источника по наблюдению потемнения на краю звезды // Астрон. журн. - 1980. - Т. 57, № 2. - С. 296-301. 22. Богданов М.Б. Применение метода регуляризации к анализу наблюдений покры- покрытий Луной тесных двойных звезд и радиоисточников // Астрон. журн. - 1980. — Т. 57, №4. - С. 762-766. 23. Бохнер С. Лекции об интегралах Фурье. - М.: Физматгиз, 1962. 24. Будак Б.М., Беркович Е.М. Об аппроксимации экстремальных задач. 1 // ЖВМиМФ. - 1971. - Т. 11,№3. - С. 580-596. 25. Будак Б.М., Беркович Е.М. Об аппроксимации экстремальных задач. 2 // ЖВМиМФ. - 1971. - Т. 11, №4. - С. 870-884. 26. Будак Б.М., Беркович Е.М., Гапоненко Ю.Л. О построении сильно сходящейся минимизирующей последовательности для непрерывного выпуклого функциона- функционала // ЖВМиМФ. - 1969. - Т. 9, № 2. - С 286-299. П. Будак Б.М., Васильев Ф.П. Приближенные методы решения задач оптимального управления. Вып. 2. - М.: ВЦ МГУ, 1969. 28. Будак Б.М., Виньоли А., Гапоненко Ю.Л. Об одном способе регуляризации для непрерывного выпуклого функционала // ЖВМиМФ. - 1969. - Т. 9, № 5. - С. 1046-1056. 29. Вайнберг М.М. Функциональный анализ. - М.: Просвещение, 1979. 30. Вайникко Г.М, Оценки погрешности метода последовательных приближений для некорректных задач // АиТ. - 1980. - № 3. - С. 84-92. 31. Вайникко Г.М., Веретенников А.Ю. Итерационные процедуры в некорретных задачах. - М.: Наука, 1986. 32. Васильев Ф.П. Численные методы решения экстремальных задач. - М.: Наука, 1980. 33. Васильев Ф.П. Методы решения экстремальных задач. - М.: Наука, 1981. 34. Васин В.В., Татана В.П. Приближенное решение операторных уравнений первого рода // Матем.'зап. Уральского ун-та. - 1968. - Т. 6. тетр. 2. - С. 27-37. 35. Венцель Э.С., Кобылинский В.Г., Левин A.M. Применение метода регуляризации для численного решения задачи изгиба тонких упругих пластинок // ЖВМиМФ. - 1984. - Т. 24, №2. -С. 323-328. 36. Винокуров В.А. О погрешности решения линейных операторных уравнений // ЖВМиМФ. - 1970. - Т. 10, №4.-С. 830-839. 37. Винокуров В.А. Обшие свойства погрешности приближенного решения линейных функциональных уравнений // ЖВМиМФ. - 1971. - Т. И, № 1. - С. 22-28. 38. Винокуров В.А. Два замечания о выборе параметра регуляризации // ЖВМиМФ. - 1972. - Т. 12, № 2. - С. 481-483. 39. Винокуров В.А. О порядке погрешности вычисления функции с приближенно заданным аргументом //ЖВМиМФ. - 1973. - Т. 13, № 5. - С. 1112 -1123. 40. Воеводин В.В. Численные методы линейной алгебры. - М.: Наука, 1966. 41. Воеводин В.В. О методе регуляризации//ЖВМиМФ. - 1969. - Т. 9, № 3. - С. 671-673. 42. Гапоненко Ю.Л. Метод последовательной аппроксимации для решения нелиней- нелинейных экстремальных задач // Изв. вузов. Математика. — 1980. — № 5. — С. 12—16. 43. Численные методы условной оптимизации / Под ред. Ф. Гилла, У Мюррея. — М.: * Мир, 1977. 44. Гилязов С.Ф. Об устойчивости решений линейных операторных уравнений 1-го рода методом наискорейшего спуска // Вестн. МГУ. Сер. 15. - 1980, № 3. - С. 26-32. 45. Гилязов С.Ф. Методы решения линейных некорректных задач. - М.: Изд-во МГУ, 1987. 46. Гласко В.Б., Гущин Г.В., Старостенко В.И. Метод регуляризации Тихонова при решении систем нелинейных уравнений // ДАН УССР. Сер. Б. — 1975, № 3. - С. 203-206. 47. Гласко В.Б., Гущин Г.В., Старостенко В.И. О применении метода регуляризации 219
Л.И. Тихонова к решению нелинейных систем уравнений // ЖВМнМФ. - 1976. - Т. 16, №2. - С. 283-292. 48. Гольдман Н.Л. Приближенное решение интегрального уравнения Фредгольма 1-го рода в классе кусочно-выпуклых функций с ограниченной первой производ- производной // Численный анализ на Фортране. Методы и алгоритмы. - М.: МГУ, 1978. - С. 30-40. 49. Гончарский А.В. Численные методы решения некорректных задач на компакт- компактных множествах // Всесоюз. конф. по некорректно поставленным задачам. - Фрунзе, 1979. -47 с. 50. Гончарский А.В. Обратные задачи оптики // Вестн. МГУ. Сер. 15. - 1986, № 3. - С. 59-77. 51. Гончарский А.В. Некорректные задачи и методы их решения // Некорректные за- задачи естествознания. - М.:. МГУ, 1987. 52. Гончарский А.В. Математические модели в задачах синтеза плоских оптических элементов // Компьютерная оптика. Вып. 1. - М.: МЦНТИ, 1987. 53. Гончарский А.В., Гущин Г.В., Ягола А.Г. Об одном численном эксперименте по решению двумерных интегральных уравнений Фредгольма 1-го рода // Некоторые вопросы автоматизированной обработки интерпретации физических эксперимен- экспериментов. Вып. 1. - М.: МГУ, 1973. - С. 192-201. 54. Гончарский А.В., Гущина Л.Г., Леонов А.С. и др. О некоторых алгоритмах отыскания приближенного решения некорректных задач на множестве монотон- монотонных функций // ЖВМиМФ. - 1972. - Т. 12, № 2. - С. 283-297. 55. Гончарский А.В., Колпаков А.В., Степанов А.А. Обратные задачи вычислительной диагностики нарушенных поверхностных слоев кристаллов по рентгендифрак- ционным данным // Поверхность. - 1986. - № 12. - С. 67-71. 56. Гончарский А.В., Леонов А.В., Ягола А.Г. О решении двумерных уравнений Фредгольма 1-го рода с ядром, зависящим от разности аргументов // ЖВМиМФ. — 1971.-Т. 11, № 5. - М 1296-1301. 57. Гончарский А.В., Леонов А. С, Ягола А.Г. Некоторое обобщение принципа для случая оператора, заданного с ошибкой // ДАН СССР. - 1972. - Т. 203, № 6. - С. 1238-1239. 58. Гончарский А.В., Леонов А.С, Ягола А.Г. Об одном регуляризирующем алго- алгоритме для некорректно поставленных задач с приближенно заданным операто- оператором //ЖВМиМФ. - 1972. - Т. 12, №6. - С. 1592-1594. 59. Гончарский А.В., Леонов А-С, Ягола А.Г. Обобщенный принцип невязки // ЖВМиМФ. - 1973. - Т. 13, № 2. - С. 294-302. 60. Гончарский А.В., Леонов А.С, Ягола А.Г. Методы решения интегральных уравне- уравнений Фредгольма 1-го рода типа свертки // Некоторые вопросы автоматизирован- автоматизированной обработки и интерпретации физических экспериментов. Вып. 1. - М.: МГУ, 1973. - С. 170-191. 61. Гончарский А.В., Леонов А.С, Ягола А.Г. Конечно-разностная аппроксимация линейных некорректных задач // ЖВМиМФ. - 1974. - Т. 14, № 1. - С. 15-24. 62. Гончарский А.В., Леонов А.С., Ягола А.Г. О принципе невязки при решении не- нелинейных некорректных задач // ДАН СССР. - 1974. - Т. 214, № 3. - С. 499-500. 63. Гончарский А.В., Леонов А.С, Ягола А.Г. О решении некорректно поставленных задач с приближенно заданным оператором // Тр. Всесоюз. школы молодых уче- ученых "Методы решения некорректных задач и их применение". - М.: МГУ, 1974. - С. 39-43. 64. Гончарский А.В., Леонов А.С, Ягола А.Г. О применимости принципа невязки в случае нелинейных некорректных задач и о новом регуляризирующем алгоритме их решения // ЖВМиМФ. - 1975. - Т. 15, № 2. - С. 290-297. 65. Гончарский А.В., Степанов В.В. Алгоритмы приближенного решения некорректно поставленных задач на некоторых компактных множествах // ДАН СССР. - 197 9. - Т. 245, №6. - С. 1296-1299. 66. Гончарский А.В., Степанов В.В. О равномерном приближении решения с ограни- ограниченной вариацией некорректных задач // ДАН СССР. - 197 9. - Т. 248, № 1. - С. 20-22. 67. Гончарский А.В., Степанов В.В. Численные методы решения некорректно постав- поставленных задач на компактных множествах // Вестн. МГУ. Сер. 15. - 1980. - № 3. - С. 12-18. 220 68. Гончарский А.В., Степанов В.В. Обратные задачи когерентной оптики. Фокуси- Фокусировка в линию // ЖВМиМФ. - 1986. - Т. 26, № 1. - С. 80-91. 69. Гончарский А.В., Тивков СМ., Хромов Г.С, Ягола А.Г. Исследование простран- пространственной структуры планетарной туманности методом математического моде- моделирования // Письма в Астрон. журн. - 1979. - Т. 5, № 8. - С. 406-410. 70. Гончарский А.В., Черепащук A.M., Ягола А.Г. Применение метода регуляризации для решения обратных задач астрофизики // Тр. Всесоюз. школы молодых уче- ученых "Методы решения некорректных задач и их применение". - М.: МГУ, 1974. - С. 21-24. 71. Гончарский А.В., Черепащук A.M., Ягола А.Г. Численные методы решения обрат- обратных задач астрофизики. - М.: Наука, 1978. 72. Гончарский А.В., Черепащук A.M., Ягола А.Г. Физические характеристики звезд Вольфа-Райе и рентгеновских источников в тесных двойных системах // Всесоюз. конф. по некорректно поставленным задачам. Тез. докл. - Фрунзе, 1979. - С 48. 73. Гончарский А.В., Черепащук A.M., Ягола А.Г. Некорректные задачи астрофизи- астрофизики. - М.: Наука, 1985. - 352 с. 74. Гон-шрскцй АВ., Ягола А.Г. О равномерном приближении монотонного решения некорректных задач//ДАН СССР. - 1969. - Т. 184, №4. - С. 771-773. IS. Гончарский А.В., Ягола А.Г. О решении интегральных уравнений вида Ь { K(x,s)dg(s) =и (х) //ДАН СССР. - 1970. - Т. 193, №2. -С. 266-267. а 76. Демьянов В.Ф., Рубинов A.M. Приближенные методы решения экстремальных задач. - Л.: ЛГУ, 1968. 77. Долгополова Т.Ф., Иванов В.К. О численном дифференцировании // ЖВМиМФ. - 1966. - Т. 6, № 3. - С. 570-575. 78. Домбровская И.Н. Об уравнениях Первого рода с замкнутым оператором // Изв. вузов. Математика. - 1967. - №6. - С. 39-72. 79.Домбровская И.Н., Иванов В.К. К теории некорректных линейных уравнений в абстрактных пространствах ,// Сиб. мат. журн. - 1965. - Т. 6, № 3, - С- 499- 508. 80. Емелин И.В., Красносельский М.А. Правило остановки в итерационных процеду- процедурах решения некорректных задач // АиТ. - 1978, № 12. - С. 59-63. 81. Емелин И.В., Красносельский М.А. К теории некорректных задач // ДАН СССР. - 1979. - Т. 244, №4. - С. 805-808. 82. Заикин П.Н. О численном решении обратной задачи операционного исчисления в действительной области//ЖВМиМФ. - 1968. - Т. 8, №2. -С. 411-415. S3. Иванов В.К. Теорема единственности обратной задачи логарифмического потен- потенциала для звездных множеств // Изв. вузов. Математика. - 1958. - № 3. - С. 9- 106. 84. Иванов В.К. Об устойчивости обратной задачи логарифмического потенциала для звездных множеств // Изв. вузов. Математика. - 1958. - № 4. - С. 96-99. 85. Иванов В.К. Интегральные уравнения первого рода и приближенное решение обратной задачи потенциала // ДАН СССР. - 1962. - Т. 142, № 5. - С. 997-1000. 86. Иванов В.К. О линейных некорректных задачах // ДАН СССР. - 1962. - Т. 145, №2. -С. 270-272. Ю.Иванов В.К. О некорректно поставленных задачах // Мат. сб. - 1963. - Т. 61, №2. - С. 211-223. 88. Иванов В.К. О приближенном решении операторных уравнений первого рода // ЖВМиМФ. - 1966. - Т. 6, №6. -С 1089-1094. 89. Иванов В.К. Некорректные задачи в топологических Пространствах // Сиб. мат. журн. - 1969. - Т. 10, № 5. - С 1065-1074. 90. Иванов В.К., Васин ВВ., Татана В.П. Теория линейных некорректных задач и ее приложения. - М.: Наука, 1978. 91. Ильин В.А., Позняк Э.Г. Основы математического анализа. Ч. 1. - М.: Наука, 1982. 92. Иосида К. функциональный анализ, - М.: Мир, 1967. 93. Карманов В.Г. Математическое программирование. - М.: Наука, 1986. 221
94. Каспарои К.Н., Леонов А.С. О фотоэмиссионном методе измерения спектров и новом способе их математической обработки//Журн. прикл спектроскопии - 1975.-Т. 22, №3. -С 491-498. 95. Колмогоров А.Н., Фомин СВ. Элементы теории функций и функционального анализа. - М. Наука, 1989. 96. Коротаев А.Л., Кузнецов П.И., Леонов А.С., Родоман В.Г. Об определении опти- оптимального режима введения антибактериального препарата // АиТ - 1986 - №1.- С. 100-106. 91. Кочиков И.В., Курамшина Г.М., Понтин Ю.А., Ягола А.Г. Регуляризующий алго- алгоритм решения обратной колебательной задачи // ДАН СССР. - 1981 - Т 261 №5. - С. 1104-1106. 98. Кочикое И.В., Курамшина Г.М., Понтин Ю.А., Ягола AS. Расчет силовых полей многоатомных молекул методом регуляризации Тихонова // ДАН СССР- - 1985. - Т. 283, №4. - С. 850-854. 99. Кочиков И.В., Курамшина Г.М., Ягола А.Г. Устойчивые численные методы реше- решения некоторых обратных задач колебательной спектроскопии // ЖВМиМФ - 1987. - Т. 27, № 11. - С 350-357. 100. Кочиков И.В., Матвиенко А.Н., Ягола А.Г. Об одной модификации обобщенного принципа невязки //ЖВМиМФ. - 1983. - Т. 23, №6. -С. 1298-1303. 101. Кочиков КВ., Матвиенко А.Н., Ягола А.Г. Обобщенный принцип невязки для ре- решения несовместных уравнений // ЖВМиМФ. - 1984. - Т. 24, № 7. - С 1087- 1090. 102. Кочиков И.В., Матвиенко А.Н., Ягола А.Г. Метод регуляризации для решения несовместных нелинейных уравнений // ЖВМиМФ. - 1987. - Т. 27, № 3 - С 456- 458. 103. Кочиков И.В., Русое В.Д., Семенов М.Ю., Ягола А.Г. - Усиление слабых изображе- изображений в авторадиографическом эксперименте // Интегральные уравнения в приклад- прикладном моделировании. Гл. 1. - Киев: Изд-во Киев, ун-та, 1983. - С. 166- 167. 104. Лаврентьев М.М. О задаче Коши для уравнения Лапласа // Изв. АН СССР - 1956.-Т. 20.-С. 819-842. 105. Лаврентьев М.М. К вопросу об обратной задаче теории потенциала // ДАН СССР - 1956. - Т. 106, № 3. - С. 389 - 390. 106. Лаврентьев М.М. О задаче Коши для линейных эллиптических уравнений второ- второго порядка//ДАН СССР. - 1957. - Т. 112, №2. -С. 195 - 197. 107. Лаврентьев М.М. Об интегральных уравнениях первого рода // ДАН СССР. - 1959. - Т. 127, № 1. - С. 31 - 33. 108. Лаврентьев М.М. О некоторых некорректных задачах математической физики. - Новосибирск: СО АН СССР, 1962. 109. Лаврентьев М.М., Романов В.Г., Шишатский СП. Некорректные задачи математи- математической физики и анализа. - М.: Наука, 1980. 110. Левин A.M. О регуляризации вычисления нижних граней функционалов // ЖВМиМФ. - 1984. Т. 24, №8.- С. 1123 - 1128. 1\1.Левин А.М. О вычислении меры несовместности операторных уравнений 1-го рода//ЖВМиМФ. - 1986. -Т. 26, № 4. -С. 499 - 507. 112. Леонов А.С. О построении устойчивых разностных схем решения нелинейных краевых задач // ДАН СССР. - 1975. - Т. 224, № 3. - С. 525 - 528. 113. Леонов А.С. Об устойчивом решении обратной задачи гравиметрии на классе выпуклых тел // Изв. АН СССР. Физика Земли. - 1976. - № 7.- С. 55 - 65. 114. Леонов А.С. Об алгоритмах приближенного решения нелинейных некорректных задач с приближенно заданным оператором // ДАН СССР. - 1979 - Т 245 № 2 - С. '300 - 304. 115. Леонов А.С. О выборе параметра регуляризации для нелинейных некорректных задач с приближенно заданным оператором // ЖВМиМФ. - 1979. - Т. 19, № 6 - С. 1363 - 1376. 116. Леонов А.С. О связи метода обобщенной невязки и обобщенного принципа невяз- невязки для нелинейных некорректных задач // ЖВМиМФ. - 1982. - Т. 22, № 4 - С. 783 - 790. 1П.Леонов А.С. О некоторых алгоритмах решения некорректных экстремальных задач//Мат. сб. - 1986. - Т. 129A71), №2. - С. 218 - 231. 222 118.Леонов А.С, Сулейманова М.С. Способ обработки результатов динамических радионуклидных исследований на основе методов решения некорректных задач // Мед. радиология. - 1985. - № 12. - С. 60 - 63. 119. Лисковец О.А. Регуляризация уравнений с замкнутым линейным оператором // ДАН БССР. - 1971. -Т. 15, № 6. -С. 481 - 483. 120. Лисковец О.А. Оптимальные свойства принципа сглаживающего функционала // ДАН СССР. - 1977. - Т. 234, №2. -С. 298 - 301. 121. Лисковец О.А. Проекционный способ реализации метода невязки нелинейных уравнений первого рода с возмущенным оператором // Дифф. уравнения. - 1980. - Т. 16, № 4. - С. 723 - 731. 122. Лисковец О.А. Вариационные методы решения неустойчивых задач. - Минск: Наука и техника, 1981. 12Ъ.Люстерник Л.А., Соболев В.И. Элементы функционального анализа. - М.: Наука, 1965. 124. Мартынов Д.Я., Гончарский А.В., Черепащук A.M., Ягола А.Г. Применение метода регуляризации к решению обратных задач астрофизики // Проблемы математи- математической физики и вычислительной математики. М.: Наука, 1971. - С. 205- 218. 125. Марчук Г.И. Методы вычислительной математики. - М.: Наука, 1989. 126.Мергелян С.Н. Гармоническая аппроксимация и приближенное решение задачи Коши для уравнения Лапласа // УМН. - 1956. - Т. 11, вып. 5. - С. 3 - 26. 127. Морозов В.А. О решении функциональных уравнений методом регуляризации // ДАН СССР. - 1966. - Т. 167, № 3. - С. 510 - 512. 1 28. Морозов В.А. О регуляризации некорректно поставленных задач и выборе пара- параметра регуляризации//ЖВМиМФ. - 1966.- Т. 6,№ 1.-С. 170-175. 129. Морозов В.А. О регуляризирующих семействах операторов // Вычислительные методы и программирование. Вып. 8. - М.: МГУ, 1967. — С. 63 — 93. 130. Морозов В.А. О выборе параметра при решении функциональных уравнений ме- методом регуляризации // ДАН СССР. 1967. - Т. 175, № 6. - С. 1225 - 1228. 131. Морозов В.А. О принципе невязки при решении операторных уравнений методом регуляризации // ЖВМиМФ. - 1968. - Т. 8, № 2. С. 295 - 309. 132. Морозов В.А. О регуляризации некоторых классов экстремальных задач // Вы- Вычислительные методы и программирование. Вып. 12. - М.: МГУ, 1969. - С. 24 - 37. 133. Морозов В.А. О задаче дифференцирования и некоторых алгоритмах приближе- приближения экспериментальной информации // Вычислительные методы и программиро- программирование. Вып. 14. - М.: МГУ, 1970. - С. 45 - 62. 134. Морозов В.А. Об одном новом подходе к решению линейных уравнений 1-го рода с приближенным оператором // Тр. I конф. молодых ученых факультета ВМиК МГУ. - М.: МГУ, 1973. - С. 22 - 28. 135 Морозов В.А. О принципе невязки при решении несовместных уравнений мето- методом регуляризации А.Н. Тихонова // ЖВМиМФ. - 1973. - Т. 13, № 5. - С. 1099- 1111. 136. Морозов В.А., Гордонова В.И. Численные алгоритмы выбора параметра в методе регуляризации // ЖВМиМФ. - 1973. - Т. 13, № 3. С. 539 - 545. 137. Морозов В.А. О вычислении нижних граней функционалов по приближенной ин- информации//ЖВМиМФ. - 1973. -Т. 13,№4. -С. 1045 - 1048. . 138. Морозов В.А. Регулярные методы решения некорректных задач. - М.: Наука, 1987. 139. Морозов В.А. О принципе оптимальности невязки при приближенном решении уравнений с нелинейными операторами // ЖВМиМФ. - 1974. - Т. 14, № 4. - С. 819-827. 140. Морозов В.А. Регулярные методы решения нелинейных операторных уравне- уравнений // Изв. вузов. Математика. - 1978. - Т. 11. - С. 74 - 86. 141. Морозов В.А., Гольдман Н.Л., Самарин М.К. Метод дескриптивной регуляриза- регуляризации и качество приближений // Инж.-физ. журн. - 1977. — Т. 33, № 6. — С. 1117 — 1124. 142. Морозов В.А., Кирсанова Н.Н., Сысоев А.Ф. Комплекс алгоритмов быстрого преобразования Фурье для дискретных рядов // Численный анализ на Фортра- Фортране. М.: МГУ, 1976. 223
143. Перельман А.Я., Лунина В.А. Применение свертки Меллина к решению интеграль- интегральных уравнений 1-го рода с ядром, зависящим от произведения // ЖВМиМФ. - 1969. - Т. 9, № 3. - С. 626 - 646. 144. Полак Э. Численные методы оптимизации. - М.: Мир, 1974. 145. Поляк Б.Т. Методы минимизации при наличии ограничений // Итоги науки и тех- техники. Мат. анализ. Т. 12. - М.: ВИНИТИ, 1974. 146. Пшеничный Б.Н., Данилин ЮМ. Численные методы в экстремальных задачах. - М.: Наука, 1975. 147. Рапопорт ИМ. О плоской обратной задаче теории потенциала // ДАН СССР. — 1940. - Т. 28. - С. 305 - 307. 148. Рапопорт ИМ. Об устойчивости в обратной задаче теории потенциала // ДАН СССР. - 1941. - Т. 31. - С. 303 - 305. 149. Самарин М.К. Об устойчивости решения некоторых некорректных задач на мно- множествах специальной структуры: Дис.. .. канд. физ.-мат. наук. - М.. 1979. 150. Самарин М.К. Среднеквадратичная аппроксимация кусочно-монотонными функ- функциями // Численный анализ на фортране. Вып. 15. - М.: МГУ, 1976. - С. 83-90. 151. Самарский А.А. Теория разностных схем. - М.: Наука, 1989. 152. Саульев В.К., Самойлов И.И. Приближенные методы безусловной оптимизации функций многих переменных // Итоги науки и техники. Мат. анализ. - М.: ВИНИТИ, 1973.-Т. 11. - С. 91-128. 153. Соболев СМ. Некоторые применения функционального анализа в математичес- математической физике. - Л.: ЛГУ, 1950. 154. Старостенко В.И. Устойчивые численные методы в задачах гравиметрии. - Киев: Наук, думка, 1978. 155. Степанов В.В. Численное решение некорректно поставленных задач на множествах кусочно-монотонных и выпуклых функций // Вестн. МГУ. Сер. 15. - 1985, № 3. - С. 21-26. 156. Страхов В.Н. О решении некорректных задач магнито- и гравиметрии, представ- представляемых интегральными уравнениями типа свертки. 1 // Изв. АН СССР. Физика Земли. - 1967, №4. -С- 36-54. 157. Страхов В.Н. О решении некорректных задач магнито- и гравиметрии, представ- представляемых интегральными уравнениями типа свертки. 2 // Изв. АН СССР. Физика Земли.- 1967, №5. -С. 33-53. 158. Страхов В.Н. О численном решении некорректных задач, представляемых инте'1- ральными уравнениями типа свертки // ДАН СССР. - 1968. - Т. 178, № 2. - С. 299-302. 159. Сыщиков Ю.Н., Вилков Л.В., Ягола А.Г. Метод определения потенциальных функ- функций внутреннего вращения по электроиографическим данным // Вестн. МГУ. Химия.- 1983.- Т. 24, №6.-С. 541-543. 160- Танана В.П. Некорректно поставленные задачи и геометрия банаховых прост- пространств // ДАН СССР. - 1970. - Т. 193, № 1. - С. 43-45. 161. Танана В.П. Приближенное решение операторных уравнений первого рода и гео- геометрические свойства банаховых пространств // Изв. вузов. Математика. - 1971, №7.-С 81-93. 162. Танана В.П. Об одном проекционно-итеративном алгоритме для операторных уравнений первого рода с возмущенным оператором // ДАН СССР. - 1975. - Т. 224, №5.-С. 1028-1029. 163. Танана В.П. Методы решения операторных уравнений. М.: Наука, 1981. 164. Тихонов А.Н. Об устойчивости обратных задач // ДАН СССР. - 1943. - Т. 39, №5. -С- 195-198. 165. Тихонов А.Н. О решении некорректно поставленных задач и о методе регуля- регуляризации // ДАН СССР. - 1963.- Т. 151,№3.-С.501-504. 166. Тихонов А.Н. О регуляризации некорректно поставленных задач // ДАН СССР. - 1963.-Т. 153,№ 1. - С.49-52. 167. Тихонов А.Н. О решении нелинейных интегральных уравнений первого рода // ДАН СССР. - 1964. - Т. 156, №6. -С. 1296-1299. 168. Тихонов А.Н. О нелинейных уравнениях первого рода // ДАН СССР. - 1965. - Т. 161,№5.- С 1023-1026. 169. Тихонов А.Н. Об устойчивости алгоритмов для решения вырожденных систем ли- линейных алгебраических уравнений // ЖВМиМФ. - 1965. - Т. 5, № 4. - С. 718-722. 224 170. Тихонов А.Н. О некорректных задачах линейной алгебры и устойчивых методах их решения // ДАН СССР. - 1965. - Т. 163, № 3. - С. 591-594. 171. Тихонов А.Н. О некорректных задачах оптимального планирования и устойчи- устойчивых методах их решения // ДАН СССР. - 1965. - Т. 164, № 3. - С. 507-510. 172. Тихонов А.Н. О некорректных задачах оптимального планирования // ЖВМиМФ.- 1966.-Т. 6, №1. -С. 81-89. 173. Тихонов А.Н. Об устойчивости задач оптимизации функционалов // ЖВМиМФ. - 1966. - Т. 6,№ 4. - С. 631-634. 174. Тихонов А.Н. Об одном принципе взаимности // ДАН СССР. - 1980. - Т. 253, № 2. - С. 305-308. 175. Тихонов А.Н. О нормальных решениях приближенных систем линейных алгебраи- алгебраических уравнений // ДАН СССР. - 1980. - Т. 254, № 3. - С. 549-554. 176. Тихонов А.Н. О приближенных системах линейных алгебраических уравнений // ЖВМиМФ. -1980.-Т. 20, №6.-С. 1373-1383. 177. Тихонов А.Н. О задачах с неточно заданной исходной информацией//ДАН СССР. - ¦ 1985.-Т. 280, №3.- С. 559-563. 178. Тихонов АЛ., Арсении ВЯ. Методы решения некорректных задач.- М.: Наука, 1986. 179. Тихонов А.Н., Васильев ФЛ. Методы решения некорректных экстремальных за- задач. - Banach Centre Publ., 1976. - С. 297-342. 180. Тихонов А.Н., Галкин В.Я., Заикин П.Н. О прямых методах решения задач опти- оптимального управления // ЖВМиМФ. - 1967. - Т. 7, № 2. - С. 416-423. 181. Тихонов А.Н., Гласно В?. О приближенном решении интегральных уравнений Фредгольма 1-го рода // ЖВМиМФ. - 1964. - Т. 4, № 3. - С. 564-571. 182. Тихонов АЛ., Гласно В?. Применение метода регуляризации в нелинейных за- задачах // ЖВМиМФ. - 1965. - Т. 5, № 5. - С. 463-473. 183. Тихонов АЛ., Гончарский А.В., Кочиков И.В. и др. Вычислительная микротомо- микротомография объектов в рентгеновской и оптической сканирующей микроскопии // ДАН СССР. - Т. 289, № 5. - С. 1104-1107. 184. Тихонов АЛ., Гончарский А.В., Степанов В.В., Кочиков И.В. Некорректные за- задачи обработки изображений // ДАН СССР. - 1987. - Т. 294, № 4. - С. 832-837. 185. Тихонов АЛ., Гончарский А.В., Степанов В.В., Ягола А.Г. Регуляризирующие алгоритмы и априорная информация. — М.: Наука, 1983. 186. Тихонов АЛ., Карманов В.Г., Руднева Т.П. Об устойчивости задач линейного программирования // Вычисл. методы и программирование. Вып. 12 — М.: МГУ, 1969. - С. 3-9. 187. Трутников В.Н. Об одном устойчивом нелинейном итерационном процессе // Изв. вузов. Математика. - 1979, № 5. - С. 58-62. 188. Трушников В.Н. Один нелинейный регуляризирующий алгоритм и некоторые его применения // ЖВМиМФ. - 1979. - Т. 19, № 4. - С. 822-829. 189. Уилкинсон Дж„ Райнш К. Справочник алгоритмов на языке Алгол. Линейная алгебра. — М.: Машиностроение, 1976. 190. Федотов А.М. Линейные некорректные задачи со случайными ошибками в дан- данных. - Новосибирск: Наука, 1982. 191. Фиакко А., Мак Кормик Г. Нелинейное программирование. Методы безусловной последовательной оптимизации..— М.: Мир, 1972. 192. Химмельблау Д. Прикладное нелинейное программирование. - М.: Мир, 1975. 193. Хуане Т-С. Быстрые алгоритмы в цифровой обработке изображений. - М.: Радио и связь, 1984. 194. Черепащук А.М., Гончарский А.В., Ягола А.Г. Интерпретация узкополосных кри- кривых блеска системы V 444 в континууме // Астрон. циркуляр. - 1967. - № 413. - С. 5 - 8. 195. Черепащук AM., Гончарский А.В., Ягола А.Г. Интерпретация затменных систем как обратная задача фотометрии // Астрон. журн. - 1967. - Т. 44, № 6. - С. 1239-1252. 196. Черепащук AM., Гончарский А.В., Ягола А.Г. Интерпретация кривых блеска затменных систем при условии монотонности искомых функций // Астрон. журн. - 1968. - Т. 45, № 6. - С. 1191-1206. 225
f, 197. Черепащук A.M., Гончарский А.В., Ягола А.Г. О стратификации излучения в оболочке затменно-двойной звезды типа Вольфа - Райе 444 Лебедя // Астрон. журн. - 1972. - Т. 49. № 3. - С. 533-543. 198. Черепащук A.M., Гончарский А.В., Ягола А.Г. Алгоритм и программа для ЭВМ решений кривой блеска затменной системы, содержащей компоненту с про- протяженной атмосферой // Переменные звезды. - 1973. - Т. 18. № 6. - С. 535-569. 199. Черепащук A.M., Гончарский А.В., Ягола А.Г. О решении кривых блеска зат- менных переменных звезд в классе монотонных функций // Астрон. журн. — 1974. - Т. 51, № 4, - С. 776-781. 200. Черепащук A.M., Гончарский А.В., Ягола А.Г. Интерпретация кривых блеска затменных систем с дискообразными оболочками. Система HZ Геркулеса // Астрон. журн. - 1977.-Т. 54, №5.- С. 1027-1035. 201. Шолохович В.Ф. Неустойчивые экстремальные задачи и геометрические свойства банаховых пространств // ДАН СССР. - 1970. - Т. 195, № 2. - С. 289-291. 202. Ягола А.Г. О выборе параметра регуляризации по обобщенному принципу невяз- невязки//ДАН СССР. - 1979.- Т. 245, № 1. - С. 37-39. 203. Ягола А.Г. Обобщенный принцип невязки в рефлексивных пространствах // ДАН СССР. - 1979. - Т. 249. № 1. - С. 71-73. 204. Ягола А.Г. О решении нелинейных некорректных задач с помощью обобщенного метода невязки // ДАН СССР. - 1980. - Т. 252, № 4. - С. 810-813. 205. Ягола А.Г. О выборе параметра регуляризации при решении некорректных задач в рефлексивных пространствах // ЖВМиМФ. - 1980. - Т. 20, № 3. - С. 586-596. 206. Ягола А.Г. Некорректно поставленные задачи с приближенно заданным опера- оператором. - Banach Centre Publ. - 1984. - Т. 13. - С. 265-279. 207. Cooley J., Tuckey J. An algorithm for machine calculation of complex fourier series// Math, of comput. - 1965. - V. 19, №90. - P. 297-301. 208. Frank M., Wolfe P. An algorithm for quadratic programming // Naval Res., Los. Quart. - 1956.-№3.-P. 95-110. 209. Furi M., Vignoli A. On the regularization of nonlinear ill-posed problems in Banach spaces // J. Optimiz. Theory and Appl. - 1969. - V. 4, № 3. - P. 206-209. 210. Gauss C.F. Theoria motus corporum collestrium in sectionibus conicis solem ambien- tirm. Hambruge, 1809. 2! 1. Goncharsky A. V., Stepanov V. V., Hohlova V.L., Yagola A.G. The study of local chara- characteristic of the Ар-stars Surfaces // Publ. of the Czechoslovak Acad. of Sci., Prague. — 1978.-№54. -P. 36-37. 212. Groetsch C.W. The theory of Tikhonov regularization for Fredgolm equations of the first kind. - Boston: Pitman Publ. Ltd., 1984. 213. Hadamard J. Le probleme de Cauchy et les equations aux derivers particlee lineaires hyperbolique. - Paris: Hermann, 1932. 214. Hofman B. Regularization for applied on verse and ill-posed problems. - Leipzig: BSB Teubner, 1986. 215. John F. A note on "improper" problems in partial differential equations//Communs. Pure and Appl. Math. - 1955. - V. 8. - P. 591-594. 216. John F. Continious dependence ол data for solution with a prescribed bound//Com- muns. Pure and Appl. Math. - 1960. -V. 13,№4. -P. 551-585. 217. Legendre A.M. Novelles methodes pour la determination des orbites des cometes. - Paris: Courcier, 1806. 218. Phillips D.L. A technique for numerical solution of certain integral equations of the first kind//J. Assoc. Comput. Mach. - 1962. - V. 9, № 1. - P. 84-97. 219. Pucci С Sui problemi Cauchy поп "ben posti"//Atti Acad. Naz. Zincci. Rend. Cl. Sci. fis. mat. e natur. - 1955. - V. 18, №5. - P. 473-477. 220. Pucci С Discussione del problema di Cauchy pur le equazioni di tipo elliptico//Ann. mat. puraad appl. - 1958. - V. 46. - P. 131-154. Научное издание ТИХОНОВ Андрей Николаевич ГОНЧАРСКИЙ Александр Владимирович СТЕПАНОВ Владимир Вадимович ЯГОЛА Анатолий Григорьевич ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ НЕКОРРЕКТНЫХ ЗАДАЧ Заведующий редакцией Е.Ю. Ходан Редакторы: И.В. Викторенкоеа, М.В. Самсонова Художественный редактор Т.Н. Кольченко Технические редакторы: О.Б. Черняк, М.И. Мешкова Корректоры: Ю?. Трушкова, Н.П. Круглова, Т.А. Печко Набор осуществлен в издательстве на наборно-печатающих автоматах ИБ № 32704 Сдано в набор 16.04.90. Подписано к печати 13.06.90 Формат 60 X 90/16. Бумага книжно-журнальная Гарнитура Пресс-Роман. Печать офсетная Усллечл. 14,5. Усл.кр.-отт. 14,88. Уч.-изд.л. 15,23 Тираж 9650 экз. Тип. зак. 187 . Цена 2 р. 40 к. Ордена Трудового Красного Знамени издательство "Наука" Главная редакция физико-математической литературы 117071 Москва В-71, Ленинский проспект", 15 Четвертая типография издательства "Наука" 630077 г. Новосибирск-77, ул. Станиславского, 25
A.N. Tikhonov, A. V. Goncharsky, V. V. Stepanov, A.G. Yagola NUMERICAL METHODS FOR THE SOLUTION OF ILL-POSED PROBLEMS 1. Authors Tikhonov A.N. academician of Academy of Sciences of the USSR, Dean of the faculty of numerical mathematics and cybernetics, Moscow University. Lenin, USSR State and Lomonosov Prizes. World — famous results in topology, functional analysis, theory of diffe- differential and integral equations. The foundator of the theory of ill-posed problems. Goncharsky A. V. - professor of faculty of numerical mathematics and cybernetics, Moscow University. Lomonosov prize. The specialist of renown for numerical methods for the solution of ill-posed problems with application in astrophysics, optics, geophysics, image processing, etc. Stepanov V. V. - associate professor of faculty of numerical mathematics and cyber- cybernetics, Moscow University. Well—known results in numerical methods for the solution of ill-posed problems and applications in astrophysics and optics. Yagola A.G. - professor of the phisical faculty, Moscow University. Lomonosov prize. The specialist of renown in fields of research: ill-posed problems, inverse problems in astrop- astrophysics, spectroscopy etc. 2. Abstract For data processing of physical experiments it is necessary to solve mathematical prob- problems, which are ill-posed, unstable to experimental errors. The book presents the theory and numerical methods for the solution of ill-posed problems. Apriori information concer- concerning exact solution may be used. Developed complex of fortran programs (with fortran texts and examples of application) is described in the book. The book may be useful for post-graduate students of physics, mathematics, chemistry, economics, engineering, for engineers and scientists which have interest in data processing and the theory of ill-posed problems. Bibliography: 220 titles. 228 3. Contents Introduction Chapter I Method of regularization § 1. Formulation of the problem. Smoothing functional. § 2. Regularization parameter choice. § 3. Generalized discrepancy principle and generalized discrepancy method are equi- equivalent. § 4. Properties of generalized discrepancy. § 5. I'initedimensional approximation of ill-posed problems. § 6. Numerical methods for the solution of some problems of linear algebra. § 7. Convolution type equations. § 8. Nonlinear ill-posed problems. § 9. Incompatible ill-posed problems. Chapter 11 Numerical methods for the approximate solution of ill-posed problems on compacta § 1. Approximate solution of ill-posed problems on compacta. § 2. Uniform approximation to exact solution of ill-posed problems. § 3. Convex polyhedrons at R. § 4. The solution of ill-posed problems on sets of convex functions. § 5. On uniform approximation to solutions on sets of bounded variation functions. Chapter III Algorithm for the approximate solution of ill-posed problems on special sets § 1. Application of conditional gradient method to solution of ill-posed problems on special sets. § 2. Application of the method of projections of conjugate gradients for the solution of ill-posed problems on special sets. § 3. Application of the method of projections of conjugate gradients, using projections on the set of nonnegative vectors, for the solution of ill-posed problems on special sets. Chapter IV Algorithms and programs for the solution of linear ill-posed problems § 1. The program for the solution of ill-posed problems using regularization method. § 2. The program for the solution of apriori constrained integral equations using regu- regularization method. § 3. The program for the solution of convolution type integral equations. § 4. The program for the solution of twodimensional convolution type integral equa tions. § 5. The program for the solution of ill-posed problems on special sets. Conditional gradient method. § 6. The program for the solution of ill-posed problems on special sets. The method of conjugate gradients projections. § 7. The program for the solution of ill-posed problems on special sets. Conjugate gradient method, using projections on nonnegative vectors set. Appendix (fortran texts) I. The program fot the solution of 1 redholm integral equation of the first kind using the transformation of Euler equation to threediagonal matrix system. II. The program for the solution of 1 redholm integral equation of the first kind using conjugate gradient method. III. The program fot the solution of Fredholm integral equation of the first kind on nonnegative functions set using regularization method. IV. The program for the solution of onedimensional convolution type untegral equa- equations. V. The program for the solution of twodimensional convolution type integral equa- equations. 229
VI. The program for the solution of Iredholm integral equation of the first kind on monotonous and (or) convex functions sets. Conditional gradient method. VII. The program for the solution of 1 redholm integral equation of the first kind on monotonous and (or) convex functions sets. The method of conjugate gradients projections. VIII.The program fot the solution of 1'redholm integral equation of the fitsr kind on monotonous and (or) convex functions sets. The method of conjugate gradients projections on nonnegative vectors set. IX. General programs. Bibliography. ИЗДАТЕЛЬСТВО "НАУКА" ГЛАВНАЯ РЕДАКЦИЯ ФИЗИКО-МА ТЕМА ТИЧЕСКОЙ ЛИТЕРА ТУРЫ 117071 Москва В-71, Ленинский проспект, 15 ГОТОВЯТСЯ К ИЗДАНИЮ В 1991 ГОДУ: Виленкин Н.Я. Специальные функции и теория представлений групп.— 2-е изд. - М.: Наука. Гл. ред. физ.-мат. лит., 1991, - 35 л. Изложена теория специальных функций с единой точки зрения при помо- помощи теории представлений групп. Этот подход позволяет единым образом по- получать всевозможные соотношения между специальными функциями, как ранее известными, так и новыми. Первое издание - 1965 г. Для математиков, физиков (теоретиков и экспериментаторов), научных работников в области техники, а также для аспирантов и студентов старших курсов. (Тематический план 1991 г., позиция 4). Нестационарные структуры и диффузный хаос / Т. С. Ахромеева, П.С. Курдюмов, Г.Г. Малинецкий, А.А. Самарский. — М.: Наука. Гл. ред. физ.-мат. лит., 1991. — 20 л. Посвящена математическому моделированию процессов в открытых нелинейных системах. В качестве примеров рассмотрены математические модели, возникающие в физике плазмы, теории горения, химической кинети- кинетике, при математическом моделировании морфогенеза. Для научных работников, инженеров, студентов старших курсов, зани- занимающихся изучением открытых нелинейных систем. (Тематический план 1991 г., позиция 18) Заказы 'на эти книги принимаются всеми магазинами Книготорга и Ака- Академкниги, распространяющими физико-математическую литературу.