综合matlab练习题集
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1. 计算矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡897473535与⎥⎥⎥⎦
⎤⎢⎢⎢⎣⎡638976242之和。
>> a=[5 3 5;3 7 4;7 9 8];
>> b=[2 4 2;6 7 9;8 3 6];
>> a+b
ans =
7 7 7
9 14 13
15 12 14
2. 求⎥⎦
⎤⎢⎣⎡+-+-+-+-++=i 44i 93i 49i 67i 23i 57i 41i 72i 53i 84x 的共轭转置。
>> x=[4+8i 3+5i 2-7i 1+4i 7-5i;3+2i 7-6i 9+4i 3-9i 4+4i];
>> x’
ans =
4.0000 - 8.0000i 3.0000 - 2.0000i
3.0000 - 5.0000i 7.0000 + 6.0000i
2.0000 + 7.0000i 9.0000 - 4.0000i
1.0000 - 4.0000i 3.0000 + 9.0000i
7.0000 + 5.0000i 4.0000 - 4.0000i
3.计算⎥⎦⎤⎢⎣⎡=572396a 与⎥⎦
⎤⎢⎣⎡=864142b 的数组乘积。
>> a=[6 9 3;2 7 5];
>> b=[2 4 1;4 6 8];
>> a.*b
ans =
12 36 3
8 42 40
4. 对于B AX =,如果⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=753467294A ,⎥⎥⎥⎦
⎤⎢⎢⎢⎣⎡=282637B ,求解X 。
>> A=[4 9 2;7 6 4;3 5 7];
>> B=[37 26 28]’;
>> X=A\B
X =
-0.5118
4.0427
1.3318
5.已知:⎥⎥⎥⎦
⎤⎢⎢⎢⎣⎡=987654321a ,分别计算a 的数组平方和矩阵平方,并观察其结果。
>> a=[1 2 3;4 5 6;7 8 9];
>> a.^2
ans =
1 4 9
16 25 36
49 64 81
>> a^2
ans =
30 36 42
66 81 96
102 126 150
6. ⎥⎦⎤⎢⎣⎡-=463521a ,⎥⎦
⎤⎢⎣⎡-=263478b ,观察a 与b 之间的六种关系运算的结果。
>> a=[1 2 3;4 5 6];
>> b=[8 –7 4;3 6 2];
>> a>b
ans =
0 1 0
1 0 1
>> a>=b
0 1 0
1 0 1
>> a<b
ans =
1 0 1
0 1 0
>> a<=b
ans =
1 0 1
0 1 0
>> a==b
ans =
0 0 0
0 0 0
>> a~=b
ans =
1 1 1
1 1 1
6. 角度[]60
x,求x的正弦、余弦、正切和余切。
=
45
30
>> x=[30 45 60];
>> x1=x/180*pi;
>> sin(x1)
ans =
0.5000 0.7071 0.8660
>> cos(x1)
ans =
0.8660 0.7071 0.5000
>> tan(x1)
0.5774 1.0000 1.7321
>> cot(x1)
ans =
1.7321 1.0000 0.5774
7. 用四舍五入的方法将数组[2.4568 6.3982 3.9375 8.5042]取整。
>> b=[2.4568 6.3982 3.9375 8.5042];
>> round(b)
ans =
2 6 4 9
8. 矩阵⎥⎥⎥⎦
⎤⎢⎢⎢⎣⎡=728365219a ,分别对a 进行特征值分解、奇异值分解、LU 分解、QR 分解及
Chollesky 分解。
>> [v,d]=eig(a,b)
v =
-0.4330 -0.2543 -0.1744
-0.5657 0.9660 -0.6091
-0.7018 0.0472 0.7736
d =
13.5482 0 0
0 4.8303 0
0 0 3.6216
>> a=[9 1 2;5 6 3;8 2 7];
>> [u,s,v]=svd(a)
u =
-0.5601 0.5320 -0.6350
-0.4762 -0.8340 -0.2788
-0.6779 0.1462 0.7204
s =
15.5234 0 0 0 4.5648 0 0 0 3.3446 v =
-0.8275 0.3917 -0.4023
-0.3075 -0.9156 -0.2592
-0.4699 -0.0907 0.8781 >> [l,u]=lu(a)
l =
1.0000 0 0 0.5556 1.0000 0 0.8889 0.2041 1.0000
u =
9.0000 1.0000 2.0000
0 5.4444 1.8889 0 0 4.8367 >> [q,r]=qr(a)
q =
-0.6903 0.3969 -0.6050
-0.3835 -0.9097 -0.1592
-0.6136 0.1221 0.7801
r =
-13.0384 -4.2183 -6.8260
0 -4.8172 -1.0807 0 0 3.7733 >> c=chol(a)
c =
3.0000 0.3333 0.6667
0 2.4267 1.1447
0 0 2.2903
9. 将矩阵⎥⎦⎤⎢⎣⎡=5724a 、⎥⎦⎤⎢⎣⎡=3817b 和⎥⎦
⎤⎢⎣⎡=2695c 组合成两个新矩阵: (1)组合成一个4⨯3的矩阵,第一列为按列顺序排列的a 矩阵元素,第二列为按列顺序排列的b 矩阵元素,第三列为按列顺序排列的c 矩阵元素,即
⎥⎥⎥⎥⎦
⎤⎢⎢⎢⎢⎣⎡237912685574 (2)按照a 、b 、c 的列顺序组合成一个行矢量,即
[]296531877254
>> a=[4 2;5 7];
>> b=[7 1;8 3];
>> c=[5 9;6 2];
% (1)
>> d=[a(:) b(:) c(:)]
d =
4 7 5
5 8 6
2 1 9
7 3 2
% (2)
>> e=[a(:);b(:);c(:)]'
e =
4 5 2 7 7 8 1 3 5 6 9 2
或利用(1)中产生的d
>> e=reshape(d,1,12)
ans =
4 5 2 7 7 8 1 3 5 6 9 2
1 0.将(x -6)(x -3)(x -8)展开为系数多项式的形式。
>> a=[6 3 8];
>> pa=poly(a);
>> ppa=poly2sym(pa)
ppa =
x^3-17*x^2+90*x-144
11.求解多项式x 3-7x 2+2x +40的根。
>> r=[1 -7 2 40];
>> p=roots(r);
-0.2151
0.4459
0.7949
0.2707
12. 求解在x =8时多项式(x -1)(x -2) (x -3)(x -4)的值。
>> p=poly([1 2 3 4]);
>> polyvalm(p,8)
ans =
840
13. 计算多项式乘法(x 2+2x +2)(x 2+5x +4)。
>> c=conv([1 2 2],[1 5 4])
c =
1 7 16 18 8
14. 计算多项式除法(3x 3+13x 2+6x +8)/(x +4)。
>> d=deconv([3 13 6 8],[1 4])
d =
3 1 2
15. 对下式进行部分分式展开:
27243645232345234+++++++++x x x x x x x x x
>> a=[1 3 4 2 7 2];
>> b=[3 2 5 4 6];
>> [r,s,k]=residue(b,a)
r =
1.1274 + 1.1513i
1.1274 - 1.1513i
-0.0232 - 0.0722i
-0.0232 + 0.0722i
0.7916
s =
-1.7680 + 1.2673i
-1.7680 - 1.2673i
0.4176 + 1.1130i
0.4176 - 1.1130i
-0.2991
k =
[]
16. 计算多项式9514124234++--x x x x 的微分和积分。
>> p= [4 -12 -14 5 9];
>> pder=polyder(p);
>> pders=poly2sym(pder)
>> pint=polyint(p);
>> pints=poly2sym(pint)
pders =
12*x^2-24*x-14
pints =
x^4-4*x^3-7*x^2+5*x
17. 解方程组⎥⎥⎥⎦
⎤⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡66136221143092x 。
>> a=[2 9 0;3 4 11;2 2 6];
>> b=[13 6 6]';
>> x=a\b
x =
7.4000
-0.2000
-1.4000
18. 求欠定方程组⎥⎦
⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡5865394742x 的最小范数解。
>> a=[2 4 7 4;9 3 5 6];
>> b=[8 5]';
>> x=pinv(a)*b %伪逆
x =
-0.2151
0.4459
0.7949
0.2707
19. 有一组测量数据如下表所示,数据具有y =x 2的变化趋势,用最小二乘法求解y 。
>> x=[1 1.5 2 2.5 3 3.5 4 4.5 5]'
>> y=[-1.4 2.7 3 5.9 8.4 12.2 16.6 18.8 26.2]'
>> e=[ones(size(x)) x.^2]
>> c=e\y
>> x1=[1:0.1:5]';
>> y1=[ones(size(x1)) x1.^2]*c;
>> plot(x,y,'ro',x1,y1,'k') %平面线图
20. 矩阵⎥⎥⎥⎦
⎤⎢⎢⎢⎣⎡-=943457624a ,计算a 的行列式和逆矩阵。
>> a=[4 2 -6;7 5 4 ;3 4 9];
>> ad=det(a)
>> ai=inv(a)
ad =
-64
ai =
-0.4531 0.6562 -0.5937
0.7969 -0.8437 0.9062
-0.2031 0.1562 -0.0937
21. y =sin(x ),x 从0到2π,∆x =0.02π,求y 的最大值、最小值、均值和标准差。
>> x=0:0.02*pi:2*pi;
>> y=sin(x);
>> ymax=max(y)
>> ymin=min(y)
>> ymean=mean(y)
>> ystd=std(y)
ymax =
1
ymin = -1 ymean = 2.2995e-017 ystd = 0.7071
22. []54321=x ,[]108642=y ,计算x 的协方差、y 的协方差、x 与y 的互协方差。
>> x=[1 2 3 4 5]; >> y=[2 4 6 8 10]; >> cx=cov(x) >> cy=cov(y) >> cxy=cov(x,y) cx = 2.5000 cy = 10 cxy =
2.5000 5.0000 5.0000 10.0000
23. 参照例3-20的方法,计算表达式()
2
2
e 1053y x y x z ---=的梯度并绘图。
>> v = -2:0.2:2;
>> [x,y] = meshgrid(v); %产生"格点"矩阵 >> z=10*(x.^3-y.^5).*exp(-x.^2-y.^2); >> [px,py] = gradient(z,.2,.2); % 近似梯度 >> contour(x,y,z) %等位线 >> hold on
>> quiver(x,y,px,py) %二维方向箭头图 >> hold off
24. 有一正弦衰减数据y=sin(x).*exp(-x/10),其中x=0:pi/5:4*pi ,用三次样条法进行插值。
>> x0=0:pi/5:4*pi; >> y0=sin(x0).*exp(-x0/10); >> x=0:pi/20:4*pi;
>> y=spline(x0,y0,x); %样条插值 >> plot(x0,y0,'or',x,y,'b') 1. 用符号函数法求解方程a t 2
+b*t +c=0。
>> r=solve('a*t^2+b*t+c=0','t') r =
[ 1/2/a*(-b+(b^2-4*a*c)^(1/2))] [ 1/2/a*(-b-(b^2-4*a*c)^(1/2))]
2.用符号计算验证三角等式:
sin(ϕ1)cos(ϕ2)-cos(ϕ1)sin(ϕ2) =sin(ϕ1-ϕ2) >> syms phi1 phi2;
>> y=simple(sin(phi1)*cos(phi2)-cos(phi1)*sin(phi2)) y =
sin(phi1-phi2)
3. 求矩阵⎥⎦
⎤
⎢
⎣⎡=2221
1211
a a a a A 的行列式值、逆和特征根。
>> syms a11 a12 a21 a22; >> A=[a11,a12;a21,a22]
>> AD=det(A) % 行列式 >> AI=inv(A) % 逆
>> AE=eig(A) % 特征值 A = [ a11, a12] [ a21, a22] AD =
a11*a22-a12*a21 AI =
[ -a22/(-a11*a22+a12*a21), a12/(-a11*a22+a12*a21)] [ a21/(-a11*a22+a12*a21), -a11/(-a11*a22+a12*a21)] AE =
[ 1/2*a11+1/2*a22+1/2*(a11^2-2*a11*a22+a22^2+4*a12*a21)^(1/2)] [ 1/2*a11+1/2*a22-1/2*(a11^2-2*a11*a22+a22^2+4*a12*a21)^(1/2)]
4 因式分解:6555234-++-x x x x >> syms x;
>> f=x^4-5*x^3+5*x^2+5*x-6; >> factor(f) ans =
(x-1)*(x-2)*(x-3)*(x+1)
5. ⎥
⎥⎦⎤
⎢⎢
⎣⎡=)sin()log(12
x x e
x x a
f ax ,用符号微分求df/dx 。
>> syms a x;
>> f=[a, x^2, 1/x; exp(a*x), log(x), sin(x)]; >> df=diff(f) df =
[ 0, 2*x, -1/x^2] [ a*exp(a*x), 1/x, cos(x)]
6. 求代数方程组⎪⎩
⎪⎨⎧=+=++00
2y x c by ax 关于x,y 的解。
>> S=solve('a*x^2+b*y+c=0','b*x+c=0','x','y'); >> disp('S.x=') , disp(S.x) >> disp('S.y=') , disp(S.y) S.x= -c/b S.y=
-c*(a*c+b^2)/b^3
7. 符号函数绘图法绘制函数x=sin(3t)cos(t),y=sin(3t)sin(t)的图形,t 的变化范围为[0,2π]。
>> syms t
>> ezplot(sin(3*t)*cos(t),sin(3*t)*sin(t),[0,pi]) %画二维曲线的简捷指令
8. 绘制极坐标下sin(3*t)*cos(t)的图形。
>> syms t
>> ezpolar(sin(3*t)*cos(t) %画极坐标图的简捷指令
1 绘制曲线13++=x x y ,x 的取值范围为[-5,5]。
>> x=-5:0.2:5; >> y=x.^3+x+1; >> plot(x,y)
2 有一组测量数据满足-at e =y ,t 的变化范围为0~10,用不同的线型和标记点画出a=0.1、a=0.2和a=0.5三种情况下的曲线。
>> t=0:0.5:10; >> y1=exp(-0.1*t); >> y2=exp(-0.2*t); >> y3=exp(-0.5*t);
>> plot(t,y1,'-ob',t,y2,':*r',t,y3,'-.^g')
3 在5.1题结果图中添加标题-at e =y ,并用箭头线标识出各曲线a 的取值。
>> title('\ity\rm=e^{-\itat}')
>> title('\ity\rm=e^{-\itat}','FontSize',12)
>> text(t(6),y1(6),'\leftarrow\ita\rm=0.1','FontSize',11) >> text(t(6),y2(6),'\leftarrow\ita\rm=0.2','FontSize',11) >> text(t(6),y3(6),'\leftarrow\ita\rm=0.5','FontSize',11)
.4 在.1题结果图中添加标题-at e =y 和图例框。
>> title('\ity\rm=e^{-\itat}','FontSize',12) >> legend('a=0.1','a=0.2','a=0.5')
5表中列出了4个观测点的6次测量数据,将数据绘制成为分组形式和堆叠形式的条形图。
>> y=[3 6 9 6;6 7 7 4;7 3 2 3;4 2 5 2;2 4 8 7;8 7 4 4];
>> bar(y)
>> bar(y,’stack’)
6 x= [66 49 71 56 38],绘制饼图,并将第五个切块分离出来。
>> x=[66 49 71 56 38]; >> L=[0 0 0 0 1]; >> pie(x,L)
7 2
2
y x
xe z --=,当x 和y 的取值范围均为-2到2时,用建立子窗口的方法在同一个图
形窗口中绘制出三维线图、网线图、表面图和带渲染效果的表面图。
>> [x,y]=meshgrid([-2:.2:2]); %产生"格点"矩阵 >> z=x.*exp(-x.^2-y.^2);
>> mesh(x,y,z) %网线图 >> subplot(2,2,1), plot3(x,y,z) %创建子图 >> title('plot3 (x,y,z)') >> subplot(2,2,2), mesh(x,y,z) >> title('mesh (x,y,z)')
>> subplot(2,2,3), surf(x,y,z) %三维着色表面图
>> title('surf (x,y,z)')
>> subplot(2,2,4), surf(x,y,z), shading interp %插值
>> title('surf (x,y,z), shading interp')
8 绘制peaks函数的表面图,用colormap函数改变预置的色图,观察色彩的分布情况。
>> surf(peaks(30)); %三维着色表面图
>> colormap(hot) %色图
>> colormap(cool)
>> colormap(lines)
9 用sphere函数产生球表面坐标,绘制不通明网线图、透明网线图、表面图和带剪孔的表面图。
>> [x,y,z]=sphere(30); %产生球面
>> mesh(x,y,z)
>> mesh(x,y,z),hidden off
>> surf(x,y,z)
>> z(18:30,1:5)=NaN*ones(13,5); >> surf(x,y,z)
1.已知:⎥⎥⎥⎦
⎤⎢⎢⎢⎣⎡=987654321a ,分别计算a 的数组平方和矩阵平方,并观察其结果。
>> a=[1 2 3;4 5 6;7 8 9];
>> a.^2
ans =
1 4 9
16 25 36
49 64 81
>> a^2
ans =
30 36 42
66 81 96
102 126 150
2.对于B AX =,如果⎥⎥⎥⎦
⎤⎢⎢⎢⎣⎡=753467294A ,⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=282637B ,求解X 。
>>A=[4 9 2;7 6 4;3 5 7];
>>B=[37 26 28]’;
>>X=A\B
X =
-0.5118
4.0427
1.3318
3、用matlab 求微分方程组,g f dt df +=,g f dt
dg +-=当初始条件为f(0)=2,g(0)=1时的解,并画出解f(t),g(t)的图像。
编程:
[f,g]=dsolve('Df=f+g','Dg=-f+g','f(0)=2,g(0)=1','t')
4.建立一个符号表达式y=sin((a+b)*x),以变量x 从pi/2到pi 进行积分.
(blank )
x=0:pi/2:pi;
y='sin((a+b)*x)';
f=int(y)
5、计算下列极限20cos 1lim x x x -→
(blank )
symsx;
L=limit((1-cos(x))/x^2,x,0)
7、计算多项式的根4
2723++-x x x 。
(blank )
p=[1-7240];
roots(p)
8、求解定积分:l n ()x x d x +⎰1
1 quad('x.*log(1+x)',0,1)
或:
symsx
int(x*log(1+x),0,1)
学校共1000名学生,235人住在A 宿舍,333人住B 宿舍,432人住在C 宿舍。
学生们要组织一个10人的委员会,试用合理的方法分配各宿舍的委员数。
解:按各宿舍人数占总人数的比例分配各宿舍的委员数。
设:A 宿舍的委员数为x 人,B 宿舍的委员数y 人,C 宿舍的委员数为z 人。
计算出人数小数点后面的小数部分最大的整数进1,其余取整数部分。
则x+y+z=10
x/10=235/1000
y/10=333/1000
z/10=432/1000
0 x
0 y
0 z x,y,z 为正整数;
解得:x=3
Y=4
Z=4
数学模型题目
题:1948年起奥林匹克运动会女子铅球记录如下:
你是否可以从这些数据中预测2000年的奥运会女子铅球的最佳成绩?
解:作散点图可得:
由上图可得,铅球距离y 与x (年份-1984)的函数关系大致为一条直线,从而作直线拟合可得,
函数关系符合的较好,于是有如下函数成立:
y=0.2632x+14.1476
其中x年份减去1948,预测2000年的女子铅球最佳成绩为27.8362
程序如下:
>>x=[0,4,8,12,16,20,24,28,32,36];
>>y=[13.75,15.28,16.59,17.32,18.14,19.16,21.03,21.16,22.41,23.57]; >>plot(x,y,’ro’)
>>polyfit(x,y,1)
>>x1=0:2:60;
>>p=polyfit(x,y,1);
>>y1=polyval(p,x1);
>>plot(x,y,’ro’,x1,y1)
>>y1=polyval(p,52)
数学模型题目
某厂生产甲乙两种口味的饮料,每百箱甲饮料需用原料6千克,工人10名,可获利10万元;每百箱乙饮料需用原料5千克,工人20名,可获利9万元。
今工厂共有原料60千克,工人150名,又由于其他条件所限甲饮料产量不超过8百箱。
问如何安排生产计划,即两种饮料各生产多少使获利最大?
参考答案
X1:生产甲饮料的数量,单位:百箱
X2:生产乙饮料的数量,单位:百箱
Y:厂商卖出全部生产的两种饮料的收益
模型建立:
MaxY=10x1+9x2
s.t
模型求解:
MinY’=-10x1-9x2
s.t
matlab程序:
c=[-10,-9];
a=[6,5;10,20];
b=[60,150];
Aeq=[];
beq=[];
vlb=[0,0];
vub=8;
[x,fval]=linprog(c,a,Aeq,beq,vlb,vub)
结果:
x1=6.4286 x2=4.2857 收益Y=102.8571
数学建模出题:
设有两个建材厂C1和C2,每年沙石的产量分别为35万吨和55万吨,这些沙石需
要供应到W1、W2和W3三个建筑工地,每个建筑工地对沙石的需求量分别为26万吨、38万吨和26万吨,各建材厂到建筑工地之间的运费(万元/万吨)如表所示,问题是应当怎么调运才能使得总运费最少?
设c1往w1,w2,w3运送的沙石分别为x1,x2,x3;c2往w1,w2,w3分别为x4,x5,x6.总运费为f 则该问题的线性规划模型为:
min f=10x1+12x2+9x3+8x4+11x5+10x6
所编的M文件为:
f=[10;12;9;8;11;13]
Aeq=[1 1 1 0 0 0;0 0 0 1 1 1;1 0 0 1 0 0;0 1 0 0 1 0;0 0 1 0 0 1]
beq=[35;55;26;38;26]
[x,feval]=linprog(f,[],[],Aeq,beq,zeros(6,1))
所得的结果为:
x1=0,x2=9,x3=26,x4=26,x5=29,x6=0;
Min f=869
数模题目
某工厂在计划期内要安排生产A、B两种产品,已知生产单位产品所需设备台时及对甲、乙两种原材料的消耗,有关数据如表 1.1.问:应如何安排生产计划,使工厂获利最大?
model:
max=2*x1+3*x2;
x1+2*x2<=8;
4*x1<=16;
4*x2<=12;
end
数学模型
数师1401 3140102004 张宇
出版社准备在某市建立两个销售代理点,向7个区的大学生售书,每个区的大学生数量(单位:千人)已经表示在图上每个销售代理点只能向本区和一个相邻区的大学生售书,这两个销售代理点应该建在何处,才能使所能供应的大学生的数量最大?建立该问题的整数线性规划模型并求解。
建立问题的整数线性规划模型。
1.每个区只能由一个代理点管理
2.要把每个区都服务到,至少要几个代理点?
解:
model:
sets:
area/1,2,3,4,5,6,7/:n,x;
link(area,area):c,z;
end sets
data:
n=34,29,42,21,56,18,71;
c=
1 1 1 0 0 0 0
1 1 1 1 1 0 0
1 1 1 1 0 0 0
0 1 1 1 1 1 1
0 1 0 1 1 1 0
0 0 0 1 1 1 1
0 0 0 1 0 1 1
end data
max=@sum(link(i,j):n(j)*z(i,j));
@sum(area:x)=2;
@for(area(i):z(I,i)=x(i));
@for(area(j):@sum(area(i):z(i.j))<=1;
@for(link:z=7);
end
1.有两个水厂A1和A2每月生产水的量分别为60吨和100吨,联合供应三个居民区B1、B2、B3。
三个居民区每月对水的需求量分别为50吨、70吨、40吨。
试建立数学模型用matlab 求解,回答如何分配供水量使运输量达到最小。
水厂与居民区之间的距离关系如下从A1到B1为10km ;A1到B2为5km ;A1到B3为6km ;A2到B1为4km ;A2到B2为8km ;A2到B3为12km 。
C=[10 5 6 4 8 12];
A=[1 1 1 0 0 0 ;0 0 0 1 1 1];
B=[60;100];
Aeq=[1 0 0 1 0 0;0 1 0 0 1 0;0 0 1 0 0 1];
beq=[50;70;40];
vlb=[0;0;0;0;0;0];
vub=[50;70;40;50;70;40];
[x,fval]=linprog(C,A,B,Aeq,beq,vlb,vub)
x =
0.0000
20.0000
40.0000
50.0000
50.0000
0.0000
fval =
940.0000 求微分方程的特解. 15
)0(',1)0(033622===++y y y dx
dy dx y d 解:)'','15)0(,1)0(','0*33*62('x Dy y y Dy y D dsolve y ===++=
用matlab 求微分方程组g f dt
dg g f dt df +=+=2,2的通解 [f,g]=dsolve(‘Df=f+2*g ’,’Dg=2*f+g ’,’t ’)
f=simple(f)
g=simple(g)
数师1401 黄琪凤 3140102008
题目:一奶制品加工厂用牛奶生产A 1、A 2两种奶制品,1桶牛奶可以在设备甲上用12小时加工成3公斤A 1,或者在设备乙上用8小时加工成4公斤A 2。
根据市场需求,生产的A 1、A 2能全部售出,且每公斤A 1获利24元,每公斤A 2获利16元。
现在加工厂每天能得到50桶牛奶的供应,每天正式工人总的劳动时间为480小时,并且设备甲每天至多能加工100公斤A 1,设备乙的加工能力没有限制。
试为该厂制定一个生产计划,使每天获利最大,并进一步讨论以下3个附加问题:
1)若用35元可以购买到1桶牛奶,应否作这项投资?若投资,每天最多购买多少桶牛奶?
2)若可以聘用临时工人以增加劳动时间,付给临时工人的工资最多是每小时几元?
3)由于市场需求变化,每公斤A 1的获利增加到30元,应否改变生产计划?
解:
max =72*x1+64*x2;
x1+x2<=50;
12*x1+8*x2<=480;
3*x1<=100;
Global optimal solution found.
Objective value: 3360.000
Infeasibilities: 0.000000
Total solver iterations: 2
Variable Value Reduced Cost
X1 20.00000 0.000000
X2 30.00000 0.000000
Row Slack or Surplus Dual Price
1 3360.000 1.000000
2 0.000000 48.00000
3 0.000000 2.000000
4 40.00000 0.000000
答:20桶牛奶生产A 1, 30桶生产A 2,利润3360元。
1)由于原料的影子价格为48,35<48, 应该买!
2)由于工时的影子价格为2,聘用临时工人付出的工资最多每小时2元
3)由于要使最优解保持不变,X1系数的允许变化范围为[64,96]。
x 1系数由24
*3=72
增加为30*3=90,在允许范围内。
所以不改变生产计划。
求微分方程特解并画出其图像:
()()⎪⎪⎩⎪⎪⎨⎧===++;40',30;046922y y y dx dy dx y d
输入命令:y=dsolve(‘9*D2y+6*Dy+4*y=0’,’y(0)=3,Dy(0)=4’,’x’) plot(x,y)
画出x y sin =在一个周期内的图形
x=-pi:0.01:pi;
y=sin(x);
plot(x,y,’b’);
title(‘sin(x)’)
xlabel(‘x’);
ylabel(‘Y’);
grid on
1、写出执行以下代码后,MATLAB命令窗口上显示的x矩阵的值。
解:x=[0,1,0,2,0,3,0,4];
for k=1:8
if x(k)==0
x(k)=k;
else
x(k)=2*k+1;
end
end
disp(x);
1 5 3 9 5 13 7 17
2、求下列联立方程的解
3x+4y-7z-12w=4
5x-7y+4z+2w=-3
x+8z-5w=9
-6x+5y-2z+10w=-8
(1)求系数矩阵的秩;(2)求出方程组的解。
解:(1)a=[3 4 -7 -12
5 -7 4 2
1 0 8 -5
-6 5 -2 10];
c=[4; -3; 9;-8];
b=rank(a)
b=4
(2)d=a\c
d = -1.4841, -0.6816, 0.5337,-1.2429
即: x=-1.4841;y= -0.6816;z= 0.5337;w=-1.2429
数师1401袁雯雯3140102018
设某一建筑公司要筹建一批A、B、C三种类型的楼房,已知每栋楼房的投资和售价分别为A 类投资90万,售价115万,B类投资110万,售价150万,C类投资170万,售价205万。
现在该公司有资金1250万,要求每类楼房至少建一栋,最多不超过5栋那么如何设计建楼方案,在资金充分利用的前提下能获得最大利润?
解:
clear;clc;
t=[90,110,170];
p=[115,150,205];
z=1250;
r=p-t;
D=[];k=0;
for a=1:5
for b=1:5
for c=1:5
f=[a,b,c];
if f * t'<=z
zr=f * r';
k=k+1;
D(k,:)=[f , zr];
end
end
end
end
[R, I]=max(D( : ,4));
disp([D(I, : )])
数学模型题目
已知如图
假设生产原料足够,A和B不能同时生产,C和F不能同时生产,B,D和E,最多有一个可以生产,只能有3个工厂生产。
问最大产量,用lingo求解。
model:
max=100*x1+78*x2+96*x3+79*x4+25*x5+37*x6;
x1+x2+x3+x4+x5+x6=3;
x1+x2<=1;
x3+x6<=1;
x2+x4+x5<=1;
@bin(x1);@bin(x2);@bin(x3);@bin(x4);@bin(x5);@bin(x6);
end
Global optimal solution found.
Objective value: 275.0000
Objective bound: 275.0000
Infeasibilities: 0.000000
Extended solver steps: 0
Total solver iterations: 0
Variable Value Reduced Cost X1 1.000000 -100.0000 X2 0.000000 -78.00000 X3 1.000000 -96.00000 X4 1.000000 -79.00000 X5 0.000000 -25.00000 X6 0.000000 -37.00000
Row Slack or Surplus Dual Price
1 275.0000 1.000000
2 0.000000 0.000000
3 0.000000 0.000000
4 0.000000 0.000000
5 0.000000 0.000000
求微分方程y’’-2y’+5y=e x cos2x的通解.
>> syms x y;
>> dsolve('D2y-2*Dy+5*y=exp(x)*cos(2*x)')
ans =
exp(t)*sin(2*t)*C2+exp(t)*cos(2*t)*C1+1/5*exp(x)*cos(2*x)
绘制曲线,设定x∈[0,2π], 划分成120个点,分别绘制 y1=sin(x),y2=cos(2x),y3=sin(x)/cos(2x), y4=2cos(x),
要求:添加网格线;在同一个示图窗口同时显示出4个独立的图;x轴标注X,y轴标注Y;每个图标注各自标题;图y2=cos(2x) 在(1.5,0.3)处标注cos(2x).
题目:在一天24h内, 从零点开始每间隔2h测得的环境温度为:12, 9, 9, 10, 18, 24, 28, 27, 25, 20, 18, 15, 13(单位:摄氏度) 推测在每1s时的温度. 并描绘温度曲线。
解在命令窗口输入:
t=0:2:24
T=[12 9 9 10 18 24 28 27 25 20 18 15 13]
plot(t,T,'*')
ti=0:1/3600:24
T1i=interp1(t,T,ti)
plot(t,T,'*',ti,T1i,'r-')
T2i=interp1(t,T,ti,'spline')
plot(t,T,'*',ti,T1i,'r-',ti,T2i,'g-')
1. 求非线性方程组⎩⎨⎧=+-=--0
sin 3.0cos 6.00cos 3.0sin 6.0y x y x x x 在(0.5,0.5) 附近的数值解。
(1) 建立函数文件myfun1.m 。
function F=myfun1(X)
x=X(1);
y=X(2);
F(1)=x-0.6*sin(x)-0.3*cos(y);
F(2)=y-0.6*cos(x)+0.3*sin(y);
function F=myfun1(X)
x=X(1);
y=X(2);
F(1)=x-0.6*sin(x)-0.3*cos(y);
F(2)=y-0.6*cos(x)+0.3*sin(y);
(2) 在给定的初值x0=0.5,y0=0.5下,调用fsolve 函数求方程的根。
X=fsolve('myfun1',[0.5,0.5]',optimset('Display','off')) 将求得的解代回原方程,可以检验结果是否正确,命令如下: q=myfun1(X)
2.用循环求解满足
101<∑=m i i 的最大的m .
clear
result=0;
i=0;
while result<10000
i=i+1;
result= result+i;
end
i
s=0
for n=1:i
s=s+n;
end
S
3.某厂拟用集装箱托运甲乙两种货物,每箱的体积、重量以及可获利润如下表:
已知这两种货物托运所受限制是体积不超过24立方米,重量不超过13百斤.试问这两种货物各托运多少箱,使得所获利润最大,并求出最大利润.
解:设甲货物、乙货物的托运箱数分别为1x ,2x ,所获利润为z .则问题的数学模型可表示为
211020 m ax x x z +=
⎪⎩⎪⎨⎧∈≥≤+≤+Z y x x x x x x x st ,,0,135224452
12121
这是一个整线性规划问题.
用图解法求解.
可行域为:由直线
2445:211=+x x l
1352:212=+x x l 及0,021==x x 组成直线 c x x l =+211020:在此凸四边形区域内平行移动.
1l
2x
易知:当l 过l 1与l 2的交点时,z 取最大值 由⎩⎨⎧=+=+135224452121x x x x 解得 ⎩⎨⎧==1421x x
90110420max =⨯+⨯=z .
题目:下表是近两个世纪美国人口的统计数据。
试根据此数据建立一个人口增长模型,并利用所得模型预测2010年美国的人口(单位为百万)。
年 1850 1860 1870 1880 1890 1900 1910 1920 1930 1940
人
口 23.2 31.4 38.6 50.2 62.9 75.995 91.972 105.711 123.203 131.699
年 1950 1960 1970 1980 1990 2000
人口 150.697 179.329 203.212 226.505 249.633 281.422
解答(方程):
YEAR=[1850:10:2000]
NUM=[23.2 31.4 38.6 50.2 62.9 75.995 91.972 105.711 123.203 131. 699 150.697 179.329 203.212 226.505 249.633 281.422]
P1=polyfit(YEAR,NUM,2)
NUM2010=polyval(P1,2010)
答案:
>> YEAR =
Columns 1 through 7
1850 1860 1870 1880 1890 1900 1910
Columns 8 through 14
1920 1930 1940 1950 1960 1970 1980
Columns 15 through 16
1990 2000
NUM =
Columns 1 through 9
23.2000 31.4000 38.6000 50.2000 62.9000 75.9950 91.9720 105.711 0 123.2030
Columns 10 through 16
131.6990 150.6970 179.3290 203.2120 226.5050 249.6330 281.4220
P1 =
1.0e+004 *
0.0000 -0.0026 2.3192
NUM2010 =
306.3376
答:预测2010年美国的人口是306.3376百万。
问题:某储蓄所每天的营业时间是上午9:00到下午5:00,根据经验,每天不同时间段所需要的服务员数量如下:
时间段(时)9-10 10-11 11-12 12-1 1-2 2-3 3-4 4-5
服务员数量 4 3 4 6 5 6 8 8
储蓄所可以雇佣全时和半时两类服务员。
全时服务员每天报酬100元,从上午9:00到下午5:00工作,但中午12:00到下午2:00之间必须安排一小时的午餐时间。
储蓄所每天可以雇佣不超过3名的半时服务员,每个半小时服务员必须连续工作4小时,报酬40元。
问该储蓄所应该如何雇佣全时和半时两类服务员?
解:设x1表示在12:00—13:00这一时间段,全时服务员午餐的人数。
x2表示13:00—14:00这一时间段,全时服务员午餐的人数。
y1,y2,y3,y4,y5依次表示半时服务员九点,十点,十一点,十二点,十三点开始上班的人数。
线性目标函数:Z=100x1+100x2+40y1+40y2+40y3+40y4+40y5
约束条件:
上班时间(点)关系式
9 x1+x2+y1>4
10 x1+x2+y1+y2>3
11 x1+x2+y1+y2+y3>4
12 x2+y1+y2+y3+y4>6
13 x1+y2+y3+y4+y5>5
14 x1+x2+y3+y4+y5>6
15 x1+x2+y4+y5>8
16 x1+x2+y5>8
半时人员约束条件:y1+y2+y3+y4+y5<3
lingo求解:
min 100x1+100x2+40y1+40y2+40y3+40y4+40y5
st
y1+y2+y3+y4+y5<3
x1+x2+y1>4
x1+x2+y1+y2>3
x1+x2+y1+y2+y3>4
x2+y1+y2+y3+y4>6
x1+y2+y3+y4+y5>5
x1+x2+y3+y4+y5>6
x1+x2+y4+y5>8
x1+x2+y5>8
end
gin 7
结果:
OBJECTIVE FUNCTION VALUE
1) 820.0000
VARIABLE VALUE REDUCED COST X1 2.000000 100.000000 X2 5.000000 100.000000 Y1 0.000000 40.000000 Y2 0.000000
40.000000 Y3 0.000000 40.000000 Y4 1.000000 40.000000 Y5 2.000000 40.000000
ROW SLACK OR SURPLUS DUAL PRICES
2) 0.000000 0.000000 3) 3.000000 0.000000 4) 4.000000 0.000000 5) 3.000000 0.000000 6) 0.000000 0.000000 7) 0.000000 0.000000 8) 4.000000 0.000000 9) 2.000000 0.000000 10) 1.000000 0.000000
所以:在雇佣全日时以12:00~13:00为午餐时间3名,以13:00~14:00为午餐时间4名,半时服务员只需要在11点上班2名,在13点上班1名,每天花费最低820元。
1 编写一个函数,使其能够产生如下的分段函数:并调用此函数,
绘制x=[0,+2]范围内的f(x)*f(x+2) 。
function y=f(x) if x<=2 y=0.5*x; else if x>6 y=0.5;
else y =1.5-0.25*x; end end
运行结果 x=2 f(x)=1
x = 0:0.05:2;
y = diag(A2(x)'*A2(x+2)); plot(x,y); xlabel('\bfx'); ylabel('\bfy');
2 求下列隐函数的导数:
程序:
syms x y;
f=atan(y/x)-log(sqrt(x^2+y^2)); yx=-diff(f,x)/diff(f,y);
运行结果:
>> lx331
yx =
(x/(x^2+y^2) + y/(x^2*(y^2/x^2 +1)))/(1/(x*(y^2/x^2+1))-y/(x^2+y^
3 某公司用两种原油A和B混合加工成两种汽油(甲和乙)。
甲、乙两种汽油含原油A的最低比例分别50%和60%,每吨售价分别为4800元和 5600元。
该公司现有原油A和B的库存量分别为500 吨和1000吨,还可以从市场上买到不超过1500吨的原油A。
原油A的市场价为:购买量不超过500吨时的单价为10000元/吨;购买量超过500吨但不超过1000吨时,超过500吨的部分8000元/吨;购买量超过1000吨时,超过1000吨的部分6000元/吨。
该公司应如何安排原油的采购和加工。
Model:
Max= 4.8*x11+ 4.8*x21 + 5.6*xl2 + 5.6*x22 - 10*x1 - 8*x2 - 6*x3; X11+x12< x + 500;
x21+x22< 1000;
0.5*x11-0.5*x21>0;
0.4*x12-0.6*x22>0;
x=x1+x2+x3;
(x1 - 500) * x2=0;
(x2 - 500) * x3=0;
@bnd(0,x1,500);
@bnd(0,x2,500);
@bnd(0,x3,500);
end
Local optimal solution found.
Objective value: 4800.000
Total solver iterations: 26
Variable Value Reduced Cost
X11 500.0000 0.0000
X21 500.0000 0.0000
X12 0.0000 0.0000
X22 0.0000 0.0000
X1 0.0000 0.0000
X2 0.0000 0.0000
X3 0.0000 0.0000
X 0.0000 0.0000
4 求定积分
命令:syms x
Y=(log(x)-1)/x*2;
inty1_10=int(y,x,1,10);。