文章目录
学习来源
数学建模算法与应用(第2版)
matlab帮助文档
MATLAB数据的输入
特殊向量
%%特殊向量
t=0:0.1:10%产生从0~10的行向量,元素之间间隔为0.1
%t=linspace(n1,n2,n)
t=linspace(1,10,3)%产生n1和n2之间线性均匀分布的n个数(默认n时,产生100个数)
%t=logspace(n1,n2,n)
t=logspace(1,10,3)%在10^n1和10^n2之间按照对数距离等间距产生n个数(默认n时,产生50个数)
特殊矩阵
单位矩阵
%单位矩阵
%eye(m)
eye(2)
%eye(m,n)%可得到一个可允许的最大单位矩阵而其余处补0
eye(2,3)
%eye(size(a))%可得到与矩阵a同样大小的单位矩阵
a=[1,2,3;4,5,6]
eye(size(a))
所有元素为1的矩阵
%所有元素为1的矩阵
%ones(n),ones(size(a)),ones(m,n)
ones(3)
ones(size(a))
ones(3,4)
所有元素为0的矩阵
%zeros(n),zeros(m,n)
zeros(3),zeros(3,4)
空矩阵
%空矩阵是一个特殊矩阵,这在线性代数中是不存在的
q=[]%矩阵在工作空间之中,但他的大小为0
%通过空矩阵的办法可以删除矩阵的行与列
a(:,3)=[]%删除矩阵a的第三列
随机数矩阵
%随机数矩阵
%rand(m,n)%产生m*n矩阵,其中元素是服从[0,1]上均匀分布的随机数
rand(4,4)
%normrnd(mu,sigma,m,n)%产生m*n矩阵,其中元素是服从均值为mu,标准差为sigma的正太分布随机数
normrnd(3,0.5,4,4)
%exprnd(mu,m,n)%产生m*n矩阵,其中元素是服从均值为mu的指数分布随机数
exprnd(3,4,4)
%poissrnd(mu,m,n)%产生m*n矩阵,其中元素是服从均值为mu的泊松分布随机数
poissrnd(3,4,4)
%unifrnd(a,b,m,n)%产生m*n矩阵,其中元素是服从[a,b]上均匀分布的随机数
unifrnd(1,10,4,4)
矩阵置换
%随机置换
%randperm(n)%产生1~n的一个随机全排列
%perms([1:numel])%产生1~n的一个全排列
randperm(6)
perms([1:6])
MATLAB在高等数学中的应用
求极限
%%求极限
%limit(expr,x,a)%符号表达式expr关于符号变量x趋于a时的极限
%limit(expr,a)
%limit(expr)%默认变量趋于0时的极限
%limit(expr,a,'left')
%limit(expr,a,'right')
syms x
b=limit((sqrt(1+x^2)-1)/(1-cos(x)))
syms x a
b=limit((1+a/x)^x,x,inf)
latex(b)
e a {\mathrm{e}}^a ea
求导数
%%求导数
diff(expr)%表达式expr关于默认变量的1阶导数
diff(expr,v)
diff(expr,sym('v'))
diff(expr,n)
diff(expr,n,v)%求表达式关于符号变量v的n阶导数
diff(expr,v,n)
syms
dy=diff(log((x+2)/(1-x)),3)
dy=simplify(dy)%对符号函数进行简化
pretty(dy)%分数线居中显示
latex(dy)
a=[0,0.5,2,4]
da=diff(a)
− 18 ( x 2 + x + 1 ) ( x 2 + x − 2 ) 3 -\frac{18\,\left(x^2+x+1\right)}{{\left(x^2+x-2\right)}^3} −(x2+x−2)318(x2+x+1)
求极值
%%求极值
syms x
y=x^3+6*x^2+8*x-1;
dy=diff(y);
dy_zero=solve(dy),dy_zero_num=double(dy_zero)%变成数值类型
ezplot(y)%符号函数画图
求积分
求不定积分
%%求积分
%int(expr)
%int(expr,v)
syms x
I=int(1/(1+sqrt(1-x^2)))
pretty(I)
latex(I)
x a s i n ( x ) + 1 − x 2 − 1 x \frac{x\,\mathrm{asin}\left(x\right)+\sqrt{1-x^2}-1}{x} xxasin(x)+1−x2−1
求定积分
求定积分的符号解
%求定积分
%求定积分的符号解
%int(expr,a,b)
%int(expr,v,a,b)
syms x
I=int(cos(x)*cos(2*x),-pi/2,pi/2)
求定积分的数值解
%求定积分的数值解
I=quadl(@(t)(t-3*t.^2+2*t.^3).^(-1/3),eps,0.5)
I=dblquad(@(x,y)sqrt(1-x.^2-y.^2).*(x.^2+y.^2<=x),0,1,-0.5,0.5)
fun3=@(x,y,z)z.^2*log(x.^2+y.^2+z.^2+1)./(x.^2+y.^2+z.^2+1).*(z>=0 & ...
z<=sqrt(1-x.^2-y.^2));
I=triplequad(fun3,-1,1,-1,1,0,1)
级数求和
%%级数求和
%r=symsun(expr,v)
%r=symsum(expr,v,a,b)
%v是求和变量,a和b分别为求和变量的起始点和终止点,若没有指明a和b,则a的默认值为0,b的默认值为v-1
syms n
f1=(2*n-1)/2^n
s1=symsum(f1,n,1,inf)
syms n
f2=1/n^2
s2=symsum(f2,n,1,inf)
MATLAB在线性代数的应用
向量组的线性相关性
%%向量组的线性相关性
format rat%有理分数的显示格式
a=[1,-2,-1,0,2;-2,4,2,6,-6;2,-1,0,2,3;3,3,3,3,4];
b=rref(a)
format%恢复到短小数的显示格式
format rat
a=[2,2,-1;2,-1,2;-1,2,2];
b=[1,4;0,3;-4,2];
c=rref([a,b])
format
齐次线性方程组
%%齐次线性方程组
%z=null(A)%z的列向量为方程组的正交规范基
%z=null(A,'r')%z的列向量是方程Ax=0的有理基
format rat
a=[1,2,2,1;2,1,-2,-2;1,-1,-4,-3]
b=null(a,'r')%求有理基
format
非齐次线性方程组
%%非齐次线性方程组
a=[2,4;3,-5;1,2;2,1];
b=[11;3;6;7];
solution=a\b
format rat
a=[1,1,0;1,0,1;1,1,1;1,2,-1];
b=[1;2;0;-1];
x1=a\b%这里\和pinv是等价的
x2=pinv(a)*b
format
format rat
a=[1,-1,-1,1,0;1,-1,1,-3,1;1,-1,-2,3,-1/2]
b=rref(a)
format
相似矩阵及二次型
%%相似矩阵及二次型
A=[0,1,1,-1;1,0,-1,1;,1,-1,0,1;-1,1,1,0];
[P,D]=eig(A)
a=[2 -2 0; -2 4 0; 0 0 5];
b=eig(a);
if all(b>0)
fprintf('二次型正定\n');
else
fprintf('二次型非正定\n')
end
[c,d]=eig(a)%c为正交变换的变换矩阵