资源描述:
《样条插值实验与matlab仿真》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、样条插值实验Matlab的一维插值函数为interp1(),调用格式为:yy=interp1(x,y,xx,方法)其中x=[x1,x2,…,xn]’,y=[y1,y2,…,yn]’,两个向量分别为给定的一组自变量和函数值,用来表示已知样本点数据.xx为待求插值点处横坐标,yy返回的对应纵坐标。插值方法可以选用默认的’linear’(线性插值),’nearest’(最近邻等值方式),’cubic’(三次Hermite插值),’spline’(三次样条插值)。一般可采用样条插值。实验1作函数在[0,1]取间隔为0.1的点图,用插值进行实验Matlab程
2、序chazhi1.m:x=0:0.1:1;y=(x.^2-3*x+7).*exp(-4*x).*sin(2*x);%产生原始数据subplot(1,2,1);plot(x,y,x,y,'ro')%作图xx=0:0.02:1;%待求插值点yy=interp1(x,y,xx,'spline');%此处可用nearest,cubic,spline分别试验subplot(1,2,2)plot(x,y,'ro',xx,yy,'b')%作图图1(1)原始点图图1(2)样条插值图实验2.AMCM91A估计水塔水流量美国某洲的各用水管理机构要求各社区提供以每小时多
3、少加仑计的用水率以及每天总的用水量,但许多社区并没有测量水流入或流出当地水塔的水量的设备,他们只能代之以每小时测量水塔中的水位,精度在0.5%以内,更为重要的是,无论什么时候,只要水塔中的水位下降到某一最低水位L时,水泵就启动向水塔重新充水至某一最高水位H,但也无法得到水泵的供水量的测量数据。因此,在水泵工作时,人们容易建立水塔中的水位与水泵工作时的用水量之间的关系。水泵每天向水塔充水一次或两次,每次约两小时。表1白某小镇某天的水塔水位时间(秒)033166635106191393717921212402522328543水位(0.01英尺)317
4、531103054299429472892285027972752时间(秒)322843593539332394354331846636499535393657254水位2697水泵工作水泵工作355034453350326031673087时间605746455468535718547502179154826498596889953水位30122927284227672697水泵工作水泵工作34753397时间93270水位3340试估计在任何时刻,甚至包括水泵正在工作期间内,水从水塔流出的流量,并估计一天的总用水量,表1中给出了某个真实小镇某一
5、天的真实数据。表1中给出了从第一次测量开始的以秒为单位的时刻,以及该时刻的高度单位为百分之一英尺的水塔中水位的测量值,例如,3316秒后,水塔中的水位达到31.10英尺。水塔是一个垂直圆形柱体,高为40英尺,直径57英尺,通常当水塔的水位降至27.00英尺时水泵开始向水塔充水,而当水塔的水位升至35.50英尺时水泵停止工作。解答:1.水塔充水时间的确定(1)第一次充水时间的确定当时间t=32284秒时,水位26.97英尺,约低于最低水位27英尺,因此可作为第一次开始充水时刻。当t=39435秒时,水塔水位35.5英尺,恰为最高水位,因此可作为第一次
6、充水的结束时刻。充水时间为dt=(39435-32284)/3600=1.9864小时,也接近充水时间2小时。(2)第二次充水时间的确定当时间t=75021秒时,水位26.97英尺,约低于最低水位27英尺,因此可作为第二次开始充水时刻。当t=82649秒时,水泵在工作,但充水时间达到dt=(82649-75021)/3600=2.1189小时;但下一时刻t=85968时,水塔水位34.75英尺,低于最高水位35.50英尺。因此可将t=82649秒作为第二次充水的结束时刻,且该时刻水位为最大充水高度35.50英尺。2.计算各时刻塔内水的体积单位转换为
7、1英尺=0.3048米,1升=1/3.785411加仑体积计算公式为表2不同时刻水体积表时间(小时)水体积(加仑)时间(小时)水体积(加仑)时间(小时)水体积(加仑)0(1)60612510.9542(2)67771520.83925148720.921159371612.032865767022.9581(3)6777151.843158302612.954463953423.88006633972.949757157113.875862235224.98696485063.871456259914.982260459825.9083637625
8、4.978155209915.90395893255.900054408116.82615750087.006453396