±±¾©Ê¯ÓÍ»¯¹¤Ñ§Ôº2026ÄêÑо¿ÉúÕÐÉú½ÓÊÕµ÷¼Á¹«¸æ
²é¿´: 340  |  »Ø¸´: 1
¡¾½±Àø¡¿ ±¾Ìû±»ÆÀ¼Û1´Î£¬×÷ÕßfspdlhÔö¼Ó½ð±Ò 1 ¸ö
µ±Ç°Ö÷ÌâÒѾ­´æµµ¡£

fspdlh

½ð³æ (ÕýʽдÊÖ)


[×ÊÔ´] ¡¾Ô­´´¡¿Èýµã·¨»òÎåµã·¨ÊýÖµÇóµ¼³ÌÐò

°ÑÒÔÏ´úÂ뿽µ½mÎļþÀï¾Í¿ÉÒÔÁË
function y=NumDiff(X,Y,x,method_fit,point_min_ins,method_diff)
% Get the differential coefficient of data base on X and Y
% y=NumDiff(X,Y)
% y=NumDiff(X,Y,x)
% y=NumDiff(X,Y,x,method_fit)
% y=NumDiff(X,Y,x,method_fit,point_min_ins)
% y=NumDiff(X,Y,x,method_fit,point_min_ins,method_diff)
%   X Y  must be vectors of the same length,raw data
%   x    points output
%   method_fit   the method of fit,'spline' or 'pchip'
%   point_min_ins   numbers of points input to the nearest step of X
%   method_diff   3 or 5, 3 points method or 5 points method

%--------------------------------------------------------------------------
%paraments initialization
if nargin<2
    error('Not enough paraments!');
end
if nargin<3
    x=X;
end
if nargin<4
    method_fit='pchip';
end
if nargin<5
    point_min_ins=5;
end
point_min_ins=point_min_ins+1;
if nargin<6
    method_diff=5;
elseif method_diff~=3 && method_diff~=5
    error('method error');
end
[m_X n_X]=size(X);
if m_X==1 && n_X>1
    X=X';
    temp=m_X;
    m_X=n_X;
    n_X=temp;
elseif m_X>1 && n_X>1
    error('X must be a vector');
end
[m_Y n_Y]=size(Y);
if m_Y~=m_X && n_Y==m_X
    Y=Y';
elseif m_Y~=m_X && n_Y~=m_X
    error('X and Y must have the same groups of data!');
end
%--------------------------------------------------------------------------
%step
N=ceil(   (    max(X)-min(X)    )/ ...
          ( min(abs(diff(X))/point_min_ins ) )  )+1;
h=(max(X)-min(X))./(N-1);
X1=[min(X):h:max(X)]';
Y1=interp1(X,Y,X1,method_fit);
%--------------------------------------------------------------------------
%coefficient
coef=zeros(N,N);
if method_diff==5
    coef(1:2,1:5)=[-25 48 -36 16 -3;-3 -10 18 -6 1];
    coef(3:N+1:N*(N-4))=1;
    coef(N+3:N+1:N*(N-3))=-8;
    coef(3*N+3:N+1:N*(N-1))=8;
    coef(4*N+3:N+1:N*N)=-1;
    coef(N-1:N,N-4:N)=[-1 6 -18 10 3;3 -16 36 -48 25 ];
    coef=coef./12;
elseif method_diff==3
    coef(1,1:3)=[-3 4 -1];
    coef(2:N+1:N*(N-2))=-1;
    coef(2*N+2:N+1:N*N)=1;
    coef(N,N-2:N)=[1 -4 3];
    coef=coef./2;
end
%--------------------------------------------------------------------------
%output
dif=coef*Y1./h;
y=interp1(X1,dif,x,method_fit);

[ Last edited by fspdlh on 2009-4-16 at 16:41 ]
»Ø¸´´ËÂ¥

» ²ÂÄãϲ»¶

ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

sunxiao

ÈÙÓþ°æÖ÷ (ÖøÃûдÊÖ)


¡ï¡ï¡ï¡ï¡ï ÎåÐǼ¶,ÓÅÐãÍÆ¼ö

