К решению нелинейных вариационных задачРефераты >> Математика >> К решению нелинейных вариационных задач
4. Излагается вариационная задача с выводом уравнений Эйлера-Лагранжа и на их основе приводятся примеры аналитического решения. На основе идей метода конечных разностей получен алгоритм для линейной вариационной задачи и на его основе решены ряд вариационных азадач на ЭВМ; результаты приведены в приложениях.
5. Методом Ритца решены ряд нелинейных задач, одна двумерная задача. На основе решения модельных задач подтверждается достоверность полученных результатов.
6. Приведена новая модификация метода Ритца, для которой нелинейность вариационной задачи не вызывает особых затруднений.
ЛИТЕРАТУРА
1. Алгебра и начала анализа 10-11 кл., М., 1992.
2. Белман Р., Калаба Р. Квазилинеоризация и нелинейные краевые задачи. "Мир", М., 1968.
3. Блох В.И. Теория упругости. Харьков, изд-во ХГУ, 1964.
4. Буслаева И.П. Решение задач без использования производной. Математика в школе № 5 -1995.
5. Возняк Г.М., Гусев В.А. Прикладные задачи на экстремумы. М., 1985, "Просвещение".
6. Данко П.Е., Попов А.Г., Кожевникова Г.Я. Высшая математика в упражнениях и задачах. М., "Высшая школа", 1986.
7. Демидович Б.П., Марои И.А., Шувалова Э.З. Численные методы анализа. М., "Наука", 1967.
8. Дородницын А.Р. Применение малого параметра к численному решению дифференциальных уравнений. В книге "Современные проблемы систематической физики и вычислительной математики". "Наука", М., ^ 1982.
9. Камке Э. Справочник по обыкновенным дифференциальным уравне-« ниям .- "Наука", М., 1972.
10. Краснов М.Л., Макаренко Г.И., Киселев А.И. Вариационное исчисление. "Наука", М., 1967.
11. Курант Р. Курс дифференциального и интегрального исчисления. "Наука", М., 1967.
12. Матвеев И.М. Дифференциальные уравнения. "Наука", 1970.
13. Мышкис А.Д. Лекции по высшей математике ."Наука", М., 1969.
14. Сайфуллин Э.Г., Саченков А.В., Тимербаев P.M. Основные уравнения теории упругости в напряжениях и перемещениях. Сборник исследований по теории пластин и оболочек, в. 18, часть 1. Казань, Изд. КТУ, 1985.
15. Соминский И.С. Элементарная алгебра. Дополнительный курс. Физ-матгиз, М., 1969.
16. Циаф Л.Я. Вариационное исчисление и интегральные уравнения.
"Наука", 1970г.
t„ 17. Эльсгольц Л.Э. Дифференциальные уравнения и вариационное исчисление. "Наука", 1969.
• ^. "
HWUA-cA^ /^1СЛ^И-1с^«^-''1Д.
program diplomi; 4.
uses graph,crt;
label 1;
const n=200;
type mas=array[0 n]of real;
var a,b,c,d,f,y,p,xx,l,r,g: mas;
j,z,x,h: real;e: char;
i,j1,il: integer;
ff:text;
procedure vap(var xx,y : mas) ; клил-ели.^- бор-с.(,ои/^с^<^о^
var x,h: real; i: integer; ' ^с^-оли,
a,b,с,d,f,p:mas;
begin
h: = 2/n; x: =1;
for i: =0 to n do
begin
f[i]:= exp(-x*x) ;
p[i]: = cos(x*x);
xx[i]: =x;
x: =x+h end;
УСО].- =0;y[n]: =4;
for i: =1 to n do a[i]:=2+h*h*f[i];
b[l]:=y[0]-h*h*p[l];
b[n-l]: =y[n]-h*h*p[n-l];
for i: =2 to n-2 do b[i]: =-h*h*p[i];
c[l]: =a[l]; d[l]: =b[l];
for i:=2 to n-1 do
begin
c[i3: =a[i]-l/c[i-l];
d[i]: =b[i]+d[i-l]/c[i-l];
yCn^l]: =d[n-l]/c[n-l];
for i:=2 to n-1 do
y[n-i]: =(d[n-I]+y[n-i+l])/c[n-i];
end ;
procedure kr( var xx,y :mas); ьтшлмлла ^Uscuiocd \gjqcuwl var x,h: real;!: integer; ' v v a,b,c,d,l,r,p,g,f: mas;
begin
h: =l/n; x: =0;
for i: =0 to n do begin
p[i]: =2*x;
g[i]: =x*x;
f[i]: =sin(x*x);
xx[i]: =x;
x: =x+h;
У[0]: =0;y[N]: =3;b[l]: =y[0]-2*h*h*f[l]/lCl];
cCl]: =a[l];d[l]: =b[l];
for i: =1 to n-1 do begin 1[i]: =2-h*p[i];
a[i]: =(4-2*h*h*g[i])/l[i];
r[i]: =(2+h*p[i])/l[i];
end;
for i: =2 to n-1 do begin c[i]: =a[i]-<r[i-l]/c[i-l]);
b[i]: =-2*h*h*f[i]/l[i];
d[i]: =b[i]+(d[i-l]/c[i-l]);
end;
for i: =1 to n-1 do
у [n-i]: =<d[n-i]+r[n-i]*y[n-i+l])/c[n-i];
end;
begin il: =detect;initgraph(il,j1,'' );
assign(ff,' b: reseda, dip' ); <2. rewrite(ff);
1: cirscr; settextstyle(0,0,2);
outtextxy(300,80,'МЕНЮ: ' );
outtextxy(135,150,'1.РЕШЕНИЕ ВАРИАЦИОННОЙ ЗАДАЧИ.');
outtextxy(135,200,'2. РЕШЕНИЕ КРАЕВОЙ ЗАДАЧИ.'):
outtextxy<135,250,'3. КОНЕЦ . ' );
outtextxy(145,350, 'ВЫБЕРИТЕ НУЖНЫЙ ПУНКТ МЕНЮ .');
Е: =READKEY; •
case e of ' Г: begin
cirscr;settextstyle(0,0,3);
outtextxy(100,40,'РЕШЕНИЕ ВАРИАЦИОННОЙ' );
outtextxy(250,80,'ЗАДАЧИ' );
settextstyle(0,0,2);
outtextxy(155,130,'Дана вариационная задача:');
outtextxy(145,200,' I(Y)= ( y+2cos(x)y+e y )dx');
settextstyle(0,0,4);outtextxy(230,190,'S');
settextstyle(0,0,2);
outtextxy(200,280,' y(l)=0 , у(3)=4 ');
settextstyle(0,0,2);
outtextxy(240,170,' Г );outtextxy(235,225,'3');
SETTEXTSTYLE(0,0,1);
outtextxy(329,190,'2');
settextstyle(0,0,2);outtextxy(315,180,',');
settextstyle(0,0,1);
outtextxy(440,190/ 2');
outtextxy(500,190,'-x');outtextxy(520,185,'2');
vap(xx,y); writein;
writeln(ff,' РЕШЕНИЕ ВАРИАЦИОННОЙ ЗАДАЧИ' )
writeln(ff);writeln(fr);i: =0;
while i<=n do begin
if i<=n then
writeln(ff, ' ' ,xx[i]: 1: 3,' \ ',y[i]:l:3, ',xx[i+l]: 1: 3,' ',y[i+l]:1:3)
© 1 S6
writeln(ff,' ' ,xx[i]: 1: 3,' -,y[i]:l:3);
i: =i+2; end;
e: =readkey; goto 1; end;
'2': begin
cirscr; SETTEXTSTYLE(0,0,3);
OUTTEXTXY( 50, 80, '-РЕШЕНИЕ КРАЕВОЙ ЗАДАЧИ.');
settextstyle(0,0,2);
OUTTEXTXY(150,130,'Дана краевая задача: ');
OUTTEXTXY(145,200,'y+2xy+xy=sinx ' );
OUTTEXTXY(150,280,' y(0)=0 , у(1)=3 ');
OUTTEXTXY(152,180,' ,,' );
OUTTEXTXY(218,180,' ,' );settextstyle(0,0,1);
OUTTEXTXY(255,190,'2' );
outtextxy(350,190,'2');
kr(xx,y); writein;
writeln(ff,' РЕШЕНИЕ КРАЕВОЙ ЗАДАЧИ' );
writeln(ff);writeln(ff);i: =0;
while i<=n do begin
if i<=n then
writeln(ff,' ',xx[i]: 1: 3,' ',y[i]: 1: 3,
',xx[i+l]: 1: 3,' ' ,y[i+l]: 1: 3) else
writeln(ff,' ' ,xx[i]: 1: 3,' ',yCi]: 1: 3);
i: =i+2; end;
e: =readkey; goto 1; end;
.' 3': begin
cirscr;
settextstyle(0,0,2) ;
outtextxy(150,280,'нажмите на любую клавишу ') ;
E: =readkey;
closegraph ;
end;
end;
close(ff);
end.
program diplom; <5 const n=200;
type mas=array[0. . n]of real;
var a,b,c,d,f,y,p,xx,1,r,g: mas;
x,h,jl,yl,j2,y2: real;
i: integer;
ff: text; „ о procedure vap(var xx,y :mas); рвит^шло. Ьсир<лсцш^У<мо^ var x,h: real; i: integer; f,p, a,b, c,d: mas; ^Cc^c^cc begin h: =2/n; x: =0;
for i: =0 to n do begin
f[i]: = -1 ;
p[i]: = 0;
xx[i]: =x;
x: =x+h end;
y[0]:=0; y[157]:=l;
for i: =1 to 157 do
a[i]:=2+h*h*f[i];
b[l]:=y[0]-h*h*p[l];
b[156]: =y[157]-h*h*p[156];
for i: =2 to 157-2 do