三次样条插值matlab,Matlab关于三次样条插值

t中有重复的数据 没法插值运算,你可以剔除重复数据,在运行一次。

t=[0.0132    0.0210    0.0256    0.0286    0.0316    0.0353    0.0386    0.0401    0.0401    0.0401    0.0407    0.0425    0.0448    0.0472    0.0492    0.0507    0.0524    0.0546    0.0567    0.0585    0.0604    0.0628    0.0654    0.0689    0.0728    0.0760    0.0793    0.0832    0.0873    0.0914    0.0962    0.1024    0.1100    0.1185    0.1278    0.1386    0.1512    0.1650    0.1800    0.1954    0.2107    0.2263    0.2417    0.2560    0.2692    0.2822    0.2952    0.3076    0.3186    0.3281    0.3357    0.3409    0.3457    0.3507    0.3546    0.3576    0.3600    0.3624    0.3643    0.3663    0.3689    0.3723    0.3762    0.3862    0.3909    0.4035    0.4189    0.4334    0.4470    0.4605    0.4737    0.4860    0.4973    0.5081    0.5198    0.5319    0.5436    0.5553    0.5679    0.5815    0.5952    0.6082    0.6207    0.6327    0.6444    0.6567    0.6697    0.6833    0.6966    0.7096    0.7230    0.7373    0.7520    0.7661    0.7795    0.7925    0.8053    0.8176    0.8293    0.8404    0.8516    0.8640    0.8774    0.8911    0.9023    0.9092    0.9134    0.9166    0.9194    0.9214    0.9229    0.9244    0.9259    0.9274    0.9290    0.9298    0.9305    0.9316    0.933 3   0.9348    0.9359    0.9372    0.9383    0.9394    0.9413    0.9441    0.9474    0.9506    0.9541    0.9575    0.9610    0.9649    0.9695    0.9742    0.9794    0.9855    0.9924    1.0011    1.0123];

q=[ 71.4082   72.3927   73.4094   74.6165   75.8582   77.1000   78.3071   79.5144   80.7219   81.9468   83.1891   84.4140   85.6559   86.8805   88.1052   89.3471   90.5718   91.8138   93.0385   94.2631   95.4878   96.7297   97.9544   99.1789  100.3861  101.5933  102.8177  104.0422  105.2493  106.4392  107.6463  108.8533  109.9910  111.0423  112.0762  113.0754  113.9536  114.6936  115.1918  115.4482  115.5839  115.7540  115.9241  115.8872  115.5055  114.8995  114.2074  113.4980  112.7369  111.8898  110.9221  109.8340  108.6772  107.5033  106.3465  105.1727  103.9472  102.7219  101.4965  100.2712   99.0460   97.8206   96.6123   95.4040   95.3679   96.5404   96.8145   96.5016   95.9127   95.3067   94.7008   94.0603  93.2993   92.4349   91.5533   90.7578   89.9968   89.2013   88.3886   87.6620   87.0560   86.4500   85.7751   85.0313   84.2185   83.3886   82.6275   81.9871   81.3811   80.7234   80.0486   79.4599   78.9918   78.5927   78.1419   77.5360   76.8438   76.1172   75.3734   74.5607   73.6790   72.7974   71.9845   71.4304   71.3937   72.0131   73.1335   74.3923   75.6168   76.8414   78.0660   79.2908   80.5328   81.7748   83.0168   84.2415   85.4836   86.7258   87.9506   89.1753   90.4173   91.6594   92.8841   94.1262   95.3683   96.5930   97.8175   99.0247  100.2320  101.4392  102.6463  103.8708  105.0607  106.2504  107.4402  108.6126  109.7504  110.8535  111.8873  112.7483];

[t1,I,J]=unique(t);

[t1,I,J]=unique(t);

q1=0*t1;

for i=1:length(I)

q1(i)=q(I(i));

end

t11=linspace(t1(1),t1(105),256);

q11=interp1(t1,q1,t11,'spline');

plot(t,q,'r*',t11,q11,'bo');

%axis([-0.25,1.25,50,150]);

xlabel('t(s)');ylabel('P(mmhg)');

[本帖最后由 dbb627 于 2011-3-22 15:42 编辑]

untitled.jpg

(25.39 KB, 下载次数: 0)

2011-3-22 15:42 上传

442a53943febe9465fc072b4fbe10813.gif

b2a5a3e0dcc7d508e00275fe42fce1b5.gif

5bb58fc39559e5bf950761fe744367c8.png