From a6a560887bb14a695419c10971627e63fdb7f64a Mon Sep 17 00:00:00 2001 From: github-actions Date: Wed, 3 Aug 2022 08:10:34 +0000 Subject: [PATCH] Update main documentation --- main/CFFTQ15.gif | Bin 4299 -> 0 bytes main/CFFTQ31.gif | Bin 4380 -> 0 bytes main/CIFFTQ15.gif | Bin 4292 -> 0 bytes main/CIFFTQ31.gif | Bin 4340 -> 0 bytes main/ChangeLog_pg.html | 4 ++ main/ConvolutionEquation.gif | Bin 2644 -> 0 bytes main/CorrelateEquation.gif | Bin 2638 -> 0 bytes main/DCT4Equation.gif | Bin 2793 -> 0 bytes main/IDCT4Equation.gif | Bin 2739 -> 0 bytes main/MatrixAddition.gif | Bin 5014 -> 0 bytes main/MatrixInverse.gif | Bin 6346 -> 0 bytes main/MatrixScale.gif | Bin 4617 -> 0 bytes main/MatrixSubtraction.gif | Bin 5212 -> 0 bytes main/MatrixTranspose.gif | Bin 3185 -> 0 bytes main/dct4FormatsQ15Table.gif | Bin 3061 -> 0 bytes main/dct4FormatsQ31Table.gif | Bin 3128 -> 0 bytes main/dct4NormalizingF32Table.gif | Bin 2363 -> 0 bytes main/dct4NormalizingQ15Table.gif | Bin 2505 -> 0 bytes main/dct4NormalizingQ31Table.gif | Bin 2648 -> 0 bytes main/deprecated.html | 40 ++++++----- main/footer.js | 4 +- main/group__ComplexFFT.html | 100 ++++++++++++++++++---------- main/group__Conv.html | 20 +++--- main/group__Corr.html | 19 +++--- main/group__DCT4__IDCT4.html | 87 ++++++++++++++++-------- main/group__FIR__Lattice.html | 1 + main/group__FIR__Sparse.html | 1 + main/group__MatrixAdd.html | 8 +-- main/group__MatrixComplexTrans.html | 9 +-- main/group__MatrixInv.html | 12 ++-- main/group__MatrixScale.html | 9 +-- main/group__MatrixSub.html | 10 +-- main/group__MatrixTrans.html | 9 +-- main/group__RealFFT.html | 4 +- version.js | 2 +- 35 files changed, 212 insertions(+), 127 deletions(-) delete mode 100644 main/CFFTQ15.gif delete mode 100644 main/CFFTQ31.gif delete mode 100644 main/CIFFTQ15.gif delete mode 100644 main/CIFFTQ31.gif delete mode 100644 main/ConvolutionEquation.gif delete mode 100644 main/CorrelateEquation.gif delete mode 100644 main/DCT4Equation.gif delete mode 100644 main/IDCT4Equation.gif delete mode 100644 main/MatrixAddition.gif delete mode 100644 main/MatrixInverse.gif delete mode 100644 main/MatrixScale.gif delete mode 100644 main/MatrixSubtraction.gif delete mode 100644 main/MatrixTranspose.gif delete mode 100644 main/dct4FormatsQ15Table.gif delete mode 100644 main/dct4FormatsQ31Table.gif delete mode 100644 main/dct4NormalizingF32Table.gif delete mode 100644 main/dct4NormalizingQ15Table.gif delete mode 100644 main/dct4NormalizingQ31Table.gif diff --git a/main/CFFTQ15.gif b/main/CFFTQ15.gif deleted file mode 100644 index 904a6d901caeca8ff37b9222e078cecf9069c306..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4299 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 N(fOgF3@017`aj=rN00yj diff --git a/main/CFFTQ31.gif b/main/CFFTQ31.gif deleted file mode 100644 index 12b742625ac09f4aeec5df0c26b716e83354c037..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4380 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 diff --git a/main/CIFFTQ15.gif b/main/CIFFTQ15.gif deleted file mode 100644 index 57c16f6326ff042426f4c1b60d9ad6ef26228858..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4292 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 Version Description +1.11.0

Improved documentation.

+

QR decomposition using Householder transform.

+ + 1.10.1 First release with new repository diff --git a/main/ConvolutionEquation.gif b/main/ConvolutionEquation.gif deleted file mode 100644 index d4334fa4aed364dddeeb6df3fcdfbf1c0579f6b2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2644 zcmZ?wbhEHbJjGzg@SOn!8o;;#Of>*`4Gjl?;Ld?%r#=8>e0_a0GBRpvYI=HlX3d(l zeEITCn>Ov;yZ89<;}{{z*Jg3%BdR3Y&H_lE@wmNYap zfKumw25=$;5+D{3DE?#tyH*E8g7QQ=kZu6u(HsE`hEXv5LI8h`;P}U2%pv2kVZp&> z4q>gB6B`yDZWmDYn&Yu?(a~-RY>4 z6(NVia!-jqyR<3(eBM;8ZMvSbvJ4)-$Hy%MjeXwC_~dkYvg+?EIf8mF=NlcZMdnV};&oXtP&*`cqT{3M8*au;+dHc) z{I*(T|FPPD??uR_@vMtzRVV zpHo5v(K8!qegMKL43 zN${k5qx+Jl>W&R8Pq)k0D0#lP>&jy!aj}#kxtE@hV>sKCrchwE?u5>qdr^|PY?p(+hrYnAQtY5 zRRPuEd@7kM7d$Ob*)7Ir5?ji6+2Z|@%&k!q4t%yO*XciY^|jRcZ?mpA?BH73{&9t( zS*8q&anYQ@ZlEs{vet3ut-Ak$>$~Y3Ic^oz zOa06r${#dmuc~~)>*H79^vPCWUHZD47DXFl?6+)p5#N!vYi{DFE-Qxjw%JD0Bpe>x zViGt}yZcq8`0IdIk}uZ1>Hgb#rQwcb>5G`x=3&-VXV1OQ6WHcEO*qeI9z>|9`-*?VkiH-TU>z#i(h>6KKo_O_KDvLm)Whm)G`)3(l%&2%T|gQ#hEYkkeCskgqAlP3q19c6X0MLbE=!X!tDT3O{j3%uUUh zr9_ddkXcmn)(4|Mj;DFcPl#N(GNIkn;mN6_X`c=&dtd_t!d~I| iCl2k`&}a)evq)_FiKBW|AG;HH7E2tzaj1cT!5RQKm4ER7 diff --git a/main/CorrelateEquation.gif b/main/CorrelateEquation.gif deleted file mode 100644 index 1a62fb17035155179268508231844f87c38f8489..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2638 zcmeHG=~Giz6n|E-feN-5AcZLj$R<@RG6E_E!}5YoOBE@JxCASp)v6e&xYQTc2nt~d z5b}Z{ViI8@VGE#zkU}hr3!s>yKu~OqOCfYvTrlZN{(yey#}2=HmV3_m&7C`E&WWIe z`v=g+fJk5-Faa_vWOfh|K~M*Rkq%L>9;pBT2mlNKgaHO33M2pl5Cj;Y2{6cDfJhQX zM8h!i7y!crg%Jh;*vx=6Mg;>H82CAXp9<-(TGry z6ylHy5}7}+Xcjy0-#cLZpce?LAP6!IlMyh_6k<#_1jKh1=BK?)*0dAZh=nrs+&9G>GqC2~M|kdb~b7!{(C%!9YJ#@<5DAJXZ!q z3$V+g8hWEG0RZjbU@ySdq}|TBv3xH!?u3%Oli)jo&ls3pvRoGL>oe5be3d0y6Uesj zb4FoTt+AJ|=)~(5t1dW|I+dNCo>2Z!J2wiSP^DFGh~JF&ATLd7N%ngH6{I-FcBGK= z^X{~!gvny>-Y(gadQ^Qg=44UqueKeNt5Oag(H*^&O2&iqu9&;L+bo;#8dAjQ26U#~ z*pOlH(Vd$r+zXvuj_y5olX7;ul3?A|*g33uaI5|D6Q{IiGXUCS9J0VCjWe-s5@+)K zN9}mJ^`v|}1EWF(pIs((CuTa{6sa#*F`MYwPJ@2?vRn$gpPp~^Y~<(o&{)Jv8?xRK zPx@*7?T!Zyc5%M9RAPh_Z{f^=T(okd3pqmQ>Y5i8qQ{ecmQf2Yi7!_@EXLyJN?v zjazAWx%Rr$y1V&vVRJjXhGu&$va`CaiS}Jw4kgo;yC5Bhb|=dZ6EpU_Oy%vB(z}jO zN&8un1jdTS*TJM{eVKS7e%IQtfp4CKGzlZ0Q%fe~rTo^}!qC#nxp;eT>CSd}ZR`HD zp~vOPgmcm1PlGO0g4&aK?5he~z}JP-_I}*{q8n$R zM#^BVfj#R+&)?s*rR3P8Ry+T;dGe}w%5g&G9?kuL8Qb=5ZUzIYpQAi8FBo(M-`+=K zeSk;kprvo9OO|(cpabcv+Or!`;VZ zZ!Ax*WUuR{60Q24{brYd3i^^jJWg6ouzJjPUsv18vDz+RC%5Ucqh1nYp+|~q9@ZD5 eE(vYLpvsFjofCUUh;QyztvxfH`vndQZ2AYtsM>D; diff --git a/main/DCT4Equation.gif b/main/DCT4Equation.gif deleted file mode 100644 index b6d16cfc5d3c470271274fe3d0179a48e30d124a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2793 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 diff --git a/main/MatrixAddition.gif b/main/MatrixAddition.gif deleted file mode 100644 index d754c82fc03e01d1dd14abc2ec4b7df8903d76b1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5014 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 diff --git a/main/MatrixInverse.gif b/main/MatrixInverse.gif deleted file mode 100644 index fb8e5bd1fca4c364265ba018a73559ad6b8d1069..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6346 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 diff --git a/main/MatrixSubtraction.gif b/main/MatrixSubtraction.gif deleted file mode 100644 index 933b9f45058ea5cb4ca653fce652eeed44169a06..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5212 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 diff --git a/main/MatrixTranspose.gif b/main/MatrixTranspose.gif deleted file mode 100644 index 219220e4b99dc84e0a036c86a096edc158d03a35..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3185 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 diff --git a/main/dct4FormatsQ15Table.gif b/main/dct4FormatsQ15Table.gif deleted file mode 100644 index 050999cb1eac1e17c0538eba4e39ffef90eac7f5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3061 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 diff --git a/main/dct4FormatsQ31Table.gif b/main/dct4FormatsQ31Table.gif deleted file mode 100644 index 7491187712d1c4c553f7e283e6c9925562fab5c1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3128 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 HAdUY4DkU_T diff --git a/main/dct4NormalizingF32Table.gif b/main/dct4NormalizingF32Table.gif deleted file mode 100644 index f3536b8ca109cd3598cc10138868dd16caf68fe7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2363 zcmb_bi#t?%7v9NnN?)a~(_>u1L2?_(E*VNbG?;Fu6G`MW`p%Y;LFjT6@}VKQU$$~L zO|Hi!N0BIm?8NEfR--~Bl4~yUJ8RG1@U7>WXV03o*1O*KU3;u-*hVbw{$+vKH;j%z z@h4FH2!t$EQy7luB7tKB zfe|D|P#A&eUJ}Ph0wYO`q%acEqZE!&1V)h-JqJTCHOhW?}3_~}f z_s~J$IEmvFjw5<4WCVc|Bu-E`foK*`Bng}(agxGGM3aJEiohunrzo64z!64qMBs?T z5rrez3akMPNCQit1vOX<*Z>V!FpOwHbPhoh1Vs>t)(2}LBT0g!2olk9fdv#PlAtJp zLZBW%umKvd5bYdYh8%(-Nkkh7 z`d}?&6h%@9dj8d@(SF|b3X^zu8oafYBDria4Kl#*Y<+_k3H;s7R zRCAf|dAivd>D8S0q1G(xIPK$=UYak28=}lpIpwEqg-6O%nJ3%bho zHX829w`2BHc>ZbXqadsGw(`QH(gVlnKSgO*kaVcR(G15JN0z*yqBpNGz+^+x{_l*^ z#*74}PQ3fLK^Ns#Vyx6eZgp#pQB&x@Ua3!%2#%jOJ$9+wy(i__>jT5{9`3m{vV&_B z7Rox`M30Knc6qTH-umt7)9Ae9+gn!<$umrSpgEP^yTb(WOqX1EogMchWY<0@cYSVl z`5bS|d9rU<=pYmY{N@!ftbAP9%Uh~W>I#_avX%3%+hDD5iji8O6gYgg-_i5!d)YMh z1Ud80e`)LO6G19@VJZBD?ML6c>E>Na4_Ec;a0$(Qc843O$VpNPX>w?43z|w`^m@&e z&t^qeRa zi72kiC&5)rqB-Z9jNfgwC=c&}L9SEc%E9RWc6aut6OS3Lf0!SeNliFlKF@VA$htU~ z;qb+6=*Hu5R%+H}!fNQ)%j5C`nfxbOiZ=~BR`&5{f)J-8CGH{T=7AK|kDa;yiv6e= zP*Z82X3-hMRxZ9^oabJ=%vnRjWpR4`%++Z*V--IM_QJr`i^Hsr6P(o%_9x$&3Vy$T zGOH&#eK>UHY*qH-7E$QLM<0)BBYwo#!+Q@~cr{4Mz38@tRSxgbiuHRvAAdF&(Z8^2 z_rARPpR5>O4VSqEB~H@3H^q%A=XJfC9An%k>UXC(l|I!yKkwD@@NvOJHB(u)?7_A& z_sM6YA9v!j#k_~Oa`jMp z+?whs#lfY;Fa6GI|C$l3?OmK13Et8!>e*4VFj3rCV?RHhz+7ne+wNp+#= z+_QrL3zJE+r6HNKzB*@vmMaCxS1`Go+8ot_9me&V;;R}WgBK=L8VpyMi@x$aHWehT zm`*gml`6wyj&!Zs&9Lw-{K{1?c>mepD84c4jGNu6EEyDLU9T!Xey#sQW~=|HyK*<8 z`CW%Iq%w_?6^wPmZ0l3Mc!W0S5}fc|Q>sI?_bj*GXyNN_QS}itz zd;3fI{H!M{XLe-9ATd-@L)SjH$wH~vqH$`#;Nrzv2Wd}cfT93j$FjDb7(EuI(Dy&3 zq@0ru`YCU|545%AZrrqVJ=M8HwQk?agQxvUuTS5)Zqh-bgO~MW(id~WcdlnY59Hvf zF8Cd@_G=a)dOmvA*Y8+v=Cp^a#$?+24B1MB7hjc+&;DWZl-Yl@^?l~VtCI`}$*=Bm z@pH|#HAFVoW9-geWL1!UUyR}GTGD>3+{#Wib6lnXBy3)x=t zhx1dSBfn3LxPIerYrip*KDMp!yuR_lSL`3}3VhEhv*g%aj3*I)VdZB(s+?{Y&CgWS Qt}aUU+3OS}DT$f<17H+}P5=M^ diff --git a/main/dct4NormalizingQ15Table.gif b/main/dct4NormalizingQ15Table.gif deleted file mode 100644 index 625a4189a1ee4ad4b53d83e2534dd21d900a47f4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2505 zcmb_bi9b{g7rvFUyq}7)M4__3D%>Knv|9$%S12OujZw+^CZjB6Cyeb{vhR^4Gm=WL ze6QuIXi*8FY{MwUD1F`U-1!^6^ZU*3&Y5%0bDrlpcTCKV?$vY7S`muy5Gq3XpHTiI z6tYk%T3cI5_?<*Z{sW%y4FZ1q{{@O57=qvkLQtC^Ls1095EMsH0zpZth@l9EAsCKe z1cH%NFODKOhTu4Y69`UHqXdc&7((C(K_CRh6d_TB#1IlkNCIe6z!WrK!7y}_)E+7@ z6va`LKv9xf3mJx?7>;5DijfoxDB>83<0wv`I7yL$UIIf293=>pAb}%{q9lfrI7$*I z30r|RfB|V>3ACUFivb&;0SksnN)VMp;21_=7)j}awUFUBh7%Z0QgVR>6bT$72#g>> zJ&=N4jKndLz(|k>egI9F20K7MkN}0i8o+=wu!L6N0gC|}paF}doTJK+Ll8JlQbvM4 zSPL0J-~_oj;dOv3fq9?_R%uXgGxc9Ugh)hQXtQZ;{*wry4eDn*Y75$;)^9h@ zF|8|XkCR5}A3Ew3LT@P?irs8hU);%5Jz06Sv%aJ|L({b@$E=~WCws47I0MNqdY&g9 zymE{Az4G27Q>M<0+Np|{@s@e!x#o?P)`=E(=?>BXRsDCJ+QfU*7rpxHJziEi>`T(H zuRK58l}nSV7-%*d8y)Osdp~_}EoxfSqN(;=Yh<0WBO$$Ol%*)f{iIg==}A&*(Aq%# z({ApBtMNe_)t}ouYMENM7xDMbQ?dJWclG3aS>QZRx;g#k;)_LYb-jJ}&}8=a%QY6a zXb(kY*-oE}EWcfnGnk&`yrktll+$S%X9X419WV@J4dzz) z&DValcYAco_{i@AM+7&99_{7HUrY&DEq_Sh8n%UzU#*iLGQ3r~z(X3F%!#l((BT}} zsWfr>{Pv%bTcXzomOEeC>btivBCA5k$w!5|rZ7&UYw2Txmd)w0IN9GfKe~(5*xCoI zvkA;gHV%r)j-{nY48;CnGdUJ1XQQ`0)hO1(J~(Q&CPIUY^2m$tb$MPEXjQH0@eYK~d=%vdb+=QTzRL@h-0PRK9q#Ov&XVR&U0u z_IG6!l?uKWt_sg_WR=G!N|w;eoLI4H8HPI3>S69S91c6k_dcgO$S&BEojrfPsxBn_ z&*FNfZ@)%4o6ak_cRl@|8dm?d>`kRt=d&GbF3a%lJa+4Q;2kx*NUMA(S{7Gb-WYOK zon76YS(hSJnCTK`B4S&ZpdX2kn#y?1d`;bYi6PVV&d$y^eBOD{w_4Vi&`#7~GPFCD znmy24swSomu3HMsZQV=-KYVYQGpbJR^V9lskEbn%qxSlY-wvsmGq#L9uV-)0X1(($ zn=R}AcSH5!fOm!{yTPyj;$M}L!?Vdl3?4b_ICSm7Ebn7T96sG)%ItKK_*PC14+>QCR# z*1?193GVWZhfoW$v7j!w=G4ez8{BxNwCgV|gr( zN7sG4O0ru^fN^?Zv+98fwc}R@2ZkNKvs;A5kA-d&aOUmo(0_d6$0CqNllae^S!m90V~hVBW(?evvMwuQF5W z+^R7KNyx0fsTXLm8netnxV4{P3^%StFezkB+nPVB3;a*gEU36-bH%wJa?wW_dm zrJvkaZe8aeP<7>(I=xlKq&Ft*jfg+ZLm z1)bwnE{-Q+6c^vUxGl9O@wJ@#-%s9{1WP2yyFBb{>CjHE2^y?=`!9Wy<`caQt9w+? zEx{5!j%ak4n5t6H?&Hzs>G!bCd|jV3JFl9`xyE;&G%l36*j?3OvG%&X6+1+;BHlEz zMgChR8Bujslz!^|gK809dFFYrVbOk znFlywSHg#aW_@k#pYePz8BT`?XAGBcGafIv&s{&{`Jr!ZW-Df>`FZ7x?dpNVCmjDT z(<1SX!fo6No1WT8U1DS{?e*UZYwMy-EJnq%m!7Ix)y3KpqmmDn+BFk>oK~(x_WcjS C56)Ep diff --git a/main/dct4NormalizingQ31Table.gif b/main/dct4NormalizingQ31Table.gif deleted file mode 100644 index 22d1f6588c1cb887480aa1d702fd3e7913237fe6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2648 zcmb_bi91w{7rxb3pB6-4jVvuv3Z>kHd|H$}Btk|?axK{#l*E{nJ%!@hm#M~N$zaBk z(nfJD6%|RSl)VU%U-vtA{)XRqo_X$^Ip@6RecyA(z(`+H%aJ>eiA*C@Fohqc@WF(P zNkwgKEeXGq2q}EP6TU&fZ~wnQ5d=dJ96<uz1}qqcZj#zV1%{$H ziV`SFQfnc@Fcia4j6gAxVgW@QLvb9%2^1$OQqW6aD1oB{ff6Kegi(~lP!dN;0wrN9 zum&(74J?5c)L=1S12ka4Fi8obatIv52n-`BeXtfX9LI11!%0dmuz(_gV+4T_B&Y{c z(2J2cMiLka^1u(E3DaN)=m!#@5Lg2kkOr2}3OryjU;{K@k(6^(8FB~$$4Saa&zAETD*!1WtmF;4~Njyr3P72DM-%_yIIw8ted0AQ%(^YXAe%FbTAP2P_6` zfF`LEQQc669D;<4fsvpO)TRa}3y27btQCFuU8&9je#k?g#dtW_80 z%Ndt(UgjAlV#8ak@?T#y%`(m~F6SP-b*R|=qLlyLx5X!)ST`y0J>K$MUvrN)-cY0$ zyL@cOFbP!dsIvUj_n}dsY9$CMS+wR*#rCJwS0V;YiHaW%PZyfV|Fz{X=k%rZ^Fo(Z z+n)YH9NZFWT`?o?dM|fJ<`mxP=oX(wI};vTIWY7xYwM>yzpH+FRxhPD_P?V~c}JB* zSnBL~$s5mZS*#ZSO?zigxS-Uau-P*3^N3pnN|whlb|0Q#C*}r@{L5f)Mp{l}b+v1Z zjlH`NA^xCx?)NRSH=r#@v}4se|G(#J9%dCa1-5!m?Fi5GnF`~lTJ%i{vR#ulYGg7$ ztW2hR$pyX3U}WalrU$ICcI}CfNtNmgXpWmcWiQXO&5KjuR>;Sx-4y9_m;ZB6CS)_q z@Ptq2Q9eC*!MH|hn0dlc`B;fej^lM*_ZPCsBhCX~V#EeD`meZV<~t{Bz;LHjuR2;z ziVgSJ=hVaT@DSGz;v^)fDV;py zQFn}!mno0u2M6upcCmMeo!<~9RDYJ}hA^VW0vw9UsjL3i*p8E4-ea#rqFPq?MYbVmfONYm+za^|nTYvOOt z^~M``%{Vc|9cI3yH>zv(rUh=B4awPieD)hBbh5HPU(o$-Ff40ycKFDnQNeK8R|kjw zlA%#;2mW;2@3E&}^I!jXu2?)bPH2qHO|%+>N{$I=-ZgfQCUoW|yDXDxy59$?hR}Oy z)_;C|TM+!<^MK%l_T=Mg)rZ+be_NAt-$FyD|Mx3~JYVs8o+LT=jLmmF<1S#)a%Wux zFRmN-EbWq>YwhEHO($$5tx_>|;{L^I%YDx;5MNX|wNHG$Dt(gzeX)kfezB{E!{z7J ziG0l4|GmJ6**tEyMC;rWu?MY}w=;5#C(#9?{aDV)^jb~Ha3!GoE>zllSCenJA-O;S?NI28HHLWD6 zU+bljkv}gkbvSnIza45V=SEx7$I2AtJ}f46FCMv`b@1oc<@1d7!x~zzrgvKEkVp1y z>RlRE)b_S;S+q`V?>E*jcF(5OGqvV*5(!~!SH0tt>vmpE$P1q1DDK~Fc>NU`t}{d! zSyl=5u@Y`+=&?y}da@Xbd-@ENK$F-|**Dv7~MVdV0sp6 z-2uKD@7l#L<;{(@I+GID-+I#d!_`*&?)Ha2x8e&;2W=)^P1ah-sW3~Wd-$T~ygk*o z+nMY2EL8qgBwFMh#z@g0yUlPmsQGSeK=dq&@O*M8quAP_({Mg*>f!e0yHPJ9`YNup zJz25I@x<2jo;59+n+M8$!)#)E{+W;}*z>1knibnFvO=rgY~p}Avj-|nl}T~LuJVk?>s7}IB8#p^TnA&B;W8d)o# diff --git a/main/deprecated.html b/main/deprecated.html index c75cb364..d3942f48 100644 --- a/main/deprecated.html +++ b/main/deprecated.html @@ -127,41 +127,45 @@ $(document).ready(function(){initNavTree('deprecated.html',''); initResizable();
Global __SIMD32 (addr)
Global arm_cfft_radix2_f16 (const arm_cfft_radix2_instance_f16 *S, float16_t *pSrc)
-
Do not use this function. It has been superseded by arm_cfft_f16 and will be removed in the future
+
Do not use this function. It has been superseded by arm_cfft_f16 and will be removed in the future
Global arm_cfft_radix2_f32 (const arm_cfft_radix2_instance_f32 *S, float32_t *pSrc)
-
Do not use this function. It has been superseded by arm_cfft_f32 and will be removed in the future
+
Do not use this function. It has been superseded by arm_cfft_f32 and will be removed in the future
Global arm_cfft_radix2_init_f16 (arm_cfft_radix2_instance_f16 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
-
Do not use this function. It has been superseded by arm_cfft_f16 and will be removed in the future.
+
Do not use this function. It has been superseded by arm_cfft_f16 and will be removed in the future.
Global arm_cfft_radix2_init_f32 (arm_cfft_radix2_instance_f32 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
-
Do not use this function. It has been superseded by arm_cfft_f32 and will be removed in the future.
+
Do not use this function. It has been superseded by arm_cfft_f32 and will be removed in the future.
Global arm_cfft_radix2_init_q15 (arm_cfft_radix2_instance_q15 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
-
Do not use this function. It has been superseded by arm_cfft_q15 and will be removed
+
Do not use this function. It has been superseded by arm_cfft_q15 and will be removed
Global arm_cfft_radix2_init_q31 (arm_cfft_radix2_instance_q31 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
-
Do not use this function. It has been superseded by arm_cfft_q31 and will be removed in the future.
+
Do not use this function. It has been superseded by arm_cfft_q31 and will be removed in the future.
Global arm_cfft_radix2_q15 (const arm_cfft_radix2_instance_q15 *S, q15_t *pSrc)
-
Do not use this function. It has been superseded by arm_cfft_q15 and will be removed in the future.
+
Do not use this function. It has been superseded by arm_cfft_q15 and will be removed in the future.
Global arm_cfft_radix2_q31 (const arm_cfft_radix2_instance_q31 *S, q31_t *pSrc)
-
Do not use this function. It has been superseded by arm_cfft_q31 and will be removed in the future.
+
Do not use this function. It has been superseded by arm_cfft_q31 and will be removed in the future.
Global arm_cfft_radix4_f16 (const arm_cfft_radix4_instance_f16 *S, float16_t *pSrc)
-
Do not use this function. It has been superseded by arm_cfft_f16 and will be removed in the future.
+
Do not use this function. It has been superseded by arm_cfft_f16 and will be removed in the future.
Global arm_cfft_radix4_f32 (const arm_cfft_radix4_instance_f32 *S, float32_t *pSrc)
-
Do not use this function. It has been superseded by arm_cfft_f32 and will be removed in the future.
+
Do not use this function. It has been superseded by arm_cfft_f32 and will be removed in the future.
Global arm_cfft_radix4_init_f16 (arm_cfft_radix4_instance_f16 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
-
Do not use this function. It has been superceded by arm_cfft_f16 and will be removed in the future.
+
Do not use this function. It has been superceded by arm_cfft_f16 and will be removed in the future.
Global arm_cfft_radix4_init_f32 (arm_cfft_radix4_instance_f32 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
-
Do not use this function. It has been superceded by arm_cfft_f32 and will be removed in the future.
+
Do not use this function. It has been superceded by arm_cfft_f32 and will be removed in the future.
Global arm_cfft_radix4_init_q15 (arm_cfft_radix4_instance_q15 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
-
Do not use this function. It has been superseded by arm_cfft_q15 and will be removed in the future.
+
Do not use this function. It has been superseded by arm_cfft_q15 and will be removed in the future.
Global arm_cfft_radix4_init_q31 (arm_cfft_radix4_instance_q31 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
-
Do not use this function. It has been superseded by arm_cfft_q31 and will be removed in the future.
+
Do not use this function. It has been superseded by arm_cfft_q31 and will be removed in the future.
Global arm_cfft_radix4_q15 (const arm_cfft_radix4_instance_q15 *S, q15_t *pSrc)
-
Do not use this function. It has been superseded by arm_cfft_q15 and will be removed in the future.
+
Do not use this function. It has been superseded by arm_cfft_q15 and will be removed in the future.
Global arm_cfft_radix4_q31 (const arm_cfft_radix4_instance_q31 *S, q31_t *pSrc)
-
Do not use this function. It has been superseded by arm_cfft_q31 and will be removed in the future.
+
Do not use this function. It has been superseded by arm_cfft_q31 and will be removed in the future.
Global arm_rfft_f32 (const arm_rfft_instance_f32 *S, float32_t *pSrc, float32_t *pDst)
-
Do not use this function. It has been superceded by arm_rfft_fast_f32 and will be removed in the future.
+
Do not use this function. It has been superceded by arm_rfft_fast_f32 and will be removed in the future.
Global arm_rfft_init_f32 (arm_rfft_instance_f32 *S, arm_cfft_radix4_instance_f32 *S_CFFT, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag)
-
Do not use this function. It has been superceded by arm_rfft_fast_init_f32 and will be removed in the future.
+
Do not use this function. It has been superceded by arm_rfft_fast_init_f32 and will be removed in the future.
+
Module FIR_Lattice
+
Those functions are no more tested nor maintained and will be removed in a future version.
+
Module FIR_Sparse
+
Those functions are no more tested nor maintained and will be removed in a future version.
diff --git a/main/footer.js b/main/footer.js index cd664a43..93b2e706 100644 --- a/main/footer.js +++ b/main/footer.js @@ -1,7 +1,7 @@ function writeHeader() { - document.write('Version 1.10.2-dev20'); + document.write('Version 1.11.0'); }; function writeFooter() { - document.write('Generated on Tue Aug 2 2022 05:26:22 for CMSIS-DSP 1.10.2-dev20+g2bd5292. Copyright © 2022 Arm Limited (or its affiliates). All rights reserved.'); + document.write('Generated on Wed Aug 3 2022 08:10:09 for CMSIS-DSP 1.11.0. Copyright © 2022 Arm Limited (or its affiliates). All rights reserved.'); }; diff --git a/main/group__ComplexFFT.html b/main/group__ComplexFFT.html index 3873e46b..0f2461c4 100644 --- a/main/group__ComplexFFT.html +++ b/main/group__ComplexFFT.html @@ -818,7 +818,7 @@ Functions
-
Deprecated:
Do not use this function. It has been superseded by arm_cfft_f16 and will be removed in the future
+
Deprecated:
Do not use this function. It has been superseded by arm_cfft_f16 and will be removed in the future
Parameters
@@ -855,7 +855,7 @@ Functions
[in]Spoints to an instance of the floating-point Radix-2 CFFT/CIFFT structure
-
Deprecated:
Do not use this function. It has been superseded by arm_cfft_f32 and will be removed in the future
+
Deprecated:
Do not use this function. It has been superseded by arm_cfft_f32 and will be removed in the future
Parameters
@@ -904,7 +904,7 @@ Functions
[in]Spoints to an instance of the floating-point Radix-2 CFFT/CIFFT structure
-
Deprecated:
Do not use this function. It has been superseded by arm_cfft_f16 and will be removed in the future.
+
Deprecated:
Do not use this function. It has been superseded by arm_cfft_f16 and will be removed in the future.
Parameters
@@ -971,7 +971,7 @@ Functions
[in,out]Spoints to an instance of the floating-point CFFT/CIFFT structure
-
Deprecated:
Do not use this function. It has been superseded by arm_cfft_f32 and will be removed in the future.
+
Deprecated:
Do not use this function. It has been superseded by arm_cfft_f32 and will be removed in the future.
Parameters
@@ -1038,7 +1038,7 @@ Functions
[in,out]Spoints to an instance of the floating-point CFFT/CIFFT structure
-
Deprecated:
Do not use this function. It has been superseded by arm_cfft_q15 and will be removed
+
Deprecated:
Do not use this function. It has been superseded by arm_cfft_q15 and will be removed
Parameters
@@ -1105,7 +1105,7 @@ Functions
[in,out]Spoints to an instance of the Q15 CFFT/CIFFT structure.
-
Deprecated:
Do not use this function. It has been superseded by arm_cfft_q31 and will be removed in the future.
+
Deprecated:
Do not use this function. It has been superseded by arm_cfft_q31 and will be removed in the future.
Parameters
@@ -1160,7 +1160,7 @@ Functions
[in,out]Spoints to an instance of the Q31 CFFT/CIFFT structure
-
Deprecated:
Do not use this function. It has been superseded by arm_cfft_q15 and will be removed in the future.
+
Deprecated:
Do not use this function. It has been superseded by arm_cfft_q15 and will be removed in the future.
Parameters
@@ -1197,7 +1197,7 @@ Functions
[in]Spoints to an instance of the fixed-point CFFT/CIFFT structure
-
Deprecated:
Do not use this function. It has been superseded by arm_cfft_q31 and will be removed in the future.
+
Deprecated:
Do not use this function. It has been superseded by arm_cfft_q31 and will be removed in the future.
Parameters
@@ -1234,7 +1234,7 @@ Functions
[in]Spoints to an instance of the fixed-point CFFT/CIFFT structure
-
Deprecated:
Do not use this function. It has been superseded by arm_cfft_f16 and will be removed in the future.
+
Deprecated:
Do not use this function. It has been superseded by arm_cfft_f16 and will be removed in the future.
Parameters
@@ -1271,7 +1271,7 @@ Functions
[in]Spoints to an instance of the floating-point Radix-4 CFFT/CIFFT structure
-
Deprecated:
Do not use this function. It has been superseded by arm_cfft_f32 and will be removed in the future.
+
Deprecated:
Do not use this function. It has been superseded by arm_cfft_f32 and will be removed in the future.
Parameters
@@ -1320,7 +1320,7 @@ Functions
[in]Spoints to an instance of the floating-point Radix-4 CFFT/CIFFT structure
-
Deprecated:
Do not use this function. It has been superceded by arm_cfft_f16 and will be removed in the future.
+
Deprecated:
Do not use this function. It has been superceded by arm_cfft_f16 and will be removed in the future.
Parameters
@@ -1387,7 +1387,7 @@ Functions
[in,out]Spoints to an instance of the floating-point CFFT/CIFFT structure
-
Deprecated:
Do not use this function. It has been superceded by arm_cfft_f32 and will be removed in the future.
+
Deprecated:
Do not use this function. It has been superceded by arm_cfft_f32 and will be removed in the future.
Parameters
@@ -1454,7 +1454,7 @@ Functions
[in,out]Spoints to an instance of the floating-point CFFT/CIFFT structure
-
Deprecated:
Do not use this function. It has been superseded by arm_cfft_q15 and will be removed in the future.
+
Deprecated:
Do not use this function. It has been superseded by arm_cfft_q15 and will be removed in the future.
Parameters
@@ -1521,7 +1521,7 @@ Functions
[in,out]Spoints to an instance of the Q15 CFFT/CIFFT structure
-
Deprecated:
Do not use this function. It has been superseded by arm_cfft_q31 and will be removed in the future.
+
Deprecated:
Do not use this function. It has been superseded by arm_cfft_q31 and will be removed in the future.
Parameters
@@ -1576,7 +1576,7 @@ Functions
[in,out]Spoints to an instance of the Q31 CFFT/CIFFT structure.
-
Deprecated:
Do not use this function. It has been superseded by arm_cfft_q15 and will be removed in the future.
+
Deprecated:
Do not use this function. It has been superseded by arm_cfft_q15 and will be removed in the future.
Parameters
@@ -1586,15 +1586,31 @@ Functions
Returns
none
Input and output formats:
Internally input is downscaled by 2 for every stage to avoid saturations inside CFFT/CIFFT process. Hence the output format is different for different FFT sizes. The input and output formats for different FFT sizes and number of bits to upscale are mentioned in the tables below for CFFT and CIFFT:
-
- -
-Input and Output Formats for Q15 CFFT
-
- -
-Input and Output Formats for Q15 CIFFT
-
+
+
[in]Spoints to an instance of the Q15 CFFT/CIFFT structure.
+ + + + + + + + + + +
CFFT Size Input format Output format Number of bits to upscale
16 1.15 5.11 4
64 1.15 7.9 6
256 1.15 9.7 8
1024 1.15 11.5 10
+ + + + + + + + + + + +
CIFFT Size Input format Output format Number of bits to upscale
16 1.15 5.11 0
64 1.15 7.9 0
256 1.15 9.7 0
1024 1.15 11.5 0
@@ -1623,7 +1639,7 @@ Input and Output Formats for Q15 CIFFT
-
Deprecated:
Do not use this function. It has been superseded by arm_cfft_q31 and will be removed in the future.
+
Deprecated:
Do not use this function. It has been superseded by arm_cfft_q31 and will be removed in the future.
Parameters
@@ -1633,15 +1649,31 @@ Input and Output Formats for Q15 CIFFT
Returns
none
Input and output formats:
Internally input is downscaled by 2 for every stage to avoid saturations inside CFFT/CIFFT process. Hence the output format is different for different FFT sizes. The input and output formats for different FFT sizes and number of bits to upscale are mentioned in the tables below for CFFT and CIFFT:
-
- -
-Input and Output Formats for Q31 CFFT
-
- -
-Input and Output Formats for Q31 CIFFT
-
+
+
[in]Spoints to an instance of the Q31 CFFT/CIFFT structure
+ + + + + + + + + + +
CFFT Size Input format Output format Number of bits to upscale
16 1.31 5.27 4
64 1.31 7.25 6
256 1.31 9.23 8
1024 1.31 11.21 10
+ + + + + + + + + + + +
CIFFT Size Input format Output format Number of bits to upscale
16 1.31 5.27 0
64 1.31 7.25 0
256 1.31 9.23 0
1024 1.31 11.21 0
diff --git a/main/group__Conv.html b/main/group__Conv.html index ac287aad..6551e302 100644 --- a/main/group__Conv.html +++ b/main/group__Conv.html @@ -158,18 +158,20 @@ Functions

Description

Convolution is a mathematical operation that operates on two finite length vectors to generate a finite length output vector. Convolution is similar to correlation and is frequently used in filtering and data analysis. The CMSIS DSP library contains functions for convolving Q7, Q15, Q31, and floating-point data types. The library also provides fast versions of the Q15 and Q31 functions.

-
Algorithm
Let a[n] and b[n] be sequences of length srcALen and srcBLen samples respectively. Then the convolution
-    c[n] = a[n] * b[n]
- 
-
is defined as
- -
+
Algorithm
Let a[n] and b[n] be sequences of length srcALen and srcBLen samples respectively. Then the convolution

+\[ c[n] = a[n] * b[n] \] +

+
+
is defined as

+\[ c[n] = \sum_{k=0}^{srcALen} a[k] b[n-k] \] +

Note that c[n] is of length srcALen + srcBLen - 1 and is defined over the interval n=0, 1, 2, ..., srcALen + srcBLen - 2. pSrcA points to the first input vector of length srcALen and pSrcB points to the second input vector of length srcBLen. The output result is written to pDst and the calling function must allocate srcALen+srcBLen-1 words for the result.
Conceptually, when two signals a[n] and b[n] are convolved, the signal b[n] slides over a[n]. For each offset n, the overlapping portions of a[n] and b[n] are multiplied and summed together.
-
Note that convolution is a commutative operation:
-    a[n] * b[n] = b[n] * a[n].
- 
+
Note that convolution is a commutative operation:

+\[ a[n] * b[n] = b[n] * a[n]. \] +

+
This means that switching the A and B arguments to the convolution functions has no effect.
Fixed-Point Behavior
Convolution requires summing up a large number of intermediate products. As such, the Q7, Q15, and Q31 functions run a risk of overflow and saturation. Refer to the function specific documentation below for further details of the particular algorithm used.
Fast Versions
Fast versions are supported for Q31 and Q15. Cycles for Fast versions are less compared to Q31 and Q15 of conv and the design requires the input signals should be scaled down to avoid intermediate overflows.
diff --git a/main/group__Corr.html b/main/group__Corr.html index e22a7826..26f1bfae 100644 --- a/main/group__Corr.html +++ b/main/group__Corr.html @@ -164,14 +164,17 @@ Functions

Description

Correlation is a mathematical operation that is similar to convolution. As with convolution, correlation uses two signals to produce a third signal. The underlying algorithms in correlation and convolution are identical except that one of the inputs is flipped in convolution. Correlation is commonly used to measure the similarity between two signals. It has applications in pattern recognition, cryptanalysis, and searching. The CMSIS library provides correlation functions for Q7, Q15, Q31 and floating-point data types. Fast versions of the Q15 and Q31 functions are also provided.

-
Algorithm
Let a[n] and b[n] be sequences of length srcALen and srcBLen samples respectively. The convolution of the two signals is denoted by
-    c[n] = a[n] * b[n]
-
In correlation, one of the signals is flipped in time
-     c[n] = a[n] * b[-n]
-
-
and this is mathematically defined as
- -
+
Algorithm
Let a[n] and b[n] be sequences of length srcALen and srcBLen samples respectively. The convolution of the two signals is denoted by

+\[ c[n] = a[n] * b[n] \] +

+
+

In correlation, one of the signals is flipped in time

+

+\[ c[n] = a[n] * b[-n] \] +

+
and this is mathematically defined as

+\[ c[n] = \sum_{k=0}^{srcALen} a[k] b[k-n] \] +

The pSrcA points to the first input vector of length srcALen and pSrcB points to the second input vector of length srcBLen. The result c[n] is of length 2 * max(srcALen, srcBLen) - 1 and is defined over the interval n=0, 1, 2, ..., (2 * max(srcALen, srcBLen) - 2). The output result is written to pDst and the calling function must allocate 2 * max(srcALen, srcBLen) - 1 words for the result.
Note
The pDst should be initialized to all zeros before being used.
diff --git a/main/group__DCT4__IDCT4.html b/main/group__DCT4__IDCT4.html index 8dcb8d28..f8165557 100644 --- a/main/group__DCT4__IDCT4.html +++ b/main/group__DCT4__IDCT4.html @@ -165,13 +165,13 @@ Functions
Discrete Cosine Transform - type-IV
-
Algorithm
The N-point type-IV DCT is defined as a real, linear transformation by the formula:
- -
+
Algorithm
The N-point type-IV DCT is defined as a real, linear transformation by the formula:

+\[ X_c(k) = \sqrt{\frac{2}{N}}\sum_{n=0}^{N-1} x(n)cos\Big[\Big(n+\frac{1}{2}\Big)\Big(k+\frac{1}{2}\Big)\frac{\pi}{N}\Big] \] +

where k = 0, 1, 2, ..., N-1
-
Its inverse is defined as follows:
- -
+
Its inverse is defined as follows:

+\[ x(n) = \sqrt{\frac{2}{N}}\sum_{k=0}^{N-1} X_c(k)cos\Big[\Big(n+\frac{1}{2}\Big)\Big(k+\frac{1}{2}\Big)\frac{\pi}{N}\Big] \] +

where n = 0, 1, 2, ..., N-1
The DCT4 matrices become involutory (i.e. they are self-inverse) by multiplying with an overall scale factor of sqrt(2/N). The symmetry of the transform matrix indicates that the fast algorithms for the forward and inverse transform computation are identical. Note that the implementation of Inverse DCT4 and DCT4 is same, hence same process function can be used for both.
Lengths supported by the transform:
As DCT4 internally uses Real FFT, it supports all the lengths 128, 512, 2048 and 8192. The library provides separate functions for Q15, Q31, and floating-point data types.
@@ -297,10 +297,17 @@ Discrete Cosine Transform - type-IV
Normalizing factor
The normalizing factor is sqrt(2/N), which depends on the size of transform N. Floating-point normalizing factors are mentioned in the table below for different DCT sizes:
-
- -
- + + + + + + + + + +
DCT Size Normalizing factor value
2048 0.03125
512 0.0625
128 0.125
+ @@ -369,10 +376,17 @@ Discrete Cosine Transform - type-IV
Normalizing factor
The normalizing factor is sqrt(2/N), which depends on the size of transform N. Normalizing factors in 1.15 format are mentioned in the table below for different DCT sizes:
-
- -
- + + + + + + + + + +
DCT Size Normalizing factor value (hexadecimal)
2048 0x400
512 0x800
128 0x1000
+ @@ -441,10 +455,17 @@ Discrete Cosine Transform - type-IV
Normalizing factor:
The normalizing factor is sqrt(2/N), which depends on the size of transform N. Normalizing factors in 1.31 format are mentioned in the table below for different DCT sizes:
-
- -
- + + + + + + + + + +
DCT Size Normalizing factor value (hexadecimal)
2048 0x4000000
512 0x8000000
128 0x10000000
+ @@ -488,10 +509,17 @@ Discrete Cosine Transform - type-IV
Returns
none
Input an output formats
Internally inputs are downscaled in the RFFT process function to avoid overflows. Number of bits downscaled, depends on the size of the transform. The input and output formats for different DCT sizes and number of bits to upscale are mentioned in the table below:
-
- -
- + + + + + + + + + +
DCT Size Input format Output format Number of bits to upscale
2048 1.15 11.5 10
512 1.15 9.7 8
128 1.15 7.9 6
+ @@ -535,10 +563,17 @@ Discrete Cosine Transform - type-IV
Returns
none
Input an output formats
Input samples need to be downscaled by 1 bit to avoid saturations in the Q31 DCT process, as the conversion from DCT2 to DCT4 involves one subtraction. Internally inputs are downscaled in the RFFT process function to avoid overflows. Number of bits downscaled, depends on the size of the transform. The input and output formats for different DCT sizes and number of bits to upscale are mentioned in the table below:
-
- -
- + + + + + + + + + +
DCT Size Input format Output format Number of bits to upscale
2048 2.30 12.20 11
512 2.30 10.22 9
128 2.30 8.24 7
+ diff --git a/main/group__FIR__Lattice.html b/main/group__FIR__Lattice.html index 86d7b4fa..939df3da 100644 --- a/main/group__FIR__Lattice.html +++ b/main/group__FIR__Lattice.html @@ -148,6 +148,7 @@ Functions  

Description

+
Deprecated:
Those functions are no more tested nor maintained and will be removed in a future version.

This set of functions implements Finite Impulse Response (FIR) lattice filters for Q15, Q31 and floating-point data types. Lattice filters are used in a variety of adaptive filter applications. The filter structure is feedforward and the net impulse response is finite length. The functions operate on blocks of input and output data and each call to the function processes blockSize samples through the filter. pSrc and pDst point to input and output arrays containing blockSize values.

Algorithm
diff --git a/main/group__FIR__Sparse.html b/main/group__FIR__Sparse.html index 9564a0b9..4d922ce0 100644 --- a/main/group__FIR__Sparse.html +++ b/main/group__FIR__Sparse.html @@ -154,6 +154,7 @@ Functions  

Description

+
Deprecated:
Those functions are no more tested nor maintained and will be removed in a future version.

This group of functions implements sparse FIR filters. Sparse FIR filters are equivalent to standard FIR filters except that most of the coefficients are equal to zero. Sparse filters are used for simulating reflections in communications and audio applications.

There are separate functions for Q7, Q15, Q31, and floating-point data types. The functions operate on blocks of input and output data and each call to the function processes blockSize samples through the filter. pSrc and pDst points to input and output arrays respectively containing blockSize values.

Algorithm
The sparse filter instant structure contains an array of tap indices pTapDelay which specifies the locations of the non-zero coefficients. This is in addition to the coefficient array b. The implementation essentially skips the multiplications by zero and leads to an efficient realization.
diff --git a/main/group__MatrixAdd.html b/main/group__MatrixAdd.html
index 9a6fa079..70ae1e3f 100644
--- a/main/group__MatrixAdd.html
+++ b/main/group__MatrixAdd.html
@@ -142,10 +142,10 @@ Functions
  
 
 

Description

-

Adds two matrices.

- -
-Addition of two 3 x 3 matrices
+

Adds two matrices.

Addition of two 3 x 3 matrices
+

+\[ \begin{pmatrix} a_{1,1} & a_{1,2} & a_{1,3} \\ a_{2,1} & a_{2,2} & a_{2,3} \\ a_{3,1} & a_{3,2} & a_{3,3} \\ \end{pmatrix} + \begin{pmatrix} b_{1,1} & b_{1,2} & b_{1,3} \\ b_{2,1} & b_{2,2} & b_{2,3} \\ b_{3,1} & b_{3,2} & b_{3,3} \\ \end{pmatrix} = \begin{pmatrix} a_{1,1}+b_{1,1} & a_{1,2}+b_{1,2} & a_{1,3}+b_{1,3} \\ a_{2,1}+b_{2,1} & a_{2,2}+b_{2,2} & a_{2,3}+b_{2,3} \\ a_{3,1}+b_{3,1} & a_{3,2}+b_{3,2} & a_{3,3}+b_{3,3} \\ \end{pmatrix} \] +

The functions check to make sure that pSrcA, pSrcB, and pDst have the same number of rows and columns.

Function Documentation

diff --git a/main/group__MatrixComplexTrans.html b/main/group__MatrixComplexTrans.html index b0a9bfad..6a8c4f05 100644 --- a/main/group__MatrixComplexTrans.html +++ b/main/group__MatrixComplexTrans.html @@ -143,10 +143,11 @@ Functions

Description

Tranposes a complex matrix.

-

Transposing an M x N matrix flips it around the center diagonal and results in an N x M matrix.

- -
-Transpose of a 3 x 3 matrix
+

Transposing an M x N matrix flips it around the center diagonal and results in an N x M matrix.

+
Transpose of a 3 x 3 matrix
+

+\[ \begin{pmatrix} a_{1,1} & a_{1,2} & a_{1,3} \\ a_{2,1} & a_{2,2} & a_{2,3} \\ a_{3,1} & a_{3,2} & a_{3,3} \\ \end{pmatrix}^T = \begin{pmatrix} a_{1,1} & a_{2,1} & a_{3,1} \\ a_{1,2} & a_{2,2} & a_{3,2} \\ a_{1,3} & a_{2,3} & a_{3,3} \\ \end{pmatrix} \] +

Function Documentation

◆ arm_mat_cmplx_trans_f16()

diff --git a/main/group__MatrixInv.html b/main/group__MatrixInv.html index d9df086d..5806034b 100644 --- a/main/group__MatrixInv.html +++ b/main/group__MatrixInv.html @@ -160,12 +160,12 @@ Functions

Computes the inverse of a matrix.

The inverse is defined only if the input matrix is square and non-singular (the determinant is non-zero). The function checks that the input and output matrices are square and of the same size.

Matrix inversion is numerically sensitive and the CMSIS DSP library only supports matrix inversion of floating-point matrices.

-
Algorithm
The Gauss-Jordan method is used to find the inverse. The algorithm performs a sequence of elementary row-operations until it reduces the input matrix to an identity matrix. Applying the same sequence of elementary row-operations to an identity matrix yields the inverse matrix. If the input matrix is singular, then the algorithm terminates and returns error status ARM_MATH_SINGULAR.
- -
-Matrix Inverse of a 3 x 3 matrix using Gauss-Jordan Method
-
-

Function Documentation

+
Algorithm
The Gauss-Jordan method is used to find the inverse. The algorithm performs a sequence of elementary row-operations until it reduces the input matrix to an identity matrix. Applying the same sequence of elementary row-operations to an identity matrix yields the inverse matrix. If the input matrix is singular, then the algorithm terminates and returns error status ARM_MATH_SINGULAR.
+
Matrix Inverse of a 3 x 3 matrix using Gauss-Jordan Method
+

+\[ \begin{pmatrix} a_{1,1} & a_{1,2} & a_{1,3} & | & 1 & 0 & 0\\ a_{2,1} & a_{2,2} & a_{2,3} & | & 0 & 1 & 0\\ a_{3,1} & a_{3,2} & a_{3,3} & | & 0 & 0 & 1\\ \end{pmatrix} \rightarrow \begin{pmatrix} 1 & 0 & 0 & | & x_{1,1} & x_{2,1} & x_{3,1} \\ 0 & 1 & 0 & | & x_{1,2} & x_{2,2} & x_{3,2} \\ 0 & 0 & 1 & | & x_{1,3} & x_{2,3} & x_{3,3} \\ \end{pmatrix} \] +

+

Function Documentation

◆ arm_mat_inverse_f16()

diff --git a/main/group__MatrixScale.html b/main/group__MatrixScale.html index c2a7de51..b3ae1a33 100644 --- a/main/group__MatrixScale.html +++ b/main/group__MatrixScale.html @@ -142,10 +142,11 @@ Functions  

Description

-

Multiplies a matrix by a scalar. This is accomplished by multiplying each element in the matrix by the scalar. For example:

- -
-Matrix Scaling of a 3 x 3 matrix
+

Multiplies a matrix by a scalar. This is accomplished by multiplying each element in the matrix by the scalar. For example:

+
Matrix Scaling of a 3 x 3 matrix
+

+\[ \begin{pmatrix} a_{1,1} & a_{1,2} & a_{1,3} \\ a_{2,1} & a_{2,2} & a_{2,3} \\ a_{3,1} & a_{3,2} & a_{3,3} \\ \end{pmatrix} K = \begin{pmatrix} K a_{1,1} & K a_{1,2} & K a_{1,3} \\ K a_{2,1} & K a_{2,2} & K a_{2,3} \\ K a_{3,1} & K a_{3,2} & K a_{3,3} \\ \end{pmatrix} \] +

The function checks to make sure that the input and output matrices are of the same size.

In the fixed-point Q15 and Q31 functions, scale is represented by a fractional multiplication scaleFract and an arithmetic shift shift. The shift allows the gain of the scaling operation to exceed 1.0. The overall scale factor applied to the fixed-point data is

     scale = scaleFract * 2^shift.
diff --git a/main/group__MatrixSub.html b/main/group__MatrixSub.html
index 4561800f..599a899e 100644
--- a/main/group__MatrixSub.html
+++ b/main/group__MatrixSub.html
@@ -145,11 +145,11 @@ Functions
  
 
 

Description

-

Subtract two matrices.

- -
-Subraction of two 3 x 3 matrices
-

The functions check to make sure that pSrcA, pSrcB, and pDst have the same number of rows and columns.

+

Subtract two matrices.

Subraction of two 3 x 3 matrices
+

+\[ \begin{pmatrix} a_{1,1} & a_{1,2} & a_{1,3} \\ a_{2,1} & a_{2,2} & a_{2,3} \\ a_{3,1} & a_{3,2} & a_{3,3} \\ \end{pmatrix} - \begin{pmatrix} b_{1,1} & b_{1,2} & b_{1,3} \\ b_{2,1} & b_{2,2} & b_{2,3} \\ b_{3,1} & b_{3,2} & b_{3,3} \\ \end{pmatrix} = \begin{pmatrix} a_{1,1}-b_{1,1} & a_{1,2}-b_{1,2} & a_{1,3}-b_{1,3} \\ a_{2,1}-b_{2,1} & a_{2,2}-b_{2,2} & a_{2,3}-b_{2,3} \\ a_{3,1}-b_{3,1} & a_{3,2}-b_{3,2} & a_{3,3}-b_{3,3} \\ \end{pmatrix} \] +

+

The functions check to make sure that pSrcA, pSrcB, and pDst have the same number of rows and columns.

Function Documentation

◆ arm_mat_sub_f16()

diff --git a/main/group__MatrixTrans.html b/main/group__MatrixTrans.html index 6ab7f291..79485e6b 100644 --- a/main/group__MatrixTrans.html +++ b/main/group__MatrixTrans.html @@ -149,10 +149,11 @@ Functions

Description

Tranposes a matrix.

-

Transposing an M x N matrix flips it around the center diagonal and results in an N x M matrix.

- -
-Transpose of a 3 x 3 matrix
+

Transposing an M x N matrix flips it around the center diagonal and results in an N x M matrix.

+
Transpose of a 3 x 3 matrix
+

+\[ \begin{pmatrix} a_{1,1} & a_{1,2} & a_{1,3} \\ a_{2,1} & a_{2,2} & a_{2,3} \\ a_{3,1} & a_{3,2} & a_{3,3} \\ \end{pmatrix}^T = \begin{pmatrix} a_{1,1} & a_{2,1} & a_{3,1} \\ a_{1,2} & a_{2,2} & a_{3,2} \\ a_{1,3} & a_{2,3} & a_{3,3} \\ \end{pmatrix} \] +

Function Documentation

◆ arm_mat_trans_f16()

diff --git a/main/group__RealFFT.html b/main/group__RealFFT.html index 2b7ec13a..ef591a2c 100644 --- a/main/group__RealFFT.html +++ b/main/group__RealFFT.html @@ -240,7 +240,7 @@ Real Inverse Fast Fourier Transform
-
Deprecated:
Do not use this function. It has been superceded by arm_rfft_fast_f32 and will be removed in the future.
+
Deprecated:
Do not use this function. It has been superceded by arm_rfft_fast_f32 and will be removed in the future.
Parameters
@@ -585,7 +585,7 @@ Real Inverse Fast Fourier Transform
[in]Spoints to an instance of the floating-point RFFT/RIFFT structure
-
Deprecated:
Do not use this function. It has been superceded by arm_rfft_fast_init_f32 and will be removed in the future.
+
Deprecated:
Do not use this function. It has been superceded by arm_rfft_fast_init_f32 and will be removed in the future.
Parameters
diff --git a/version.js b/version.js index 96acc83b..cd5c0ba4 100644 --- a/version.js +++ b/version.js @@ -1,6 +1,6 @@ //--- list of versions --- const versions = { - "main": "1.10.2-dev20", + "main": "1.11.0", "latest": "1.10.1" } //--- list of versions ---
[in,out]Spoints to an instance of the floating-point RFFT/RIFFT structure