Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 17 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
17
Dung lượng
166,98 KB
Nội dung
File này có 3 phần.
Phần 1. Các câu lệnh đơn giản của matlab trong đại sốtuyến tính.
Phần 2. Các đề tài đại sốtuyếntính cho sinh viên tham khảo.
Phần 3. Các chương trình tham khảo.
Phần 1.
STT
Hàm matlab Mô tả
SỐ PHỨC
real(z) Lấy phần thực của z
imag(z) Lấy phần ảo của z
conj Lấy liên hợp của z
abs(z) Lấy module của z
angle(z)
TẠO MA TRẬN
1
A=[1 2 3;2 3 4] tạo ma trận cở 2,3
2
B=[3;2;5] tạo ma trận cột cở 3 hàng, 1cột.
3
linspace(a,b) Tạo 1 vector hàng gồm n điểm cách đều nhau, điểm đầu a, điểm cuối b
4
eye(n) tạo ma trận đơn vị cấp n cho trước.
5
eye(m,n) Tạo ma trận đơn vị mở rộng (aii = 1, aij = 0, nếu I khác j)
6
zeros(n) Tạo ma trận 0 cấp n
7
ones(n) Tạo ma trận cấp n có tất cả các ptử đều bằng 1
8
diag(v) Tạo ma trận chéo với các p/tử trên đường chéo là các pt của vécto v
THAM CHIẾU MA TRẬN
1
A(i, j) Tham chiếu phần tử dòng i cột j
2
A(i, :) Tham chiếu dòng i
3
A(:, j) Tham chiếu cột j
4
A(i:k,:) Tham chiếu từ dòng i đến dòng k
5
A(:, j:k) Tham chiếu từ cột j đến cột k
CÁC PHÉP TOÁN TRÊN MA TRẬN
1
size(A) Kích cỡ ma trận A, trả về số hàng, số cột của ma trận
2
size(A,1) Số dòng của ma trận A
3
size(A, 2) Số cột của ma trận A
numel(A) Số phần tử của A
4
reshape(A) Thay đổi kích cỡ ma trận
5
isempty(A) Kiểm tra A có đúng là ma trận rỗng không.
6
A=[ ] Tạo ma trận rỗng
7
A(i, :)=[ ] Xóa dòng i của A
8
A(:, j) =[ ] Xóa cột j của A
9
rref(A) Tạo ma trận bậc thang từ A
10
[a b]=rref(A) A=ma trận bậc thang, b=vector chứa chỉ số các cột cơ bản
fliplr(A) Đảo các phần tử của A từ trái sang phải
flipud Đảo các phần tử của A từ trên xuống dưới
11
rank(A) Tìm hạng ma trận A
12
A’
A
T
(n
ế
u A th
ự
c), l
iên hợp của A
T
(n
ế
u A ph
ứ
c)
13
A.’ Chuyển vị của ma trận phức
14
trace(A) Vết của ma trận A = tổng các phần tử trên đường chéo của A
15
A*B Tính tích AB
16
A^n Tính A^n với A là ma trận vuông
17
A±B Tính tổng, hiệu hai ma trận
18
α*A Nhân α với từng phần tử của ma trận
19
α+A Cộng α với từng phần tử của ma trận
20
det(A) Tính định thức ma trận vuông A
21
inv(A) ma trận nghịch đảo của ma trận A
22
A\b Giải hệ phương trình Ax = b
23
A/B
X = A/B ⇔ X*B = A
24
A\B
X = A\B ⇔ A*X = B
25
null(A) Cơ sở của kg nghiệm hệ Ax=0, null(A,’r’) cho hệ nghiệm dạng hữu tỷ
26
tril(A) Trích ra ma trận tam giác dưới từ ma trận A
27
triu(A) Trích ra ma trận tam giác trên từ ma trận A
gs(A) Trực giao hóa Gram-Schmidt ma trận(A)
eig(A) xuất ra trị riêng của ma trận A
[P,D]=eig(A) P
-
1
AP = D , nếu A đối xứng thực, P la ma trận trực giao(P.P
T
= I)
CÁC PHÉP TOÁN TRÊN VECTOR
norm(v) Độ dài của vector v (chuẩn Euclide của v)
length(v) Số phần tử của v
max(X) Trả về giá trị lớn nhất trong vector X
min(X) Trả về giá trị nhỏ nhất trong vector X
dot(u,v) Tích vô hướng chính tắc của u, v
cross(u,v) Tích hữu hướng của u, v
TẠO CÁC MA TRẬN ĐẶC BIỆT
vander(v) Tạo ma trận Vandermonde dựa trên vécto v
hadamard(n) Tạo ma trận Hadamard cấp n.
pascal(n) Tạo ma trận pascal cấp n.
hilb Ma trận Hilbert
chol(A) Phân tích ma trận A thành tích 2 ma trận theo phương pháp choleski
[Q,R]=qr(A) Phân tích ma trận (A) thành tích 2 ma trận Q và R
[L,U]=lu(A) Phân tích ma trận(A) thành tích 2 ma trận L và U
roots Tìm nghiệm của đa thức
polyvalm
tính trị đa thức mà các biến là ma trận
polyval
Tính giá trị của đa thức
polyfit Xấp xỉ bằng đa thức
Một số comments.
1/ MATLAB cho phép ta nhập số liệu từ dòng lệnh. Khi nhập ma trận từ bàn phím ta phải tuân theo các quy định
sau :
• ngăn cách các phần tử của ma trận bằng dấu “,” hay dấu trống
• dùng dấu “;” để kết thúc một hàng
• bao các phần tử của ma trận bằng cặp dấu ngoặc vuông [ ]
Ví dụ : >> A = [ 1 2 3 ]
kết quả là A =
1 2 3
>> A = [1;2;3]
kết quả là A =
1
2
3
3/ Chỉ số: Phần tử ở hàng i cột j của ma trận m×n có kí hiệu là A(i, j). Tuy
nhiên ta cũng có thể tham chiếu tới phần tử của mảng nhờ một chỉ số, ví dụ A(k) với k
= i + (j - 1)m. Cách này thường dùng để tham chiếu vec tơ hàng hay cột. Trong trường
hợp ma trận đầy đủ thì nó được xem là ma trận một cột dài tạo từ các cột của ma trận
ban đầu. Như vậy viết A(5) có nghĩa là tham chiếu phần tử A(2, 2).
Để xác định kích thước của một ma trận ta dùng lệnh length(trả về kích thước
lớn nhất) hay size(số hàng và cột). Ví dụ:
c = [1 2 3 4; 5 6 7 8];
length(c)
[m, n] = size(c)
4/ Toán tử “:” : Toán tử “:” là một toán tử quan trọng của MATLAB. Nó xuất
hiện ở nhiều dạng khác nhau.
Ví dụ: Lệnh : 1:10 tạo một vec tơ hàng chứa 10 số nguyên từ 1 đến 10.
Lệnh: 100: -7: 50 tạo một dãy số từ 100 đến 51, giảm 7 mỗi lần.
rand tạo ra ma trận mà các phần tử ngẫu nhiên phân bốđều
d = rand(4, 4)
randn tạo ra ma trận mà các phần tử ngẫu nhiên phân bố trực giao
e = randn(3, 3)
magic(n) tạo ra ma trận cấp n gồm các số nguyên từ 1 đến n
2
với tổng các hàng
bằng tổng các cột (n phải lớn hơn hay bằng 3).
pascal(n) tạo ra ma trận xác định dương cấp n mà các phần tử lấy từ tam giác Pascal.
Lệnh :
pascal(4) tạo ra ma trận xác định dương cấp 4
Ta có thể lắp ghép(concatenation) các ma trận có sẵn thành một
ma trận mới. Ví dụ:
a = ones(3, 3)
b = 5*ones(3, 3)
c = [a + 2; b]
Xoá hàng và cột : Ta có thể xoá hàng và cột từ ma trận bằng dùng dấu []. Để
xoá cột thứ 2 của ma trận b ta viết:
b(:, 2) = []
Các lệnh xử lí ma trận:
Cộng : X= A + B
Trừ : X= A - B
Nhân : X= A * B
: X.*A nhân các phần tử tương ứng với nhau
Chia : X = A/B lúc đó X*B = A
: X = A\B lúc đó A*X = B
: X=A./B chia các phần tử tương ứng với nhau
Luỹ thừa : X = A^2
: X = A.^2
Nghịch đảo : X = inv(A)
Định thức : d = det(A)
Số chiều của họ vector A : n=ndims(A)
Tổng các phần tử trên đường chéo chính ma trận A : s = trace(A)
Phần 2.
Yêu cầu: Sinh viên không được dùng các hàm sẵn có trong matlab để viết chương trình.
Các đề tài.
1/ Dùng các phép biến đổi sơ cấp đưa ma trận về dạng bậc thang và tìm hạng của ma trận A tùy ý.
Yêu cầu: Input: cho phép nhập vào một ma trận tùy ý. Output: Ma trận bậc thang và r(A).
2/ Nhân hai ma trận với nhau.
Yêu cầu: Input: cho phép nhập vào hai ma trận A và B. Chương trình phải kiểm tra phép nhân có thực hiện được
hay không? Output: Ma trận tích.
3/ Tính A
m
, với m là số tự nhiên cho trước.
Yêu cầu: Input: Nhập vào một ma trận vuông tùy ý và số tự nhiên m. Output: một ma trận A
m
.
4/ Tính định thức của ma trận bằng biến đổi sơ cấp.
Yêu cầu: Input: cho phép nhập vào một ma trận vuông tùy ý. Output: det(A).
5/ Tính định thức của ma trận vuông A bằng cách khai triển theo một hàng tùy ý (hoặc một cột tùy ý) qua các bù
đại số.
Yêu cầu: Input: cho phép nhập vào một ma trận vuông tùy ý. Output: det(A).
6/ Tìm hạng của ma trận bằng các sử dụng các định thức con (phương pháp định thức bao quanh).
7/ Tìm ma trận nghịch đảo của ma trận vuông A bằng biến đổi sơ cấp đối với hàng cho ma trận
(
)
(
)
1
|
hang
A I I A
−
→
.
Yêu cầu: Input: cho phép nhập vào một ma trận vuông tùy ý. Chương trình kiểm tra tính khả nghịch của ma trận.
Output: Ma trận nghịch đảo:
1
.
A
−
.
8/ Tìm ma trận nghịch đảo bằng công thức
1
1
det( )
A
A P
A
−
=
.
Yêu cầu: Input: cho phép nhập vào một ma trận vuông tùy ý. Chương trình kiểm tra tính khả nghịch của ma trận.
Output: Ma trận nghịch đảo:
1
.
A
−
.
9/ Phân tích LU của ma trận A. Phân tích PA=LU.
Yêu cầu: Input: cho phép nhập vào một ma trận vuông cấp n. Chương trình kiểm tra A có thể phân tích thành A =
LU hay không. Nếu không thì tìm ma trận P và phân tích PA= LU. Output: Ma trận nghịch đảo: P, L, U.
11/ Kiểm tra tính xác định dương của ma trận vuông A. (định nghĩa: ma trận vuông A gọi là xác định dương, nếu
các định thức con chính đều dương).
10/ Phân tích Cholesky:
T
A R R
=
, trong đó A là ma trận đối xứng, xác định dương.
11/ Giải hệ phương trình bằng phép biến đổi Gauss.
Yêu cầu: Input: cho phép nhập vào một ma trận tùy ý A và ma trận b. Output: Nghiệm của hệ ở dạng vécto.
Ma trận A và b có thể được đọc từ file *.txt
12/ Giải hệ Cramer AX = b với A vuông,
det( ) 0
A
≠
bằng công thức
1 2
( , , , )
n
x x x x
=
,
trong đó
det( )
det( )
i
i
A
x
A
=
.
13/ Tìm tọa độ của một vécto trongmột cơ sở cho trước.
Yêu cầu: Input: cho một vécto và một cơ sở E. Output: tọa độ của vécto trong cơ sở E.
14/ Tìm ma trận chuyển cơ sở từ E sang F.
Yêu cầu: Input: cho hai cơ sở E và F. Output: ma trận chuyển cơ sở P.
15/ Tìm hạng của họ vécto.
Yêu cầu: Input: cho một họ vécto. Output: hạng của họ vécto này và các vécto độc lập tuyếntính tối đa của họ
16/ Kiểm tra tính độc lập tuyến tính, phụ thuộc tuyếntính của họ vécto. Kiểm tra vécto x có là tổ hợp tuyếntính
của họ vécto M hay không?
17/ Tìm cơ sở, số chiều của không gian con sinh ra bởi họ vécto M.
Yêu cầu: Input: cho phép nhập vào một họ vécto. Output: Số chiều và cơ sở của không gian con sinh ra bởi M.
18/ Tìm cơ sở và số chiều của không gian nghiệm của hệ thuần nhất AX = 0.
Yêu cầu: Input: cho phép nhập vào ma trận A. Output: Số chiều và cơ sở của không gian nghiệm.
19/ Tìm số chiều và cơ sở của không gian giao
F G
∩
và không gian tổng
F G
+
của hai không gian con F và G.
Input: nhập vào hai không gian con (tập sinh của hai không gian con F và G, hoặc nhập hệ pt). Output: số chiều và
cơ sở của giao và tổng.
20/ Dùng quá trình trực giao hóa Gram-Schmidt, tìm họ trực giao, họ trực chuẩn của họ vécto độc lập tuyến tính.
Yêu cầu: Input: cho phép nhập vào một họ vécto gồm m vécto độc lập tuyếntính (hoặc họ vécto bất kỳ, chương
trình phải kiểm tra tính độc lập tuyếntính của họ vécto). Output: Họ gồm m vécto trực giao, có thể trực chuẩn.
21/ Phân tích QR của ma trận vuông A bằng quá trình Gram – Schmidt.
Yêu cầu: Input: cho phép nhập vào ma trận vuông A tùy ý. Chương trình kiểm tra A có phân tích QR hay không
(điều kiện: các cột của A là họ độc lập tuyến tính). Output: Ma trận Q và ma trận R.
22/ Tìm hình chiếu vuông góc của một vécto cho trước xuống không gian con. Tìm khoảng cách từ vécto đến không
gian con.
Yêu cầu: Input: cho phép nhập vào một họ vécto M và vécto x. Output: hình chiếu vuông góc của vecto x xuống
không gian con F được sinh ra bởi M và khoảng cách từ x đến F.
23/ Cho ánh xạ tuyếntính f biết ma trận của f trong cơ sở E là A. Tìm ảnh của một vécto cho trước.
24/ Cho ánh xạ tuyếntính f biết ma trận của f trong cơ sở E là A. Tìm cơ sở, số chiều của nhân và ảnh của ánh xạ
tuyến tinh.
25/ Cho ánh xạ tuyếntính f. Tìm ma trận của ánh xạ tuyếntínhtrong cơ sở E cho trước.
26/ Cho ma trận vuông A. Tìm trị riêng, vécto riêng của ma trận A.
27/ Cho ma trận vuông A. Kiểm tra tính chéo hóa của A. Nếu được, tìm ma trận P và ma trận D.
28/ Cho ma trận đối xứng, thực vuông A. Chéo hóa trực giao ma trận A.
29/ Cho ma trận vuông A chéo hóa được. Tính A
m
.
30/ Cho dạng toàn phương
( )
T
Q X X AX
=
. Kiểm tra dạng toàn phương xác định dương hay không.
31/ Cho dạng toàn phương
( )
T
Q X X AX
=
. Đưa dạng toàn phương về chính tắc bằng biến đổi trực giao.
32/ Cho dạng toàn phương
( )
T
Q X X AX
=
. Phân loại dạng toàn phương.
33/ Ứng dụng ma trận nghịch đảo trong lý thuyết mật mã
34/ Ứng dụng đại sốtuyếntính trong bài toán xấp xĩ hàm.
35/ Ứng dụng đại sốtuyếntính trong lý thuyết đồ họa.
Phần 3. Các chương trình tham khảo. Các chương trình này được download từ mạng hoặc phần lớn do sinh viên
viết nên chưa chắc là tối ưu. Các Thầy cô chỉ tham khảo.
1/ dùng biến đổi sơ cấp đưa ma trận về dạng bậc thang
function A=bdsc_bacthang(B)
A=B;
[m,n]=size(A);
h=1;
for k=1:m-1;
for j=h:n;
for i=k:m;
if(A(i,j)~=0)
break;
end;
end;
if(A(i,j)~=0)
break;
end;
end;
if(i~=k)
for l=h:n;
a=A(k,l);
A(k,l)=A(i,l);
A(i,l)=a;
end;
end;
if(j~=h)
h=j;
end;
for i=k+1:m;
if (A(i,h)~=0)
a=A(i,h)/A(k,h);
for j=h:n;
A(i,j)=A(i,j)-a*A(k,j);
end;
end;
end;
h=h+1;
end;
disp('ma tran bac thang');
disp(A);
end
1b/ dùng biến đổi sơ cấp đưa về dạng bậc thang, tính hạng và tính định thức.
function [B,dinhthuc,hang] = ladder(A) % chuyen ve bac thang
% Dong thoi tim dinh thuc va hang cua ma tran dua vao bdsc
if nargin <1 error ('phai nhap vao ma tran can phan tich');
end;
N = size(A,1);%1 la dong,2 la cot,i la hang,j la cot
m = size(A,2);
l=A;
i=1;
d=0;
if N~=m
dinhthuc ='*phai la ma tran vuong*';
end;
for h=1:N
k=l(h:N,:);
k=k(:,h:m);
for j=1:(m-h+1) % tim phan tu khac khong dau tien theo tt cot hang
for i=1:(N-h+1)
if k(i,j)~=0
e=i;
if h==1
f=j;
end;
if h~=1
f=1;
end;
break;
end;
end;
if k(i,j)~=0
break;
end;
end;
d=d+(e-1)*(N-1)+(f-1)*(m-1);
k=circshift(k, [-(e-1), -(f-1)]);
p=[l(1:(h-1),h:m);k];
l=[l(1:N,1:(h-1)) p];
for g=h:(N-1) % khu cac phan tu theo sau ben duoi
for i=(g+1):N
if l(g,g)~=0
c=l(i,g)/l(g,g);
for j=g:m
l(i,j)=l(i,j)-(c*l(g,j));
end;
end;
if l(g,g)==0
break;
end;
end;
if l(g,g)==0
break;
end;
end;
end;
E=l(2:N,1:m,:); % bien doi de dinh thuc ma tran khong thay doi
F=l(1,1:m);
F=((-1)^d)*F;
B=[F;E];%ma tran B thay the boi B ma xet su thay doi dau hang 1
hang=0;
for s=1:N %tim hang ma tran
i=N+1-s;
for j=1:m
if B(i,j)~=0
hang=i;
break;
end;
end;
if B(i,j)~=0
break;
end;
end;
if N==m % tim dinh thuc ma tran
dinhthuc=1;
for i=1:N
dinhthuc=dinhthuc*B(i,i);
end;
end;
2/ Giải hệ phương trình bằng phương pháp Cramer
function [X] = cramer(A,b)
if nargin <2 error ('phai nhap vao ma tran can phan tich');
end;
N = size(A,1);%1 la dong,2 la cot,i la hang,j la cot
m = size(A,2);
if N~=m error ('khong phai la he cramer,nhap lai ma tran he so A');
end;
n = size(b,1);
M = size(b,2);
if n>M
b=b';
if M~=1 error ('kich co he so tu do khong phu hop nhap lai b');
end;
if n~=N error ('kich co he so tu do khong phu hop nhap lai b');
end;
end;
if M>n
if n~=1 error ('kich co he so tu do khong phu hop nhap lai b');
end;
if M~=N error ('kich co he so tu do khong phu hop nhap lai b');
end;
end;
if det(A)==0 error ('det=0,khong the dung phuong phap nay');
end;
l=A;
X=0;
b=b';
for j=1:N
if j==1
l=A;
l(:,j)=[];
l=[b l];
X(1,j)=det(l)/det(A);
end;
if j>=2
if j<N
l=A;
a=l;
x=a(1:N,1:(j-1),:);
y=a(1:N,(j+1):N,:);
l=[x,b];
l=[l y];
X(1,j)=det(l)/det(A);
end;
if j==N
l=A;
l(:,j)=[];
l=[l b];
X(1,j)=det(l)/det(A);
end;
end;
end;
3/ Giải hệ bằng phương pháp khử Gauss
function [B,X] = gauss(A,b)
if nargin <1 error ('phai nhap vao ma tran can phan tich');
end;
N = size(A,1);%1 la dong,2 la cot,i la hang,j la cot
m = size(A,2)+1;
z = size(b,1);%kiem tra he so tu do
t = size(b,2);
c=b;
if t>z
for j=1:t % chuyen vi ma tran
for i=1:z
b(j,i)=c(i,j);
end;
end;
b=b(:,1:z);
end;
if z>t
b=c;
end;
z = size(b,1);
t = size(b,2);
%if z~=1
% if t==N error ('kich co he so tu do khong phu hop');
% end;
%end;
%if t~=1 error ('kich co he so tu do khong phu hop.');
%end;
l=[A b];
i=1;
d=0;
for h=1:N
k=l(h:N,:);%chon hang thu h den N
k=k(:,h:m); %chon cot thu h den m
for j=1:(m-h+1)
for i=1:(N-h+1)
if k(i,j)~=0
e=i;
if h==1
f=j;
end;
if h~=1
f=1;
end;
break;
end;
end;
if k(i,j)~=0
break;
end;
end;%tim phan tu khac 0 dau tien de hoan doi
k=circshift(k, [-(e-1), -(f-1)]);
p=[l(1:(h-1),h:m);k];
l=[l(1:N,1:(h-1)) p];
for g=h:(N-1)
for i=(g+1):N
if l(g,g)~=0
c=l(i,g)/l(g,g);
for j=g:m
l(i,j)=l(i,j)-(c*l(g,j));
end;
end;
if l(g,g)==0
break;
end;
end;
if l(g,g)==0
break;
end;
end;% bien doi so cap khu cac phan tu ben duoi
end;
B=l;
rA=0;
rB=0;
for s=1:N
i=N+1-s;
for j=1:(m-1)
if B(i,j)~=0
rA=i;
break;
end;
end;
if B(i,j)~=0
break;
end;
end;%tim hang ma tran he so
for s=1:N
i=N+1-s;
for j=1:m
if B(i,j)~=0
rB=i;
break;
end;
end;
if B(i,j)~=0
break;
end;
end;% tim hang ma tran mo rong
if rA<rB
X= ('phuong trinh vo nghiem');
[...]... = A\B; s = char(d(:)'); Ch y th chương trình trên: a/ s=’Toi hoc daisotuyen tinh’ b/ A=pascal(4) t o ra ma tr n kh pascal c p 4) c/B=code(s,A) d/ gi i mã dcode(B,A) ngh ch tùy ý( trong trư ng h p này dùng mt 10/ ng d ng trong lý thuy t m t mã function [xt, yt] = rot2d(t, x, y) % Rotation of a two-dimensional object that is represented by two % vectors x and y The angle of rotation t is in the degree... polynomial of degree n = %2.0f',n)) legend('data points','fitting polynomial') Ch y th chương trình trên b ng cách nh p: a/ t = linspace(0, pi/2, 10); t = t'; b/ y = sin(2*t); c/ c = fit(3, t, y) 9/ ng d ng trong lý thuy t m t mã o n code dùng mã hóa thông tin function B = code(s, A) % String s is coded using a nonsingular matrix A % A coded message is stored in the vector B p = length(s); [n,n] = size(A);... sum=0; for k=1:N-1 sum=sum+l(N,k)*u(k,N); end; u(N,N)=A(N,N)-sum; dinhthuc=1; for i=1:N dinhthuc = dinhthuc*u(i,i)*l(i,i); end; end; A=a; 6/ Dùng quá trình tr c giao Gram-Schmidt chu n ưa h c l p tuy n tính v function orthonormal_basis = Gram_Schmidt_process(A) matrix_size = size(A); m = matrix_size(1,1); n = matrix_size(1,2); if A == zeros(m,n) error('There does not exist any type of basis for the zero . câu lệnh đơn giản của matlab trong đại số tuyến tính. Phần 2. Các đề tài đại số tuyến tính cho sinh viên tham khảo. Phần 3. Các chương trình tham khảo. Phần 1. STT Hàm matlab Mô tả SỐ PHỨC. phương. 33/ Ứng dụng ma trận nghịch đảo trong lý thuyết mật mã 34/ Ứng dụng đại số tuyến tính trong bài toán xấp xĩ hàm. 35/ Ứng dụng đại số tuyến tính trong lý thuyết đồ họa. Phần 3. Các chương. Tìm ảnh của một vécto cho trước. 24/ Cho ánh xạ tuyến tính f biết ma trận của f trong cơ sở E là A. Tìm cơ sở, số chiều của nhân và ảnh của ánh xạ tuyến tinh. 25/ Cho ánh xạ tuyến tính f. Tìm