plot(t,r,'+',t,y,'r')
2.2 利用插值方法给出2004年的值。 答案:
y1=interp1(t,r,5)
2.3 实际2004年的统计值为21972.3,请根据实际值比较插值方法和拟合方法给出的2004年的值,那个更好?为什么?请简单地给出你的理由。 答案:
插值法得到的值为21987 拟合得到的值为21632 实际值为21972.3
所以插值法更好,因为与实际值更为接近,且拟合法拟定为2次函数,而实际不一定为几次函数。
2.4思考一下,能否利用学过的知识给出更加靠近实际值的办法?如能想到,简述一下你的思路或者给出相应的matlab程序 答案:
不能
数学建模MATLAB语言及应用上机作业4(2016-10-11)
1(PPT199)、用电压V=10伏的电池给电容器充电,假定电容器上t时刻的电压为
tv(t)?V?(V?V0)e??,其中V0是电容器的初始电压,
?是充电常数。试由下面一
组测得t,V数据确定V0和
t (秒) V (伏) ? 。
0.5 1 2 3 4 5 7 9 6.36 6.48 7.26 8.22 8.66 8.99 9.43 9.63 答案:
编写M文件
function V=voltage(x,t) V=10-(10-x(1))*exp(-t/x(2)) %x(1)?a3?ê?μ??1,x(2)?a3?μ?3£êy
输入命令
t=[0.5,1,2,3,4,5,7,9];
V=[6.36,6.48,7.26,8.22,8.66,8.99,9.43,9.63];
x0=[0,0.1];
x=lsqcurvefit('voltage',x0,t,V) V=voltage(x,t)
2. 宏观经济预测问题:假设经过调研和数据收取, 财政收入与国民收入、工业总产值、农业总产值、总人口、就业人口、固定资产投资等因素有关。下表列出了1952-1981年的原始数据,试构造预测模型。 年份 国民收入(亿元) 工业总产值(亿元) 农业总产总人口就业人口值(亿元) (万人) (万人) 固定资产投资(亿元) 财政收入(亿元) 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981
答案:
x=[];
598 586 707 737 825 837 1028 1114 1079 757 677 779 943 1152 1322 1249 1187 1372 1638 1780 1833 1978 1993 2121 2052 2189 2475 2702 2791 2927 349 455 520 558 715 798 1235 1681 1870 1156 964 1046 1250 1581 1911 1647 1565 2101 2747 3156 3365 3684 3696 4254 4309 4925 5590 6065 6592 6862 461 475 491 529 556 575 598 509 444 434 461 514 584 632 687 697 680 688 767 790 789 855 891 932 955 971 1058 1150 1194 1273 57482 58796 60266 61465 62828 64653 65994 67207 66207 65859 67295 69172 70499 72538 74542 76368 78534 80671 82992 85229 87177 89211 90859 92421 93717 94974 96259 97542 98705 100072 20729 21364 21832 22328 23018 23711 26600 26173 25880 25590 25110 26640 27736 28670 29805 30814 31915 33225 34432 35620 35854 36652 37369 38168 38834 39377 39856 40581 41896 73280 44 89 97 98 150 139 256 338 380 138 66 85 129 175 212 156 127 207 312 355 354 374 393 462 443 454 550 564 568 496 184 216 248 254 268 286 357 444 506 271 230 266 323 393 466 352 303 447 564 638 658 691 655 692 657 723 922 890 826 810 Y=[];
X=[ones(30.1),x];
[b,bint,r,rint,stats]=regress(Y,X)
数学建模MATLAB语言及应用上机作业5(2016-10-18)
试利用无约束优化的方法寻找下述Rastrigin函数在[-5.12,5.12]内的最小值。
22f(x)?x1?10cos(2?x1)?10?x2?10cos(2?x2)?10
答案:
编写M文件
function f=fun(x)
f=x(1)^2-10*cos(2*pi*x(1))+10+x(2)^2-10*cos(2*pi*x(2))+10;
输入命令
fminsearch('fun',[0.1,0.1]) fun(x)