matlab入门练习之杂例一

提供几个入门杂例,供第一次摸matlab的人琢磨。matlab之美在于其代码的简洁与其在各门各业中的使用。

  • 累和乘积与上下三角
clc
clear
A=magic(9)
cumsum(A)
prod(A,2)%按行求乘积
triu(A)%上三角 
tril(ones(4,4),-1)
A=[2 1 -1;2 1 0;1 -1 1]
B=[1 -1 3;4 3 2]
X=B/A
X*A
A*B'
  • 因式分解,字符定义,行列式,化简,通分等简要操作
clc
clear
syms x%定义变量
f=factor(x^9-1)%因式分解
x=sym('x')
M=sym ('[a,b;c,d]')
det(magic(3))
det(M)
%simple%化简
simplify(cos(x)^2+sin(x)^2)
simple(cos(x)^2+sin(x)^2)
[n,d]=numden(f)%通分
factor(sym('239239893849832'))
% expand%  展开
% collect %合并同类项
% findsym%查找变量

  • t 分布的一个小探索
clc
clear
syms y
syms n x h
f=exp((-(n+x^2)*y^2)/2)*y^(n)
pretty(y)
h=int(f,y,0,Inf)
simplify(y)

a=n^(n/2)/(2^(n/2-1/2))
y=h*a


p=gamma((n+1)/2)/sqrt(n)*(1+x^2/n)^((n+1)/2)
pretty(f)
y-p
simplify(p)
  • 大物实验之普朗克常量的测定
