ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 02.08.2019

Просмотров: 4697

Скачиваний: 6

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

Занятие 1

101

Решение. Неоптимальный подход:

x = [ 1 , 2 , 4 , 5 , 6 , 7 ] ;

D e l t a = zeros ( length ( x ) ) ;

% зарезервировать память

f o r i =1: length ( x )

f o r j =1: length ( x )

D e l t a ( i , j ) = x ( i ) ^ ( j

−1);

end

end

D e l t a

% вывести на экран ответ

Оптимальный подход:

x = [ 1 , 2 , 4 , 5 , 6 , 7 ] ;

temp = repmat ( x ’ , 1 , length ( x ) ) ;

power = repmat ( 0 : length ( x )

−1, length ( x ) , 1 ) ;

D e l t a = temp . ^ power

%

вычисляем и выводим на экран

Здесь имеем:

temp =





x

0

x

0

x

0

· · · x

0

x

1

x

1

x

1

· · · x

1

... ...

. . . ...

x

n

x

n

x

n

· · · x

n





,

power =





0 1 2

· · · n

0 1 2

· · · n

... ...

. . . ...

0 1 2

· · · n





.

1.5

Пусть задан вектор x = [1,2,4,5,6,7], y = 2.5 и k = 2. Вычис-

лить в Matlabфрагмент многочлена Лагранжа:

(y

− x

0

) . . . (y

− x

k

−1

)(y

− x

k+1

) . . . (y

− x

n

)

Решение. Неоптимальное:


background image

Занятие 1

102

x = [ 1 , 2 , 4 , 5 , 6 , 7 ] ;

k = 2 ;

y = 2 . 5 ;

r e s u l t = 1 ;

f o r i =1: length ( x )

i f

i == ( k+1)

c o n t i n u e ;

end

r e s u l t = r e s u l t

∗ ( y − x ( i ) ) ;

end

r e s u l t

% выводим результат

Оптимальное решение:

x = [ 1 , 2 , 4 , 5 , 6 , 7 ] ;

k = 2 ;

y = 2 . 5 ;

r e s u l t = y

− x ;

r e s u l t ( k+1) = 1 ;

r e s u l t = prod ( r e s u l t )

% выводим результат

Здесь имеем последовательно:

result = [ y − x

0

. . . y

− x

k

−1

y

− x

k

y

− x

k+1

. . . y

− x

n

]

result = [ y − x

0

. . . y

− x

k

−1

1 y

− x

k+1

. . . y

− x

n

]

result = (y

− x

0

) . . . (y

− x

k

−1

)

· 1 · (y − x

k+1

) . . . (y

− x

n

).

1.6

Пусть задана переменная m = 4. Предложить оптимальное решение

в Matlabдля построения следующей матрицы:

C =








0

1

. . .

m

1

2

. . . m + 1

2

3

. . . m + 2

...

...

. . .

m m + 1 . . . m + m









background image

Занятие 2

103

.

Указание. Представить искомую матрицу в виде

C = A + A

>

.

1.7

Пусть задан вектор x = [1,2,4,5,6,7] и m = 4. Вычислить в Mat-

labматрицу для метода среднеквадратического приближения:








n + 1

P

x

i

. . .

P

x

m

i

P

x

i

P

x

2

i

. . .

P

x

m+1

i

P

x

2

i

P

x

3

i

. . .

P

x

m+2

i

...

...

. . .

P

x

m

i

P

x

m+1

i

. . .

P

x

m+m

i








.

Решение. Заметим, что элементы матрицы принадлежат множеству

{

P

x

0

i

, . . . ,

P

x

2m

i

}. Вычислим соответствующий массив B:

A

(2m+1

×n+1)

=





x

0

x

1

· · · x

n

x

0

x

1

· · · x

n

... ...

...

x

0

x

1

· · · x

n





.





0

· · ·

0

1

· · ·

1

...

...

2m

· · · 2m





;

B = sum(A,2) =

X

x

0

i

X

x

1

i

· · ·

X

x

2m

i

>

.

Ответом будет D=C(B), где

C — матрица из предыдущей задачи. Матрица

D имеет тот же размер, что и C. Её элемент d

ij

равен

b

c

ij

, т.е. элементу

массива

B с индексом c

ij

.

2.2

Занятие 2

2.2.1

Метод дихотомии.

2.1

Уравнение

f (x) = 0 решают методом дихотомии. Известно, что f (x)

непрерывна на

[a, b] и f (a)f (b) < 0. Оцените сверху наибольшее число

