NLEVSD Библиотека "JINRLIB" Вы Автор: Т.Бояджиев Язык: Фортран посетитель. РЕШЕНИЕ НЕЛИНЕЙНОЙ ЗАДАЧИ НА СОБСТВЕННЫЕ ЗНАЧЕНИЯ ДЛЯ СИСТЕМЫ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ ПЕРВОГО ПОРЯДКА Программа NLEVSD служит для решения нелинейной задачи на собственные значения для системы из NDE <= 32 обыкновенных дифференциальных уравнений первого порядка вида: F ( x,y,y',p ) = 0, m = 1,2, ... NDE m на интервале (a, b), где a < b, с граничными условиями: L ( a, y(a) ) = 0, l = 1,2,...,NBCL, l R ( b, y(b) ) = 0, r = NBCL+1,...,NDE. r Здесь p - искомый параметр. Предполагается, что задано также "условие нормировки" в точке XP ( a <= XP <= b ) H (y,p) = 0. Для поиска решения { y(x), p } применяется непрерывный аналог метода Ньютона вместе с методом сплайн - коллокации в гауссовых узлах сетки. Обращение: ---------- CALL NLEVSD (X,Y,PRM,XP,NDE,NBCL,NPAR,NNOD,HX,W,U,V,YO, RHSU,RHSV,INTEGS,TIMES,NITEM,ITER,EPS,FUN,DFUN, BCOND,DBCOND,PCOND,DPCOND,DETAILS,IFAIL) Здесь: X - сетка из NNOD узлов (задается пользователем); Y - массив из 2NDE*NNOD элементов; на входе содержит начальное приближение, на выходе содержит решение y(x) в узлах сетки; PRM - на выходе содержит собственное значение p; NPAR = 1; HX - массив из NNOD-1 шагов сетки (задается пользователем); W - рабочий массив из 8*NNOD*NDE**2 элементов; U,V,YO,RHSU,RHSV - рабочие массивы из 2*NDE*NNOD элементов; INTEGS - INTEGER массив размера 2*NNOD-2; TIMES - число обращений к подпрограмме; NITEM - максимальное число итераций (задается пользователем); ITER - число итераций; EPS - абсолютная точность (задается пользователем); BCOND - подпрограмма вычисления левых частей граничных условий; DBCOND - подпрограмма вычисления производных Фреше левых частей граничных условий; PCOND - подпрограмма вычисления левой части условия; DPCOND - подпрограмма вычисления производной Фреше левой части условия; DETAILS - INTEGER - уровень печати; IFAIL - флаг итераций (IFAIL=0 - итерационный процесс сходится за ITER итераций). Архив программы с исходными текстами. |