• Название:

    Отдел Корней Алгебр Трансц Уравн — презентация

  • Размер: 0.32 Мб
  • Формат: PPT
  • или
3. Численные методы 3.1. Решение алгебраических и трансцендентных уравнений3.1.1. Отделение корней уравнений 3.1.1.1 Отделение корней алгебраических уравнений В общем виде алгебраическое уравнение с одним неизвестным имеет вид: Отделение корней – определение числового интервала, содержащего только один корень уравнения (3.1).
Уточнение значения корня – процедура сужения границ найденного интервала с целью определения значения корня уравнения (3.1) с любой наперед заданной точностью e. ( 3. 1 ) 3.1.1.1 Отделение корней алгебраических уравнений Для алгебраического уравнения (3.1) с действительными коэффициентами верхняя граница положительных корней определяется по формуле Лагранжа где k≥1 – номер (индекс) первого из отрицательных коэффициентов урав-нения (3.1);
В = |-аi|max – наибольшее из абсолютных значений отрица-тельных коэффициентов уравнения (3.1).
Нижнюю границу положительных действительных корней определяют из вспомогательного уравнения: ( 3. 2 ) 3.1.1.1 Отделение корней алгебраических уравнений Итак, положительные корни х+ уравнения (3.1), если они существуют, удовлетворяют неравенству Для отыскания границ отрицательных корней следует в урав-нении (3.1) заменить х на –х и определить нижнюю границу по Формуле Лагранжа для вспомогательного уравнения:
Верхняя граница отрицательных корней определяется такжеиз вспомогательного уравнения ( 3.3 ) ( 3.4 ) 3.1.1.1 Отделение корней алгебраических уравнений Итак, отрицательные корни х ‾ уравнения (3.1), если они существуют, удовлетворяют неравенству Таким образом, все корни алгебраического уравнения (3.1) находятся на отрезке т. е. от нижней границы отрицательных корней до верхней границы положительных корней 3.1.1.1 Отделение корней алгебраических уравнений Пример.
Определить границы действительных корней алгебраического уравнения:
Для правильного определения индексов коэффициентов исходного уравнения запишем его в общем виде:где 3.1.1.1 Отделение корней алгебраических уравнений По формуле Лагранжа находим верхнюю границу положительных корней заданного уравнения.
Здесь k=1; B=9; a0=3; Для определения нижней границы положительных корнейразрабатываем вспомогательное уравнение вида (3.2):или ( 3.2.1 ) 3.1.1.1 Отделение корней алгебраических уравнений В уравнении (3.2.1): k=8; B=3; a0=3. Тогда Для нахождения границ отрицательных корней, состав-ляем вспомогательные уравнения вида (3.3) и (3.4).
Нижняя граница действительных отрицательных корней:
Здесь k=8; B=9; a0=3. 3.1.1.1 Отделение корней алгебраических уравнений Верхняя граница отрицательных корней:
Здесь k=1; B=6; a0=9.Итак, действительные корни заданного уравнения, если они существуют, находятся на отрезках: положительные 0,53 ≤ x+ ≤ 4; отрицательные -2,15 ≤ x- ≤ -0,6.Все корни находятся на отрезке: -2,15 ≤ x ≤ 4. 3.1.1.1 Отделение корней алгебраических уравнений Правило знаков Декарта1. Число положительных корней алгебраического уравнения либо равно числу N перемен знака в последовательности коэффициентов аi, причем учитываются коэффициенты, равные нулю, либо меньше чис-ла N на четное число.2. Если перемен знаков нет, то алгебраическое уравнение положи- тельных корней не имеет.3. Если есть одна смена знака, то уравнение имеет только один по-ложительный корень.4. Применяя это правило к уравнению f(-x), получаем аналогичное правило для отрицательных корней. 3.1.1.1 Отделение корней алгебраических уравнений Схема Горнера для отделения корней алгебраических уравнений Значение многочлена (3,1) легко вычислить, используя схему Гор- нера.
Так, разделив уравнение (3.1) на двучлен (х-с), получаем: f(x)=(x-c)(x)+r, где (x)-частное (многочлен на порядок ниже f(x)); r-остаток.
Коэффициенты bi уравнения (x) рассчитываются по формулам:b0=a0; b1= b0c+a1;b2=b1c+a2;....................bn=r=bn-1c+an. r = bn .где bn числено равен значению многочлена при подстановке в него вместо Х значение С. 3.1.1.1 Отделение корней алгебраических уравнений Используя внутренний цикл с оператором for и внешний цикл с оператором repeat, схема Горнера легко программируется в Delphi.
Пример.
Отделить корни уравнения:X3-1,9xІ-0,97x+0,115=0. Delphi 3.1.1.1 Отделение корней алгебраических уравнений Рассмотрим содержание подпрограммы Gorner.
Procedure Gorner(c:real;A:Mas;Var b:real); Var i : integer; begin for i:=1 to n do b:=b*c+A[i]; end; где «с» изменяется во внешнем цикле от нижней границы отрицательных корней до верхней границы положительных корней с некоторым шагом h; b – численное значение многочлена при подстановке в него вместо «х» значение «с». Обращение к подпрограмме Gorner в вызывающей программе: Gorner(c,A,b);
3.1.1.1 Отделение корней алгебраических уравнений Подпрограммы головного модуля Unit1. 1. Вызов калькулятора. procedure TForm1.Bit Btn2 Click(Sender: TObject); begin Win Exec('Calc',sw_Restore); end; 2. Удаление файлов при щелчке по кнопке «Выход» procedure TForm1.Bit Btn5 Click(Sender: TObject); begin Delete File('A.Rez'); Delete File('Gr.
Dat'); Close; end;
3.1.1.1 Отделение корней алгебраических уравнений 3. Подпрограмма «Создание главной формы». procedure TForm1.Form Create(Sender: TObject);Var i : integer;begin Decimal Separator:='.'; Assign File(Fr,'A.Dat'); Reset(Fr); readln(Fr,FIO); //Чтение данных из файла «А.Dat» readln(Fr,n Gr); readln(Fr,n); for i:=0 to n do read(Fr,A[i]); readln(Fr,Rn,Rv); Close File(Fr);
3.1.1.1 Отделение корней алгебраических уравнений Edit1.Text:=FIO; //Размещение данных по окнам Edit Edit2.Text:=n Gr; Edit3.Text:=Int To Str(n); Edit4.Text:=Float To Str(Rn); Edit5.Text:=Float To Str(Rv); with String Grid1 do //Оформление компоненты String Grid1 begin Col Count:=n+2; //Число столбцов Row Count:=2; //Число строк for i:=0 to 11 do Cells[i+1,0]:='a'+Int To Str(i); for i:=1 to 10 do Cells[0,i]:=Int To Str(i); for i:=1 to n+1 do Cells[i,1]:=Float To Str(A[i-1]); end; end; //Конец подпрограммы TForm1.Form Create 3.1.1.1 Отделение корней алгебраических уравнений procedure TForm1.Bit Btn4 Click(Sender: TObject); Var h,b: real; i : integer; begin FIO:=Edit1.Text; n Gr:=Edit2.Text; n:=Str To Int(Edit3.Text); Rn:=Str To Float(Edit4.Text); Rv:=Str To Float(Edit5.Text); 4. Головная программа with String Grid1 do //Заполнение данными ячеек //String Grid1 for i:=1 to n+1 do A[i-1]:=Str To Float(Cells[i,1]);
3.1.1.1 Отделение корней алгебраических уравнений Assign File(Fw,'A.Dat'); //Обновление файла «A.Dat); » Rewrite(Fw); writeln(Fw,FIO); writeln(Fw,n Gr); writeln(Fw,n); for i:=1 to n+1 do write(Fw,A[i-1]:
8:
3); writeln(Fw); writeln(Fw,Rn:
10:
3,Rv:
10:
3); Close File(Fw); h:=(Rv-Rn)/20; //Вычисление шага изменения «с» c:=Rn; //Присвоение «с» 1-го значения - Rn 3.1.1.1 Отделение корней алгебраических уравнений Assign File(Fw,'A.Rez'); //Открытие файла для записи Rewrite(Fw); Assign File(Fww,'Gr.
Dat'); Rewrite(Fww); Tabl; //Оформление «шапки» таблицы результатов repeat //Внешний цикл по «с» b:=A[0]; Gorner(c,A,b); writeln(Fw,'':
13,c:
10:
3,b:
23:
3); writeln(Fww,'':
2,c:
10:
3,b:
10:
3); c:=c+h; until (c>Rv); Lin(5,15,0,1,'-'); write(Fw,' *** Конец расчета *** ');
3.1.1.1 Lin(0,15,0,1,'-'); Close File(Fw); Close File(Fww); Form1.Visible:=False; //Показать результаты расчета with TForm2.Create(Application) do try Show Modal; finally free; end; Form1.Visible:=True;end; //Конец головной программы 3.1.1.1 Отделение корней алгебраических уравнений procedure TForm1.Bit Btn3 Click(Sender: TObject); begin Form4.Show Modal; end;
5. Показать блок-схему вычисления значения многочлена по схеме Горнера procedure TForm1.Bit Btn1 Click(Sender: TObject);begin Form5.Show Modal;end;end. //Конец модуля Unit1 6. Показать содержание информации «О программе» 3.1.1.1 Отделение корней алгебраических уравнений 3.1.1.2. Отделение корней трансцендентных уравнений В общем виде трансцендентное уравнение с одним неизвестных записывается так :f(x) = 0, ( 3.5 )где f(x) – некоторая функция от «х».Для отделения корней трансцендентных уравнений обычно применяют графический метод, который заключается в том, что непосредственно строят график функции f(x), либо исходную функцию представляют в виде суммынескольких более простых функций, т. е.f(x) = f1(x) + f2(x). 3.1.1.2. Отделение корней трансцендентных уравнений В первом случае находят пересечение графика функции f(x) с осью абсцисс, во втором – точки пересечения функций f1(x) и f2(x). Таким образом, чтобы отделить все действительные корни уравнения (5), требуется найти интервалы, на которых функция монотонна, и определить знаки функции на концах каждого интервала.
Если знаки различны, то исследуемый интервал содержит один корень. Признаком монотонности функции f(x) на некотором интервале является неизменность знака производной функции.
Следовательно, для поиска интервалов, содержащих корни уравнения (5), необходимо найти такие значения «х», для которых производная не меняет знак. Поэтому задача отделения корней сводится к задаче отыскания точек, в которых производная равна нулю или имеет разрыв, и определению знака функции f(x) в найденных точках. 3.1.1.2. Отделение корней трансцендентных уравнений Пример.
Отделить корни уравненияx2 – sinx = 0. Функция f(x)=x2-sinx и ее производная f’(x)=2x-cosx непрерывны на всей числовой оси.
При х=0 имеем f(0)=0, т.е. это один из корней заданного урав- нения. Определим интервалы монотонности функции f(x), т.е. решим уравнение f’(x)=2x-cosx =0. Имеем : при х1=p/4, f’(x1)=p/2- , а при х 2=p/2, Таким образом, найден следующий отрезок монотонности функции f(x): Так как при х= p/4 f(x)= , а при х=p/2 , то на концах найденного отрезка функция f(x) меняет знак, т.е. найденный интервал содержит один корень.
Delphi 3.1.1.2. Отделение корней трансцендентных уравнений Покажем особенности нахождения значения трансцендентного уравнения. procedure TForm1.Bit Btn1 Click(Sender: TObject);Var Rn,Rv,h,fx,x : real;begin Decimal Separator:='.'; Rn:=Str To Float(Edit1.Text); Rv:=Str To Float(Edit2.Text); h:=(Rv-Rn)/10; x:=Rn; repeat fx:=x*x-sin(x); //Исследуемая функция Series1.Add XY(x,fx,'',cl Tee Color); x:=x+h; until(x>Rv); end; //Конец головной программы 3.1.1. Отделение корней уравнений Построить графики и тем самым отделить корни заданного уравнения можно с помощью пакетов Math CAD и Excel. Построим графики, рассмотренных уравнений с помощью этих пакетов.
Math CAD: Excel. Таким образом, основным методом отделения корней алгебраических и трансцендентных уравнений является графический метод.
Однако для отделения корней алгебраических уравнений наиболее удобна схема Горнера. Графики заданного уравнения можно строить по готовой программе, написанной в Delphi или использовать пакеты Math CAD или Excel. 3.1.1. Отделение корней уравнений