数学建模MATLAB程序汇总

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

建模MATLAB程序汇总

求特征值、特征向量、权向量

A=input('A=');

E=eig(A)

[V,D]=eig(A)

t=max(E);

disp(t);

for i=1:1:3

if E(i)==t;

m=i;

end

end

X=V(:,m);

mt=X./sum(X);

disp(mt)

求π

n=1;s=0;

while 1/(2*n-1)>10^(-6)

s=s+(-1)^(n+1)/(2*n-1);

n=n+1;

end

pai=4*s

求e

n=1;s=1;

while 1/prod(1:n)>10^(-6)

s=s+1/prod(1:n);

n=n+1;

end

e=s

回归分析、

x=[143 145 146 147 149 150 153 154 155 156 157 158 159 160 162 164]';

Y=[88 85 88 91 92 93 93 95 96 98 97 96 98 99 100 102]';

X=[ones(16,1) x];

[b,bint,r,rint,stats]=regress(Y,X,0.025);

b,bint,stats

rcoplot(r,rint)

z=b(1)+b(2)*x

plot(x,Y,'k+',x,z,'r')

回归曲线

x=[2:16];

y=[6.42 8.20 9.58 9.50 9.70 10 9.93 09.99 10.49 10.59 10.60 10.80 10.60 10.90 10.76];

x1=1./x;

y1=log(y);

p=polyfit(x1,y1,1)

a=exp(p(2))

b=p(1)

z=a.*exp(b./x)

plot(x,y,'k+',x,z,'r')

回归预测

x=[20 25 30 35 40 45 50 55 60 65]';

Y=[13.2 15.1 16.4 17.1 17.9 18.7 19.6 21.2 22.5 24.3]';

X=[ones(10,1) x];

[b,bint,r,rint,stats]=regress(Y,X,0.05);

b,bint,stats

rcoplot(r,rint)

z=b(1)+b(2)*x

rstool(x,Y,'purequadratic')

灰色GM(1,1)

clc,clear

x0=[8438.73 9398.53 9959.17 10949.99 11145.92 11800 12700];

n=length(x0);

lamda=x0(1:n-1)./x0(2:n)

range=minmax(lamda)

x1=cumsum(x0)

for i=2:n

z(i)=0.5*(x1(i)+x1(i-1));

end

B=[-z(2:n)',ones(n-1,1)];

Y=x0(2:n)';

u=B\Y

x=dsolve('Dx+a*x=b','x(0)=x0');

x=subs(x,{'a','b','x0'},{u(1),u(2),x1(1)});

yuce1=subs(x,'t',[0:n-1]);

digits(6),y=vpa(x) %为提高预测精度,先计算预测值,再显示微分方程的解yuce=[x0(1),diff(yuce1)]

epsilon=x0-yuce %计算残差

delta=abs(epsilon./x0) %计算相对误差

rho=1-(1-0.5*u(1))/(1+0.5*u(1))*lamda %计算级比偏差值

求余

for n=1:5000

k=n^3;

if rem(k,10000)==8888

n

end

end

人口预测模型

k=197.273; %xm=197.273

r=0.03134; % r=0.03134

t=0:10:160; %时间间隔为10年

n0=3.929;

n1=[3.929 5.308 7.240 7.638 12.866 17.069 23.192 31.443 38.558 50.156 62.948 75.995 91.972 105.711 122.775 131.669 150.697];% 实际统计资料

n2=n0*exp(r*t); % Malthus模型

n3=k./(1+((k/n0)-1).*exp(-r.*t)); %Logistic模型

t=t+1790;

plot(t,n1,'k*-',t,n2,'go-',t,n3)

水仙花数

for a=1:9

for b=0:9

for c=0:9

abc=a*100+b*10+c*1;

if abc==a.^3+b.^3+c.^3

disp(abc)

end

end

end

end

主成分分析

X = [40 10 120 250 120 10 40 270 280 170 180 130 220 160 220 140 220 40 20 120;

2 1.5

3 4.5 3.5 1.5 1

4 3.

5 3 3.5 2 1.5 1.5 2.5 2 2 1 1 2;

5 5 13 18 9 12 19 13 11 9 14 30 17 35 14 20 14 10 12 20;

20 30 50 0 50 50 40 60 60 60 40 50 20 60 30 20 10 0 60 0]'

[pc,score,variance,t2] = princomp(X)

Z=zscore(X);

mean(X,1)

std(X,0,1)

回归模型y= ax1+bx2+cx3+dx4+ex5+fx6

1.对回归模型建立M文件model.m如下:

function yy=model(beta0,X)

a=beta0(1);

b=beta0(2);

c=beta0(3);

d=beta0(4);

e=beta0(5);

f=beta0(6);

x1=X(:,1);

x2=X(:,2);

x3=X(:,3);

相关文档
最新文档