X1=[4.57 3.96 3.58 2.94 1.90 0.86 0.12 -0.73 -1.24 -1.73 -1.91 -1.95 -2.00 -2.05 -2.10 -2.15 -2.40 -2.50 -2.55 -2.65]
Y1=[42.6*10^-9 38.0*10^-9 33.5*10^-9 30.0*10^-9 18.5*10^-9 10.7*10^-9 61.4*10^-10 23.5*10^-10 70.1*10^-11 38.0*10^-12 -20*10^-12 -21.5*10^-12 -25.5*10^-12 -26.5*10^-12 -30.4*10^-12 -30*10^-12 -37.5*10^-12 -40*10^-12 -40.7*10^-12 -40*10^-12]
X2=[4.5 3.5 2.51 1.50 0.50 -0.17 -0.7 -1.14 -1.36 -1.40 -1.44 -1.50 -1.58 -1.68 -1.77 -1.78 -1.86 -1.95 -2.09 -2.17 -2.27 -2.30 -2.42 -2.52 -2.63 -2.74 -2.80 -2.74 -2.85]
Y2=[13.4*10^-9 11.1*10^-9  85.1*10^-10 58.3*10^-10 29.1*10^-10 13.8*10^-10 44*10^-11 37.6*10^-12 27.7*10^-13 4.8*10^-13 -26.7*10^-13 -59.9*10^-13 -81.2*10^-13 -98*10^-13 -99.5*10^-13 -99.6*10^-13 -13.8*10^-13 -14.5*10^-13 -14.2*10^-13 -15.2*10^-13 -14.2*10^-13 -14.4*10^-13 -14.1*10^-13 -14.82*10^-13 -16.8*10^-13 -13.9*10^-13 -14.0*10^-13 -14.4*10^-13 -14.4*10^-13]
X3=[4.64 3.48 2.70 2.01 1.72 1.56 1.15 0.97 0.30 -0.03 -1.18 -1.21 -1.2 -1.25 -1.33 -1.36 -1.48 -1.53 -1.56 -1.64 -1.72 -1.81 -1.91 ]
Y3=[11.6*10^-9 10.0*10^-9 82.0*10^-10 62.0*10^-10 58.5*10^-10 50.6*10^-10 40.1*10^-10 34.0*10^-10 17.0*10^-10 10.3*10^-10 57.7*10^-13 9.3*10^-13 -6.9*10^-13 -20.0*10^-13 -55*10^-13 -32.8*10^-13 -59.5*10^-13 -67.7*10^-13 -70.2*10^-13 -73.8*10^-13 -82.6*10^-13 -82.0*10^-13 -88.5*10^-13]
X4=[4.58 3.98 2.95 2.68 1.96 0.18 -0.38 -0.55 -0.65 -0.68 -0.73 -0.78 -0.8 -0.83 -0.87 -0.95 -1.00 -1.08 -1.43 -1.60 -1.75]
Y4=[14.3*10^-9 12.2*10^-9 10.0*10^-9 88.3*10^-10 71.7*10^-10 16.3*10^-10 16.7*10^-11 31.7*10^-12 90.0*10^-13 68.0*10^-13 15.0*10^-13 -13.0*10^-13 -30.9*10^-13 -34*10^-13 -42*10^-13 -50.5*10^-13 -60*10^-13 -66.7*10^-13 -72.3*10^-13 -70.0*10^-13 -74.2*10^-13]
X5=[4.07 3.72 1.97 1.28 0.66 0.21 -0.29 -0.53 -0.58 -0.61 -0.66 -0.68 -0.75 -0.78 -0.83 -0.90 -1.00 -1.13 -1.23 -1.38 -1.47 ]
Y5=[62.1*10^-10 53.3*10^-10 40.3*10^-10 24.4*10^-10 14.7*10^-10 69.2*10^-11 84.8*10^-12 60.2*10^-13 33.9*10^-13 -9.6*10^-13 -7.3*10^-13 -11.3*10^-13 -18.4*10^-13 -21.9*10^-13 -24.7*10^-13 -26.6*10^-13 -30.0*10^-13 -29.5*10^-13 -28.7*10^-13 -28.0*10^-13 -31.5*10^-13]
X6=[4.51 3.97 3.61 2.41 1.99 0.65 0.02 -0.48 -0.57 -0.60 -0.64 -0.67 -0.74 -0.82 -0.86 -0.89 -0.96 -1.03 -1.07 -1.35 -1.43 -1.65 -1.82 -2.02 -2.26 -2.61 -2.82 -3.2 ]
Y6=[11.4*10^-10 10.0*10^-10  85.9*10^-11 65.2*10^-11 57.0*10^-11 23.5*10^-11 73.8*10^-12 33.6*10^-13 10.0*10^-13 6.0*10^-13 3.7*10^-13 1.9*10^-13 -0.4*10^-13 -1.1*10^-13 -1.5*10^-13 -2.0*10^-13 -2.3*10^-13 -2.3*10^-13 -2.3*10^-13 -2.4*10^-13 -1.7*10^-13 -2.2*10^-13 -2.5*10^-13 -3.2*10^-13 -3.2*10^-13 -3.0*10^-13 -3.1*10^-13 -3.5*10^-13]
X7=[4.50 3.11 1.81 1.16 0.25 -0.20 -0.44 -0.48 -0.54 -0.62 -0.65 -0.68 -0.71 -0.74 -0.77 -0.78 -0.97 -1.21]
Y7=[14.9*10^-9 11.2*10^-9 77.6*10^-10 60.0*10^-10 17.2*10^-10 32.5*10^-11 35.8*10^-12 21.0*10^-12 89.8*10^-13 -10.2*10^-13 -28.0*10^-13 -58.0*10^-13 -63.0*10^-13 -72.0*10^-13 -67.4*10^-13 -82.2*10^-13 -92.0*10^-13 -90.2*10^-13]
plot(X1,Y1)
plot(X2,Y2)
plot(X3,Y3)
plot(X4,Y4)
plot(X5,Y5)
hold on

plot(X6,Y6)
hold on
plot(X7,Y7)
  • ksdensity的用法
clc
clear
x=[randn(30,1); 5+randn(30,1)];%产生60个样本值
[f,xi]=ksdensity(x); %返回xi的数量多于x数量
subplot(2,2,1);
plot(x);
title('样本数据(Sample Data)') ;
subplot(2,2,2);
plot(xi,f);
title('概率密度分布(PDF)');
subplot(2,2,3);
F= ksdensity(x,xi); 
plot(xi,F); 
subplot(2,2,4);
F= ksdensity(x,xi,'function','cdf'); 
plot(xi,F); 



这里写图片描述
- gplot的用法

x=[0,0;1,0;1,1;0,1]
z=zeros(4)
y=[1,5,12,10;18,15,12,10;13,18,11,18;12,11,13,19]
gplot(y,x,'k:o')
axis off;
Coordinates=randi([1,10],4,2);%生成15个顶点的坐标
A=randi([1,10],4,4);%生成15个顶点两两直接的距离,即邻接矩阵
gplot(A,Coordinates,'k:o');%绘制图形,蓝色线条、连线为虚线、顶点用圆圈。
gplot(A,Coordinates,'b-.');%绘制图形,黑色线条、连线为实线、顶点为原点。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陆嵩

有打赏才有动力,你懂的。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值