итераций, необходимое для получения корня с заданной точностью

ε.

Решение. На каждой итерации исходный отрезок

[a, b] сужается в два ра-

за:

b

n

−a

n

= (b

−a)/2

n

. Критерий останова в методе дихотомии:

b

n

−a

n

< ε.


background image

Занятие 2

104

Решая неравенство

(b

− a)/2

n

< ε и учитывая, что n

N

, получим

n

>

log

2

b

−a

ε

+ 1, где квадратные скобки — операция взятия целой части

от числа.

2.2.2

Метод простых итераций.

2.2

Методом простых итераций найти корни уравнения

x

2

−a = 0 (квад-

ратный корень из числа

a).

Решение. 1 метод

x = x

2

+ x

− a, ϕ(x) = x

2

+ x

− a, ϕ

0

(x) = 2x + 1;

0

(x)

| < 1 ⇒ |2x + 1| < 1 ⇒

x +

1
2

<

1
2

Только для

x

∈ (−1, 0) корень будет найден методом простых итераций.

2 метод

x =

a

x

,

ϕ(x) =

a

x

,

ϕ

0

(x) =

a

x

2

.

Условие

0

(x) < 1

|,

a

x

2

< 1 или

|x| >

a.

Но при

x

0

>

a, 0 < x

1

<

a

x

0

<

a т.е. 0 < x

1

<

a, и метод «зацик-

ливается».

Например,

x

0

= 2

a, x

1

=

1

2

a, x

2

= 2

a, x

3

=

1

2

a и т.д.

3 метод

Запишем метод Ньютона

x = ϕ(x), ϕ(x) = x

f (x)

f

0

(x)

= x

x

2

− a

2x

=

1

2

x +

a

x

.

2.3

Построить итерационный процесс вычисления корней уравнения

x

3

+ 3x

2

− 1 = 0 методом простой итерации.

Решение. Табличным способом выделим отрезки, на концах которых функ-

ция

f (x) имеет разные знаки

x

−3 −2 −1 0 1 2 3

sign f (x)

+

+

− + + +

Таким образом, корни исходного уравнения лежат на отрезках

[

−3, −2],

[

−1, 0] и [0, 1], для каждого из которых построим свой итерационный про-

цесс.


background image

Занятие 2

105

Для

x

∈ [−3, −2] разделим исходное уравнение на x

2

. В результате

получим равносильное уравнение

x = ϕ(x), ϕ(x) =

1

x

2

− 3. Итерационный

процесс для нахождения первого корня:

x

n+1

=

1

x

2

n

−3. Поскольку |ϕ

0

(x)

| =

2

x

3

6

1
4

< 1 для x

∈ [−3, −2], то сходимость имеет место для всех

начальных приближений

x

0

∈ [−3, −2].

Для двух других отрезков исходное уравнение перепишем в виде

x

2

(x +

3)

− 1 = 0. Если x

0

∈ [−1, 0], то определим итерационный процесс x

n+1

=

1

x

n

+3

; если

x

0

∈ [0, 1], то x

n+1

=

1

x

n

+3

. Можно показать, что в про-

цессе итераций соответствующие отрезки отображаются в себя, поэто-

му сходимость построенных итерационных процессов следует из оценки

0

(x)

| =

1
2

1

x+3

3

< 1.

2.4

Пусть

ϕ(x) непрерывно дифференцируема и ϕ

0

(x) не меняет свой

знак на интервале

[x

n

, x

n+1

]. Показать, что если ϕ

0

(x) > 0, то x

n

и

x

n+1

лежат по одну сторону от корня

x

; если же

ϕ

0

(x) < 0, то корень x

заключен между соседними элементами

x

n

и

x

n+1

.

Решение. По теореме Лагранжа

x

n+1

−x

= ϕ(x

n

)

−ϕ(x

) = (x

n

−x

0

(ξ),

где точка

ξ лежит между точками x

n

,

x

. Если

ϕ

0

(x) > 0, то разности

(x

n+1

− x

) и (x

n

− x

) должны иметь одинаковый знак; если ϕ

0

(x) < 0, то

знаки разностей должны отличаться.

x

0

x

2

x

1

x

3

x

ϕ

(x) < 0

x

0

x

2

x

1

x

3

x

ϕ

(x) > 0

· · ·

Рис. 2.1: Задача 2.4

2.5

Определить область начальных приближений

x

0

, для которых ите-

рационный процесс

x

n+1

=

x

3

n

+ 1

20

сходится.