from Adaptive-Degree Polynomial Filter (Savitzky-Golay Filter) by Jianwen Luo
Obtain the polynomial degree selected in the adaptive-degree polynomial filter.

value=Pkmi_closed_form(k,m,i)
function value=Pkmi_closed_form(k,m,i)
global Pkmi_array
switch(k)
    case -1
        value=0;
    case 0
        value=1;
    case 1
        value=1/m*i;
    case 2    
        value=(3*i^2-m^2-m)/(2*m-1)/m;
    case 3    
        value=i*(5*i^2-3*m^2-3*m+1)/(m-1)/(2*m-1)/m;
    case 4
        value=1/2*(35*i^4-30*i^2*m^2-30*i^2*m+25*i^2+3*m^4+6*m^3-3*m^2-6*m)/(2*m-3)/(m-1)/(2*m-1)/m;
    case 5
        value=1/2*i*(63*i^4-70*i^2*m^2-70*i^2*m+105*i^2+15*m^4+30*m^3-35*m^2-50*m+12)/(m-2)/(2*m-3)/(m-1)/(2*m-1)/m;
    case 6    
        value=1/2*(231*i^6-315*i^4*m^2-315*i^4*m+735*i^4+105*i^2*m^4+210*i^2*m^3-420*i^2*m^2-525*i^2*m+294*i^2-5*m^6-15*m^5+25*m^4+75*m^3-20*m^2-60*m)/(2*m-5)/(m-2)/(2*m-3)/(m-1)/(2*m-1)/m;                
    case 7 
        value=1/2*i*(180-882*m+2121*i^2-497*m^2-1890*i^2*m^2-2205*i^2*m+2310*i^4+735*m^3+280*m^4-693*i^4*m^2-693*i^4*m+315*i^2*m^4+630*i^2*m^3+429*i^6-105*m^5-35*m^6)/(m-3)/(2*m-5)/(m-2)/(2*m-3)/(m-1)/(2*m-1)/m;        
    case 8
        value=1/8*(-5040*m+27396*i^2-1260*m^2-41118*i^2*m^2-59388*i^2*m+93555*i^4+6860*m^3+1715*m^4+6435*i^8+140*m^7-12012*i^6*m^2-12012*i^6*m+6930*i^4*m^4+13860*i^4*m^3-3780*i^2*m^5-1260*i^2*m^6-57750*i^4*m^2-64680*i^4*m+14490*i^2*m^4+35280*i^2*m^3+54054*i^6-1960*m^5-490*m^6+35*m^8)/(2*m-7)/(m-3)/(2*m-5)/(m-2)/(2*m-3)/(m-1)/(2*m-1)/m;        
    case 9
        value=1/8*i*(20160-109584*m+289300*i^2-53052*m^2-288750*i^2*m^2-374220*i^2*m+435435*i^4+105084*m^3+32907*m^4+12155*i^8+1260*m^7-25740*i^6*m^2-25740*i^6*m+18018*i^4*m^4+36036*i^4*m^3-13860*i^2*m^5-4620*i^2*m^6-198198*i^4*m^2-216216*i^4*m+71610*i^2*m^4+166320*i^2*m^3+150150*i^6-22680*m^5-6090*m^6+315*m^8)/(m-4)/(2*m-7)/(m-3)/(2*m-5)/(m-2)/(2*m-3)/(m-1)/(2*m-1)/m;        
    case 10   
        value=1/8*(-181440*m+3600597*i^6-85995*m^5-17199*m^6-87780*i^2*m^6-1261260*i^6*m^2-1351350*i^6*m+600600*i^4*m^4+1351350*i^4*m^3-3228225*i^4*m^2-3918915*i^4*m+657195*i^2*m^4+1850310*i^2*m^3-311850*i^2*m^5+802230*i^8+9450*m^7+1890*m^8-63*m^10+46189*i^10-315*m^9-30030*i^4*m^6-109395*i^8*m^2-109395*i^8*m+90090*i^6*m^4+180180*i^6*m^3-90090*i^4*m^5+13860*i^2*m^7+3465*i^2*m^8+1062864*i^2+4467320*i^4+258300*m^3+51660*m^4-36288*m^2-1624260*i^2*m^2-2603700*i^2*m)/(2*m-9)/(m-4)/(2*m-7)/(m-3)/(2*m-5)/(m-2)/(2*m-3)/(m-1)/(2*m-1)/m;
    case 11
        value=1/8*i*(-5314320*m+907200-230945*i^8*m^2-230945*i^8*m+218790*i^6*m^4+437580*i^6*m^3-270270*i^4*m^5-90090*i^4*m^6+60060*i^2*m^7+15015*i^2*m^8+15047604*i^2+88179*i^10-3465*m^9-693*m^10-15940210*i^2*m^2-22336600*i^2*m-15480465*i^4*m^2-18002985*i^4*m+4699695*i^2*m^4+12222210*i^2*m^3+28123095*i^4+5517600*m^3+1484835*m^4-2294028*m^2-3792360*i^6*m^2-4011150*i^6*m+2252250*i^4*m^4+4954950*i^4*m^3-1651650*i^2*m^5-480480*i^2*m^6+2078505*i^8+127050*m^7+26565*m^8+13630617*i^6-1435665*m^5-325479*m^6)/(m-5)/(2*m-9)/(m-4)/(2*m-7)/(m-3)/(2*m-5)/(m-2)/(2*m-3)/(m-1)/(2*m-1)/m;
    case 12
        value=1/16*(-19958400*m+900900*i^4*m^7+225225*i^4*m^8+2078505*i^8*m^4+4157010*i^8*m^3-1939938*i^10*m^2-1939938*i^10*m-3063060*i^6*m^5-1021020*i^6*m^6-90090*i^2*m^9-18018*i^2*m^10+606770164*i^4+29211336*m^3+4868556*m^4+3963960*i^2*m^7+855855*i^2*m^8+31141110*i^6*m^4+67387320*i^6*m^3-43648605*i^8*m^2-45727110*i^8*m-29729700*i^4*m^5-8858850*i^4*m^6-3326400*m^2-190606416*i^2*m^2-331047288*i^2*m+123870240*i^2+192746697*i^8+1417878*m^7+236313*m^8+21015995*i^10-76230*m^9-12705*m^10+108978870*i^4*m^4+268558290*i^4*m^3-265669404*i^6*m^2-299873574*i^6*m-54504450*i^2*m^5-13417404*i^2*m^6+676039*i^12+1386*m^11+231*m^12+82846335*i^2*m^4+261338220*i^2*m^3-479323845*i^4*m^2-618708090*i^4*m+611676065*i^6-10595970*m^5-1765995*m^6)/(2*m-11)/(m-5)/(2*m-9)/(m-4)/(2*m-7)/(m-3)/(2*m-5)/(m-2)/(2*m-3)/(m-1)/(2*m-1)/m; 
    case 13
        value=1/16*i*(-743221440*m+119750400-1171170*m^9+4849845*i^8*m^4+9699690*i^8*m^3-4056234*i^10*m^2-4056234*i^10*m-8314020*i^6*m^5-2771340*i^6*m^6-201201*m^10+4879114240*i^4+812591208*m^3+193458408*m^4+101153910*i^6*m^4+216164520*i^6*m^3-121246125*i^8*m^2-126095970*i^8*m-119459340*i^4*m^5-36246210*i^4*m^6-292936176*m^2-2443745304*i^2*m^2-3640620984*i^2*m+2224495728*i^2+645029385*i^8+25999974*m^7+4693689*m^8+52055003*i^10+545735190*i^4*m^4+1294142850*i^4*m^3-1047012252*i^6*m^2-1156480182*i^6*m-385314930*i^2*m^5-100480380*i^2*m^6+18018*m^11+1300075*i^12+793407615*i^2*m^4+2257234980*i^2*m^3-3002564565*i^4*m^2-3670056390*i^4*m+2975541569*i^6-235739790*m^5-46540923*m^6-90090*i^2*m^10-450450*i^2*m^9+3063060*i^4*m^7+765765*i^4*m^8+23423400*i^2*m^7+5180175*i^2*m^8+3003*m^12)/(m-6)/(2*m-11)/(m-5)/(2*m-9)/(m-4)/(2*m-7)/(m-3)/(2*m-5)/(m-2)/(2*m-3)/(m-1)/(2*m-1)/m; 
    otherwise       
        value=2*(2*k-1)/k/(2*m-k+1)*i*Pkmi_array(k-1+2,m,i+m+1)-(k-1)*(2*m+k)/k/(2*m-k+1)*Pkmi_array(k-2+2,m,i+m+1);           
end

Contact us at files@mathworks.com