- •Вектор-столбцы и вектор-строки Часть 1
- •Вектор-столбцы и вектор-строки Часть 2
- •Обращения к элементам вектора
- •Применение функции обработки данных к векторам
- •Поэлементные операции с векторами
- •Построение таблицы значений функции
- •Сложение, вычитание, умножение, транспортирование и возведение в степень
- •Считывание и запись данных. Блочные матрицы
Сложение, вычитание, умножение, транспортирование и возведение в степень
>> s=a+c
s =
6 0 6
6 6 3
>> r=c-a
r =
0 -2 8
2 -2 -3
>> s=a+b
??? Error using ==> plus
Matrix dimensions must agree.
>> p=c*b
p =
-25 9 11
20 26 -4
>> p=a*3
p =
9 3 -3
6 12 9
>> p=3*a
p =
9 3 -3
6 12 9
>> b'
ans =
4 2 -5
3 7 1
-1 0 2
>> b.'
ans =
4 2 -5
3 7 1
-1 0 2
>> k=[1-i, 2+3i; 3-5i, 1-9i]
k =
1.0000 - 1.0000i 2.0000 + 3.0000i
3.0000 - 5.0000i 1.0000 - 9.0000i
>> k'
ans =
1.0000 + 1.0000i 3.0000 + 5.0000i
2.0000 - 3.0000i 1.0000 + 9.0000i
>> k.'
ans =
1.0000 - 1.0000i 3.0000 - 5.0000i
2.0000 + 3.0000i 1.0000 - 9.0000i
>> b2=b^2
b2 =
27 32 -6
22 55 -2
-28 -6 9
>> (a+c)*b^3*(a-c)'
ans =
1848 1914
10290 3612
>> a=[1 3 -2];
>> b=[2 0 1; -4 8 -1; 0 9 2];
>> c=[-8; 3; 4];
>> a*b*c
ans =
74
>> a=[1.2 0.3 -0.2; 0.5 2.1 1.3; -0.9 0.7 5.6];
>> b=[1.3; 3.9; 5.4];
>> x=a\b
x =
1.0000
1.0000
1.0000
>> a*x
ans =
1.3000
3.9000
5.4000
>> a=[];
>> b=[];
Считывание и запись данных. Блочные матрицы
>> a=load('matr.txt');
>> b=load('rside.txt');
>> x=a\b;
>> save 'sol.txt' x -ascii
>> save 'sol.txt' x -ascii -double
>> save 'matra.txt' a -ascii
>> close all
>> a=[-1 4; -1 4];
>> b=[2 0;0 5];
>> c=[3 -3;-3 3];
>> d=[8 9; 1 10];
>> k=[a b; c d]
k =
-1 4 2 0
-1 4 0 5
3 -3 8 9
-3 3 1 10
>> k=[[a;c][b;d]]
??? k=[[a;c][b;d]]
|
Error: Unbalanced or unexpected parenthesis or bracket.
>> k=[[a;c] [b;d]]
k =
-1 4 2 0
-1 4 0 5
3 -3 8 9
-3 3 1 10
>> s=[2 0; 0 3];
>> a=[4;5];
>> b=[-9 9];
>> m=[s a;b 2.5]
m =
2.0000 0 4.0000
0 3.0000 5.0000
-9.0000 9.0000 2.5000
>> m=[[s;b] [a;2.5]]
m =
2.0000 0 4.0000
0 3.0000 5.0000
-9.0000 9.0000 2.5000
>> r=[1 2;3 4];
>> q=[5 6 7; 8 9 10; 11 12 13];
>> t=[-3 5; 6 7];
>> z=blkdiag(r, q, t)
z =
1 2 0 0 0 0 0
3 4 0 0 0 0 0
0 0 5 6 7 0 0
0 0 8 9 10 0 0
0 0 11 12 13 0 0
0 0 0 0 0 -3 5
0 0 0 0 0 6 7
Блочные матрицы часть 1\2
>> p=[1 2 0 2; 4 10 12 5; 0 11 10 5; 9 2 3 5];
>> p1=p(2:3,2:3)
p1 =
10 12
11 10
>> p1=p(2,:)
p1 =
4 10 12 5
>> p1=p(2, 2:end)
p1 =
10 12 5
>> m=[2 0 3; 1 1 4; 6 1 3];
>> m(1,:)=[];
>> m
m =
1 1 4
6 1 3
>> m(:, 2:3)=[]
m =
1
6
>> a(1:5, 1:5)=0
a =
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
>> a(1,:)=1
a =
1 1 1 1 1
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
>> a(end, 3:end)=-1
a =
1 1 1 1 1
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 -1 -1 -1
>> a=zeros(3,6)
a =
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
>> a=zeros(3)
a =
0 0 0
0 0 0
0 0 0
>> t=eye(4)
t =
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
>> t=eye(4,8)
t =
1 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0
0 0 1 0 0 0 0 0
0 0 0 1 0 0 0 0
>> e=ones(3,8)
e =
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
>> e=ones(3)
e =
1 1 1
1 1 1
1 1 1
>> r=rand(3,5)
r =
0.8147 0.9134 0.2785 0.9649 0.9572
0.9058 0.6324 0.5469 0.1576 0.4854
0.1270 0.0975 0.9575 0.9706 0.8003
>> rn=rand(3,5)
rn =
0.1419 0.7922 0.0357 0.6787 0.3922
0.4218 0.9595 0.8491 0.7577 0.6555
0.9157 0.6557 0.9340 0.7431 0.1712
>> rn=randn(3,5)
rn =
0.8884 -0.8095 0.3252 -1.7115 0.3192
-1.1471 -2.9443 -0.7549 -0.1022 0.3129
-1.0689 1.4384 1.3703 -0.2414 -0.8649
>> rand(3)
ans =
0.4898 0.7094 0.6797
0.4456 0.7547 0.6551
0.6463 0.2760 0.1626
>> randn(3)
ans =
-1.1135 -0.7697 1.1174
-0.0068 0.3714 -1.0891
1.5326 -0.2256 0.0326
>> r=rand(1,6)
r =
0.6991 0.8909 0.9593 0.5472 0.1386 0.1493
>> d=[1;2;3;4];
>> b=diag(d)
b =
1 0 0 0
0 2 0 0
0 0 3 0
0 0 0 4
>> d=[1;2];
>> d1=diag(d,2)
d1 =
0 0 1 0
0 0 0 2
0 0 0 0
0 0 0 0
>> d1=diag(d,-2)
d1 =
0 0 0 0
0 0 0 0
1 0 0 0
0 2 0 0
>> a=[10 1 2; 1 20 3; 2 3 30]
a =
10 1 2
1 20 3
2 3 30
>> d=diag(a)
d =
10
20
30
>> m=[eye(5) 2*ones(5); 3*ones(5) -4*eye(5)];
>> save 'm.txt' m -ascii
>> m
m =
1 0 0 0 0 2 2 2 2 2
0 1 0 0 0 2 2 2 2 2
0 0 1 0 0 2 2 2 2 2
0 0 0 1 0 2 2 2 2 2
0 0 0 0 1 2 2 2 2 2
3 3 3 3 3 -4 0 0 0 0
3 3 3 3 3 0 -4 0 0 0
3 3 3 3 3 0 0 -4 0 0
3 3 3 3 3 0 0 0 -4 0
3 3 3 3 3 0 0 0 0 -4
>> g=2*eye(7)diag(ones(1,6), 1)+diag(ones(1,6), -1)
??? g=2*eye(7)diag(ones(1,6), 1)+diag(ones(1,6), -1)
|
Error: Unexpected MATLAB expression.
>> g=2*eye(7)diag(ones(1,6), 1)+diag(ones(1,6)), -1)
??? g=2*eye(7)diag(ones(1,6), 1)+diag(ones(1,6)), -1)
|
Error: Unexpected MATLAB expression.
>> g=2*eye(7) +diag(ones(1,6), 1)+diag(ones(1,6), -1)
g =
2 1 0 0 0 0 0
1 2 1 0 0 0 0
0 1 2 1 0 0 0
0 0 1 2 1 0 0
0 0 0 1 2 1 0
0 0 0 0 1 2 1
0 0 0 0 0 1 2
>> save 'g.txt' g -ascii
>>clc
Визуализация матриц
>> load 'm.txt'
>> imagesc(m)
>> colorbar
>>colormap(gray)
>> load 'g.txt'
>> imagesc(g)
>> colorbar
>> help imagesc
IMAGESC Scale data and display as image.
IMAGESC(...) is the same as IMAGE(...) except the data is scaled
to use the full colormap.
IMAGESC(...,CLIM) where CLIM = [CLOW CHIGH] can specify the
scaling.
See also image, colorbar, imread, imwrite.
Reference page in Help browser
doc imagesc
Поэлементные операции и встроенные функции Часть 1\2
>> a=[2 5 -1; 3 4 9];
>> b=[-1 2 8; 7 -3 -5];
>> c=a.*b
c =
-2 10 -8
21 -12 -45
>> r1=a./b
r1 =
-2.0000 2.5000 -0.1250
0.4286 -1.3333 -1.8000
>> r2=a.\b
r2 =
-0.5000 0.4000 -8.0000
2.3333 -0.7500 -0.5556
>> p=a.^2
p =
4 25 1
9 16 81
>> ab=a.^b
ab =
1.0e+003 *
0.0005 0.0250 0.0010
2.1870 0.0000 0.0000
>> format short
>> ab
ab =
1.0e+003 *
0.0005 0.0250 0.0010
2.1870 0.0000 0.0000
>> a=[pi/2 -pi/2 0; pi -pi 2*pi; 0 2*pi pi/3]
a =
1.5708 -1.5708 0
3.1416 -3.1416 6.2832
0 6.2832 1.0472
>> c=cos(a)
c =
0.0000 0.0000 1.0000
-1.0000 -1.0000 1.0000
1.0000 1.0000 0.5000
>> m=[1 -2 -4; 3 -6 4; 2 -2 0];
>> s=sum(m)
s =
6 -10 0
>>s2=sum(m,2)
s2 =
-5
1
0
>> s=sum(m,1)
s =
6 -10 0
>> p=prod(m)
p =
6 -24 0
>> p2=prod(m,2)
p2 =
8
-72
0
>> mc=sort(m)
mc =
1 -6 -4
2 -2 0
3 -2 4
>> mr=sort(m,2)
mr =
-4 -2 1
-6 3 4
-2 0 2
>> [mc, ind]=sort(m)
mc =
1 -6 -4
2 -2 0
3 -2 4
ind =
1 2 1
3 1 3
2 3 2
>> mx=max(m)
mx =
3 -2 4
>> mn=min(m)
mn =
1 -6 -4
>> [mx, k]=max(m)
mx =
3 -2 4
k =
2 1 2
>> [mn, n]=min(m)
mn =
1 -6 -4
n =
1 2 1
>> p=[4 3 -1
2 0 7
4 5 8];
>> q=[10 0 11
-5 3 2
4 7 9];
>> s=max(p,1)
s =
4 3 1
2 1 7
4 5 8
>> mx=max(s, [], 2)
mx =
4
7
8
>> [mx, n]=max(s, [], 2)
mx =
4
7
8
n =
1
3
3
>> q1=rot90(p)
q1 =
-1 7 8
3 0 5
4 2 4
>> q2=rot90(q1)
q2 =
8 5 4
7 0 2
-1 3 4
>> fliplr(q2)
ans =
4 5 8
2 0 7
4 3 -1
>> q3=[1; 2; 3; 4; 5];
>> fliplr(q3)
ans =
1
2
3
4
5
>> help datafun
Data analysis and Fourier transforms.
Basic operations.
max - Largest component.
min - Smallest component.
mean - Average or mean value.
median - Median value.
std - Standard deviation.
var - Variance.
sort - Sort in ascending order.
sortrows - Sort rows in ascending order.
sum - Sum of elements.
prod - Product of elements.
hist - Histogram.
histc - Histogram count.
trapz - Trapezoidal numerical integration.
cumsum - Cumulative sum of elements.
cumprod - Cumulative product of elements.
cumtrapz - Cumulative trapezoidal numerical integration.
Finite differences.
diff - Difference and approximate derivative.
gradient - Approximate gradient.
del2 - Discrete Laplacian.
Correlation.
corrcoef - Correlation coefficients.
cov - Covariance matrix.
subspace - Angle between subspaces.
Filtering and convolution.
filter - One-dimensional digital filter.
filter2 - Two-dimensional digital filter.
conv - Convolution and polynomial multiplication.
conv2 - Two-dimensional convolution.
convn - N-dimensional convolution.
deconv - Deconvolution and polynomial division.
detrend - Linear trend removal.
Fourier transforms.
fft - Discrete Fourier transform.
fft2 - Two-dimensional discrete Fourier transform.
fftn - N-dimensional discrete Fourier Transform.
ifft - Inverse discrete Fourier transform.
ifft2 - Two-dimensional inverse discrete Fourier transform.
ifftn - N-dimensional inverse discrete Fourier Transform.
fftshift - Shift zero-frequency component to center of spectrum.
ifftshift - Inverse FFTSHIFT.
>> [x, y]=meshgrid(0:0.2:1, 0:0.2:1)
x =
0 0.2000 0.4000 0.6000 0.8000 1.0000
0 0.2000 0.4000 0.6000 0.8000 1.0000
0 0.2000 0.4000 0.6000 0.8000 1.0000
0 0.2000 0.4000 0.6000 0.8000 1.0000
0 0.2000 0.4000 0.6000 0.8000 1.0000
0 0.2000 0.4000 0.6000 0.8000 1.0000
y =
0 0 0 0 0 0
0.2000 0.2000 0.2000 0.2000 0.2000 0.2000
0.4000 0.4000 0.4000 0.4000 0.4000 0.4000
0.6000 0.6000 0.6000 0.6000 0.6000 0.6000
0.8000 0.8000 0.8000 0.8000 0.8000 0.8000
1.0000 1.0000 1.0000 1.0000 1.0000 1.0000
>> z=x.^2+y.^2
z =
0 0.0400 0.1600 0.3600 0.6400 1.0000
0.0400 0.0800 0.2000 0.4000 0.6800 1.0400
0.1600 0.2000 0.3200 0.5200 0.8000 1.1600
0.3600 0.4000 0.5200 0.7200 1.0000 1.3600
0.6400 0.6800 0.8000 1.0000 1.2800 1.6400
1.0000 1.0400 1.1600 1.3600 1.6400 2.0000
>> mesh(x, y, z)
