当前位置:首页 > 2010年我校参加全国大学生数学建模竞赛获全国二等奖论文A题
用来求无变位进/出油的体积
%进油油位高度
hi=[159.02,176.14,192.59,208.5,223.93,238.97,253.66,268.04,282.16,296.03,309.69,323.15,...
336.44,349.57,362.56,375.42,388.16,400.79,413.32,425.76,438.12,450.4,462.62,474.78,...
486.89,498.95,510.97,522.95,534.9,546.82,558.72,570.61,582.48,594.35,606.22,618.09,...
629.96,641.85,653.75,665.67,677.63,678.54,690.53,690.82,702.85,714.91,727.03,739.19,...
751.42,763.7,764.16,776.53,788.99,801.54,814.19,826.95,839.83,852.84,866,879.32,...
892.82,892.84,906.53,920.45,934.61,949.05,963.8,978.91,994.43,1010.43,1026.99,1044.25,...
1062.37,1081.59,1102.33,1125.32,1152.36,1193.49]; %累加进油量
xi=[50,100,150,200,250,300,350,400,450,500,550,600,650,700,750,800,850,900,950,1000,1050,...
1100,1150,1200,1250,1300,1350,1400,1450,1500,1550,1600,1650,1700,1750,1800,1850,1900,...
1950,2000,2050,2053.83,2103.83,2105.06,2155.06,2205.06,2255.06,2305.06,2355.06,2404.98,...
2406.83,2456.83,2506.83,2556.83,2606.83,2656.83,2706.83,2756.83,2806.83,2856.83,2906.83,...
2906.91,2956.91,3006.91,3056.91,3106.91,3156.91,3206.91,3256.91,3306.91,3356.91,3406.91,...
3456.91,3506.91,3556.91,3606.91,3656.91,3706.91]; % 累加出油量
xo=[52.72,102.72,152.72,202.72,252.72,302.72,352.72,402.72,452.72,502.72,552.72,602.72,652.72,...
702.72,752.72,802.72,852.72,902.72,952.72,1002.72,1052.72,1102.72,1152.72,1202.72,1252.72,...
21
1302.72,1352.72,1402.72,1452.72,1502.72,1552.72,1602.72,1652.72,1702.72,1752.72,1802.72,...
1852.72,1902.72,1952.72,2002.72,2052.72,2102.72,2152.72,2202.72,2252.72,2302.72,2352.72,...
2402.72,2452.72,2502.72,2552.72,2602.72,2652.72,2702.72,2752.72,2802.72,2852.72,2902.72,...
2952.72,3002.72,3052.72,3102.72,3152.72,3202.72,3252.72,3302.72,3352.72,3402.72,3452.72,...
3502.72,3552.72,3602.72,3652.72,3702.72]; %出油油位高度
ho=[1150.72,1123.99,1101.15,1080.51,1061.36,1043.29,1026.08,1009.54,993.57,978.08,962.99,948.26,...
933.84,919.69,905.78,892.1,878.61,865.3,852.15,839.14,826.27,813.52,800.87,788.33,775.88,...
763.51,751.21,738.98,726.81,714.7,702.64,690.61,678.63,666.68,654.75,642.84,630.96,619.08,...
607.21,595.35,583.48,571.61,559.72,547.82,535.9,523.95,511.97,499.96,487.9,475.8,463.65,...
451.43,439.15,426.8,414.36,401.84,389.22,376.49,363.64,350.67,337.55,324.27,310.82,297.18,...
283.33,269.24,254.88,240.21,225.21,209.81,193.94,177.54,160.48,142.62];
hi=hi/1000; ho=ho/1000; xi=xi+262;
xo=xi(end)-xo;
a=0.89;b=0.6;l=2.45; s=[];
for i=1:length(hi)
s=[s 2*a/b*quad('sqrt(0.6^2-y.^2)',-b,hi(i)-b)]; end
v=s*l*1000;
p1=polyfit([hi*1000 ho*1000],[xi xo],5); p2=polyfit(hi*1000,v,5); x1=0:1300;
y1=polyval(p1,x1);
22
y2=polyval(p2,x1);
plot(hi*1000,v,'b.',x1,y2,'b',[hi*1000 ho*1000],[xi xo],'r*',x1,y1,'r');
legend('理论数据','理论拟合曲线','实验数据','实验拟合曲线');
%求误差
v2=abs(v-xi)./xi;
ave=sum(v2)/length(v2); m=max(v2); n=min(v2);
disp(['max=',num2str(m),'min=',num2str(n),'average=',num2str(ave)]);
附录二:
求纵向倾斜时的储油罐内油量的体积和高度间隔为1cm的罐容表标定值:
syms y;
a=0.89;b=0.6;l=2.45;
xi=[747.86,797.86,847.86,897.86,947.86,997.86,1047.86,1097.79,1147.79,1197.73,1247.73,1297.73,1347.73,1397.73,1447.73,1497.73,1547.73,1597.73,1647.73,1697.73,1747.73,1797.73,1847.73,1897.73,1947.73,1997.73,2047.73,2097.73,2147.73,2197.73,2247.73,2297.73,2347.73,2397.73,2447.73,2497.73,2547.73,2597.73,2647.73,2697.73,2747.73,2797.73,2847.73,2897.73,2947.73,2997.73,3047.73,3097.73,3147.73,3197.73,3247.73,3297.73,3299.74];
hi=[411.29,423.45,438.33,450.54,463.9,477.74,489.37,502.56,514.69,526.84,538.88,551.96,564.4,576.56,588.74,599.56,611.62,623.44,635.58,646.28,658.59,670.22,680.63,693.03,704.67,716.45,727.66,739.39,750.9,761.55,773.43,785.39,796.04,808.27,820.8,832.8,844.47,856.29,867.6,880.06,892.92,904.34,917.34,929.9,941.42,954.6,968.09,980.14,992.41,1006.34,1019.07,1034.24,1035.36];
xo=[50,100,150,200,250,300,350,400,450,500,550,600,650,700,750,800,850,900,950,1000,1050,1100,1150,1200,1250,1300,1350,1400,1450,1500,1550,1600,1650,1700,1750,1800,1850,1900,1950,2000,2050,2100,2150,2200,2250,2300,2350,2400,2450,2500,2550];
ho=[1020.65,1007.73,994.32,980.96,967.1,956.01,941.54,929.69,916.44,904.14,891.9,879.23,868.99,855.13,844.02,831.64,820.47,808.16,796,785.04,773.07,762.09,750.81,739.42,727.09,715.32,705.43,693.52,682.5,671.02,658.68,647.74,635.76,624.61,612.53,600.69,589.4,577,564.58,554.33,540.76,528.65,517.19,504.87,490.78,478.06,465.97,452.4,439.98,425.83,411.73]; xi=xi+215; hi=hi/1000;
23
h1=hi+0.4*tan(4.1*pi/180); vi=[];
%进油量的理论值 for i=1:length(h1)
f=(b^2/2*asin((-y*tan(4.1*pi/180)+h1(i)-b)/b)+((-y*tan(4.1*pi/180)+h1(i)-b)/2)*sqrt(b^2-(-y*tan(4.1*pi/180)+h1(i)-b)^2)+b^2*pi/4)*2*a/b; d=int(f,0,2.45); vi=[vi eval(d)]; end
vi=vi*1000; vi'
ho=ho/1000;
h2=ho+0.4*tan(4.1*pi/180); vo=[];
%出油量的理论值 for i=1:length(h2)
f=(b^2/2*asin((-y*tan(4.1*pi/180)+h2(i)-b)/b)+((-y*tan(4.1*pi/180)+h2(i)-b)/2)*sqrt(b^2-(-y*tan(4.1*pi/180)+h2(i)-b)^2)+b^2*pi/4)*2*a/b; d=int(f,0,2.45); vo=[vo eval(d)]; end
vo=vi(end)-vo*1000; vo'
p1=polyfit([hi*1000 ho*1000],[xi xi(end)-xo],5); p2=polyfit([hi*1000 ho*1000],[vi vi(end)-vo],5); x1=0:1300;
y1=polyval(p1,x1); y2=polyval(p2,x1); plot([hi*1000 ho*1000],[xi xi(end)-xo],'b.',x1,y1,'b',[hi*1000 ho*1000],[vi vi(end)-vo],'r*',x1,y2,'r');
legend('实际数据','实际数据拟合曲线','理论数据','理论数据拟合曲线');
ti=abs(vi-xi)./xi; to=abs(vo-xo)./xo; figure; ti' to'
p=polyfit(hi,ti,5); x=1:1.5;
y1=polyval(p,x);
24
共分享92篇相关文档