Professional Documents
Culture Documents
Exam Feb 08
Exam Feb 08
2008, 12-3)
1. ) - : BLAS-2 BLAS-3.
. : BLAS-3 ...
BLAS . ,
, BLAS-3 ( Mflops).
) - : ...
. ,
.
) MATLAB M + 20 10 M , M + 20 M 10, M 10 M + 20.
M realmax.
. realmax ... 1. 21023
10 20 .
((M + 20) 10) M = (M 10) M = M M = 0,
((M + 20) M ) 10 = (M M ) 10 = 10, ((M 10) M ) + 20 = (M M ) + 20 = 20.
) A Rnn , b Rn [L, U ] =
lu(A); x = U \(L\b) ( MATLAB LAPACK).
x ;
. LU ,
,
. ( .) < ( .) ( . A).
2. ... .
:
) , .
) ... ,
.
) , .
)
,
.
. ) ,
( .) ) ,
. )
,
.
. ) : (1+1 )(12 ) = 1 +2
j .
.
3. A R10m b Rm , c R10 y c + Ab.
n . ) min ; )
= min
O(1) (. m).
. ) ... / , 10m A, m + 10 c, b, 10
LOAD c
for j = 1 : m
LOAD b(j)
for i = 1 : 10
LOAD A(i, j)
4. ) MATLAB n=3:
A=1
1 2
A=
1 2
1 2 3
A= 1 2 3
1 2 3
kron(A,B) Kronecker A B .
) (, ) ( ) Mflop/s
. A RmA nA , B RmB nB
kron(A,B) = mA nA mB nB .
.
Pn for j=1:n, A = kron(ones(j,1),[1:j]),
end. j=1 j 2 .
, .
%
tic; for j=1:itmax, ; end;
optime = toc/itmax; ops = 0;
for j=1:itmax, ops = ops+j*j; end; mflops = ops*1e-6/toc;
=
5. ) , xy
x y(1 + ) || u, u x, y ,
; , , .
. : ,
(. x y ) ( )
, x y(1 + ) || u.
)
Ax = b (A) := kAkkA1 k . 3 3
(A) x
.
. A, [1, 1, 1e 10],
1e10. , Ax = b,
A, x ,
x
u.
6. ) H Rnn
, . (3 : n, 1), (4 : n, 2), ..., (n, n 1). (
) LU H = n2 + O(n).
.
. k = 1, ...., n 1 ,
( (k + 1, k)).
Pn1
Pn
= k=1 (1 + j=k+1 2) = n(n 1) + O(n) = 1.
():
for k=1:n-1
H(k+1,k) = H(k+1,k)/H(k,k)
for j=k+1:n
H(k+1,k+1:n) = H(k+1,k+1:n) - H(k+1,k)*H(k+1,k+1:n)
end
end
1
0
) A =
0
0
1
2
1
2
1 1
.
3 1
1
4
1
2
Householder () P
, (4, 2) P A B = P AP > .
B ( .) : (
) 0 (3, 2).
. MATLAB, u = [0; 0; A(3 : 4, 2)] + [0, 0, 1, 0]0 norm(A(3 : 4, 2)), u = [0, 0, 8, 4]>
1 1
2
1
0 2
0.2
1.4
B=
0 5 1.88 1.16
0 0 1.16 0.88
uj1 = uj huj +
(2)
= h2 u j +
h4 (4)
u (j + i+ h) + u(4) (j + i h)
24
, 2
(. h) |u(4) |. h ,
(
) . , ,
h .
u(4) , ,
, |u(4) | .
) A R44 b R4 g
Ag = b u .
. [0,10] 4 h =
10/5 = 2 j = jh j = 1, ..., 4.
2 2
2
1
1
Uj1 ( 2 + 102 )Uj + 2 Uj+1 = 20 102
h2
h
h
1
1
1
Uj1 + ( + 102 )Uj Uj+1 = 20 102
4
2
4
U1
0.51 0.25
0
0
U2
0.25
0.51
0.25
0
0 0.25
0.51 0.25 U3
0
0 0.25
0.51
U4
10.2
0.2
=
0.2
50.2
U1 U1
u0 (0) = 40 U1 = U1 160
2h
U1 u 2. , 0,
.
1
1
1
U1 + ( + 102 )U0 U1 = 20 102
4
2
4
4
1
1
1
(U1 160) + ( + 102 )U0 U1 = 20 102
4
2
4
:
0.51 0.5
0
0
0
0.25
0.51 0.25
0
0
0 0.25
0.51 0.25
0
0
0 0.25
0.51 0.25
0
0
0 0.25
0.51
U0
U1
U2
U3
U4
39.8
0.2
0.2
0.2
50.2
0
u (t)
d 1
0
u2 (t) =
dt
1000
u3 (t)
1
0
u1 (t)
0 1 u2 (t)
300 30
u3 (t)
d
u = Au
dt
u := [u1 , u2 , u3 ]> ( t ). Euler
h = 0.8 U (0) = [1, 0, 1]> , t = 2h
Un+1
= Uk + h
s
X
i=1
bi K i
Ki
= f (tn + ci h, Un + h
s
X
aij Kj )
j=1
( - ) Euler.
. ,
s
X
zj
j=0
j!
u0 = u.