第三章 程序
例3-1............................................................................................................................... 1
例3-2............................................................................................................................... 2
例3-3............................................................................................................................... 3
例3-4............................................................................................................................... 3
例3-5............................................................................................................................... 4
例3-6............................................................................................................................... 4
例3-7............................................................................................................................... 6
例3-9............................................................................................................................... 7
例3-10 . ............................................................................................................................ 7
例3-11 . ............................................................................................................................ 8
例3-12 . ............................................................................................................................ 8
例3-13 . ............................................................................................................................ 9
例3-14 . ............................................................................................................................ 9
例3-15 . .......................................................................................................................... 10
例3-16 . ...........................................................................................................................11
例3-17 . .......................................................................................................................... 12
例3-18 . .......................................................................................................................... 12
例3-19 . .......................................................................................................................... 13
例3-20 . .......................................................................................................................... 14
例3-21 . .......................................................................................................................... 14
例3-22 . .......................................................................................................................... 15
例3-23 . .......................................................................................................................... 15
例3-24 . .......................................................................................................................... 15
例3-1
>> A=[1 3 4]
A =
1 3 4
>> B=[1;3;4]
B =
1
3
4
>> C=[1 2 3;4 5 6]
C =
1 2 3
4 5 6
>> D=4.5
D =
4.5000
>> E=[]
E =
[]
>> C=[1 2 3;4 5]
??? Error using ==> vertcat
CA T arguments dimensions are not consistent.
例3-2
>> a=1:5
a =
1 2 3 4 5
>> t=0:pi/4:pi
t =
Columns 1 through 4
0 0.7854 1.5708 2.3562
Column 5
3.1416
>> b=pi:-pi/4:0
b =
3.1416 2.3562 1.5708 0.7854
>> CC=[C' C']
CC =
1 4 1 4
2 5 2 5
3 6 3 6
>> C(3,4)=10
C =
1 2 3 0
4 5 6 0
0 0 0 10
例3-3
>> yourName=input('请输入您的姓名:\n','s')
请输入您的姓名:
zhao
yourName =
zhao
>> yourAge=input('请输入您的年龄:')
请输入您的年龄:33
yourAge =
33
例3-4
>> A=magic(3)
A =
8 1 6
3 5 7
4 9 2
>> B=eye(size(A))
B =
1 0 0
0 1 0
0 0 1
>> t=logspace(0,5,6)
t =
Columns 1 through 4
1 10
Columns 5 through 6
10000 100000
例3-5
>> load -ascii mydata.dat
>> mydata
mydata =
16.0000 2.0000 3.0000
5.0000 11.0000 10.0000
9.0000 7.0000 6.0000
4.0000 14.0000 15.0000
-5.7000 -5.7000 -5.7000
-5.7000 -5.7000 -5.7000
8.0000 6.0000 4.0000
例3-6
>> A=magic(3)
A =
8 1 6
3 5 7
4 9 2
>> a22=A(2,2)
a22 = 100 13.0000 8.0000 12.0000 1.0000 -5.7000 -5.7000 2.0000 1000
5
>> A1=A(1:2:3,[2,3])
A1 =
1 6
9 2
>> A2=A(:,2:end)
A2 =
1 6
5 7
9 2
>> L1=logical([1 0 1]);
>> L2=logical([1 1 0]);
>> A3=A(L1,L2)
A3 =
8 1
4 9
>> A4=A;
>> A4(1,2)=0
A4 =
8 0 6
3 5 7
4 9 2
>> A4(4,4)=121
A4 =
8 0 6
3 5 7
4 9 2
0 0 0 0 0 0 121
>> A5=A;
>> A5(:,3)=[]
A5 =
8 1
3 5
4 9
>> A6=rot90(A)
A6 =
6 7 2
1 5 9
8 3 4
例3-7
>> clear
>> a = [2 4 6 5]; b = ones(4, 4) * 3; c =magic(4);
>> save -ascii mydat.dat
>> clear
>> load -ascii mydat.dat
>> mydat
mydat =
2 4 6 5
3 3 3 3
3 3 3 3
3 3 3 3
3 3 3 3
16 2 3 13
5 11 10 8
9 7 6 12
4 14 15 1
>> clear
>> a = [2 4 6 5]; b = ones(4, 4) * 3; c =magic(4);
>> save mydat
>> clear
>> load mydat
>> whos
Name Size Bytes Class Attributes
a 1x4 32 double b 4x4 128 double c 4x4 128 double
例3-9
>> A=magic(3)
A =
8 1
3 5
4 9
>> B=eye(3)
B =
1 0
0 1
0 0
>> C=A+B
C =
9 1
3 6
4 9
例3-10
>> D=A*C
D =
99 68
70 96
71 76
>> D1=A.*C
D1 =
6 7 2 0 0 1 6 7 3 73 74 93
72 1 36
9 30 49
16 81 6
>> D2=3*magic(3)
D2 =
24 3 18
9 15 21
12 27 6
例3-11
>> A =[8 1 6; 3 5 7; 4 9 2];
>> B=[1 2 3]';
>> X=A\B
X =
0.0500
0.3000
0.0500
例3-12
>> A=magic(3);
>> B=2;
>> C=A^B
C =
91 67 67
67 91 67
67 67 91
>> B^A
ans =
1.0e+004 *
1.0942 1.0906 1.0921
1.0912 1.0933 1.0924
1.0915 1.0930 1.0923
例3-13
>> A = [1 1 1;1 2 3;1 3 6]
A =
1 1 1
1 2 3
1 3 6
>> X = A.^2
X =
1 1
1 4
1 9
>> X1=2.^A
X1 =
2 2
2 4
2 8
>> C=X.^B
C =
1
1
1
例3-14
>> A=magic(3)
A =
8 1
3 5
4 9
>> A'
1 9 36 2 8 64 1 16 81 6 7 2 1 81 1296
ans =
8 3 4
1 5 9
6 7 2
>> B=i*eye(3)
B =
0 + 1.0000i 0 0 0 0 + 1.0000i 0 0 0 0 + 1.0000i
>> C=(A+B)'
C =
8.0000 - 1.0000i 3.0000 4.0000 1.0000 5.0000 - 1.0000i 9.0000 6.0000 7.0000 2.0000 - 1.0000i
>> C=(A+B).'
C =
8.0000 + 1.0000i 3.0000 4.0000 1.0000 5.0000 + 1.0000i 9.0000 6.0000 7.0000 2.0000 + 1.0000i
例3-15
>> A=magic(3)
A =
8 1 6
3 5 7
4 9 2
>> B=[3 4 5;6 9 7;1 8 2]
B =
3 4 5
6 9 7
1 8 2
>> A>=B
ans =
1 0 1
0 0 1
1 1 1
>> A~=B
ans =
1 1 1
1 1 0
1 1 0
例3-16
>> A=[1 0 2;3 0 5]
A =
1 0 2
3 0 5
>> B=[2 6 1; 0 0 8]
B =
2 6 1
0 0 8
>> A&B
ans =
1 0 1
0 0 1
>> A|B
ans =
1 1 1
1 0 1
>> ~A
ans =
0 1 0
0 1 0
>> xor(A,B)
ans =
0 1 0
1 0 0
例3-17
>> str=input('input a string:\n','s');
if ~isempty(str) && ischar(str)
sprintf('Input string is ''%s''', str)
end
input a string:
MA TLAB is great
ans =
Input string is 'MATLAB is great'
例3-18
>> clear
>> f=sym('a*x^2+b*x+c')
f =
a*x^2+b*x+c
>> f-a
??? Undefined function or variable 'a'.
>> syms a b c x
>> f1=a*x^2+b*x+c
f1 =
a*x^2+b*x+c
>> f1-a
ans =
a*x^2+b*x+c-a
>> clear
>> A=sym('[a b;c d]')
A =
[ a, b]
[ c, d]
>> C=[a b;c d]
??? Undefined function or variable 'a'.
>> syms a b c d;
>> C1=[a b;c d]
C1 =
[ a, b]
[ c, d]
例3-19
>> x=solve('a*x^2 + b*x + c=0')
x =
-1/2*(b-(b^2-4*a*c)^(1/2))/a
-1/2*(b+(b^2-4*a*c)^(1/2))/a
>> syms a b c x
>> x=solve(a*x^2 + b*x + c)
x =
-1/2*(b-(b^2-4*a*c)^(1/2))/a
-1/2*(b+(b^2-4*a*c)^(1/2))/a
例3-20
>> [x,y]=solve('2*x^2+3*x+y','y^2-25*x')
x =
1
-2+3/2*i
-2-3/2*i
y =
-5
5/2+15/2*i
5/2-15/2*i
例3-21
>> y=dsolve('D2y-3*Dy+2*y=x','x')
y =
3/4+1/2*x+exp(2*x)*C1+exp(x)*C2
>> y1=dsolve('D2y-3*Dy+2*y=x','y(0)=1,y(1)=2','x')
y1 =
3/4+1/2*x-1/4*exp(2*x)*(exp(1)-3)/(exp(2)-exp(1))+1/4*exp(x)*(-3+exp(2))/(exp(2)-exp(1))
>> pretty(simple(y1))
exp(2 x) (exp(1) - 3) exp(x) (-3 + exp(2))
3/4 + 1/2 x - 1/4 --------------------- + 1/4 --------------------
exp(2) - exp(1) exp(2) - exp(1)
例3-22
>> int('x*sin(2*x)')
ans =
1/4*sin(2*x)-1/2*x*cos(2*x)
>> diff('x*sin(2*x)')
ans =
sin(2*x)+2*x*cos(2*x)
例3-23
>> syms a t s x
>> laplace(exp(-a*t))
ans =
1/(s+a)
>> L1=laplace(sin(x*t+2*t))
L1 =
(x+2)/(s^2+x^2+4*x+4)
>> f1=ilaplace(1/(s-a)^2)
f1 =
t*exp(a*t)
例3-24
>> syms n a w k z T
>> Z1=ztrans(cos(w*a*T))
Z1 =
(z-cos(a*T))*z/(z^2-2*z*cos(a*T)+1)
>> iztrans(Z1)
ans =
cos(a*T*n)
>> Z2=ztrans((k*T)^2*exp(-a*k*T))
Z2 =
T^2*z*exp(-a*T)*(z+exp(-a*T))/(z-exp(-a*T))^3
>> iztrans(Z2,k)
ans =
T^2*(1/exp(a*T))^k*k^2
第三章 程序
例3-1............................................................................................................................... 1
例3-2............................................................................................................................... 2
例3-3............................................................................................................................... 3
例3-4............................................................................................................................... 3
例3-5............................................................................................................................... 4
例3-6............................................................................................................................... 4
例3-7............................................................................................................................... 6
例3-9............................................................................................................................... 7
例3-10 . ............................................................................................................................ 7
例3-11 . ............................................................................................................................ 8
例3-12 . ............................................................................................................................ 8
例3-13 . ............................................................................................................................ 9
例3-14 . ............................................................................................................................ 9
例3-15 . .......................................................................................................................... 10
例3-16 . ...........................................................................................................................11
例3-17 . .......................................................................................................................... 12
例3-18 . .......................................................................................................................... 12
例3-19 . .......................................................................................................................... 13
例3-20 . .......................................................................................................................... 14
例3-21 . .......................................................................................................................... 14
例3-22 . .......................................................................................................................... 15
例3-23 . .......................................................................................................................... 15
例3-24 . .......................................................................................................................... 15
例3-1
>> A=[1 3 4]
A =
1 3 4
>> B=[1;3;4]
B =
1
3
4
>> C=[1 2 3;4 5 6]
C =
1 2 3
4 5 6
>> D=4.5
D =
4.5000
>> E=[]
E =
[]
>> C=[1 2 3;4 5]
??? Error using ==> vertcat
CA T arguments dimensions are not consistent.
例3-2
>> a=1:5
a =
1 2 3 4 5
>> t=0:pi/4:pi
t =
Columns 1 through 4
0 0.7854 1.5708 2.3562
Column 5
3.1416
>> b=pi:-pi/4:0
b =
3.1416 2.3562 1.5708 0.7854
>> CC=[C' C']
CC =
1 4 1 4
2 5 2 5
3 6 3 6
>> C(3,4)=10
C =
1 2 3 0
4 5 6 0
0 0 0 10
例3-3
>> yourName=input('请输入您的姓名:\n','s')
请输入您的姓名:
zhao
yourName =
zhao
>> yourAge=input('请输入您的年龄:')
请输入您的年龄:33
yourAge =
33
例3-4
>> A=magic(3)
A =
8 1 6
3 5 7
4 9 2
>> B=eye(size(A))
B =
1 0 0
0 1 0
0 0 1
>> t=logspace(0,5,6)
t =
Columns 1 through 4
1 10
Columns 5 through 6
10000 100000
例3-5
>> load -ascii mydata.dat
>> mydata
mydata =
16.0000 2.0000 3.0000
5.0000 11.0000 10.0000
9.0000 7.0000 6.0000
4.0000 14.0000 15.0000
-5.7000 -5.7000 -5.7000
-5.7000 -5.7000 -5.7000
8.0000 6.0000 4.0000
例3-6
>> A=magic(3)
A =
8 1 6
3 5 7
4 9 2
>> a22=A(2,2)
a22 = 100 13.0000 8.0000 12.0000 1.0000 -5.7000 -5.7000 2.0000 1000
5
>> A1=A(1:2:3,[2,3])
A1 =
1 6
9 2
>> A2=A(:,2:end)
A2 =
1 6
5 7
9 2
>> L1=logical([1 0 1]);
>> L2=logical([1 1 0]);
>> A3=A(L1,L2)
A3 =
8 1
4 9
>> A4=A;
>> A4(1,2)=0
A4 =
8 0 6
3 5 7
4 9 2
>> A4(4,4)=121
A4 =
8 0 6
3 5 7
4 9 2
0 0 0 0 0 0 121
>> A5=A;
>> A5(:,3)=[]
A5 =
8 1
3 5
4 9
>> A6=rot90(A)
A6 =
6 7 2
1 5 9
8 3 4
例3-7
>> clear
>> a = [2 4 6 5]; b = ones(4, 4) * 3; c =magic(4);
>> save -ascii mydat.dat
>> clear
>> load -ascii mydat.dat
>> mydat
mydat =
2 4 6 5
3 3 3 3
3 3 3 3
3 3 3 3
3 3 3 3
16 2 3 13
5 11 10 8
9 7 6 12
4 14 15 1
>> clear
>> a = [2 4 6 5]; b = ones(4, 4) * 3; c =magic(4);
>> save mydat
>> clear
>> load mydat
>> whos
Name Size Bytes Class Attributes
a 1x4 32 double b 4x4 128 double c 4x4 128 double
例3-9
>> A=magic(3)
A =
8 1
3 5
4 9
>> B=eye(3)
B =
1 0
0 1
0 0
>> C=A+B
C =
9 1
3 6
4 9
例3-10
>> D=A*C
D =
99 68
70 96
71 76
>> D1=A.*C
D1 =
6 7 2 0 0 1 6 7 3 73 74 93
72 1 36
9 30 49
16 81 6
>> D2=3*magic(3)
D2 =
24 3 18
9 15 21
12 27 6
例3-11
>> A =[8 1 6; 3 5 7; 4 9 2];
>> B=[1 2 3]';
>> X=A\B
X =
0.0500
0.3000
0.0500
例3-12
>> A=magic(3);
>> B=2;
>> C=A^B
C =
91 67 67
67 91 67
67 67 91
>> B^A
ans =
1.0e+004 *
1.0942 1.0906 1.0921
1.0912 1.0933 1.0924
1.0915 1.0930 1.0923
例3-13
>> A = [1 1 1;1 2 3;1 3 6]
A =
1 1 1
1 2 3
1 3 6
>> X = A.^2
X =
1 1
1 4
1 9
>> X1=2.^A
X1 =
2 2
2 4
2 8
>> C=X.^B
C =
1
1
1
例3-14
>> A=magic(3)
A =
8 1
3 5
4 9
>> A'
1 9 36 2 8 64 1 16 81 6 7 2 1 81 1296
ans =
8 3 4
1 5 9
6 7 2
>> B=i*eye(3)
B =
0 + 1.0000i 0 0 0 0 + 1.0000i 0 0 0 0 + 1.0000i
>> C=(A+B)'
C =
8.0000 - 1.0000i 3.0000 4.0000 1.0000 5.0000 - 1.0000i 9.0000 6.0000 7.0000 2.0000 - 1.0000i
>> C=(A+B).'
C =
8.0000 + 1.0000i 3.0000 4.0000 1.0000 5.0000 + 1.0000i 9.0000 6.0000 7.0000 2.0000 + 1.0000i
例3-15
>> A=magic(3)
A =
8 1 6
3 5 7
4 9 2
>> B=[3 4 5;6 9 7;1 8 2]
B =
3 4 5
6 9 7
1 8 2
>> A>=B
ans =
1 0 1
0 0 1
1 1 1
>> A~=B
ans =
1 1 1
1 1 0
1 1 0
例3-16
>> A=[1 0 2;3 0 5]
A =
1 0 2
3 0 5
>> B=[2 6 1; 0 0 8]
B =
2 6 1
0 0 8
>> A&B
ans =
1 0 1
0 0 1
>> A|B
ans =
1 1 1
1 0 1
>> ~A
ans =
0 1 0
0 1 0
>> xor(A,B)
ans =
0 1 0
1 0 0
例3-17
>> str=input('input a string:\n','s');
if ~isempty(str) && ischar(str)
sprintf('Input string is ''%s''', str)
end
input a string:
MA TLAB is great
ans =
Input string is 'MATLAB is great'
例3-18
>> clear
>> f=sym('a*x^2+b*x+c')
f =
a*x^2+b*x+c
>> f-a
??? Undefined function or variable 'a'.
>> syms a b c x
>> f1=a*x^2+b*x+c
f1 =
a*x^2+b*x+c
>> f1-a
ans =
a*x^2+b*x+c-a
>> clear
>> A=sym('[a b;c d]')
A =
[ a, b]
[ c, d]
>> C=[a b;c d]
??? Undefined function or variable 'a'.
>> syms a b c d;
>> C1=[a b;c d]
C1 =
[ a, b]
[ c, d]
例3-19
>> x=solve('a*x^2 + b*x + c=0')
x =
-1/2*(b-(b^2-4*a*c)^(1/2))/a
-1/2*(b+(b^2-4*a*c)^(1/2))/a
>> syms a b c x
>> x=solve(a*x^2 + b*x + c)
x =
-1/2*(b-(b^2-4*a*c)^(1/2))/a
-1/2*(b+(b^2-4*a*c)^(1/2))/a
例3-20
>> [x,y]=solve('2*x^2+3*x+y','y^2-25*x')
x =
1
-2+3/2*i
-2-3/2*i
y =
-5
5/2+15/2*i
5/2-15/2*i
例3-21
>> y=dsolve('D2y-3*Dy+2*y=x','x')
y =
3/4+1/2*x+exp(2*x)*C1+exp(x)*C2
>> y1=dsolve('D2y-3*Dy+2*y=x','y(0)=1,y(1)=2','x')
y1 =
3/4+1/2*x-1/4*exp(2*x)*(exp(1)-3)/(exp(2)-exp(1))+1/4*exp(x)*(-3+exp(2))/(exp(2)-exp(1))
>> pretty(simple(y1))
exp(2 x) (exp(1) - 3) exp(x) (-3 + exp(2))
3/4 + 1/2 x - 1/4 --------------------- + 1/4 --------------------
exp(2) - exp(1) exp(2) - exp(1)
例3-22
>> int('x*sin(2*x)')
ans =
1/4*sin(2*x)-1/2*x*cos(2*x)
>> diff('x*sin(2*x)')
ans =
sin(2*x)+2*x*cos(2*x)
例3-23
>> syms a t s x
>> laplace(exp(-a*t))
ans =
1/(s+a)
>> L1=laplace(sin(x*t+2*t))
L1 =
(x+2)/(s^2+x^2+4*x+4)
>> f1=ilaplace(1/(s-a)^2)
f1 =
t*exp(a*t)
例3-24
>> syms n a w k z T
>> Z1=ztrans(cos(w*a*T))
Z1 =
(z-cos(a*T))*z/(z^2-2*z*cos(a*T)+1)
>> iztrans(Z1)
ans =
cos(a*T*n)
>> Z2=ztrans((k*T)^2*exp(-a*k*T))
Z2 =
T^2*z*exp(-a*T)*(z+exp(-a*T))/(z-exp(-a*T))^3
>> iztrans(Z2,k)
ans =
T^2*(1/exp(a*T))^k*k^2