Scientific journal
Fundamental research
ISSN 1812-7339
"Перечень" ВАК
ИФ РИНЦ = 1,674

THE RELATIONSHIP OF THE SOLUTIONS OF DIFFERENTIAL EQUATIONS OF VARIOUS TYPES AND APPROXIMATION OF SOLUTIONS TO DIFFERENTIAL EQUATIONS CONTINUED FRACTIONS WITH THE USE OF THE PROGRAMMING ENVIRONMENT

Ragimkhanova G.S. 1 Kulieva D.R. 2 Ragimkhanova A.R. 3 Gadzhieva Z.D. 1
1 Dagestan State Pedagogical University
2 The Ministry of Economy and Territorial Development of the Republic of Dagestan
3 Dagestan State University
The relation between the solutions of the general equation Riccati D., linear equation of second order and systems of differential equations. Also considered the Cauchy problem, the solution of which is a trigonometric function tg x. The listing of the program developed in the Delphi environment, for finding the values of trigonometric function tg x using chain fractions, and given approximate values of this function up to 15-th sign. The results obtained in this article can be used in studies that are associated with expansions of functions into continued fractions, as well as in the numerical solution of differential equations, where the issues related to the convergence rate, play an important role. The results obtained may be of interest to specialists in mathematical analysis, differential equations, special functions of mathematical physics and their applications, and they can be applied to numerical analysis of problems.
differential equations
a continued fraction
approximation

Нахождение оптимального алгоритма, т.е. такого, при выполнении которого потребуется наименьшее количество арифметических действий или наименьшее машинное время, является одной из актуальных проблем теории алгоритмов. Практически во всех наиболее часто используемых математических моделях природных явлений так или иначе используются дифференциальные уравнения. Поэтому поиск таких алгоритмов, которые позволяют аппроксимировать решения задач теории дифференциальных уравнений за счет выполнения наименьшего количества арифметических действий, является актуальной проблемой [1, с. 6–7].

Целью данной статьи является использование цепных дробей в качестве аппарата приближения [2].

I. Рассмотрим:

1. Общее уравнение Д. Риккати

petr01.wmf (1)

2. Линейное уравнение второго порядка

petr02.wmf (2)

3. Систему дифференциальных уравнений

petr03.wmf (3)

В (1)–(3) R, Q, P, P0, P1, P2, a, b, c – известные, непрерывные на некотором отрезке [a, b], функции; petr04.wmf – неизвестные функции [3].

Между решениями уравнений (1)–(3) существует связь, устанавливаемая следующими утверждениями.

Теорема 1. Если y – решение уравнения (1), то petr05.wmf будет решением уравнения (2).

Доказательство. Так как

petr06.wmf, petr07.wmf,

то

petr08.wmf

petr09.wmf

Последнее выражение равно нулю если подобрать P0, P1, P2 так, чтобы

petr10.wmf, petr11.wmf.

Теорема 2. Если u – решение уравнения (2), то petr12.wmf будет решением уравнения (1).

Доказательство. Имеем

petr13.wmf.

Поэтому

petr14.wmfpetr15.wmf.

Последнее выражение равно нулю, если подобрать R, Q, P из условий

R = –1, petr16.wmf, petr17.wmf.

Теорема 3. Если пара (φ, ψ) – решение системы (3), то petr18.wmf будет решением уравнения (1).

Доказательство. Имеем

petr19.wmfpetr20.wmf,

т.е. y есть решение уравнения (1), где R = –c, Q = 2a, P = b.

Теорема 4. Если y – решение уравнения (1) и petr22.wmf, то пара petr23.wmf, petr24.wmf будет решением системы (3).

Доказательство. Имеем

petr26.wmf, petr27.wmf.

Так как

petr28.wmf petr29.wmf

то

petr30.wmf

petr31.wmf,

petr32.wmf.

Решая последнюю систему уравнений относительно φ и ψ, получим

petr33.wmf,

petr34.wmf.

II. Рассмотрим в этом пункте задачу Коши

petr35.wmf,

решением которой является тригонометрическая функция y = tgx [4]. Для нахождения значений тригонометрической функции y = tgx воспользуемся разложением функции в цепную дробь

petr36.wmf

для комплексных petr37.wmf, k – целое [5].

Ниже приводится код программы в среде Delphi для нахождения значений тригонометрической функции tgx и, приведены значения данной функции с точностью до 15-го знака по указанной формуле при помощи подходящих дробей petr38.wmf для petr39.wmf petr40.wmf, с использованием FR-алгоритма (прямого рекуррентного алгоритма). Этот алгоритм заключается в применении рекуррентных формул petr41.wmf, petr42.wmf, petr43.wmf petr44.wmf. При этом мы получаем значения petr45.wmf и, совершив еще n – 1 делений, мы получаем значения petr46.wmf. Общее число арифметических операций для нахождения petr47.wmf – 4n умножений, n сложений и одно деление.

