수치해석개론1 중간고사 문제풀이 1. 함수 f (x) =Rx
0 et2dt에 대하여 다음에 답하시오.
(1) x = 0을 중심으로 하는 f (x)의 7차 Taylor 다항식 p7(x)를 구하시오. (10점)
f (x) = Z x
0
1 + t2+ t22
2! + t23
3! + t24 4! + · · ·
! dt
=
t + t3
3 + t5
5 · 2!+ t7
7 · 3!+ t9 9 · 4!+ · · ·
x
0
= x + x3 3 + x5
5 · 2!+ x7
7 · 3!+ x9 9 · 4!+ · · · 이므로, p7(x)는
p7(x) = x +x3 3 + x5
5 · 2!+ x7 7 · 3!.
(2) x = 0을 중심으로 하는 f (x)의 2차 Taylor 다항식 p2(x)와 그 나머지항 R2(x)를 이용하여, f (0.01)의 값을 소수점 아래 6자리까지 정확하게 구하시오. (15점) (주의: 소수점 아래 6자리까 지각 자리의 숫자들을 구체적으로 쓰고, 그 근거를 자세히 설명하여야 합니다.)
f0(x) = ex2, f00(x) = 2xex2, f000(x) = 2
1 · ex2+ x · 2xex2
= 2 1 + 2x2 ex2 이므로, 0과 x 사이의 어떤 ξ에 대하여 다음이 성립한다:
f (x) = f (0) + f0(0)x +f00(0)
2! x2+f000(ξ)
3! x3= 0 + 1 · x + 0
2!x2+2 1 + 2ξ2 eξ2 3! x3
= x +1
3 1 + 2ξ2 eξ2x3.
따라서 p2(x) = x이고, 0과 x 사이의 어떤 ξ에 대하여 R2(x) = 13 1 + 2ξ2 eξ2x3이 된다.
0 < R2(0.01) = 1
3 1 + 2ξ2 eξ2· 0.013≤ 0.013 3 max
0≤ξ≤0.01 1 + 2ξ2 eξ2
= 0.013
3 · 1 + 2 · 0.012 e0.012≈ 3.334 × 10−7< 3.335 × 10−7, f (0.01) = p2(0.01) + R2(0.01) = 0.01 + R2(0.01)이므로,
0.010000 = 0.01 < f (0.01) < 0.01 + 3.335 × 10−7 = 0.0100003335.
따라서 f (0.01)의 소수점 아래 6자리까지의 정확한 값은 0.010000 이다.
2. Newton 방법을 이용하여, 다음 방정식의 해를 소수점 아래 6자리까지 정확하게 구하시오. (15점) sin x = ln x.
α를 정해라고 놓으면, sin α − ln α = 0이다. 따라서 f (x) = sin x − ln x로 놓고, Newton 방법 xn+1= xn− f (xn)
f0(xn) = xn−sin xn− ln xn cos xn−x1
n
을 사용한다. f (1) = sin 1 − ln 1 = sin 1 ≈ 0.84147 > 0, f (π) = sin π − ln π = − ln π ≈ −1.14472 < 0 이므로, 초기값을 x0= 2로 잡으면,
x0= 2,
x1≈ 2.2359340638891284225, x2≈ 2.2191855215314233664, x3≈ 2.2191071506437256002, x4≈ 2.2191071489137460334,
|α − x4| ≤ |x4− x3| ≈ |2.2191071489137460334 − 2.2191071506437256002|
= 0.0000000017299795668 < 0.000000002, x4< x3이므로,
x4− 0.000000002 ≤ α ≤ x3
→ 2.2191071469137460334 ≤ α ≤ 2.2191071506437256002.
따라서 구하는 해 α의 소수점 아래 6자리까지의 정확한 값은 2.219107 이다.
(참고: 다른 초기값을 잡을 수도 있다.)
3. 고정점 반복법을 이용하여, 다음 수를 소수점 아래 4자리까지 정확하게 구하시오. (15점) 1 + e−
1+e−(1+e−(··· )) .
α = 1 + e−
1+e−(1+e−(··· )) 로 놓으면, α = 1 + e−α이므로,
g(x) = 1 + e−x
로 놓고 고정점 반복법을 사용한다. 초기값을 x0= 1로 잡으면, x0= 1
x1≈ 1.3678794411714423216, x2≈ 1.2546463800435824958, x3≈ 1.2851766745595298273, x4≈ 1.2766017108293840998, x5≈ 1.2789837588591898443, x6≈ 1.2783199970162038306, x7≈ 1.2785047965350128508, x8≈ 1.2784533337379237039, x9≈ 1.2784676640940735978,
|α − x9| ≤ |x9− x8| ≈ |1.2784676640940735978 − 1.2784533337379237039|
= 0.0000143303561498939 < 0.00002, x9> x8이므로,
x8≤ α ≤ x9+ 0.00002
→ 1.2784533337379237039 ≤ α ≤ 1.2784876640940735978.
따라서 주어진 수 α의 소수점 아래 4자리까지의 정확한 값은 1.2784 이다.
(참고: 다른 초기값을 잡을 수도 있다.) 4. 다음 행렬 A에 대하여 답하시오. (각 15점)
A =
1 4 6 4 20 34 6 34 70
. (1) A의 LDU 분해를 구하시오.
먼저 Doolittle 방법을 사용하여 LU 분해를 한다:
1 4 6 4 20 34 6 34 70
= LU, L =
1 0 0
l21 1 0 l31 l32 1
, U =
u11 u12 u13 0 u22 u23 0 0 u33
→ u11= 1, u12= 4, u13= 6 → l21u11= 4 → l21= 4
→ l21u12+ u22= 20 → u22= 4
→ l21u13+ u23= 34 → u23= 10
→ l31u11= 6 → l31= 6
→ l31u12+ l32u22= 34 → l32= 5 2
→ l31u13+ l32u23+ u33= 70 → u33= 9
→ L =
1 0 0 4 1 0 6 52 1
, U =
1 4 6 0 4 10 0 0 9
따라서 A의 LU 분해는
A = LU =
1 0 0 4 1 0 6 52 1
1 4 6 0 4 10 0 0 9
. 따라서 A의 LDU 분해는 다음과 같다:
A =
1 0 0 4 1 0 6 52 1
1 4 6 0 4 10 0 0 9
=
1 0 0 4 1 0 6 52 1
1 0 0 0 4 0 0 0 9
1 0 0 0 14 0 0 0 19
1 4 6 0 4 10 0 0 9
=
1 0 0 4 1 0 6 52 1
1 0 0 0 4 0 0 0 9
1 4 6 0 1 52 0 0 1
.
(2) A의 Cholesky 분해가 가능한가? 가능하면 구하시오.
Cholesky 앨고리듬 사용:
A = LLt, L =
l11 0 0 l21 l22 0 l31 l32 l33
→
1 4 6 4 20 34 6 34 70
=
l11 0 0 l21 l22 0 l31 l32 l33
l11 l21 l31
0 l22 l32
0 0 l33
→ l211= 1 → l11= 1
→ l11l21= 4 → l21= 4
→ l11l31= 6 → l31= 6
→ l221+ l222= 20 → l22= 2
→ l21l31+ l22l32= 34 → l32= 5
→ l231+ l322 + l233= 70 → l33= 3
→ L =
1 0 0 4 2 0 6 5 3
따라서 A의 Cholesky 분해는 가능하고 다음과 같다:
A =
1 0 0 4 2 0 6 5 3
1 0 0 4 2 0 6 5 3
t
.
참고: 같은 결과를 (1)의 LDU분해 결과를 사용하여 얻을 수도 있다:
A =
1 0 0 4 1 0 6 52 1
1 0 0 0 4 0 0 0 9
1 4 6 0 1 52 0 0 1
=
1 0 0 4 1 0 6 52 1
1 0 0 0 2 0 0 0 3
1 0 0 0 2 0 0 0 3
1 4 6 0 1 52 0 0 1
=
1 0 0 4 2 0 6 5 3
1 4 6 0 2 5 0 0 3
=
1 0 0 4 2 0 6 5 3
1 0 0 4 2 0 6 5 3
t
.
5. 다음 선형방정식의 해를 부분기준화를 사용한 Gauss 소거법을 이용하여 구하시오. (15점)
A−→x =−→ b , A =
0.001 3.000 −1.000 0.001 −1.000 2.000 4.000 2.000 4.000
, −→ b =
3.000 2.000 1.000
, −→x =
x1 x2 x3
. 단, 계산 과정에서 소숫점 아래 네째 자리에서 세째 자리로 반올림하시오.
0.001 3.000 −1.000 3.000 0.001 −1.000 2.000 2.000 4.000 2.000 4.000 1.000
→
4.000 2.000 4.000 1.000 0.001 −1.000 2.000 2.000 0.001 3.000 −1.000 3.000
→
4.000 2.000 4.000 1.000
0 −1.000 −0.0014.000· 2.000 2.000 −0.0014.000 · 4.000 2.000 −0.0014.000 · 1.000 0 3.000 −0.0014.000· 2.000 −1.000 −0.0014.000 · 4.000 3.000 −0.0014.000 · 1.000
−→
0.001
4.000 = 0.00025 → 0.000
4.000 2.000 4.000 1.000
0 −1.000 − 0.000 · 2.000 2.000 − 0.000 · 4.000 2.000 − 0.000 · 1.000 0 3.000 − 0.000 · 2.000 −1.000 − 0.000 · 4.000 3.000 − 0.000 · 1.000
=
4.000 2.000 4.000 1.000 0 −1.000 2.000 2.000 0 3.000 −1.000 3.000
→
4.000 2.000 4.000 1.000 0 3.000 −1.000 3.000 0 −1.000 2.000 2.000
→
4.000 2.000 4.000 1.000
0 3.000 −1.000 3.000
0 0 2.000 −−1.0003.000 · (−1.000) 2.000 −−1.0003.000 · 3.000
−→
−1.000
3.000 = −0.3333 . . . → −0.333
4.000 2.000 4.000 1.000
0 3.000 −1.000 3.000
0 0 2.000 − (−0.333) · (−1.000) 2.000 − (−0.333) · 3.000
=
4.000 2.000 4.000 1.000 0 3.000 −1.000 3.000 0 0 1.667 2.999
→ x3≈2.999
1.667 ≈ 1.7990 . . . → 1.799 x2≈ 1
3.000(1.000x3+ 3.000) ≈ 1
3.000(1.000 · 1.799 + 3.000) =4.799
3.000 ≈ 1.5996 . . . → 1.600 x1≈ 1
4.000(−2.000x2− 4.000x3+ 1.000)
≈ 1
4.000(−2.000 · 1.600 − 4.000 · 1.799 + 1.000) = 1
4.000(−3.200 − 7.196 + 1.000)
=−9.396
4.000 = −2.349 → −2.349
참고로 (정확한) 해는 다음과 같다:
x1= −2.3525878466312944239 . . . , x2= 1.6014115527079787767 . . . , x3= 1.8018820702773050355 . . .