ллÌṩ
2Â¥2009-03-20 13:46:34
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
Ïà¹Ø°æ¿éÌø×ª ÎÒÒª¶©ÔÄÂ¥Ö÷ fspdlh µÄÖ÷Ìâ¸üÐÂ
¡î ÎÞÐǼ¶ ¡ï Ò»ÐǼ¶ ¡ï¡ï¡ï ÈýÐǼ¶ ¡ï¡ï¡ï¡ï¡ï ÎåÐǼ¶
×î¾ßÈËÆøÈÈÌûÍÆ¼ö [²é¿´È«²¿] ×÷Õß »Ø/¿´ ×îºó·¢±í
[¿¼ÑÐ] Ò»Ö¾Ô¸±±¾©»¯¹¤´óѧ£¬³õÊԳɼ¨350Çóµ÷¼Á +9 ÑØ°¶?±´¿Ç 2026-04-04 14/700 2026-04-05 01:09 by ÑØ°¶?±´¿Ç
[¿¼ÑÐ] 0855Çóµ÷¼Á²ÄÁÏ +6 ºìÌÒׯׯ 2026-04-04 6/300 2026-04-04 23:35 by ¹û¶³´óÍõ
[¿¼ÑÐ] 0835ѧ˶299Çóµ÷¼Á 08´óÀà¿É½ÓÊÜ +5 useryy 2026-04-03 5/250 2026-04-04 20:07 by À¶ÔÆË¼Óê
[¿¼ÑÐ] 321Çóµ÷¼Á +6 ÈÏÕæÇóÉÏѧ 2026-04-03 6/300 2026-04-04 19:51 by dongzh2009
[¿¼ÑÐ] 085602 ÕÒµ÷¼Á +4 ÄæÊ±Õë¿ìÀÖ 2026-04-02 4/200 2026-04-04 19:32 by À¶ÔÆË¼Óê
[¿¼ÑÐ] Ò»Ö¾Ô¸½­ÄÏ´óѧ085501»úе¹¤³Ìר˶326·Ö£¬±¾¿Æ¼Ñľ˹´óѧ +4 ¹ËÈô¸¡Éú 2026-04-03 8/400 2026-04-03 22:31 by zhq0425
[¿¼ÑÐ] Çóµ÷¼Á +8 akdhjs 2026-04-03 8/400 2026-04-03 18:17 by ´÷άING
[¿¼ÑÐ] ²ÄÁÏר˶322·Ö +13 ¹þ¹þ¹þºðºðºð¹þ 2026-04-01 13/650 2026-04-03 16:08 by ŶŶ123
[¿¼ÑÐ] Ò»Ö¾Ô¸±±¾©½»Í¨´óѧ²ÄÁϹ¤³Ì×Ü·Ö358 +4 cs0106 2026-04-03 4/200 2026-04-03 13:41 by °ÙÁéͯ888
[¿¼ÑÐ] 266·Ö£¬Ò»Ö¾Ô¸µçÆø¹¤³Ì£¬±¾¿Æ²ÄÁÏ£¬Çó²ÄÁÏרҵµ÷¼Á +9 ÍÛºôºßºôºß 2026-04-02 9/450 2026-04-03 12:05 by 1753564080
[¿¼ÑÐ] 366Çóµ÷¼ÁÒ»Ö¾Ô¸¶«±±´óѧ +8 ÔËÆøÀ´µÃÈôÓÐËÆÎ 2026-04-02 8/400 2026-04-02 21:39 by dongzh2009
[¿¼ÑÐ] Ò»Ö¾Ô¸Î人Àí¹¤0856£¬³õÊÔ334 +3 26¿¼ÑвÄÁÏ 2026-04-02 3/150 2026-04-02 21:22 by dongzh2009
[¿¼ÑÐ] ²ÄÁÏ340·Öµ÷¼Á +7 ÏÄÒ¹Íí·ç_long 2026-04-02 9/450 2026-04-02 21:20 by dongzh2009
[¿¼ÑÐ] 22408 266Çóµ÷¼Á +3 masss11222 2026-04-02 3/150 2026-04-02 18:11 by ±ÊÂä½õÖÝ
[¿¼ÑÐ] 0710ÉúÎïѧÇóµ÷¼Á +9 manman511 2026-04-01 9/450 2026-04-02 10:00 by zxl830724
[¿¼ÑÐ] 270µ÷¼Á +7 maxjxbsk 2026-04-02 7/350 2026-04-02 09:50 by yulian1987
[¿¼ÑÐ] 265Çóµ÷¼Á +11 yelck 2026-04-01 12/600 2026-04-01 19:12 by 549790059
[˶²©¼ÒÔ°] ¿¼Ñе÷¼Á +5 ÂæÍÕÄÐÈË 2026-04-01 5/250 2026-04-01 14:28 by syjjj0321
[¿¼ÑÐ] 266Çóµ÷¼Á +3 ÍÛºôºßºôºß 2026-03-29 3/150 2026-03-31 10:06 by cal0306
[¿¼ÑÐ] 262Çóµ÷¼Á +7 ZZ..000 2026-03-30 8/400 2026-03-31 10:05 by cal0306
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û