При использовании FR-алгоритма трудность состоит в том, что даже если последовательность {fn} будет сходиться к конечному пределу, последовательности числителей {Pn} и знаменателей {Qn} подходящих дробей могут одновременно стремиться к 0 или к ∞, что требует время от времени выполнять перемасштабирование, чтобы не было машинного переполнения или исчезновения порядка [1].

petr49.wmf,

petr50.wmf при n ≥ 2,

petr51.wmf

III. Создание программы в среде Delphi.

Процесс конструирования формы:

– для Form1 меняем значение в свойстве Caption на tg x;

– устанавливаем на форму компонент Panel1 со страницы Standard (удаляем значение в свойстве Caption для этого компонента, в свойстве Align выбираем значение alclient, меняем значение в свойстве Name для этого компонента на P1);

– устанавливаем на форму компоненты Label1 и Label2 со страницы Standard (меняем в свойстве Caption значение для этих компонент на Таблица результатов и Таблица погрешностей соответственно, в свойстве Font выбираем атрибуты шрифта: стиль – полужирный курсив, размер – 24, меняем значение в свойстве Name для этих компонент на L1 и L2 соответственно);

– устанавливаем на форму компоненты StringGrid1 и StringGrid2 со страницы Additional (меняем в свойствах ColCount и RowCount значения для этих компонент на 7 и 11 соответственно, меняем значение в свойстве Name для этих компонент на q1 и q2 соответственно);

– устанавливаем на форму компонент BitBtn1 со страницы Additional (меняем в свойстве Caption значение для этого компонента на Расчет, в свойстве Font выбираем атрибуты шрифта: стиль – полужирный курсив, размер – 24, меняем значение в свойстве Name для этого компонента на B1).

Код программы в среде Delphi имеет вид

unit fun;

{определяет внешнюю видимость этого модуля}

interface

{использование модулей}

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Grids, StdCtrls, Buttons, ExtCtrls;

{объявление объектов}

type

TForm1 = class(TForm)

P1: TPanel;

q1: TStringGrid;

q2: TStringGrid;

B1: TBitBtn;

L1: TLabel;

L2: TLabel;

procedure P1Click(Sender: TObject);

procedure B1Click(Sender: TObject);

private

{ Private declarations }

{описанные в этой секции элементы недоступны извне (за пределами класса)}

public

{ Public declarations }

{описанные в этой секции элементы доступны всем}

end;

var

Form1: TForm1;

implementation {осуществляет интерфейс этого модуля}

{$R *.dfm} {включить определения формы}

{обработчик события onClick для компонента P1}

procedure TForm1.P1Click(Sender: TObject);

var h:integer;

x:real;

begin

{заполнение 1-го столбца таблицы результатов и таблицы погрешностей}

q1.Cells[0,0]:='N=';

q2.Cells[0,0]:='N=';

x:=0.1;

for h:=1 to 10 do

begin

q1.Cells[0,h]:='x='+floattostr(x);

q2.Cells[0,h]:='x='+floattostr(x);

x:=x+0.1;

end;

{заполнение 1-й строки таблицы результатов и таблицы погрешностей}

for h:=1 to 6 do

begin

q1.Cells[h,0]:=floattostr(h+2);

q2.Cells[h,0]:=floattostr(h+2);

end;

end;

{обработчик события onClick для компонента B1 (заполнение таблицы результатов и таблицы погрешностей)}

procedure TForm1.B1Click(Sender: TObject);

Var z:array[1..10,1..10] of real;

y,b,r:real;

m,h,l,t:integer;

Begin

for t:=1 to 6 do

begin

for l:=1 to 10 do

begin

y:=l*0.1;

for m:=3 to 8 do

begin

h:=m;

r:=0;

b:=y*y/(2*m-1);

h:=h-1;

while h>0 do

begin

r:=y*y/(2*h-1-b);

b:=r;

h:=h-1;

end;

r:=r/y;

z[l,n]:=abs(r-sin(y)/cos(y));

q1.Cells[t,l]:=Format (‘ %e’, [r]);

end;

end;

for l:=1 to 10 do

begin

for m:=3 to 8 do

q2.Cells[t,l]:=Format ('%e', [z[l,m]]);

end;

end;

end;

end. [6]

rag1.tif

Скриншот окна формы в среде Delphi

Заключение

Исходя из полученных выше результатов видно, что цепные дроби являются наилучшим аппаратом приближения. Таким образом, приближение подходящими дробями дает большую точность.