From acaa1cd57a7b50d906d5d2c72c95032b520ab824 Mon Sep 17 00:00:00 2001 From: lrc <571244399@qq.com> Date: Thu, 16 Jul 2026 21:39:40 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=BC=95=E7=94=A8=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Editor/DeconstructionStyle.dll | Bin 9728 -> 9728 bytes Editor/DeconstructionStyle.dll.meta | 2 +- Editor/XericLibraryEditor.dll | Bin 223232 -> 223232 bytes Runtime/Deconstruction.dll | Bin 96768 -> 97280 bytes Runtime/Deconstruction.pdb | Bin 433664 -> 0 bytes Runtime/Deconstruction.pdb.meta | 7 - Runtime/EPPlus.dll | Bin 0 -> 1297920 bytes Runtime/MathNet.Numerics.xml | 53733 ---------------- Runtime/MathNet.Numerics.xml.meta | 7 - Runtime/RescissionRework.dll | Bin 0 -> 4608 bytes Runtime/RescissionRework.dll.meta | 33 + Runtime/SerializerHelper.dll | Bin 19456 -> 19456 bytes Runtime/SerializerHelper.pdb | Bin 103936 -> 0 bytes Runtime/SerializerHelper.pdb.meta | 7 - Runtime/XericCecil.dll | Bin 364544 -> 364544 bytes Runtime/XericCecil.pdb.meta | 7 - Runtime/XericLibrary.dll | Bin 1497600 -> 1500672 bytes Runtime/XericLibrary.pdb | Bin 2401792 -> 2188800 bytes Runtime/XericLibrary.xml | 4765 +- .../Microsoft.CodeAnalysis.Analyzers.dll | Bin 620672 -> 0 bytes ...icrosoft.CodeAnalysis.CSharp.Analyzers.dll | Bin 27264 -> 0 bytes .../XericUnityAnalyzer/XericUnityAnalyzer.dll | Bin 54272 -> 54272 bytes 22 files changed, 2036 insertions(+), 56525 deletions(-) delete mode 100644 Runtime/Deconstruction.pdb delete mode 100644 Runtime/Deconstruction.pdb.meta create mode 100644 Runtime/EPPlus.dll delete mode 100644 Runtime/MathNet.Numerics.xml delete mode 100644 Runtime/MathNet.Numerics.xml.meta create mode 100644 Runtime/RescissionRework.dll create mode 100644 Runtime/RescissionRework.dll.meta delete mode 100644 Runtime/SerializerHelper.pdb delete mode 100644 Runtime/SerializerHelper.pdb.meta delete mode 100644 Runtime/XericCecil.pdb.meta delete mode 100644 Samples~/XericUnityAnalyzer/Microsoft.CodeAnalysis.Analyzers.dll delete mode 100644 Samples~/XericUnityAnalyzer/Microsoft.CodeAnalysis.CSharp.Analyzers.dll diff --git a/Editor/DeconstructionStyle.dll b/Editor/DeconstructionStyle.dll index bf26503646b71838ee903a9604f66aa436d3a3be..b9f7b28b5ced1e913ac323f2a04e54837c767a1e 100644 GIT binary patch delta 172 zcmZqhY4DlQ!6H22@`{N)GK`-lt_)|KJDHKOp6Q3oC#*3R7nbai(Lap4Du0ILz zTC#7~;X+}JotrJBCou84Rb80D00c}xym0bWS#8l@xpR-0cu#QaS*^=tQYH155h&w6 zSyWDqH6pbrGkLP7T&&Ph8;~9dxDR40OjHzOyg2#1oHjede^mwr27%3jDq@VA`4oOJ PGkviEa^5peG++k+1v@qR delta 173 zcmZqhY4DlQ!D4H8{ouqN8OC1|SB5h#o6N{q&%_`*xrwok@z!QWCUr>xo9Io4wymD$ zyi)%9)=<%SvCS6J6PS2^P3ri~00c}xylV1QS#442(_3RW*tp!cojp|e-oN}WBT&X| zvZ$OIpG#_TeqM1&QE75XW`5pe2f0|Gb2cE&5by%TR+y+L#&~P;F*)tcpX5XsH}fg{ RVrKedvsqB(J>x_Jb^x{#Im!S4 diff --git a/Editor/DeconstructionStyle.dll.meta b/Editor/DeconstructionStyle.dll.meta index dc9d62d..c75c2cb 100644 --- a/Editor/DeconstructionStyle.dll.meta +++ b/Editor/DeconstructionStyle.dll.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 114790f70dba8284a84b68083baa8418 +guid: bcbfe98d29b703044a524e421fcacc2a PluginImporter: externalObjects: {} serializedVersion: 2 diff --git a/Editor/XericLibraryEditor.dll b/Editor/XericLibraryEditor.dll index f28407f9a2427c1a435e8a9a9df6e33a19d8c831..b8962af0ec8a2782cec047ffddc30880794592a3 100644 GIT binary patch delta 1113 zcmY+DZAep57{|}^+>NzBYu3`Js3oMCU|zJ0EXlT376>8CAet#n)mF_iCe_t1BVm>9j$!7a&D@zd;~5UK6H!4?qfh^EQFY(0f)O?Ac8R5-oY?HlSoc zXtgHf~ zQsH6vAiDa?frd@PA*Y!P;?83V>F278DD71VoDQJ0pS!FY<_>b#Xmf~z=;idnmQLLr zg_@Jr7i%d!;x20gkN}d3|9JsycPZFJtU4z9RjKc;&V~RE@KP2Zz+vuKd;r7T<=Re) z0bEq6Hf8YvOjJmX4`3#DEM7)4C$?P~jUlu6i7?&(i#tD`5EKtT7?pUCVD`*8f zH5MpivO=CDNAVQxlA#cbXI(ZcId;1}QGIZmf(mk?g2 zMDyL`BW?2zZzxjTMHt%@Qg;!?4n8rcefd{4jr_jp%(Pq=Swqz1LBn$1Wrr%clDr^_%7_Po3M=e!ucFnFU&Xuk6A) zZSj$siZb6HyHJ|&fM0ql$pHIa<1sCRUSCUzkS6t%2-zUTmkPfGoZK!MjtaBj*{J&m DU)(J= delta 1078 zcmY+DUr19?9LLY^cU^N2S}RSVC`Z!Fgz98e7>R#srS?+7Od|i4sjG=LEh(Ee(XfKn z!1Z8~(SsG?8p<`WFzO-PG?$jTDd&h&2<`#@WIszcD?I{MEG@#EhHM!=Fp?8 zM|fz$HL32A5Y@ws*5cJ-h#@ua%+7ovaX&Chhm%bB-4;KXSJRi2% zt9f86F=@Gcq|lb@56rKc)SmXgga!mQ6Gi{@pvCDE2PHzP+y}C$m9JO zCy2-UvAf2u&dUS+_(VuPuOFYQq~n2p91xBN`theA9_YsJ&3*RY;v;2Kg7^ zm6N(RbOyU3+${D8H!QuQv*?X*K^zutPgH{;h%2jH^hMUw&YBh~GM^(+1A}-KZ5H>|rhOkvsUc&$lVP}M!!~3hKTOt0d1DV5fR-Tuz2r0(v3~dUkavp7R zgB$KBuTr9yHy&a^%cZ^7vypZj1CFD}LT$mQto+?>F0RVqfk)kcN~G5<^BzIwrApR_tsw*3g_J&FR4uE?f*;Y!NS-IJf8ylUk(;8EY@RRs^o+^rYYkgQMMQ}%a7MIw;# z!d_~0xRM%Ox~JkZMS+hhw^O4hSL;RtYDm@(-cxp2k!rMNbqliRE7=IusCf+Oao^yJ zr<{|CuPOHZZq4T?@_E-5j8&Bqrt+5Q5LmkfrZhzbzVB3hp-Sy)U7E$EPW4~OW>s%9 zvaj*D%Z#_z6q)e?9-m;wKYwW+x1OQ~0tM>^8D|h?|9p`{sa9>$s-=8sxw*7y(;uP2 z@73w>1rC>)@cFuTvgFN-z?fY(iah!CwBbptTGT8$kkHg9peECSFHGkA^@5|a16R26 zzw;@(%Gr*Ezf|-;P0i!y&)w+iK+aa`No0xBcu-RkE#n}9SkFYhAo4xisMH99n5`-4 zjF+9u4Pw3_kT8gaoRKhy=QJ5b5H(y$iV)ssB1H(BJ)?#Y+B6wM2nRd{wIYPW9Fii0 zW1N-Dsd9yIlj+)=Ln=#Ypr%G2LcS(5!!X=Tqz~i!jZ|qS7{-g5j6RH?H45sQ)cPlIK~<2qYyhr^--MHWb{#7GnwArC~gyZSRaM;ioVcE`Y2q6 zv_6UzOr(!ujV7ay;$_ZA--(?}wD_IKX*NCSJauBCA-&q2DAeRhYGEgeG@7QJDCJUW z8pE?p)HH@ehV(3A_zh=tNMratXEccz-sg>Erl-iS%)t*3>-SL$A>|KIM?~30z_# zeFAfLjV@vWrG~UHfu}hmVFKlxkuZU`nMjzxJDSY;CJ^PU#iN8>aJ_1lhJ;=CM3b3s z7e-8`m%9tMxRRE;3n{OeTO)lJG7af7(}kr>r0+tdCZq4dR?b?+c_6y6hmrK%_-?Cd zT3z;AS2s!w>G^i!G0sTXjWW(Yo_!&=8-6AdcH@vHBkaaW&S-smkYG~2c?v6c8)4DH z6RsXq8`8oa)N)3`9@KMoV9w>-9>jP1-aT3BIim-?|P4QXK?LY$GX4`(?eUmw2N<{SRganIB?x|~Ey z>@QJymn?Awb%w z*LVI@spmKk&MSP=z60kzDlx|?McSIoaY~U7XlfF7#1T71&bpgf>MK#XCi5X^$%9O^ zyOwPAQ&01Xw&W2_NvFMFnq|p%JqGn=Te6))+H6Y(Ijbu0G{`%Hfb}_wxrky`wnfIu1$ikoAUey5!HcL&lj% z?~rFSnRRl=3!2P2Ib^@4CgB&I>be1@KPXC-*O~sQC{5nkFYZ$}*Cg`LX**@=fxyuZ z|2=`eo$dSN!E~9H894RXrFE{J^BI#iEy{ZO?XOmTIr7Yox7v>{#?6fJnGSnw!wJ~g z`N$Ej)G;#6&VE=uZI4u-E@xbS>pb5Z`hUJkRXqRz delta 2991 zcmYM0dr*|u8HdmBko~xpEZ{N_jb+JAiDpcjnPSjMqfA{hQ%%Q=8Iy`J%0#6Bf}0eL zx*!xNki^Z}Kx!uS4>PsVNn%!G8fmQtc9*?C+5(Pkr)Ebdm!=hCwdC>#J@0$ok)2ug zd(Q8i^PKm5XW6giD_6@k*S@audph1ZtK{{uDlf~$BBh$3lw%v~gTXh~=Fbj7t)_;9 zP=_;u-lDueLFE}u^_&{~0r|%rrNJx^XxBq4#hXnnV9YdFg611HF9a zt(8mN^r}*oQ%a#P=*JJj59_YSF*|gAy*Hd+a|_Jn{0-i4&4xm{eC7#nD8HsSJn+O8 z!aJVyq9Qa|>j^hM*+LCpZ}Nuk*}Ru7kJXwiJXzZb?No%io*IA?`tg>FCb@SjjcV9g z8s4>aBTVxr+deVPsX7`kUAKn@gkO5PfLE{zr$Z1;Tn6B%ZscTR3F%m7^ zNzkzK$jv%0FFdFFn~Ff*E-EmMjjKA;8NAQbs*nLgf3aEi8!O(_XYe=a`Smi&(vr2W zJYeW^rjC+jOP+O~!SoGssSn}aZ4I5pP=oLZk#7)R1sJVx5QTfVYj(nSe%2svu>=wh z!YdgG2QixeXq0Sm)i(DK zP7D37>Nh5fGFkl)E=flE2 z2!1X^`UnC{Rv*D@l94`&F(IlxivGPMwE8ICWwO;r@qr=ZxB4i~NJ#o9l9pH>#q2g- zH%K4FZA?}l#SbMTeGJV)q>tf|_8EN)^-NYD!*fId(Z{e`Lej_3Wr_7MoD(8_3>TQJ zK8DMZk$xCggh)S(=YPS==ItIvn&#>&{rJZBswlF==U<0&C3B8~>8jsTzFIC>={VFH6fBut>Ib7m70IK*T( zF@d9&xTXZcl2J(s3`j=$1aiCVLP?)M5mQG=fWANpER>M+Nh}f~eG=`KxZWgsC8K(i z2uVi5Bwmw@gh_lMM8YKg%VhUA3HLAUVmbpxn1WA`gekbYXX;I10h6sah5IaVy(v^l zM*0-0B_n+bAtBPIaDd6`Q#c`6XK?^(1n&!yegx}!cx~BrzTde=u+b6=N3caQ5{{rz zvUB%em^FgaLL?kPl*tN5kd}=0cNCX|jBlyI=X8YEzG@`2}NeULcWO(-_K_(x5es<8~q1 zgK@OKXqS}bb3EhdwZuyrM@TYS(l`zVBy76hZMseh(I$*zipdJcQScH^%EAfE5+dOQ z{OIDv>I7ET}~83`xw56Q?kfxCmDoPpzk`+_u_L~A|&LEQ~9&>E)W0mfGK*M&8nNqi>ssi7;F6S9;3 zdv1sN5>-NfW_pb2m8{0)b)GM=*=AXJcb2-Y;%7p?e`uR?)jXB(ELl4qJXLfRyDXV< z{hq5h6soj}nz>Nd5x1dQ|6QUhLh*<8dak2#zwO!c;M}4qyt+Sh?GM#~0cl)X-tU=4 z!LO)`Jx&?=RwjF#GV~oxZE9K__GIV>Ze-@kNdJ_{9w(RHFGP3OrQ2VjIqk2IOCMxP zXM0vGbh-55fJMI9F8#KIbhBN0K(ZZ+k9%A?w~wYt^RJLg7ctqx<Fo6@wmFV|xL3R+I! zCr+2{QKk9p9 zJMPS{uHDp7zun*T>?Z%#hWfsbw&StF(#-&NBo%Ix5tlzC-a}f SHyOI|-jfA8VZLXJGXD?OBOSy5 diff --git a/Runtime/Deconstruction.pdb b/Runtime/Deconstruction.pdb deleted file mode 100644 index 541cf762ad0f68370d973e0f1db0f1f7ab13dd04..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 433664 zcmeF431C&l_5be+A*`~CD2S0oQ7|lm0-~~nRglQ$7KM;JAd<~22#OjM6_+Y5t-E!h zRjaL5sijscR;{)_thQ2X)mE&y)>^C7YDN8jzO&qSUwl;a5>5J-fs^y@y=Trjb7tnu ze(#Lp!pich@`B=N=L{LLOWQqiX9t7~^FNr`A_%6m*Nq^U&hMS! z{|^gni8XpU-u-N6_@A*ru-&SvQm|LOio!-Bw)8P{;X_A%GYN0;k9XqcWPx_S85$d@ zjOye7B>gfCwvJxcT$=k)tlvAs|F#8o=Kue8{xwwl4;LPF_^(<$(|PUeVB^eNGH!Zw z;t^NB`P%P0uRYvex4Zt_<2o;Trt^dQ2f>G}r#{&6>HXGh=-hSuc^972;hZb)?4Iou zSa!jhr>;6?YuN`!Ubz2VC$yRS)mWgh@_&8q z5r2FBXFtAe{|(i%UOlcQfA9+T{z2_{;==oHqkNO6m9dJRX%YO86hlc98GyYd&fyT=JtJeJajkfzd z`0Ja;9Q&UE=e4-y`*+Wn+;Qfu(>`8#>w~{I;LRaljrKdaHq-*@=g$kqbk?A)Rmdze zSlyyWFmdpNzS#$456>BuGvt5+bA}BcI&5gp(18V`Mi!15QZ(YA;Uh*Ic<`u^2Od;Z zG@@|i@DU3S9I>ci)Pchm4jEFosNlem+s+@&*8-{f|7SANi;n-Aul74NYp4ZM<^QUk z`QK2p{?Ej3toDCr|Nnm`%aassto+~E|4%aO|I9^W<^Rt9|Nl&uCn?%k`G0Glr;l&3 zc>A|5edUv!8{&U&bN7Hf|G8;)r;j@PC>S~PAAhSz61wxE*;t^l@_)d$4{C9E)-eaQ z8N9S`ujSM3KJ$fJkKOd(%U7SBd(T}vGTv*ot~d;edeuU=WiQz zSLTc#{dw=!o4%L#>9XhVIcs$0q=#Ov-_mlDhC465N((er{{L#wrNi3Q^jQ4V{x7xq z?CMT=udJ^*bJEEDd+tBsp)o7}^!hECWjFOnU&Ea-ze)=};8T9BQ zu|>;||K-e^I%j>AY1qj-eG4>J{;z+iciwydx~OFP8KZvse|tVSchZ(O%bp#+Xmhus z)dM@_ecC&H4R^-;DlO1h`G4VlYrFKnWAw!@eE8vgXLfBp`=hySw{&{x{(`q(daA>V zdl&ThD$}r&cls7+to+~f%yDmT+v|?=-dui0cI>(Lul?Y`53kR={gh8{e|PYkEB2jL zn!biRV}6wuXsrDI@bb-fojd=qF{i%#;9DDBI_rh!7vK9*o5C&!ZU5J*vnv1nz-eD) z8g}wd-vW)5{}2AGWy^mJzvHya9=&|ykGFmM?`_Y?d1C4DUH|!HyDN)6cy`|b>1((% z=2vNf#>)RIw_bKy_uEbybN;xJnVYVDd;O|qYhV2Cy4G)Z`2HaeJobObaf)zfXpRR{pzVei3UMv{^iB^+~S{dF;7$t8-UA+#J)sQzy=JG}8Hx zUHAIg{ipmX_R0@#`a!Fz?!!)f1sW^=H;$P4 ze5-o%8M^I|+94Bu`JMZIxc5$LH%|*RR{mG~;pS8R@aGY2j?H}a z^7ohi<@wCU+ z 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
>l;Cq2l5(UEd%SoSA&be*MN;+p8rD_l@-#p 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 diff --git a/Runtime/Deconstruction.pdb.meta b/Runtime/Deconstruction.pdb.meta deleted file mode 100644 index c4f8a22..0000000 --- a/Runtime/Deconstruction.pdb.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: c67d7ef6c97613b41b9095a945725e91 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Runtime/EPPlus.dll b/Runtime/EPPlus.dll new file mode 100644 index 0000000000000000000000000000000000000000..3f3a00d7ae2c133dfed84f87fa04682132f09d58 GIT binary patch literal 1297920 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
    Qi?f5MQYQxKe|*Z_MUd)_=& z+FI`~$2(?<7&Hm>2hb4-!i&rdy@`M1HeBMaeBGWS)`3avs(%GuMw2jFLrE4TuTUKk zIUcUWUh$LhJXZ8IYnI-BWU4B}N3TR={HOToPA{@yv!(7`%~@-zx-_s7dh8_N96CCj zj%)x;;{;&~alX^AeXr26R~e|SBuyyHjAgWyJvQf|{NW>%-+@O2LfTjxC8kI&tYw>~ z6HnE8Zn2|RA)zgtiGBl}hjS9qs|jkq;3UOs0KsnZRvbXDB?wO=qZzSHSCd|hH8+T>_Ao7h_90@?dv$c|O2P^A{xQL1e~)$vmdmZsjxRa0f}q z9E0(1K=8bcH-PzwQGPJ*5D?B|s_wE>R+IgLV=>x6_75MSq&eoRc{W!nVcZZI?Hzr~ z>>P)cMc9sNS0>O>(WdcRP;eepFv{OKqcmt{7|uf5PxJ7{DEZkKyAgm~+W||dZWuoV z3^==@bV4P_A2#G8vKDF5;fv3QEIkXA9@sf)_k$)P82bIrvgW3tdkByk4w5WF4dSFp zB?XqjqasL{7iMbe_^o6fi2?tK1`qNAtd!Ok#-jzak-92Q4Z9@RPPHyj!q%?C?q<31 z+kgqV*_xH0T$wQ7w*y?kIFW?eTCD&}$6*A=aH6uVInssZhXM`utZOz}@0SCy(!-)0 zSE^oFG5by?M04j^C=WNu3jo~-KwbdoNdWQ!Kp_Fh3joU!fV=?En*ihmfMNoW7xdIk zB!2^jygtO(5xRi-hBB?QY8`Q)PZDP4OHA+1_w#`P5Bo%r{Q=6JJts-#Bx+95%`rMc zZ}H|~g18t9GuG1+SxJ`-{40sc)nb5H@@GsrnI~LM&cfg-e@~zuIHMAhih?(f6?;7W z`9XPR=a=(&{qhBbMCdeL<+i1uHkN-ezIc_D;MY4Hi~c{% zZ&wf@G*qzuwSb8V_tx*js}o~8ycdr+_z7K{wVHYcpkDlENSpWLe^XiHeR!zO0@9xy*mQL3R%V8<~6ZUvwH(f)^Ht;%%nUP?TF}7{Cl)#5+}t;{6Gv%-|JzPX&pB${DEUmtfbDaY7-+ z?F5q$wE>u+_6B-gm9HBZ##XVEOdGJakuq_Gf?b=ICUD@TOyFSKU z3kJwkIFO*CL@ed|AZ%SD;n0RR#P5aJl`^?FMgzoa8StvRi(dRbzG8utnZxn%VkX>= zEkbWZDizh*D!Zs<7c+2HPCgkbNXQ`x2W}T&16HWyZ>)lMc0vAt`6coBW|Hp3t59hD zc?Ym@tcGpd;&*v8E6@#}g|F{GkgZ`?Gu<(dYT^yA6tIWw*9yj%nCvJ01&n@Ja#oB! z)r}|r0FrY-X9D&@{0juC@EYD{0efQ#PJjNEBu!dpy0r0-cAy~A-kXZ@AI>%{K|A-!F9-t1tEYMzSGEBl%NAL5@PzKD&7y5}P>Hf^&>f&U_RJ*Tc?(->3yF#~&l+>IPJlz|a%) z8c485A5V%%V3D4nR%wq9Q^hs2v z=3{hcQ06RNV8>vgSKF!2_%D$pUp)ioPCkXV?rb{e%B<$}niruW*%;`(=wT!as(l8g z(j_pU_%!0`AH@Ffu7lyTF~!u532!f{NB`8h-MDq}-MY=2eF3d%jeusUe~=n&>tU1P zuMm+UEn6!m>abq+nwLo$RxtVuikG&=%H&)Uxj~y6T&@i0E;)Hlb+hv7y{At=QkYCmWXPZcm&~b}BHw=)D zLKqwbs4z?&r!7M0#oeo@ybR4#V+`NfUPTo&d~V{3WCd8@B@S6_drHTkpXR+8EkDn93m@;43#{ z?gXdrhTo#@4=QU{>i(L5-qT{$qcS z=Mv??m?U`hBu)g@FU~f93f9G61+w}Xxm4gJ)UckbRdVsy5SNu-NmeW8vdv$U-&Ce| zejPv2H}KO_#@g&AV6IJ;fw@%1F4;btO;Hq+#j73-)4*v=2Gi#{ytH{fFkx$*Gc2USB~)RO=^9`$xaY&Wn??AaF~%{=><7U9Hu z0m#JPL}h}hpG)rOTL|QR(LXYDg{J^w`O&ulkH3ST?rifv65*?#lx-er1y0U3i?$KV z`c$^LsuftDZPr_X4b`)?r!Xr6}heNm$l+h;}JMP)VwSY(0Lwho57T3VZZQT4(J)*nW@ z3J7A1w=M8V{@nU1Cw>!(u<5w*qDO!T`ve74qa)ZTLs0<;iLoInfQO=~UL2XMChEaa z^^nTRG?TR?C-YApt9fk6IoYduRIyCj%UfkK=LB-9o)rp^Qz_u@L`TkXd$3Z*964)Y z2$VmpL^4yuwkvogw()B+H5?SDeN@LFMUXpP?HD*D0gWamV0KNQG>Ca6*%yx{v-g32 zM&+ui{9mF%J7uktAng20*Tsb-9j-Prk5?N>aJ02a*w%wxn+Y@fTg*Hg(QJps^?X8w zXk`|nT4A_9<4hzCF;mSuqO`zv8zv`EX4&8=xO~T(qw?Un7e&=BqAtq_w zsJr2Q_E4$365lu}U5O;-Nc4%T3!5>uk@(xdRT08Y`JKQnB8ED<_t9fc*L4hIOB?g( zXg>xC+VC(+tO(<5=A2sSTpYL;=N&QBE^+ly?R73z11>NTnefuILAfn$)MwS#QTH)% zkco>wPt()?pG{k_dmXNIT9@!U)7%csyqO>^)}MVCtr348aTUyR)e_}8z=NpQ38kKiL-SISWk!dd1}ZC`-xN zI^*oM?D&TO;Hkxiwwa}0x~?aAJ!2gz!dp|qZktwib$1RY&c!;$=I)_0o>ai^hILbX zUl&&SymVbZey>R*ZU8Sudenn7z=Eg@YFR!D%dk!Tsg2JP*F9 z26p-F2m5h`Pr!ay@w;;+*Uyd*qh{kPa{~>St+Hchyx_8*$c$a9ss>{Je6JK)s-1f9buO6_4%uQKXj~Nf>z%Sc6 z2eqk#Uz8$X_odq1S#ZSnz>%POY!=dz$qrq~?HXQv*_~_95wr256jpBjk?VJ~`9B?2 z&bFIp(P)0mM2DPhsue;_g!OX*R6$bt5pZXsLz!-Jnd)FoBwlH$i%d z@Z)TQ({BDP+EAT<)$Vl28yNo;){n*W`5{!4`)sy2T1&~KQ9nYIj5W4(A#n09-Nxe^ z(``JCO=6UdGH;QiOq3_!U!W`uOW%fjjPfF#J~`@p+fd%PP=AoPP-lOPLhq(hP!urz74i^hg9-?1LETVTd zqmKMj--;@}npP}qthJNs>#*N8%iF7d#z(WkxSs9!6~z5`Rbg_eLG)!NfAJA2WNVWB zN2*q)j`^WrqAtaZ)mkTd93z#NnqE&}ZJ65=;GUGG)8?97lWx|@ej69Uv^~@jtPT$s z04`Y3$lHF13+Wc5v;8uFDVMfnrrciun#Mqri%YKZm-?4FL&u2<2&yNdw_xj75k)QNkQAyFnOmvhw(}*ou5E@=NV8C)-X}uvheW z*~y%rJJF>0k$h zG{Vx}Q?5#V9Sw*R&GL-@7W8tPe_tm0JHBGSrkF&yAHj{kft1n11iOfbiz}#q9}bJm z!SFdPhegpfe$4$={fp|yJRN;1`WjYdu~qCiR1PXc^!E&&4bjv8#Ifa9T)QlnmDztpTIZX$qXN-S@f!aVes(bkP74kH1{&sGXk#HF{xBAr(}ei(t;=yL zsF`)3S9haigE|}EN-_?x0ARu%#C5P=CfhW`KSL?e&+!9ajlBOe-bW8CD`lE*0J36c z7IsXq$BBQzgth)wxpSWdB{7_*Uh@zVI`RKOf>0mQM>LDP8U;Rpt6UADUlQA|K^BB% zLFKZ3{1ITqrt22xh0odeeAJ~jgmqoiwLFQgUvh(xgwEd4fcd#+ZX0M9&aDr zL>@R1rWn{%9$_xvVJAugg?+`rVQ!S&gmtAoz&|G(?`^I^LpD#q&+M;(g!`Rx{c!WReG;J!MIo9Pte(c_l#o(IDCV$aF%ULk5P(M1pd zZxnZU2%(`4`_e~GVIA3~Itjpbrm+*6uLC*Dtmt1++2&v4UE%^5Lxe<>WwYTdLTB+R z&vTIbZp+$v)sC$hduZA9JBHCktgE-W_Ry;9cWlKb*PZUpp=H-jJ3EI~T|14|=s)P8 z(|fbmp&_B9pwiezfI@?GLO~yW*+xgv$J_D1G6Cj1 zSlqkVkN+JnxFl~6z(f7(j@P%IK4)m)-ZQ!^`(Vi5_&<=U4yV5)TRAz1W9hdehntD7 z2bFp$*&P7*x?2Bs*}3WKBA-y=-T7azo<{2B(L4VWF9*FH$T$0+Ks$0bV|X!7mFL5% z(Qg4X`nq8~{XSie=XebNH}{YhVf*ShESPa@v4III?N=@z!xlD{ET*$V8zdnvwZt7g zIIzeBU@6oqbP84$#4t60lFJG0eAc|27sa~Om5n|{W+)pKU<1%fVFnyi+a1AtX~ zo68y1j);E`)T6kj2f1_gA>T#rwMgQ-ow*yD`$>#im>aeF1F%$V9eXm?^Zz$|+|=e{ z7-3xMV5CAGmy>15n6Og%+O-&qrohWPZ^C{DJ3a`4M}#LjHE6Pe@|yQ*8NUXW>LjK- z+3@P+<|aftQgQv&9iy)FL7wzT8uMW?!XKDC)3`pIK0CrF=kb90FxYZ;BPwRH5#$ng zx@2n0iZDef25Mqdik@s(Wj6ymy*3^fZXCgbBhm>TKNtNM@nnf7t9Y_vs#J>EG@i0Q z={uzyE~D+Y%ebae#WbNTXDT{_RBkBuiCOKX!fo6IF!^%jl(k2dE5)1;5umg3v&p)=);x!?Qo*c z4#$m3Gs?Hpya;V>w}qW^BiF)Wm+EXCdq0Wxu4UZtQe2DNa+sWECoEOF{mRKPq_E2h zHPiYIN8TZ#aUE~EA}p=Iw(s=xNdnt5(QE85f{mp6Hy!JI(6pXG2{$vbqBU)25_Y>{=wB+@bJ&azifDESV{FhYR_Slt!RfyKxDJ6 zS;Mj8P`aEg!|?Ax0^BWIaYSZo0ryLt1FQw_oJ*^>+KZ-Qn2DwHd9^-F!+7??FJvP@ zRqb5>8RcEbIE25ICvY66%xj5pX>mcP>sxtEt9Lw!oWzNm1mEjT^ zI&C6n4{b~4_o~Ya;1$Mu;Uzh#iPcueE??_Z#FfSS>4saK5M_gB;GdCNcA^;T_1H&% zNF;${&5Tm;sZF?WxaB*T>tiFp11J;w-9!j+PeJW?_&ZOVSdHIp<14ev$ID>m(28wa z@c?Y|%=A{?aZ=rm!1%;U{I18<(9V{jU>ncU5Q-!?t#}q*kDFWz)EMD7Go@|f)dKp@ z3Yd~sj|{@AUW*j?+pyWs&fFArfk!*G@p^4uH9huyuktDf#lLJpUv6@KknY^{ zAFc+P5w?-2^}wlhr@KT-HOqMijO5}kam_bD!0R%ua~l>%53W_2$g1Epi~_^WUeYbA z8NsS!html(x<_q-gLchv>L#~aTP4{Xp-o;p5-U6beH@KaS;u}GMi}9ZUk4gM)=F%5 z5_fpPC+9$Dr5bj5@*GeL(VpB?a64%VR^In#up>r7@4=C>7W3f9pbR$;jw}aoMMh|P zFtWk>ic_9E54~hFrhca_M3qla`9Ni8P2mD`#WGtAU4yJep%f<$Fw(1o9OT23yPQ!i z3w7#6ox0&TbZ}RQjz#6kwWd}p38cytM45sw0mTD~FEmNp3^L6Y2Sg8=prMHVq6dT`$2&eg8#9*zWy@##0YwAA6%g}pRLX|zeU35BAAN&Y*{3h~9_OG@UWjb_Udo-x&R%7VZDQ>X!a9_9d!5;Z7 z=^7#24>Y*AEz1u}xv4)!Gh~apnnHcz)pi&C`czI*>1GowAHdo+X-WaEsO9J?gDb5; z(NxPfP5}`TD*ARt?=Ts0YmCVVi9p6A8T*x2!(EB>Q5afES7({n^Zf~wziQ(bBqJ=$ zC6mzzH3{F)QNqv$?4a`NG~^_{Ji`SN?0Bl)o?wE)-`S2{_jJIG^2egwg$Oj(5Tr{@ z$~9~rOVS9Sems+nrjkj;22#lcpsR7n%58B<(59QPFDu;u*TdwN$tay4waXJ8i#c{K zjOzA86%(5XvrDg(&qXf83b!ie%M-^G^E&A+;U4FSLa}?8%1?&uY8SWXZAaUs3KU~C zDMiZM)j`4bq)dsMHbvnexR#BzOD!A*ze0M8g<|jc@x`9vvhmf$0x9ZEDC!|a%NA1f zT{M}YNUDh|9aGi3po5%^9psEBWE7Lq`--@kdAw9CvZOvKw_W$@&8dplu1boLnq8a} zBP5)j6eFP%lS-D7mwx3#u^&a1SXBRlO7YUWqAbzs+0uPGHcex1eR;7J1+!|LX4U$( zSta|9;a}ufgEc={?G|TC?O04`2Qeq_=UfR(s=V_KiN@VBuh|O@IHLzRCaRy!wrcAv ztfg7lx0kW@q1{gdzS#_9Wit#PQXqc)rD%;k zifis;aMp)BNWU2_X&;;ps@PVL#mn4B5Vbo5^|%l!2Y@1LO!y4p`(`Jk!RuBw&jW6s zSyL`6Ez66sBPyuB4Q^K<^D0x3TTu}^VvYzdSn(^@Sq<9vXQB@HhczhHSr-*Pk3_YK z$^3I_DMwLo%S3P)G=AW5|)Pptr6C+;D!sS2x)TC>@gpqAzM6G&WnPxD=nL3^$O+|9@E8s|lBJHyeN zApbmjAl1hCO%KbL>?evIGAz*>K|uYfmLb!QbvK^; z110Z4)klF;;&0&h8Rp%ENb@Lh)j37Uw&*wBiz6d7q;Qh#UY; zxr!+oc*m({FUCn{zIXGz2S4JILOWY$vA+G8One(T{&J8M--*5(-Hjj2iKE{_Ugn=5;Jf2x=;uO#Es{OZ)@; znAg9-YxENW-+=<_eI5B80%+7uk#>}*-j00nH$iyxE&Sm4+U)6B1i&EluxI;8E%JV? z8yla%nqdAU)KGYGA=^e|fR%3Efz+kQB~?L<&X2}&u$tXajfBAl!vK^|p))}o?WYPukZO+c{;x~s!-p<}SCf$>es zHpk1{a{j;&cS`7K&H4`x6tf&%x?r_ngvDF%s9(QgQBgl+Eq}xxX=Df`S63GD;ui}D zqL5%}C!&CBb}7cK^Gjn^?F#+W=&S4qy3>oF!q$;#e0K_hAwgQ@B!xNgg-C|oIhyAz z1YojhD2&f!Tt5}tdbT8Q43L+zmDFZAi+21K8YSt6u*@tQ{MCv3h;H+Uo(sv5*O@?f z>M8`}yEA!P0ys?$aZRChq|tDT2=b1^kKosvj=zTo4z4T)X{x_Qgg+hsO)6Cyq$Q~@ zVJ3PVQyCB`!S&p407&=oVSJQ7dlot(nBRbSW5UcrUjz{VAOyUCMu)b*Z9LItg52m# zKAh-eNr34$&(rI7RnMXPM_6n0WPe3-HJOKR*Ls*Zw6Vsxe-t+~;$Czppa7p`lKmFh zxV7IRg1L_pWG{jpJ(=jZ10y<}U?ItlP9s#dWc)k3s@WH@5zumA)-T`KVcg+ho@8x) zf<$3I3qIK>1)*W}986^0VAd%)M}e)*HFDI4JZKgJ^qgoDOKo);Ufa%#BDK??nHh~+ zddL93c@}cWI5vAKG~_Hs2JQkNpR+NJg<^nbx;fmv4?s(P%qyEq6UUh6;G(z~ni(s; zt590~#RrPs!Y*jmT92{zyh{5BBpRGkiIx`tz*hyx3jmnWC_r8S00R{uF94uQ3Xm57 zAOs4K7u?~&8VQk=cRJxj0k&%kGLdgS1zga>fC_gwy69d%mwR+XXAY#9;fR`dxM~4o zJI1IL@WMVKm7%G%|0ZKyk8$X{b{pM;vQk5e(;hVP=AAgZ`_cJZtmkqI2gRUjOLfKlw_MP5S-oQXJ=53tIO=ZJ`i zXN$_sjn9T^8cqAP@O7|E48s#jgp@*0u8{1l%A{(Xs<5U`%aPVm&j{$rg4jndst+!X z=#RS)gZU8cRM;atGoSQvj?7M5bj>S8S4L)B9NiDSoT9EJ<*B57T^&t~zKc5H#{A9j zzv2cCj>a*$X$`#{h$* z&ll%K>L5c7qci2B+MUz57)VY8;`!N~wOJWp-H8<@nJ@?1I+YG3NG1PN4?VUk+0ymh7Vc&#fIN&|xLd%9 z&IWp^Eq0{0slAt3D;Hui7)DP)3OhOrzv1|=u$QMif4-;-ILZTiFnSsy7D63`LbIHU zr1*@nGtU#c=U=hxa zra{KKl~`@b8JdK45{J~13Uy{*eiNQgk-jVyaOW>(DVh08@NjB9j@W?eyul?;62hMO zLEWA+$gg9a>E$#idou>|$)Q+$p|rU&31K6t?`3mY-47960YY+v_$V*Dwt0A;dvfZI zADo$ZKND&wox1XEr@1=8R$t~c+XV$xT%$jKDXWg>W#+k+Pu9^DUj$rQ{08aOC^$I$ zmP~X>)?cRBvL(}(Et&XajF*kBLSEQ7p7kT}40e7CpA(O@g`5B1A>^Q*K zV)-+?b4N*#$No!C_g{L8_Fuv(VA=lPKj0;4rQi(W@V*?$qm-n4z1+S&SI`^hiJ%&r+`0oA6Z9ay4U@Xs(-y;JSN@`1_}z=~XWRIdOl+G6&Ug-` zDnR#>QOEF4g{xM!RTS-L2e=qD`NQs^^22D6Haptc86Bbdc&C|&1(S&^*%9j3frYKi zXb}zEAlVrmfysh}jmKot;&ya%XRA*j`k zzXcA|;ld^B$vhR1|7ayPfVRY#G3Bh(n1TUX_(3LF`;7(;_eLrDyWDaO!Bb7TzD7_YL^*rE_dn4EM1;d0~XdEh)xnxJPEDexJ|=w8n(<8R!+$RB?VU-!n=Wae(Q+Wa4wgezA z06ZrF$O{0sCjfZ?;En_!FIb+y78?&2wa&t~6U^^LtR2Ct6U@Ss6U@&`SWJIsevX0u z`8~vN^ch^uAaa?pcHwy$wFG2T&%}deJPV*|ZHw9AX!*2X~Ou1^q@DfR(b1V}d zcffB9hf*;60uUWkk3&3TTv-BedFvDy*iQ9)rh;uAy%sMX7P%x2nOM#EG$4vk$B%~H z_zb+WKXFblme6@b3gCWuIZ(HY7^U6zdVroVo>z9@!5ok~?C$(+a**OTa**OC9;7%E zWRBd;nCN~fiT-^0X<<7;$Fpt_%M6ZJ#AhREP+j50=inu8I~hNEGt0qb*pJ?XH{&Wi za3DzCps03f$r@d+YuX7h|J_N<&23^B6Fop;NDJHesfVFui=l;c^g*XSkQwG$-$YN_ zdC^^Mdn~%M^&VfG72*}IcEi^u(|r2K4ejq)lJ?7YBxgx77OZ?(H+8~|e}PvgwKg<< z=F)3M?sO)`GJCR?B(L-e;uBxL!z0LKyy!vHSIDXWV=Kk@Q&RzVS{CfaPFuQ^BbJfR zptag%fN;(aTK@R>InXt_1@W)ZZ))SVKo)KS3HP@k$G;(lTOn{F9Juhfi;r@i@W$=r z4VTb5cteKB;u^V-qPxW?!jHro!ITWYLwtzu6Suoglw^RTx&8ai7;@r8)L_XYGwEr#r? z@_s^Q3fq;A-olDSZ^dso{$pHGIC~LL%>M~e!F}~fK6KYggm;`Pi#~-%7sWK;g4zVIndA z0THfG3(I8Ooz~)yP(Et{^!etGTO~g(QTWzKe{?|W=(f+~ABJbGDm>9LGFk?9X7q~@ z9DPJ8#yQv_)C=-ZoP|*hPuNo_DVO7?In|5RC|b-h+=ldBvD@L|9Ul&MIJ^wNi{YCM zYQq}s#nT9l$hqJi?(3b!Q2f{{Py~9!6ce5RbNn+Xym<=HN1wo3uYtJDodD_CXx!}6 ztLbn!L1s<#(V7#}PKf(^XMoI{nkHR1UW$@NV5;&_mU2hnx?>3IOuO-nw;_w%)9gp+ zV8Nqlk`tfT3D&3nsXabFAB3abkCHcr75G}1P?Tat9{N^Ds@6^95y;K7sZC>|-Ntq5 z7|$6QOIQjvt$R2p)NT()+v5z)>If0t*;b3p2pM{CyAB(hO@Xy%vPaLV6R8u!&5bkn zfsf0pl~)OWa@G~sC;V}E9!chMM<+XmKUfQG^QV0m0qeI7^>Xk0Fi03FPv6aF`()kV z>?t5Bz}*%+bzlDh4O#A$gSxY>AV12{7f_k#=}6VQ8#9V+BiH={S-C7(PhcRxt-g@@~B!yN5B`$4R1}gKmHJT9mct z;ELu?iirjTow^TsyH(g_tyqU3>He~zTWMN?Se)}miTIG5Jf&*-y8dotHBhPQtW#?U z<%_E&N&!_Qs*Y-59hERyCRnO&xT>kXT+>9qU7~_%M%a?TZPwHLt0N)F9Pb>G9_L%y1Ge4MKO6}q(NhdwS-cne-fy2J6Gb{OEOu+AR>E1FOl z{<$4}juki=^IOb14)=VV$oH$9&LY#PGMmgzaayT63pi5nf$i+Z4&wzqN zJ{_L9w5}rUb01{7iXD9s>EK=PX4e4oJfRvFUn=?b+I${< zOni9&;UWB(@cS74P&<51i11VJW8z=R@EhCV?=bui?eI_;;p6dR($6t`Pdj{w;mlww z{${*3cPC-mGLGDnb+z!9?E%{w+QAGI(KE@K8}Wmczjz0p@SnjaDsySh2Y(F?Ub7%C z7R*H^)}aOJ6JC5Z@HKyfGUaT}`Uj9jo8A$q9X&z`;)Nc;)IEqaIbOQl)kaqK6k&r06?0Ag|+sy|v|b$qvnh7kvOKJ{ZuP~#GS`V07- zq3?iT%@Qtop2}_aZ%P7zNYE|{C0pCCWF(3m_dO*M0e;T4knvKLZ`a5`ApCN6; z;&z{mUR)b6WgCktDP0@xToxsYsg8vW(ZVo)z1qo%mZY3uZUZ8{_$CyT7rlplPm=Z? zXl#2g%Zh%4Y*lnzW-ui(mwAO#4>l0vq{35ubPKl?A|2jAZ7dCm0XeX$yZKu*dm7Fq z*Q{#&B?@bmU`O8tLBfIc`_N7)6oa$30yo5_UEPhEd>0ue)hxMEPkeB)T~T~q1E;;n zgb+`%Q?H__uFWmXj*ZkTK9wjJKN}fy@|h&e-r7~iW`iFhDHkS!11I3ZZEX!3L)zGi z#Z@nQv$IIK2lr*4sPgw=JaA4yzC*DJPmTi`V_8sv^6vx#zfh}_3{qb~!PpUD=6I0= zcea9LkB-u|M!g(U4bF=+2nQS+9`{Ykb6J;&0Jf3~$4o{i`UcB@TBiJpT9%i0YNi^l z0U{D%j(Np78f+kJnGnp&B$!M~KaVegRAJ7nS|PraA#6CVTc0SSs@jDNOa= z5bA#|`i1OERIyRz7r^dqZ7c+NWoeAcRXC~K!72miob!Fabscay_O6SakVu~@c+ z;kz;nLv4z9V8aXidGa3aG#|mzAil8M&ZL9%s1Zf!pJfqGv_z{LieMVVP+$)MHF8KX zlssu?;i{QJq1h$q>TE}CyI-Jg*SB;$zRH%Wl~G9282D<;((Pt6Q+b}cP-kG+^5Uw# z%7|NF>W@%}0cC2FLPXwy#Yqj4vZ^v-Ao|iLO+B9{24X?71iY+~SvpO`O1GdG&A?z6 z5+#4yWHid-;0mKnp*oGd_-?E4ajTNpQLhC22J#~LUfvbxjygwnE>7mnuWrF?9{9qg z>2|9nhaZ60X?x#^xm(9{&hT z7+9F#x^w~t7AANR6C`^+7+7+L1~z4U197<3hs12q5bn|adj@F>JJz2-uD44cr(DGN z#=Y0d5xg##1Ye(__!3$#6xx;0%~pR=I2b@}G; zAUL_T>-R!nJ?F^EQNCLC`^(sW9&NUI1o=eO(e*7^h)hHhIUd zLAp^LU;Z~dr5C-;Q-+4=Q9mM2@dbx8PxrKW%9tbaREtY^+A0n_{c4J*|Gki>%1Gg< zviJW@p8jQ;?^hg~$R>=1c2fzMO+~K=<$4EXhkp(nqzlv0HC|Z+mG)n~2u!3}-Niz{ zQX!5=!TaZ$^9Z*48be86L*)BAA{k0W{#QpNLrEl--q#NqRn&YY-#!WHHY>gu0>m7-Gy_n(737ghcqB z9J-gwWXSUY^1GGZXVYp)Uc8)`T2X-%n{e!@!VDPrn{d5V~&jj{l*uhA*T=D($60lzY#;tYvVN-8% zk^x6`_^WW^AxML4+0Am2M)ci0;TnsvR3eSm`A4{MBsW~=OoSyMZa|O?flk!RLD!A? z@PO{iSdW4+H-eYZ9jLPt@4;^n&Ea>bSA92rycZ$+*yvd1#IZg+h97uAmoSG_;{uze~+KTdvqt@FgAvI5f@?KT!7Q)^kd6cn5wwjVc(7wCIdE% zGALQFUGy%b3I(#FGb0YBPxB@WrDEa}wjbS%w9yLEiGAe~I0gYScqCyS8O(rTFruEq zC>ces)j%?0KbP2&q4c^m0tVU$?np;5V4@(0dj3RZ`=v>;;G0o0{(B2t_}m5)Jj7_) zhm>{fkCVPZTYzw}1p=@6ZeWW)%HFZeTP|4Qdytn4_RYU&#r1f{q~h!*X=q*TD*LqIL5C7xZ}>2&{$kaO%5U5pBzF;?W84N)GyMow!d2UzS0Nr8Nhdn zP8dP~(LbQ4^R8S8d>4UHr7Xq<92|(iojlQt@Ydtx;$DE2GuBfSF9#pla8ZSXoh_YmKxVX$u0&B>P?_&_Fz{DD37E3=3`#R#Rh7qW+MF1(uoQ7v zNl1lW))9I+Lq=$%Y3?O+mw;Tplu)8t(#Lpr2*(3+Hw2pfR1h4=$fWO1^Z+MueOB`& zjClo$)t(J)@KQk90~bTd*o4UMcSJIjid?xios*#?68o&8CsXyvo*wS~!pgXUFbD0U zpCI`_viV*zK43h+85H|G)=K0LR}-)WX)8NwC*vC56o@8+Zg%1)x)(>W`J&I^hc^w# z3nrf+%Y}BKZkj?VHu&b6d;hS*w&D(5$$L=`K=^TC>Op>r4qu_*lOc4RgJ@I5VX zqL$X`R8?6x4P6}3kz?TrG?90YJ)p?nD5YfM64(eY!zI(AaW58A`VP!P#^-po2r0qF z+J|7_bm`S1Eg-H?L8Jn~7wQ(QYs;VM6d#w&@t>krBfE*A#v96|BfJxWjk88msCs-S zez1XFBIY!YtnkIJLdF&ea=uk`nEG*VVmqhvNI8M01+DgkFq1Cn&&tXLp^_x!V-{m%t67-$fuD27$AC2pzw+T;mzVaE#fWr(&5z#JFxA z48)#&-I>M#M124-ELo`*+SdYYI`5no+ArlLX^q(I)Uec0RIrReSE{8(=rz<7wBdIX(j0(SYC7uJDT4*MTd0IL30__g413W)o>e zf8)jrX_$1CahpMa8r3m1V4E5066mlU-3F3W-^ag4{qy{2T2RF~XP8^O^@X|Gw?G-D z>gj@r_GEmBbpq=_(+21R3_NL?w7~Kt{G08egrAV-$QNxz-k^##Ylg~`C#Hv(<2$Pp zCNy8vnR#<(GDVf7UAtthdpa;+n<_R{T>?ttUAX;VZWa{|s4^3*`|S!c9dKRhc7||sQCJKf^b=2^2``+VKlFT zE{FSsNZhDgT4xH{cr89Pm!@v4J57SAKXIytpQXrtM0@rO(XvwQS$rSBZ@mUxt z$1f&@@PalN57Q-ly+Cm`eu&Q_PUA~UhKY?&S2UNfNl__kO|NAt+p^UmQ$kkQh3}f@ zz?n4Dv;pfs&@t~BXavjwi~UAVg;g!t86+b}EV~Y%- zz9S2+5*N>qiM0pxVG@la9mu~$+F`~&`M)N7reCg4$y~#C-)}LIi2(k;m!HzF*2z}aS z$+z9L(Hd}c@w;$xvt#AY?dVo8jhkjLiYxPs{3R$zxb%1IvI(Q>DB4?+VU>5KMpqMb zw(YD1^YHh}yP|6d5#M+ftHjUg>bXbJO8(jGiX%0fbxAdOj=6kVo84NAti z8*JEvhJafmpLT1^z8&1f6(U;2U0`1AnOOU22aU{#v@<$QyM$F2w&Pj4$Wi^Y0XSLpihaJ5MT~(b=TFAe!!CvE`AN5ps6no-#gVa)?ScrE4R(l!{=&KNtytBQM zcjs&>c~t5{iN(J7FHq)E^v#mK5=chv zyi$L$zgP+zxnjTGi)21Ek{i0ZSek{AZ@x`1P#h2k&M?1Y)L2#=fIW&g@#d89L8syX zZiDYV9!FPkLL=byJ3%R2s`O`~^qWe9#lf{u1oHQ!fxa-p4$feWWj(NYx|qA-rcxOK zZ&KWS`Q}C;6_}~o#lg~`$%Dtokagy!wS)CDxBhN*ZgX*Po1(sZ`{pa6k0X*Nih^w> zc$(-kFr13dmD5|ma{SNE;pnY*CaD;o>FT5qvzQrnxSOXUO0k>FEEQ2!pZ z#fpO=+$LsWu4sI6#a>YZDnrX4LnmS51$$09qF8pv-D0`g*#dU+*!FrT5*Z8_eHm3f9zg}HW>LY`1fM`yRFMoCoJ9x$GRHFW$Tae?8Y#LNlf^aNQVw&{T}cH56_By2ywTw7^$XC+}toD z7PlM34})F#>a-t!8ZR;jk(pFC77kc<%_X;pJ13nW^DWP73@g~vTY(h{HHrBQW{k`x zhC98m<}!*0($`{k;9TWp#*8n@pv$E2z<5#L^)c4$7_UDqqK*ip!C%b|v)V=TKB|pnFuj1^LJ7Na@7?f!OloaZda@yr_;? z)<2GHEx+?--5RX2Co(ntY4}6F%OnCx(t=tN$8~fGe8>|?VWxW{RI}~na z@d=}^fP{(y1}6#lY8$XZ0AC{jpX$MN!s5)U_c+bx(HHkg6jtj+maij4vKa{}U(gZx zjn2pycSL@(BQpLPFgEukDeBlZCyagfva`nj}#x+XD$ivN1lL zZ5gloZe!v4+BIYu{*H1U`U+?OV|Fi^ho<5>O!D7Ahsu2qKS4RN?sb%N%vT=1FejEs zbVElzDwOiYW^smKS|mR;wOI6RaCl(VNQ8j6W{JVUwBi3Ucjf_-6-C0YsaN&t>g#p& zRQ22qGd&btRWs8)fIS1u0g8a=qN4V2dZOa-;1#e)+X&vPfEQkPA&9QWqKLPyTwd#m z3f_$OeXhsqt~!3dh{*TqRdvsR?*8!&biKSYGBPtVGBPsq1acaa+?q`>%jsh|?zd^O z10Bmb+V-Bz+AkR?N6q(b(l>S(C(BYAfbhR#9I&R!g)e6zj8-noUe zY4n931+H?l1(t5cg;9}0_jt!S+mGoisGm8&8ZLRnu_xI30<=?g0=(b*b>d{0R z#_&rrRUQ-zV(tUZ({cz;-+;>sJ&wN7ElS2i8RLD5hf0%&%a!|<7YR7zk;e$yJb9v!Ejcb{@8X_;(5@DK=OLL{u8B(D zWHax`Y;@yZbUvR<7_1U_{#h5#T7hiVSl2Guk%nHU2`)if5bH_zq*TRc zxO*o1tCYU@78Mf-ZIcZzobrC^MM&tHDNxiJr1r}m@AlL;c|HaUG8^N=OqWdc*k4Jg z>E}?hwxJu0kcvKyrG()H6x*LBtD3!a(bS6R=$IzteTnFH%1#jo6(pqxw273uqD79S z5iQCwn~B#b;;wrrVr}?HnmP69p2|c`2xHBlBSjKLL}dy@^AaD+ngpkpfK$Ea-tG=sy9hV5f~QID}^20!`2hp^ZNvFm1xxT}`m1XxxgT zV08b6OQzP0z`ImNXkp^pQ;YQCqkGV#czMtBrka%KKjQno+G97IF3s|F$sHTu}h z+~?6Y2Ul$=WQ2=+hQhN_7C8n=x!sC(bJ&~J$Ey0CDvUq_F&qoo1J@#h5|0DCJ%ztJ zKx}r}?5pd8l?rNQ7Dd&Jv9YO!4$R7-Cd!r4R!lYNiSu2!TLT4cxEe^UlvICjzMavu4$|ww>s7>joPr6RK#$R$Zv|L}pheBX613>y3G3)q0r=4ZGUr0-6Nj zef$C+HaBHV#e0xMHBdIpN7(GwJ%Mo$qnOi>v!R>9=o)1TCOOk6&Fqtqj3 z>oT@3qn-{Gils$qL1p%x#9D;|vtqI(RcEoFbq`ubMcffYEj*1sPVGNf@^fnSHcW8@Z9hI<+5YEoEfOoMJe>x65jj(3zcoZ{9 z(P=H)aXPl_zE!MCd#pJz5tnxOVFGpq4qdLNVvTFXrd)9xr9ta2%Xt@w*f`~x-Fvf& zpLVO9*zyk+>$@I6<)!gWh0=;$yKvU3XuLmxHdOPL$;R2{hMz9O&4NAdxzs-ku@ZG8 z-U_q|t&@*J)QL)N>x8sglfha`=`&dtQ(vkbNL#7tX$3OyZRBuFZVpv-Y7RIc)n|{l zS`ThM1pK`V0R8aY{Kio-5P9V#0iQRV)5$EaH6@*l!|8M~Qwl2 zkZSmHqX?OkAm``YSV16g)E11W@dCRKI9ZS#H+4efk#s3;;oxxnyc?oDw_|lCVI4k0*l6J6 z>b{M-*HE|D9*Le!4@WPR6$n#N@({w;_(1!0owOREw?|G8tCapWB$=Kls4+? zfeiR6{G%{(p2OvH!KD{|ODejXA9)=k@qj8WV0b7w*Jd8clU{M6+Vn#Xh-bm6)tt%{ z* zy>9PyUS`9~Gh=kK;uImS=y5WBE71=UoEipeP`aN|wYL9fIHc)QbJ!_*JL*AwlkX}vRizmjTW zEx3TCY3A9vcF}8;X>8Md>vLF9t`MNwLIX7pov^EXC6hRJ*0y(OGZgGul$bfS7RY%c z{f-kD^4k7d_#0|z3{b)a5?C#(hJUpZlw16TzaLCPJI{t+H*)7S27#kprU5NaC%qT`my|g;I}MdU zCE<_a8>$TkLzhbzUO)?%wWng=cJZx_eX?e@QJc_|cG$Hdfy0Hqnet}8kV4Z35;P4L z+J}q|?W;*W;h#vy;jFZZk@DYsu56cttj}I18HO+TB9*n)C&dq+F9ELZvG9M$pbc+6 zjI>{tvon0#^FQ6%Z8C%Gy?7PCuVM=)8fMRQ9tARS3Vkpy@O*mFG`4R`1kI z+CE;7Aad=37R(z=;TRS0HWSodYWgcU#;l-lAy-lM4ty-y7 z2WnNO@=#E$4%ez9v)o){l%c!vUYSm;L;_^%guuDB?hGpJiJ+X4Y>h_8H8bZ1MLnoA zvp&H9mn)g9gRmCNAbyAH)ygbFF{W01dVNqfc5P+A%@e607#u$>r3+GSHV8@5wNmNo zdwNqs5JrRYXwdj1@TyFwT5djEz#XOBt?PqQHW!pjkb_G>Y6zEXuxsmOUNsM;sx#_a zN23=nYDQnVU@91)F(bhUQ}iQLxbuq)cxh6z2PJDLa_jj18W#-hufD~waI&X;J@9gO{{9Iw$zlMoHaXA@^W zDh$gj#53RKT96E!IfHaxmKH-^pf8@jv2Zr!2n7(b6Z34c<1m#FBV?=#vXL;})}K0) zH(!5Bk(~4Jy_xjH!0O$j7?2GwJg!^};Hv%z<0|Sir}u*Q zz&J+1+p;5$&68_7jvJD8t?x!z%QzO1jaY7u=zG&RYi!yW+X=WR^|VbJx0PT>|Y2nE+z2>lHM4 z`@(FS2h{lj9dDeOE`Jm23onDn5FmWjmQv=W>}g&|yk`rlC}z5~Rh;{l#p6?as#$Hy4$1>2d=~0`e#@jj2B8ShY0FGw$SS4dE!^sGkK>&|Frl zy84#b4_NV1rd`9RbjoC`4$R&zt64>_VpIbhC0Qs(J1>X)O_~raaKn1fT=;AYm0spK zPwj0&pDUqcO>Ve^&nE=+#`5+nK$N4tA|e-^NFEfe2=Ev1V4hH&)?)%Em33e^AVSd= z2`{H4SAd)*_9n42%vRHos;8vA3EXwdW+|wmwAw98;qdj+Ta1RsNo85sc_an8QQaB<-2@Iw1#gren zS6QK6fbD|u1q`w9rF|_I)D^`-hZR)}uacq$f@+9apEAWDB`t5CX0>$yd~j6d=SX0zN&WKOT3Tw;C(#Cdp(^UT+|I0gN6&y?iX7t>{1LRq3CYR9|{Y& zU%ZS-^5NO<(ehvj7N#M{SWe(}*_pUv>^xT|vXmHpP4=`iwI^4P#Ik}7xoaA{GfqLkL%}eE9O*}i{HGHb8W-o@&jjj@dR^{qy11ne^K1;f8 zb@&|nJdck`2?@FacXiF^n#MYEv<}@*jwICtsnoUrSzk!j*4e>o=Tv0}Yn|&ZL#6B0 zTFndJNFUj6U96rN-Amz)l6oPPD)iWs7_3#hXZTu>Y#ElS0ktTPq|@u##Jog6Jj&B& zu#67%)Sz_8B@>hTf+NWyZ#koM1AW>^$jhXVxJo6@J%zXw;cH++!2CgAX#2&o{T&)z zwXX*4kM*{P!h;2S>-nj!ZBC4?ZEO(dx?o+aY7Nqv8?1AxOlupH#J9gnL2LKb&}K+1 zGpRbTTzhKgv(*uKdDS$8CCJUiiC|*I)_gEAzKPW{Nl#*r9M&cEtz6I)GO1k5)(6$9 z2Q_yXu2S|Xf`jJlE~b`(Zn>}#abS3h(C}ON2@YcUJ}5Yd4Wr1+XWnmPKl>i92^`>9nfs*fI$(P&1}~**X6Mc%h-pF zvV&BiWBi?jzs>h)sql?il>A-`&{G#W9hFLSVZuqG_*YkbM|52L%r?rrTzDhnXq0f6 z?pYVBnDCmgfp2ecZyB{?tD>?yGkOW#;*oBWQWy(+hFelf4;1y6l$B<|;@yojAFhb& zWs;`gI3^wWvg-K-wnMpaBZI`Pg+hN^=po%up*k+K(G8V>>_QLih6;s=%Y|k-^lVRQ zwzv~+(QDy^JMekd4NP*veJdgH3HN!)U=<$H^d~CI)=kCwC0^!Q!eN^N-3W3cNr$K| zGq*C`D$OGb;S^vEct$UZy4bi=>QZaGG`_WjYQAg&o0aHW(s`6vzSt@0-)y_{h!1Vp$JAy=};M}i$jgg?k_NIn#j=s|B55&+{O%^U|Y) z$WZV%l0|COtmJ~h+H0LWZjiW{Uv*x?@R#!@Z($Ig5t6bnq~H8x+uztYoN5+^H2~{l zBRG%^i?&QmbcB!?u{Su<40vN0;X!<}QFWR2o07W>O$bVNVc%~`wyVu5cl4DI3c=cM z%27#KyoY|1^$gPLDEa*8lTX!<7RKZA( z&8uUJW4VeqX2=4O3dhpct6r(0CPp2X}Bl)Q@81x0)(;Arhu z=ZQG07&S;nm140bW*6d-ey8B3rkb!4sofPGE{w@AbYeId_IG|3IjqUKgCU#kJ8vY& z%YzoAZRi>PY31}ms^k@+;m%RL4I)4W4Q(S z!Ob|zEyxdUIxe>$Ke)kKZb5!=4P$L-nc}%JP*2Z;koQFvJEJb z-}p2?Q_pnoQ`6sK;t?JSi;$8MOU(Z+3D#!kxnv{?_0pCNl>IW916rCDR8w{O^Eb=D z*2@vTHfu_rB%uUP+voCA!GZI)xC$(|agE4i4nqM(A-@F3F{Lk&GPbf}V=Qx(z@pVK z%OzRYyg>`o8k$iq#fFFQym$pzBzr2n5Ka=&MAKGd4085!N%flwY&LG98Gc=H{rBNP zdZ&vA^?^^pHLo^1FcK-NnNVu53lPJYnh0ej?F;R&TBtT)P^?LXd1fk*QkkIko{T!c z&EL^qGU~c;s_*a0FC!Hzzt-PR(19y`l+*Y14m@5~=(KRX=LVFCH|)IjUXMAM72P(d zPuk#T9tbYHWXyK&;bt3fval>VNc53%MRR;jGGba{AX%nL9Mrgl`4O8L`+M*!v$qSI z`kv}4mQ7PUkL0@6*glWTH3n2Sjt7zikcrGL> zvx)x-nfZK8%CKlP@jP`*HhM~uQ_kIvvj7jbd)R{{@9$3{0li7`o8$UjDH70|u9?RVlPq7cMxHtyai-S5`Ce&JQUT4SX}y zjZtwj`U9ic=!MwaP8sZebGCCV^kD(|i$r7xtVL%hKMOEQ_;qQmEx;s|ncw%A(zBG% z^#@4~tadM`<2WVsfy&S!2wMZ^Crb3ReG`yb;IAU#G<1ZGE;Oa?24ESf^80aD* zJ1cRwK@k!BM_+WmG2cU^j;Lv@}a&U4lIFmaxz&WDRL>N-2>e1wFaug*DfULekx(&ZM;5pRCs zNgBHFWcjRhC%n-k7(v*!j~=hz@u;KU711;FyE1x_epf|r)$i))gZf<)eL=qZVpX=W zPsk$YyIuwZ#hF*=*q6baRqGLr?U;zj&I=IH*U6Qg7YOvSVcFmIZ1CWRdw?2o;Hikv z#^~|$VQrSl7G6?vWHn6*vQHNzaW45>ynIe2li1b~vlJFLe;PqE7;kh5C5AyDp_GhL zbh-Vyy~~5Vn6+CbT97El7GuR&1+cKS2f!GxnI6EfX{CUbI=|$uq#Pnkm!WW|fR)43 z6);!f#}8cL^wJeRwx>d*O5qt4+B(!Z!ZYzjr;*px@nM1$qDrSCs2XUZG~oiiBOt=K z%248PM?oA2&q{;%vIB#7!O|f1;)Lm-6%KYjA{BCgC<7J|hE_NfJ~Cb5J>cZJ-U=ay zXB6U|*xG}bxS7M*&JJlfq7|7O$ON?7k?>LJYCm@1c7C(BTC~`L=Jujk94ccC=`nn& zoZ)LLM_qj!#LEms%%SyFU3~$Yc%%fDH+(EP3 zKK|a+%pA@vn}fE)c|ZPj`WzANFJyKOEn6-`Fq_%6?7SOe_xG3WJUHvZ_hfgyI(8rK z?Yh8o;qUZz{o33YdbQ174Ph+$*)Y_8=UcF=+;{9e)GjZ}dCP05gS)Pn+B++cI2kdn zs6Po23@6Ew3$Gzhu2aHAuKacf3V@V01{bdDzctUs@foR>CQ;-UP> z2-{0)#8YpihB6oGnr+ENx$VZ6zqFqlEzbd1(x8ERIy?rstHE?GBAMygiSG88#F zc1FF?tXy#{w{oT0^g>~t(_cD<9<=BAjzsPzx6i8S>K7zY^JxxZ%@QMn1A|oV1L1>| zU3>(H0S|QzDt7I-a*YJ>F7l-Wo*faV%Zs2qO1P9Iz)59Pm|YENlyM*7WR|EwLBZOd zc#9Y!LZt-FM>)z_QTub|NuzuIG$yUDy*__>*Leoc@M%Jn2DC(0v|-BZsfsW$!Mg~@ zmPk9Qo>xh6Ud6$AmHV2SS7A280EMYwxPtp+9_&ONvKyQr@MxG+2~Moa){FJjXZ!CN9)_v<))7O~ zglzkdya+0hMrX}1=`1}LW|tWfyJ-0hXt9zw7WoREUTh47MS5)e`}c=Dgl$5BVqk~* zTBI6hHm?5p{|;}%eYK$dvlwrp^Q0(KmGof9u(V^1++(n_v+chFi&LqwRNp06c~Y}U zak}d{8mJ>q=yo-jeJogX4d<{xByJq(jBfu}f<7I~H8Hcj3t3EoAzQ7^K9gt|k_7jX zr**C?r)s0GYD#NjdqhnNG)yi4tzo`s>_>=7zmgS>8Cb=QSFX^Q;Gs=$F;;@Jl)cs8i~?Ik670nmvl`$j?$EHWcJ5>E!!sZ*3eO1 zF^kH1JUCa-exa8(iC@>3t-4a+T4|V=aF~d*SX37Yk8wy?`Hv!Dm6jN+N+Thzj8JX= z3dZV+V1?1F9rux`>QFL>d&;MXg*C!%q=to?zcNBN;_bl8mlsy0(g@p;n&XlNRLEG<6xURO+63lEsBf71zV|xl0wo|LCO(;j2ZK{6xMYOCHJ%Ipy2&JcC^)t%fC7 zoie17?6vfgdAyviusK~^bMwi%%Hh`#ysk`^q%>dAX7%R8c6f&I&D{hJAKjZ0tt^HV zbFpD}_0`gGwMrh#*T}dzJ%dG3OY<`pP%Db5S{{Yy+S%0IiQKmlo-sdDDCx)}4qAz_PvLik#C6Y1ayptv-g)Wkx;!cbb-Tv-a)iK9bA^W-Is;#QO(3gLZmmXbFx zN^B8KEP<7M(|Nivv+=8@Gqh3#h=|+0u?F|YRJUHnL!H%vGfZ%zdz@p4Qnp%LgpYV764KH-@QFH1Tx{o=f36Bt#7ENh>8~y)hz5^KP=|H7N*@cwSH4=jVvl zJzbGYJG!Y0+Y(0_K|jLOrWDoJQeSt*zHW@+%e77q4_Jy3&m8oHW zLaFv4S(Q}PYmK{D?l$fxU6U&4*|NN(AOj@&3<%ay=tfLPXt}oIg^Yw^ZKp`OEMd_G zq>P*J6o3oI_)&@A%%e?q75_@Hi&DQ%valg9t5wx%#SZ{Lg$rK?fbQ#>;d7({%pxKs ztLVM{g}Y#%t!zooc?AYlvQw~V@QJ)j7(6xKdT8;`;WE)7A3xap@AYcm%tM%lxq{W2hH(~mIG z+X2#;&FZ02fJ92`{oQ_XG?c~>vz6ER1Tn+SW8v|hCQfeY&EE+MYv)XFE(Hji?xDny z6qd|ha{E2K#*$0-fTce1ppp&4lgRUG;l+SeKW9OJG7(>WaZorfum{ciBE@>TIAI9m zW^6$*9HExBS`D2Do|G))cK{Mc18EeA?1F3n z$VQT=;oiF7csFH|7c@3$+K8~R_vpjl4SmOJzpTH{=5nnq5zh)x7Par>hoRV47V-quv?u0IAw zTUS*~w8vxQ1d!oGrjCNjqfa`w*QgU0;c&_bX2%QVph$5T7p)E zm&#<2s}kE_4#UgvZF`q4Eh?jR!6K*)pD8KV1Z!$XT_#yqpTEiz-Cju-K1&jO5gRs6 zwwuZq7p+oWJE1&(tMri=b&ifsP=+cU*AHB3VkTU`<|k~#h*?3*3Ww}+YceQz5uR#Gb=~N??kXd^>TdSQ zS-volnFsNG1m6L^@=wCs{2=7bKzVw?e~9DP z4=y7D6=mPKD|glIlx!F2NYdS($mhhD-e(dG^Lr3*`O5zQwcc4xJasRzSL_j}5+ zIX=#UmV_u(NIH8hUb#{wD!4$qfhN>u)`^au#JUizbzWMeto76oONa2-bhw;9qSlmo zz2Zvp*n@S+@|cMJb>fwq_v6tIMxbs>I?oj}G^bMHwgCtTHjJg9qE(7OLYAI9ec}N{@?1?y+buWiy9&N zi$?0?DHF$wT*8_n4|vpOCfre^`IYzSt%H;_Y?aDHVP7NvYZoKlbS{80S5Q1_*@ zlg{n(W*qZ1&wS0tc#t8x6!a`_UFZva(3^iL=nH+&n|~?j3kt1bM4>nT-vvEmYT02z zD>h^vd_jC)Yd#aDx-r9gka9bUHH$043>(vebND0>Ycmp7}7#ZdI;(EBvuoug%nX>2Mt`J zugD?0>7ik@h7|_$ZqH-<%f7ufb+H$}7U6|QFvnZG1t;Gr+jnl_P^?zd4cwHt^Ulru z%V&f}UPHS*3^K@B81%KAZw-6e8ru<;o7_T@N#(rQjK4_Qhb>_~wH-)UGG@jn@98lYPsvwSxCPc&qunTyM46cqik~XB@iu$Wsz;2a@(PoMu2?w@<=E z)iyuWR<6!wikM{J&dS%)O{zYDT-%712+HB%QWNY4A_cB&atftd2yz@HAce>A(;ScE zi`{oKG{&ao@_5_ghi6J2IXVuX5B}x$NNqE65!rmCrf^s!g`DAAc#?^&mZ%z3E7&3l zk0*^yQ7vBvy&pa@DgR$2A$vS6-y)Og9DbI~RD5Kg%EamYBQ;xzz2Qk(z7P*BUxJ~oPq$?}w@^qlcq7&x{Yvxk$h|AP_7LxE$vHBWsXvh!`LG+GHv=|TIo>338JOiW`JCr zI>=Sa`oe0#4xj_k>5uO{J`@~n;qO`erTLN^{#P@vU&mh=xBL?ta*{c@P^9`~>spPf z>?&%FOQ8+|V2v$69R$D+TYx%5p7wnBF8P=3ya@OfE+;{@ z^I~x_D00~eqAp#)A3I+n&gILO*J~XPxyuW$5WmvQg;%Qc0bpd|P2$w6iVJTRXRh&C z7-m%JAOIvkk2K?*qsZTw7TiQH>joUI0XKI8wn{*@^9rP-3ye$(TX?B_vJKuz@ZSc^cZuDM9(ls5WU76qtOS=QH|~vhiR78 z8~2wcHrDg2cH&Q=Pu{5Os-R1#E3t=3V;@k?_}gZQ&dw_)E%a+7h<;9iPP;MyvE@`R z`rA+oAvYI7;Qk(8=xU!06r=Ol?zntx(U4HL&_R^G@4OkJF^QQ9>86ikaerZ*2FXqgAQ7*|7v*PVhkg}Rw76C!xrjbjqC5Ps8afrUTl=}Pe&n4*a;J;(uuSJu${xV? z{3>(owDC70bAJ-^|60Mlj;`oXDovM7oa}Pw9)8?{TgEc@Z3P|fT*5K)fi%3=G zry6_Oa{pCs{*-EzEBRy&?Z(#rwUdYvBw0=N{Z35%C0Ys^&Aa~sj%?HVBW~U_PhSVwkf6ra8OVJ_mUp(amqFACBFzv5RPV%^0kkzBK+f@C88SO>&Pt8SN4+CoX{XK^;O@M0Pv${yF`dZoW#_>~u6-zDOSQ@ycaSaH zX+j|vB*x-lGYJmAEODAaj3R&~eV?Z%04P z0}Co-3x6p=M>1yynj4GZwdCf+Zw9}&HCrp2Gk4-lnf;A~*5^)fhMd2o8y2Uf?>MKo z_Za2C+^%;@%)e~N%sf1n&jgu0=a~Dp?9-_-Cx#@-?RqvF?WXB9y(!g!BQGyVtV?sf zv`pKTQ~5AkNO+#3f#2KIPPGklAtpc!|45t@Jp8gp4Cti_*DBqmvMD>$U!JMA3_hXd zatr`7!v;4QKdvu@w{7vtlo4#}U*T*Qq;pa3=u02{X=(LODol8lI=k4H^b|Ny zC|d0Jcz7ltb^aAtIBJ%$t2lc&*yu3?HGay} ztwn{MKym??-Izj$qS^}9%Ux1~5Kp8cY2vv{itPMVsIJ6V{1k5uA^OS5q;kVkXmsaN zeikIcqGdjb%z%s8YIl>wvJqC|1EOCKSoT`zuphlI@#LDh`qa2cErrhRBCq`O>YIFT zeA8HSgDb_dE9Htqw2YpRk4dQ-0^$3-cz)~%pLo2+_r(V-%kk7!Ci6C(^Ge2+6M+sr z)yH(Zae`pN){Ns)cI}3#Cq*UglwatPxBzz=s%|p@&u{w6HB^+@HB}5Zu z8z*ViGGidhDSBYDDEt(CZy0YeR0RLwjlgegO<2^-LKkdMSf5*_MvF+XH{!Pkv*u~z z;ZcP&Js)W9Dk?o6^jj-jGRcG8$MByipdOw1R(6yWB;-$-rqpn$d!4;7^V z%r;KMZ~Y4vZRLBUtjxy4Wi!i{o%E<>Wf_aB7}N0IViO~X-n2Vr8PbHzi6$;3RrIMO z1-+y6Ihm~8{k~W$*4;h}r0n$zjai7VSa9jhfg%~Pw$&eVSpCF)uKmk_EinTxpA3rJ(21Z7vb~8uWy>)si)DZ+gv(_0?*bjYq|G zc$o_z!2d=a*ru3bXW(Jug3rdzpCPVgPZt7SDf|KG$)}$XDbZkO&ksI7j|M^if37f@YSjINPwdu1; z?s?dWO~;iikj?yifoC* z$K4-!qcMi)Mcs(-M!=uQWFDEB78@??vdiJS2{I(n)|>EbFUldCJ}mdyg!%TP>yl#9 zISb)?$Rf1Y_>B`Xe>=WwH*EwuhjvFS&$*EzQqnGF{e$S|_Hw@kJ-CBe?S~r}ha2za z6&J!Mv(cBy;WS@NB-CF-tRQDw$?&ZZr%LmDPWLEhz=@ImlR~--ggob=3`9v~A;s`{ zvX}|;Q4F!khXvGwIEkhwGBZ*8-YwNX$3(d03+yM z0I^yeEp~Ml2-GHGU8t{(#B>{pVP0*e3$$jUnNvtLbo(9|CFMekhO11GmI(s3ue2lD zl(cd0a1~tN7nn+&M}y~!r*=OUW{GA#mA^~*`xSpm?D$GJ*Og@4WO(kUCp?e;mxTY8 z?*QMPf0B{EVLqD}j>6Xo#*uslUITG>@I1NEI27MKQO314nK7yL= z9;w_ssF%cI@L7asRWx)S# zfj>G!y3y3@Y`Q&-fG)v+d3+H8o=pQ~w`{r3HGZNT?;D8Km7ewGA@_6JnSw2y@28VD zx>-C&T#Ed;T@KCH{q1l0-lX`Hla=VAZel%A@VDJbf>`#=hA}Psjy_Ln6?sGRgfB0K zPh;U`)zbA`&M->hIfU49uW;-3y_(Zq!6cLSbfO!-hX_Ys>sBp?5~>R&%9O3cc$p-r ziGu=B?T~s@n-E@6h15L2NRXZ$xF-jcEIdfaLM(#pxfY-F|Ax#5?>5n+@bQ<>MEPec zue|T8tM&&#Xm-qw%Jif}V&udm{Gi2%n*=695jmqIkZ-tK*witTK#tjA*qGZuh@4T< z$v6BNd;{sk4QwKN_#tq-N9Wgz39L;oo66ShT&}*LXL6}IFpKb!_QUR=^JFysrGy|2 zq+h~U@dUy^bA2&{RT1&THRaCFSPlX#ro-Cw;IV6 zU6uEJ!@`%gb;IuGe;7iIpMq~*cvsJ`>1QX~qhpRsB@j=4f)}I{h^IfnH_{2j)1RPq zf2z!#vU;hzAM zoM`7BU*0YmRF4Tyu;??>5Ks=u76PML#h|J<2{n zOCFC_nqx)ux{8LZj5b-ws^}PVtd1UTjy2Ia=2#nDZjN=)o6Ip0-C~Y|qC3rTaP$Ln ztdCHCkXCGnCd@GzZ868j=s0s65}j?1M)X{B9GX7c&Mn+7osnPolzh0^|1tgM7e20E zf8i7QEi8Oezs1Ia45H3Qq_3GN^yt5flfK9KD5%;3Q8+&;p*O3O-|_-}(FpjR=6)rM z&BA9Tr15eI$j<)WBkuEhzbRzO+?;ig#HQOrvP!&LmFN~q z>>wV5aiuQd9nRv*o*aJb(?Hff+1Xe+?14QCJmvw{XCn!WxeM9jXh4b$;FL^{4nX`d zL@!8*R<5*MddlqHz^mvU+Ot42%ECfqNKCfWUU(>_V75ZLL(Nb)UDVC-q7k!IIYwMExTYqg7X7u|rnMp;+nU(mpdr3z068b~w# zaW->gC+6?G%=c*z`(OA+88_iZ`H}5g8M^|yeM1b8u8+nDUr$Od$$3F{qv+e!y+WM%>KYz{K92V;!o|pLp-b5yO9C(`4v8J;{Iy(Br z5~vS<1LomX<=of?2Nt*eX!b#gSH+xK=0&bduZ`H_9*X@I#ZC<`+gIDhI-t7~ma4jH zD1>LSI3bV|^#gsx458G4OY?PnOzm^+%tj9q@P0)VwuH>fLL#>J(ALN{E(4)*u++E| zM=F8J>_w&||6Ea?#(SEVlQb(>VK;ZYp31IEC%Bcm5z}eUq;y&DvYE$I9_(8@CX-{} zo&)5W9d5`b(fy~yjNH`Gua8FFligDJlbxqdIp?Nbaz6G_X@4vx7EdfD)_yv2Stf%9 z3h)?h`+SV8vab!@hP_`9pcCj&TG3!xhU;`Stlo9%K#*^}IoKR1cGC0wW?yl2dr@&)Q?`EJ<(}Tyw1EM<^ zZ4|Awkz)g;XWMQo1YDDK%g8^)o%q~zkk>9mXANY|ZRSmdLyrcMOmmAfNzj2aU9&io z1TC3~u`FX+^evTsL_d$EXXSP zSa~u1Ek( zkHNbLIm?c9u7xjN5CEpK4LNe)^oz!a7qZiB9p4iq`(ft4Y_@GDteb5)9oM3Y-J+}w zPEIgS1u|Cs%mh;!f*QE~gl$cpVKYhMcXVwSo7Ig5Of(6@03B3lH+=>_He=YFuY=Z?MlR z?ei)=#o9Ug-UY%AE}IAbXrX}x5+9i=qKb0oQG%^g!HMt0;74t8J?q!wR}pndLB{w8 z22m3gDQUUL9K~;~DQIi5jaO4L{g}-hML&KJTzMf}Q@JkB7S_1_+nn$U;b#aL@QWt4 zmcq;k{KTmwD=$0{Uzrn2E_&4&`)r71Uet{(I_iDX}L2Z6{@uQRfNA=yH z^>HSR)=p9%Gnug^{|vd&#l1tmwQA{bcS%(GBf5M)S^C1$S>CpvEPdhWET7s>mcHcj0=lOFrekdVd6I4x8$-&W~zIl`aYTDnZc(N)74Na;u5GvZ70gRX`c- z&S#34_Q-5$_WN`{&y;ATsI-QN$>n;# zHQb>~+F!BuJG`aPkODrMTB6;eL#*xgDgK-hoT1qXa zc*&TIzlgrLtFKf z$E0Q7p_pdO#AY(05$==a1?en_r>j`o_G)M$h>E_XzB-*c@hnQs`HQ5!A)Pw$EJ{6Y zsc%WAPCN$ucLn%mwI}HFVU(;Iz=9ZQXyRE^@*pK=Yn0V@}m2dU3ZUWMls=oBIvK6RU5~k$=!36 z@cV+0i~2+4s8kp;cOs!@5JIiPA4u|par_WRrvt94xxEL8O<%d+Q175NAR)spVB7`h z*~YU4vvIL<-=Vq7i~c9U?^xD+ez8z$Ttnr^}p!cEZAcMn;R>viFE~JRbp9x#N;D$JST9^CiM@cJe8)IA*iGPYHdt;l%fq_;}gmPotDyU)-|)Wff#>0 zc^|`iRD!O9vR&ewP|*od?Il&zX;-mW;yHrc$ETs$b!XJZdeQ2o% zurWpT?3I+l@&A33V!xbZJk_H6#;R&ilAhAHQXA5oTnOZb)=?9 zl_4(R=oKfqo2nZbQ?SngN!FftDm5NI%(C?s)~-oz$Gla)6@8rvV-4Zk#c%cKLru5^ z)!|Kqhb%bd*$)VTQS!BM_8qus;at)}R{u2hsnRn7Q*{v8(C=khvl&^`#GwN=(ZM~G zhI`1tJ?P*bI3V1U_3+D z-=sRiMuKpME{{xG%d^`He+y0;=l_gW7y2-?Rs+3sm0FBBXKJJa4AZvfY(Ml~C8IR*3eIkH;# z5&F?OseQA_@=pSeTNM5m2*9F(Wm!UbPqNI@a{8VmbmdLN7eeMcY~~uN@P}#9vlrbN z=Xd(v^~|~>OqMM2n-vUo`Dbr2-CNGaUS;y4ggp`dBk>r;{TUF!tJtGWUi2FQBW6_+ zk0tHl$=owdlPQMgfZUC}7Uf0%m98N1^z%aYR+Jb0C7n9)bW;oD$I(MJp7NQ`fu~#P zkDM+nHqy`Z!k^Q~GUsMPSRYZTiwNIU*}xBfLEOCDy3}F4pLkIe+y>799g~wYDXDIQ zdMX#y9vV-on%2=j0ZFnpNiva2qC!O-ewV);MnC}|@xe*ry20!Ud`rBH!gmQ>L*G;d z#wxz<0G8RtQ`-mw#dSk7`Qp0Tbh)^$J+n|;w|UD&h13m3&o1xHxiXHXY!q|X>nQu$ zD|W>aNxDSZcV(MGV>EB@mU zK?38eZ1Eu-{I0(sS*?JnODvZalkI$07_Zbtp{cW-jIv&z5bNg?nO)4s!%^Vkq~GMn z*@oyfhsOg(=P-##j)8=Va6L|wdG(p1r$tOxqWc1vozi8!&buTJ^evaUownU3ZA<5% zK5|^x%~A6jf1^UR%8NxAPQb7%i%7G??~%`>2y^m&m~OeUzK3D+#=FR}v3WLp3u;Aj zIxHNznc3Wxt(DS6YDsdU=FLo!*{rPNn?@8ySwYSU!{e!Iiblwuubi!U#_`D&rG^|# zTDx8XP_!+`>XWT7W_d-Uh-YYBb6H*i^}>}D(&Zq~k+q<372)W}dTPHsT!Rnyaz47% z!p#j8p47B()U8y_icM9{LF3JHgEhAxKfJ`=7PtIpPf6d^Lv+#nDR#*9#!U*ftT*}0 zvA_+l9`^^knvB?Qw|z~HV=C==%WZD-YWRyuXyqp_3jqP{Vt*2C;=A`=$*^ z`F#bZp2c=f)FG`%eeBEY+U0l7B))MAbB5LPS~6^dDTWUar@lx~X+9QBMs^Y9fp`<) zi(}h9)wHkLR)3jPI@s z#?ci>@N|HNhKf6P{`{28d3)`?9|JB|YrNm#v6MN4EzHLfJZ2j|CZ_Dwd0zM3GHr+| zU#t`5Rf2`D@#9UeLzye~<>n@2ZZpk(lcdk4?9U?HgSZE*=bkrp|q#x?&-U7g4>L;UGV$PHx8E2v0)9+xY0dNK6DMQ}4}81pcHt zb8`!_#}RLpFJAdHSCCR1QebZshHb16KEkZKgnXEnsTWmAm)FNyb2YDKG{Jsrvi-0Z zS^@tLfWQ54QDxH?vG3>(7iHZ$|3y4@XG`H9aa@3M9@@F+;fqh@v->IiPsEqP|K_*- zF>2DACvj>|!sb!xtrHgMl|lx?uk#5%(dSNTx>~AZ*7&jE)*GlUWw zCI)`O*K_k@vZu7_NXP=f^SsLUw6NxbWuNzxjJ(>Q5AUr7Lo{f}8dO9t-3-vUDIrSA zOou_44u7Vy#&Q;p@GrP9TUx``4`YJKrOGfEp9()qdP24A?*e_w5Gi-&ucG@I0>9%A zEximUZbn#SSn$U&Y32~VO!h=iUBZ2j`}KTJ=R3ex{z>=+_)p;b(Z2AL2}6@6^J)Id zxaFUu|0DkOd{^eWV$|XWx^{o39o#hX$AF5fxS_3MM9~eD~pd1KbOAy zN;K(wrD-e(JX0xSZZS>E_s}$6`1!kO+I~u3MAJSZ^(#x)^Uj0Z!(@R7ZxO;)Y)%T* z5yFNBc1{SE@{cVPq=J&Z!4vKyJ&AP6e2FQOdio4`=HG~|@2Qq&|CNDDrgF#@UhR?1 zH$jp&b9zuwmm7Fnf}k?#0v04i6N;rnQhg-mmI$4qL6+D8?6I4jabgKYumQ zF@}Pn>Im<81tX(@8mDU>22tuR2^)jK@hi|KTs8^8(#INJKUq(wczu|qa6)t~xZTm7 z5ob<|*HfhG(dKcZqm7(6tF`J_b8AqoUDaOB8ZkE4kkj9wTE9v;-R5Xk;v_=CY|R;C z<-pi+Zst>zlBbmRjVzp_`)Xh5E}VHSN7>}+a1HytvH~r4rDHyX)i-cYa`df0wdToK z_>~o?TKBMGE2~iVotx=3NtiNFLTt8_c-pGo_>ch3;}*%f#aMCcR?WuMTR=w*GGAM~ zZjH}AM@H7TEnO=-EV|0d)qRR+OD*6@hGaR@vSm4wl*xLQO1>=){}hQ!sb(g(yg?4)=49P$+4#49vz}=N^B`e>`)XKLC>$J(rmlRlCZ7bjEc;#D#Ib2=& zRvJn^ObsikVP#x{vVd;A8(w0)Tf=&{CbizxY8)l#dbh?({4Q(h8cJN#zm|%;WcRlY zy!PFn1!{(LPve_jV6l>WKU->6%-1+#=;EQ#!p7cM%&$!7v zGv6Ej8vL?`{-7_s$~q`(?-^~&1%Thbmwc)YgCp6v&Oe?ll!7}D*v@SQS-L_`oC z1obOtbA7`ZGfx<4cr?_lpbz*B6vpQ&wZYlTDaXo)p71b)c$27|RQ*xkgkqObR^v8m z4sW9TDwZlA#kU?kouqd42wtIl{xoz#xN<%JveLpENLZR<0{0ZAx06U%I*0>vo-m+% znD$~=pqK$UXDN9*pTcm=J#t!U(41u^`Nhu)xIv84z@^FxfZJB@LbzRDZ8{No;ycUPxwJ%dBOv2NFMY6XjSoXaW@mUQ!Xp| zVVNkXdajA?QIby{e5eo+4)DWi5bo3Y@w@9}P30jBw8JNwI3c<$+9y(QGOW~c2QPsN^E^O2v z&5ssQ8`CpiFYtH5Y-M<0_Nfd6G(L{@@#bnf-c7g2;Vg%Se*zmO$*Au^PfWZjxX^PI zQ5re&a`JSKV1#L*vxONn{*Oh+?QX@DE-@(LUsR;zzJc6)-en&ttMPp*<_!@oxbZza zdccDn_%NWkvuq4AfuGwG6gRIj$X)5&O!pPmS)n=ojam|f*$+{E~3o_x!!F$ zn7J1%X`s^E$XUQ`o+cH;7tLUaKR4I(a8`LD#oxlQC=mqnX)g2Z{vX@( zB8W4JN|Lhin`!8iCCXZup6jTN!_BO?3bc zW=99T9G7x$rfvsd`^%KNG;~wDPqOt1HaD}JQ9Z+7dfj?3{zHkoxG($-_#x++J5u3t zxA1Jj{)6uKwAtn6v4A42t`x9yD#wp{Y-lhS6afW2(=<#Mx`?(&!*j-v^B$U!Nh1fM zW_K|PnUf!3U{|*kGp_`uPXohH?&Pp07|(epYr(ym82Q>3o&w!+7?Cm!_{cQilT3qZ z-a9$SCqdtfCqr|4Z=U>~#ku;5OY#PJ9@?oEX1O|^DO8KIC-DW6d{D@3=7C@yhbZc- z%d_8EyqVHTFG*yUGN?31p2>Lc^I*);*?jv9eH9e^t=KLsY#pMhC7tTC+}p(ju;DJq zZ9UjKxwkPv0SZ;@&XVTIq>eKnAFqS+#UYB_C4vRp{UxTT9H;0GE*u4u-c{I_$(EPW zm_;(r1F`g3gp1%jzqI2WXqZssoG1+xcf0~$zP5R@Yea5((z)_;xy@zoWGuc=R&&@p z*@#cxsA$}vAUA!|Vz3v79H@O5RY+)x$<=RVD#)5FI!7|^=!;mcUZ3HeFgAiBf;~98 z3KmM;iORk*TOVc}aYrUgNoFT9yU-UK2Q!Iu)`C`Okdwh$&`J$*LR$+GR=|{Z;G8UI zl?KU8o+RiEDxwwXMiO+Q1}V$#q_&zHDaS}6<+w)DKpj6uM!xliNFh@qzrp5;QlG$2 z*en(JIg9__?y>ma=t}!?&BLM4D(w?VtL~UklyOq-+}w0cC9ts!P|H;rpqYDU-^T7E zb*VTl+4GwZLC(>Y?1?&->~Cbqbx#TCx#_7O;SH6?VbT_D*HemjJq56v|wj zpi{aBZoF$JLJn`HREiJVoH)mukU5b{4eMGQ)E(AIPH96^SShY65JJHM5J75)2MpX zePtkis#OP@Ey%I#9rXqGV1U^M`PLBllgCKJ2H|#sL1;6w_}t7FSdGfvEu8ogX^HF| zbkb*26MU$7F|s6`;38V@PH=fq#BcufH%36gpAk_5E3#%y(5dn9J`-xJl?|?2M?pK-_}PDUIHC>0pZMr9{O=R z=_39P?+bqrepHz{kN zIA-!WF>j@;wX;^g}7Ey8>kLgV87 z#$yR?e}|m@zSzUWQ z+xXusyVniBF!%ow_cC|x1@47^Q{1bgANP><$JMZgy5y+Ws4~neEjf% z7*gi)rx=fwvP9PR`6bF~qh_#g`8ABXLVu}i_EYNhl6uN-u;pvU_YYa}$8z_7L=Hu~HuF3#1IXOD5m=c0K^D=Vj|K;LXCBLh@2VUOHYd^S z7t%GUv?f24M={Pu4z_E%hx(q zXoTRCYP$@>Ux4^6;Te~$mOfdNnfa%fF61)TzS+pK*zAPBYTG;&abhXqTIms_Qss+t zanQSypaWxIMGpoT+88!-stm5xdk@&^$#kp7)2)unO11RMy)CtN9-G!3_Iy#t<{iSD={3yOMP>}6jll;|eG{9N|4M9luI^q`T}F(0Mz?{0h8Wana%WgP zzAifM!u`)A%P2Qp+m&qe14$|u^s|jGN<~)Sd0OC?G~h1%)l6e#8f)AKWN%|2aOJ&Q z)P3xRh6T-kx6D{ej8;0eOuHKl5P-Vmc2GDxhU~9aAWiTHKauc0b24B!lFNc)|4LO`DZe+ zA)51cW0{kR6PN?xa{${9PsF*=&{wd#%#aJYMN?3-Uc9Iw*O-fXnMSWMW2RA}i%Vj- zWEPT9tW;fDGdgBAK}C-KdH6}nZ|D! zmmyE&F#aV)xLZIxb5ZhC{n7E{bS1&sm__XH7%4(=mTf$R8dDjZnb?DhXihtG$yya7 zDo!S~j)!N^2RhE|!uU4Iq)A^Eu--;H+s8Z4MR?pCStm)XT1zMhS&Td_L$bLUVQH0ze{`~PB;( z#Mc!hT63u~$?-ZO=VVL5H2?&UsCbuKn|e#)Z3sD2S6vgi^edI<6&htR&`?3SF1&_7 zUPSEyp+xvPfNrgczR7qkgij<hY=c`0MJZ( zM1*MA!c>o?QANPCM-CKR!AKiTFe^tht}Z$GL-V45BHKaeWfX&Q8x@l#FY4e?scqv< zrV_8=%*l<)C zAyHn_rR!|+WuuquamweA=sTEa8jvFGli?r*M{g%t*I1>h&zWi1;qIl$xZw8-!EdhW zfpf&cIihfybY%Nq~)+u#VuIjpKhOKkqqq=b4Yfjk27ULl3}bZq0?)k#WV= z6+AnjV^PLgJ{Mk3s1A@ROR@UM!-2rul>*l>IX&QSH-Ajo%pdqWi@ycumgV%T{C$wW z+28QfTYPl0^a?r)u8zLgPaZJ#3kQt->H%ZFeZbfsA29aU2aNq=Z*258{GEr;3D`31 z!R#9avvO5y>IF_l&eajU;|JGSAiP~-n`3wUWIvG4Y|mvfUs3v+2%O6tSqgm>ffRJL zh1tpwGF-0j;3$y!`E4p`oq%ZtzR~olLZigmzrHV|mPiMR?ehxJ1BnUMX6u2HHt+9Z zAGdTtjY4!;e?dzpjb7bbLVJ@d`DVhq(+?BfFFcrl&q%3iQ`#AuE<|6{0#y8_au~4& zROrglw%x|$;;M5hNR1Y^wp&Q_pHigo%g%q~X@Z+X4tM?pL)EN6OUbiW$; zh0m7I`*KXN5=cZqi!M5gM~d_`H>AqqU_qnn_3#xUOn8L+{FRDjRYKgV3+O;r+>Nh* zTNi8#rqxX<>3slJA?L9o8(SW@?E#Ax+XJV0?WVwbra*OI_BsK7Alx86QN2Ef>7n3n z`xlAfiBtksZymw4LuSrH`9XtvlZ!#-8SJZFEF(eSjeZV-(@7h*NGn7`ad^Bs(p(!1 z1tZebk?JUVfb1g5jpVGXI&7dJ9Ucs?qn`E`(FPw5kHray+Ag&n+oRcSv!W1w0W7Du ztyHf&=lgmSxOL|TT=MK+cTS=?H2xTV5Gk`6;@q9D{FCqo{`c|S%eQ|$S`Vq&%%2c_ z`6sfM!}*dl7%w;Nj;Ngd_cmR7xc$Aw5wcH{GLGlVxl)kT6)XA!XuhO{)|5W_+QhNX z{{(W84l}Pjd8x!SINU3jqr&MJ#>&o5pnRoM!k4Ga#MV|m^CLz*3s2xR9?!^`VB41I z&^9#A%noG@o>ologohHSS4L;wMV4%IIAuBmlhLs$_h~8j1u6H7Qtr2O-QB|Vf`7K4 zrdQPr!)qAiexX)0qknQ+RRz-LfLqDs|Vi9@P_+7cM$l&WDF5IL9JD}X(D?k0~M z>ho71m)yWb`={V?3GXVh<@eKVb~Dx_O^vUUEhTiSO&6&DO;Q$G0sNIHODs>IMO2E* z;^03hq|5RfKa?CL=4=VQl7im%9W9Sm;v77v$kUCf+Wp2iB}YZnh0*ve=*{5KfziP@ zMHeZ#OG!P1AIJ_ z+~vM54)m1XME{Pze#Iy=eUiBa)9&l-)obOkKtpd)wXbW_JG|(RTJ>^C#4*D%y%Jsw z;d%YmM7Q39&T@@vQs2(lQ~ZDIoeQ`fS6TNbXYZU_()6TFPf{A%p-s|5a!#4H0g|@1 z0}Ul$fn5j?pz1&iv=Z2xofL{8I$Xqv6$Yq21*?uwuwcO>772MM_-iQ7Fmo+{+C9-^Pugo2> zTI~CjHK80gXj_vjL%`0+udw01_4|1EYVvY>!99N9cKp+qTAtbaJ~Tf&_v9aTv#W`A zIooaorNPwat&}dG;BGd^BNwb08slqP@N4QzwpF1lvt1$DaHR_`jaaz9`fs6NyI6e_ z+_}~6iL*h?Tk$vEqmg0z;=V{+*Tsdsb1tb{Yqpxd!Wyov^ca^W{E1=y5mv^6YyR&(X>^XMl zHmwCV%nmq{>Tak4YBP_UuR=f zjukC27T*M`6~*N3McnHyCf^4ejTG}cXtpCW)3%!nkA>Uwxc%1a`Oi%@0loy2Jkt-e zJ3j8RA2TyHa6a7v!n)&p5IVie{=jL$v~|S%!=Az%`DMG@XIGo8LGjBj>&)EFAePLW zWq(|PKTfkh9)Ul`?2kv{PW)ZEAwvWQ17xVv|)?Q`Prf3+le-KAGJ~Q zh4$CX6{Gyp)afg1P5xEy{QBj>#E@UhKGyWDq&y*yH81G=-Mb&_4{(pvIJB~ZH*%8P?` z@qza>yv9cScE>nU=@{ob$2j+zCsNCo5@^h^VYapU;i@; za88J!3%F)xzv8!Z15PL2fX~ncp4$E9v_0RL*^|MOY&PN>~Z&2=V~V& zT0PB9uy=1Z4t2Y+1mFC51g}-vT$>#mrZpdE|F5vW@gL4l-fRE9(fm9)K2({s)0=VI z!Ss;5<$f>FRqLl%d%EP;Z6kZd!MuEGA=+nYOx^T?$z@gRhy zR$ANKZVk*XeSOhf%}mp**@~&m0(~Q2`he?UOT6dVVd1~ZO*U!0WO}&yblYlUh2d{Q zv$rA*;2SyihVjZx+sp;F$qm?~I(;F^%@f9k++gPHN}etzD|xn9QMn1pVrIDcBG?q= z;y!M>aP9rG`8?ln`jX09A7L9Vw_7y+-a6*_m#*Y5Oc^La%sNlB}Mfoit5`TBHK+ry*U0eisQGD z#`yFoYd^ken}~3ZiTmvU$2Xl{?EgIgZll44-@F>ft5MN?jNd!9f$yamzt`pm^LN#G z-hck5H-_;o-nVKOZ@qiXKT9ofRJsyJrFp9rw4xYbGF{nAUM6|B$4xj*7$4sH_vVD* zz4q=1d&NaDxaKHucyDOyI(~Ziwqj)cF5Bb$$U5JqYh*pi@jyO?8QzQ60AZ&eFq7g# ztb4Dtb(0r9qSE{qTRF_1w^-Ge@KSJsABIE z*Uj&p$L3i)F0*s12bv>Hu}Qz%jVXuS`8bUJ6mDSQSao`Wp&ZXNQx&!f+IxHW6L;)|DS?A~I3FI&BQ%QH>PSB=!S z+PabYCAO^FwTwCLQ+PMi=xlQVq*`BssWbLo;$yT(* z{P3qw9oqws)NSt2UKzfrVzWVZYL$Ni%o3ix*0%HWa{IYq%h%0I`4uti8JpjOYjFwu zbi3(-uKoSei}oJWH(XzOu^SVg_~PjdFPq^s#%^5bIxKpkSmiz}^Mri~ugipm z=!s3|RhnP2YV}mdMh?7$hv|Ug?+qjME9}=Lx7tHbqc}@G|Jg-TvU$IXx5tjPZSAvo z_cms*%IgW%UNPs_ywXg%F8wVVnYpk~j*h7)Dd9m2!tN9@wn>ojGp`3TT*vhvY zUEGUS^!UXKSnHu}HEr*f9UbGlG3~`x80hRf%PzIq&2_&wwD*wJZpOYF&bMRDzXR(Y zYrFfP=7PdXyyTqp1{9A7I0UJ|vHF&!e zeM^K%P3nSdvUd4j=b5-Y{+kUXK-Xiq8R)2{QQ&D?iS zwS9i6-#%@mFZ;A>t(XZI;cU@J`NW>>enq}}yNGN18!k%OSedqIXS)j}??;F5YzzOh z*o3pEzK_|3)`E|My>a{r#7nzgOko7+aNpUu;$WZLwAP$HZ3UpBG!T z51U(5VEWMhVZ5y>QVR|cpCHG-^+%ceZ3Fym|9m+Ahta)?-|euK48=Ua>=%*>AnrCceI&E{uIOC~YWM^0QiLs48wA&oaF;y<} z7fIS{7aLrK<;835Gq3h9uj1G@rsn_TruMbftGeX+Rd!JJ0Y&=T8V%05c*dpc-iKp( z;{0~M`~~~D6gNWyoyFNwZ`%I-3XaiQQn@hV9rfcCrtP;ku2# z#y7rvet&iXYA*{I-u-Y}yEGr3cJKSbV&8a%c7EShS?&`h6vZrM^X@KybsO=XZ~y*_ z)ou5Ota;*{_7Aanj^XOQ3-Qm2rTZ?zzr%a+&t(14=8=6DlxtS!YXV!7S9f?X&G*83 zslDv~hr=JX-R}OX#aq6Q`eFMs_sg(n=SK8PcimSk-SZoE_HD*f+fiEXrTHULFWGI2 zh=y)D_9ohmvKm&Cw)z)~N4dH;zh-F-7AnDH$I{2b>anYSXy2182*jYf(c09Dtn(cD z;gXH#R%|(Ge;j39mwZVcG?n}r40Fa=!MOKw8_#_eZNzR==eHXx`@U#J4OREqE7a|y ze~*DPzJx#bV*TE~v@yW=(){5iyNPXl*_Lx{4%dgMWy!FjCNtPXAJ$Q$J?r}=gH zSJ~G5e$FYy+9y8B#yoSU*{JAe&4AMB_We`bq}u#%>kjH23%)3v_X!m8DbFcn%=Jy% zmrqA%KDEmHb-E?64_a{6?SvN7^ZZopXtBZ^vCRSflco0{zU}u)mGz8=l}Q(cg=5zyO{FtgkSP;+@?1FJzSgYw>tvH z^XHJvck}Z*TdjR=Ht#*({yNX#p(*mmM@1-s7m)?D+r6K!HQFUsQ*&Efj+wZR3)SqAs zhbnkR!rtm=rz2gy=xVt(Jy)IHumJ4Rk&02BJk^fGytJaa`$ofNbIJBqoG$#uR=dFz z*LdJty!VR@p{NHNon3|)-kO*rbtO(x?7PvYkE+1WU#%SZ;qYtCbockI_Pc*%3%q!1 zi5aZt$y-;HgoV*c(#MP4Lx*v`qErS;iwFz@hg z^vMgC4H?y`b>{v}tE+Y1RF0diCodeMu)zfWVRv$v;n!h^2OH+~^<4c;tiILGGv-&H z&DFdYZi}5i%&$I&tM_8-w^?(aU;RK^%|gz_A9*;GP3yN@P0Mb^Hq`x^mi2~xnpU-* zp!6yl%keg_YSF%OH}`S2of9Kt+CLcjH2=YxNFH9i!H-FNs|5&C|H5v8Pcq_ z_N}@3wM&`v^0heM_V)-ngEhVd1LMvYOK-QoXPP7RKd^uEpJKgFx6hnbj|Qt`PW3N#@DWyj5fb!Eo9{= zhn;+1mTk1ASh;%V`qLLET`^+$!Ls=9%qP0m)$vl`f(v{Wm zJmZWp&#Z6$z$!3W-h*m)H~pJcy#7RMH0ztIZ(JZ+srmYcJJ;ujU)1OW=IZ>`bK9c@ zxP8H<3~|##5MGW9*Lnq6Mwl;*piZ(Q?x=GcPQ?7j>=*78kf7ZT_?^zH*+&Ijsd?pd&| zIrM_wO7^c{SHzF<5x&XhAKDJ`C(dxw*C*j5JmzONGat5$Q26ezu=)kIy8Aayj|xjf z^YUVcSJmftSj1w+r$t8J%5tDW*?>)`_pYMzDJk~Z7zs3Hw zWf^h$%nDz;sNZI=XGkh_Jbt=2vUAYswKjv%`DHH~GogN?Wyh%p***&CnF}_=uVTYr zlntM?U_<;WHnjUv7VPo51smd5vEeS+@cIQC;#aYuozyMZ7qj zAH`_%a(fA@y_=th%(ZxS&(3Pf*u!&rQ{OR1Y^XN>9h~q4LAQmS>e*#y+%`X)pSr)q zo_bwYl#G4a<88Lnk@}x=`Ccynn9D!0W&IvoEFZ~Vkcm-S{YgjLN*dqcLyxjcCC z@eNBs)(vC)jv*ZHk}qCS^bhy0;yZ=;!prjc+1$1$;SH9P>rXcOVvw>OgOpYLl!cfT z?|Jx}B@aK6KTkX4HJ1GKLxy-7{oB>b-Y1%a_hDgwKM8+hVSn4ZH>&%vu(2baVfnPV z_}grg$o_?IF%19VlKJ%UclOIBBH{J?gS(abU1){)n2+6Rverhs8?EA}k5svSj%F%`Ts$8GZc5pTkHGavd)?})@s*!(A*f1B*{%`dj{H**D zf*~*V9{QgAmKuB?*d_$MIr9^y6f5>Wy~3lM9Ix=xKDN@Xwyd-wr%$cUuNkh}(`2>* zCjDXcTUP$Ek?C>#un&G(UAZ&d4X}JPUp>mYE;Os8`9zz;|jk`r|6QV8h}8uzQnWz1LA%gmxJE1eE7;SFWMhi-ei5D4YTarlCueT zM*s&e6jt95I@!bk5hxu}at@hp$do?QmuH)qjd3)$$-u#{w$^L7> zkkUTix1o8IVNh3lv{KRkH2=tK3iqA@_uAe1#ccEFC~g(a&xp?4J%8L|W6gKj4|{Xt z2N1_On2u$BCQ_ipnaGx97LIl}b?ZU5{wO~*{EaiG`lUF2>sQf<rM1`_A;^6JL|jc&-uF^ z3&&x8?22#VCWr-1a*VCKOdgZ=U|Li(n~A*HSj$38*o(T@itOEA(_8FGx0QSEwzqxk z!-Bv56u+?GuXp1Y7X0-m_=UyF2|Vw%a-yqJ7rhQKh`#=a{rm5X!Pg_7GDYEZXS|7V zlsiQ&jKTcX1`A`b`*4vo@|I}_g?EV*KPDO3%L32O<+aT+|1>{4VvXRb zb_8{MY;K%s%X*X5V`bD9?@Y*3QT}e&YrU1v&-+1KJIu@{-!-2UQHhZcFQ|0?4$NCi zi+1-LdvG_O&E-$t#JPN2PT}-F&m885OlbW1RDGV{xm&wKYq+`5%*q>JmW}Y5QH2A= z5nc^Cbtpd_JT|jW;}y{6>_Ke6}GM>{@Ttv)MU5`&SvN)Oexd8oSbNH_>jI zsjRk(IKRBvt{UEc38@bu6za#XEY$XO!Y2?AEb` zmOodDk5aL2_t}nfPB5PUUDmwQcAj4%s5F1ZHm|?WwwSS7>-d8g+?F-JUv9)_=gv9j z!ey1obI#!dd3Kx|FS5JpUSzKRXEUa+tXi0tUCI8;t{*RKc?(+7%eLAP@H!*fj-AtR zHmWkcXSjKIyGj2&Y_(cp(sG*%qc+@p>|?rxQ$~vCxrdvtw_21Ii0kItu<93<+fJ~5 zTk%1xxNd$0hSS{Zme(3j-Sz29@w9VMs_YyyeX?`hqh4$rEvO>q(3^))@b_(z$BoUG z72CdQ;kMT8%^zu=11o$E^?QtWUM+dLHUH(C&am5eZKo2QS9HO)QvZ2V?Np5en*8#J-7mpk=UHbk%!@}eXIi(9Y->%(E`8Vr{PhI; zW%u1+{$gszVxT+S;Ck+Gy$&OMmAhMF3h`dNV4Pw@?qH-jZ7VGmm{B<*?i$Ph;Pe>Y zg1*k!**SE61ixTMU_Y49nWHYS9ZdVWhL`Sa`W#h?%w%ZFvdw~u%|LptExJuHxnDoS zw!CP%do{Mz-?X(?Mc>d*%a85iP2GmrfBu`7y6P8NQS}$w%KVdqt8jfJ&-u%}b1#@b z->G^pv-bHP><4c)|4yB0dCxBT+3fsC{aJQ&HY>_2uiS?y{*fVfBEA8h|x-)#4rQxpNaoI zj&o`f?%lL%n4gESd&Uqim5Zw*%kP~mCMv$%eNkxDMmrOoZ$l%VfByV+p$fn0@&mM? z{Phb%t2W}Dp7h$|t>Ki1I(LnE!M2RA=q#DXzsh;Gqs5y}R_$6RirrWXUIQ zLLKyz`3{~qWGzWo=J!opImmwLipSX@cI|ET({>isd^Jk>@tfr5jaOTl|0S`}b1YTH zjolo)vI(u4$4&Qfj__!g=7-3(Z~f|jgJ1RHB^&dqbY1wj7KdbFFJqZ(PQS!jSD93c zcgIw@fsIS^4f5wZy2`cvp5AqYYaX)npE3OIa>nUZ##-kV4s=DQ4{v#+ZDn)r=#EYw zvFi$!5yz_+KW*vE>QT$yh&+2FtBTiJ*t{ddZiIc7ie}2L44W*SzN(M$rkSFM$_3{Y z7C&xBRxxymmpmhXl*`^}+tn-D6+93f8Xa3Y6`J?DuT^iHf4>rL8M({;x9bIY+(& z?j@SON^`{crsX!qMvmac1pAw5;Tx6~?9&!yTCjUM>D*PkZEZeBoavo;QSL^Z%h+r* z{~Kyv`Ac47-!}lGc@6&jCjPWLV0q`;(tU^Vv-6F3i~;e9Ta3!=DTC&XW`U2{?#91U zA2-k04e(dmKU2S83rmPNmwY`+S~Ab2`D?aq*Sl_PRCK+a{mq=U`ZsNeGqm1bwv5*t z<<8rEkDYkDd1Jl_b$cZTze#K}>kles*6qGan^_+jwT5o^V7#)L8y55FpK{Nqk68Wk z{P_fL=B4>RPA8$I7t|3~vfUZ08=!JX#M3cn|1{=3`8 z(AF5=Vva5DGMd6Cw0Vlsv`ER%aJaQS0?@N_yS8L|AF|JcKGv*eMl7S@lfv$bd@QdB z?pc3UQIDait8DYUGL>U5^yA%yt{uw17ny&0a`!*k5lwv#i$|j-d3-<9${Vudwy#Lk z-)h?U@R=7>hu2&@wAx;9_GVi#ZIeg%xA;2qS=Mp>wWSEzyt;b%y^#LKq?ymA| zd4gtOv9X`u8A7WhFITZrVLb-)?dzrkM_ZGYxZlh%&NW~kGe(c70SGbjP z;pAxZC01Aa_8ZP`J8hyu<=1e8qKr0w3u~+S_t|l>Kib5d$jx`!YPP4Lsb^X(E2}TZ zXr;P3L~k(K{0oztA1$}Rk>qc2L|0O#O3o&rmnk&l&X>D%$6q{Q3s_kWjMRkAi z9?Izt!ijD%15y6S{brZa@{W27u4`6T^Gnv1)#0y}_51H*sGmK{&R($D*?3|7miDdR z(ysayRVuzxxM9mxR;9v8r|#=GvagdcD?%rADzQ2zVpAZ)tbk<_`eB%b7QaUMA;*<= znmS^kxgoEFlfr0aH3{4PM)Q(7>}&-H%oi})U4YHZJP7kY_65457GZa>yS}mm_Twhb7{(Ir%~9c%#)(6FIpWFV2QS~_d-ldR*<_4eAs^p^L4uwB zVXq_kj7V|%_xXG63Wq)XVz>8Cn+xqPdwu%+`PlkLdMm9Mi{*-Ut^K>yVtJ70owg?e zP~>Pa3Bw@j9$VQPztBk!jpRM#Q--FlunO4C;LpX{%G9&%A7qz*ozE`(!&ZE2eg*%) zH_xtpx3xC=Z^~XuF^+rr?RLKNt<~+e8^gxepX+&9Xp8g_ScJQ;L!|C16pt&h$VBn` zDnUnSi%kgSPAt4fEG#F&%7a);h!SJvAuIw>60AIeMJP&&mCGM#i%67ND63pb24x+T zSZrEQ0w{?nZ77#PxlNP_tlWb|CQ68vcVOW?a-k0rto$w(p(q(vuDj9}u_zu^?!@9Q zQDUt8CoDEyS(bx4B8~o|7mvO&F6n!E}Ah(h}JLU~*-{pY#q$C9f(_=L{PMDaU{wu_R!wu=xpq_0W@CBwoOZ^c-77z=F| zq<=h_pY$72PF^^CuPui311O2uv{5bM)D}bf4cKI2!_67{&dfgt8)xQc>^n364ls6Q z{`g~19GU+mZu;tB5672cq2BU4ibhdMKh-0L4e8H{5<$tZXo(W%D@|#OLi%%%)sHDw zGV^P8orOX)Yb91#xDVe?i_(J4G?dFkX+vRF*e(i-VCGj|C4J?Upop(yv7{?nIWEJ> zwIDey3S++p-0?&0|8%##rN%>2GEj!}dDqdw9P#fB9o z{YaFOzP9EJK4$(*Y)HTVsE?W78T;pfv9=}Be>xOxOQio9 zD2~|wo%@#lg!m+a9|<53CGOBy#t9VCuZc|xh4dSul=PJ`3uo*nVng}?=xcs&qa4Qm zqK*2#iE^Byz6XM&bJTYY6z8a~1;sJy`=dpn&n!M*zfU)N;^7E>q?>(FVkmU8wu=Oc z2XAS+NTD$KMzS~3=XssBiwrho9E%OB#gNr@!D?-DwF?&hQYe}1jXSyviuP9tRxSZA zXY8L3#Tok%6ld&z5sD-B|6&08@8D5LpWwq=AA#be&;HBPBZtiq*i48LK{*|DRmL%t zbD@M{L;9CMsfm)ph7r*ah4g;`Hp)1I&CO5}u_66mgW`()_%%>cu>t+~eNYaG0{Zdy zpe&cM0_bO3wwdCJ{rE*tT(O_t0mT*j?H@t;ncjZ?lLOGFGoAfDo#~{{KHN#4&YTdR zMDRW1I1nXF^-x^&J&x_1ng4d!xaj9m zqa#wr{sYi1T=c!iLvhjfUJb=XKN|ymN9O<9qR^+Cm2m)GR3^laAr$r&szgxOVgj*= zp&VtlClVVLz8t<+#-zUrik_)tD2IK5GA4bF`cf&U4I8#4C;dGrr!6+j{BMS`$`SkC zzd?ya$*}T4V0^169Q8dF%Ks6Cqdv~{J*qeMf3PU@`}g~Fv!_Q6ZymtGN#8lLC;d6t zgtE7UJAz|sqLBVtC=F3qE$7Id^f`h{#HNLEoV`2g??gFH`um|cWB+a_&e$IVNoVXo z42m=Mn^0V_@6ADR#Qp<+dC}(iotd8iob=gZREgkW#=bAUkD<`bfheSZ1hTdZ7S7m@ z#D?_OxY|XA9XZwIrHuWCC@E|>Qqa$eQg({KL@!cHYrw;enXU5C`1#B!oo>E5v2v208}); zx1o@}wip)CfQ_@?Cw%-v?0W zX7zmteb2?BE``){35x=9$ zrkLly(M>; z@=C;J779mj+R8F09NB9tV}(ibfb6Xeo9j`xgQBonw?fgjMEW0qGA)crpEF+CE=d1M z;CzSJfPVZkC|?$Z^q1g#|GHlKFB_EpNyz-p7DM`Ub0{7rea61Fm=shv=5L4%>2u7l zEhdAFv&E3Uv&H1q0?Aa$A$^YdTcVIY$NZW}NS~uVXXfXa-+9KzG5`Br^f~6gte5`l z2BqIW_B}bi0Dh#KCqxOM(3!p{5tQ7SqQp=?*jpmyWU$%p zBFPHxgrZr26=v*fR$#SW4;$@aNdJRSoTEO*{w^WO*uNYRe!D2l{EYpUD2V;|N3f~& z(tqcm^zYNy??380p4eXn-)p-d{dG{ZU66kN*uM-msk9~1-vgy33h8sM&l&ri>vP6F z=lX6D#-z`=K47;+$nZG8C8T-uq zPWsIJe=auc_nG-G>81b4`*zfC|LM8oIi49|)^zRm>q)e5k;SdZo_6LlvMUc`nN!7 zi9-7ChvLlqh znaaz@kyB~A=u=T%A#9vkA%c=&p(JChWS^iUNx%Q7kG+LbA^rYiejfldE08|hpOS2& zZvDsn4eU)BlYaj({~T@CI03HY%g3JYHYB^D)vO@I3R&-j@6Q`s8}e`#O(e44}A?|-W={j*&Wj@b8j zKfiO#&-?ke_Qw9>2B1$5J7b?&Tp0)OBl}im970)#<5MMqvJFZgevF~)fD($5Kw%b- zL`k7=%oU45`nO_l8sQmi?tr2Z-hy&B6lcHxekik24(WdvN?R1h{<(mr`8~nryP;e! z`8|X3W+=Cb!pwgN%7;Zk=J%e8%1eCe!PFoj{&+l!WsLc zfac8no1r)}{|liEl=*-4r;mOpZHckJ9Db~c!bZs)(-4J?GJuU{1;#$l_!6;U>~nOf zS)q;Ayc2s%#fGuZ?9&p3v40f$&bdC)zeOUPnVJn>E6N zjxwP~4uvBEUz7++hD9JsjFkjX6D5H%head`tHn`YEXpi4CmLtwXTPtES@<*QWFo8{uFE)qLBV(D6uG{e>Idu z6w%} zlzuF8IzFhd4_76C!XQhZmV&nvu6`h0VXlRmHTI_ZBF?ZQF-uNRNL zX5^pt*iR%{Pk!uQD-q7jf0Wq&pxBg|e_Ll?s5kZ2L{m=NA-y2c`R*Sv6_6h9w*}LnApoMa_p|{XJ zf&G3BN-E{B-+vX9mMHA^-wnli#y5;y?VRbo2#Ry2_xVtqGrix0;<(25aMGW~-kkIa%}M`i*f{COP@MGdg5splVVslx zroQyA?@RxSedxdB1k)z~PpE`|c$6`}lm1ageNOsp7f$+Y7f$-j3W?O3jgsxcNuT*b z&))K;2gZkFZ)`@K>2;p(bFOcP^x+wH)c;8?&h$E;;O0!P<9z=uCzw7NJL&h&{EHj= z9P>Nr`*5a{egI|BV*i!cTgyfNT~M5{KZIy?#{Nv-*ne)n*pI)`C-(nt0Qw~9Jl~&1 zFe~E#E2&KAkwfWEpAjC24Kx273`0>8tYm~oqA>CFKjR~PWt?Ge&IoTo*#=%3;cY0) z{IgO6#{SD;(-wuX&&2$XzKtO1yswX$-*sPK{0-PRuJ3>4e)^6v|Nk`l z9P>NqFMIj1kNJ-h`~63K_kHX)B=VS&IH%)`efHsr*f91P;i)K${T;5Xz}V-Q-x>R} zuyM}yRS~Vu^ZfwI>m^?>RqTS|Jl|*Lzq0py|Kb0O=^rKYJLxm?JL$7sXrFK_ncqpD zIGyyF`JMEc`JME?j&|Xof8zl3*^N5;eJak_r{YPhgy<)oh{5Bs)@2ug;9MtF>s&Y1wl z{v6~`qA0~mW`#(USt!mc04#h8DK-|H7HqaaNknNwVK6&0{~p+6V#Cef2E~(TEo0xA z`Ooj0`T5>qSLTmD-zW1gd&Pife4ZSIk0Ym>CqxOL(9MA;Ar#K`s1iXT~Ds6@Jvb%W5r$qEuKdGEQZ08TQ7^KPyTL3Nycs;M!1_`CDSc%+J}LQDIE_yvn2b zy`-N(_b9Wdc!1e=}@qqNK3d4y7Rq>FK9vDuKZ7$p z@i1e*4aFBF#>zP?0#QhxSwY)Hip@E;i^OJ@MIiDtD`ZeEgA$7k=`$;6yI_Uck7!n4 z=3m?~Kkx2vp6@r1`CX$v@7quu=lgFQfIgk6jD2{EiYML*pyX~AC4|Dv?~4*ap_@Zd zVkm7aB2f~ofxZM5DYi*l>JtrUBCdta5mA`= z`L51&65$CpXTN{5D2)9PkbIjc9QCnXd`=XM`uMI+?-{+LzP}uRJ{{x9QTXr{58oFh z=upvU4WV$99*RxW@qHvp428Z|#-z`&xW;4(8~Q$#y^;P6aI-SbV8c)1IukA~JMIZX#9)LbW$=UBy(LRCnoh>Hpw3rELOA!>d3tyBN z$|$@Qh>}2A4y7gvtHpNF5QWtWU=xdyVQ*{~+FP`soYYaD^NepX$NWoPdF-=2bfz-) z;S(yJ_%VP&H!I^1iZfqCP@GvIhC=$vIDta?%9zz6eI?0ik$xhz&agMq*L=}}Li)2} z(}uz`KFt?QR=1#)&4~>&KhOAl$<+xqXTPtr`Rw=kWftfA`ENq(e?s=ge*e2rcJyZc za|WelJ`9_OF&K&dkq#f4?Xg^Lu=A%b$tD%+EKs zJhV6S|H{drKcPns#_ac1Dd`7d6T^o6eke);h5f!VPNA^hkHw~>uZ&CjiP)5}pNi5( zIn4Zbic)6&wkRe2Rl=*Jf2}Ab{aZyT>ARld^hn?FB-dL`27OPD9Nsz#eP3*jg?>$J zO8N~^O8T)V$3p*PW&RUB)BB;HKKhy!%Gh6A`kEEW*gskHPxz?sYbTgK!_OJ}yf&ap zgsi|BB4_M#MBt=92g6X}n1!>qh(uxRGc9XYVC+x1W&%i`b4Q8nt&PGjgN?Qe7I8C_ zOl+9>@8HRuWbrcdJMZo|4_&--o}bU}-z9rvzyBH7IOh5P^Cyr#0XXRsfRp~=zVtnK z*h!!5!byJ(Y+~WX!a0g?(w~NnlYRunNuRUBp71&fedqU@*za!xV<-K;?L&X%uO9ns zk26|*xIGUg@m2uEIerhJFkqBq1ckh6vbPwDGg=cUK0K_sI)$>uMTHgK1|^kpGT3mY zcUF`ZlwB^8Z76%7w8VxLPNC?1+aXqd0*jz8eZ6lx!{$3ca#n0e|20s)DGFo%6wLHK zuXoJ<;6dp-=lbYOPmVl*Pv}fvln@G?sY(RJ!$F2(6GLINYP(3F_^@e+O$sG|qV0ke zX0A@eCWFlm*rcMc!V#2NQQEL^whPjK6Ksx%O^B5r!J_{)zCA)R!{(0zW7qro;{8xQ zBQ~Tz3i^)s^<8l?=uha8!&`KwDiIV92N{S>42ATyU6k}Au}NV=`mrb_eQg&RY)D_T zcuD_G*;^Ynq_6Fwq~8{slD_*XPCU(Vy^t*F-zExTKd0|}OEc*|rZ@JVIVgSSOfQ|O zSs{Q==uA(K915Mexb$mMPD#HZ3M>pd||F-;TX47hVZg_P?Y1ER5}L5gX9=o`8k(+Z^{maeR;OZw8=GUQYT{ob>5t zCw;nEl?Z-3h=niSim{SzcG5or*-3vDoEgd9SS_B_H$-8zcvkPEzZrW=#D>)(PHh*Y ze=}^HnV+*g{WJe|VVq${>p)VU^C10aK)G9N82cZE;`kolX9u945cjFl}clyQQUb66-{_&w!}p}F9*&PL3qai16sSKF;4`7!Q;`<0I$=DYqhSGn`PsZB*SS@C8ZGWU6 zz?s_qGL*9&islQ_zZ#0R%rjD0%O(<6ts=uB-F5fl#*;fqZSrGM=Eu&Ien3Y!2*Bnm6co;ntV z73N%@whLA`!rq**&)z+iy^%g=dRwB9{ztI4{-eIDU74Tf`_890e;t|sfY>1O$77i3 zeRyx?ziv_J)6Gu$bhD>N4k|~9eP3*jLZ7kkq|exoWN)k%+eJeZ(mw&2|DcpZ`pou);@)eP`xp z?CZF*jQ##Iy*nh1Go%W}zH_FRvG1Dc4H^4C(;NGLv?%mb0C3W$o1OHJJNBLQj}rS% z`i%Wp7_+$^rQdgE{u40jbJAz*J7;@dh|I4~`Ebn7`}!Q;oG2M=7?@Rw zycU$JVWZK?3P(`%dL669Xa988mPPy(Y;@K(!Aj2ceNbwUK?%XQ(iO+^XM8b1Umyxr z#y`U1on18lzv-C`Z#jB*^{FPppdch3ZXFb`(hJ8p_`RT4COEuHL*#s zl8hr!SgkeieJsi>Y8lb!$*`CZZ^c-72n%171S?5j z+eHe6Ss@e~R*PtAqOfou^c$kIus71zcF~5yGYHKjEP^uuv$8kRPhDA|jQv1JX4srx zXV9!b`cDM?+r@^l&w2i}y|MqOLFp?mA4g6%dvbh1N0|^MghKjCGJ=v}5r|EUl?0$9 z6DV_7L}HU-CF#ea%t9d=<;B8DU*njCPXmB6^Ru^5#w=o&i!tf*+Z_Ef|MfzW^m&!% zHc?2Q-{$y;D5TGCb3C?}{tE}CpZ4wdGf@I~m;kiJgiwx>`L)HwusKTXYrA0K%=|SM zeP(`bF&WBn&JL44V_#cL8#ct5NI7NfXQFWPJJ2qUh*HM>WkQnl&qaj4R20(ZsP9fu zNS~v=sb2cOGbnv!?BmGkW@SwJ2OulS5G&ccs}ezJV-bi?VyvvfTgo_rvI>flOrfw3 zZ^+(ep*XX624y?;mWU1M?}Ut+8ikaR=_R{~86HMP3;UPTiR3a#B7ruBahC(-MyC8k```Rv2*!(1q`WXA3 z@G9wtqLBW1VC)?A^?jBnJ_H-bsPAtErJqWE_u*l>S+hdWQ8X)rQ2Nu)AWyjHGyJq& zkp3KOob;J5YO=Rk7J}em|4FG4|Q-519Gc?>jR; z`+aBTZ-M^#y|Mp|0qB$0NuWGO=wLH|bs&}W2e9Q%kOD#|P9D89CPC~QlCC=nE9{!o+{3h76p zBv6?7V^LTw(pM_8uvrBvw~0*#WgQgl!`UcF|A5%EVZ$@NOccgG=__M47S8oeNq#Rg zzcS8HEzb2RV~+ZsiU@DZ-Z<*}Cn!;G?4PrLz}cR-Z{}B}q_6oRgtwfTB!WWvnUoVl zA^o-}C4EnPpTdUpwPlh%$Naw7WUwK9ZJ8zgP;A<;AllqiJ|nTKL^=Ke-r_u3h5J# zwhI>S!$uX-51{zMtBt~WzOM?4V80)U4e7JrPedu{w?!d+&i3dW0qI|Z2-mAgpzpEY z&wAU$Q>em|AHmGoytX`>uwe(e)TpP7G7Y)GH6?{`tb^}3RNLln~InBV!vHjeo}AvTPC zKEMB@-pv1&6HK3OR>mQ`bpQ)hBCMn{o%H7*N8-l>E1BP&^f|V3(kEkQzt1>!_WRor z`^uOV-T@_(x{>~VD9(QWZYb-7S4sb7QAnTH_wNvevEM+Le@+y}KHt*pcu()&Eeib< z06aPJ04u3Xh!R3!zVJnfpk!EtqQqF)!lEV$>CZuN(jSF~o%D$&k-f2SA2z8dEPNV@ zwu?3jXN%Ex!6KOX56j*d`^@}ng;z;`mnfvqGrrqJA$^|leM}V6=S=T4y|MqLpH%vR zcNCa}@fw!$$k?lD>1EpZD`S=lS_0 zmusFs#{K->&-T(^^6LYR`JMef-R#Mc2k7nE5roGxh^O z)BIl2&*VrM`wiF}5v9!h1NQqI^E=+eO9!Q|XJS6QMK^0!VC*~3 z213}(V&RETBCMpFeNkd4hp`AmNwAXnJrsr2S_R)nqOfo>Zitex2-w7;uv&zch|-45 z)v(dFMEWm>l8Fs>^e!k>;gw(|@9WzpN(N;bSzPZ0WWWC$D6S{C<1a($zT>Yr-+zXi zzB2Z3d~~KKN8xuAUzDJuD6bF-+eIig5tIyzNR${W2_P0Ffx>p7R8lA&T$YN>EEHx1 zjc^ve1~!@4u<&(ITB5YEH;xAni9-4jY?cd2(!UkTWulby^}cP==R3RfzHQRq2FCv- zd*i6@Z=vk%&HOKO(@$kS&BO7LmnuG#6bonUQ<)H-gq^*q5D>OvOP!1XEc#!ltwoAmO4V%kQjx+Z6Kxv5$>2s!cRCty2uNH;$ zIoG#e6w>EhpX=QnF=u)m@9y~h0qE12niYH;IhFqOJw0;Ruq~+)LCLW2#U{o|(ho!_ z>4&1QT8!{Wl%vr1!7COU(hs0G>2uWQq~Cx|CVM0O6v}{^|7^suGxI+QiYxPbAA{n^ z{O=i*z9&cFg9_a|Axh9ulvfCa^h2?UpfL6$QDP`Qw5Hg60*X>0edc#( z=AVMi0V#*{$@ristQK(|5`~4|jJ-KCKdpp+?+eKJ&XTK8dmU zVJwt!f|WnX=lib&v`mhN^m)GT39piVC<^J%fN?Ae>GK=hcZmY}@mFBuxUX;hp!Ah- zNnc5lKHJ5F9yxfiT`1!SO6Fo5V|8&NDuZRu=Aqm-g;0 zRtt*u?rkXS6K16x#(o1fheaX%6v`UmRnpfxHAtUhe&>^19P{5Jdt>Z#%xx0? zD`Ou=PB$y#prZtOFZfNW1sZD+n4_C-ppUWZ|R5Ptq6W304IF{ zSTy=XGa!AA2>R1MB*()dIOcbr@$o88fBMcdK92dFXM7yUiyD9DE$HZ z{S-JgUxZl6@S6~Ck$xMpFG`G+b65nTBv{D^uZfaES%YZR7Q@0hqZf-!1{==k?H8p5 zg(0h%gcZIT<)mUm`kd!)iNYPt!bY<~f|VTg)g+D?`|S6%T`=}uTP#o{= z`O`t^D@h+dp_`Rg0L7W#Lns6giccaabaNz145f`lEJ}iv9$c1)l0qSXR1_A@G5@S6 z8EhEgnJBCl$NU=MtQN=oZLwkDG3usg^`y@+zh28J>FX0aq|Y(GKCwgk5f~43MR@0Z zeH`<@tV=1b^8DSP^p9uM=ZjB5c=#xzzEEsp*s$M^L?Qh-$gwCXRx&GS9Fso#eU0M` zHa>W1pFsKnlmk*u8#e6sGf_yt0h=SDkbVkfokVy^|7KB0pQAqK6<+rHpA#Fze$348 zxWfDSpFsKt;miT)AAyaN{&IL&v%*p6vrll+XP@At&#d62zo#$#U;P^=cD9EAJUw#o zA^>d{5fsw*#U_SAHwU7W^lPH9aMF)NDe1?eWGIL9_lr`}zfBZYi}X`bO8PBPO8Wgr zeOC*~lD>1)NBXW&U;N2FqrQip4EoAAgohdXsze?7fp{y1!hSy#rKGQnQ`nGxLu^X= z$~c1!=_g`S(pSc9*pR+vg_8au*;`3}l`t-2|5{N>`Z^vgWB-FLDkG_%&;4No_hfoMWvqA)gZdS%I6uLPSKPFH-_)!_BPzWFv8y3D6Hp)1I z4O@&d&Z`9*&F`!hTgtz^)0<+(a!ih@ks!m+@JYz zG2R@}7VrE-Wc~{mkN*9!-#Z@s36K372c;kPy{|77rHuVdln`0r02Zo5SjiOI7MmE# zVJtMqBv@HRd`(DvrBGHu@kN=1!m*ty8I)<*gkr;LF=T6^v|+OyHmZ<5ukq>Vk~_K! zHV0&H<)}~lgbbVWS)M>fiX8J_k5S(ZqF~JLeF=-NcPYhHp5Hhb^tD}t@D>3KNS|(Y z()ZvPCw&4?#w?s;{y=zGpz9~Zm4U1G1#y;QH=(wl%D+ACcFDHFEQyB;Fqf-f?(9LQS zL7_91aSVlwL-iIEGFByp!u%eI4XeeuK2=5)2v49ei-%&9LSY<7qRc|!*iIungF-a1*s#J^gJdE~8#Ym2`kd*_ z#HOV039piVC<^Is0m)bt(%%i`E>S=~<~_ZRJG#eybHMZcxG()wlmI?)=8F&t0ccx_ zps;t>wiH8QyYR%12^0^$pAaR5!gk?{!onAK)W@t4NjZ%D*wtc4|1K!nCzSMcL_qov z24m-_?^#fsqrOi=ag6#NJ}7Qd(nZqI!CBaH& z1@(Ojg}r+$HmoqSg68)OHtgLsi?^U`1Fux})`r5YFe?h_GxN7aA^mq_Zv$TA3qbN# ziEzgL^Pv16Q4sqcpWt>}&0E3YtY4vGz{Mf!(CX<=`S@HtW1PAw)lXy)eYvRWg3h6gQVYQqi0v1mCiP*64z!k@Bl*8E9zNe(G{Rrvb zfxYS2uB5+1NRod4*&fn&J-?sd*XQ^W>(&A2)0rBrK8~D1~e6Q^yLlM(ZVzD88M!2>MR?9gPK>9Dm-ZI%6>E8uK z#|kBV=NaGeJj441WCh0=-_r)AKOslq!&_vmRDzD8R6;0>{hI78f^rB8^?i($hq2Hc zO8U(Fsq8Jq<~*;P6@~PtTvRgHFpgVdL;7TVSd=zwIO;nh3hD1hIlja(>2u7l5nj^& zJ+WczUj&k$5QU?@7eG0st9PFt^~K+Wa!Z#|jQU4YXyJ z^k-#nq<=ST=0qv!Zx+U+e=$fpXL?CL6&v>Z{|cLPdg;G$Q2NT)$C1;`N;2puo*Z8Y zg)L@6ln6?OMIcIym24NGD5QS`a!r&JE7>j@qLBV7_+Ck}a34w{Hl!aw(eZm5<*-k1 z_WKRkIQ#t+%7pML>1$RX{c}Lld6kDxayk2b&h?&rNnhJV2ycGk9r!Z^MQ-6R82|-wc}rqHuGL`E{&N z(%&MCNuSsFbUv5#d5uqJh(O=tHNJJd^uIGGeT{G*M@~0u90wgm8HZ39`>I4xNM9Mp zP)I)zKPFI)LO&9llD;y|us70=#ipdMjN7nb=GQ)f^!I>%CVL}&p6}~feMx_ti$2fy zop*KeNiNr2o%tD`*nc>JdA}%({hOdTpXT7VIUG-OTs$cK z*wybdj#E(r_?~Xod=Wx9fQ2d%R??ZCcq@i7hlMH$RML;80^(RNYNUn7i3pJRS)7o^WI|Et7?nV)0+k>1RI z%>eZ2Ol9oDCsdSV0EO+ME$t$NLI6rKfh#zApjD25}1PWtcNwQk2;9(`n!hI-8 zGQ-{iC`yvmVt#k_`)n79)Q$9cSEsYz=WNe_{r)CI_#Rt+3$Y|Hs|%y-#Y+( zCrKaPqM{@ND0Jq8_#}jK5DO(4VI>&{ViQAQ?_Lvy^f|Uuk|}IRKNcI(p8{hgnZbs$ zJ(}N1pPBzo*;^YnJFvG|QOejqEDB?vnO`HkjQtygF=L;zJtLHLdHrmgu>okl?VzME6ErN88^g_2^9A3N-~8q4Jt~Khe7~K zGJ{PGHX5xhC=rx{QiC>>Jy2Srkp68@w0CFWABLhM`;xvsrBC{g1!L{q8T-Em<+~30 z;R<|%drxodzjXlmbY?7B+{ckq(LRCnsc4@N!iM=ml?Y0PMO(^=v63xD+aKxAK~^Qj z%29aO7b>$*h(_BV3-@88N((jtl$z|V4Tbqa+boN?88(U7kUq!!nJ6WFod+WQbzrPl z07#$T!ts`lR;nGMF?;8r_X%hq)#`iLi)@XPWsFjPWo$H?Sk~#CphVE zhD|8ESS{kzc2UyTyu{7#z}_^+l=L-UkUr1%bq=_suXDgLGC%3hb+wCPp8wN>(vRfG zeUMDCh(!rHiss!A3hAd}6G0*UOq3W(8;h1GCH*;3QfyB8dQLqHh4g#k3kvD`UEad= zk`@%wpB9DHB2LZXCH-AuQ_|OKIVJsXiA_oW?5;RQ-Aej9L?M07_I$icDd>NDQ2H8q zK72wqd*b_&{)8wYY)Ic1C4!P+5sDIHB>`xBB~a$DXoyXUmCXFHD6>$ACJ}{&a}=R% zmW6W^p<{(M_QrOham*riA;J$!Ii#OLSu2c7`p!`w=lO3J8`9^yJ6fWEe*Wf`C-l-^ zmK^(R51pxueH=LzB^f|DfJLB3j+Ge}$~eMGx;YY?7|LNRlyQQUjBw4atd^7HENpnb zpGrBb7D>*E!fJ8MpNZ1O-fAG(5{2|R+oRcs^bf!$5MCvHozY|LbGGL$u_65z0rbC! z!r1>Vl zVp7=jkNs8fy|$PPHf$G()PVE@*l3Gs!-g{fniWXD0h_k$t&IIu!mFgO_j{7Q50bZv z4e2xXKPU?6e;hX3dg(uUQ2NT)$C1;`O0uNy>yg8T^p$Z0CBvd7HZfL`zA`5LImoft zuv(15EA^qE7GbKt%U&rsH&$~L` zAvUDXE4*J61@t}Ae^xL3pBt3EC&%aG$mwQf96)h04xwaNgtE5?E9vG)lo-lkEE=LD zSXqT1HI7p#N6GxknALLj;j9)jzcOy4oEmD-lDd(8|IB|kZ2D*ZR|-ke=N;X8Er;}* z0DV|&82fyZ>$$!3Uoj~C|K+jIQD6Vq&s_BT$A0?bWB;W>lJq(1yHga>XXbat{wL8c zp4m(PcNUMnCr8fMXZTHs5+YWZ6?{=5C>a)kC^1$t{A!{w_U9mLzDTjMf4|Sb)O^9h zeNfRpfrXR4=8HDUVdkHey0Hk-KP*a!B1r#u#{ABiUeb5X^m=?>pJS%?Lxa*+#y*am zZdQ^36fzF=$f3+)p-P06baO*&Vkm7aVo?&T^jy4HEdo$pES!CU^2)F`GCnBfuv#43 z9TJ7rVxORlS$K@P>DZ3+?}V~V;yA%dKEJPHy9^57-k{HGG4>-wc=t0Kox3{kH6?yU zZ|r}1Q2L9T`L)GF@I3)&yNIE1)aQ(Sj`_94q_AP^?-yRA&oO@@3Jd3$KNW@a0|3w# z(?&UL7uqL~egihzE=WIx(m(dEmv%w=%>1{BLi#&E|0ANrSjkbJ<9&VK8Gt_H*b|@l zIC45uNd{03U=fH-h?NJiP{t8f9>$_3HZfLu@K!^V1Pa}(j8iBisac#ACP`(S!G>s* zaSO^0)F6`@w4p>$4vNBRB~YqDg+=gPo&CrB&VK)L;B@x;d{^haQV!|=7i@m6H}==R z&Nz$gnw|;MRF##{RRw_;wflFF<)f zFa3v}VEP2$$?=8oma|<%P%^nH+Y(&v+0des22pWoNFwwL}j1JGv{k0mSka66S$lmH4z zY97geWPLDR|fyWfsb2DB6}XC^aad*tDQTP_!+z zp^$MTHf&(G!A9Ffh?O6~A`_c3_9tBQd3`?=g|WXM?LudWK;Qco7LF^ty9c08XDUe_ zM@~g~1s%nc;|rnmkA1caB^kq}jfF3JBmE;#LQz;P0#IJ0-#_!S#WZAZq|eMBi^6Jc z14+#aEc|9DvtmQ~%>0K%Dd|rOW5)hQkks)Y=|2;Sjt3e0Uxc!{H}-#P0Q%&WN=*82 zJKd~GNne!^Hr!h#dyAlCShPinv629^EhSJ6W1%f3#Y*N2Rc4_q2Ni8gES&8k5GpKu z8aAr5u{UNCZGWVH18f?yH`0F-lvI?G{+uYJ{{WEG^90g=0+gDx7}Ed0P`YOViYvVD zJsI?saR_hSPv7(IYx*A_fIdS>BhLp(DihLDgN~x{RnpfeieQsrp-~iLCBrY0auO(v zeT}aa3S(b0@+=g_zMc!RaK?Tr<*;z}3A3WKu{XxPj_nxx*CWE`#D=lY5rHq!TE@PP z?HK!O5XU;QXY6xC(2~6&_Pq~b;kds4ok8hqM)q;!bh9VN7eHZzPlyusRU#-E7J=Br zSjjQJwhPjqgIp7v6e~wvd3P2H(ZpiI!hP6ii)q0ofTAs?4TWQVZ80oj7izEhNv{t;0~-v{G$(k@7! z*Z8g#1@vQH<2%%)6tVw|0q7sVK`Ip=E9o-zFzM4}>fsPJB&kXS#dCQ$hC-5&_#}bi z!=@oh3WdDX_p?y8!6p%#49ZR@sVF=YX7O23+OQ#GRY*U@-ZYDcSlPm2O&1kJcu7AJ zCBx=V1bw~w2m0}EK+&szpzkfi(;ScLjs52hK%dTxB_@3wIpbKB01Dl#N(hB*NtFl+ z+eIqn#83`np-O_4?Apcpar6k zK4*I(QA+xn6-b}+{B5ye>~o%9uOyQ`=lQ$8;8?`|uej-}hdmr0ovDi7Q8Mvx0EO*B zJsd(I097I=bhG*~hC=$j9C-qT^wq;D6z2C(Y*;wy*F?!+L;4L-SS{xFSd=zwwuAA0 zQAnRpan6cD`gg%bvqDKfaK%2K;?#3N(&tm0dM*h1G3WXm^Zc(Hl)m!vapZLKgdAVc zQIuB*h3z5`n+QsVMNO0#E14A{QAmFdvQkO0lB2#vY-XVljgH`0xDP5Cc`eukP!7o6 z+EADk4vNAe8nE$%B(JZtj_l&e=2e`My5qU7hR`zAWW1_IbwVxTE`hgVK*B z!hIY$-JFUN^i@JAq@RgR1SP{lTUm^i1fWU+g;_z{UkZg;LEGOf6pkWPVd2aQ+A>-A z6wrjixQ)GShN5kj^f^}0tU&sl>(jPW($|>)(mxX&`4(Z!*ykDF9#I(kABN3$yObjH z|KCCBD=!~MPB$x+prd%=tq=<7E3XL3K`fL?jFpUi^*!m&K~~?hT8#aM)L<5yvrmXc z$yhi@CZe>Ukg?{AHWcDa#fJ17*jq~!ZqC?W-bH2MsBecTq|e!&TSOs!&i1@t6wvp0 zzJF=&sP8KS&?m1{qSeQd)0s~C9NT$%S|ErCKehoYoVd{<1e z!tC86v0=5?yK9Rf{TlWbi%lElTnj}boYmqxx;4T{|NXF;lf5Na$-6r?3rW(y6gV}) zN&jXjZx$QU{|_kV_R{~4LFqeVpY6g)pKkW#_(FJ#ZdN6NLTCD76GJ(IMIZ|4GmD3! zr2n6}H-WRGsP@Nuy8HIsW+roUC-+V!A$M42Xzr3(0yqhf3?N%T2oPX~2pK?;M6hFD zg2*_$QJ;#+lDMEmkO4(;LtIcq(IB{Q0Yw2JRW<*JX0i;*%Oi$Pz8C%XmBU$Q-UqQlx)8MYBaKO$c5~jII?# z`f{FMw+KY~{}+Cl<&&+X|170HJXiYj-rmyFtB-JlJQ0@ZQt4}8blwjUBh1u!KSqq` zcb)f>#K_p!IXpv*Xz^K%_gjb&Ev}ERSz>x9l^t3hX^KdHmxkHSJR<#PG|UcSWbEtS zxn0DF^mQ#R(tjf<&}ZsM`uaGI#=d?>gN*%Ul;nSEGM2F~_x8j`czCAQkega>oh$uC zdm(*crar>^*mA)b8n;CHg6Y#RW6UG^LdQ%JBWxbi^2`t;^ZptQvxS&v_}HXjq;e5} zK928Xa=~oT@@ywY`o*k<5wfIT+^J!9F^`CIyM~b}E~oVWq+ukv`1*9eT_k!VdF7wPLhIFbGk>v6S_w~O_NIQ12} zNdIEyxk$?sNnigmBa*)UJ#HlZg)vETgp2gW(;NS0BOLoPa-#d&u{?pz|LWG#Z>jl( znKP}dKEddDBI)axF>*_!zg;VBl9=s$?9wnZ1d8+xO~xX9u?V^}%q;VW^!45>(wEs{ zNXsLYA3%AHX_!d*`Uu#?dc;zk)bfb*H?g!iBY?nJKJA@`&^wqOGue?%4mt-b!DWWFK2DZ0^$9H`KuB zk{lyOq(7wPnIvXAA8Rzs41ps3Ne#1wm}mIVHp7; zeM95pB>DJtKKeAw41s$d`=a^v9y7~4vKE}wN{ghwNyBVs9?|@IUlQpb%zm*&%d?Al zMDx#T7?J*^%%k@Uk-k`cx<@aP{z;l7Mf&@49ABkjMEY`1@2544NdJe-bMRd0|M7oL z`nn{C$P*Djm&TJZVnhHsW|Elgd<{AX(Hp>wbFJGBjUVM!-(`>!+LgU7)kzqVsz^=lKx9HNs9FQDam(h7?J)u zV!o+iDE%4vHO3a-@fF|kkFWQInSEL-`q*;8=<*tBVAg1P#)#R@hc2&40)@@Gyk>~m z#m5${v@HaR^mVDs5+nLux2*0YMx?Kg$?e1pwUU>RCHnmtjRGO-c;?a979xGw z$l*O(eWLk?v^+D+BWxbiFp>22zBJ1`|Mb|`ds!s?S&afk7A2|oKau|Bt@@Hk{{zHy zYch_culEa)zTDRM4lPeK_8-tN9Q*3F#uoSXEdSq-zM*kz>>rSRpO$Bad1T%n(=a0a zJQ|T#pF8$nw71fq(bnO8w2Xo8yzI?^ma=kC-`dX~_H}9?VXEmwxvE{;MU6PUXbxDpfj|f1Q#EA5DNk-Bi(>N?-iRRbkC6&v(ughyY>v1_IXSC9G5F^sRO2h0TM#QPhSfnqS zf4i1Pl8ep%Ck+!xUzf2+U#z~@v>N+ovtQh|@J?&APmX zh>;QAr?qd47!kmbhM6Qr*sRNIhM1@M(B-v-K)aQ^ge=kTx>Tg{KIYN2_;!{yM2tR% z3t1vGeYEako|BkIw;@IPV)g0vpcHfm^Heo?MbdA1wnu)AvE|vG3n}A&*Gd!VKSfN7 z8{59W7t+6*jch4>VOdM*%Q$W+eHq6srEicYEu}BxxTW+(k~3Og66womZ7F>bz^s-> znzEJ@+^Jzi`WF$iUBig^yLhPtw}{H-@!b4mcD*!e>;<}p(OQF`v!nBZz1Ms ztsaqnhG%*&nmhKN-3#dpGiUz^&A(mCGsbQt!%y!^lf+1mF*FX(NY~?|OT%m-&>&;_ zG>i}|!*5K(NadpWb5I+(h=z&A z{sEdKMf!4U(~C6>rH?Dw@Q9z>4Oe`|E@I-p%^s}y+TOXB>;1iyzG!}3#$)8xo~18r z)@3}yJfivgbZ!wN(jU?=v&4u1)@T^1e6b8A4YQqjs;y)!WQk?3%Xk;_9M3$uMIe>W z5Ob$ik4XQ2_U0Cmeyh7Xl=S2GdI!?qx3%?D= zMawfu%yvF>Zp{!V0@$wQ*+R@SeCVTSmcSHw|0gZaoy3S}bd4;P_c2eGHol~C=@)$( zW*18nt)TmKq>77K+PIcSq%U)VK3cahx$N>hrsdgA%wmq?Tuh5|gv;2MIpHV`Bbr~V zzWZXBK>EvDOMgbw)dt%q%+yC-Ujw7}i=hT)jmG;iVnq6r8fKE1uk)ezm>B}aR(Q9T zXA3dU@Nv6_nI%x9ulJZci4iMehn8nMF(Un^HOvlTMEW`fyND6#>wPJbzTPt<>Fevd zNct_;`y&08>wS^_7quP}Nx#J}v7Xvm`nrBM*gj$AcCBCZ5hIe+_4^Pp!safGk7LA$ z4XI-$iD_vM&JgnqA9^p_LZHZ4?@P19$m~9&Q6OZ=s$TD9+nJ}OrMQC_ncZi#(smKE zh67XYeD!|Y-`EiD3({wC&`)$)k+XNl3Z!WIHW^S8A6#Mjr->Jwj|K99)Qm(v|BtiCtx zt@I786@6^Eu(?meMA9G9Fk{Rk(jU_>lf;PTpVTlj#O&fj=Y1r7eH_m+x#;&ga+ zka=Hrc>kp3q4d>_ZI{oT_dm3^($`0LAGsxL-m~U6G;WPC&z?2^(?s`ad1eTd5k972 zMEWA*H5x|963briF(Q4D@r;&dJL{2gyhX!^^iQGy-mPJFG0$3JW;KjRUru!I&@du> zInk~6i%9w{=lw&d`SpGw(ytTqg%;8`d?HYz-UrB$}+_C?gy_LQ`!u#0oXZbKRc?}ULgRD!# zj1ePazfZ$V5+h@OOvB6&BV&J!hS@@ljQvd-M#z$}ug?iWmW=%^TAuAJO~$@1;~m7v z*uPWDvx^uR`}%AVN&guwPb7VP{TNAqlP1YX`ueIqlKv00JdyO{zt$D3_&ToNOK;Er zg64mO%pB6VCDLzc!9~(vqva9li;OpE7?J)Eb@hyf5$PXK%oYt3Nnh_5BK>jZX*u?< zCZ^@sznhr79Qy}zFt;50uOw!##(wF4L;77BAIB(O8T&eBl9+#5`jc8cvn;LU>>f#9 z*9zO2=l_EAcWJcA*ca*V<%&lmQ<}fUitp(E4e1+t%Nx?yF_HB9v^+D+ zBV&I^!~7#-e^Sd6Nq>`uiKMUhi)ie(wEAT1&uXQK=9jVmbqy0qKc(sFNb{ehVMOzb z^smw|qWMMo`qy8P=09Zayno*RztZ3H*x$4C$230vBhuGp97%shD=m`#77g>?ll~5^ zv`G4UY4eNpTiX00{k^dHXMSTEcKKwpes8DY^cTD@;pJ|$4X2zRvW!Vsa!#9(GhH7b z({le6=#1$dXc><8G{Qmf7YJ6X{+rN|oTr3q$eaCxMvdDRg#pdUCK;q zwZB4YXWh$CcZzjSEd_g2-4c{KGeO%e_bO16Rf(LWYRaLeCA@Su1#MY0lrTPt^3u|l z%Rsp0eF8jjKY~X!+1>HP^}xnkDa6HVvI^c^NL)H%S=uUkcO%%v8 zX$YgO3*_PNrkjlXQbgIF2N2JoJ(jS&d$*ObrDE?qz_X)Q13kaZg#rkV2Fe=L1R$7S3+0}H;7K$nf|AaPUQ`*~#RB7++OiL2;2{WBbxOHT6s##UF zcRc!1!SzA;&V^SD_&-JubT_kL2ZbZw$(HW#?5ybolLQ4$TZgB{ZZ_(nDshpoPH-dhiZ~nK%JRN z&GCTFWRsf@he&Hnl2i90Nfk2U+q)E*k}50Xj<*jI*S@tg<5V3dAV>IZ8bxFI8Y9Dc z^Fy|=nF0J+!j0MqmT<5z)MI)B(xJ#I@AfvsvAwt9Syoi3WWs1~>K{vI3D;FUw%3MM zm6w?H%lQ6@={~#=!~X&Nuax}*-(_qn z`!A5^k@7r6o>!eu_>a+x@B}qw{~W*-H5sd%G0`aZSV*J%Mr-p6DJrv2wk~DJ`zuM6 zr+Y7g(1Qu%Dpbcm(|;|>>8T%%W=;PEjWGQWMu5Kx;9C)3HvzW$ZL|k%H7&+W_qB-n zzeg(5{VsxDI|_6E3!&-fCB5ms3lRk|f;@LLAZ>tvCdYUw=;>!)ocb?htDWgDe7CV_ z(KYkYZTk!UXBHTnZtXAnFDmfeIAu{la2AdEFJE|3_8U;1+u+I0LxS^uNPP}RNX?nvAmrGg^BK+lZX&4(f8*hB1B8{i#dr1(Gn%!qtir)mZ&r*5g}Tlqvs?d zBuIquWE%TIRvjWMVaIu4hWUoO89l$|T#30TQ*O++Cn9|(($8yiUj;;Vew%;rY3K?M zVGy_vLW=%tQG^U@h^kShBMc1yZ$JwFbF8U}%RdV1Zis>qtwq0?lZcQY(Qb3<&+O$x zrs?NyL?zGW@pxS~2)c#ib&6xp|1~kMzA5a#%%Sp8-W*DP`Mog#G$27G=LU&h5+*9j zKrhGPmiH98YNL5l#I0d^Hm?DRnkS&g<|HCSOVoa|P97maBFLwOTvvu!{s-mCGMnT& z2|%-4rA^nf?w6a9)!z@#eO8J+OCxt*{CO&fGV>U;lA zRO~OmCG3REq4J?3&gK7!dQfxD{~6LK3Nxll1@FWt+&m0Do=qC9Z}EE4lp1u-t00cr|R=wsOkf7{Lk(hVoGm+y8OQ={f2p zX|sPBlE&JdiLoWClEeikY-vxe_%PTK6!4Db0`iGmqL%2%+Z8vL@ZLbZb@Thsx!#D7 zcPJic-r()6GPGwmt=a|C>anfC`ECFLOZZ^429lHQm7 zk675$=y;id%D$AoMi(N)&%Yl%<_dNw zDRYsOxfAJYDSICg!36Pj|5hxRf&>@MdwrVQz{Ki+91t@s$J5MjC^{2 zTBW%ZMW}KP37D#42gciY1XvOyDxNTvR&p(iemR%S#GkT?szqgeDCMM#6jc>$`Ol$}ZBs{fqF`29zA%or;+Tf8|2T2=hv% zydt2wu-h)|Zo}$hsuws}0!aXENTbrl@s4zi#F0-V%S-+DG&)&4{C~{888p@X0w}F? znpp56P&{AamW(w88v6GDcMTjdrVO(3cVl&^R3oM463o|-8w%$xVi)3??{rkiKhwP* zm8qs$!Ha#pG0d&7i?bBV7Qw~PN;fEg?Y)-6x3~TtsLCt$3)D^d3WZgLn^ROlF|L*0 z0(lWu99P;&BC#5FvvVuW1@E5wI#jW_51P5WwEklZjTsJ&@|l5B>vkVxb1e6Jcr~DQ z6BI*cG4s%CAOQgO2>}uSU`Ys&z!jD_lEgf!La*&$>84dExDPV~K5}iJgObBU1ABz{ zOn27uH=c?)|8r0g)yUsw6|cDi^!FD^gEx5}2d=%)G5TFho~iVz9MQhR~CTWz{Hbg(@tcHr9D##o@zq>B6>rGM5ZfEz9SU#auF|$@?rS%m)?|pl5;as4rdImUk-Ms`_L|1xo_q z{=Mkms=3P?4@<@j=xfj}CFWAz>sb;!pR}lQ8Sh^a9T@!@c$ib=DK6)O0vzO^6_rm^ zu8b$BtyT%DXQ;Qg74v-c_*ley14_=NRB?lG#2bN#3A9C3At;$+{j{X=iDb3Y$t9BB zeuxcpXDdax;{fp9#0FH-42t2FOJrp9r>@Y&}vKkt-}!iZ#-uzI`QNANB$h0iq% ztG@FC^qmFNb=400%I|{pifq#=TN#OGBT2`)&GpD8-6r62VdV@UaY-!yAvqgmJ|gHQ z=vakqMLwDY?sTI|B-lR=$R&!~{3GD`5>|OI(XenIjYspzK#Goc6_{`-j2akKxn!&X zy}8u#|3H5Y5~jS>5YxcuV*uq+wSAOSa*p?AckBb;Ihhv50imq{_ZD4rgDD z@pEp`Atakab<$JQiQZ+kKnn!g;M!WE*kx6UW-gFY>PA(1iSP~=*ba&a615{iM0K~fykGg+g-{#U$_doBi?EbV7FGP88i#c^65gkHO0=87q|z$J>{%U~J+|NUDKYZYsNczM@#_3xcxjgx4$3U^eEwpHPKGkVF6(fl^C^Xl!2DiB3B} zQODWF$)NRp7@tpGd z`!v~vHd)5e$SZz(%Vpk-BkdNR))qPbeVB|@q|*`K$|4VTN2Y2P%T8?eGwpJL<=I9F z<*Bulloxt&4CTc!opK)%%&4?4KoARlj%U`L4W{mgSwT-y%bIlR?WBLcxqHC}kuRmn zpuSlgmC^S+l(%vm8SYy!^sA`y%C{mQyt0i7((m)P(xaZMnH>9a3x0`upa|G5Y{nQ% zqI}>JcLmj$&M@seB&`!8z*O$3WU78mSfEP8@>Zd|(w@rOA4vTD>G^WJyf#&ynJhN2&`#u>HiYk2oRQnxoHAv`Lw!jgmQ!PlRVi>>lJ(i_KSQ`eN&HW8K3HwMp%BM_= zSUwqFgCNc&gpQK>2)2pbG#+5EyBis>aKP@f&BZsfC^{_T0?@%f>&g?b z@a(S@2d+FGf!)qexXJl;P}M&}jJp_fYc=bCjjO?1F=DR3M8kqy89rQ>2qhN$j$E6u zF6@=c+wz`MO_;)Vty;rK0Hl!Q@)s??avOH38F;@;bYn8xW~)V>$1^qkO1BSl)@G4vs0Q;tEE>vie!pjY!P0Zo<1!)_W0AW!=oO zR)l5EA~p~eeG8Fc(Z{ps)n@%@yr)@Nz!>z&TN$&aN7;JN^*%%`@BPdy`tRjv*8ph2 zNVo+oKtEXVfp8DI&i>5Z)i!Vn!z{~}m%?-EHWW}_h)}qxaSKiLL0b*0|sI(q(@I_6OH#s)?H^$gCTYEF)yMLF6(80IL(+A$|b50go& z{eLjW$X@4I+sHvXg4Mu$*+`(Y=x@?@X(R7HO5e7>mxDe$GW|CEG>BGX$JnqPDLEua7Fjk+X&a{BCkCGOSIi4wS+0TPR zBGZRqK)}1i*VI*Tl*=)L>B9-F4}u8ybUaM6USaqQh9#{B?cw-8Bd=bCsm{e*RDrdA z2&TS`h&$dzgg(touaW|$q)7KNM7$G-+f1-Kj%V2{xF<5!EkLTVBREW{>t_0we&yks&|=02~zpBmltCAwU8Eyf6ev0DxmcfCKKwj)&>4=hJkLBIIM}TR5_a;MCQqX6iId-~P*QN6)we81LhFxTi|433;B4r;Ll6 zp!>=~!&-p6JCQImiY+9BKY=j34^g3~vd}3O`bnUqj-=PcY^)^dbtCBh4iB7{YEYGu z$~y{qd-NA*Z`wcR5MvX(K=+_QTn-n855#)8lpfC|a`r?it=6>-Z(-;LawpmF!)LN`236#oBK~cYBZs%Di6Q5}eT40{j8ciV)ckgzv5Z=+>*dZ zi@XH*rjEz0cr6gkC*<&T5o|H~J7_0kW7oi$H>Fq*=eiNzaRW!s&>N%9CdMMV#TpbX zYSbd0g$@?|^di#h~`bKrm*K8WFneRSZ$c}fn2 zX#x)23eWB~_}Nm+7olu;ILSRYiPJq3$Ix$+!2iSWALpx#Kj6I!|38iYefa-P{J#$i zf>Gf3hK((6hU5QF27L4j0OnE!_b!$XKUnFwrRU&z!qOv0Z_!aNTsjWa@k=ineWQ*# z`Y?EY3}9b)7|e8I^re!(e?5A%3d{g#40)qrBTX^h^bpwBj-Sd1H^H!J9K z4d}ImzF9$w9}3%cIiYn09c)0cuWyW=qo8Lspx=OSMvqg_^$n=dI}9j1_{DARDd=^h z`!Nw>1wQP!Fhtb?Ch`lxX3|hj(nbDsi6r@00(kzrT8qo2Itm?CK zlPfcElsZn!ql~-J*ApYuu0s(xK`Sa7+G1;QePOrd{R^NGtVdw4ZG!a*?DZr7M=j!o zVaMXy4W-4aumZ=9L1F8_LQ(4ZEO#%mg@v*s+pAz$G;wxNG4IVNEtl+t`?psTmAX}` z4wWj1dT)|sOL85BQn#clNf@u0?@W^#8Ij2-we?fj;uCsS=5H)Vi&0CM@N^0`1 zV&=}mjg_@cfLwd7bL)+jRk=>)pIEXk-<8Yex+H5pNcl#|+B<>FI1WI%y%3b^KxGqK zZ_IV#lnII`^{n!60-4+OOc$}bu(j`b5D6ph4Jb`^R>7@R7d`j<^IQugjcb6dQlDAw zxkv$1j>@Ar5loDQt?if_i(6CYJ#=HT==4aS2Rl9`?1WHjk8kC3Vk@F}jw2a?oF+I= zOpH82i6o0#2U3gI_pE!UBbn|QcR$UU1R77VJCR(>SqWWNxSLC;^|ND;@)~F>O1g|Y z1+9v62wc*i$H!eLCTl_XnQ=*h&06%R8&ky|yg*5z!*owZqw>i@K2_<-C9!oQsw)lM z_|W)69XT+BdNbJM8hIkslU7;rB)xgNfK7mTNkqNRaLUOb1D-j1 z*TQ@voriV$IfO5TJFLyS7)0i?tlNcfQ(N=xDNMe6^h|8cIl`<23Iq%c3u(#1|FOeF zA{-_-2h^)I+gaenIC`6!Yv4;c%1Ul6bq$sr@o`$o>$amx|E>E$&)fqF#CpzDdYri! z9-q#L452;CTTo$WM}jb5L^95glGnZ`O~Vvu%2AH zRe9L%jKSZ_GSe!DHycFAS?^Xvf;!Wx&ex&NfSA$CV&RPlhwOS0a*a+10ODZ#+ecR; zDlQQm5TTF=759spOVeJJnc#>rV)z_kaP`Jv7GZxuCkY8o67VYp5Tf%0JQho_fB>2q zMXVd{!#jB?G)+KlKGP3^GK%BxM9OB4_dBI7Z##HVzmE*Lp^?CQ4}z7;>Tky@%Uw81 z52s=&&7?Gu{Yzx1IG7X$R$izo?+^n{R?+Y-WNW6O(v>cH9ROF72+R}wmr2bB zpyV7+g6~6cFqyNLe@bRO`1{aB-hd7_Bzo#RWLo}eMC*S*DC5+B4)5$VS9cQ11}nYB zqAcm%j|!4%>GvwAG1EOC8NCN0D3zP(UJyc+9A(YdQ8_Lx3%)!)rQ+fd%M!XZV+%Pz z=x+0d@j%$dOOD2iFWY^FC{~qLK9NuC%%rRMmPvdfO6e}&4LR!i*ZT_c;LOB|`3d){ z4C271`!xh)p{X3rOJYq8uy}nPiKNNM`3;0?_u@mR#O}f$!N_>E(Sq3fCM!r*CUNBQ zTMY7C<+l+Kt*`2OVF=>lS%HQ_&{nXonIdv3z~c2C6eT=B`QJsj_AXGA++Fyu21WYn z+;m?a@-2>HMW(wkL@5VDZMEs&g<}nB^JA_@$G;7^D`7W?HztAhD~VW^!wFv(=>i#9Cv72Cs2T|YrEv@ zDonrDnFQhwPKi-u@2@!nGG~ew2XI9bkZK&j!<&HA;{c8|0jY_LIvd_{%PG0Y53ueXCQ(>)mVsc?^mS>3>t zx;4~E4b(z~=?ROYE9Aj2wbW#~hcY!S+IXVCiz7I05Q+KbEK*q&Pxq9E{FZ^J@|4Er zWa>FvRpq`~q^xCF9Hys?_Ed@BBEm{XgqbMAJ!KMHlxZK8r@`x$%qo0e(u64}U@6@M z#V2fy^rm|}!U1DT?IA7fI(wo;a1kw~!{=n`d2th$nlq?L!Fv$BBwINr={_Nq9tMK1fHqlpH))B0w*&K)EG$!M?o6C!T{HhkX1TPXozPD z`mrVbcy5N?IT=Ktf4i2EIhp=uEw=5MXhTE4c{FgWk{UyxmB>9cP;jvZ9v@cS$fQ-R zXBbu))BwU~(i}ThNevz=fZCoz5)`VcGN?{tMSTKlCFl{YnF=OVys!I%8X^wSks(= zYema=7Ilu$e!?a?2b@(JlwxeLA2U|3<6R%pFy1@fGp@K4gU;zM0WP8}V7h7)E8_UK zN<)fX)bNg`8cJQLD6FP|YEg~g_D~Hzba*#P#W#xX4jng+On~ZkNbI`Mg zkk04Oew-ZojhK)pla7zVxjGOdx_$JuXjDq*?nsLgsC7Gj;={awKq!|Sm2(xYxD3eU zI`T+`>>=`W9eIG`zg%F2M*WWeCM}gZ8@b|A-cXQ9RWX4EYXzDa%5IcnCisBsgUG7P zN7Wd||B67wQW9bv|4D(+oRFhHVXJB9$YHe_%1M5N<%sDM~Ws#BuPSpF?B1N$9QuGJs zN1uo@NNq41yR*Ewa3wY0pEpf`tQtny;hCmc_V0@NN|&&a!?r9ekoywb9afUkny z({xh3QtG8fGLHN<&_Jhcml z7L^Y=gDI1qj0~KNAICd5KL~iQu*3_OHLav*9I2o^CDU%z zOyT=?xZ~Hrk06`-5&+=T5Fh~nP747N;2DamA@k*|&*eI(Fr4-8Mu!c~Y5DfYusS{k z2-81}LAvwIqWA*MzBK%$>U@C;(%*y=2kgDx!+3~8(CoYIouyM61eeI`Y(b zQHLIOJ1cPNq5fwa2dY1hN56j&Y7@Uyzi18FN$ocU?7xnbT!A9IG#*$QX4Q)xDDhtf zCn@?-W^khkz61X#1~Lxsxvxel^ktgaDes3Mvv#_QC3id5HB*tAOM!g2?D!AA?C+2e zT#9m4e9Jf3#s$ILg2L;y>h*fQin3`U=Lv$j;0fb36X7_w4XXDQkdq~s%i!p^GPz2n z5xZ2Xz*8j#*k?IWsODgH#T-%VaQuhJuP1=19cl4)94G7BcNm*sb^I1UbrnLTM__QW z_h;MZn=wpNX^%C0?-!!q@J|jX_Wz^jwVDz}$EfT%N2r<-{=L&vO^N^B!KtRiu`^RG z&pkCIj*d&UKJwI*`0t&MYDyeC8r6~v7~lMkf&1u($ymJTP^UV;_#BMb)T ziwbTq_KyZ#0Lo}D#7BG3r+bY9R;qanXQw#RH$IcIrcZ}%f^K;Op-@$8LscaK0L};j z5&+=L5Fh~n@R^v>e-Z#-JOoGpfQb+w0q#Tn06aaM<4T==KMd`C6C2U(zFD<}qZ3Wy zSjCGYHz3lSBE_O2J*vpEsU}RxDEo(|%N<$SL{!^cy=w0eXEB-8YfSd)>@W^OauBNt zwCDyElOL*}0=GGPC)ED2`zZJiedc&)a1Ixm6+vAX+lru-!C|yghkFeP1Ov_v86W`w z)`b8G0Px}vAOVPpE3z_*;!cTK8f+AGPMA;v$a!uEkN^PdLx2PTm<$0DXq4I6DD%89 zfdr7_{16}k04@jt5;(1K+z#hDFaf`xw91Pu{sonQ$jLfo6;`zE$c9IPW>^|?tT=csSMotuHE018MKK-5xmU$kD28TY17B> zOnZ+5P{s&gF?bP$b7cwHpIj;W=OX}#{$ap-0_j&=hk=BV@c{s&(zMyrh*a~ifSIbA z!Epg8w{m{K!G`j}hQT5CCRkgIo6wPHg69YZ2gXdra z$3wp|FY)mNjZGB7wP5qh+X;~6QH^Uo5~c}TQ9C1rkG)gsw5Rk%OEj~BMBT7bGyUJA zO9vYWv6QOA`n8XvzaIx~xa_s5+Wx9m%exFwl}1jJ78D(_lOTr)aGrsLsQrX=0iW%9 z&w&5*1F7%Z#tnByj;>*DvW=qvUxmK0$f`eyw!uL0cH!-K|Ar@QXXz+ELAdDs6i;^v zw#VHP9@(Akj`tKmkK?=6orZirx0wFNc}D-i>dpofZ5(!(k-+(~HrmMNBTkz-Cf`t0 zeMcX2+FFrXQ0321a;Cr3rzBZauZFN2A`&?lHhMotauJU3pnN54b)s-zp}g>MY7h|F zf*GV|3@QZwVM8~DLoFSQpKg9d^plBugW~JB)X#_~HPZ3Ey%&qJPH| z9r#e=QxJnxpX^m=wSb8V?F({+g|@4BQ0NjBTM`ucmF6NBH5D0D0De8B;EG}T!IS#a zXbe^(zrf3XGke@G5i(QtU*Q#~7P6-PYsAs9M9mbu|6n4Cc>f1M(J^O(mq&t^Rx~>{ zaSoHDcnBJfm?R)$C_8e^SRQxh#iid-S)Ue{K2?%(=65VhB}-G%nh?~vY&n7rmzVn+ z5R*?7aPnv&&d@kp`JsBXfQQNzoH^o`$|Fw(ZuT4EZg$ICO9Jj>F{#QroCKn8UUpY| z!q4wJZt5?VGB*{yXP7F@%E~xB;HYnY?*b3Q&uEg^7LOVio_OMS^dsLz(V`S@gi^$1 zP>71ZMagIL3ou@!AGf>DqL!4H3h1-Szki(Z@=u07g>M)a4Y##(oMDQ+Fq~o~0Km&a zfCK=zC=x9}I1L+opN)$H*I54VkP_#KaVFShBKhF_RDN=`3Naj)|4$G}`$^vKRmNh? zvhcmcKDMz5_n3OWM~bUw(a>7bQa4D#w)Or1sIn{@P||3MzC4<|kc{}~(vr-(3oOF> zBeE4n_GuvPImqE;qW%DAyQ2Ivx%Lrzyf{iwE1T*fqy0>Ekx{R?8Qf^A%{MngL$}p3 z=H{Q`jk`|q6)1JrLEzO3Nk?^I-_H>aE{$~DL%@Gaz8oxD`vW0=XBE(>DlS0%D^gnS zdd$^jt8iNI4d(#T93y2FN(Y9wPqG}xa(^gE<+8rlk|Jc0K7j+=#<9p_;UXb*qtv`c zZP_Q@39RXU0llDlrfLb6C~_?n7pY%EnVHHNs%g~&8~NO?0)YhPZEUmqO%)5058&f; z5bxq(Ei(7mwQM6_B^?C+^n7OLqJcf4U|MjRlD>zR@wT@ai#RuZ(ex8{;*Nqe9@2yS z1&l6iMAu$`=>B08{7)D=kpDQg->(5K%k=7K5cxhy#F4l@xXOQsaB|!~otbgM6<6mb z7msHh?@#C{m}PN=L#Fl!zV*JsQs)j!rJ-}fV0!84VKB4w_%PV9^a#^G59Nh`c_ZpW zT6AiD${c_@=39R68j$vO)T$1L;EY$M(qRS(y#E3Ta@td^UshcK@2|9N*Z*wWM&E?; zLSjop8^d6F>EbY$S(*!j9ZMa4P=v1l?8)lNf3l^@Y2Mjr>Yvfnfp}XlVOy^k2fZoB z@%yiU&Pul&Z<` z9s_6`U;W4W)r!q%Bq%UtdD=ulDr}nQG@fC^*UdSzmYHwuUNDOhp2i)%e?rH}>|o4= zhQYPM?l@FcwV3pt13Pyd&M``a`xiuOR(Ay#JpUEJcDx0Y#s)eAxc%lf7E?}jyV!%y zRF^qB;MR-fuI_7IN{DfgYlDMK@9%kMOx%Y>G67gaz4?2*ahMTy;tk+?bk|XBegOFdD)1gfx2obE8&gs>rvBg(8?3;XSqEpa z-YZVDt30aYZ?l{f%;4fg2b`_fZs?ilNT&Lc3b!Uzj=*O({^vNH??t-W2&4Cg(JF2v zndnF%X=Oo>MaslFcso+(ZQT0xrF3Crzcd!WJveZ@tr^V|$gHdsmuMd@Fm)sbhZv_wNZv?Pshsrwljy}{0~8!lP3 zo0n%n6gNtyEU>F~0fccZ48<1$?Ah0D5O1xOv)AHNlKtQy=BJWMM_IC$cQVJPwY9hu zHx3E!RiCo(H3P2gGO-EspU9B}hwuT*Z<^(JE(8L_$$K)~b~Y;0cOkl-5Rk;JnxO8H%fVm8eG7odO`|4AvKZ5J}aurrKKnIU-%%z zmIQhDHj05 z_b-e>Gp2CNm+v&+5&ExkO$0nev-CyFt&3{S4ANqJ3w2msCYckbu*D!rO zfkHE8L=HUSJgn|`4iN71s3X3g#D1^V<4L15pnMA~Zwl~JQJ(FsKsIk4+McPLjvHaR z5Q5`;4AA1T{iK?9Yl^4eliuL~rsOQRnMz7kl|GfUXIaq-K2&C+q_>u(@|-$~%%RBI z`*B9w*j;FA3r~%Qeu8#m@?t~IIaAm7fiAYQZlVDA0pe|I0|=g_9=za}!j+d0`Dx^d zkS8bHGnLa&;a52~)L(#f{TR$VW(Os^Y_P)<}hyO*es`5iZd%-NlZfkNoZh6>%4Gv@_f_TdgVJnud{V2 zAW(oAXUWJfanTpgc)$f?V3#mwEs^b_0W0{H1}*0K2>b#Ja)x2@UV$5E5krvlpOJ;N zSk;RvimdKksyYd8i-q443*Q(E-xLeKHx|A*7M_iTZ$X&XeZ3mPcD`Ak0F$Rr=T{v; zcx^0v2EwTftllMxI68_8BOT5ZGeBd(AE~YsEL}441YG$Ykgqw#+6u$?zQ}Dyd_KO8 zn7S1p$IT-;&GH+N`Rowpd?V?0B9s*E2P1JBOF61P+K8gSYA;9NG$bi(9G(n<<`kR0 zaqys=gS|a(4X^>mnIhqGQHt$$0WQP5a$t*uLXD6YB}C;^lq+6^2@(SwU)V&t68+EX z0W#?>K)I1le{0({J!YUgP5Cb5O!i^nMW%9mzyWU|vPPd+W*4+qimAdd)H)fO5`HG7 z8(^#S%hXRC18V4Q9Ca*Xph=a^3sZ){F(9Ns4xMrHXBN48g%+Nq5b>IRZLZr@bda<;u8H6g|pPT#3qyc%M>9k--q zA)AiWMtkJlO-l^=t}&pD3DU%o1=(>-W-CWqNlp0emClri8f!=qd@7PyDDj=PFghvq zWs{}d%kB>BXWOWv9_$C@WWGQ>)DO5B6KCKYw;Q~lll3We-zR+k_=+i{&z7F&p+jJs zVGNV)`3SYcP1xL1JMej*5G&Upt8qV<+{cmsCCFdfS@JQ5X#k3m@sNm=cwSXoU4NDWb0#c}Lrv9wfJ8V$om%aTyLG!QVZEd%=4 zz`6*wtRnlgIN9JD%f#KLu__fzTHaJU$;YWEJOkF5;7B2?=gdYus!1osn?!y#*wa+# zoF>hwp~xDP59>+Pfh`p13_2Jxf5!ll)da6{v(3V^Opm4A(=zQ9r)B2snU=}1I4yH( z>7?loGOZeD)3-%cd(Uh+g24n_<-{C1@&$ z<1QlnXr?KjZ7uMQLkO=E_$o+mSN6@AoNtAwu4t5a6?^?4Ku198E!fgqI(8^;>2;SNS0*5?J*Bjn)tM-# zls-d}Wp=_EFFQT!@be2pW-)6fK)2-UFi}NN20n5wF54F~TZ0!>+4PU1_+^pta(cn= z;&fu9Cj~zM%Sj1CM1;}+%!$H*!BP(MY#|5fwD@HPPYA1HM>t;$95E4Y-+g zbwL%6sglJc603X1*W#vd>i;rYW#LSb)UWuierMzY>d)5Y*u481KKFNY;MX~$5@q|2 zuBWHs1#)e71?YMS`=#v;vRC4lIj-GcyA^~HbPvSa4hHqIP=}<%d$DNgyp$O4fyF+Y zN54slUGKWc=ADX1IN~4BM?AWiJAecOXqfV!>}QOfACC8g@h#A`5Brz&%);>T5C=6r ze=CC~@!0`iu!_kA1HkgmLV>{#fiR7@uhyv&+{Iw;$io$L0XFY@0;b1!s7hT|oCxgl z-f?_)0P@vTP-ySPp2uP?j@XY?O(`jVygmE|Lsc~LSYWifu*k{7)JFFpgk(-g7O4dzt!6{=KXTC@&$5Kd0>)O$m?*_9qHlWau5ggwagk{MMmso{J zFIP0dOtc{A{w`CxFxC&GbR2zC#zex|IP|1d+N}njf?=8cIn=4fl}!8%BB@UjJnu}u zWqjPIVmF?%Vt?XdWB;7mJWIxTQBhSHh?TB#^_;zNS(nwTB4J;glWOC-;>L*$98*np zg*ioQ1;4){MoX;XrTc|yL=}9FOl@(}hIw@{xe>EkVg(H6Q5R$vvtlZ^)C5(D(G(+a zgD5I&lB22gn5(01>b8BBKk{@?QP0^g4cGvmpl$pYc!lpE@Ebvjj*Sx;{0s+rCw9kP zjN2?|WN?coP!U}SacLRqh~+`92AFkiJZAzwMG=6;@e?9&2f)1^Bpt-ILux#Ovc+O~ z4>XArU%Ln0W8*q}0Kn4JsK=(B>RAH`(IBbe1!fR(mx3T%lvSMAh!K*+IHdDTpxEEy zVcjYcOw*%+C89aS!1$b`0bI|4Z4rej4B;a*w1K&c6QS0M#0K`#mJB+6F`p>r)0IIS zhYM>Q#2!lNuWk*ra3cf$6KJH;ZUI!<@xw6V+%STR=37C9!#HS+gd%EQt92xj|3#7) z^0;G4D-ByY_Tc$jY?U+XiAL~m`Pp`&%UiG5vB>sJ;cBTR?#7PGvh=1vo%D-gC`zWjg&Kv3yRPl;8AQxjdUL09L ze-~O(qRpaP&O%@Qe#Z4No0vAiMc|RO(Nx;+eORSi7)@{}Z5*EOSQ`gnEh-O)sASRO zmho}q;~#!cDVPYwkE*nGsVmk;ODnzoIrA)3ufE+-73wo(TxcPf#lb606}hP!dp8MME? zjQ7jY1|b)>7Xc*)uCbI0^uQQKlCl*Q0MVZDi_~z(%|^@sw!+MFSH{9ziUmX06?d2# z-Yz|KA^e31H(vmOFL7h|lNde_twPx+$HHr3X*lR54flabeW2So89=4ty98;{7pM_s zUsVqB4Z{3yjTy#THNe27m5eXzF1B(g!yHarM^lX`JS8)wv26{ z=MvIWT0D&tV>q|t@fV5IFU#BR#h@JG;g?ue?3(kJC@?<+axX;Kp1ME0P93}0xcUq* z^+C)eQ_4@ayXQ0Lo+r=sOu!Gdrpp$=^wpS?j)>6~glfF-dN6 zBUVrv9x89tR3DRhXCYASPGQN(kQ`O?jzDqM191|~zvv8HvB2{xd38^OP?=BgE=MM+ z?X2+ovqnz$FaQOO1TKaaeq$O0r-fjgJi7%=S0vMvNhepH0xQPx-;FdOTkej9KlSMb z9KY@1e+5zhQNq55ayUmk7ivuj0PvR(AOQgW8UiE$01k*M%`1Ts(|>{m{(_=DSw-;s z_VV@iPQs8N+lK_~&C(Z?UBf$EO?Lwr4Wk2#?Mw~&LHLeuE-=PU!4p5o@f6CgkvocAQDmP^7- zf5BZ0vlj}0?81Rl)piL0fCHy?`FhN;45)EyNmo^6nC|6hp}QFm-p`NosOou zn1ZorDxLB@D2V~9h$W^!2m<_b@R*0)oL8V@s&laH{)!?T9j^l|%*V|dV6Uv9M=;hr z(XG;ZIf`Q)c>=$XYpt(=2Q9J1-EG$TYF<$e3A`N@sGkeAmfy$Gp{jhGEQ&P`{@$&P zu@kE;Hf)@6o))R#jP*y*0{%KTg|MfziZi%|0%^RP`M}u|r&7VM%#m?1gt{UTzg`=` zlinOv5J!ZZGk5%W=(W@FDpAiItzVRgRP<~~N{4!X(HsTSMTN^t~G3Zys@M5v_P=b+p&6?|XGT+)Bg7g>4G_3$mR z6pikGDN^tgnF4;|Rsk1V`06Dl3bZh4kp&U{l_I$|&MjJ?c56j?>;NfVUMDQbc|IR3IPsVYK#Blq5HkOZ( z818~Nj*%GdBg6%2T=Wd@Oy^(FPpG)Pqo|lKg%Mo>0-T75MdFDW?VP!y4`XO&+tj2JNCkTJTsi zZvx_CP@T?SS{^lnEzf0T%X^u`_*}Nw^2DS(2!@Ou1*Nk?X&oCwd&eRTbSV9m4?spZ z8=f=k2f^x@#xVoP8Xxp$>iBXyGtH?!I1?9{*aMg?ancQ4Z7X`6Kf$(&HSFb(M}9js zQ#sR7A8!t0&}1#|6-b%%Pdf%P>ofCl=&y|0yjRn#ub&O_@xutLD&^5KF{em|S78z{ z4=KD^i9fWvIF=y)GD+tW9y%oMH?4 zA*wUA1;c8jCk9bT;7TOMl5do`Z~sc#*&cemQ+3rl$U{x8X3H-BI&jN>6pwlh&AB4@ zG68-0?Pz(IS%FE?sM&5|j@j;Y5sPp=J&w)R;9VI+2*+mGz2Qc}*+r*X@Sj38Nol51 z17gr2G31`9eN(w&?8bpu?9qu-VH`Cmkha&?p;Y%8JVHNP-B|Il&{ty`FG1UVS!0NS zk@ahz3#~`c!u242g7=g8{|KkP- z6DeG!*Mk(>eH#gS2+?;TP+RP$??FF|a~zV$s1IV9iK&82pqD<>KFq&$_Whu5jF7}d zK7O)jlRw46Vyt@>WnE$7n+a~&twAKHh$<5*7iEk2;2jEG7<6Wp-BX5dP{lG-F`!1V z^ewL+`Q<{Yj>;?2av_yR>)3lYO2n2LHt)QTp*9}Ym(i}e-f%vb=$AOp3Zmm)gycwy z9l=cP+xYMsJEVxh?8`hJtF2$eS)7o58+@hymiSldHm~Q~h9=1MgpP|7FPX>7>Tc+5 z#^^)pZU@tNBlbnrJya%sq50_r(VbKWgSX?b;r#D|ftj8xepl@m7oitoC6m4&*5rR|^@qVH7A14?nG3w{qeqc<`+_`W zG##oUYIRxurRg6TqT)-7#pN9!SJ{-YBt>OS5~cP@H-v3kxGd|x3?(VsiYrAXl9eLd zn{eo3=%}wDzmJepRDLfERY3@&R6R`$iNq0W%g;lC!C3P3bkM**%kTICrqa)${3;G` zC_6Z)0oM;mL;W0*1nVu96D+cogj?1YS#h-C?ngZi`%{!dDXzURIOB#~tZT)(T4d72 z@M40hc*D30$dIlY>zep1c&HR7k!smV!5i6Zp_a&uXK1V6@%Na=q(PtIJx5;!A0T_! zNrzxGPxo`E#_S~cj{`diGtI{^D3rP7pUzU|*hVi2Y$NI+Y%Q`dl_&`f#F%#|DyeTn zIo=BpGN+_`LB$e4)T6-4D!my@J0{S5?+7iW_UP`_hW>k@vFX#wR)RKxM_FkT2|yV) zC@F{9u>pa0yai1QwWDeQiJ^8Rv5|HpE`*78lw_hErMTtDb+r>{M-8I-`w`&%3Yn*4 zCD$y>E|$zIy!YWD4!75$*?}igh)_V}Xdh<8D#Aw)Z`7*}oZ_ zkSoCC&b(};Gbxu&@i^d@fDi5)`DOgpUaX_PNCD9|9R#D_;ru)>w)bN^BePjN)Aulo z{3hpT5ej_8pJULyTb`d`g2*$iz%fU$?S4hleI3t*%Qn@Y#&`2LM(95rcJ1jid6Zr1 zj!ca7Zs!+BSbq*{Lw8?zgWxKelV*xJJy=136V`wB>|nTvSu>5UD8DVO&Lb@`dPmjV zNj=d4zT!t`8hpihDbhKY2g(;8YcYP+0|{fkamU~PUijW@_qU+LB`4|9C*%ANyc}XW zj&6J5-W=vQ{wFVqvfhgcz;okfQ=uhp;5`6+ua`AINPF9RsJ-T(VzPrV<7h zVIAusIWNL;?_&bf-Hw-BMCRTvIW*x(ada=j$XA0(0sz1mPyh)40LxtgBme+aaN2lt$*0MplbMhwR{6KWIxmfgSb*odB=glI91}k34lf7daibx zY3Wqv6bZ@OPs~G+!SzMojo*blr|5>+oKK8y!O(_vj2#j6~zS zk{*`=n$0eBJi(K)NHrA^zMmpoeTp3;9cM|Bl4oakK=2Ra1cM%0o-1C$!w!cuT~7Bm z1{Y4sz5&7u9Ph%Ea?TFy?~TTxvueDV_;vZEr-t_TSB>{=Q1>)(-|_~u;6lz*nlNy= z8|`Nr+*o^kE2_o)Dwu&qZ^NT!dE#xP?{EU^5WGBwofsG;Ec;@EPEkEU`LfbgZhR^a z%X=@fD)Yl?=nv940y>qi_fsfI`fjtYcVT(QrRHKg3Jlj{QDhYSP=mL~06nh(Y&3d2$YpO?vLP30270)Mxq+h7*$7pWVr1YQxy9 ze;SeLl_b~w4&m+&OdtNOXr1YPmvdUfIhC!f4sI43h5^=|l3y+Kvd~ZX!u3s!AUxCF3R+r+;Zf;GdHW)5$~yqhfxtAlV`sOzii`)$qs4bX#W!10u_i_Z z7x*zc97RV7KT$f;Yr2&NA<#|{CG((WND5wYT5kWFwEVUuE$ia6;C!Ngzyp}^geNIQ z%W|AM964CA1DDE?3Ldai%*Ah8;@*Y&XF=!mn?(jS1n~oBk$QRn#|EP;294 z;m(H`Sy@Ha2!8Q&q!y5sRb*j9hZ4sn1MT%AKt~?;3sy-_hj(~H&-+``10NTh7^d;4 zapquKH%2wW>)T%Z`7r#ewwIk|2JqLJlRr^m?p17rPQreBG;W&D2*|jxU3OY4ZWYcM z4xM&q!cMr~MZ%a_G-o(C{^pG^b`r`?lHsQY4*D!doc}qXm9-?pP9JN^-IDA!J{CGU1@6lKbiV@42#dtKNEt!E# zcLdT1y#}#7-l;+b$FC(*wjJ}Tg`TMv>zK3JQtLw>R6_g?BDYd|cuwNar>b)j=c1SK zoWy1FUg*C?-o5^f@?PZMDeuMpm*u^W|A@So_`jBSDeaqIVF9I#Ur>RpKfpkE1~u); zufPU*hkxeyOTQUn9RH+P_>ylm;Iz!K3{{4)1OUK7Q~@La092d;NB{r`LIETIyF1%B zVZpY;%#gO5Zo_tN9H_Vnm4^o^euVCgt|5sU#%gq+LWgtF4C7h{2L~#e!FxPV0k_0s z9F#jTh|AZi-cswv94n)`yQmLpY#6mTwz4W@fCRviu@E2uaO6=kSvE)EcVonIf66L> zdNz(?Btk9xb}Sbo5$eb|ijfHQ(m0Bd2z6Z?#Ylv@FOFg)LOmNtF%qEAl#cHhn~Lt! zY)TM|a0fQw7>jU6L^$jgGlp%!aJP5@(FU^^iAb4_qZkQLIIZ&>^((IGKJ)KTNyMDuVh25QzCc$v; za~5+IoIUVo9|4Pa`b1JwhwYY`K8ZoOr6*>ka?AfkBtbUvGJ0hv`LmR<>53#zGywk3-&7G(V6+GOw+-nwwhS5&Y#F?j{K1J6UcsnD2W=o*2J9ixmcjqW+?&A1Syg?& zljoT&GfCSt?M#v`lTs3%&SVnWums9hp)4XGt4Tr1CObUv42U$Huqh~%MP$*kgOwLi z5L6HaK@kuatRk`(K@bF$O~sA&`~T0m&oa|VioWmf`@Z&CBNXB2^+dW3Qmfu0%!)Fs!@&&79)Z9S4jF&jA>s5{3_gwS(_5b`)X>7E7$ z#BsA`u*caIr5MEXXj{V9vSxeJN}q|g(hU&Kxj$r0kU(VZy(d=O%Wu;O+2?o0gn7(N z!&B(Yr#-dFMIVqUZ>!d8WdMYGaODO+iqbQBAc`PzPe@L3-q4(8vIyLEID!s=*?&lJz-Gm0K z2GL`JYUjBxAXdFhmGi5|>LrQ*?AZH>4YS6RSRy0prbG~-P9k(%2aR-HG%xg+ym0Lk z^ZKzf(Z+&#iC-c-GB1H9e*{`a8Ao++;Sic^OKJDC?&3Qby+vzs^>RP2%`P5=%$R9; zLJ!HTDYVDEzk;HMdGmga@;(4*ZHrf6mSvWib&{`R#YDF5amq7%w1<1kFt>mUN@Lx_ zvBGIc(25mfA3ICu7MTC9Vtx%vyx8inG(R{Q)=<`~A`u-{;~3b|!W0}jFH8aa#Q<)m zVCsqrV}nJ_%|8s6%%CLM(spKgge3*v@B1?5h-$~ zUZk+|gR?B}~yh`_d$VGWx(t9uP%*NBMzwtwG$fq;#q)X`zw3&Rd zvp8Mu6FHg*;Gd2DA1UE)bNo>QZ;ZdvPL{{?JV{9AL<~R@ivlE#C_r)$0jLK5s^P={ zvSc~5HNwd&)5KaJXFNfGa_gP{SdVVAw>qEs(#493MCOc)OXN%vV<)jFygjh+;rh6Ih`vi;usA0FGoJ4 z-XBA4pDp$N>9F2ctygBp)ca2nQd95ssP#1(@Zc51l+_ZEgRGh9OW{i~30G?HsGC`_ z5z+XEWMy3Wl|o}DQSBNSEsW0@OXGasun-3VE+7DQs4aHrIVk%yEH@uUC8~YQJk!Te zrdpdP#dXywuFE^rA7Ha@ZDBh9emsEf+K2zn4K>7xh123mlz(G{CeG70Z}+;;9x zf-{TT4=3xpr7rF;$>5GaHwA^;n=0aFZls2LSS?s-o9`ITU-NwIVy>TSqqQsVp}|yX z_SoL;PX*njHqX8Tlinw4f!S2KJ&1cNI9-+UTdS*VAi@wupcyTi#~-KyA~0 zb$*G85EO&352DDSFaajUJ_5=P2A3H;{-czyAjWUjqfGE*djiU9YbaYuTJp zu}oNJ4+^BaGl<&Ug4RFW%JrOdV!@9QZ@w+`W~Lo0qz!x z{T+WlL%HL#`?no>6P`G1-flei*`JOVcG%&0K&-+xN#`8!G*#GUI6L%&fI56o2S6B- z$0jB6gL_T2x}QQr&gUIWdt@*!O-{AE<~3-q%fJK4#8k@&%Ujz!djW|XE=2<{V*g{Q zZk#ZWfhIqRR$Q925s29JL~w)O@e*BX7**|j6tv2}9>P8Jcy86pGfm0?+=YmHlZbmD z;@&di-ag{qCF0&I;{I5~y)@!JD&ls1cdF2W0$l?xBR8k{P`J;ExG#vfFZbOkT#Z&b z3T-sdkqbs9#Z|BEO})0e3B&P@Y2cH}kQCg%DGhrc8F~JTDdRFRup|oFS?@ZeW!6Zv zjZBW$>B02{2@Qtrh1Rc){tfq`%&_9#qo5SAR3#U3eAiy^qS(PVRA0ne(hD@monZ0!OV0+3!MyJNm)-DW)buH~0Y)e^Pb@&}iI|%Nm19Pkm zaK09tat}bh^7D(Phg*d*Y4y6?SKxk(p(E52q9AD!fC2rT2K`Z>bAvB+u9yo`A_1-( z37#e*f_eC+*ntq96_h2X0@|>zoRj&@deeU!v;&=Zm9&SEw!C^i0*5;aR7}EtJU}(_ zQS<7#f3B@Bw(&=GP7?0|&|Jt1-=N#MFRll={X(hZUABIoI!hDf7B=rf&^P{I>=F(C zI>Kuj&VvN-O+D>&yvOVOzpL}VTkF@h7D*A7A1C_^B&Y;q?sGp0FK`x9Q`pys{cSV^ zy}Cgs?q)Xub;GL`yl#{Z?RIRu<-9WXjZ8x=oCaFo;HomW=VG=>Y6q4jLJ0IZBOJZ#q_p>&M#qi8b$}r zIyz9H!J}qcY24b!BXU>c+Y3FcQ0}t}ppks1WFMQ{XO(a+B2p38Oznd;cwuPHIRG$` zn1nM%ikuQQ&P<8tq~*Z$(T0u&+*0;xudn&;3k zI~_@4H&w)TH$t@=@k1d~p}`GC-0Fj6EXJdhyOQVPkyd3#)Ma%E+KqX2#;zU+50_a8 zboYYow&E_dh6WHE7!e%IS7)$CLOixRN}nIJD?R>Mk^mWM@)O9Xzc56&?e0!gZgMz? z>9hUWv7N!Yi-mU|XJ!t@4|*{u%B65&@^W96%4{v?@jnI~f*`yPK8d%Ep$9V$r$o;H zw#1yxbp4BKB_C^)Mqii))yb)!LEGnBh4h?4k9#wd9;`|9rwtR;F=tC`tHpkrO|hLC zrP*1RCK{X7SChb+MhW=zdlxAE?FraAHS7HwBlH?DpEB+`aH zzJN8p4=Q;XZb0+hTr*90b`ojl}ax{QEwC4yOQRz2=vZ3pqb+;cA8`1CIbgZ}BC2`uu4) zy(N;#zHuN~`2;@8VD%`YkA$x_=23u%j2}&hj%RKIuP=d&oAJX|NH#L?!i*qhhK>Qc zw-g~dGc*pW;5>4j2RJ0LgV+;61v zbkv;e!%M21G)?NHsWQ@bT_oSj=M42Yu)0oE6!C@$zSC;eASOt=BU40v69QQM*5cebzK&+FW42SzofNW87P(iPNpsI<6>*PYv ztd;uqLAVZ%4B5X&hGgRoJk9h-?r=YqIVJ8*_JNV{Ps*C^+>dOaWLKDy{RdkYP|MkF zsF`35apFw{$e83oa*3PA=&9Lt0JBJD+E%8KBP>Nk3nHxgr+z`Ty4I#`j2-jN9Rmf~^!A#BV=*ie_pfI-z)5rZWi<09RS1CqEq03$Y zS!u#i{GdRU>wx4wkJFaD#SIetNjTkj9_-P{{q`99BcJ&2zO zn+?4g6Vl^pa-W{MH$<;%LV8%csH4YC>l5W~<_Dn1JmG>p`5iZZK96C~%0Hizg_T$?G3R~C8FLi7^G(VAvv->_(zSw z-){_lpfUJig1s5&C)Cugt)gW0Dza%(qPh}a^vcd}$%)4q$@l!49`GO)+Z*}kKYPqW z=j&APQ*O1#PNC;i{Gbosp9#sFTTsEIJj-6O^#rQgPwF>J>e`x^Ghx>^*6)6#rx@wZ znn<&4F#^YnNt`M5=rywG9GX_|4sg8p8 zhB~_a)aUqF-N?`UTtCkn`}yhdGvDiHY!ko8j<-$;&ht|*dhLIZQk1++)Y0cHR7cs{ zOC9~*;p!OhPE*IG-UaHI?_H;k1>QH+G3Y&_j?KJh)v>wvraHFp?AIl&Exo)thP;wG zw(_=D$JXAy>R9LiDtr9W=dz+ zF7-m+9H7ymw~V)YcO$Ms^bB9=0Bqeyc=z>a!Idk~V4c&b(m#ctUK13mYa5Qq88ui^s?94$tiZza2_#N6-aSh%cLR;!fVWSKkM$6AG zwA(9i+R<2B>l+NznJJmuLn_cpS0iqD^Kq?*Le^5Ffq3gBNg!;9D7|YoKo3uiiV;G* z_2>}@dP$j6)%>w+n(vfpAk+rqNm%3R^Gto!>*_aIU+0?&%IC-Jw#SSAHskw!f4;+B z@zMka!+1pAC6OEbOcb&c+W}{5Q4D&-%*bo?!JZX!bF{v!?=cx1a?7xo`D zh3%Yp+&Nw@{#8R{1Eb;bh`e7zWCJ7M@rbM=kv;9cw3T<(LY|5^<{{tlA~f+hLRe3& z_KIsKXw9_Omaw7V-#9g5gJ5J*25MzB_79jVK>!}-|9Yt?!UuLdovMx22`&>`z0Mf*7?7b1^tJOvjES?(lC z%U4WuD>N5o+AHpuKsiiEtEG+>Mkd!!P}dXE%8?f8i+uyjo24c0ESj1Cow*R=SQD2MpKRamtaVS@|`m?0fV~Q~efUG!QAG9ng zgDC);c}UDPwuL@uf^-cHwEavC0Ij{H27vZGDGHdN<)W=~GDO>fE$`5CT#Y?WTWN@C z**ralN3=Pt@X!m@f066N+6fhb%L^OmlEFO zH@Ldkc$NU!o6hXb#%pn4wHz@N2byU+_P5|ni~O?|FTj_BSq^;L@R!HmEd1dL;F>=+ z@Ok(fz#q>waCK-A{y4+42mW|N=m`Fn;_nmqI}U#*~j2ZV15JsZpPox|KLaXQj{$SSc(FVirzf=-CTZmk>5S!cSL@Vli$;L-PBq{Jtl@O@AciHu;?=zq`n z-4LGZXuodtTexr!Ai^@q#hgOx27qY$VF>NQO@<$VzZdYwies7E0OvN)`wY(i;QK4% zW*qm-&8Mdd-3tc=WA4IZiSY-a)i=U4Vz1(_7f@z5RX9N~ zhaLe&n8i&=WA4Hog~p}}xfgC|mC!h1;RymfL4lVrT8E$X2@Cl;QL0c`h#kDKp$Y?M z_<`LEpOV1-g)cDh00xRQ$x_?a?-962fD{%5a%1dJp8zQl3j7y=c>z)Y6?iX!mH;V1 z3Ve*fKj8;=Sp+~Vw8Vy(70aWXDkgSN$A+L30HnYw5LYV3hHeuerB#6^5{OANU{U}T z$YKv+S3iK1!3d@+KsF8qb`W!k0NFkih+DZ({{mzaQQ$gM&k&ReXtKp9@J|HJ5FneH z0v{$YDL}R-1wKmP+xW3OHVy?oMc{J+WSdjqjRZa-KsG@I@(#wKI|ayAsK8GX2-6ER z=lQ_$sY4eCgbh^C%14%#TOM1gdY6<=usk+d_3l|Z7T8c+9H<2fezAh2~-* zQ!HeQg_dHWwOE)`EKDvIrW6Zp#lqBLp}km`RxC^}7IMWxPqENjENoINIK@J_Sm-Yn z28xAEi-q~cZe-_7?u&^hJo`^b_Iqe|*f4n-RW=tp36oXWJuPP$fC@6prQ8>I9w=N- zeNj0Z{bThecBf{&7Bpx1G$VUlGd!yMIM$t$eYih?$6&Ih9&-Q@>IDZ7M@hv_%Xnf^ zyfPE%y61qpxuEIsMrZL7)i1MqG5gN8jmF?vUN2PmLrp7ihd)!#2 z9RP=BM}5x$sd6*6h;0N%FNe(Ca2PI0Xs;sS-EX|ulXNylFlOd)!}+Ffa}OZPzoib8{=$@5hwL41y^YEW;-voq?8J~~@ z1%$*m0ipB8CnP}uA@PkzNcX62gZj9Mb?RM3s_Zvv?ohz2P%NAlicbDy*Ccv#*)_40 z>^Fon`T-9Zv{0o_eYpQF;5lf8BZl^xLhU2O@u-`ZyJ07&P zU%vnvuKEpN_$n;!ZH}x)d-P=Aj($&GsO`xa&rVyFA{7eGO8R~H(+&D?v)6DSR$8Kc zx9nQ`5VcUEdIz(JJW(Fz;rnIE*{G0rasGu}22s$yt+mPB5U27wl#N@0iCt5mKYR2nW~7-nNpYZCl^kB+T8%o8 zV+6K)IBHQh@|SSgB?HXM4g(I{ZwgCxu zTl~PiHQfvG)9h}CUpc{dF&KjL%+4kFy4wR;^~A$+C@zMrY4`JB1vd4v z@5XL{*jGf(q(n_cB_g+pkKW6*a*;XNu4SCu-qYb8BD=zz#h{ztfg{4?*0{y+Igx%{V* zj5J6)5{uX0uT0{$`vp=LA~;DDHc;GIQ$v~d<{~9)=td1+KaI;ktoH*@3+?2aA(OtH zETzTvTw^C=3#{15eW=I4PR6FFz)psMejq!U_L=rAlwz@ycZNgkWD1EbjVrH~@$LZV zyrIbaf+Z$mO?9$3OPy!_veO)FJx=(}9eeCtxs9kIbL>{@0`(1qhhwXIz zy|;3V z;ji_voI3L>WpxilQsL^&ac3AP7KN6C&{+nG^^}7Fl?^3qe`d8Avj9q~fWGb^Ajkq0+qsXB^$~F0`XNB@ z7p8Hcd#fLWiLb*DgjMRbIW{Lh?qnZfishUHgy8lEL~irLu+V*Cly10Z{zgcq%p-aC zfD2X3T;cZD=jp^WAe{fA69Y{+o8E%+32~VF5Y7R{YM^1`u{Fx<>73_2X3kS#!O<0|@4#Ld zWyA>iA>V>vx`Ra!B!Zb0v_=V4P-N;v@*s(mA@zw9W)f%q$SA!o@cbZugxTektTkal z?(h~2B{|;XV8$#-trH^~Mj$D$B+?t}h#5RIht-RG@kqNbV|O4eh7|?9=siuh zl#_E0{O9lO;as-w<{Y=#=i_i*+jhCJ2R6MroH2oMQ;)#ta6TlIKbkukM{q-M+edr7vDd6)*b32|du}JbWy+MXX~_ozp}4nMu57Y-?^! zt^k+PlD($bA`e)UF=t2aLFW5tF(B5457pHn%@p2<#v>$`U%7*JYNSt%D^|NgCAqygLUxZ4194N`~<>r0ndSe zJLiEHRo6f&0pw&rv`!kG`TIVyDRnLT@*W6%*oPzM4k!n*BkxCH7|bj=FrZ=Bg!5yB zQN;&m{&*rW0I2-}c9I>!PH_N0J_tY@0FVI!5C;G(xd6lg0E;XDaR9&)3qTwINP$^t zT5`^F`e$E^41W)~gA9|Tdl!rKkOD|j0gotv`BcFD3Sd4J@B;-fp9*+T0nCN_sJfW} z_os0CZDL#4w*2R}2@x1y&V@Zj&M8Ra$hinp5Jx0Qmue_vsgF<1`{zdHJF@xR_;m6-uQl z$zWlG0Co?WnC0C6^9{j(E75Aj(V1p4`Phn z7&J^KP&@!lMoMZp;5zwIJj$ME?9n9x4Q2HS$xRPLGCSN=k zq^10ZbT`VU6#}+P;!CVi=1T(lG3zRol`DP)qyL0mScIYfC&JrZBxfK=BvW6--$&&j z%%#>tB)y1On52;x>WDe`s;$j(H#|)zWze>4<2GXbr(!K826PIuB>94yoRIY4X6Yq5 z+~lW-5Zo-hZ~$(~p9&%8;_mk8oBmTsM21K0DqKoh`q0uontpCUhsv21*0mzc*97|z zm(s01xx2ZPQ~B21i6Nl-O)p_Qg_5s5xpc&+dTCD&hpqK=l&{7j zTV4-X27s?CKN^%jE^U+s+Asaq|QfHu#T z{8x6`l&00!L50gTtY#cQe}*fsnKh#9)lSpuTy3@26hI0J_&ork zALFsF1iV+|cEfdM^&C1QQKG`$lc|0h!Abdr*83cBbJYv1FMgBoj)I75pCnnbyfX-pwRmjf&K#%Nv%D`5%x(vQCz;i5M{;a=w+B?TsOyh; zn0H#5KP9GEnotC*`nI#YJU~(oTq{JL%b1+U zaH`}<(OS)8HPYl#=BNt+CNQU8t-HUVDzFV9I)C^kq=);1f~mu|0RSV+`IE@(;kyV3 z&!L39sKW!i#!e2qQisQX-2taSm10|1JL z0K@?Rr9c4U0DwXu0C50784!Rtik8FN=Wv7l)|OqibEPIz#Xyy+X8Pg)KpFu7;$Zz+ zaz7NR7&f$?S9(jz=$}`5M}3@-JH5`V#oku%Z$dq0WZF;FB-^OU1i%U z;i5`;?_f%7>`kr#xnHEIlZFaNA!<>U)_aIs&UwxrHw0-GL9{Rur2(s zEaG2}Xyv=Hr_WlO!$wk zv_|aYNGdsU;F4iYRreY065Hdl@Q$ot-=EGu{1Fv~evBgRvg+ZcG`p;LxGA~rU(`(* zb=d>}r+B&)0=OxeE-M~xN}6k-R^g_Ax)d6?DR6FF;M(?Oe&cTl^zD-;QRkdvfKJUVekHGvO zq6t)^Ewq*syfznT2)y<~9ouN`BYfM#n0zd}Dv&2Qg9X!&8r(4DeSaEP884mS7BC3e z@mR}Q7ithj_Igo!xYDg}6`k7g=l7*=(QzWD+Uk3FGruEMt{1eSUuM6jQeg5NsIvLU zE_*v`IYHs9vnsFJVzJ*-c*NqBoZu!Y+oAnr*<#u|ZK5>P-A*mQzWH`4BK+fG$#02_ zJ?gBQKci}#$&6unAM<-Q?<~4FCs?-grKS$2RY=CY3jmMIFPfy{-Ya!*CJTbw|HV%s zuYjWhz;p#%9soKOaDM=p0RV?(UjT1JD~khw%YA@20Jzczhy#Ex`2cYMaFq`b2LRXj z0C50toevNP05|vmafq!2361fbSUBEwUIHs+K8oih*-z_Yz zBI{3+VQz|N`$8I63*=$D5P$<>Jbf4furA2skO4pk$?SXV*q5cYQQxYIGQfkb_z&!B z%(zMsM4M2g0FY7$fE5e?3*u5Z;3fxLN)p`6mdiSan|XFw-EgynE^8WY7S5GQrhL8u z9rX>`jz&j$Z%`0KMQAb|gP35UgsO1r_>E~g53u`~t@5ndAV+@1#?QO=%>aOf*-DOa zX!|AoNc-*4Yk8ahiUfjdd12wT6A;`ei!%$dY2RRTH+F~}Z0T3drDe*ucS6Ekw3AKK zK4HzpxO7cqkm~vLXU}w!}c58soFF0(>^qKtdbivqA%W zw&Os68{yl9O zf#%8Lfer|h(C!GQa$<-mCvgD4!U#Yd0Nm^Y!~wu9K0q7*-0B0w0e~bzTT&e1IM0ss;Zj14 zs{-zk2i7RrH_9DOma`G^DBFRSKLKE*dvSUZl3UP;fh*&PmrW*E_Ou)a7+6dbF6on5 z+6BU1m!pH#Z-At!G%PN!2eabNAX)TGO;Au@!HtX6+eine%2*pRVM)T|?AQ4v6T|@k zF$EwF0DMgO;)J_1gEb@sZOI=tkmUx_ae+^1!h$OcXvW|Jag`@qPqOAKnT&mK@zPnglIkzkK6f39R`W88cIBA=Oc9*B*JQtcp%P4>M}@# z)gbYNn~zjzHdqAKVDS)NfR!;=1lC~juw8(aHCP1JVDao4`NROL)nE}= zgT<440oEjgMPLmUkM;#vlMNPuHCQ};7+_5?SOnH!@$g@O)n>2=tij^JzW{5h!6L8* zizfjCtagJ%U=7xLQLJeOi@+Kz9^DLRO*dEs)?o3NVSwe!DSeE(TbR!6L8*>(MAy*4K9A)>Zm?QuXhf#WA$M=^VLWB33|&r z>B~8Lf(r8%j}60);=c*v8ZDftN@Pnq4(U9r-z2qB{+2PZAXK57LuLIfhFjj!X0F2RRG?B;2$WhCkT~Qv4=GJC|Rf(e?(E5-t$p@s(=yzd3nlC8I9vx0m{#T z!ksR%(@F+M*y-XjSUlM2!gIPf@8r+h-vN8}zn!<|HooY*J^d5S+xuzWS)XRd2i((v zwF2%fjHXFH)9e^$tw1awN{e*M;y|}dAt`p! zKyeX(H~{#L4-f|c_xJ#D0PtNOAPxY&=L5t6z`Z^|901(s1H=Kq_kDmk0Jz@=hy&M7 zv8~9x8CpQ>^i>CLag+--cr}&a$h}okQo&(KiNm`U1Dum+pGn~bhlM8&PBVl!a`&R} zLvY9s;_&iPvXU|`j1mU`YzqPq2LKd$0f+-rsFe9`sD?8+g-VZ^LKP<>P_sw`aR9(J zApmgzAT5A4nK%GoGZqYS0KkSS0C6Buw(B5KdQ76?G&&3KV8_16adk(qk9J2$jIT>; z=EJ!wKMaV>hwoAo5Sb6>j{Go2WJ;X-@xy>Zv*jEPh>XjlyKFQ5X4kCca9=&9%-80k zyKGy01f1#OR(D?bq}xky+oRc`i<_UheO+&7x&iG<=fZn%`=i0Ysn|VgBV%UtC_o}v z#7jWjpB+hHn&oh-bp(Pz3wO9jAUV7vR7(dJ+ME!@(TM|Y#-s>4pF)_9yX@ExATa!= zLuI^)fG|uXux-0LtD7S3?y7Ezvio6mQ)JzbsGG{c-AUb)755}{Q+nOQ)J?&4k5D&d z);&_)6eZVFH^s(1MctHJ_h@xfWZh%cO=)$HS2qRKJrQm#Pa-zY!d+h+M>(efnn^6? zKD7k?dhvI`IDfkU&dm<|`fmEa2f^i)GDCO4fxF*v*2EbDS>cR1LgHSFQOVHdA;K9% zAiID-p;ZJdN^=w{B$g9OCIW-fs~G!4FscnPcpHXKV;M2Xe9)kvD~(COm=rHe8d=$hGEI?|ybP9>wz_vl*D1Cxn31!`v4hWK9^_O-Dyp#aE zp5`M{2ukw;FXf=r6?iEMcu=l_UfVo_qLXy)XP{TJsocOMycTpWkdp49)Ui!IsitVf;i<5wJFXdwV_27@3*&Kh<@i%l9eypU+{b+b}Kq-|_C_+TEpC+UeJ`u`a(U-5zW`7pEfChnVkr!HQDD8kTawA`6h+Dx7^f6e-l?;&as>&3699*xJai2w& za3&l6!d~5!y>1w$c%LK)%gbDCaxS2#?gMs^>00BB{e7Lx*hajZw2gQXtRO zeyGWmuY$f$RDt&CFC%ZhtF!ds9~T z!H{a1t`Srrci$1YI~ZxXY5ZWj_sHVOU^Dd?>(Z~oC2(_Z>I(d!3C8Zk-yiYEdgk{y z^L+^4p;z&fG+F1$=g^A+SoIR?n#-R;<3wzey$>-pG)qZfaS`r2bh;hBl#);WU9E6OMpn)YFK}tU59@ zCxr|r7YvzjkR$`6Mq~!-$k5{Ko2hdKFnH;ev$4+Er~{d$N%oa=Qlv3w>k`qCS4Tfc za&`hFX~)Vr*^s1;#>it%Nd;oI|me z(;HT&j_-2wF~cO29@cUi%h7Ne%w>?}gon&-o8)LbGda$TM3bW-O*p4RqHv*uu`uId zgG_QMk@jf7^YSFaskKeHwM_x4TZ^hI+K_eX%gylZfvs-4f5+(A{*SiD?P-bdSJ@2E zmVSl~6L)JzVdmX2Nz0B^@V$v?Vc~?mt2r%r>cLQ1eRzIz3*Vy_7paVEvudN1tvrUq2L#8EaJy6nvw65u%-qeGh~b*4*mt215?k>W zyo9?7VO!C7O1R&ozQ(f6R{-k67Nxj%F_o|4{wwlODqMXLVio6)8s3u** zvoqoTk&KOj5f_n*M@FLJG66MICFE>8Lrs>1r0qCBxal$D{*F;UWcQSlz1khTPqDxZ z$XCHBnE??8 zaRBg)4-f|c&-wsy`~(NsK+F9)Gv!!v**(HXHSW=?RP}m^9VIT?oZ(C7K%52-ti(saRBgw4-f|czx4s)0N_O*APxXt@&V#NK6!@V0etU8e#5;r zmJ_Ozdysr|8qjh=)uCbGOrYgZW3BiJ6@`X{lYuzP$1qVM8Wzq6;`AQE0)+||`2KNq zs4)dK8J$Gq-kV)f7XHKBG?`0T0X3G!{hGR&d-pbVGZpt+>SoT}Z>XC&b??Lv_HQ-G ze9V1PpQOWFQUjN_S55@}0WCc>zG$w3mYCaosZ-0Chh%zG_Utww0$r7>5U}iQRPy%# z@n!oyVEOL*nF&86>V}p}?ng;i}HTnR+m3t5YGQoK6_tY(M zet;~|}zfI3$Im~JR?+oE#4jwYZBFdMUcOC}Z$i<$> z&;247OrCNfZE+jRVX}e0Pm>G$*zm_>*mfTQF^Z0`#fXlM+4qprQn&mVIF%nE0z`%B zxDTsa;)vK#LJ-JA-5;x)<#T_cZYJhFhM(dxV;H{yF))WZ{z#|oJjzl*Ko}ynhByFV zI6K6uLFC>W=Lr(S?x^4J%lyV;C$Vm1zWvt#<_6|zsP2xP3CrgvNTFx+1Po|#wt2Wp zhZ2g`XgRD2l3Br_yYo}TWFNU>7|4VLj`Mwz3rPp#4fb?Qsq#25z!Oq&nO(RU$$b(( z$TISrh+&K?|8Of5#tpRBe(pzgUIm^HAoHD9B7n;Xcq0N}Gk5-gpZHe4h0TuKR^Ef* zSp5^Z>-?UWqjY;8M;Tl$sY|A6g3e*kTMS|zHOOWDyE*$lP&N=LI_58U-UXERo|bQi_r82Pz0~G_ zySVN}=6|B^Q;E!RjL=hK2x^Yk0ABe8bFAhXnn9qDl)tNh0fGMi;;sjOFT(%3=N413 z7ttObpx)K?O1mq=kwq{FvE<`|&C7+M(ZpYh_Lzi&91%5})?HQm9@ ztf`LmAYJQ0X4XSE&5^0#Fh)i!Kc*XuxV1&n2qZWd|GIx--f0gSJ!Q!X+z(J*JDi-v z-Me3)P-5agQ=XUfZU{VcliuxtXI9etW#Gw|X67rn0Vz}L&`+m+y7Ysawx_f2O|c*N zv)>Ph1AsSufH(kn%Lj-9fVX{sH~@IZ2Z#f8#(v@meA!O~cA{!8Gz=OVszhkX!H3QD zR2wdCGJ+4*7MrV!TZ`bs=6c*6l)=oF^Ae!!Te<1e80zNi8Ey1~kRJc3E^s;JGtJ1& zbBKs;f!ff;jY1ihDjoo;Yxija*a-k2>EbS*j7t>{fMg4YT{12^0od))`y7NGCMYs} z7?jatd+(wS+~)x@#4+n2p-jp4n${uo1qqduerrPMvAuSNz9^xR>`Nw;9^0G4P|Q(e zIF1fd<~UkP!Gvh126Sm`1Y|HOxB@!Ifd)!i{+vY!a`H;*>a!p4@Dm^irnex?N8dH;+JW@HVl5`L4r)l zNxIXJ(kb&{T;PsXp&eqTDsM4E=q|D5HjB+`^_sTisaPXvYDxEDS3X>s=gfV^y|K;A zea3i;fP`!p8__bnFJ3bF8ayjzqER(~XnWw=J09GCE(`LmX9Gs_n1H<)rSQ&yOWqQ| zq;2;vC}}$3zJrfuI4$KaVy(i=n&Jj*xgLTh zOYzQzS04xhHeLS;d~wbKn`MTXSI`GHP2l=7@tB*=5ENWoK|Hy%f(L|)fBRt1A4?2B z$>5m3w8I(Tr`VwgUjOakrVJ7h+iw~0_|Gq?Rmk{V_z%EY>B8mP;r&&Bn4X1yrniTDXL*OpceZIjID%UtKriUGDt`l$omQleBM5OwirCGnH-5zW4_jC! zDb{SCHLaMG)|O4VH=uo3qm1W%3da`m?rq?9AKrNq&{ugcu(Tm}3*MA#!0!U=_DC4x zy9>Z#w;mTfp#C~sxB=c_N2t?GHraBSv0OYHq1T`FK8IqN<#rd#gUNjVG~2~0FC1C# z=RqJgmQH4IjiNXW8B@vF)0CByxR?be66+)tyVv9a2Y~={-vh_WU_vByDUAl_+f()uK^mGj^vMZI9(VSM1I@C%sp+JgY=mVarO%ezH|X1>CXBu? zY^$0u`ogfqHDUCHVSCkt(HDk&ye5o369ye|419WfATmZz7*vf0(Gv!JDH=qN38Ktf z@&ef@9J6|N6OV=$42ii~d#`QJ9mJX9VH)ado8Y9GX}{cC#kDKTdzUmgehb=fM{zZF zL+Dmp|3w4>Fb)@NUcpDdE=ByD`cu{;*d9Z=v#ff$c!2Y}^>hg!U1F0i{q=Oei?eei zW=`9&Uo@9H5gb_$tGth-5bt0X=0YOxEM#0ifIXiEN_TU?r{w*7q4y`32zSe~J+T)Yr<#a+i zvQkom+OY?fFm`{0u?uTAMB;+kKUu#@c%;-C7bHz!BtP7q%C)CU$EVVj-yrkt*kZ?i zxVbIfmS{^>uxlsT4ilPPd7BAq%eeoBW@$?!a$3o15`%ckVYsCf$3~~@B;4ZPoF8s& zO8_fTYH5q(8*js;VLM{Br50S2bbCS6Tb5`#$)!b?bT^@YMd+Vb=XdD8HViM;g_r95 zeRckFtzUG1Dh87~_ORIQlr9-t;_7)iKaW0MW&klx{|1xAXeC+RJn8L{M0cC#kT%(Z z1HQ19y)yukjRocDX&I9U#5<4Rxj;yIPtZxF9ii^Y_~5b>G)XW%z$C_<1SC2zU|`gg z_apjGh2Q%bT+ZGAVohjmZVL=&qzQYg34Z{6k9#*3ntIJ}A(e`ZLTJZ^srZ*41ZBo4 z1G+0oFsaD*WjwSY9ghXf@P3VCO!n)?WBs+`F=?L4Mq);(ySUlTAC>*2(WnfingZn% z>y2%FNUV)b8RIe%v^lLJ<1%UQ(8QS)cy3b0Wpxm~ArnS%KEzU8VIFsw1OC;%^Pre- zf?hAK0d%$lLIp-Zrs^P7@FB{?|_~OKZoHLN;sWiIO%bIt^J{y>{g=v~&owi%)Aaw&Sj2M!JEutl7Pz1r6`|Qz4H}0~sqog@c3x zLl_jte0B`stbMH6{ULC3$8Ps8+$y8?R?N_XK*y18Ty8hl02j{ls__m1%^&d&JRJSVO+hAV;KmPPBH0hjJPx0 z%g{Xfx>J?{oeu*enx^ZZR!WPk=E}YZX-~8zDu*IR?h^R$mdyx1@myQ{qGQ~*khV1{ z0umtxq<2BWXXMsztX;QGvE07^-kuyhs? zS1<<`2_@I&&?Nnfglc4u8^c3MOuHu|`)L=OmNIKHk$Id&n^9lL9E|M2dIFwF@be$x zhv4t)aI~TwW#HyN>NxC1j{O+zs*(fU9$O@VHIsBd&uv48@dtal@EnO3Rc|S8KU9sp zd8dQ?LdrYZhvZV;nZ8?Ea!YAeBsd?5tij4ED?R!NFj*urEy}@6T%GHy$kygQybPri zSID>O$T_jG>r_V;Vb#oZc10bj4RjoE4&#`{c6J94ud82*Y*lUq2bR$Qs_X}-(Lgx1 z5J-pQAfAgrLVaZ9JrX9^Ns)O;*OnKaA0c;xg#q_L6a^c{+;8Js80c^Dj@=s< z5$T=R9K&0&g2BhFTq5`fqb?=Krsd*oB_<>~b{D9xpD^E8`{QF}Y}qb$R%hHM{Irxl ziCq~MT&>OSr@%S4il6p)X;)|~Y!%A1Cz^$aPyk0G#KG#lwl+=LXsNDb$Awc-cRe}a zodi5gQ8nM_{tg5{MADUiIwcEET|7K~5>N%u&=N_Jbk1&G4;$G|k0S|Q)leW|qK zC0#rp4NHbfDJe>c{k68sLtHFyA<%Bp?uy($Xw;CP%Eb4xfx`}&Eh9p+7)u& z0#{3V^awPPzOJNKYH2ztEy`E5gWC^%-dmcT^ga`WL=}gIgH9{xly67YG0<~@`c8T; zBAUKB6+FVK`JEZt|76W?vM3u>$a>g;mh5HvIr3i5%uHz()@#VjY-+S0*p^h+U@B!- z=|!M0@EPPH7G)sjt%P{MtF~Bip{Bjo>}S9hGnidsSJ}=1s1n>zGR)63=M(&3w*l<| zm)&Lch)8!}3#ZA(`971x z(Juw9%s_Kx-~vBT9LPWCS83KgM!9m1K!(fMZ*vecemp8Olf0s@ZyQV-++Xl68#tyTu_4>;lnvBqhv(7gZB52MoF5rX#`)P#ZG?{^ z-Y-xG6%Uj+1#t|%I1A+RlW{%NYgJ&L+EO z!W;U|rVnK#yF=(%gsMHZBl_Ug%+H4Gu_2Bxq9&P?pe3Ec{2Lg6-S-*E7647HK7hpm zAnOCXIdEymtQUq#xq&h0W8_4)2v^q3>rH!$5D*EL;yaU|0;7ni81C#Tx2EH&n_Oy$ zv~;W9fs*9qw9^L^WNOLQTIy<6PA_O{?tb&Bb!QATTbM?vlIO~|w6a)ig{}Wd1A3aS zYqCoV&4yx(HZlJ#$6qJ@F2~AY*{;-lN|BkdOpFv)$tRUQ8BB?st zQ@Z!GMz;pgmQvX6WRw}N(hJO;0*~83VhS(gFUAG z&Mzqo%n`avVuwj((fc$x(}9ga>+!&_^=97`7)=>OU=D$0_CDwXnK8AeC~BsU&c}+2 z{60Dr`w`&3LVDies3O0Qu1&P1bP&ujCfb_xmQQLrsmmC1&B7LEA*z)Ion#1GADYD! z6w}j$bvC;vB6s6$|mN8ciX<0E%-Mi$6CGzf}KtzriO>urP9AyB6p92=XPZu zs(lPYx`5|g1Ttd3v#!E&KFzaE^jK?yidA@fK@v>5c)ZXHaW>V#3HzfF* zM!d)(fXb~j!*;(6ixEbv?cOL3EO&oJ99eH!P{)3mYw9);y8zq2h4%lje%tWg4;jS$1T8h-CK{J1Yr4A#*5THswvZ+wa$nt{uk z5_sR{wdIn?KA?x5n4f%QF6dVGhEv*-9o%1S+GjW8O9LF;7fAJz))xjdmxAfx85uJ= z&_>F$BwzB|;+81?ft*i}VigW@u_T?D-f!C_=w8lWp^Y*-Nq1x93Wjc@Jb)8ovSJ3=5HJ|wltmXTIhVuvlv6`jRPJ=nyjQDrz51cz=&%y$f zNE<57=*pZxm9fP>T7_;yXd1DfVo%++Zb0Rbt zSwRT_D@Yin$BpDo8KWaCQCKzcvbOsWgb+xGD$ezy`rKffXCF@f$tVYyA44J?OZ!@q z-V0oI#F8G9CbUbSm!hCiXkMV`z-pj{ZUJ9Whuj^D$6^w)a=nml6LM`3V#;X8o`OAr zJFMHR?lY0wDl=oYJg%gWB6ofixY6L$^H$0 zCjpaxgZLXd4nOI_KK&m`7xwKxb?6{?0}jmaZbVMf;jFMX3%l7XWu&+aEk^ish~#Am z-KvQPZhU}vc@ytlqAm>R!?!{{uy zsmBi#88vPqr)+IZT+G8A9QUHKw%-NjW~27>Gw|N%nqee3L3_HfaeL}QN!c#g&oj&M zrSZXL8^7$ut-LfK%0Ig`$QSm|iXLvYMwwoh98xaYPLDLbq;s?CEIWqtz}imj4rdjB znPgwHWp_o~dEbr0359Oo(`wnm$QnO*qkfZWq;WHEyoW*Z=HA9`1LX1Q4IJoyRD$h4?sG~mzTKs2p<-fzaWj^qPX{@d3B-}th zN^e8cW;shCj{`I|eIy4VA@N2CWk7#DoomOIB2Q6%oWCJ{3?}lw&GA$#G)7%BJUf_=V| zz$|Wa+>Bp1f`FY&zu5b&4UfI@Q+GIOey&_pR@f)JVyEIU^wZ@e*MWpk}1XY3>{ zH#D!ztsFa>HGrTEH@@JWAwUZrsLhg^ckY5LOo>@)<=+K*(+69If1c=(zAUSpq0@U(=H> zG+*Q14phu}9n(3Gva~5q%jQ}ty-;WE@yaIrB(Uu0I&kH%gt!BeO|~Uhh9?O)_rKMZ zDVPQ+d0nBS<9Bbss2yNKVJ#yTI~jkw;17pXV+SJav*vp(zC#B9fTaV6J#%|Y zTT9{4h35blj!!MT1dgH2>k*uVv!R24FmK^Wa12eWM+hh!zVHSmb;3fFJ~s4vvM#L? z7h?A$NmUkN{)&!M7CuMJ2L#jGkF00Q**eX-5 zrc>T01HiT5%@BGXLeCDM&oiM#3cVfB=oTWimeZ^p_>VfyYnCwt<4?% zog#OT3rJF1a>OYDZWKEKox_`skFoj@7%6g_Xed`S*UXzp3~j004)N|uRjK!Trn$G$ zmzEwY+ZJyY;cSa{>Nk;cOGthQqsuUheRG;S`)4)hHg+S?ZI(D-K~zHq8zqU6}lI)+!uNPL=8Mq=&hH3#<^=*y^(0J^geZE24{`+ev} zQE1MG4n?7{HS)hL-Qn~zrPisfGIDQES1u>FS93NYs3lW3gjG2O(6d_RU|vNNLH6>) zE1e%A(kcS09I*GarK=o8XIUcb!txn$IwlS_%!u5v?af;1_DoyG+Y|XVyD2tq%jB@t zfEFS)T;Gk4Gl1NS*?H`e_U0k#8bsNrVU&)BQQoHp$av@W#QaoB6Q&X-_MpZb4ik&S zY>-$OlZFq{JUEOw@IlfH2$Xh5?86$y9zWeMcB^t%c-P)sxr7zo)?DRu)LmzMnx1`Zj8toNt>fl3_UD zu>;lqkwgCW$(5_5oRi%vYZiob3V}dx`ugi96Zd<%dbWN#KSOjV-#UVzCs^(CC4;~n*DADPigNsUo z*d~B=z|5(u(Tefx2$e3ht!O={GSz<2{aNp52wn}z&i)5W*mI@YuDNRvZWB#6VX~Xp z{;v1dt;5_*(`MjsY*u{wf_Uyw*e0=9Dn5N?ykFgK+tZWroz?xUJ^d~FV7gEAPDGMw z_=>sf(QucdaXOz?u#Q8DpHyETj_iqTd@c&nm%`zs`6wBWDdn7d0m3{M_X5y5cuvMW zVp3PV$mwpz{3Jwh0pWPS=f?nO;wbHIX^;(hzr z&Y;0v1l)E^d4CJI<;iVv88k{OTw0!E!7oJ8P>(_-2~b?J=WYfH0nvNbBzxD`y?B<> z-JGQWLuQhPow3i}5VOw|9>V?Qn0*%90Y5m(kaAkF4+9$p2JRQkdaGH)BqorSRki>% z>`u&L=`>r)r(9rXTCB8lpO!7{ZV7~xZWVcPO(xZcnH1S5Lb|$^KO;7GJKg3)etr$< ztQjYrI4;Z+6F8iOD>Y5aruqt{DgH{R(dpQhDmwt#u*<*G47QYZNJ|D=<9%j3pEHE) z#q~sMyV(~zYl>{;fwFFVJBd zfpaSJ)Ev~?%-F(@$#7ogN^eG<_|K}GlErZI8nh?lyf$=RN9Wkm6efg+FI7OVK>ym-X`qJgypN>;76EijV*(_V~LVksZkD9GCuSwg&tB1y&6!?@5W_x z0c)bo>cES6fG(+?#~7oZ!*31`)#2l8jjF!pwWBPXK_Fo4ga9E|{W<{1>uvnZu6~Ul=Mj-A@&fIiYps~m;$9Et zB-ybfcMX(pCMngk;19VhgP4aDgJi00j4Ve`3xk+?nn9v>#>n>te^6p$qX_F*lE22X zay_k842R;))m!kZ{#(U=Gk%pf@mQ6z#JU-!IK(f@#Pf$`O9x_S_KollY>YJ)1|Soc z85h2k66aBrsZVzG+gRrpq-apN+mQ6bu1!s`QXpYm#nogCywj(@@Vsk7;nOU3HZ~qcK*`VTzh<0d!nm7*<8+a zpU;tU7cds}j# zD`0crxU?-keDpP?6ViPP(y4xQTc#c^W((`tH9vgxz6u*V5;fAXBmyrDwZ#jWO%2hp zqt**Y%OJI}qw7OZs&uxw+!B_kG&S8kn4T%6DkQBC%jDbdGdLNlJ@E6lPl@1@$;uS};N+p*FOT9hs$^`cGt{i!yN$ zuEZQ2Lm8~mGx3{nK7@V~ycExHl^-KF1yf&Wf@p!sOS{*t!x}>z{5MX?f$kH6^(nd| zjtOY0yRlE=Cpog+g@ohvFZiH77*Z%KJxnPbeaO+OAvHUi1=&EvOh7j<)~}!&B)5%& zXCDp(TT)ZyAw) z(>^%M-Z)v#SSed%qja2bFLepVAU*>%WNb^6ulX|Bn$?~f+fIBVSqszAM%h8P3SSXb z1x;AuM@f!tuTij^WTHStu{7H+Kxihky#7gz~=7=I4j`pGZAyatBqnvDHptIrBfY;Z<-oA1sN(O#wz$6RXq#8r~*m* zI((&XQr$3Ra4*A9ZSHc17_|Y+iU!)CK3KFtjoAfRpwgMWV4Drm)dXfAUZXo^kEqs= zyq;Z?*V*$wv>}pF#nmXQB}a3Yn_t)vsoFv*@2Fdacg}C9f7HNC^qn{kt$I}&<|rI&js(S9PS|BDhe~JI zR#$*QCLx6k`=bXLHb~x*!yrl}gmqu}rWTY;oYY8F@KPq0^OU5+%#MB@txi*lC@>w; zjGYdIk^hIiH-VGusLsV(_jcdg%S>yodZv43G@2gSp7CXR(JWp@vMtF58!($4jMF0n zqs7?LV5?0JW^ucRVF!Z^GBPg^A;1tIY;i~)A-se*ehEtmo7lo)g?&%(Bajfl;(gya zb#LFEMK;(@_`Uysep276Q~Rl^Q>RXyI<@1;oPPP`X|`PmFe+%{NP2k~>=F-FQF}b` zg>PYe0CJJV>yTMtZvwBT)y%pBHrD?lQBB_NmuRBQUC=OYnDUdC;dN{{7O%(8G*+e0 zNu_1CBfOmQd6v5Uk0TUGg>S2EstHl$PGLYiIM<&@yHHw*Z>)`G((%EXGqK+8tIGXo z|I0{QdWP#vj|S^ow3@OqF3tl_{%0BSQPyGu8F#iN!iyHLU>-#T;Xn&DP*DFLS#_m4 zx+q9ax`j%V(Ke2I@qwSMyG&4eHnj?oi8Pgdv-teirDm4KBi%k{$(rE3+SZjG4z>v4eAmy zx^L#_UWaK!pSCk-2hmqc)!&E7O0JP!r>65nJhBy^dMttzQ=A@Vv21Z8jsW>IZ-Ixr zU^HU5uI{m#HzRyblW4}AR$F=^HQctI+9srhPHa60A?`?tehBL%eYWM)C~Z(s2Z4Z< z4|KT1rvzaKDf~$*Xao(xI=`%%>?m!X={yiAB0s?0i{S=?qdvqL5V8p!+Vg1!^3o0c4j47bAY=9l+Ohp!%nyKV@zcXE^wMND0NNu}RSf!ST zYoq-b;6Z1nyY;-)XT+G!h$hpQpVT?u3bSVM(HZBK-GC?Sm~AMD9T3b!T?NVGZTr}- zWV#i!b|*6fCS?+9w#y=C;7B3E!UOoyYz+95B!6Bl7I;sXdW_EI~a(uN%} zr5xJ%s5THX*{&b}48qO|g53U^?6FOJM9G*a;2RNr=idndkSebX>^#>9Ic3d|r0XSj6frHNH@u`fJKOCg#WS0M>7B_EltfAVQn`2vBI@lX zr!{(uOo;8dbA~M$?OEp~Cb9nm^SEsmOq7SdWQR@QUNg8pI;m%P2fw`eDvl}+q>AhP zZ<6P}fOlLM_ai*-f17}dLO?dI5Z$9b4xPn6WTLzze|uZ6!PH6=Q&WjVas6bb@lQP6 zd^T9h8?y1jR4N-^yc*Fa2ODF(>#h^Gnh3uOqDqZtSku;FWCTl#FG6$+vNwLoRJJ(U zF{$~%q~`d>mEKLY)+^~kM1CbA8E-`72NB71!pBe{L>T+>y`n{S)ntgXt~+@^#$Gib zJrWaMPxDfMaC(Joe5fX6y-gGFGidTKqD_KY?_ltNim7(BC{VKEEpF39*1DJ0x3@G7NSNdnc^E{hmsV0o~NHb;m7j7hCD0o;TL=3dKIf0R}x}FT)bE00xaV@Z5sG2(m+QpHF1zp%lUNt zhlKZp^Ci@5A;Yu711L{GcdrB;?*y?OPeu;kHM|m0Z&x2>%ONDLu(Loz^XRPN2#1Jo z645YuBc4M2-Lf;Xwd36A*=1Zhk^6Qhb{?wCeY<_j0Z83!CT}Ay(`aDacMNnbiG5(_ zk*3`xj*QPOz!HdWo5oLq?zequBynalHb^`NZQjxCs-rx+qkB*jc0V?21rw)Z`vb}0 zKFo&IHg`$0sIReYV#i~}xR2dYa=)H&YJ+DdUlYy)+~J6QFPsO>SFt-vrf*&WPo-m9 zizPH1h|`l`lq(u_aURtee7%sS#x20V$$_Lw%m_vML*+jh;2Z#wa+67USET1SS8!`U z=S;hQcajlYtRqkf*6{4$-rDe9EaV(<1?>4S2x{?Ev)&Mk)hxYD9AQ$Iy(p`Ky zzPmGSv50?9nT7aDrmmT@hMsVuck@~>9VvH(d@mA4@gB3@dIw7F5FNH78B}oijUd*q z=ZgL969^Rxt`+&$vAJT;{fvxu&qaRmi9)MZEMN&uUNhq2C)<2ESqf}C=?uJ#z(c|>2U6@W<{%1hMN@Xh#I!%F` zJuqF&!=4`KE$OP4$iG1??0I1NxXMj^N3&dkm{gd%!Go*}xP{Q7YN=h-+sBA!N-g468~W1 zpX9r-@e}zDHIjM8-_)3p?{MQ{`NBptpBTM;i6o{tvcwr&9ADy6TYSb6SGkebgTG&5 z?+-7LFyxo6!*5~f8TjpAqTDpU#KV)q(lZ5eJ${QlOV7e*VCmWT9ih;CiLARYiH3Qp zEm3F|>iR6*z?f9tTjEL3I61nZynhddjkpsL_fSINw^;rgctC8o-iIXQ@Wuvqr+^ z5~3o*S2IIl6K&DQ+cMJl0zkGfhXPSH@y!u7krlIBQdUs#i|(tM65%4#sOKWKEb+AM zF3l7Oc`OVf+98~}g(&Ono-@aK3Q4;ToR2o}cGm_XO3f>7L&$BbEzclX#lvTkhxvZ@Qz|g{U zM=<%H@%(&{jBdrt3Ja@WCw_k4d8^=)?v`0)0nY?%1x8&+G1gJ{IrU#(qG)W8qd_o_7ih|6;21 zdStV#B8aQHmu_ssKu{OWgLPS%#~`%aNMFwH=(9@IE}y0;@$RwYp!CJKUkJRlh)C#e zvi=c*6OKV#4VnpQ&RUIJPIFEgFQ7SVL|Q>}o)or88Z0yiTi?#s3?V7>+}ER0o{ z#yDw5(@n1UUk);axNSnj@&3fHoHc3|&?Kw*0hCpF7_deMhNoou5@hOk0i^-pr39oo zHVySMAC$xLF1@evnrv!6CCALa{$k`*&SDpS8oQ0nEjbG*xs)yuSUshH%-@OKg2nrX zq!)gQDK{+sH7hF~G4cZCY`i{`iH6Y=gk?-R7pnb*8XgkIJ24X3g&w>Bx{K*#Emac< zM=lOdl6Ia)X`;DUJQBJ`UV(PDy~9Uv>Cj}I^qgYPo@4ZD&Ym+&ZmY`)tQ|VF!L%1e?H}@Gt%qqn!_z7(%@OjsyPlu)M**s+Sm)T`az+T$p>lT`So~ z9Z8ipyAmBoye0u$ok@~->{;UA&klI{=rzEf_xs} z`jj=*c_8akkjMR7pI$riK9J`^0o#+p!o$&jOYG9dE3q{AZ^F{B#PMrnNY4!BPC=E@ z|DJ=vxIawy!ZhmN`iM9mMdxSfRNZvD^)Y%zzSa|qY4U%hKcS+!Pl&tqNq*w3&+wCP z-N}z%LPld)8(o>ZKjPeK9*acCxBfwWALj?E)allz;c{A^qQA+!xHFW}!;R=@ro}v5 zk(%jVBORNC0f2vz{296VN{l2(CdAEMBPIAO156`Jgyfv%(84etl80*w0c?PmnC0bq zg5WI7Qh?8<@P_Y&Y2fe{{NIQD1fGP69Ztkzk46ui3l8)Au2^iaI~My}{D8s_cHjYpMlVzOj!3O+GiF~NC+EH*nAXL zOzBXQ0vfkt=!=l4crR2dA1b8(u5@Z~WJjI-bXBoupXxHW`l&8hop|}^e*s=BQ+Vrd z(Q*0FE-FFLS;^x4Reo_`7T;7_*RQ?!R-EX0@ybIsHJoi!KjQr6yq<<2l9ReT%2oG1 zC%xxv`vj)JviU}B-TO;6e(QoCGK_!_X@}r`a(ohpQM{*&FU^_=)e-uEcm04SFQHQG zl!G@Upee(98xEIj2X3-!>{tg1`rXpoUiY@o|3VZ&f{tFdNqhN20RQe#!D3b>3`gn? zh(od3+{Jc)v=ui^q@9iX#5K8m_E`N7Jyj7I6Khh_YShpxf5!m}+Q~1@7`9|BM^|40 zN?6|b#d!nobh*VW$a66Z`kZh5Z@{fV?Ezd2|D9WhwC0O{!)jVh);8Debwi>~r`LTL z>(tSZ>Pt9|gVP)l140t^z@-wQ-VI*XcjZJ6$60iSTQipJqGr}H0p4AM()l3 z&hQzI@EMlDD6yMA>@I!|U+3^#Z2&jH4x?R)@0FqbwZl1F7BBW}sYDqL?Xgt`iq~^= z=2JXk?lH^{7D&picfG7~ zTOOyg&JQf2GAO*Px4yPwOiW~mwdv=1*}|3^mJeBFjV}H#AY!aU70bM#S*Xn{I#egC zm*qwmU2_y>39xdkuYA|?vNGdmGSoeixtQ-es=VYVB#=jQUf>xzn%iKQ%$)f`-PlYM zPHVaKCiJsl2&gI6^EP-n50N929JYCMlCLtuG4UTF#?dgo9+=(@`NLWvFBiIc^M{26 zHmvW1T?yg3VL|mwv>mjqP^GL~b`ioDg!_&MYu6;402d?S-4}hss9!{CC z>O;jj;;sj)TzJUF!9%z=DV})9YQ4+s=0RO#!{6KDgu>oF5gP%Ef$gxz%a07pCsYN( zN_6b!$H#RqUEm2J zH*jscz`FsYS08|U?vy0b&Cagi!Jz=%GfHIaUq#ekmph| zgW@#7_B4c+lo zB!Wyez2mbS!zq!{U~42|8VD{N5z%;Q70=*JKCOKqn?a0(2xg%Fr-B))DJW|S!kU7w zreLcnxM~tpwwLzLA{DkCL}bKa-vt`f@nQ-bko4coS1}MUs92%aH}L~ED=h9 z2H^$m?b5mVusHsw^hvTCUa>zILbj3bOD638AQK^uS_s_`7|O5#S6@qnRheTz*TQj~lQj7GB9Gglt7 zlEw9Nt#30d68CHL_iNlYNZg%sFtCtR{J8^HwByzUcQenHSTx~_<&EQU=4oVRAbz0- zCaD%9e3$j$Vbp4}?!Pm=Wi^Sqc6YVJD;%y7AOOvr6v0U3bO=TwCxwp00l}K}|IA1{ z$x!9GT&k4uQo3l= zaw!Ozr|y}#01Jbc+{R0YTv${jsH+J@g7;&!LFzlXMi@$OC|i$p|JSSEy5P!#NQrHg z@44KJ0TCkXCtNu8>O#ttS2Qad9AnQo1K8S+_TOrb? z0-E-KS)+gz!0zY4%XSH+PtTb{u&sF6G?oIx)U7GKxYR#IX%(JJOpzU9aVeDa z8#idZG$=Ed&Z0$l1h?HHa1JM{6kg`gO8urqrlvl%vK=U_qa8T7>;iIdg4w-;$D(x1 zLVlHmP%c0Dgnn^MKC%LP{RitQk)fE54xO1h!G>p(jgU(+a~OL^AS5xc&+D3sdw4FL zZa`d?;(87{9R%6y8rUn-275uC+-F_v^r$(I#p~&^Da7sxuhzto1-Fe9LoY+2;%Rf}3 zU7*QZ?2WYnD4I>pbr&QXpqQRD&!8 z+BlK=1>v0hSp8_$i%u_o2!`ug{|DJYw6T6}xO#?F>^6PCLK+ijmDOZ~_RUMtTCp~^ zehTPJuLwXGVQ}9tOt%o3lQYY5xiQRzk=DrRAIPc~r0|&!(XHtH&D-7XmbII$cdKx| z$C?lCb#O8BDNv{FZ2TRlc1L4RXSE!@&SUpecEv89+3-N>dcXRp*uQsv1jFao2j{MB z{Ts@(2DIq^LHW&ZizcfnS=}FO6?^ugd|ctGY4L+veE)w@@qyVjQ~E|N{q=IsUZ&u0 zK1P0n#_LcqWec`6u?o?Lq%!^E%Z3gw4C&Cx%RJ#lS0P`?dKshyuUXwY-5aLSI5Qum zY^7qkUCBaKXSyMIq=c=Xu;Z0TrLAI@lnWbo!-|bpQsVO44~3ADtvzK{jzUNdWd`&- zu(E&aVOUIS`LCuz&u`!M`(6IBaahb~@!o$?@tp%vhJ#Gu>T4w=Gu zBRNR2E}g#YUTfsaG0)3h0J4L{3igz6br>r!`+EpRJ(3t`XcTPW47S1>8%%<$z0rZd}@JSSzn$*h5s!GI`0DdiAv93L9TodkHOe z!>D6Gvvm?h#sMs1;TX--Lik=ZfQwdF=^PV{yIA+o;?Dt09-4M&uCatVg|opuRF309 zb9^v4+r=|0F>zatCkLlKq_LE-hCEM_M0slkxw6ixTTf^pp=TYEgAo*oMlDXWB@>?K z;fO$44uz$RdM(4j<;#g*fEV0y5w>UxkTu>I6g}tBei~1gL%#$ z&bb9_qtP48$4eZpV84RI-2AVf{JxjK{sg;`EeOiF#r3&(7&U&lk`7Dwp%>?_CO(PA z7lZP{Aez5w2({n=ekO#DGZxJs9Q==sl%`Uoj8j9AH@bCLTKjqvvNv^N9Tw&L@IB} zVq7s#FJX$|TNgwmUJW=JCZOSQBacDF}Sn6wtH#4h*nWB~(N0f!M87)B;ucItCMXJoT!XoO^IBX0te zI;m5fwM`K|noA$WH^6kZc3G-?m9`Os2`X*t*)A_}wQ&|a_v)jN51}Em{&O&TX^w_* z`aRG9$rd^}v(Rl1(q?h27Qnp(q)7v^`z|>cmR|ZOn+>F#cegNP%tUL3(5Q8Y1PiYduqj< zwRY@8JAO7kdl(~`-NC_(_c*+aX=({~wlpVdowpkUL72=Rp#3;f79=6(7}6&8P;yl; zIS?>c`JRCnybOzgkStlsLoOl%WHy(Hz!5V!XFBBY^j9Ffn@w-~2#{q&yH0ZZYrxTY z-5_v9$?M=k9pe2M_&2Ieq4@b1L z10E-vO*DKgHo^;)2AtwAs|o1YRn`OkoB&?D*Sy=@@g@B(M1`H zN&KK2Am&)5=n4W*%)_(}sm7f_S*2d5_^ayrY^vdG3{_=OycH=hVaM}}DVC9D8E!VQ zdKqXO%6Oz!YH~+V)+2(9OXFzow1=`50}z_puE8A@9e@Fp`yk^R~XnAoL+$>@hwW!c<|UqYyay>0kkQ7z&bS9F)|VWTE~B*K}L%sjy8W zG3<7w+|f^eK2-Q19*VmS_!A+RXekyA_%k7xBO?TVG6Zw16o*ahZ-!v@aR~l$2xhMf zzhTE3sF#dKbGt~d5p6&O+a8H6;c2`=ZR0LjiN<9W4a*_ST6hB{Kx=@`CV%lH-#Y*q zQ=ipjq}Hp#V5`X-TjWNlv(kqzue=VymctW}Os>C1+(Y?z2p@t5lf)q|t+p&=agaG~ zW{wNgm1&*Yc9z@DX*x%?AHe&&XV4j3@-Na8Z%y!%@GnIrSg}p?q7$FUN)200yz-|q zB5?pPLO{bF+|twd2?lqgX9z+OeOuRVNgyJzQsXZG`oN1I;-e6!@l-~{b0fGTY)h?~ z{Wv4yyMW)T-d!{u%(DFa;83J&Ms6!|*}1rQWoE^;7a)$oMqC%fao=6S?Lj{R0qvOfj7SSiL85Er#5XkUQ9; zaKeC%Uqh*gO0NZd`aSUG(|uUTS%v%*R!BNBB`j-fK>cD=xZ)PlGan)56!sXvc;$uF zg(OI7Ef{g@k3~>dQikI#2a?SKV$3Ecyk(Hmx#~~M-u=LpR zRISH?^qKjjYAt>=PLScW4=YW3(TIh|BTdqO0)8P(`*RKly)v%I#f#~#U^$T=8%yNR zi$UxZ;PyRe+0TI6ktH}}5~gMT@mUe}t(<|c#*G2l94Ylr z!qbvrjjEFNU4iev%YLR~R5XVXyG+Zw+N~qOh^1FLiO&WTZ)Wh><@Ht}FT=s|cL6>Q zOEBUcKNbwBlZ-K|$+5=*^Zpe~&ARPH-T3z#rPtAoj0%#G)g;Z}BLhT_UQk!(+kr<6 zWHx*Ja+smUZC*%qWnLEQG>k#vvslPrKlA?kyYT%F!Iew~l+on;uU~@5W@M|Anba=@ zG+i3m5c7WzE=&-a&rQ-+oz#6YbP@hUgjc?JJi8%wB7X+%1ggyl9E0m5n{Sc+MCW^6 zYJIY44?>cUL{^daTSCjc2Uq&W6 zn36J%x>HTgV5>=@Rj5@j*3{<8_lAUj3HwQMObXtPV+T>jW=(T+lG9L{k5;+Vbo!>B zolKV&`jC!TNXc@SPc{4Dky)X$A=Shqum~kpsDFiHSxLP@AjKx$Q+c5pmR7SRq*b~y z746Dt2V~vq>q_R&CHHTaPtgWhO%maqq6H!?RHC)>c5V^!f_3!K5c}xj*w9rm+>E9B z&9TA<)Xo0-E@1zO{<5EWHv-d+6g(#MABNF|R^}aT#b?HCB(UW=-F$+K5zu_B${x1B;TX~N50L#%ioQs|Fcx^XK@8BPHfF;? zJ26de2w-o62X-L@w(94i5o8-%B9At>L{0_9e01;GyLc|V;5=DSAO!K8)Kn6u(ka}=kym7Q-I`0=qw+8T_Q}xr!V56+ znv`4K2>3hMf;0}prEm=um=QxQo`u48JRaPFmjNFoBBx}@QT4H)3b&Sj95{p8%K5CUR?d6L`2ajWE3RAT@#>8}p{4N^li2G6vz0d+UAScBCOw~=#`w7Rq~qfmKuT91 z^tke^+u6~Ar51Y|52K&wr10iWdE5+wQF-+Z-H2*SY|l-h8Aok-@-3A=Qc5xb#|Y(8 zspQn(l=iQk)=TtH;o23Xf+AfS&ACS*vod1{sC_Ft)X5()eU9_ZKL*4t_nFQPx_VX~ zva_Xf{Zp^vO&yLa1Gu8Qg!kN1^^d|36NMqE!j^lI)Zgd0E*ypizc@Oo$p)f0BE)kK zAH{QUk~~O5b$^)^qcSZ-5y};u0U^M~T44}<$@mwnLI(u6l`*6ZHCTN0G1Kz+tB?6t zfCd$6S07QdN|Hj&bM}wsl9;K$k<{H&<*P_NS@ZsL`!Uwnu8m227_uAxI+AA(*BwX( z{04kFey|ygoxu2sz7`33TIed}oTSTFDQ>M5_U<3en8ya^fcMF7W8_R(G7xU%2{Y_2 z!h_12SwfjGpTnc9)?Ywb`*pb3lm9>(OMY{hbVbe@u*2b#N`-wrcu8w-8m~{mRB?Xd zdro2BGT8yIzVokb+l~{yxXEnwzY*@~&n7sK0JOLId{!#Fe)5Gd_ErV+{mao$e>enh z19*h{&zm*mV_`^0v`xrY!Vo@}71rl-A$U8%L4E!)1n&TtO?)!OfH1(^1OZ?}xOb({ z|9I?7wD;Fs^KRkGGdMK4`MszoHUzK{^c1AaxD~5!9H$%^JLx1}bLOt6ZZDeITmy~W(pZmICn9(-hVTG~s%rlo!O$SY5U z+9KVxr7Q8fY3XSU?peBuA8+Yuel{%a$7lR~p{W+GS&%Ytxx$qlu2hsVkUG)SF;^=c z8;RH6JAjzQa}D^5A$T5OeSU_$A5@anlcBw^h+(+&bb2Kw$3kA7 z6^jI417PnW$3tFTKU`$HH08B$1@*fId^iRM-sq)$Of_wRQ`(*@)tQ+&9}yCZ&qR_b zJcES~_Rw94B=*QNv^|MODIsF+u@2Q>zXaz@|F3&-vjx^#iaqDrAXnI7FKaMp%xG8T z2hQRGF!j{5tKSSZ{vQD6?m{2I*&Pnp%SZmtuVKoPQAh6RgNx`L-vvv;`0C?KbO|@E z{iVDrhZJtm&=41xubmKqJ)h2k%JE)6w~E8^Vz3f>x)&0Lk@-A+VW3sK@z#y}CR&U5 zWaDCo4mMm>KE#4~nUGOwZj^NHN|bw8*5~H}T6q%ers6wt)Qy4crj6{7L7J?9oBd6C zo%)+FV8?h`rJ*kZu=P5Lr~uZ$2_%gK(F*4hzOdtn=b+%wwh^QO!T5bHhUZ^OomgX7 zA`|4%>X>Y4jJ2{9_Dn<8k0Vr#e5cZ!UFsZKp zQp7bp(G@Wt4-iT#7jWphP z8;}x=F?MBP=RTIv9x6MrgEVDsqd9mpM7Y^S{}0QIjmwQELRrpC18>M0*n__ z#Q$?_xM`9sB)#CTVX9BSkR3}FY@^@~YOkJC9d0b5a8E~;=PVy!P;*aKAJ+H<N7i zS;%BQdCP(NX;7Xae;+Gq8=QWk zw$IJ?Yk3lsKg6sd7m4kv?dN_$hd$aSgBF$lut>oEvN`iJs~$v3(uZ%vD8t#r`@&KozUGY9 zVW#H^k$DZ9?Uw&)*5u`k)a0*nBSHpH{~v@oB{bkBL@C2=r&t3eZ;#?eHUs|-hR+R& z{FY4PyJy6%TlhQFYk=6sl)7&PA(DJ{`-v5)MORUW3B?(?N>@+9i#EMZsx94P*gNRH2R`wUm{4 z5@8b0akl=P>qIo{GKbGbhD{nXwL8yr+nE}s2S_mGFp9cvZafQhU0JU--3lnO@ET}v zCl}@j7v@mr7>>ly^9~G#&?C~wAlh3P(rKQS^6W88-ZUCRQV_K7(^bYV6SecZM<=XX?YLIikjRG(^;|Z_3d=~kuHI<E3&5I)ptZtoiZl9^Yi)oA0cEc=`K7C)1dwp3ky!-csdF3 zxyJDl<0{)9hz*~ub+BTE*dwlJ*9WH?Am|8^Y)T83N4)-Rod z*xoHe;xFdL@pzJ!n~M!?3Ci_iQx8`+*5ub>RAPrR)cPNs3&r)VKae@WgL=|vEB1KQ zi+`&|vB3)aZv$m1R~ql-)K^>hg=v7_NN~RKqY&H}KP8AUeikSmOY+~0SmWD_&-QPp z7jHRfHSB@{js<|`VWa`C|I{!iE55J|X*q0-7pND6>&NZb62q=aqT_255Kg)BuCl!rwunsIN^4R_yxM0l>>C%o@+3@gpe4JArW5zlBiZgyCq*TiZFA z;nhXd*a=MRXlp|wJgm~FAOs**BvL0X5DeERwt~IgBF2^Ck_&3uNlaP^AP*}V zMh-#9h#yT`{~G$EJd7X`3%uDPzhv{(mXERF(+1mty&k+<##nmA2kCF2&s+*pT_Qa8 z@qP{gn%D=c9=c&xU))i%`V>n9uY9}}IdQ4sH#DpNNAO^h97IP2uY54PZB}1mQ}`gf zZq%;+8c83BU41QDO1sEZRF-NYfiHJRWdy>`6@GsrobRlUdAEb{c;$>=W$_Cw21m^3 z>$=$SZpT^;YOmV*ZpTUE$r_GXzec3MhW6h~jgMJ&um5RIPT8xy41Mc@KjBW`MVw)x6g3hX2{fI=nX&ToE#?D` z$<-Ya-m!-^Qc~C#&;SM|K?C@OZWuy*3ij?-{A7OOlacDh{bQ`&<#;WgCC2yYy_DPR z;Vbt*z6t#n)H!MD{10KB^Xbwa5G6c5cL>z+9Y|Up)m-t2SaJ^@u@(#r@6~)$x9w>W zBPCzqT1XNa&_Tp2HKG?cF`?lOnmYA|rnL#vTE!#Ze@LNDrsUJYlI=a|AVX8KWAeiS z$qHz}_MS`-&6Mi~(PW)`uF1c2ttkOilBvDWY;;5B)((;hV4H5-~ zBGwqB#34e2iy)d4x&fS1b<8Q8iuhV~}Itg2kzq!G^&ft~m z1Pph*P(eu5=Z5$0c80H1_in(iM5v+T+(%?s)`$hs#jcT_o$+<)QD-iL#D%?cT_Yfn z>)d2*7hj1pX|6_^E=j|E{>{I@?xMwEl+U>7;jYpUEWQ_}yHRC4e+lrObcx2_(>M<} z2IZcKuNmz2Y2Um47cmqa{|op%T7vE)vvQrIP}n?%Q?Pfl?`_VNSU1YdQ}?qk&JrBQ z1`5;h!j(N1wL9aL@9BGt8xfalG)AjuJ61gI+~$9Yxy$G(j!gYP^L!WLWszrbMB0!x zUt|Pnll0?N*vz=t4YL`zXA&Sg z2*;+VaLR&C5G%q9Hdj(O0u?6{If&sdi&6QjWNJ^BmApzO5=czmzZ*GV7cesN!Vmn5 z?H{M_Cg`zo+?hi;JU>d0-D15h|DPD;6cYu!c46_|fP+MRn*rOcc!&QWZcdvp-1vrI z;`JLqvPu+QK)F4!W>|w^d@vT7u1NT0tN4cb)}Kgqpk>j7nQTP-&Hi;1l z!f94wev6$vfW)jGxG^Eb88=U90;^&}otQ+|9e+t80t}8=G?jVg1+}L?eCsRl2m5;o z6rth^B9(=hOOwgYUjxFn3nEt4MjBT2%kg>37d1>l59OOu3PIyz=z}G8{rIr$|7$k~ z1-6MlrUQVdC?M|dHh?*PtNvT@spH~%`*0bD%&(&$@^bxRoE<}^=(^8H-Y}!dFMCED z=&DZ#0C52DDFU{G8q;C#Ziydo$$=?@teCT8B@V>+Yyc1k0G|s0;y~TjccI=`g5!P< zUE8g}g%LPL?fM4#cUc?N9~VEsy#$|P4G4JrS=Oc?J_APM^&x%|^>2WxN*0(F+ykZq*0d zg{-LLutWkDiWzkQQIh3dTJ{E%?X6Yz7f`m9by{C!9omQtYIDoN8IcMUy?TGNBARMh zoZS70vthM37g)uu_)p!sYS$%eG5-Inv1d9k2{FUz9!PbQ6g zrz}5*$n`t$!>)NezZk3j6X*~;UGkd-t;l8tpd;T-jS>mk%bATyFI3g8L$5F0I?fKX zTmQ`3Z-?1Zd?RfCACi=V77?tpDe#CCQq>|QP-s&SDCFqzCK-#dnk;8_{Pz^5Ub|NB zBW-AO0^=g)3sM+yWbR2Quy;p3WU8xc*U; z-j%GgMvzywWrbjBbU$}WEL95Rbh_30iPgxCuDh=Omq=4iS^f17z|j-48ohuv<}Zz1 zSN~^$EPf4*vKm8-oJ30yC*aGTg1Yg~^1(Tz%a%26)$!axx__!@73%*JuHrTr1n5`i zld;|p1jQ7eT-;Ls-%#-KUj;i?k2%WMPzd_Gc;xXb{ zJq=PFTBuAIp2up8q3-@XVy2JVW5=STo1W)yhRns^lmpsNzPG5$* z=JN%W&PKCjupO_SX$_wwv|ts#w_5PZ`pjRW^_j97)u7tJT28s{+0bXu`_Ryh;>8SE zknyb+fG7^bSAG+%(?^{zM4NAL1`Y{_z02u8R5PwZ=*l0eVSkf|-G#h8jx)(4J%T)9 zS`HR_yV$?)*b%p20}O*1cmF*MjsBKs2v!FDo7^j{c8N}4ohoFY{HUvVy+=TVb zW8AUj&g|g)ERaRMXE)lj0qt2I^RI#+9aldwI@9tRTLwDRR|8faL?9gyEZ_~Vh5c~) z2k?_Fo!$|#(r+TleH0UMo)I0$T3q6d`peie{2BPyzYY`qZCb1>j)KBS~&A21~iWW@3 zC(3(;sh`tDm8q_Y|0u;p(^i0@-C7(1khU46a14wf zXtgFv)sDk(TjeQ@KfuHqx_JYJ_-J0wF4g!Evhq?o+qmrA09|IkiVmmZthtXV6U@Z%1IUbWNgz9VxAgJ+>^Tlb5ngZBH^p<#X< z(J!^*mlPJRLq?Y#FN`_;)7FVW&{N7N2Btp0a2=xDfJQ5AO~eL5eo z2+j}J{{l0$v5SB^;UbQ>&T)^rMas-)VD!p7rkgHg&~YaQ-SQ93T85LhST+~4*?U+g z8_09~gN-YZ-GU1wEOE7Jyf79sFYs~2Xxz@i-h{%IxMompXURLcC=zRzG77D4A_)99 zKgu+G2d?9pF-oDt8I$*RvFncIMq(K)U!s$V`W7?B_uKsbJMtmGo^A1?9&8yeV` zdK`aSWyo$=;xp;7>(2qA4gDHH-Pi{j9^wNzvj|GQ&zXLPC&{DTWG1}-cJ2;a-Dy?|2-EdDD5L7X4A0Y811 zA9izV66X$fu}c=7)(m`hlfRj@vw&b?J$7+pqkI{({&Hjr8k9L?H#Z|4);hD6RnM}U zeSkm%1Bwm*8dgN(78w#ojfQhfQ$~X;STcuUpam`KzfILv^^X%^f=(%@xgvIFz6#dqmpMIG0eUXG1|knn|J0MhG1(|7EEBo?{S*_^*V^ag$i4 zYZ*5_^>xaA;<4Y0P8S5_Z?o&4fhggqhT--p(N?(4M7`};ZF$H@ z;zh|MZfO{Je>As#ldfjPc9E}VpMXIb6cse7<0kl*5cg#NIc z!gQvwxK=@szV)W@4yURPrD3|K%SqyPa_x{R!6&BfDOonQA5wIpeiJ$Z6=A(p`-wz> z`nqfpAOFCP#`vhc%g27-$@ZP>v)5|gi`0Be@C3f1e}uGo9I*Gzw@R1_(4w8dCm8z! z;EC|xTlgiiPCJcHqji@5r>L4Nmi1o&+_1)Z4*Dx(_{!rT3z3jB7~=m0qAv>>vzmh_ zrtCS5s}M)>8JnSjSf}w;$?kjvSKP)I;DL%P>|k9N$@g25?_V?DZjjtaNWR1p|CS-& z?5xWr5^~onAvZBZh=v~6-i1bKjhx1ZCG2!m=9MIQ?UK-f3ZQ)lCx@NJ&m|W9%Ss)C z*tl_4nfb34>NFY>M)I@_Lyh-J$S6bJ)lqWeYZ5}jwXD94p$bc4h<_~`dVWX3F{kl( zi7>S?Q#5CQ$xu|fQg9ke5>Y@=be#Wi>?qmkV@7y}9wR+?s)Ki1IS=Z81&WM29IwEq zzv}uo<6Cm9`pfanII=J3O8Rd=<;oYs+DWiuNX}#bm2l>()8caAdRS7oWSblBLtT`w zb0S-#H=`B{vNh@*FIKyY<1&+TaY(VDq+@neWHafhTD{}otrw1>VDfZs{h#3S+=14a zXf-aqEnJp`^2E4!z$+W;(QVfVc|Pd=wK&Xa5b7jRdha_IcKChdlE1Gg?K)`XOchrL zo4^*w1`2lDgQS%f&}j1ld<(l<{G7CEs~1pP9UPR)CHXDJZ67#4D4^MyRRrM5~7o$aes>h{-jY>@2LCeKQ0#!daegsB#Ow^m1PNs zNhj9TzbzB9NsO*Oqp?+njWJhvx)ESCHYdN+J*=PqG$e23kS)!b!}7VvmK3m2N@AG5 zVbH|Fy~@_9fZ*AHCPV7yKvl2u1<$R&4jGl9{9XSh9Hl`MuA;4f1nt4ib`6tUIS^Z$ z@M9{*gRvoo6mT`Nbru7Xt+OQ@7E&}GM?`+|F=6_?gVlZ{=iq~rP1F_U#JbWtSYQDd z)dA6JGGVF3RB#u5w1mO?m zW)W;JUdXhM!!{eDGi}221Vjnjw7d8S1oy0qcSN(Kr7NRZiH>OY8qsXxN)RAzTW_gH zYP;T!phoMi_-po{A{E-kd#hHsb~@*v6XO0wY)W_G43fZ&)fKoeLlu zCvgy$UbdQX`6YM4FXxnCiH=C#J52aa^X24cd`=vUe@pf}98VZ-giWs-hlL-Td+R-0 zfREeJPFTv?uQN@eRCqa$Gp>Z5{~I6$y=kUk8yn@GRT_MnDV&LQPhyEojpb|c!&T^3 zupYpzJv0q;(=&`(0S8P5J2eUu^#?+vI*bL&O@<)c&uWm+5*H-Vz(oR4) zs`1ChjcazNaon>bbm;!%nq3h9Q(v>|irHPvoxBpi+#zv`$7KUI@(4PMAe6y=xX_e^ zeju3rFo+H4nq=Z0JhGMSp2Od4Q)i}95(~J=gCz|rlI8Ke?4pgdLP^xXo&ZC2nBl|>2eBE@XQ~=8^8YD$Qye+!BM91#EGD?F{lX*p$MU8($`4L%(@D8)U z(2&TBwjy@r;^?G2J>p5@RP61t6u>GJV%FaVPm5_vtbr^cmtzsCU%+iE;g(2HNgF7K zzZ>68GG@Mumg`}l<$`f%UQIFG)?<24#5-7B? zBF&;W3Nr8#J(4&$Fl1ZxjG`;nw>fs^^WlA}B|7VcX-JaC8!t!8bfP>JX1$O>-~2Q> z{(FK3`l%_({3{`pJ`l0SU)~YB4%6`0h>A$I{|Tn)fR0A}g+OLr9RB z-HsbyHD3dbHVHq=NjyylbU)#^{qpJXx_#d;x$0FAotY!hYDkpX6gN#S^8z9i^U^6r<{|E4x z!Dd;mpWrZlG}57a`SIfbI1AsP?%UBwHDM1h;=@5w9d=Zm)_Lrm??gh%rHH5bDg;-S zr7YBsg(;)h!`r3pMPF0mb@MiFhNBQB9OI>+5Q_CC;=@tTXT!XoWeGvzzAs~qECHAP z^`J(UU&lGy`0+@x^1~vY`i;n;3?X?~M*S8*(BNkwHO{4-*as}wIuV+|IOz4+sdgWP z$pC*j;W`@H*%>+#cHqa`iEaNE=pC%|L~C!lHPcW_R{}P|OAp%F7F-M4WdAI;0y^g;Q>3Fc)e-3Z19be86b`FJy|7S#@+Rw z4aistu*QJdNWQg*~?eZ@?KI7QU+(`02N9;eNN*uC{dOYniWg=&q0m7 zq$6L;DfkZZ^it&>1W|bia)*?EFHn;zZ`b-k2j|NurLS5w%Z*?m9cd*l(*GH9fss~4 zQC>1tnZ2rij8LzrigN+VHx-0+UH3{lkhQCiPmEz{WSdV6YTL`3oH9;!aaclaCo=?6 z$qKj-4*jo=pKmU$Uj?je#z1)~{-dy174#a;7~v&24&nb8-2D3jm|C*I)l%bUz)s^C zXHc+Bh={yx6@0%L842PR9>t-81%a|?av>v_FSuCj|0CcT_rf?pd-0#e4dDN|_+Q#> zHU0wG217co-3v-#`E zVZI%*n0aWYU}|b%{(pw;t|U_V`H6RUiTZa@MEdyYVv#eUmrvd6@v^u@Ykp+pu9oqz)oFa6P4aW6l#~H51VMz+ybz$Mh zydu~O^hw+z;|kBN6s0iDHw}_VS6H|im4%Y3&C3F$ukS?MQzc(=k>$B~xoYc7TR<8z zr2ca;CE+F`>ffMl5x_LzEX_KlI)tw`)e#xCL>EGpn%!&=}b3<%}(2zTLF zg5&t+jMcaoL!;l2S{qs|m|I}Kbb!(frr~>Hv6sCpwwZhn_k&r`R=nWlEkfXv#_XR) zZK15wgZXvl(Zrzjq~Mu zRpZg}eQM)U`Ci`GC*Q|6u9xpcjYIO?-gu9E&oc3=jgN_ctnn534mW-%-+bfW@YP1Q zPwLpkvWL4JwXR`21i0buKjRiAQf~PynB>`3y3QS*z0gH048j<8N3qA6|7G(f5p#>V z>e+5_FXHcP44lpOJiak1--{a4^4;EexO~rQ{JwmvjeYVRYg{Ye;l{J&8`PH-X`lR= z`r5JIM``@CWSd>6K29Ap{K9T64>g{TY?OLfzKcoflNc%?YMe3C4*LkkS({pF1hP=V zyiMqLxO#fy6YVq-CY7@MB(oM91+w7`=2swl(Ag!D6)xO`=_wwsU$Pa9h{RWJP-z!M z(E%%n9rH_3u@+~f<{6J=Fn+nuwzqykTFz7E#+$B>Mf6y))!im*U12&2dmX&Xn9PJ7FKX(@$JRgFp{E|L7CV9}ku)bjrxHK}Y+ zY`6D<<%z^4%4g)@5I)07T%t>B39-5M@ODf9D?nrc+k=VTwR41lHasf$OrlSeM=*91 zu|ESgMoFKn=EcNut;LUGcFmpLnp?EuV3*5xRJ#tD&xqNpb*~NvnHP>e6>iwn54Maa z5M%0V^Y~iFS*ass^lq%_U|mQ3u^wA>E@o0`Ir>q*zaPMiGYAtbeh)kAVuiPlhh04} zo^XR>;<3idfF#xWi)5->RhbELGK_aZRQt6{BSke?vEEf_u_IN(TQ*Q~^=RcT7e5p_ z0>rd>iS7^_I>K;DNUf7Z7|l5%48?<{oONr*T$Z&dU{$CIlk;2*jPS@`Mduxdxt5%i zabtq55ssr=J&tnaI10=h<$4cloyev=m>KFZ?}M8oCAhFPj^Aths#q-PzqW6hrwlwA z3vnJgg5C}Rp(6;%sbLp41P<8ZI<>8JvpZt8+;1=9(Zy6^%pnoBHhy#u7H*lYMyDKk0)i@ltH zC!KuDkbHk;L@@gN=YyM41%Wso{gx4_F!nVbjwh`1_;coTEI~#Eab-8Aid_$7eOISG zzc~UPve~liU>JSO=_7}+*xIHb#E>2?{xn!Ay!0Tp32862?HzoLQwM7@U;#9_oK3eW z)FiHF$Z!!2Q0%2tv^j%f=b`i?)fgd|vnz5)jl|E!XX1abRJ{@=ZXUA6! z+@En=DxTM1scGuYKB;>`c)^DW&k)aVCxc?CHUVrcwN60=y*MuGhc@BTwy+e={44}m zGap8MQn>_7f#cG|A@d2Ul54w+_+%dy6Y0MA8?wC zx}3{$60LVJ=?P~LIWD{abQiKRj-$SVxc2MTUr0(!zYex2lq5tY{ZS|-|4x$?F=P29 zs5ADfxHHmK-JBS%ZfblftW6x6J z0S%N1fVfn3rI95_?IZ#lZzTuUjzBSpLBpV;A;3+c)q^m~ow_l09jT(6 zjdLDWfS<(RmQ9UQ&s`e>rc*GC3$^g1$i@%{WS|X6OT5DLL6~}&I)F~(0#6GqFA186 zHC=kQBS89fwE#9rQUop0UhWT@NBxpgBA!5|+UJSb1qn=Xv}q*P6IeOHYaTA9VWxP= z5#xA_aTLtA-+Ya56_?9mbH_Si;T1g9mc}*eUSgD*)BC%u8>x%ozlEA<;pxUKR-gV8 z>lWS$Xp7+{)*msJoy0}x%KmPxP%6087kIv&)qr@lV}0Rs#ru*;R4NsReOkCLVdKIZ45s8cX1GvC=x17Fch63i8O z3lMoAlW5)wUYWOnhk0B6Fed5fEeBx4RNLSsq>Qlo@H2bK-HITkwH?*L{?Q*o2C@d@ zK_7r%6I8yp9DteW{dg@yFoV^wV>rRz&b7JGq~ll8iAr`2*Iy_3%$Ylzb4@nxvTWRF zHsK*o88%l!PyGlgs0OUdV7s)Rc!u7Ym7c4c?5;d^q|~Ev^JbU@Up?1He!=)_2T*-% zd8Psjn;I0aP=Gsop5Tsg7_5YoQ<_q8Hx)X$yY%FsEUujrH##H*i1L>W8wCTtY)Be- zIBfC`3?$3bdH8bNOV1DJ7q?MyTm}BgM1UbB509c)(#=fingACTmS_a(9*FH^U3X&p zv8Zq18ahZ#8q=Pcd&Ie-SCl2hyfu^R%nBpV03 z9|VSigVo+$&O?P10{|9ojsz||3NsYAM_z|4!jMj1YH$`8qD}Jr5#?w6mtv`5ro(DW zS~roh4_YOm? z1N6^Fi*m^gNgwNX`apnoSJCddK$2@$pd-TO-R~57HgvzEo5uHcIrW!w6iq$@Z%WB~ zSLsrphm+rQeE_|G%K<)cjz@N|amG7kj5_soPser_-rX)u1Tph?!YXhF#?2!DJZ`lt zn-3>tKTCaJ7>0#D*=iE@Ud(RlP?x7QT#l;;rbg8l+JoqW_+3mxY?;R9O@!{5(sLt8 z2B*$}P}oG7fLz`HV6+8cwcxR-{+%zC@ixG=fwu4~ZG+rG)eH^n1_;6lwV%05ht!n(D08eWMQ*NJ_J` zpRCx`=nMWSSuOU=ZxO>)lOSOarraMG3G8%^}jx>-iO3-y)fK~(LDZtCUs$0vW zCOw*-KpuFJk9TM>0OijvOj5m-WsU3E4wRSzzfpIE_OQ76r{SQUWO-+#K+Fv-9b2<> z1$WC$W|E{Z-DmlC5La{f5lvcC)Mwx?Z^E#mL*uBdw%*0)cM9}x@QVjLd|qxGhCJHj zjhgc;=!?)~n8f(D<=#1Lhg6a(`@n%#eF;fgRa7<)O&)Uqgh$UnJ-e_uF^KOwm?vF!VQf6~L6ylC3`0A&6vx%df^vbfyviPhyNq01v-Uz}DD;!#P)<_#PTs~N z>j}BuS*RwC)O71nJTbSw#r+2K!;LI(w*v4;CcyR2V>hqTa=Ktk+H6^H5hfPI)Kj`d zytr?ABFOhYOum6XC^NR2}MoBcMb^CK8j!PY7Wh;FSqU@LN7wzY~z?#NkrvGOKdDeuupBdodJZy%oek!+`e)Up*~ zFnQMwAj{V+PbU~~!@DknuV|WVg_h?nz?FF`cxB!OzAW$dW=HGLvDv{;JNb^uHHpHl zPUvU7WcJ|E$r>br!V=|@DJYS_Mk*h&#$zTPo}}d4CiIG{2EmcA=cgF<95K`t#0q?f znH1r`bG4UZ4+Pv+A+|Kv{S(GcRRXxEohSwo0eJgZ`i58s6jt+D10N7fdnf z{@`?V@g_7>^p~(4QdwPD1-A~RA=s!CwWAgXr)a7e#np45(~Y$zSUUVuIlF{}r%O*z z_(s?=5=aI7K$8mZh6jmr_HhZYI+DRk0ka#b;z|pt{Xk(r40xr*2nI0g)IS9cD5;9c z7$o}bKpDhMLK*a)hw7)i3iackiJ5PVZVyyAq8es5o`WL&R{#T48I?*Y=#>Deg)#*T z)h1`7>lAxx;bz2XF$1i6)Cws~7Y%xx-%ZCP)SJS)q`2SFH;?s>xT3il zu&5TaUr$H$E_>mbXlOScgR@e81rY2pJ={qs)0rqae03DIt`dcXuT!xOV~Z^u1Sb#~ zqR^}37%e^8YHRQ1+|ntqyXsOel-pvM%Bp_{StR{YWUZ=%m41nUlK>r&{xgsZZk1L( zY}v*LlWW}^T+_4u!;l&H zY3k$APERTuvsG7fL+p;b^a&!~OZh26&j8-~=FRNvpT;hMQwxf49GjP#(MK*RefLKY zeeCYP#jhE4(-#|UUkqhc23|jAC zv+3rXxed+aUzT=#vI$X*#fQ^B8^0d5xC6U5jy_h&|T9p;m;Kl-arsRxZ#%T!^>* zSe(Sj5U(bj1u=7ey` z8YUa&#cC32&Qn}3J{uhBmc)xY%yeLH#DRiXefWf2;}F%bxqcYwMkm9zT2Q#MVs#c0 zru<-Ov(=Ps#6ZwI9I^>6u%W04K8LaDuqa9y;EeKfD+9t}irLO&Q8ue1nQ~RZy1z;g zvQ$=XMOY`-r3|E06?bwpa`a-3feZyf(JMM_N%+=VWeBjrgT)F&Ds*kkAAu>25@v0P zh!OHtM*>T3!&BcX4kwA8Fhaqk6|_N0)6YAnBTzU)Vu76N%8)h6Th3>$k}$%fmme8L zD~`uZ^vD?*o)bGIl8K5mR{?PT&=deVQKs%r>i+8N-TGcSl_P{S4eu|?4K!$g3lDgS zA<@)@s9y(iqQU+F@`?}yE8Az3Jm}>Z0Dr+x@D|e(paAY-#mj^4eHFx*5>k@_zLg26 z{Sf4!gaXkxKmtRa0r#@A$_$jo;R&ch{mF0|=p3B+$&HcJk%0P>5Zm~lx>iI6)SuXn$Qr=H_ijMO z?Yvf@uy7CVR)EKoHffn&kTbpYpCUW}u%`8YCt%#BijwX$vY4=3S@UxH0wE{8Rd+YY zin8eB&v!s6@$5FAqNE8DE?|wcYXG*1<<2>5$=d!jlHT2e6h^YQ$AT^R%_LL8`(O-4 z##>~tnbxTcY|U}xmZ?%fIwQmo)23#w4$Xj+n-{Ywm-(tNp#bYa54@9 za{=o_H}3irkqlz%^Kp)br>uB-sTHq38)c7`h|Va{>|m#OZHsDe!cnER?Sb|XIL0wR z3SD=Trvtm>e-dLW=j3t8N1PRy09983iYEf<-^s;)g@93MJcR(W)cVWMPnJOw3?bHf zO5D9SA<7eo^;6CuF$P90A%5?$ZA1X6CSu40_LVaL9=qByogZ7s}w+Q5G)gcfX zEh=b+bp_i$0~NCXHzq;by@8#qE&1h*?obTJlwo2cH7wgOwX4&~eq{iun%du=W zHavDdN>ub9O{}d`L3{nCLBX@ubsE+Jm@F_Xtp`#syoDXfl{n+H4q9s z5+>?+GY^V@xS9uN&PhT@pf~f*H8)x2CMMhxbXiNu_U74ig}pr7jf}5<40-6D=DPm2zSP(2tc2Z(%|KA@oY<7z ziH#)7Q9$eHiP*ey6`%JNUr@z6yQHa#$9C{WHT7=<@fKydCx7=D`r!rc?RKX4Bl;b_nj_VNADI zeBhw~CMWdR*gD$%`Z2-<(~P8};w5CUoy+NXpWE0t6ggG+m_Q_|gA9UCa9hF>kJe zGTX{U3JSJtE%A;j2$=UoQXQg~}2vjFLzr3T{;nyeV z-r!i0Tk7BIwbE52>oY=oRNd|`dKqIN*QNVf35Tk$Exs1I&MvJsivvbj??R!LvH=qdMac@KbER zRVxZKC--rh9`P>2R zc!lUk{})V%2R8NXFH9MFWrcM<`Hi&!h`S;8-Ol}Lxn=SN`1NvY>WTYCxxePzvS@3U zw}4+Mw{CDTFTaQ;66;tQ`0E7MNi*s~@rER@$tN2U zy`f!_oj(WBP`9a$$cwb=kxZXx1tlvPVWLd7)&=&Amv`I-zyKOk+M_U+i{E&2;^QM(cl#&#vlDy+-a-vxq~+C=5|j7~@Nukn2_JXo^~=n& zShq5+*!Z&Ck1wZFGKE^Hv4t;ItzXY4j9&u{&Ity(df%i^9Gc8yK4dPBvhC+gu=md` z3}7_A@eblf*AtbeH~1I77H7Y`xKY{Tp)gUU>P3-APd<=9WsiZp<;Cgnyf7I8)3%RU z4Yo@Zce_NLp;K0(?IOh8E<#rtB`d)Ab);4wVwEhpF1h050YQq*fmpz(w_nd3Gsh|! z?1lNc`E}X_8RTg}?JQ4eo_r(ITEndGR$yh1;Zr}ha7KpP`o(0!SqI>&Kkw0xVG}@9 zjnq0viW#n1=UIr&wliS`%P?ho=KXXYjT!987qs0oe6rQJXhQ8RwTDIu+uq3AS8 zfX+`UtQj^?$FiI=+~2$%crWT{&*aMm$vgN2(L?<972`hEI|FO4*0R863JZB|Pq2lB zwWk4OdZ+mV3xvEC8}odXo|%kXx1SL5w*D9_+GlEIr9WSr%s1YH3?xw;hF#6^Xy%S@ zpe%^4?MC4Gw4?8Ta5}nzlIU%B5?zydqU+O+{=Tm03QD54-9EaV6_Y6)8MmWP9+FDk zg3Ok?M>BU4{WHV^uFuqd%KO@U$)=OT{_2Vz6TyLUY{m|T%JF>^ zX|2C(`W9jQXM8G#2)7Zh9h4Vr`Y(dvG7t@xa#v1eky*kvFtDlq|%rV7mg;F$@)8~~n`0L%g4RSCcx z0G^!y%mLuc1YiyTtps2W053=Y<^b@V1YiyTTN8je0I1f@O068p5DQ!bk>$V~04`1d z=9mnoHv<^LYU&Ywur_;-Hay8#<5@yKjcJ)292|r#IfCdt)cGW~?OutmV_H;ZWv>M? ztKHF-aA8dd?Bwai0|%-&5UIUZLA#KMIj94*=a=z47`gZLd=quJd}iDQuv%|FtjG3G@h{upv0bJKQ_sq85AZeN}V$#=3sQn5|&NmdL_ zP7cY{&dnuqa*g;FuV=&SA&<#xr17k`TK7xgQv4wpSv=LhAaG3g^lz_uv*Vtt{_RWr zYU>N>)s|p_$wWdGJ}Gt>tgpP{{`cNfqw3R{}zyV<^Ue4`sAIBv!-Be~8GRiP=l z=jtmq%&{q$z6k(p!^N$p5z;S~8pD)#F}h_5+E7dQB6PXFr_D6=YjDD!r*I`?4glu~ za8bCNekiwcZpiuB+$S z#rW`$IHOvo{hWRn20gx zGw&?BIb5MLhpVBeS&nxl`gR`TbED`3Ohu@Fyf)|XW9vJ%52fDyZ10$`G*EtMqc*Od zm)r9;He8OOeuEs&oIYE0?^UiA_BJM|W7kHC&f2bjXKhoi_gT4x zI%5$}Fa6)=DIclkf{{p-rcK0z!?R~_2vhT6D7Ps$(r`R#ui%*i@%O)2Zdi*IS6VB& z_e%el(+j)Gq@B9Pq5ps6B>xz-kkrBd&vH`eDibzb{!ipY<+hAUv-b7hk}unCYU-(T^qf}*YtN-t7c z*9X(u-!RkHO5CO$&9{md!Cfd%1V(ofDU9Dnfb9!$#E`T7P-hU`XU1k=Ita9^#cvn3 zGvU@TxyEeEg=#Y)gFB>mGmMRQC~D%-ESc_C_3|9jJ)E*_?j*Ym&Aka>pZ|j}XWRAt z)w#a!E|ueb2=rYq+x4lg*H=uqq&jD`^*&52lrV3xOa>ZmCrbQIeoFDX_)X?bBe~Jl zuJ27)(u8jEYued=3q6lJF>tKAO+PmweK%MW*)1g7tD7Jnc4m=0B;odx`$|xJuP9cL znTyzx)0qQ%hQsm4Rcp~5#+CNag4~7B&|ffpzN+xtuy$rJt^U7;_13fXUEsb>GkvHf zSTMa!A-gyk5$5wfroIWL+`;s#eTcsCX;LH^YRQf8C`GCSJ_@-*j0^Fh1nPUa5jYu< zYvYJ~_mG^Z(>sRzm}QYowq%M@f1WjFgkpzzv04K2g~Y4L4GVY&cT=J0xy%+?j(Zm= zdL`xNOc5)(ZG8q88^*;di6~|&>q&0X{At%GQTlHFG-Q-yN8C~_Hm>E-QqKpOPxil` zWOI@mA=b-f#V~pgb#y*s`4Wsf2-;JMXe!m-Vrk6}U75Lk^K863A2*(RYy5~*dRV%S zK1B|-dpt!>`gBd=eGn?ei|{fB9d5l89)fB8YD_BRIQPkQ(OBhZaGq^#PqH26o7Kl4 zXZ5r)OJ`TlOSAr1QLWsVGj#K?!o`hNK4w&lJC=>h#Xyxov`0Fw8-H~^aio>k>$~fR z0M(D6)DO*ZX8mO2S^YdtJn?o^Dm`6VG~QMuyuF{&b-X<)?syhApVJv<7u}@Z-R#*e zHU!a^R0_Lx$98ghST_E?A?8MmHDse*?a?ko<`n`9NW*vTBKpZ-S`)>wH*Q|Tl}GDy z>e%0}qJ?6O>~yeOHkCBIR9iXP%I1yTbwRl5LQv{rx7q3<8_(+EG2<2Ooa>lWdb;(j zx=3d@WOul^I?3Dzx*N{RV90oP?XHVfQvS5N^^Xxfn07?eR~$|qbkW$Sz$(aCVurF0 zRJeMTc=vjIqN2HXmL|6}Tz?Sl{rD7|Y%I^x;Et=&h}NY^Set)z+_f`s)%K3H@_$oz zeOFz53rc;{Q_gIA*?3mpj}uRQ%5kamxWsMwh;~m{`(Std>a4=crrKgx+@#%3rsKMH zD}8}3+?Bq((hVj`$4hm_sWeqS7-eLSNX!4!*ulZB+Jm5!4`?&XCmYYo=P}}G?u2Sb z?#b=+xPCsZ6=F(f#BIzXi~GYoYEfbUEtC&YYCYYIIjEA!E7aI^u;=HML7R zP^_Kc&)qI!z+U3*X*V8ud+uB`4IB3WE>9^BSIU8aQZi*^AZlx_IJ8=$5!{sn~0Pgba z+y_zn7`q(Czk{+~at=xrkK_6sv^kbiVA?@mf3FTg=CWg#+C+9(>t!irMrl{i^hK?U z-R|IEAr75grOYHB*ahOEL2rFt=wWs^iSn!WI_u2_blP&2xJYh1fAwo;Fc(JOAbh*- z?@KVyO6r`u&}rljK^(Ak;Wjjt1^!=;zsa|Z$2K}WTVB8gZOhwH~Iy?+}tP>c}?Un;Ieg4v}<`|8+e<* zIhW@)a1&?aSnuZOyC}I}p`fyPWmwsaojk8;>1deoS~feSG`z4}8&Lx(k1gl3sk8}d zJv?VHnBU{mJ?og(qnT@&9_2Qg_RGfRJFUqAdYx$Kp*ZXGCI<^6Q9s%bE$vOZ9ZGvL z9%Co@Bijpyaof7Yke{%)L}$vO(MM>8GKRHi4U6&rB&*eh9Cx>LRK$7XIf{0yJoRTq}q5SGez z7&iM8&rn|G30I8pH>~V2z1KDZiiY#9F3ol->{FZ3Q#U3*0{>5i|4MJOKyTh(J+Tzu zi0}s9NNeDlT_vy=cp4WUg@JMF%bY@>4K-e^!Sp`-X+|*I+vC7P@khyW&=b7@s^fk2 zo3*wYi7%tBf@w(%%JK`Hw0nPi8)D8h@z+9e$*&0F3-Gy<&V-j&!i$4DUL5Lj&*@zX z?M%?!*|#Y%#-E3j`b3TGs?(FK{?w9!=Eq>xc9VR{djxi$3#%Ni0DcBpYqm`G9c1az zV&hz58ymxYP9>+mx;j&K2Z88x7*b{DHEgWxDt*ja1|c-wTfaAF^}!zcfi4$r2(_&t z4J@^#+CA4m*jh{>x)W+U#Q!m{K>!+XeBpBe!%Bakj@I-4%QD|yoUlvbLAy+)f0)Z% zmwW5lIbp!NCg$FEPI!rLFZ)p5CwJP5d;Gj_2otqt#-2CMH@q7HV|$t?bEa#`_tuB> zI3XV&tLgmZ7)sM`H}sTU*P^5C^2o^pK?2Y@b^=f*V%>@Wkl5%NOIHe>8^=j$GcSAH z+)l-}>_^4dJMFcUA>c;;F^Mhy*;{Wy(8+!(pZT^z^fHqQwBUVP( zUe-BKv4W96*BcZo*A|DbU9Jn*n@)aiA6G;6C_M_QdxPG^m7yg}G{i4ZLc4H!_d83` zjZ4~_-DLelVEdzW?CETef@DXkzbA}-4?5b=o&CZ@I*OB}$vI3sg4{^1cNaIum9I9H zGr2JLDxOY7UNi>2n6#cI8DT7b7NzLs7R)i@n=}CCEB)KgG!2Zt_EiM62BDPpH*~6 zk!eouwY$KEqJ1039!nqgMa@(e2Gg%21mumt5@d~ib=H9Q88y?@!}gNtg1<*mHRFHq z^)zkv)894|=b;2A)&1I7znbJ;>yrD6lC#Z1)+^Do#4uyKwxhMt{vp2oJ+?88A&Jwd zMM?rqumF3C!_mEja@EeV8L!0S7E;XFk92eS!D7Xb+HfB7j31yNYD_4K@yBs3EG;OR zHozI2LOPMSp<4~gM=m`0KAMqB%&za~vO+kFbqjan&6T@KoJodxEQ>*;@yd+^QH5zR z*AmA1qt6I9+>!=^pJUKfpMk|Hcj-==1+I?P=`N+)a;_K4>)cIBrQ$Z4ZBw#Vc(7tv zI*_QH;kT|iDb{YX8CPK2S?+d8j{A}vHw*F|`!+nDW^~=NQ%Qk*t-C;mG>x)ds&kkq z)Yz?-$6kMo&O;)iyH!V0Dzxw(R0yL-lwZTc^FokmUtE_}G$sUTy@$CGwAa}9_4 z(2EjkT#UB%<3<}d*YAn`DDqBBhwUtQJBQ+b2Ka+Xjqe9OOKmro`x*bw;{WlKRzF|; z3C>YKZZ+R$@J-+f`!W6neE-asrY5)4&g^dpfc|SfsJ|uLtk8bMsp_x%%?ETFC9m-+ zIPuCHzey`|h&QKKQpyc4bA5^CBHCX*O?2$2!4)H`dAHk6nQ!0OFSD_@;+o^b$7xET zXRvHa!7EsnpQm-xW=Go7<`HQ}quTF}7i{H{9L72E*%>*gjW!NC9>s{$^z$ozOf}li zzMa~GCt$^3XKq3C2l#;zo#7ng)7AR(UyASVo;-zeLgjk+$#@e^XF7|ams#_o}OZzA5^)~4FatoJ?BXx0#({Hn$@U{cWHZ z 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%0A4(V*^%HYk~elyhY_ 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 W*xf(N-d)f74 - - - MathNet.Numerics - - - - - AppContext based switches to disable functionality, controllable through also in the - host application through AppContext or by configuration with AppContextSwitchOverride. - https://docs.microsoft.com/en-us/dotnet/framework/configure-apps/file-schema/runtime/appcontextswitchoverrides-element - - - Since AppContext is not supported on .NET Framework 4.0, a local implementation is used there instead, - which cannot be controlled though configuration or through AppContext. - - - - - Useful extension methods for Arrays. - - - - - Copies the values from on array to another. - - The source array. - The destination array. - - - - Copies the values from on array to another. - - The source array. - The destination array. - - - - Copies the values from on array to another. - - The source array. - The destination array. - - - - Copies the values from on array to another. - - The source array. - The destination array. - - - - Enumerative Combinatorics and Counting. - - - - - Count the number of possible variations without repetition. - The order matters and each object can be chosen only once. - - Number of elements in the set. - Number of elements to choose from the set. Each element is chosen at most once. - Maximum number of distinct variations. - - - - Count the number of possible variations with repetition. - The order matters and each object can be chosen more than once. - - Number of elements in the set. - Number of elements to choose from the set. Each element is chosen 0, 1 or multiple times. - Maximum number of distinct variations with repetition. - - - - Count the number of possible combinations without repetition. - The order does not matter and each object can be chosen only once. - - Number of elements in the set. - Number of elements to choose from the set. Each element is chosen at most once. - Maximum number of combinations. - - - - Count the number of possible combinations with repetition. - The order does not matter and an object can be chosen more than once. - - Number of elements in the set. - Number of elements to choose from the set. Each element is chosen 0, 1 or multiple times. - Maximum number of combinations with repetition. - - - - Count the number of possible permutations (without repetition). - - Number of (distinguishable) elements in the set. - Maximum number of permutations without repetition. - - - - Generate a random permutation, without repetition, by generating the index numbers 0 to N-1 and shuffle them randomly. - Implemented using Fisher-Yates Shuffling. - - An array of length N that contains (in any order) the integers of the interval [0, N). - Number of (distinguishable) elements in the set. - The random number generator to use. Optional; the default random source will be used if null. - - - - Select a random permutation, without repetition, from a data array by reordering the provided array in-place. - Implemented using Fisher-Yates Shuffling. The provided data array will be modified. - - The data array to be reordered. The array will be modified by this routine. - The random number generator to use. Optional; the default random source will be used if null. - - - - Select a random permutation from a data sequence by returning the provided data in random order. - Implemented using Fisher-Yates Shuffling. - - The data elements to be reordered. - The random number generator to use. Optional; the default random source will be used if null. - - - - Generate a random combination, without repetition, by randomly selecting some of N elements. - - Number of elements in the set. - The random number generator to use. Optional; the default random source will be used if null. - Boolean mask array of length N, for each item true if it is selected. - - - - Generate a random combination, without repetition, by randomly selecting k of N elements. - - Number of elements in the set. - Number of elements to choose from the set. Each element is chosen at most once. - The random number generator to use. Optional; the default random source will be used if null. - Boolean mask array of length N, for each item true if it is selected. - - - - Select a random combination, without repetition, from a data sequence by selecting k elements in original order. - - The data source to choose from. - Number of elements (k) to choose from the data set. Each element is chosen at most once. - The random number generator to use. Optional; the default random source will be used if null. - The chosen combination, in the original order. - - - - Generates a random combination, with repetition, by randomly selecting k of N elements. - - Number of elements in the set. - Number of elements to choose from the set. Elements can be chosen more than once. - The random number generator to use. Optional; the default random source will be used if null. - Integer mask array of length N, for each item the number of times it was selected. - - - - Select a random combination, with repetition, from a data sequence by selecting k elements in original order. - - The data source to choose from. - Number of elements (k) to choose from the data set. Elements can be chosen more than once. - The random number generator to use. Optional; the default random source will be used if null. - The chosen combination with repetition, in the original order. - - - - Generate a random variation, without repetition, by randomly selecting k of n elements with order. - Implemented using partial Fisher-Yates Shuffling. - - Number of elements in the set. - Number of elements to choose from the set. Each element is chosen at most once. - The random number generator to use. Optional; the default random source will be used if null. - An array of length K that contains the indices of the selections as integers of the interval [0, N). - - - - Generate a random variation, without repetition, by randomly selecting k of n elements with order. This is an O(k) space-complexity implementation optimized for very large N.
    - The space complexity of Fisher-Yates Shuffling is O(n+k). When N is very large, the algorithm will be unexecutable in limited memory, and a more memory-efficient algorithm is needed.
    - You can explicitly cast N to if N is out of range of or memory, so that this special implementation is called. However, this implementation is slower than Fisher-Yates Shuffling: don't call it if time is more critical than space.
    - The K of type seems impossible, because the returned array is of size K and must all be stored in memory. -
    - Number of elements in the set. - Number of elements to choose from the set. Each element is chosen at most once. - The random number generator to use. Optional; the default random source will be used if null. - An array of length K that contains the indices of the selections as integers of the interval [0, N). -
    - - - Select a random variation, without repetition, from a data sequence by randomly selecting k elements in random order. - Implemented using partial Fisher-Yates Shuffling. - - The data source to choose from. - Number of elements (k) to choose from the set. Each element is chosen at most once. - The random number generator to use. Optional; the default random source will be used if null. - The chosen variation, in random order. - - - - Generate a random variation, with repetition, by randomly selecting k of n elements with order. - - Number of elements in the set. - Number of elements to choose from the set. Elements can be chosen more than once. - The random number generator to use. Optional; the default random source will be used if null. - An array of length K that contains the indices of the selections as integers of the interval [0, N). - - - - Select a random variation, with repetition, from a data sequence by randomly selecting k elements in random order. - - The data source to choose from. - Number of elements (k) to choose from the data set. Elements can be chosen more than once. - The random number generator to use. Optional; the default random source will be used if null. - The chosen variation with repetition, in random order. - - - - 32-bit single precision complex numbers class. - - - - The class Complex32 provides all elementary operations - on complex numbers. All the operators +, -, - *, /, ==, != are defined in the - canonical way. Additional complex trigonometric functions - are also provided. Note that the Complex32 structures - has two special constant values and - . - - - - Complex32 x = new Complex32(1f,2f); - Complex32 y = Complex32.FromPolarCoordinates(1f, Math.Pi); - Complex32 z = (x + y) / (x - y); - - - - For mathematical details about complex numbers, please - have a look at the
    - Wikipedia - - - - - - The real component of the complex number. - - - - - The imaginary component of the complex number. - - - - - Initializes a new instance of the Complex32 structure with the given real - and imaginary parts. - - The value for the real component. - The value for the imaginary component. - - - - Creates a complex number from a point's polar coordinates. - - A complex number. - The magnitude, which is the distance from the origin (the intersection of the x-axis and the y-axis) to the number. - The phase, which is the angle from the line to the horizontal axis, measured in radians. - - - - Returns a new instance - with a real number equal to zero and an imaginary number equal to zero. - - - - - Returns a new instance - with a real number equal to one and an imaginary number equal to zero. - - - - - Returns a new instance - with a real number equal to zero and an imaginary number equal to one. - - - - - Returns a new instance - with real and imaginary numbers positive infinite. - - - - - Returns a new instance - with real and imaginary numbers not a number. - - - - - Gets the real component of the complex number. - - The real component of the complex number. - - - - Gets the real imaginary component of the complex number. - - The real imaginary component of the complex number. - - - - Gets the phase or argument of this Complex32. - - - Phase always returns a value bigger than negative Pi and - smaller or equal to Pi. If this Complex32 is zero, the Complex32 - is assumed to be positive real with an argument of zero. - - The phase or argument of this Complex32 - - - - Gets the magnitude (or absolute value) of a complex number. - - Assuming that magnitude of (inf,a) and (a,inf) and (inf,inf) is inf and (NaN,a), (a,NaN) and (NaN,NaN) is NaN - The magnitude of the current instance. - - - - Gets the squared magnitude (or squared absolute value) of a complex number. - - The squared magnitude of the current instance. - - - - Gets the unity of this complex (same argument, but on the unit circle; exp(I*arg)) - - The unity of this Complex32. - - - - Gets a value indicating whether the Complex32 is zero. - - true if this instance is zero; otherwise, false. - - - - Gets a value indicating whether the Complex32 is one. - - true if this instance is one; otherwise, false. - - - - Gets a value indicating whether the Complex32 is the imaginary unit. - - true if this instance is ImaginaryOne; otherwise, false. - - - - Gets a value indicating whether the provided Complex32evaluates - to a value that is not a number. - - - true if this instance is ; otherwise, - false. - - - - - Gets a value indicating whether the provided Complex32 evaluates to an - infinite value. - - - true if this instance is infinite; otherwise, false. - - - True if it either evaluates to a complex infinity - or to a directed infinity. - - - - - Gets a value indicating whether the provided Complex32 is real. - - true if this instance is a real number; otherwise, false. - - - - Gets a value indicating whether the provided Complex32 is real and not negative, that is >= 0. - - - true if this instance is real nonnegative number; otherwise, false. - - - - - Exponential of this Complex32 (exp(x), E^x). - - - The exponential of this complex number. - - - - - Natural Logarithm of this Complex32 (Base E). - - The natural logarithm of this complex number. - - - - Common Logarithm of this Complex32 (Base 10). - - The common logarithm of this complex number. - - - - Logarithm of this Complex32 with custom base. - - The logarithm of this complex number. - - - - Raise this Complex32 to the given value. - - - The exponent. - - - The complex number raised to the given exponent. - - - - - Raise this Complex32 to the inverse of the given value. - - - The root exponent. - - - The complex raised to the inverse of the given exponent. - - - - - The Square (power 2) of this Complex32 - - - The square of this complex number. - - - - - The Square Root (power 1/2) of this Complex32 - - - The square root of this complex number. - - - - - Evaluate all square roots of this Complex32. - - - - - Evaluate all cubic roots of this Complex32. - - - - - Equality test. - - One of complex numbers to compare. - The other complex numbers to compare. - true if the real and imaginary components of the two complex numbers are equal; false otherwise. - - - - Inequality test. - - One of complex numbers to compare. - The other complex numbers to compare. - true if the real or imaginary components of the two complex numbers are not equal; false otherwise. - - - - Unary addition. - - The complex number to operate on. - Returns the same complex number. - - - - Unary minus. - - The complex number to operate on. - The negated value of the . - - - Addition operator. Adds two complex numbers together. - The result of the addition. - One of the complex numbers to add. - The other complex numbers to add. - - - Subtraction operator. Subtracts two complex numbers. - The result of the subtraction. - The complex number to subtract from. - The complex number to subtract. - - - Addition operator. Adds a complex number and float together. - The result of the addition. - The complex numbers to add. - The float value to add. - - - Subtraction operator. Subtracts float value from a complex value. - The result of the subtraction. - The complex number to subtract from. - The float value to subtract. - - - Addition operator. Adds a complex number and float together. - The result of the addition. - The float value to add. - The complex numbers to add. - - - Subtraction operator. Subtracts complex value from a float value. - The result of the subtraction. - The float vale to subtract from. - The complex value to subtract. - - - Multiplication operator. Multiplies two complex numbers. - The result of the multiplication. - One of the complex numbers to multiply. - The other complex number to multiply. - - - Multiplication operator. Multiplies a complex number with a float value. - The result of the multiplication. - The float value to multiply. - The complex number to multiply. - - - Multiplication operator. Multiplies a complex number with a float value. - The result of the multiplication. - The complex number to multiply. - The float value to multiply. - - - Division operator. Divides a complex number by another. - Enhanced Smith's algorithm for dividing two complex numbers - - The result of the division. - The dividend. - The divisor. - - - - Helper method for dividing. - - Re first - Im first - Re second - Im second - - - - - Division operator. Divides a float value by a complex number. - Algorithm based on Smith's algorithm - - The result of the division. - The dividend. - The divisor. - - - Division operator. Divides a complex number by a float value. - The result of the division. - The dividend. - The divisor. - - - - Computes the conjugate of a complex number and returns the result. - - - - - Returns the multiplicative inverse of a complex number. - - - - - Converts the value of the current complex number to its equivalent string representation in Cartesian form. - - The string representation of the current instance in Cartesian form. - - - - Converts the value of the current complex number to its equivalent string representation - in Cartesian form by using the specified format for its real and imaginary parts. - - The string representation of the current instance in Cartesian form. - A standard or custom numeric format string. - - is not a valid format string. - - - - Converts the value of the current complex number to its equivalent string representation - in Cartesian form by using the specified culture-specific formatting information. - - The string representation of the current instance in Cartesian form, as specified by . - An object that supplies culture-specific formatting information. - - - Converts the value of the current complex number to its equivalent string representation - in Cartesian form by using the specified format and culture-specific format information for its real and imaginary parts. - The string representation of the current instance in Cartesian form, as specified by and . - A standard or custom numeric format string. - An object that supplies culture-specific formatting information. - - is not a valid format string. - - - - Checks if two complex numbers are equal. Two complex numbers are equal if their - corresponding real and imaginary components are equal. - - - Returns true if the two objects are the same object, or if their corresponding - real and imaginary components are equal, false otherwise. - - - The complex number to compare to with. - - - - - The hash code for the complex number. - - - The hash code of the complex number. - - - The hash code is calculated as - System.Math.Exp(ComplexMath.Absolute(complexNumber)). - - - - - Checks if two complex numbers are equal. Two complex numbers are equal if their - corresponding real and imaginary components are equal. - - - Returns true if the two objects are the same object, or if their corresponding - real and imaginary components are equal, false otherwise. - - - The complex number to compare to with. - - - - - Creates a complex number based on a string. The string can be in the - following formats (without the quotes): 'n', 'ni', 'n +/- ni', - 'ni +/- n', 'n,n', 'n,ni,' '(n,n)', or '(n,ni)', where n is a float. - - - A complex number containing the value specified by the given string. - - - the string to parse. - - - An that supplies culture-specific - formatting information. - - - - - Parse a part (real or complex) from a complex number. - - Start Token. - Is set to true if the part identified itself as being imaginary. - - An that supplies culture-specific - formatting information. - - Resulting part as float. - - - - - Converts the string representation of a complex number to a single-precision complex number equivalent. - A return value indicates whether the conversion succeeded or failed. - - - A string containing a complex number to convert. - - - The parsed value. - - - If the conversion succeeds, the result will contain a complex number equivalent to value. - Otherwise the result will contain complex32.Zero. This parameter is passed uninitialized - - - - - Converts the string representation of a complex number to single-precision complex number equivalent. - A return value indicates whether the conversion succeeded or failed. - - - A string containing a complex number to convert. - - - An that supplies culture-specific formatting information about value. - - - The parsed value. - - - If the conversion succeeds, the result will contain a complex number equivalent to value. - Otherwise the result will contain complex32.Zero. This parameter is passed uninitialized - - - - - Explicit conversion of a real decimal to a Complex32. - - The decimal value to convert. - The result of the conversion. - - - - Explicit conversion of a Complex to a Complex32. - - The decimal value to convert. - The result of the conversion. - - - - Implicit conversion of a real byte to a Complex32. - - The byte value to convert. - The result of the conversion. - - - - Implicit conversion of a real short to a Complex32. - - The short value to convert. - The result of the conversion. - - - - Implicit conversion of a signed byte to a Complex32. - - The signed byte value to convert. - The result of the conversion. - - - - Implicit conversion of a unsigned real short to a Complex32. - - The unsigned short value to convert. - The result of the conversion. - - - - Implicit conversion of a real int to a Complex32. - - The int value to convert. - The result of the conversion. - - - - Implicit conversion of a BigInteger int to a Complex32. - - The BigInteger value to convert. - The result of the conversion. - - - - Implicit conversion of a real long to a Complex32. - - The long value to convert. - The result of the conversion. - - - - Implicit conversion of a real uint to a Complex32. - - The uint value to convert. - The result of the conversion. - - - - Implicit conversion of a real ulong to a Complex32. - - The ulong value to convert. - The result of the conversion. - - - - Implicit conversion of a real float to a Complex32. - - The float value to convert. - The result of the conversion. - - - - Implicit conversion of a real double to a Complex32. - - The double value to convert. - The result of the conversion. - - - - Converts this Complex32 to a . - - A with the same values as this Complex32. - - - - Returns the additive inverse of a specified complex number. - - The result of the real and imaginary components of the value parameter multiplied by -1. - A complex number. - - - - Computes the conjugate of a complex number and returns the result. - - The conjugate of . - A complex number. - - - - Adds two complex numbers and returns the result. - - The sum of and . - The first complex number to add. - The second complex number to add. - - - - Subtracts one complex number from another and returns the result. - - The result of subtracting from . - The value to subtract from (the minuend). - The value to subtract (the subtrahend). - - - - Returns the product of two complex numbers. - - The product of the and parameters. - The first complex number to multiply. - The second complex number to multiply. - - - - Divides one complex number by another and returns the result. - - The quotient of the division. - The complex number to be divided. - The complex number to divide by. - - - - Returns the multiplicative inverse of a complex number. - - The reciprocal of . - A complex number. - - - - Returns the square root of a specified complex number. - - The square root of . - A complex number. - - - - Gets the absolute value (or magnitude) of a complex number. - - The absolute value of . - A complex number. - - - - Returns e raised to the power specified by a complex number. - - The number e raised to the power . - A complex number that specifies a power. - - - - Returns a specified complex number raised to a power specified by a complex number. - - The complex number raised to the power . - A complex number to be raised to a power. - A complex number that specifies a power. - - - - Returns a specified complex number raised to a power specified by a single-precision floating-point number. - - The complex number raised to the power . - A complex number to be raised to a power. - A single-precision floating-point number that specifies a power. - - - - Returns the natural (base e) logarithm of a specified complex number. - - The natural (base e) logarithm of . - A complex number. - - - - Returns the logarithm of a specified complex number in a specified base. - - The logarithm of in base . - A complex number. - The base of the logarithm. - - - - Returns the base-10 logarithm of a specified complex number. - - The base-10 logarithm of . - A complex number. - - - - Returns the sine of the specified complex number. - - The sine of . - A complex number. - - - - Returns the cosine of the specified complex number. - - The cosine of . - A complex number. - - - - Returns the tangent of the specified complex number. - - The tangent of . - A complex number. - - - - Returns the angle that is the arc sine of the specified complex number. - - The angle which is the arc sine of . - A complex number. - - - - Returns the angle that is the arc cosine of the specified complex number. - - The angle, measured in radians, which is the arc cosine of . - A complex number that represents a cosine. - - - - Returns the angle that is the arc tangent of the specified complex number. - - The angle that is the arc tangent of . - A complex number. - - - - Returns the hyperbolic sine of the specified complex number. - - The hyperbolic sine of . - A complex number. - - - - Returns the hyperbolic cosine of the specified complex number. - - The hyperbolic cosine of . - A complex number. - - - - Returns the hyperbolic tangent of the specified complex number. - - The hyperbolic tangent of . - A complex number. - - - - Extension methods for the Complex type provided by System.Numerics - - - - - Gets the squared magnitude of the Complex number. - - The number to perform this operation on. - The squared magnitude of the Complex number. - - - - Gets the squared magnitude of the Complex number. - - The number to perform this operation on. - The squared magnitude of the Complex number. - - - - Gets the unity of this complex (same argument, but on the unit circle; exp(I*arg)) - - The unity of this Complex. - - - - Gets the conjugate of the Complex number. - - The number to perform this operation on. - - The semantic of setting the conjugate is such that - - // a, b of type Complex32 - a.Conjugate = b; - - is equivalent to - - // a, b of type Complex32 - a = b.Conjugate - - - The conjugate of the number. - - - - Returns the multiplicative inverse of a complex number. - - - - - Exponential of this Complex (exp(x), E^x). - - The number to perform this operation on. - - The exponential of this complex number. - - - - - Natural Logarithm of this Complex (Base E). - - The number to perform this operation on. - - The natural logarithm of this complex number. - - - - - Common Logarithm of this Complex (Base 10). - - The common logarithm of this complex number. - - - - Logarithm of this Complex with custom base. - - The logarithm of this complex number. - - - - Raise this Complex to the given value. - - The number to perform this operation on. - - The exponent. - - - The complex number raised to the given exponent. - - - - - Raise this Complex to the inverse of the given value. - - The number to perform this operation on. - - The root exponent. - - - The complex raised to the inverse of the given exponent. - - - - - The Square (power 2) of this Complex - - The number to perform this operation on. - - The square of this complex number. - - - - - The Square Root (power 1/2) of this Complex - - The number to perform this operation on. - - The square root of this complex number. - - - - - Evaluate all square roots of this Complex. - - - - - Evaluate all cubic roots of this Complex. - - - - - Gets a value indicating whether the Complex32 is zero. - - The number to perform this operation on. - true if this instance is zero; otherwise, false. - - - - Gets a value indicating whether the Complex32 is one. - - The number to perform this operation on. - true if this instance is one; otherwise, false. - - - - Gets a value indicating whether the Complex32 is the imaginary unit. - - true if this instance is ImaginaryOne; otherwise, false. - The number to perform this operation on. - - - - Gets a value indicating whether the provided Complex32evaluates - to a value that is not a number. - - The number to perform this operation on. - - true if this instance is NaN; otherwise, - false. - - - - - Gets a value indicating whether the provided Complex32 evaluates to an - infinite value. - - The number to perform this operation on. - - true if this instance is infinite; otherwise, false. - - - True if it either evaluates to a complex infinity - or to a directed infinity. - - - - - Gets a value indicating whether the provided Complex32 is real. - - The number to perform this operation on. - true if this instance is a real number; otherwise, false. - - - - Gets a value indicating whether the provided Complex32 is real and not negative, that is >= 0. - - The number to perform this operation on. - - true if this instance is real nonnegative number; otherwise, false. - - - - - Returns a Norm of a value of this type, which is appropriate for measuring how - close this value is to zero. - - - - - Returns a Norm of a value of this type, which is appropriate for measuring how - close this value is to zero. - - - - - Returns a Norm of the difference of two values of this type, which is - appropriate for measuring how close together these two values are. - - - - - Returns a Norm of the difference of two values of this type, which is - appropriate for measuring how close together these two values are. - - - - - Creates a complex number based on a string. The string can be in the - following formats (without the quotes): 'n', 'ni', 'n +/- ni', - 'ni +/- n', 'n,n', 'n,ni,' '(n,n)', or '(n,ni)', where n is a double. - - - A complex number containing the value specified by the given string. - - - The string to parse. - - - - - Creates a complex number based on a string. The string can be in the - following formats (without the quotes): 'n', 'ni', 'n +/- ni', - 'ni +/- n', 'n,n', 'n,ni,' '(n,n)', or '(n,ni)', where n is a double. - - - A complex number containing the value specified by the given string. - - - the string to parse. - - - An that supplies culture-specific - formatting information. - - - - - Parse a part (real or complex) from a complex number. - - Start Token. - Is set to true if the part identified itself as being imaginary. - - An that supplies culture-specific - formatting information. - - Resulting part as double. - - - - - Converts the string representation of a complex number to a double-precision complex number equivalent. - A return value indicates whether the conversion succeeded or failed. - - - A string containing a complex number to convert. - - - The parsed value. - - - If the conversion succeeds, the result will contain a complex number equivalent to value. - Otherwise the result will contain Complex.Zero. This parameter is passed uninitialized. - - - - - Converts the string representation of a complex number to double-precision complex number equivalent. - A return value indicates whether the conversion succeeded or failed. - - - A string containing a complex number to convert. - - - An that supplies culture-specific formatting information about value. - - - The parsed value. - - - If the conversion succeeds, the result will contain a complex number equivalent to value. - Otherwise the result will contain complex32.Zero. This parameter is passed uninitialized - - - - - Creates a Complex32 number based on a string. The string can be in the - following formats (without the quotes): 'n', 'ni', 'n +/- ni', - 'ni +/- n', 'n,n', 'n,ni,' '(n,n)', or '(n,ni)', where n is a double. - - - A complex number containing the value specified by the given string. - - - the string to parse. - - - - - Creates a Complex32 number based on a string. The string can be in the - following formats (without the quotes): 'n', 'ni', 'n +/- ni', - 'ni +/- n', 'n,n', 'n,ni,' '(n,n)', or '(n,ni)', where n is a double. - - - A complex number containing the value specified by the given string. - - - the string to parse. - - - An that supplies culture-specific - formatting information. - - - - - Converts the string representation of a complex number to a single-precision complex number equivalent. - A return value indicates whether the conversion succeeded or failed. - - - A string containing a complex number to convert. - - - The parsed value. - - - If the conversion succeeds, the result will contain a complex number equivalent to value. - Otherwise the result will contain complex32.Zero. This parameter is passed uninitialized. - - - - - Converts the string representation of a complex number to single-precision complex number equivalent. - A return value indicates whether the conversion succeeded or failed. - - - A string containing a complex number to convert. - - - An that supplies culture-specific formatting information about value. - - - The parsed value. - - - If the conversion succeeds, the result will contain a complex number equivalent to value. - Otherwise the result will contain Complex.Zero. This parameter is passed uninitialized. - - - - - A collection of frequently used mathematical constants. - - - - The number e - - - The number log[2](e) - - - The number log[10](e) - - - The number log[e](2) - - - The number log[e](10) - - - The number log[e](pi) - - - The number log[e](2*pi)/2 - - - The number 1/e - - - The number sqrt(e) - - - The number sqrt(2) - - - The number sqrt(3) - - - The number sqrt(1/2) = 1/sqrt(2) = sqrt(2)/2 - - - The number sqrt(3)/2 - - - The number pi - - - The number pi*2 - - - The number pi/2 - - - The number pi*3/2 - - - The number pi/4 - - - The number sqrt(pi) - - - The number sqrt(2pi) - - - The number sqrt(pi/2) - - - The number sqrt(2*pi*e) - - - The number log(sqrt(2*pi)) - - - The number log(sqrt(2*pi*e)) - - - The number log(2 * sqrt(e / pi)) - - - The number 1/pi - - - The number 2/pi - - - The number 1/sqrt(pi) - - - The number 1/sqrt(2pi) - - - The number 2/sqrt(pi) - - - The number 2 * sqrt(e / pi) - - - The number (pi)/180 - factor to convert from Degree (deg) to Radians (rad). - - - - - The number (pi)/200 - factor to convert from NewGrad (grad) to Radians (rad). - - - - - The number ln(10)/20 - factor to convert from Power Decibel (dB) to Neper (Np). Use this version when the Decibel represent a power gain but the compared values are not powers (e.g. amplitude, current, voltage). - - - The number ln(10)/10 - factor to convert from Neutral Decibel (dB) to Neper (Np). Use this version when either both or neither of the Decibel and the compared values represent powers. - - - The Catalan constant - Sum(k=0 -> inf){ (-1)^k/(2*k + 1)2 } - - - The Euler-Mascheroni constant - lim(n -> inf){ Sum(k=1 -> n) { 1/k - log(n) } } - - - The number (1+sqrt(5))/2, also known as the golden ratio - - - The Glaisher constant - e^(1/12 - Zeta(-1)) - - - The Khinchin constant - prod(k=1 -> inf){1+1/(k*(k+2))^log(k,2)} - - - - The size of a double in bytes. - - - - - The size of an int in bytes. - - - - - The size of a float in bytes. - - - - - The size of a Complex in bytes. - - - - - The size of a Complex in bytes. - - - - Speed of Light in Vacuum: c_0 = 2.99792458e8 [m s^-1] (defined, exact; 2007 CODATA) - - - Magnetic Permeability in Vacuum: mu_0 = 4*Pi * 10^-7 [N A^-2 = kg m A^-2 s^-2] (defined, exact; 2007 CODATA) - - - Electric Permittivity in Vacuum: epsilon_0 = 1/(mu_0*c_0^2) [F m^-1 = A^2 s^4 kg^-1 m^-3] (defined, exact; 2007 CODATA) - - - Characteristic Impedance of Vacuum: Z_0 = mu_0*c_0 [Ohm = m^2 kg s^-3 A^-2] (defined, exact; 2007 CODATA) - - - Newtonian Constant of Gravitation: G = 6.67429e-11 [m^3 kg^-1 s^-2] (2007 CODATA) - - - Planck's constant: h = 6.62606896e-34 [J s = m^2 kg s^-1] (2007 CODATA) - - - Reduced Planck's constant: h_bar = h / (2*Pi) [J s = m^2 kg s^-1] (2007 CODATA) - - - Planck mass: m_p = (h_bar*c_0/G)^(1/2) [kg] (2007 CODATA) - - - Planck temperature: T_p = (h_bar*c_0^5/G)^(1/2)/k [K] (2007 CODATA) - - - Planck length: l_p = h_bar/(m_p*c_0) [m] (2007 CODATA) - - - Planck time: t_p = l_p/c_0 [s] (2007 CODATA) - - - Elementary Electron Charge: e = 1.602176487e-19 [C = A s] (2007 CODATA) - - - Magnetic Flux Quantum: theta_0 = h/(2*e) [Wb = m^2 kg s^-2 A^-1] (2007 CODATA) - - - Conductance Quantum: G_0 = 2*e^2/h [S = m^-2 kg^-1 s^3 A^2] (2007 CODATA) - - - Josephson Constant: K_J = 2*e/h [Hz V^-1] (2007 CODATA) - - - Von Klitzing Constant: R_K = h/e^2 [Ohm = m^2 kg s^-3 A^-2] (2007 CODATA) - - - Bohr Magneton: mu_B = e*h_bar/2*m_e [J T^-1] (2007 CODATA) - - - Nuclear Magneton: mu_N = e*h_bar/2*m_p [J T^-1] (2007 CODATA) - - - Fine Structure Constant: alpha = e^2/4*Pi*e_0*h_bar*c_0 [1] (2007 CODATA) - - - Rydberg Constant: R_infty = alpha^2*m_e*c_0/2*h [m^-1] (2007 CODATA) - - - Bor Radius: a_0 = alpha/4*Pi*R_infty [m] (2007 CODATA) - - - Hartree Energy: E_h = 2*R_infty*h*c_0 [J] (2007 CODATA) - - - Quantum of Circulation: h/2*m_e [m^2 s^-1] (2007 CODATA) - - - Fermi Coupling Constant: G_F/(h_bar*c_0)^3 [GeV^-2] (2007 CODATA) - - - Weak Mixin Angle: sin^2(theta_W) [1] (2007 CODATA) - - - Electron Mass: [kg] (2007 CODATA) - - - Electron Mass Energy Equivalent: [J] (2007 CODATA) - - - Electron Molar Mass: [kg mol^-1] (2007 CODATA) - - - Electron Compton Wavelength: [m] (2007 CODATA) - - - Classical Electron Radius: [m] (2007 CODATA) - - - Thomson Cross Section: [m^2] (2002 CODATA) - - - Electron Magnetic Moment: [J T^-1] (2007 CODATA) - - - Electon G-Factor: [1] (2007 CODATA) - - - Muon Mass: [kg] (2007 CODATA) - - - Muon Mass Energy Equivalent: [J] (2007 CODATA) - - - Muon Molar Mass: [kg mol^-1] (2007 CODATA) - - - Muon Compton Wavelength: [m] (2007 CODATA) - - - Muon Magnetic Moment: [J T^-1] (2007 CODATA) - - - Muon G-Factor: [1] (2007 CODATA) - - - Tau Mass: [kg] (2007 CODATA) - - - Tau Mass Energy Equivalent: [J] (2007 CODATA) - - - Tau Molar Mass: [kg mol^-1] (2007 CODATA) - - - Tau Compton Wavelength: [m] (2007 CODATA) - - - Proton Mass: [kg] (2007 CODATA) - - - Proton Mass Energy Equivalent: [J] (2007 CODATA) - - - Proton Molar Mass: [kg mol^-1] (2007 CODATA) - - - Proton Compton Wavelength: [m] (2007 CODATA) - - - Proton Magnetic Moment: [J T^-1] (2007 CODATA) - - - Proton G-Factor: [1] (2007 CODATA) - - - Proton Shielded Magnetic Moment: [J T^-1] (2007 CODATA) - - - Proton Gyro-Magnetic Ratio: [s^-1 T^-1] (2007 CODATA) - - - Proton Shielded Gyro-Magnetic Ratio: [s^-1 T^-1] (2007 CODATA) - - - Neutron Mass: [kg] (2007 CODATA) - - - Neutron Mass Energy Equivalent: [J] (2007 CODATA) - - - Neutron Molar Mass: [kg mol^-1] (2007 CODATA) - - - Neuron Compton Wavelength: [m] (2007 CODATA) - - - Neutron Magnetic Moment: [J T^-1] (2007 CODATA) - - - Neutron G-Factor: [1] (2007 CODATA) - - - Neutron Gyro-Magnetic Ratio: [s^-1 T^-1] (2007 CODATA) - - - Deuteron Mass: [kg] (2007 CODATA) - - - Deuteron Mass Energy Equivalent: [J] (2007 CODATA) - - - Deuteron Molar Mass: [kg mol^-1] (2007 CODATA) - - - Deuteron Magnetic Moment: [J T^-1] (2007 CODATA) - - - Helion Mass: [kg] (2007 CODATA) - - - Helion Mass Energy Equivalent: [J] (2007 CODATA) - - - Helion Molar Mass: [kg mol^-1] (2007 CODATA) - - - Avogadro constant: [mol^-1] (2010 CODATA) - - - The SI prefix factor corresponding to 1 000 000 000 000 000 000 000 000 - - - The SI prefix factor corresponding to 1 000 000 000 000 000 000 000 - - - The SI prefix factor corresponding to 1 000 000 000 000 000 000 - - - The SI prefix factor corresponding to 1 000 000 000 000 000 - - - The SI prefix factor corresponding to 1 000 000 000 000 - - - The SI prefix factor corresponding to 1 000 000 000 - - - The SI prefix factor corresponding to 1 000 000 - - - The SI prefix factor corresponding to 1 000 - - - The SI prefix factor corresponding to 100 - - - The SI prefix factor corresponding to 10 - - - The SI prefix factor corresponding to 0.1 - - - The SI prefix factor corresponding to 0.01 - - - The SI prefix factor corresponding to 0.001 - - - The SI prefix factor corresponding to 0.000 001 - - - The SI prefix factor corresponding to 0.000 000 001 - - - The SI prefix factor corresponding to 0.000 000 000 001 - - - The SI prefix factor corresponding to 0.000 000 000 000 001 - - - The SI prefix factor corresponding to 0.000 000 000 000 000 001 - - - The SI prefix factor corresponding to 0.000 000 000 000 000 000 001 - - - The SI prefix factor corresponding to 0.000 000 000 000 000 000 000 001 - - - - Sets parameters for the library. - - - - - Use a specific provider if configured, e.g. using - environment variables, or fall back to the best providers. - - - - - Use the best provider available. - - - - - Use the Intel MKL native provider for linear algebra. - Throws if it is not available or failed to initialize, in which case the previous provider is still active. - - - - - Try to use the Intel MKL native provider for linear algebra. - - - True if the provider was found and initialized successfully. - False if it failed and the previous provider is still active. - - - - - Use the Nvidia CUDA native provider for linear algebra. - Throws if it is not available or failed to initialize, in which case the previous provider is still active. - - - - - Try to use the Nvidia CUDA native provider for linear algebra. - - - True if the provider was found and initialized successfully. - False if it failed and the previous provider is still active. - - - - - Use the OpenBLAS native provider for linear algebra. - Throws if it is not available or failed to initialize, in which case the previous provider is still active. - - - - - Try to use the OpenBLAS native provider for linear algebra. - - - True if the provider was found and initialized successfully. - False if it failed and the previous provider is still active. - - - - - Try to use any available native provider in an undefined order. - - - True if one of the native providers was found and successfully initialized. - False if it failed and the previous provider is still active. - - - - - Gets or sets a value indicating whether the distribution classes check validate each parameter. - For the multivariate distributions this could involve an expensive matrix factorization. - The default setting of this property is true. - - - - - Gets or sets a value indicating whether to use thread safe random number generators (RNG). - Thread safe RNG about two and half time slower than non-thread safe RNG. - - - true to use thread safe random number generators ; otherwise, false. - - - - - Optional path to try to load native provider binaries from. - - - - - Gets or sets a value indicating how many parallel worker threads shall be used - when parallelization is applicable. - - Default to the number of processor cores, must be between 1 and 1024 (inclusive). - - - - Gets or sets the TaskScheduler used to schedule the worker tasks. - - - - - Gets or sets the order of the matrix when linear algebra provider - must calculate multiply in parallel threads. - - The order. Default 64, must be at least 3. - - - - Gets or sets the number of elements a vector or matrix - must contain before we multiply threads. - - Number of elements. Default 300, must be at least 3. - - - - Numerical Derivative. - - - - - Initialized a NumericalDerivative with the given points and center. - - - - - Initialized a NumericalDerivative with the default points and center for the given order. - - - - - Evaluates the derivative of a scalar univariate function. - - Univariate function handle. - Point at which to evaluate the derivative. - Derivative order. - - - - Creates a function handle for the derivative of a scalar univariate function. - - Univariate function handle. - Derivative order. - - - - Evaluates the first derivative of a scalar univariate function. - - Univariate function handle. - Point at which to evaluate the derivative. - - - - Creates a function handle for the first derivative of a scalar univariate function. - - Univariate function handle. - - - - Evaluates the second derivative of a scalar univariate function. - - Univariate function handle. - Point at which to evaluate the derivative. - - - - Creates a function handle for the second derivative of a scalar univariate function. - - Univariate function handle. - - - - Evaluates the partial derivative of a multivariate function. - - Multivariate function handle. - Vector at which to evaluate the derivative. - Index of independent variable for partial derivative. - Derivative order. - - - - Creates a function handle for the partial derivative of a multivariate function. - - Multivariate function handle. - Index of independent variable for partial derivative. - Derivative order. - - - - Evaluates the first partial derivative of a multivariate function. - - Multivariate function handle. - Vector at which to evaluate the derivative. - Index of independent variable for partial derivative. - - - - Creates a function handle for the first partial derivative of a multivariate function. - - Multivariate function handle. - Index of independent variable for partial derivative. - - - - Evaluates the partial derivative of a bivariate function. - - Bivariate function handle. - First argument at which to evaluate the derivative. - Second argument at which to evaluate the derivative. - Index of independent variable for partial derivative. - Derivative order. - - - - Creates a function handle for the partial derivative of a bivariate function. - - Bivariate function handle. - Index of independent variable for partial derivative. - Derivative order. - - - - Evaluates the first partial derivative of a bivariate function. - - Bivariate function handle. - First argument at which to evaluate the derivative. - Second argument at which to evaluate the derivative. - Index of independent variable for partial derivative. - - - - Creates a function handle for the first partial derivative of a bivariate function. - - Bivariate function handle. - Index of independent variable for partial derivative. - - - - Class to calculate finite difference coefficients using Taylor series expansion method. - - - For n points, coefficients are calculated up to the maximum derivative order possible (n-1). - The current function value position specifies the "center" for surrounding coefficients. - Selecting the first, middle or last positions represent forward, backwards and central difference methods. - - - - - - - Number of points for finite difference coefficients. Changing this value recalculates the coefficients table. - - - - - Initializes a new instance of the class. - - Number of finite difference coefficients. - - - - Gets the finite difference coefficients for a specified center and order. - - Current function position with respect to coefficients. Must be within point range. - Order of finite difference coefficients. - Vector of finite difference coefficients. - - - - Gets the finite difference coefficients for all orders at a specified center. - - Current function position with respect to coefficients. Must be within point range. - Rectangular array of coefficients, with columns specifying order. - - - - Type of finite different step size. - - - - - The absolute step size value will be used in numerical derivatives, regardless of order or function parameters. - - - - - A base step size value, h, will be scaled according to the function input parameter. A common example is hx = h*(1+abs(x)), however - this may vary depending on implementation. This definition only guarantees that the only scaling will be relative to the - function input parameter and not the order of the finite difference derivative. - - - - - A base step size value, eps (typically machine precision), is scaled according to the finite difference coefficient order - and function input parameter. The initial scaling according to finite different coefficient order can be thought of as producing a - base step size, h, that is equivalent to scaling. This step size is then scaled according to the function - input parameter. Although implementation may vary, an example of second order accurate scaling may be (eps)^(1/3)*(1+abs(x)). - - - - - Class to evaluate the numerical derivative of a function using finite difference approximations. - Variable point and center methods can be initialized . - This class can also be used to return function handles (delegates) for a fixed derivative order and variable. - It is possible to evaluate the derivative and partial derivative of univariate and multivariate functions respectively. - - - - - Initializes a NumericalDerivative class with the default 3 point center difference method. - - - - - Initialized a NumericalDerivative class. - - Number of points for finite difference derivatives. - Location of the center with respect to other points. Value ranges from zero to points-1. - - - - Sets and gets the finite difference step size. This value is for each function evaluation if relative step size types are used. - If the base step size used in scaling is desired, see . - - - Setting then getting the StepSize may return a different value. This is not unusual since a user-defined step size is converted to a - base-2 representable number to improve finite difference accuracy. - - - - - Sets and gets the base finite difference step size. This assigned value to this parameter is only used if is set to RelativeX. - However, if the StepType is Relative, it will contain the base step size computed from based on the finite difference order. - - - - - Sets and gets the base finite difference step size. This parameter is only used if is set to Relative. - By default this is set to machine epsilon, from which is computed. - - - - - Sets and gets the location of the center point for the finite difference derivative. - - - - - Number of times a function is evaluated for numerical derivatives. - - - - - Type of step size for computing finite differences. If set to absolute, dx = h. - If set to relative, dx = (1+abs(x))*h^(2/(order+1)). This provides accurate results when - h is approximately equal to the square-root of machine accuracy, epsilon. - - - - - Evaluates the derivative of equidistant points using the finite difference method. - - Vector of points StepSize apart. - Derivative order. - Finite difference step size. - Derivative of points of the specified order. - - - - Evaluates the derivative of a scalar univariate function. - - - Supplying the optional argument currentValue will reduce the number of function evaluations - required to calculate the finite difference derivative. - - Function handle. - Point at which to compute the derivative. - Derivative order. - Current function value at center. - Function derivative at x of the specified order. - - - - Creates a function handle for the derivative of a scalar univariate function. - - Input function handle. - Derivative order. - Function handle that evaluates the derivative of input function at a fixed order. - - - - Evaluates the partial derivative of a multivariate function. - - Multivariate function handle. - Vector at which to evaluate the derivative. - Index of independent variable for partial derivative. - Derivative order. - Current function value at center. - Function partial derivative at x of the specified order. - - - - Evaluates the partial derivatives of a multivariate function array. - - - This function assumes the input vector x is of the correct length for f. - - Multivariate vector function array handle. - Vector at which to evaluate the derivatives. - Index of independent variable for partial derivative. - Derivative order. - Current function value at center. - Vector of functions partial derivatives at x of the specified order. - - - - Creates a function handle for the partial derivative of a multivariate function. - - Input function handle. - Index of the independent variable for partial derivative. - Derivative order. - Function handle that evaluates partial derivative of input function at a fixed order. - - - - Creates a function handle for the partial derivative of a vector multivariate function. - - Input function handle. - Index of the independent variable for partial derivative. - Derivative order. - Function handle that evaluates partial derivative of input function at fixed order. - - - - Evaluates the mixed partial derivative of variable order for multivariate functions. - - - This function recursively uses to evaluate mixed partial derivative. - Therefore, it is more efficient to call for higher order derivatives of - a single independent variable. - - Multivariate function handle. - Points at which to evaluate the derivative. - Vector of indices for the independent variables at descending derivative orders. - Highest order of differentiation. - Current function value at center. - Function mixed partial derivative at x of the specified order. - - - - Evaluates the mixed partial derivative of variable order for multivariate function arrays. - - - This function recursively uses to evaluate mixed partial derivative. - Therefore, it is more efficient to call for higher order derivatives of - a single independent variable. - - Multivariate function array handle. - Vector at which to evaluate the derivative. - Vector of indices for the independent variables at descending derivative orders. - Highest order of differentiation. - Current function value at center. - Function mixed partial derivatives at x of the specified order. - - - - Creates a function handle for the mixed partial derivative of a multivariate function. - - Input function handle. - Vector of indices for the independent variables at descending derivative orders. - Highest derivative order. - Function handle that evaluates the fixed mixed partial derivative of input function at fixed order. - - - - Creates a function handle for the mixed partial derivative of a multivariate vector function. - - Input vector function handle. - Vector of indices for the independent variables at descending derivative orders. - Highest derivative order. - Function handle that evaluates the fixed mixed partial derivative of input function at fixed order. - - - - Resets the evaluation counter. - - - - - Class for evaluating the Hessian of a smooth continuously differentiable function using finite differences. - By default, a central 3-point method is used. - - - - - Number of function evaluations. - - - - - Creates a numerical Hessian object with a three point central difference method. - - - - - Creates a numerical Hessian with a specified differentiation scheme. - - Number of points for Hessian evaluation. - Center point for differentiation. - - - - Evaluates the Hessian of the scalar univariate function f at points x. - - Scalar univariate function handle. - Point at which to evaluate Hessian. - Hessian tensor. - - - - Evaluates the Hessian of a multivariate function f at points x. - - - This method of computing the Hessian is only valid for Lipschitz continuous functions. - The function mirrors the Hessian along the diagonal since d2f/dxdy = d2f/dydx for continuously differentiable functions. - - Multivariate function handle.> - Points at which to evaluate Hessian.> - Hessian tensor. - - - - Resets the function evaluation counter for the Hessian. - - - - - Class for evaluating the Jacobian of a function using finite differences. - By default, a central 3-point method is used. - - - - - Number of function evaluations. - - - - - Creates a numerical Jacobian object with a three point central difference method. - - - - - Creates a numerical Jacobian with a specified differentiation scheme. - - Number of points for Jacobian evaluation. - Center point for differentiation. - - - - Evaluates the Jacobian of scalar univariate function f at point x. - - Scalar univariate function handle. - Point at which to evaluate Jacobian. - Jacobian vector. - - - - Evaluates the Jacobian of a multivariate function f at vector x. - - - This function assumes that the length of vector x consistent with the argument count of f. - - Multivariate function handle. - Points at which to evaluate Jacobian. - Jacobian vector. - - - - Evaluates the Jacobian of a multivariate function f at vector x given a current function value. - - - To minimize the number of function evaluations, a user can supply the current value of the function - to be used in computing the Jacobian. This value must correspond to the "center" location for the - finite differencing. If a scheme is used where the center value is not evaluated, this will provide no - added efficiency. This method also assumes that the length of vector x consistent with the argument count of f. - - Multivariate function handle. - Points at which to evaluate Jacobian. - Current function value at finite difference center. - Jacobian vector. - - - - Evaluates the Jacobian of a multivariate function array f at vector x. - - Multivariate function array handle. - Vector at which to evaluate Jacobian. - Jacobian matrix. - - - - Evaluates the Jacobian of a multivariate function array f at vector x given a vector of current function values. - - - To minimize the number of function evaluations, a user can supply a vector of current values of the functions - to be used in computing the Jacobian. These value must correspond to the "center" location for the - finite differencing. If a scheme is used where the center value is not evaluated, this will provide no - added efficiency. This method also assumes that the length of vector x consistent with the argument count of f. - - Multivariate function array handle. - Vector at which to evaluate Jacobian. - Vector of current function values. - Jacobian matrix. - - - - Resets the function evaluation counter for the Jacobian. - - - - - Evaluates the Riemann-Liouville fractional derivative that uses the double exponential integration. - - - order = 1.0 : normal derivative - order = 0.5 : semi-derivative - order = -0.5 : semi-integral - order = -1.0 : normal integral - - The analytic smooth function to differintegrate. - The evaluation point. - The order of fractional derivative. - The reference point of integration. - The expected relative accuracy of the Double-Exponential integration. - Approximation of the differintegral of order n at x. - - - - Evaluates the Riemann-Liouville fractional derivative that uses the Gauss-Legendre integration. - - - order = 1.0 : normal derivative - order = 0.5 : semi-derivative - order = -0.5 : semi-integral - order = -1.0 : normal integral - - The analytic smooth function to differintegrate. - The evaluation point. - The order of fractional derivative. - The reference point of integration. - The number of Gauss-Legendre points. - Approximation of the differintegral of order n at x. - - - - Evaluates the Riemann-Liouville fractional derivative that uses the Gauss-Kronrod integration. - - - order = 1.0 : normal derivative - order = 0.5 : semi-derivative - order = -0.5 : semi-integral - order = -1.0 : normal integral - - The analytic smooth function to differintegrate. - The evaluation point. - The order of fractional derivative. - The reference point of integration. - The expected relative accuracy of the Gauss-Kronrod integration. - The number of Gauss-Kronrod points. Pre-computed for 15, 21, 31, 41, 51 and 61 points. - Approximation of the differintegral of order n at x. - - - - Metrics to measure the distance between two structures. - - - - - Sum of Absolute Difference (SAD), i.e. the L1-norm (Manhattan) of the difference. - - - - - Sum of Absolute Difference (SAD), i.e. the L1-norm (Manhattan) of the difference. - - - - - Sum of Absolute Difference (SAD), i.e. the L1-norm (Manhattan) of the difference. - - - - - Mean-Absolute Error (MAE), i.e. the normalized L1-norm (Manhattan) of the difference. - - - - - Mean-Absolute Error (MAE), i.e. the normalized L1-norm (Manhattan) of the difference. - - - - - Mean-Absolute Error (MAE), i.e. the normalized L1-norm (Manhattan) of the difference. - - - - - Sum of Squared Difference (SSD), i.e. the squared L2-norm (Euclidean) of the difference. - - - - - Sum of Squared Difference (SSD), i.e. the squared L2-norm (Euclidean) of the difference. - - - - - Sum of Squared Difference (SSD), i.e. the squared L2-norm (Euclidean) of the difference. - - - - - Mean-Squared Error (MSE), i.e. the normalized squared L2-norm (Euclidean) of the difference. - - - - - Mean-Squared Error (MSE), i.e. the normalized squared L2-norm (Euclidean) of the difference. - - - - - Mean-Squared Error (MSE), i.e. the normalized squared L2-norm (Euclidean) of the difference. - - - - - Euclidean Distance, i.e. the L2-norm of the difference. - - - - - Euclidean Distance, i.e. the L2-norm of the difference. - - - - - Euclidean Distance, i.e. the L2-norm of the difference. - - - - - Manhattan Distance, i.e. the L1-norm of the difference. - - - - - Manhattan Distance, i.e. the L1-norm of the difference. - - - - - Manhattan Distance, i.e. the L1-norm of the difference. - - - - - Chebyshev Distance, i.e. the Infinity-norm of the difference. - - - - - Chebyshev Distance, i.e. the Infinity-norm of the difference. - - - - - Chebyshev Distance, i.e. the Infinity-norm of the difference. - - - - - Minkowski Distance, i.e. the generalized p-norm of the difference. - - - - - Minkowski Distance, i.e. the generalized p-norm of the difference. - - - - - Minkowski Distance, i.e. the generalized p-norm of the difference. - - - - - Canberra Distance, a weighted version of the L1-norm of the difference. - - - - - Canberra Distance, a weighted version of the L1-norm of the difference. - - - - - Cosine Distance, representing the angular distance while ignoring the scale. - - - - - Cosine Distance, representing the angular distance while ignoring the scale. - - - - - Hamming Distance, i.e. the number of positions that have different values in the vectors. - - - - - Hamming Distance, i.e. the number of positions that have different values in the vectors. - - - - - Pearson's distance, i.e. 1 - the person correlation coefficient. - - - - - Jaccard distance, i.e. 1 - the Jaccard index. - - Thrown if a or b are null. - Throw if a and b are of different lengths. - Jaccard distance. - - - - Jaccard distance, i.e. 1 - the Jaccard index. - - Thrown if a or b are null. - Throw if a and b are of different lengths. - Jaccard distance. - - - - Discrete Univariate Bernoulli distribution. - The Bernoulli distribution is a distribution over bits. The parameter - p specifies the probability that a 1 is generated. - Wikipedia - Bernoulli distribution. - - - - - Initializes a new instance of the Bernoulli class. - - The probability (p) of generating one. Range: 0 ≤ p ≤ 1. - If the Bernoulli parameter is not in the range [0,1]. - - - - Initializes a new instance of the Bernoulli class. - - The probability (p) of generating one. Range: 0 ≤ p ≤ 1. - The random number generator which is used to draw random samples. - If the Bernoulli parameter is not in the range [0,1]. - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The probability (p) of generating one. Range: 0 ≤ p ≤ 1. - - - - Gets the probability of generating a one. Range: 0 ≤ p ≤ 1. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean of the distribution. - - - - - Gets the standard deviation of the distribution. - - - - - Gets the variance of the distribution. - - - - - Gets the entropy of the distribution. - - - - - Gets the skewness of the distribution. - - - - - Gets the smallest element in the domain of the distributions which can be represented by an integer. - - - - - Gets the largest element in the domain of the distributions which can be represented by an integer. - - - - - Gets the mode of the distribution. - - - - - Gets all modes of the distribution. - - - - - Gets the median of the distribution. - - - - - Computes the probability mass (PMF) at k, i.e. P(X = k). - - The location in the domain where we want to evaluate the probability mass function. - the probability mass at location . - - - - Computes the log probability mass (lnPMF) at k, i.e. ln(P(X = k)). - - The location in the domain where we want to evaluate the log probability mass function. - the log probability mass at location . - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - Computes the probability mass (PMF) at k, i.e. P(X = k). - - The location in the domain where we want to evaluate the probability mass function. - The probability (p) of generating one. Range: 0 ≤ p ≤ 1. - the probability mass at location . - - - - Computes the log probability mass (lnPMF) at k, i.e. ln(P(X = k)). - - The location in the domain where we want to evaluate the log probability mass function. - The probability (p) of generating one. Range: 0 ≤ p ≤ 1. - the log probability mass at location . - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - The probability (p) of generating one. Range: 0 ≤ p ≤ 1. - the cumulative distribution at location . - - - - - Generates one sample from the Bernoulli distribution. - - The random source to use. - The probability (p) of generating one. Range: 0 ≤ p ≤ 1. - A random sample from the Bernoulli distribution. - - - - Samples a Bernoulli distributed random variable. - - A sample from the Bernoulli distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Samples an array of Bernoulli distributed random variables. - - a sequence of samples from the distribution. - - - - Samples a Bernoulli distributed random variable. - - The random number generator to use. - The probability (p) of generating one. Range: 0 ≤ p ≤ 1. - A sample from the Bernoulli distribution. - - - - Samples a sequence of Bernoulli distributed random variables. - - The random number generator to use. - The probability (p) of generating one. Range: 0 ≤ p ≤ 1. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The probability (p) of generating one. Range: 0 ≤ p ≤ 1. - a sequence of samples from the distribution. - - - - Samples a Bernoulli distributed random variable. - - The probability (p) of generating one. Range: 0 ≤ p ≤ 1. - A sample from the Bernoulli distribution. - - - - Samples a sequence of Bernoulli distributed random variables. - - The probability (p) of generating one. Range: 0 ≤ p ≤ 1. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - The probability (p) of generating one. Range: 0 ≤ p ≤ 1. - a sequence of samples from the distribution. - - - - Continuous Univariate Beta distribution. - For details about this distribution, see - Wikipedia - Beta distribution. - - - There are a few special cases for the parameterization of the Beta distribution. When both - shape parameters are positive infinity, the Beta distribution degenerates to a point distribution - at 0.5. When one of the shape parameters is positive infinity, the distribution degenerates to a point - distribution at the positive infinity. When both shape parameters are 0.0, the Beta distribution - degenerates to a Bernoulli distribution with parameter 0.5. When one shape parameter is 0.0, the - distribution degenerates to a point distribution at the non-zero shape parameter. - - - - - Initializes a new instance of the Beta class. - - The α shape parameter of the Beta distribution. Range: α ≥ 0. - The β shape parameter of the Beta distribution. Range: β ≥ 0. - - - - Initializes a new instance of the Beta class. - - The α shape parameter of the Beta distribution. Range: α ≥ 0. - The β shape parameter of the Beta distribution. Range: β ≥ 0. - The random number generator which is used to draw random samples. - - - - A string representation of the distribution. - - A string representation of the Beta distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The α shape parameter of the Beta distribution. Range: α ≥ 0. - The β shape parameter of the Beta distribution. Range: β ≥ 0. - - - - Gets the α shape parameter of the Beta distribution. Range: α ≥ 0. - - - - - Gets the β shape parameter of the Beta distribution. Range: β ≥ 0. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean of the Beta distribution. - - - - - Gets the variance of the Beta distribution. - - - - - Gets the standard deviation of the Beta distribution. - - - - - Gets the entropy of the Beta distribution. - - - - - Gets the skewness of the Beta distribution. - - - - - Gets the mode of the Beta distribution; when there are multiple answers, this routine will return 0.5. - - - - - Gets the median of the Beta distribution. - - - - - Gets the minimum of the Beta distribution. - - - - - Gets the maximum of the Beta distribution. - - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location at which to compute the log density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - the inverse cumulative density at . - - WARNING: currently not an explicit implementation, hence slow and unreliable. - - - - Generates a sample from the Beta distribution. - - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Generates a sequence of samples from the Beta distribution. - - a sequence of samples from the distribution. - - - - Samples Beta distributed random variables by sampling two Gamma variables and normalizing. - - The random number generator to use. - The α shape parameter of the Beta distribution. Range: α ≥ 0. - The β shape parameter of the Beta distribution. Range: β ≥ 0. - a random number from the Beta distribution. - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The α shape parameter of the Beta distribution. Range: α ≥ 0. - The β shape parameter of the Beta distribution. Range: β ≥ 0. - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The α shape parameter of the Beta distribution. Range: α ≥ 0. - The β shape parameter of the Beta distribution. Range: β ≥ 0. - The location at which to compute the density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - The α shape parameter of the Beta distribution. Range: α ≥ 0. - The β shape parameter of the Beta distribution. Range: β ≥ 0. - the cumulative distribution at location . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - The α shape parameter of the Beta distribution. Range: α ≥ 0. - The β shape parameter of the Beta distribution. Range: β ≥ 0. - the inverse cumulative density at . - - WARNING: currently not an explicit implementation, hence slow and unreliable. - - - - Generates a sample from the distribution. - - The random number generator to use. - The α shape parameter of the Beta distribution. Range: α ≥ 0. - The β shape parameter of the Beta distribution. Range: β ≥ 0. - a sample from the distribution. - - - - Generates a sequence of samples from the distribution. - - The random number generator to use. - The α shape parameter of the Beta distribution. Range: α ≥ 0. - The β shape parameter of the Beta distribution. Range: β ≥ 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The α shape parameter of the Beta distribution. Range: α ≥ 0. - The β shape parameter of the Beta distribution. Range: β ≥ 0. - a sequence of samples from the distribution. - - - - Generates a sample from the distribution. - - The α shape parameter of the Beta distribution. Range: α ≥ 0. - The β shape parameter of the Beta distribution. Range: β ≥ 0. - a sample from the distribution. - - - - Generates a sequence of samples from the distribution. - - The α shape parameter of the Beta distribution. Range: α ≥ 0. - The β shape parameter of the Beta distribution. Range: β ≥ 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - The α shape parameter of the Beta distribution. Range: α ≥ 0. - The β shape parameter of the Beta distribution. Range: β ≥ 0. - a sequence of samples from the distribution. - - - - Discrete Univariate Beta-Binomial distribution. - The beta-binomial distribution is a family of discrete probability distributions on a finite support of non-negative integers arising - when the probability of success in each of a fixed or known number of Bernoulli trials is either unknown or random. - The beta-binomial distribution is the binomial distribution in which the probability of success at each of n trials is not fixed but randomly drawn from a beta distribution. - It is frequently used in Bayesian statistics, empirical Bayes methods and classical statistics to capture overdispersion in binomial type distributed data. - Wikipedia - Beta-Binomial distribution. - - - - - Initializes a new instance of the class. - - The number of Bernoulli trials n - n is a positive integer - Shape parameter alpha of the Beta distribution. Range: a > 0. - Shape parameter beta of the Beta distribution. Range: b > 0. - - - - Initializes a new instance of the class. - - The number of Bernoulli trials n - n is a positive integer - Shape parameter alpha of the Beta distribution. Range: a > 0. - Shape parameter beta of the Beta distribution. Range: b > 0. - The random number generator which is used to draw random samples. - - - - Returns a that represents this instance. - - - A that represents this instance. - - - - - Tests whether the provided values are valid parameters for this distribution. - - The number of Bernoulli trials n - n is a positive integer - Shape parameter alpha of the Beta distribution. Range: a > 0. - Shape parameter beta of the Beta distribution. Range: b > 0. - - - - Tests whether the provided values are valid parameters for this distribution. - - The number of Bernoulli trials n - n is a positive integer - Shape parameter alpha of the Beta distribution. Range: a > 0. - Shape parameter beta of the Beta distribution. Range: b > 0. - The location in the domain where we want to evaluate the probability mass function. - - - - Gets the mean of the distribution. - - - - - Gets the variance of the distribution. - - - - - Gets the standard deviation of the distribution. - - - - - Gets the entropy of the distribution. - - - - - Gets the skewness of the distribution. - - - - - Gets the mode of the distribution - - - - - Gets the median of the distribution. - - - - - Gets the smallest element in the domain of the distributions which can be represented by an integer. - - - - - Gets the largest element in the domain of the distributions which can be represented by an integer. - - - - - Computes the probability mass (PMF) at k, i.e. P(X = k). - - The location in the domain where we want to evaluate the probability mass function. - the probability mass at location . - - - - Computes the log probability mass (lnPMF) at k, i.e. ln(P(X = k)). - - The location in the domain where we want to evaluate the log probability mass function. - the log probability mass at location . - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location - - - - Computes the probability mass (PMF) at k, i.e. P(X = k). - - The number of Bernoulli trials n - n is a positive integer - Shape parameter alpha of the Beta distribution. Range: a > 0. - Shape parameter beta of the Beta distribution. Range: b > 0. - The location in the domain where we want to evaluate the probability mass function. - the probability mass at location . - - - - Computes the log probability mass (lnPMF) at k, i.e. ln(P(X = k)). - - The number of Bernoulli trials n - n is a positive integer - Shape parameter alpha of the Beta distribution. Range: a > 0. - Shape parameter beta of the Beta distribution. Range: b > 0. - The location in the domain where we want to evaluate the probability mass function. - the log probability mass at location . - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The number of Bernoulli trials n - n is a positive integer - Shape parameter alpha of the Beta distribution. Range: a > 0. - Shape parameter beta of the Beta distribution. Range: b > 0. - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - - Samples BetaBinomial distributed random variables by sampling a Beta distribution then passing to a Binomial distribution. - - The random number generator to use. - The α shape parameter of the Beta distribution. Range: α ≥ 0. - The β shape parameter of the Beta distribution. Range: β ≥ 0. - The number of trials (n). Range: n ≥ 0. - a random number from the BetaBinomial distribution. - - - - Samples a BetaBinomial distributed random variable. - - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Samples an array of BetaBinomial distributed random variables. - - a sequence of samples from the distribution. - - - - Samples a BetaBinomial distributed random variable. - - The random number generator to use. - The α shape parameter of the Beta distribution. Range: α ≥ 0. - The β shape parameter of the Beta distribution. Range: β ≥ 0. - The number of trials (n). Range: n ≥ 0. - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The α shape parameter of the Beta distribution. Range: α ≥ 0. - The β shape parameter of the Beta distribution. Range: β ≥ 0. - The number of trials (n). Range: n ≥ 0. - - - - Samples an array of BetaBinomial distributed random variables. - - The α shape parameter of the Beta distribution. Range: α ≥ 0. - The β shape parameter of the Beta distribution. Range: β ≥ 0. - The number of trials (n). Range: n ≥ 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - The α shape parameter of the Beta distribution. Range: α ≥ 0. - The β shape parameter of the Beta distribution. Range: β ≥ 0. - The number of trials (n). Range: n ≥ 0. - - - - Initializes a new instance of the BetaScaled class. - - The α shape parameter of the BetaScaled distribution. Range: α > 0. - The β shape parameter of the BetaScaled distribution. Range: β > 0. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - - - - Initializes a new instance of the BetaScaled class. - - The α shape parameter of the BetaScaled distribution. Range: α > 0. - The β shape parameter of the BetaScaled distribution. Range: β > 0. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The random number generator which is used to draw random samples. - - - - Create a Beta PERT distribution, used in risk analysis and other domains where an expert forecast - is used to construct an underlying beta distribution. - - The minimum value. - The maximum value. - The most likely value (mode). - The random number generator which is used to draw random samples. - The Beta distribution derived from the PERT parameters. - - - - A string representation of the distribution. - - A string representation of the BetaScaled distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The α shape parameter of the BetaScaled distribution. Range: α > 0. - The β shape parameter of the BetaScaled distribution. Range: β > 0. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - - - - Gets the α shape parameter of the BetaScaled distribution. Range: α > 0. - - - - - Gets the β shape parameter of the BetaScaled distribution. Range: β > 0. - - - - - Gets the location (μ) of the BetaScaled distribution. - - - - - Gets the scale (σ) of the BetaScaled distribution. Range: σ > 0. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean of the BetaScaled distribution. - - - - - Gets the variance of the BetaScaled distribution. - - - - - Gets the standard deviation of the BetaScaled distribution. - - - - - Gets the entropy of the BetaScaled distribution. - - - - - Gets the skewness of the BetaScaled distribution. - - - - - Gets the mode of the BetaScaled distribution; when there are multiple answers, this routine will return 0.5. - - - - - Gets the median of the BetaScaled distribution. - - - - - Gets the minimum of the BetaScaled distribution. - - - - - Gets the maximum of the BetaScaled distribution. - - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location at which to compute the log density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - the inverse cumulative density at . - - WARNING: currently not an explicit implementation, hence slow and unreliable. - - - - Generates a sample from the distribution. - - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Generates a sequence of samples from the distribution. - - a sequence of samples from the distribution. - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The α shape parameter of the BetaScaled distribution. Range: α > 0. - The β shape parameter of the BetaScaled distribution. Range: β > 0. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The α shape parameter of the BetaScaled distribution. Range: α > 0. - The β shape parameter of the BetaScaled distribution. Range: β > 0. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The location at which to compute the density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The α shape parameter of the BetaScaled distribution. Range: α > 0. - The β shape parameter of the BetaScaled distribution. Range: β > 0. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The α shape parameter of the BetaScaled distribution. Range: α > 0. - The β shape parameter of the BetaScaled distribution. Range: β > 0. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The location at which to compute the inverse cumulative density. - the inverse cumulative density at . - - WARNING: currently not an explicit implementation, hence slow and unreliable. - - - - Generates a sample from the distribution. - - The random number generator to use. - The α shape parameter of the BetaScaled distribution. Range: α > 0. - The β shape parameter of the BetaScaled distribution. Range: β > 0. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - a sample from the distribution. - - - - Generates a sequence of samples from the distribution. - - The random number generator to use. - The α shape parameter of the BetaScaled distribution. Range: α > 0. - The β shape parameter of the BetaScaled distribution. Range: β > 0. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The α shape parameter of the BetaScaled distribution. Range: α > 0. - The β shape parameter of the BetaScaled distribution. Range: β > 0. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - a sequence of samples from the distribution. - - - - Generates a sample from the distribution. - - The α shape parameter of the BetaScaled distribution. Range: α > 0. - The β shape parameter of the BetaScaled distribution. Range: β > 0. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - a sample from the distribution. - - - - Generates a sequence of samples from the distribution. - - The α shape parameter of the BetaScaled distribution. Range: α > 0. - The β shape parameter of the BetaScaled distribution. Range: β > 0. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - The α shape parameter of the BetaScaled distribution. Range: α > 0. - The β shape parameter of the BetaScaled distribution. Range: β > 0. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - a sequence of samples from the distribution. - - - - Discrete Univariate Binomial distribution. - For details about this distribution, see - Wikipedia - Binomial distribution. - - - The distribution is parameterized by a probability (between 0.0 and 1.0). - - - - - Initializes a new instance of the Binomial class. - - The success probability (p) in each trial. Range: 0 ≤ p ≤ 1. - The number of trials (n). Range: n ≥ 0. - If is not in the interval [0.0,1.0]. - If is negative. - - - - Initializes a new instance of the Binomial class. - - The success probability (p) in each trial. Range: 0 ≤ p ≤ 1. - The number of trials (n). Range: n ≥ 0. - The random number generator which is used to draw random samples. - If is not in the interval [0.0,1.0]. - If is negative. - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The success probability (p) in each trial. Range: 0 ≤ p ≤ 1. - The number of trials (n). Range: n ≥ 0. - - - - Gets the success probability in each trial. Range: 0 ≤ p ≤ 1. - - - - - Gets the number of trials. Range: n ≥ 0. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean of the distribution. - - - - - Gets the standard deviation of the distribution. - - - - - Gets the variance of the distribution. - - - - - Gets the entropy of the distribution. - - - - - Gets the skewness of the distribution. - - - - - Gets the smallest element in the domain of the distributions which can be represented by an integer. - - - - - Gets the largest element in the domain of the distributions which can be represented by an integer. - - - - - Gets the mode of the distribution. - - - - - Gets all modes of the distribution. - - - - - Gets the median of the distribution. - - - - - Computes the probability mass (PMF) at k, i.e. P(X = k). - - The location in the domain where we want to evaluate the probability mass function. - the probability mass at location . - - - - Computes the log probability mass (lnPMF) at k, i.e. ln(P(X = k)). - - The location in the domain where we want to evaluate the log probability mass function. - the log probability mass at location . - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - Computes the probability mass (PMF) at k, i.e. P(X = k). - - The location in the domain where we want to evaluate the probability mass function. - The success probability (p) in each trial. Range: 0 ≤ p ≤ 1. - The number of trials (n). Range: n ≥ 0. - the probability mass at location . - - - - Computes the log probability mass (lnPMF) at k, i.e. ln(P(X = k)). - - The location in the domain where we want to evaluate the log probability mass function. - The success probability (p) in each trial. Range: 0 ≤ p ≤ 1. - The number of trials (n). Range: n ≥ 0. - the log probability mass at location . - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - The success probability (p) in each trial. Range: 0 ≤ p ≤ 1. - The number of trials (n). Range: n ≥ 0. - the cumulative distribution at location . - - - - - Generates a sample from the Binomial distribution without doing parameter checking. - - The random number generator to use. - The success probability (p) in each trial. Range: 0 ≤ p ≤ 1. - The number of trials (n). Range: n ≥ 0. - The number of successful trials. - - - - Samples a Binomially distributed random variable. - - The number of successes in N trials. - - - - Fills an array with samples generated from the distribution. - - - - - Samples an array of Binomially distributed random variables. - - a sequence of successes in N trials. - - - - Samples a binomially distributed random variable. - - The random number generator to use. - The success probability (p) in each trial. Range: 0 ≤ p ≤ 1. - The number of trials (n). Range: n ≥ 0. - The number of successes in trials. - - - - Samples a sequence of binomially distributed random variable. - - The random number generator to use. - The success probability (p) in each trial. Range: 0 ≤ p ≤ 1. - The number of trials (n). Range: n ≥ 0. - a sequence of successes in trials. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The success probability (p) in each trial. Range: 0 ≤ p ≤ 1. - The number of trials (n). Range: n ≥ 0. - a sequence of successes in trials. - - - - Samples a binomially distributed random variable. - - The success probability (p) in each trial. Range: 0 ≤ p ≤ 1. - The number of trials (n). Range: n ≥ 0. - The number of successes in trials. - - - - Samples a sequence of binomially distributed random variable. - - The success probability (p) in each trial. Range: 0 ≤ p ≤ 1. - The number of trials (n). Range: n ≥ 0. - a sequence of successes in trials. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - The success probability (p) in each trial. Range: 0 ≤ p ≤ 1. - The number of trials (n). Range: n ≥ 0. - a sequence of successes in trials. - - - - Gets the scale (a) of the distribution. Range: a > 0. - - - - - Gets the first shape parameter (c) of the distribution. Range: c > 0. - - - - - Gets the second shape parameter (k) of the distribution. Range: k > 0. - - - - - Initializes a new instance of the Burr Type XII class. - - The scale parameter a of the Burr distribution. Range: a > 0. - The first shape parameter c of the Burr distribution. Range: c > 0. - The second shape parameter k of the Burr distribution. Range: k > 0. - The random number generator which is used to draw random samples. Optional, can be null. - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The scale parameter a of the Burr distribution. Range: a > 0. - The first shape parameter c of the Burr distribution. Range: c > 0. - The second shape parameter k of the Burr distribution. Range: k > 0. - - - - Gets the random number generator which is used to draw random samples. - - - - - Gets the mean of the Burr distribution. - - - - - Gets the variance of the Burr distribution. - - - - - Gets the standard deviation of the Burr distribution. - - - - - Gets the mode of the Burr distribution. - - - - - Gets the minimum of the Burr distribution. - - - - - Gets the maximum of the Burr distribution. - - - - - Gets the entropy of the Burr distribution (currently not supported). - - - - - Gets the skewness of the Burr distribution. - - - - - Gets the median of the Burr distribution. - - - - - Generates a sample from the Burr distribution. - - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - - - - Generates a sequence of samples from the Burr distribution. - - a sequence of samples from the distribution. - - - - Generates a sample from the Burr distribution. - - The random number generator to use. - The scale parameter a of the Burr distribution. Range: a > 0. - The first shape parameter c of the Burr distribution. Range: c > 0. - The second shape parameter k of the Burr distribution. Range: k > 0. - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The scale parameter a of the Burr distribution. Range: a > 0. - The first shape parameter c of the Burr distribution. Range: c > 0. - The second shape parameter k of the Burr distribution. Range: k > 0. - - - - Generates a sequence of samples from the Burr distribution. - - The random number generator to use. - The scale parameter a of the Burr distribution. Range: a > 0. - The first shape parameter c of the Burr distribution. Range: c > 0. - The second shape parameter k of the Burr distribution. Range: k > 0. - a sequence of samples from the distribution. - - - - Gets the n-th raw moment of the distribution. - - The order (n) of the moment. Range: n ≥ 1. - the n-th moment of the distribution. - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location at which to compute the log density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The scale parameter a of the Burr distribution. Range: a > 0. - The first shape parameter c of the Burr distribution. Range: c > 0. - The second shape parameter k of the Burr distribution. Range: k > 0. - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The scale parameter a of the Burr distribution. Range: a > 0. - The first shape parameter c of the Burr distribution. Range: c > 0. - The second shape parameter k of the Burr distribution. Range: k > 0. - The location at which to compute the log density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The scale parameter a of the Burr distribution. Range: a > 0. - The first shape parameter c of the Burr distribution. Range: c > 0. - The second shape parameter k of the Burr distribution. Range: k > 0. - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - - Discrete Univariate Categorical distribution. - For details about this distribution, see - Wikipedia - Categorical distribution. This - distribution is sometimes called the Discrete distribution. - - - The distribution is parameterized by a vector of ratios: in other words, the parameter - does not have to be normalized and sum to 1. The reason is that some vectors can't be exactly normalized - to sum to 1 in floating point representation. - - - Support: 0..k where k = length(probability mass array)-1 - - - - - Initializes a new instance of the Categorical class. - - An array of nonnegative ratios: this array does not need to be normalized - as this is often impossible using floating point arithmetic. - If any of the probabilities are negative or do not sum to one. - - - - Initializes a new instance of the Categorical class. - - An array of nonnegative ratios: this array does not need to be normalized - as this is often impossible using floating point arithmetic. - The random number generator which is used to draw random samples. - If any of the probabilities are negative or do not sum to one. - - - - Initializes a new instance of the Categorical class from a . The distribution - will not be automatically updated when the histogram changes. The categorical distribution will have - one value for each bucket and a probability for that value proportional to the bucket count. - - The histogram from which to create the categorical variable. - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Checks whether the parameters of the distribution are valid. - - An array of nonnegative ratios: this array does not need to be normalized as this is often impossible using floating point arithmetic. - If any of the probabilities are negative returns false, or if the sum of parameters is 0.0; otherwise true - - - - Checks whether the parameters of the distribution are valid. - - An array of nonnegative ratios: this array does not need to be normalized as this is often impossible using floating point arithmetic. - If any of the probabilities are negative returns false, or if the sum of parameters is 0.0; otherwise true - - - - Gets the probability mass vector (non-negative ratios) of the multinomial. - - Sometimes the normalized probability vector cannot be represented exactly in a floating point representation. - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean of the distribution. - - - - - Gets the standard deviation of the distribution. - - - - - Gets the variance of the distribution. - - - - - Gets the entropy of the distribution. - - - - - Gets the skewness of the distribution. - - Throws a . - - - - Gets the smallest element in the domain of the distributions which can be represented by an integer. - - - - - Gets the largest element in the domain of the distributions which can be represented by an integer. - - - - - Gets he mode of the distribution. - - Throws a . - - - - Gets the median of the distribution. - - - - - Computes the probability mass (PMF) at k, i.e. P(X = k). - - The location in the domain where we want to evaluate the probability mass function. - the probability mass at location . - - - - Computes the log probability mass (lnPMF) at k, i.e. ln(P(X = k)). - - The location in the domain where we want to evaluate the log probability mass function. - the log probability mass at location . - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. - - A real number between 0 and 1. - An integer between 0 and the size of the categorical (exclusive), that corresponds to the inverse CDF for the given probability. - - - - Computes the probability mass (PMF) at k, i.e. P(X = k). - - The location in the domain where we want to evaluate the probability mass function. - An array of nonnegative ratios: this array does not need to be normalized - as this is often impossible using floating point arithmetic. - the probability mass at location . - - - - Computes the log probability mass (lnPMF) at k, i.e. ln(P(X = k)). - - The location in the domain where we want to evaluate the log probability mass function. - An array of nonnegative ratios: this array does not need to be normalized - as this is often impossible using floating point arithmetic. - the log probability mass at location . - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - An array of nonnegative ratios: this array does not need to be normalized - as this is often impossible using floating point arithmetic. - the cumulative distribution at location . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. - - An array of nonnegative ratios: this array does not need to be normalized - as this is often impossible using floating point arithmetic. - A real number between 0 and 1. - An integer between 0 and the size of the categorical (exclusive), that corresponds to the inverse CDF for the given probability. - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. - - An array corresponding to a CDF for a categorical distribution. Not assumed to be normalized. - A real number between 0 and 1. - An integer between 0 and the size of the categorical (exclusive), that corresponds to the inverse CDF for the given probability. - - - - Computes the cumulative distribution function. This method performs no parameter checking. - If the probability mass was normalized, the resulting cumulative distribution is normalized as well (up to numerical errors). - - An array of nonnegative ratios: this array does not need to be normalized - as this is often impossible using floating point arithmetic. - An array representing the unnormalized cumulative distribution function. - - - - Returns one trials from the categorical distribution. - - The random number generator to use. - The (unnormalized) cumulative distribution of the probability distribution. - One sample from the categorical distribution implied by . - - - - Samples a Binomially distributed random variable. - - The number of successful trials. - - - - Fills an array with samples generated from the distribution. - - - - - Samples an array of Bernoulli distributed random variables. - - a sequence of successful trial counts. - - - - Samples one categorical distributed random variable; also known as the Discrete distribution. - - The random number generator to use. - An array of nonnegative ratios. Not assumed to be normalized. - One random integer between 0 and the size of the categorical (exclusive). - - - - Samples a categorically distributed random variable. - - The random number generator to use. - An array of nonnegative ratios. Not assumed to be normalized. - random integers between 0 and the size of the categorical (exclusive). - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - An array of nonnegative ratios. Not assumed to be normalized. - random integers between 0 and the size of the categorical (exclusive). - - - - Samples one categorical distributed random variable; also known as the Discrete distribution. - - An array of nonnegative ratios. Not assumed to be normalized. - One random integer between 0 and the size of the categorical (exclusive). - - - - Samples a categorically distributed random variable. - - An array of nonnegative ratios. Not assumed to be normalized. - random integers between 0 and the size of the categorical (exclusive). - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - An array of nonnegative ratios. Not assumed to be normalized. - random integers between 0 and the size of the categorical (exclusive). - - - - Samples one categorical distributed random variable; also known as the Discrete distribution. - - The random number generator to use. - An array of the cumulative distribution. Not assumed to be normalized. - One random integer between 0 and the size of the categorical (exclusive). - - - - Samples a categorically distributed random variable. - - The random number generator to use. - An array of the cumulative distribution. Not assumed to be normalized. - random integers between 0 and the size of the categorical (exclusive). - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - An array of the cumulative distribution. Not assumed to be normalized. - random integers between 0 and the size of the categorical (exclusive). - - - - Samples one categorical distributed random variable; also known as the Discrete distribution. - - An array of the cumulative distribution. Not assumed to be normalized. - One random integer between 0 and the size of the categorical (exclusive). - - - - Samples a categorically distributed random variable. - - An array of the cumulative distribution. Not assumed to be normalized. - random integers between 0 and the size of the categorical (exclusive). - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - An array of the cumulative distribution. Not assumed to be normalized. - random integers between 0 and the size of the categorical (exclusive). - - - - Continuous Univariate Cauchy distribution. - The Cauchy distribution is a symmetric continuous probability distribution. For details about this distribution, see - Wikipedia - Cauchy distribution. - - - - - Initializes a new instance of the class with the location parameter set to 0 and the scale parameter set to 1 - - - - - Initializes a new instance of the class. - - The location (x0) of the distribution. - The scale (γ) of the distribution. Range: γ > 0. - - - - Initializes a new instance of the class. - - The location (x0) of the distribution. - The scale (γ) of the distribution. Range: γ > 0. - The random number generator which is used to draw random samples. - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The location (x0) of the distribution. - The scale (γ) of the distribution. Range: γ > 0. - - - - Gets the location (x0) of the distribution. - - - - - Gets the scale (γ) of the distribution. Range: γ > 0. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean of the distribution. - - - - - Gets the variance of the distribution. - - - - - Gets the standard deviation of the distribution. - - - - - Gets the entropy of the distribution. - - - - - Gets the skewness of the distribution. - - - - - Gets the mode of the distribution. - - - - - Gets the median of the distribution. - - - - - Gets the minimum of the distribution. - - - - - Gets the maximum of the distribution. - - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location at which to compute the log density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - the inverse cumulative density at . - - - - - Draws a random sample from the distribution. - - A random number from this distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Generates a sequence of samples from the Cauchy distribution. - - a sequence of samples from the distribution. - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location (x0) of the distribution. - The scale (γ) of the distribution. Range: γ > 0. - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location (x0) of the distribution. - The scale (γ) of the distribution. Range: γ > 0. - The location at which to compute the density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - The location (x0) of the distribution. - The scale (γ) of the distribution. Range: γ > 0. - the cumulative distribution at location . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - The location (x0) of the distribution. - The scale (γ) of the distribution. Range: γ > 0. - the inverse cumulative density at . - - - - - Generates a sample from the distribution. - - The random number generator to use. - The location (x0) of the distribution. - The scale (γ) of the distribution. Range: γ > 0. - a sample from the distribution. - - - - Generates a sequence of samples from the distribution. - - The random number generator to use. - The location (x0) of the distribution. - The scale (γ) of the distribution. Range: γ > 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The location (x0) of the distribution. - The scale (γ) of the distribution. Range: γ > 0. - a sequence of samples from the distribution. - - - - Generates a sample from the distribution. - - The location (x0) of the distribution. - The scale (γ) of the distribution. Range: γ > 0. - a sample from the distribution. - - - - Generates a sequence of samples from the distribution. - - The location (x0) of the distribution. - The scale (γ) of the distribution. Range: γ > 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - The location (x0) of the distribution. - The scale (γ) of the distribution. Range: γ > 0. - a sequence of samples from the distribution. - - - - Continuous Univariate Chi distribution. - This distribution is a continuous probability distribution. The distribution usually arises when a k-dimensional vector's orthogonal - components are independent and each follow a standard normal distribution. The length of the vector will - then have a chi distribution. - Wikipedia - Chi distribution. - - - - - Initializes a new instance of the class. - - The degrees of freedom (k) of the distribution. Range: k > 0. - - - - Initializes a new instance of the class. - - The degrees of freedom (k) of the distribution. Range: k > 0. - The random number generator which is used to draw random samples. - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The degrees of freedom (k) of the distribution. Range: k > 0. - - - - Gets the degrees of freedom (k) of the Chi distribution. Range: k > 0. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean of the distribution. - - - - - Gets the variance of the distribution. - - - - - Gets the standard deviation of the distribution. - - - - - Gets the entropy of the distribution. - - - - - Gets the skewness of the distribution. - - - - - Gets the mode of the distribution. - - - - - Gets the median of the distribution. - - - - - Gets the minimum of the distribution. - - - - - Gets the maximum of the distribution. - - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location at which to compute the log density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - - Generates a sample from the Chi distribution. - - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Generates a sequence of samples from the Chi distribution. - - a sequence of samples from the distribution. - - - - Samples the distribution. - - The random number generator to use. - The degrees of freedom (k) of the distribution. Range: k > 0. - a random number from the distribution. - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The degrees of freedom (k) of the distribution. Range: k > 0. - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The degrees of freedom (k) of the distribution. Range: k > 0. - The location at which to compute the density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - The degrees of freedom (k) of the distribution. Range: k > 0. - the cumulative distribution at location . - - - - - Generates a sample from the distribution. - - The random number generator to use. - The degrees of freedom (k) of the distribution. Range: k > 0. - a sample from the distribution. - - - - Generates a sequence of samples from the distribution. - - The random number generator to use. - The degrees of freedom (k) of the distribution. Range: k > 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The degrees of freedom (k) of the distribution. Range: k > 0. - a sequence of samples from the distribution. - - - - Generates a sample from the distribution. - - The degrees of freedom (k) of the distribution. Range: k > 0. - a sample from the distribution. - - - - Generates a sequence of samples from the distribution. - - The degrees of freedom (k) of the distribution. Range: k > 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - The degrees of freedom (k) of the distribution. Range: k > 0. - a sequence of samples from the distribution. - - - - Continuous Univariate Chi-Squared distribution. - This distribution is a sum of the squares of k independent standard normal random variables. - Wikipedia - ChiSquare distribution. - - - - - Initializes a new instance of the class. - - The degrees of freedom (k) of the distribution. Range: k > 0. - - - - Initializes a new instance of the class. - - The degrees of freedom (k) of the distribution. Range: k > 0. - The random number generator which is used to draw random samples. - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The degrees of freedom (k) of the distribution. Range: k > 0. - - - - Gets the degrees of freedom (k) of the Chi-Squared distribution. Range: k > 0. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean of the distribution. - - - - - Gets the variance of the distribution. - - - - - Gets the standard deviation of the distribution. - - - - - Gets the entropy of the distribution. - - - - - Gets the skewness of the distribution. - - - - - Gets the mode of the distribution. - - - - - Gets the median of the distribution. - - - - - Gets the minimum of the distribution. - - - - - Gets the maximum of the distribution. - - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location at which to compute the log density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - the inverse cumulative density at . - - - - - Generates a sample from the ChiSquare distribution. - - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Generates a sequence of samples from the ChiSquare distribution. - - a sequence of samples from the distribution. - - - - Samples the distribution. - - The random number generator to use. - The degrees of freedom (k) of the distribution. Range: k > 0. - a random number from the distribution. - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The degrees of freedom (k) of the distribution. Range: k > 0. - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The degrees of freedom (k) of the distribution. Range: k > 0. - The location at which to compute the density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - The degrees of freedom (k) of the distribution. Range: k > 0. - the cumulative distribution at location . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The degrees of freedom (k) of the distribution. Range: k > 0. - The location at which to compute the inverse cumulative density. - the inverse cumulative density at . - - - - Generates a sample from the ChiSquare distribution. - - The random number generator to use. - The degrees of freedom (k) of the distribution. Range: k > 0. - a sample from the distribution. - - - - Generates a sequence of samples from the distribution. - - The random number generator to use. - The degrees of freedom (k) of the distribution. Range: k > 0. - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The degrees of freedom (k) of the distribution. Range: k > 0. - a sample from the distribution. - - - - Generates a sample from the ChiSquare distribution. - - The degrees of freedom (k) of the distribution. Range: k > 0. - a sample from the distribution. - - - - Generates a sequence of samples from the distribution. - - The degrees of freedom (k) of the distribution. Range: k > 0. - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - The degrees of freedom (k) of the distribution. Range: k > 0. - a sample from the distribution. - - - - Continuous Univariate Uniform distribution. - The continuous uniform distribution is a distribution over real numbers. For details about this distribution, see - Wikipedia - Continuous uniform distribution. - - - - - Initializes a new instance of the ContinuousUniform class with lower bound 0 and upper bound 1. - - - - - Initializes a new instance of the ContinuousUniform class with given lower and upper bounds. - - Lower bound. Range: lower ≤ upper. - Upper bound. Range: lower ≤ upper. - If the upper bound is smaller than the lower bound. - - - - Initializes a new instance of the ContinuousUniform class with given lower and upper bounds. - - Lower bound. Range: lower ≤ upper. - Upper bound. Range: lower ≤ upper. - The random number generator which is used to draw random samples. - If the upper bound is smaller than the lower bound. - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - Lower bound. Range: lower ≤ upper. - Upper bound. Range: lower ≤ upper. - - - - Gets the lower bound of the distribution. - - - - - Gets the upper bound of the distribution. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean of the distribution. - - - - - Gets the variance of the distribution. - - - - - Gets the standard deviation of the distribution. - - - - - Gets the entropy of the distribution. - - - - - - Gets the skewness of the distribution. - - - - - Gets the mode of the distribution. - - - - - - Gets the median of the distribution. - - - - - - Gets the minimum of the distribution. - - - - - Gets the maximum of the distribution. - - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location at which to compute the log density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - the inverse cumulative density at . - - - - - Generates a sample from the ContinuousUniform distribution. - - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Generates a sequence of samples from the ContinuousUniform distribution. - - a sequence of samples from the distribution. - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - Lower bound. Range: lower ≤ upper. - Upper bound. Range: lower ≤ upper. - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - Lower bound. Range: lower ≤ upper. - Upper bound. Range: lower ≤ upper. - The location at which to compute the density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - Lower bound. Range: lower ≤ upper. - Upper bound. Range: lower ≤ upper. - the cumulative distribution at location . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - Lower bound. Range: lower ≤ upper. - Upper bound. Range: lower ≤ upper. - the inverse cumulative density at . - - - - - Generates a sample from the ContinuousUniform distribution. - - The random number generator to use. - Lower bound. Range: lower ≤ upper. - Upper bound. Range: lower ≤ upper. - a uniformly distributed sample. - - - - Generates a sequence of samples from the ContinuousUniform distribution. - - The random number generator to use. - Lower bound. Range: lower ≤ upper. - Upper bound. Range: lower ≤ upper. - a sequence of uniformly distributed samples. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - Lower bound. Range: lower ≤ upper. - Upper bound. Range: lower ≤ upper. - a sequence of samples from the distribution. - - - - Generates a sample from the ContinuousUniform distribution. - - Lower bound. Range: lower ≤ upper. - Upper bound. Range: lower ≤ upper. - a uniformly distributed sample. - - - - Generates a sequence of samples from the ContinuousUniform distribution. - - Lower bound. Range: lower ≤ upper. - Upper bound. Range: lower ≤ upper. - a sequence of uniformly distributed samples. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - Lower bound. Range: lower ≤ upper. - Upper bound. Range: lower ≤ upper. - a sequence of samples from the distribution. - - - - Discrete Univariate Conway-Maxwell-Poisson distribution. - The Conway-Maxwell-Poisson distribution is a generalization of the Poisson, Geometric and Bernoulli - distributions. It is parameterized by two real numbers "lambda" and "nu". For - - nu = 0 the distribution reverts to a Geometric distribution - nu = 1 the distribution reverts to the Poisson distribution - nu -> infinity the distribution converges to a Bernoulli distribution - - This implementation will cache the value of the normalization constant. - Wikipedia - ConwayMaxwellPoisson distribution. - - - - - The mean of the distribution. - - - - - The variance of the distribution. - - - - - Caches the value of the normalization constant. - - - - - Since many properties of the distribution can only be computed approximately, the tolerance - level specifies how much error we accept. - - - - - Initializes a new instance of the class. - - The lambda (λ) parameter. Range: λ > 0. - The rate of decay (ν) parameter. Range: ν ≥ 0. - - - - Initializes a new instance of the class. - - The lambda (λ) parameter. Range: λ > 0. - The rate of decay (ν) parameter. Range: ν ≥ 0. - The random number generator which is used to draw random samples. - - - - Returns a that represents this instance. - - A that represents this instance. - - - - Tests whether the provided values are valid parameters for this distribution. - - The lambda (λ) parameter. Range: λ > 0. - The rate of decay (ν) parameter. Range: ν ≥ 0. - - - - Gets the lambda (λ) parameter. Range: λ > 0. - - - - - Gets the rate of decay (ν) parameter. Range: ν ≥ 0. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean of the distribution. - - - - - Gets the variance of the distribution. - - - - - Gets the standard deviation of the distribution. - - - - - Gets the entropy of the distribution. - - - - - Gets the skewness of the distribution. - - - - - Gets the mode of the distribution - - - - - Gets the median of the distribution. - - - - - Gets the smallest element in the domain of the distributions which can be represented by an integer. - - - - - Gets the largest element in the domain of the distributions which can be represented by an integer. - - - - - Computes the probability mass (PMF) at k, i.e. P(X = k). - - The location in the domain where we want to evaluate the probability mass function. - the probability mass at location . - - - - Computes the log probability mass (lnPMF) at k, i.e. ln(P(X = k)). - - The location in the domain where we want to evaluate the log probability mass function. - the log probability mass at location . - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - Computes the probability mass (PMF) at k, i.e. P(X = k). - - The location in the domain where we want to evaluate the probability mass function. - The lambda (λ) parameter. Range: λ > 0. - The rate of decay (ν) parameter. Range: ν ≥ 0. - the probability mass at location . - - - - Computes the log probability mass (lnPMF) at k, i.e. ln(P(X = k)). - - The location in the domain where we want to evaluate the log probability mass function. - The lambda (λ) parameter. Range: λ > 0. - The rate of decay (ν) parameter. Range: ν ≥ 0. - the log probability mass at location . - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - The lambda (λ) parameter. Range: λ > 0. - The rate of decay (ν) parameter. Range: ν ≥ 0. - the cumulative distribution at location . - - - - - Gets the normalization constant of the Conway-Maxwell-Poisson distribution. - - - - - Computes an approximate normalization constant for the CMP distribution. - - The lambda (λ) parameter for the CMP distribution. - The rate of decay (ν) parameter for the CMP distribution. - - an approximate normalization constant for the CMP distribution. - - - - - Returns one trials from the distribution. - - The random number generator to use. - The lambda (λ) parameter. Range: λ > 0. - The rate of decay (ν) parameter. Range: ν ≥ 0. - The z parameter. - - One sample from the distribution implied by , , and . - - - - - Samples a Conway-Maxwell-Poisson distributed random variable. - - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Samples a sequence of a Conway-Maxwell-Poisson distributed random variables. - - - a sequence of samples from a Conway-Maxwell-Poisson distribution. - - - - - Samples a random variable. - - The random number generator to use. - The lambda (λ) parameter. Range: λ > 0. - The rate of decay (ν) parameter. Range: ν ≥ 0. - - - - Samples a sequence of this random variable. - - The random number generator to use. - The lambda (λ) parameter. Range: λ > 0. - The rate of decay (ν) parameter. Range: ν ≥ 0. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The lambda (λ) parameter. Range: λ > 0. - The rate of decay (ν) parameter. Range: ν ≥ 0. - - - - Samples a random variable. - - The lambda (λ) parameter. Range: λ > 0. - The rate of decay (ν) parameter. Range: ν ≥ 0. - - - - Samples a sequence of this random variable. - - The lambda (λ) parameter. Range: λ > 0. - The rate of decay (ν) parameter. Range: ν ≥ 0. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - The lambda (λ) parameter. Range: λ > 0. - The rate of decay (ν) parameter. Range: ν ≥ 0. - - - - Multivariate Dirichlet distribution. For details about this distribution, see - Wikipedia - Dirichlet distribution. - - - - - Initializes a new instance of the Dirichlet class. The distribution will - be initialized with the default random number generator. - - An array with the Dirichlet parameters. - - - - Initializes a new instance of the Dirichlet class. The distribution will - be initialized with the default random number generator. - - An array with the Dirichlet parameters. - The random number generator which is used to draw random samples. - - - - Initializes a new instance of the class. - random number generator. - The value of each parameter of the Dirichlet distribution. - The dimension of the Dirichlet distribution. - - - - Initializes a new instance of the class. - random number generator. - The value of each parameter of the Dirichlet distribution. - The dimension of the Dirichlet distribution. - The random number generator which is used to draw random samples. - - - - Returns a that represents this instance. - - - A that represents this instance. - - - - - Tests whether the provided values are valid parameters for this distribution. - No parameter can be less than zero and at least one parameter should be larger than zero. - - The parameters of the Dirichlet distribution. - - - - Gets or sets the parameters of the Dirichlet distribution. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the dimension of the Dirichlet distribution. - - - - - Gets the sum of the Dirichlet parameters. - - - - - Gets the mean of the Dirichlet distribution. - - - - - Gets the variance of the Dirichlet distribution. - - - - - Gets the entropy of the distribution. - - - - - Computes the density of the distribution. - - The locations at which to compute the density. - the density at . - The Dirichlet distribution requires that the sum of the components of x equals 1. - You can also leave out the last component, and it will be computed from the others. - - - - Computes the log density of the distribution. - - The locations at which to compute the density. - the density at . - - - - Samples a Dirichlet distributed random vector. - - A sample from this distribution. - - - - Samples a Dirichlet distributed random vector. - - The random number generator to use. - The Dirichlet distribution parameter. - a sample from the distribution. - - - - Discrete Univariate Uniform distribution. - The discrete uniform distribution is a distribution over integers. The distribution - is parameterized by a lower and upper bound (both inclusive). - Wikipedia - Discrete uniform distribution. - - - - - Initializes a new instance of the DiscreteUniform class. - - Lower bound, inclusive. Range: lower ≤ upper. - Upper bound, inclusive. Range: lower ≤ upper. - - - - Initializes a new instance of the DiscreteUniform class. - - Lower bound, inclusive. Range: lower ≤ upper. - Upper bound, inclusive. Range: lower ≤ upper. - The random number generator which is used to draw random samples. - - - - Returns a that represents this instance. - - - A that represents this instance. - - - - - Tests whether the provided values are valid parameters for this distribution. - - Lower bound, inclusive. Range: lower ≤ upper. - Upper bound, inclusive. Range: lower ≤ upper. - - - - Gets the inclusive lower bound of the probability distribution. - - - - - Gets the inclusive upper bound of the probability distribution. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean of the distribution. - - - - - Gets the standard deviation of the distribution. - - - - - Gets the variance of the distribution. - - - - - Gets the entropy of the distribution. - - - - - Gets the skewness of the distribution. - - - - - Gets the smallest element in the domain of the distributions which can be represented by an integer. - - - - - Gets the largest element in the domain of the distributions which can be represented by an integer. - - - - - Gets the mode of the distribution; since every element in the domain has the same probability this method returns the middle one. - - - - - Gets the median of the distribution. - - - - - Computes the probability mass (PMF) at k, i.e. P(X = k). - - The location in the domain where we want to evaluate the probability mass function. - the probability mass at location . - - - - Computes the log probability mass (lnPMF) at k, i.e. ln(P(X = k)). - - The location in the domain where we want to evaluate the log probability mass function. - the log probability mass at location . - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - Computes the probability mass (PMF) at k, i.e. P(X = k). - - The location in the domain where we want to evaluate the probability mass function. - Lower bound, inclusive. Range: lower ≤ upper. - Upper bound, inclusive. Range: lower ≤ upper. - the probability mass at location . - - - - Computes the log probability mass (lnPMF) at k, i.e. ln(P(X = k)). - - The location in the domain where we want to evaluate the log probability mass function. - Lower bound, inclusive. Range: lower ≤ upper. - Upper bound, inclusive. Range: lower ≤ upper. - the log probability mass at location . - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - Lower bound, inclusive. Range: lower ≤ upper. - Upper bound, inclusive. Range: lower ≤ upper. - the cumulative distribution at location . - - - - - Generates one sample from the discrete uniform distribution. This method does not do any parameter checking. - - The random source to use. - Lower bound, inclusive. Range: lower ≤ upper. - Upper bound, inclusive. Range: lower ≤ upper. - A random sample from the discrete uniform distribution. - - - - Draws a random sample from the distribution. - - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Samples an array of uniformly distributed random variables. - - a sequence of samples from the distribution. - - - - Samples a uniformly distributed random variable. - - The random number generator to use. - Lower bound, inclusive. Range: lower ≤ upper. - Upper bound, inclusive. Range: lower ≤ upper. - A sample from the discrete uniform distribution. - - - - Samples a sequence of uniformly distributed random variables. - - The random number generator to use. - Lower bound, inclusive. Range: lower ≤ upper. - Upper bound, inclusive. Range: lower ≤ upper. - a sequence of samples from the discrete uniform distribution. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - Lower bound, inclusive. Range: lower ≤ upper. - Upper bound, inclusive. Range: lower ≤ upper. - a sequence of samples from the discrete uniform distribution. - - - - Samples a uniformly distributed random variable. - - Lower bound, inclusive. Range: lower ≤ upper. - Upper bound, inclusive. Range: lower ≤ upper. - A sample from the discrete uniform distribution. - - - - Samples a sequence of uniformly distributed random variables. - - Lower bound, inclusive. Range: lower ≤ upper. - Upper bound, inclusive. Range: lower ≤ upper. - a sequence of samples from the discrete uniform distribution. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - Lower bound, inclusive. Range: lower ≤ upper. - Upper bound, inclusive. Range: lower ≤ upper. - a sequence of samples from the discrete uniform distribution. - - - - Continuous Univariate Erlang distribution. - This distribution is a continuous probability distribution with wide applicability primarily due to its - relation to the exponential and Gamma distributions. - Wikipedia - Erlang distribution. - - - - - Initializes a new instance of the class. - - The shape (k) of the Erlang distribution. Range: k ≥ 0. - The rate or inverse scale (λ) of the Erlang distribution. Range: λ ≥ 0. - - - - Initializes a new instance of the class. - - The shape (k) of the Erlang distribution. Range: k ≥ 0. - The rate or inverse scale (λ) of the Erlang distribution. Range: λ ≥ 0. - The random number generator which is used to draw random samples. - - - - Constructs a Erlang distribution from a shape and scale parameter. The distribution will - be initialized with the default random number generator. - - The shape (k) of the Erlang distribution. Range: k ≥ 0. - The scale (μ) of the Erlang distribution. Range: μ ≥ 0. - The random number generator which is used to draw random samples. Optional, can be null. - - - - Constructs a Erlang distribution from a shape and inverse scale parameter. The distribution will - be initialized with the default random number generator. - - The shape (k) of the Erlang distribution. Range: k ≥ 0. - The rate or inverse scale (λ) of the Erlang distribution. Range: λ ≥ 0. - The random number generator which is used to draw random samples. Optional, can be null. - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The shape (k) of the Erlang distribution. Range: k ≥ 0. - The rate or inverse scale (λ) of the Erlang distribution. Range: λ ≥ 0. - - - - Gets the shape (k) of the Erlang distribution. Range: k ≥ 0. - - - - - Gets the rate or inverse scale (λ) of the Erlang distribution. Range: λ ≥ 0. - - - - - Gets the scale of the Erlang distribution. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean of the distribution. - - - - - Gets the variance of the distribution. - - - - - Gets the standard deviation of the distribution. - - - - - Gets the entropy of the distribution. - - - - - Gets the skewness of the distribution. - - - - - Gets the mode of the distribution. - - - - - Gets the median of the distribution. - - - - - Gets the minimum value. - - - - - Gets the Maximum value. - - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location at which to compute the log density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - - Generates a sample from the Erlang distribution. - - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Generates a sequence of samples from the Erlang distribution. - - a sequence of samples from the distribution. - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The shape (k) of the Erlang distribution. Range: k ≥ 0. - The rate or inverse scale (λ) of the Erlang distribution. Range: λ ≥ 0. - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The shape (k) of the Erlang distribution. Range: k ≥ 0. - The rate or inverse scale (λ) of the Erlang distribution. Range: λ ≥ 0. - The location at which to compute the density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - The shape (k) of the Erlang distribution. Range: k ≥ 0. - The rate or inverse scale (λ) of the Erlang distribution. Range: λ ≥ 0. - the cumulative distribution at location . - - - - - Generates a sample from the distribution. - - The random number generator to use. - The shape (k) of the Erlang distribution. Range: k ≥ 0. - The rate or inverse scale (λ) of the Erlang distribution. Range: λ ≥ 0. - a sample from the distribution. - - - - Generates a sequence of samples from the distribution. - - The random number generator to use. - The shape (k) of the Erlang distribution. Range: k ≥ 0. - The rate or inverse scale (λ) of the Erlang distribution. Range: λ ≥ 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The shape (k) of the Erlang distribution. Range: k ≥ 0. - The rate or inverse scale (λ) of the Erlang distribution. Range: λ ≥ 0. - a sequence of samples from the distribution. - - - - Generates a sample from the distribution. - - The shape (k) of the Erlang distribution. Range: k ≥ 0. - The rate or inverse scale (λ) of the Erlang distribution. Range: λ ≥ 0. - a sample from the distribution. - - - - Generates a sequence of samples from the distribution. - - The shape (k) of the Erlang distribution. Range: k ≥ 0. - The rate or inverse scale (λ) of the Erlang distribution. Range: λ ≥ 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - The shape (k) of the Erlang distribution. Range: k ≥ 0. - The rate or inverse scale (λ) of the Erlang distribution. Range: λ ≥ 0. - a sequence of samples from the distribution. - - - - Continuous Univariate Exponential distribution. - The exponential distribution is a distribution over the real numbers parameterized by one non-negative parameter. - Wikipedia - exponential distribution. - - - - - Initializes a new instance of the class. - - The rate (λ) parameter of the distribution. Range: λ ≥ 0. - - - - Initializes a new instance of the class. - - The rate (λ) parameter of the distribution. Range: λ ≥ 0. - The random number generator which is used to draw random samples. - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The rate (λ) parameter of the distribution. Range: λ ≥ 0. - - - - Gets the rate (λ) parameter of the distribution. Range: λ ≥ 0. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean of the distribution. - - - - - Gets the variance of the distribution. - - - - - Gets the standard deviation of the distribution. - - - - - Gets the entropy of the distribution. - - - - - Gets the skewness of the distribution. - - - - - Gets the mode of the distribution. - - - - - Gets the median of the distribution. - - - - - Gets the minimum of the distribution. - - - - - Gets the maximum of the distribution. - - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location at which to compute the log density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - the inverse cumulative density at . - - - - - Draws a random sample from the distribution. - - A random number from this distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Generates a sequence of samples from the Exponential distribution. - - a sequence of samples from the distribution. - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The rate (λ) parameter of the distribution. Range: λ ≥ 0. - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The rate (λ) parameter of the distribution. Range: λ ≥ 0. - The location at which to compute the density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - The rate (λ) parameter of the distribution. Range: λ ≥ 0. - the cumulative distribution at location . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - The rate (λ) parameter of the distribution. Range: λ ≥ 0. - the inverse cumulative density at . - - - - - Draws a random sample from the distribution. - - The random number generator to use. - The rate (λ) parameter of the distribution. Range: λ ≥ 0. - A random number from this distribution. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The rate (λ) parameter of the distribution. Range: λ ≥ 0. - a sequence of samples from the distribution. - - - - Generates a sequence of samples from the Exponential distribution. - - The random number generator to use. - The rate (λ) parameter of the distribution. Range: λ ≥ 0. - a sequence of samples from the distribution. - - - - Draws a random sample from the distribution. - - The rate (λ) parameter of the distribution. Range: λ ≥ 0. - A random number from this distribution. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - The rate (λ) parameter of the distribution. Range: λ ≥ 0. - a sequence of samples from the distribution. - - - - Generates a sequence of samples from the Exponential distribution. - - The rate (λ) parameter of the distribution. Range: λ ≥ 0. - a sequence of samples from the distribution. - - - - Continuous Univariate F-distribution, also known as Fisher-Snedecor distribution. - For details about this distribution, see - Wikipedia - FisherSnedecor distribution. - - - - - Initializes a new instance of the class. - - The first degree of freedom (d1) of the distribution. Range: d1 > 0. - The second degree of freedom (d2) of the distribution. Range: d2 > 0. - - - - Initializes a new instance of the class. - - The first degree of freedom (d1) of the distribution. Range: d1 > 0. - The second degree of freedom (d2) of the distribution. Range: d2 > 0. - The random number generator which is used to draw random samples. - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The first degree of freedom (d1) of the distribution. Range: d1 > 0. - The second degree of freedom (d2) of the distribution. Range: d2 > 0. - - - - Gets the first degree of freedom (d1) of the distribution. Range: d1 > 0. - - - - - Gets the second degree of freedom (d2) of the distribution. Range: d2 > 0. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean of the distribution. - - - - - Gets the variance of the distribution. - - - - - Gets the standard deviation of the distribution. - - - - - Gets the entropy of the distribution. - - - - - Gets the skewness of the distribution. - - - - - Gets the mode of the distribution. - - - - - Gets the median of the distribution. - - - - - Gets the minimum of the distribution. - - - - - Gets the maximum of the distribution. - - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location at which to compute the log density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - the inverse cumulative density at . - - WARNING: currently not an explicit implementation, hence slow and unreliable. - - - - Generates a sample from the FisherSnedecor distribution. - - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Generates a sequence of samples from the FisherSnedecor distribution. - - a sequence of samples from the distribution. - - - - Generates one sample from the FisherSnedecor distribution without parameter checking. - - The random number generator to use. - The first degree of freedom (d1) of the distribution. Range: d1 > 0. - The second degree of freedom (d2) of the distribution. Range: d2 > 0. - a FisherSnedecor distributed random number. - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The first degree of freedom (d1) of the distribution. Range: d1 > 0. - The second degree of freedom (d2) of the distribution. Range: d2 > 0. - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The first degree of freedom (d1) of the distribution. Range: d1 > 0. - The second degree of freedom (d2) of the distribution. Range: d2 > 0. - The location at which to compute the density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - The first degree of freedom (d1) of the distribution. Range: d1 > 0. - The second degree of freedom (d2) of the distribution. Range: d2 > 0. - the cumulative distribution at location . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - The first degree of freedom (d1) of the distribution. Range: d1 > 0. - The second degree of freedom (d2) of the distribution. Range: d2 > 0. - the inverse cumulative density at . - - WARNING: currently not an explicit implementation, hence slow and unreliable. - - - - Generates a sample from the distribution. - - The random number generator to use. - The first degree of freedom (d1) of the distribution. Range: d1 > 0. - The second degree of freedom (d2) of the distribution. Range: d2 > 0. - a sample from the distribution. - - - - Generates a sequence of samples from the distribution. - - The random number generator to use. - The first degree of freedom (d1) of the distribution. Range: d1 > 0. - The second degree of freedom (d2) of the distribution. Range: d2 > 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The first degree of freedom (d1) of the distribution. Range: d1 > 0. - The second degree of freedom (d2) of the distribution. Range: d2 > 0. - a sequence of samples from the distribution. - - - - Generates a sample from the distribution. - - The first degree of freedom (d1) of the distribution. Range: d1 > 0. - The second degree of freedom (d2) of the distribution. Range: d2 > 0. - a sample from the distribution. - - - - Generates a sequence of samples from the distribution. - - The first degree of freedom (d1) of the distribution. Range: d1 > 0. - The second degree of freedom (d2) of the distribution. Range: d2 > 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - The first degree of freedom (d1) of the distribution. Range: d1 > 0. - The second degree of freedom (d2) of the distribution. Range: d2 > 0. - a sequence of samples from the distribution. - - - - Continuous Univariate Gamma distribution. - For details about this distribution, see - Wikipedia - Gamma distribution. - - - The Gamma distribution is parametrized by a shape and inverse scale parameter. When we want - to specify a Gamma distribution which is a point distribution we set the shape parameter to be the - location of the point distribution and the inverse scale as positive infinity. The distribution - with shape and inverse scale both zero is undefined. - - Random number generation for the Gamma distribution is based on the algorithm in: - "A Simple Method for Generating Gamma Variables" - Marsaglia & Tsang - ACM Transactions on Mathematical Software, Vol. 26, No. 3, September 2000, Pages 363–372. - - - - - Initializes a new instance of the Gamma class. - - The shape (k, α) of the Gamma distribution. Range: α ≥ 0. - The rate or inverse scale (β) of the Gamma distribution. Range: β ≥ 0. - - - - Initializes a new instance of the Gamma class. - - The shape (k, α) of the Gamma distribution. Range: α ≥ 0. - The rate or inverse scale (β) of the Gamma distribution. Range: β ≥ 0. - The random number generator which is used to draw random samples. - - - - Constructs a Gamma distribution from a shape and scale parameter. The distribution will - be initialized with the default random number generator. - - The shape (k) of the Gamma distribution. Range: k ≥ 0. - The scale (θ) of the Gamma distribution. Range: θ ≥ 0 - The random number generator which is used to draw random samples. Optional, can be null. - - - - Constructs a Gamma distribution from a shape and inverse scale parameter. The distribution will - be initialized with the default random number generator. - - The shape (k, α) of the Gamma distribution. Range: α ≥ 0. - The rate or inverse scale (β) of the Gamma distribution. Range: β ≥ 0. - The random number generator which is used to draw random samples. Optional, can be null. - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The shape (k, α) of the Gamma distribution. Range: α ≥ 0. - The rate or inverse scale (β) of the Gamma distribution. Range: β ≥ 0. - - - - Gets or sets the shape (k, α) of the Gamma distribution. Range: α ≥ 0. - - - - - Gets or sets the rate or inverse scale (β) of the Gamma distribution. Range: β ≥ 0. - - - - - Gets or sets the scale (θ) of the Gamma distribution. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean of the Gamma distribution. - - - - - Gets the variance of the Gamma distribution. - - - - - Gets the standard deviation of the Gamma distribution. - - - - - Gets the entropy of the Gamma distribution. - - - - - Gets the skewness of the Gamma distribution. - - - - - Gets the mode of the Gamma distribution. - - - - - Gets the median of the Gamma distribution. - - - - - Gets the minimum of the Gamma distribution. - - - - - Gets the maximum of the Gamma distribution. - - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location at which to compute the log density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - the inverse cumulative density at . - - - - - Generates a sample from the Gamma distribution. - - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Generates a sequence of samples from the Gamma distribution. - - a sequence of samples from the distribution. - - - - Sampling implementation based on: - "A Simple Method for Generating Gamma Variables" - Marsaglia & Tsang - ACM Transactions on Mathematical Software, Vol. 26, No. 3, September 2000, Pages 363–372. - This method performs no parameter checks. - - The random number generator to use. - The shape (k, α) of the Gamma distribution. Range: α ≥ 0. - The rate or inverse scale (β) of the Gamma distribution. Range: β ≥ 0. - A sample from a Gamma distributed random variable. - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The shape (k, α) of the Gamma distribution. Range: α ≥ 0. - The rate or inverse scale (β) of the Gamma distribution. Range: β ≥ 0. - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The shape (k, α) of the Gamma distribution. Range: α ≥ 0. - The rate or inverse scale (β) of the Gamma distribution. Range: β ≥ 0. - The location at which to compute the density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - The shape (k, α) of the Gamma distribution. Range: α ≥ 0. - The rate or inverse scale (β) of the Gamma distribution. Range: β ≥ 0. - the cumulative distribution at location . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - The shape (k, α) of the Gamma distribution. Range: α ≥ 0. - The rate or inverse scale (β) of the Gamma distribution. Range: β ≥ 0. - the inverse cumulative density at . - - - - - Generates a sample from the Gamma distribution. - - The random number generator to use. - The shape (k, α) of the Gamma distribution. Range: α ≥ 0. - The rate or inverse scale (β) of the Gamma distribution. Range: β ≥ 0. - a sample from the distribution. - - - - Generates a sequence of samples from the Gamma distribution. - - The random number generator to use. - The shape (k, α) of the Gamma distribution. Range: α ≥ 0. - The rate or inverse scale (β) of the Gamma distribution. Range: β ≥ 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The shape (k, α) of the Gamma distribution. Range: α ≥ 0. - The rate or inverse scale (β) of the Gamma distribution. Range: β ≥ 0. - a sequence of samples from the distribution. - - - - Generates a sample from the Gamma distribution. - - The shape (k, α) of the Gamma distribution. Range: α ≥ 0. - The rate or inverse scale (β) of the Gamma distribution. Range: β ≥ 0. - a sample from the distribution. - - - - Generates a sequence of samples from the Gamma distribution. - - The shape (k, α) of the Gamma distribution. Range: α ≥ 0. - The rate or inverse scale (β) of the Gamma distribution. Range: β ≥ 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - The shape (k, α) of the Gamma distribution. Range: α ≥ 0. - The rate or inverse scale (β) of the Gamma distribution. Range: β ≥ 0. - a sequence of samples from the distribution. - - - - Discrete Univariate Geometric distribution. - The Geometric distribution is a distribution over positive integers parameterized by one positive real number. - This implementation of the Geometric distribution will never generate 0's. - Wikipedia - geometric distribution. - - - - - Initializes a new instance of the Geometric class. - - The probability (p) of generating one. Range: 0 ≤ p ≤ 1. - - - - Initializes a new instance of the Geometric class. - - The probability (p) of generating one. Range: 0 ≤ p ≤ 1. - The random number generator which is used to draw random samples. - - - - Returns a that represents this instance. - - A that represents this instance. - - - - Tests whether the provided values are valid parameters for this distribution. - - The probability (p) of generating one. Range: 0 ≤ p ≤ 1. - - - - Gets the probability of generating a one. Range: 0 ≤ p ≤ 1. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean of the distribution. - - - - - Gets the variance of the distribution. - - - - - Gets the standard deviation of the distribution. - - - - - Gets the entropy of the distribution. - - - - - Gets the skewness of the distribution. - - Throws a not supported exception. - - - - Gets the mode of the distribution. - - - - - Gets the median of the distribution. - - - - - Gets the smallest element in the domain of the distributions which can be represented by an integer. - - - - - Gets the largest element in the domain of the distributions which can be represented by an integer. - - - - - Computes the probability mass (PMF) at k, i.e. P(X = k). - - The location in the domain where we want to evaluate the probability mass function. - the probability mass at location . - - - - Computes the log probability mass (lnPMF) at k, i.e. ln(P(X = k)). - - The location in the domain where we want to evaluate the log probability mass function. - the log probability mass at location . - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - Computes the probability mass (PMF) at k, i.e. P(X = k). - - The location in the domain where we want to evaluate the probability mass function. - The probability (p) of generating one. Range: 0 ≤ p ≤ 1. - the probability mass at location . - - - - Computes the log probability mass (lnPMF) at k, i.e. ln(P(X = k)). - - The location in the domain where we want to evaluate the log probability mass function. - The probability (p) of generating one. Range: 0 ≤ p ≤ 1. - the log probability mass at location . - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - The probability (p) of generating one. Range: 0 ≤ p ≤ 1. - the cumulative distribution at location . - - - - - Returns one sample from the distribution. - - The random number generator to use. - The probability (p) of generating one. Range: 0 ≤ p ≤ 1. - One sample from the distribution implied by . - - - - Samples a Geometric distributed random variable. - - A sample from the Geometric distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Samples an array of Geometric distributed random variables. - - a sequence of samples from the distribution. - - - - Samples a random variable. - - The random number generator to use. - The probability (p) of generating one. Range: 0 ≤ p ≤ 1. - - - - Samples a sequence of this random variable. - - The random number generator to use. - The probability (p) of generating one. Range: 0 ≤ p ≤ 1. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The probability (p) of generating one. Range: 0 ≤ p ≤ 1. - - - - Samples a random variable. - - The probability (p) of generating one. Range: 0 ≤ p ≤ 1. - - - - Samples a sequence of this random variable. - - The probability (p) of generating one. Range: 0 ≤ p ≤ 1. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - The probability (p) of generating one. Range: 0 ≤ p ≤ 1. - - - - Discrete Univariate Hypergeometric distribution. - This distribution is a discrete probability distribution that describes the number of successes in a sequence - of n draws from a finite population without replacement, just as the binomial distribution - describes the number of successes for draws with replacement - Wikipedia - Hypergeometric distribution. - - - - - Initializes a new instance of the Hypergeometric class. - - The size of the population (N). - The number successes within the population (K, M). - The number of draws without replacement (n). - - - - Initializes a new instance of the Hypergeometric class. - - The size of the population (N). - The number successes within the population (K, M). - The number of draws without replacement (n). - The random number generator which is used to draw random samples. - - - - Returns a that represents this instance. - - - A that represents this instance. - - - - - Tests whether the provided values are valid parameters for this distribution. - - The size of the population (N). - The number successes within the population (K, M). - The number of draws without replacement (n). - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the size of the population (N). - - - - - Gets the number of draws without replacement (n). - - - - - Gets the number successes within the population (K, M). - - - - - Gets the mean of the distribution. - - - - - Gets the variance of the distribution. - - - - - Gets the standard deviation of the distribution. - - - - - Gets the entropy of the distribution. - - - - - Gets the skewness of the distribution. - - - - - Gets the mode of the distribution. - - - - - Gets the median of the distribution. - - - - - Gets the minimum of the distribution. - - - - - Gets the maximum of the distribution. - - - - - Computes the probability mass (PMF) at k, i.e. P(X = k). - - The location in the domain where we want to evaluate the probability mass function. - the probability mass at location . - - - - Computes the log probability mass (lnPMF) at k, i.e. ln(P(X = k)). - - The location in the domain where we want to evaluate the log probability mass function. - the log probability mass at location . - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - Computes the probability mass (PMF) at k, i.e. P(X = k). - - The location in the domain where we want to evaluate the probability mass function. - The size of the population (N). - The number successes within the population (K, M). - The number of draws without replacement (n). - the probability mass at location . - - - - Computes the log probability mass (lnPMF) at k, i.e. ln(P(X = k)). - - The location in the domain where we want to evaluate the log probability mass function. - The size of the population (N). - The number successes within the population (K, M). - The number of draws without replacement (n). - the log probability mass at location . - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - The size of the population (N). - The number successes within the population (K, M). - The number of draws without replacement (n). - the cumulative distribution at location . - - - - - Generates a sample from the Hypergeometric distribution without doing parameter checking. - - The random number generator to use. - The size of the population (N). - The number successes within the population (K, M). - The n parameter of the distribution. - a random number from the Hypergeometric distribution. - - - - Samples a Hypergeometric distributed random variable. - - The number of successes in n trials. - - - - Fills an array with samples generated from the distribution. - - - - - Samples an array of Hypergeometric distributed random variables. - - a sequence of successes in n trials. - - - - Samples a random variable. - - The random number generator to use. - The size of the population (N). - The number successes within the population (K, M). - The number of draws without replacement (n). - - - - Samples a sequence of this random variable. - - The random number generator to use. - The size of the population (N). - The number successes within the population (K, M). - The number of draws without replacement (n). - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The size of the population (N). - The number successes within the population (K, M). - The number of draws without replacement (n). - - - - Samples a random variable. - - The size of the population (N). - The number successes within the population (K, M). - The number of draws without replacement (n). - - - - Samples a sequence of this random variable. - - The size of the population (N). - The number successes within the population (K, M). - The number of draws without replacement (n). - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - The size of the population (N). - The number successes within the population (K, M). - The number of draws without replacement (n). - - - - Continuous Univariate Probability Distribution. - - - - - - Gets the mode of the distribution. - - - - - Gets the smallest element in the domain of the distribution which can be represented by a double. - - - - - Gets the largest element in the domain of the distribution which can be represented by a double. - - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location at which to compute the density. - the density at . - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location at which to compute the log density. - the log density at . - - - - Draws a random sample from the distribution. - - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Draws a sequence of random samples from the distribution. - - an infinite sequence of samples from the distribution. - - - - Discrete Univariate Probability Distribution. - - - - - - Gets the mode of the distribution. - - - - - Gets the smallest element in the domain of the distribution which can be represented by an integer. - - - - - Gets the largest element in the domain of the distribution which can be represented by an integer. - - - - - Computes the probability mass (PMF) at k, i.e. P(X = k). - - The location in the domain where we want to evaluate the probability mass function. - the probability mass at location . - - - - Computes the log probability mass (lnPMF) at k, i.e. ln(P(X = k)). - - The location in the domain where we want to evaluate the log probability mass function. - the log probability mass at location . - - - - Draws a random sample from the distribution. - - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Draws a sequence of random samples from the distribution. - - an infinite sequence of samples from the distribution. - - - - Probability Distribution. - - - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Continuous Univariate Inverse Gamma distribution. - The inverse Gamma distribution is a distribution over the positive real numbers parameterized by - two positive parameters. - Wikipedia - InverseGamma distribution. - - - - - Initializes a new instance of the class. - - The shape (α) of the distribution. Range: α > 0. - The scale (β) of the distribution. Range: β > 0. - - - - Initializes a new instance of the class. - - The shape (α) of the distribution. Range: α > 0. - The scale (β) of the distribution. Range: β > 0. - The random number generator which is used to draw random samples. - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The shape (α) of the distribution. Range: α > 0. - The scale (β) of the distribution. Range: β > 0. - - - - Gets or sets the shape (α) parameter. Range: α > 0. - - - - - Gets or sets The scale (β) parameter. Range: β > 0. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean of the distribution. - - - - - Gets the variance of the distribution. - - - - - Gets the standard deviation of the distribution. - - - - - Gets the entropy of the distribution. - - - - - Gets the skewness of the distribution. - - - - - Gets the mode of the distribution. - - - - - Gets the median of the distribution. - - Throws . - - - - Gets the minimum of the distribution. - - - - - Gets the maximum of the distribution. - - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location at which to compute the log density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - - Draws a random sample from the distribution. - - A random number from this distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Generates a sequence of samples from the Cauchy distribution. - - a sequence of samples from the distribution. - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The shape (α) of the distribution. Range: α > 0. - The scale (β) of the distribution. Range: β > 0. - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The shape (α) of the distribution. Range: α > 0. - The scale (β) of the distribution. Range: β > 0. - The location at which to compute the density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - The shape (α) of the distribution. Range: α > 0. - The scale (β) of the distribution. Range: β > 0. - the cumulative distribution at location . - - - - - Generates a sample from the distribution. - - The random number generator to use. - The shape (α) of the distribution. Range: α > 0. - The scale (β) of the distribution. Range: β > 0. - a sample from the distribution. - - - - Generates a sequence of samples from the distribution. - - The random number generator to use. - The shape (α) of the distribution. Range: α > 0. - The scale (β) of the distribution. Range: β > 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The shape (α) of the distribution. Range: α > 0. - The scale (β) of the distribution. Range: β > 0. - a sequence of samples from the distribution. - - - - Generates a sample from the distribution. - - The shape (α) of the distribution. Range: α > 0. - The scale (β) of the distribution. Range: β > 0. - a sample from the distribution. - - - - Generates a sequence of samples from the distribution. - - The shape (α) of the distribution. Range: α > 0. - The scale (β) of the distribution. Range: β > 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - The shape (α) of the distribution. Range: α > 0. - The scale (β) of the distribution. Range: β > 0. - a sequence of samples from the distribution. - - - - Gets the mean (μ) of the distribution. Range: μ > 0. - - - - - Gets the shape (λ) of the distribution. Range: λ > 0. - - - - - Initializes a new instance of the InverseGaussian class. - - The mean (μ) of the distribution. Range: μ > 0. - The shape (λ) of the distribution. Range: λ > 0. - The random number generator which is used to draw random samples. - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The mean (μ) of the distribution. Range: μ > 0. - The shape (λ) of the distribution. Range: λ > 0. - - - - Gets the random number generator which is used to draw random samples. - - - - - Gets the mean of the Inverse Gaussian distribution. - - - - - Gets the variance of the Inverse Gaussian distribution. - - - - - Gets the standard deviation of the Inverse Gaussian distribution. - - - - - Gets the median of the Inverse Gaussian distribution. - No closed form analytical expression exists, so this value is approximated numerically and can throw an exception. - - - - - Gets the minimum of the Inverse Gaussian distribution. - - - - - Gets the maximum of the Inverse Gaussian distribution. - - - - - Gets the skewness of the Inverse Gaussian distribution. - - - - - Gets the kurtosis of the Inverse Gaussian distribution. - - - - - Gets the mode of the Inverse Gaussian distribution. - - - - - Gets the entropy of the Inverse Gaussian distribution (currently not supported). - - - - - Generates a sample from the inverse Gaussian distribution. - - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - - - - Generates a sequence of samples from the inverse Gaussian distribution. - - a sequence of samples from the distribution. - - - - Generates a sample from the inverse Gaussian distribution. - - The random number generator to use. - The mean (μ) of the distribution. Range: μ > 0. - The shape (λ) of the distribution. Range: λ > 0. - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The mean (μ) of the distribution. Range: μ > 0. - The shape (λ) of the distribution. Range: λ > 0. - - - - Generates a sequence of samples from the Burr distribution. - - The random number generator to use. - The mean (μ) of the distribution. Range: μ > 0. - The shape (λ) of the distribution. Range: λ > 0. - a sequence of samples from the distribution. - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location at which to compute the log density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - - Computes the inverse cumulative distribution (CDF) of the distribution at p, i.e. solving for P(X ≤ x) = p. - - The location at which to compute the inverse cumulative distribution function. - the inverse cumulative distribution at location . - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The mean (μ) of the distribution. Range: μ > 0. - The shape (λ) of the distribution. Range: λ > 0. - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The mean (μ) of the distribution. Range: μ > 0. - The shape (λ) of the distribution. Range: λ > 0. - The location at which to compute the log density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The mean (μ) of the distribution. Range: μ > 0. - The shape (λ) of the distribution. Range: λ > 0. - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - - Computes the inverse cumulative distribution (CDF) of the distribution at p, i.e. solving for P(X ≤ x) = p. - - The mean (μ) of the distribution. Range: μ > 0. - The shape (λ) of the distribution. Range: λ > 0. - The location at which to compute the inverse cumulative distribution function. - the inverse cumulative distribution at location . - - - - - Estimates the Inverse Gaussian parameters from sample data with maximum-likelihood. - - The samples to estimate the distribution parameters from. - The random number generator which is used to draw random samples. Optional, can be null. - An Inverse Gaussian distribution. - - - - Multivariate Inverse Wishart distribution. This distribution is - parameterized by the degrees of freedom nu and the scale matrix S. The inverse Wishart distribution - is the conjugate prior for the covariance matrix of a multivariate normal distribution. - Wikipedia - Inverse-Wishart distribution. - - - - - Caches the Cholesky factorization of the scale matrix. - - - - - Initializes a new instance of the class. - - The degree of freedom (ν) for the inverse Wishart distribution. - The scale matrix (Ψ) for the inverse Wishart distribution. - - - - Initializes a new instance of the class. - - The degree of freedom (ν) for the inverse Wishart distribution. - The scale matrix (Ψ) for the inverse Wishart distribution. - The random number generator which is used to draw random samples. - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The degree of freedom (ν) for the inverse Wishart distribution. - The scale matrix (Ψ) for the inverse Wishart distribution. - - - - Gets or sets the degree of freedom (ν) for the inverse Wishart distribution. - - - - - Gets or sets the scale matrix (Ψ) for the inverse Wishart distribution. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean. - - The mean of the distribution. - - - - Gets the mode of the distribution. - - The mode of the distribution. - A. O'Hagan, and J. J. Forster (2004). Kendall's Advanced Theory of Statistics: Bayesian Inference. 2B (2 ed.). Arnold. ISBN 0-340-80752-0. - - - - Gets the variance of the distribution. - - The variance of the distribution. - Kanti V. Mardia, J. T. Kent and J. M. Bibby (1979). Multivariate Analysis. - - - - Evaluates the probability density function for the inverse Wishart distribution. - - The matrix at which to evaluate the density at. - If the argument does not have the same dimensions as the scale matrix. - the density at . - - - - Samples an inverse Wishart distributed random variable by sampling - a Wishart random variable and inverting the matrix. - - a sample from the distribution. - - - - Samples an inverse Wishart distributed random variable by sampling - a Wishart random variable and inverting the matrix. - - The random number generator to use. - The degree of freedom (ν) for the inverse Wishart distribution. - The scale matrix (Ψ) for the inverse Wishart distribution. - a sample from the distribution. - - - - Univariate Probability Distribution. - - - - - - - Gets the mean of the distribution. - - - - - Gets the variance of the distribution. - - - - - Gets the standard deviation of the distribution. - - - - - Gets the entropy of the distribution. - - - - - Gets the skewness of the distribution. - - - - - Gets the median of the distribution. - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - Continuous Univariate Laplace distribution. - The Laplace distribution is a distribution over the real numbers parameterized by a mean and - scale parameter. The PDF is: - p(x) = \frac{1}{2 * scale} \exp{- |x - mean| / scale}. - Wikipedia - Laplace distribution. - - - - - Initializes a new instance of the class (location = 0, scale = 1). - - - - - Initializes a new instance of the class. - - The location (μ) of the distribution. - The scale (b) of the distribution. Range: b > 0. - If is negative. - - - - Initializes a new instance of the class. - - The location (μ) of the distribution. - The scale (b) of the distribution. Range: b > 0. - The random number generator which is used to draw random samples. - If is negative. - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The location (μ) of the distribution. - The scale (b) of the distribution. Range: b > 0. - - - - Gets the location (μ) of the Laplace distribution. - - - - - Gets the scale (b) of the Laplace distribution. Range: b > 0. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean of the distribution. - - - - - Gets the variance of the distribution. - - - - - Gets the standard deviation of the distribution. - - - - - Gets the entropy of the distribution. - - - - - Gets the skewness of the distribution. - - - - - Gets the mode of the distribution. - - - - - Gets the median of the distribution. - - - - - Gets the minimum of the distribution. - - - - - Gets the maximum of the distribution. - - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location at which to compute the log density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - - Samples a Laplace distributed random variable. - - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Generates a sample from the Laplace distribution. - - a sample from the distribution. - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location (μ) of the distribution. - The scale (b) of the distribution. Range: b > 0. - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location (μ) of the distribution. - The scale (b) of the distribution. Range: b > 0. - The location at which to compute the density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - The location (μ) of the distribution. - The scale (b) of the distribution. Range: b > 0. - the cumulative distribution at location . - - - - - Generates a sample from the distribution. - - The random number generator to use. - The location (μ) of the distribution. - The scale (b) of the distribution. Range: b > 0. - a sample from the distribution. - - - - Generates a sequence of samples from the distribution. - - The random number generator to use. - The location (μ) of the distribution. - The scale (b) of the distribution. Range: b > 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The location (μ) of the distribution. - The scale (b) of the distribution. Range: b > 0. - a sequence of samples from the distribution. - - - - Generates a sample from the distribution. - - The location (μ) of the distribution. - The scale (b) of the distribution. Range: b > 0. - a sample from the distribution. - - - - Generates a sequence of samples from the distribution. - - The location (μ) of the distribution. - The scale (b) of the distribution. Range: b > 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - The location (μ) of the distribution. - The scale (b) of the distribution. Range: b > 0. - a sequence of samples from the distribution. - - - - Continuous Univariate Logistic distribution. - For details about this distribution, see - Wikipedia - Logistic distribution. - - - - - Initializes a new instance of the Logistic class. This is a logistic distribution with mean 0.0 - and scale 1.0. The distribution will be initialized with the default - random number generator. - - - - - Initializes a new instance of the Logistic class. This is a logistic distribution with mean 0.0 - and scale 1.0. The distribution will be initialized with the default - random number generator. - - The random number generator which is used to draw random samples. - - - - Initializes a new instance of the Logistic class with a particular mean and scale parameter. The - distribution will be initialized with the default random number generator. - - The mean (μ) of the logistic distribution. - The scale (s) of the logistic distribution. Range: s > 0. - - - - Initializes a new instance of the Logistic class with a particular mean and standard deviation. The distribution will - be initialized with the default random number generator. - - The mean (μ) of the logistic distribution. - The scale (s) of the logistic distribution. Range: s > 0. - The random number generator which is used to draw random samples. - - - - Constructs a logistic distribution from a mean and scale parameter. - - The mean (μ) of the logistic distribution. - The scale (s) of the logistic distribution. Range: s > 0. - The random number generator which is used to draw random samples. Optional, can be null. - a logistic distribution. - - - - Constructs a logistic distribution from a mean and standard deviation. - - The mean (μ) of the logistic distribution. - The standard deviation (σ) of the logistic distribution. Range: σ > 0. - The random number generator which is used to draw random samples. Optional, can be null. - a logistic distribution. - - - - Constructs a logistic distribution from a mean and variance. - - The mean (μ) of the logistic distribution. - The variance (σ^2) of the logistic distribution. Range: (σ^2) > 0. - The random number generator which is used to draw random samples. Optional, can be null. - A logistic distribution. - - - - Constructs a logistic distribution from a mean and precision. - - The mean (μ) of the logistic distribution. - The precision of the logistic distribution. Range: precision > 0. - The random number generator which is used to draw random samples. Optional, can be null. - A logistic distribution. - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The mean (μ) of the logistic distribution. - The scale (s) of the logistic distribution. Range: s > 0. - - - - Gets the scale parameter of the Logistic distribution. Range: s > 0. - - - - - Gets the mean (μ) of the logistic distribution. - - - - - Gets the standard deviation (σ) of the logistic distribution. Range: σ > 0. - - - - - Gets the variance of the logistic distribution. - - - - - Gets the precision of the logistic distribution. - - - - - Gets the random number generator which is used to draw random samples. - - - - - Gets the entropy of the logistic distribution. - - - - - Gets the skewness of the logistic distribution. - - - - - Gets the mode of the logistic distribution. - - - - - Gets the median of the logistic distribution. - - - - - Gets the minimum of the logistic distribution. - - - - - Gets the maximum of the logistic distribution. - - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location at which to compute the log density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - the inverse cumulative density at . - - - - - Generates a sample from the logistic distribution using the Box-Muller algorithm. - - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Generates a sequence of samples from the logistic distribution using the Box-Muller algorithm. - - a sequence of samples from the distribution. - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The mean (μ) of the logistic distribution. - The scale (s) of the logistic distribution. Range: s > 0. - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The mean (μ) of the logistic distribution. - The scale (s) of the logistic distribution. Range: s > 0. - The location at which to compute the density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - The mean (μ) of the logistic distribution. - The scale (s) of the logistic distribution. Range: s > 0. - the cumulative distribution at location . - - MATLAB: normcdf - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - The mean (μ) of the logistic distribution. - The scale (s) of the logistic distribution. Range: s > 0. - the inverse cumulative density at . - - MATLAB: norminv - - - - Generates a sample from the logistic distribution using the Box-Muller algorithm. - - The random number generator to use. - The mean (μ) of the logistic distribution. - The scale (s) of the logistic distribution. Range: s > 0. - a sample from the distribution. - - - - Generates a sequence of samples from the logistic distribution using the Box-Muller algorithm. - - The random number generator to use. - The mean (μ) of the logistic distribution. - The scale (s) of the logistic distribution. Range: s > 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The mean (μ) of the logistic distribution. - The scale (s) of the logistic distribution. Range: s > 0. - a sequence of samples from the distribution. - - - - Generates a sample from the logistic distribution using the Box-Muller algorithm. - - The mean (μ) of the logistic distribution. - The scale (s) of the logistic distribution. Range: s > 0. - a sample from the distribution. - - - - Generates a sequence of samples from the logistic distribution using the Box-Muller algorithm. - - The mean (μ) of the logistic distribution. - The scale (s) of the logistic distribution. Range: s > 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - The mean (μ) of the logistic distribution. - The scale (s) of the logistic distribution. Range: s > 0. - a sequence of samples from the distribution. - - - - Continuous Univariate Log-Normal distribution. - For details about this distribution, see - Wikipedia - Log-Normal distribution. - - - - - Initializes a new instance of the class. - The distribution will be initialized with the default - random number generator. - - The log-scale (μ) of the logarithm of the distribution. - The shape (σ) of the logarithm of the distribution. Range: σ ≥ 0. - - - - Initializes a new instance of the class. - The distribution will be initialized with the default - random number generator. - - The log-scale (μ) of the distribution. - The shape (σ) of the distribution. Range: σ ≥ 0. - The random number generator which is used to draw random samples. - - - - Constructs a log-normal distribution with the desired mu and sigma parameters. - - The log-scale (μ) of the distribution. - The shape (σ) of the distribution. Range: σ ≥ 0. - The random number generator which is used to draw random samples. Optional, can be null. - A log-normal distribution. - - - - Constructs a log-normal distribution with the desired mean and variance. - - The mean of the log-normal distribution. - The variance of the log-normal distribution. - The random number generator which is used to draw random samples. Optional, can be null. - A log-normal distribution. - - - - Estimates the log-normal distribution parameters from sample data with maximum-likelihood. - - The samples to estimate the distribution parameters from. - The random number generator which is used to draw random samples. Optional, can be null. - A log-normal distribution. - MATLAB: lognfit - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The log-scale (μ) of the distribution. - The shape (σ) of the distribution. Range: σ ≥ 0. - - - - Gets the log-scale (μ) (mean of the logarithm) of the distribution. - - - - - Gets the shape (σ) (standard deviation of the logarithm) of the distribution. Range: σ ≥ 0. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mu of the log-normal distribution. - - - - - Gets the variance of the log-normal distribution. - - - - - Gets the standard deviation of the log-normal distribution. - - - - - Gets the entropy of the log-normal distribution. - - - - - Gets the skewness of the log-normal distribution. - - - - - Gets the mode of the log-normal distribution. - - - - - Gets the median of the log-normal distribution. - - - - - Gets the minimum of the log-normal distribution. - - - - - Gets the maximum of the log-normal distribution. - - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location at which to compute the log density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - the inverse cumulative density at . - - - - - Generates a sample from the log-normal distribution using the Box-Muller algorithm. - - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Generates a sequence of samples from the log-normal distribution using the Box-Muller algorithm. - - a sequence of samples from the distribution. - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location at which to compute the density. - The log-scale (μ) of the distribution. - The shape (σ) of the distribution. Range: σ ≥ 0. - the density at . - - MATLAB: lognpdf - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location at which to compute the density. - The log-scale (μ) of the distribution. - The shape (σ) of the distribution. Range: σ ≥ 0. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - The log-scale (μ) of the distribution. - The shape (σ) of the distribution. Range: σ ≥ 0. - the cumulative distribution at location . - - MATLAB: logncdf - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - The log-scale (μ) of the distribution. - The shape (σ) of the distribution. Range: σ ≥ 0. - the inverse cumulative density at . - - MATLAB: logninv - - - - Generates a sample from the log-normal distribution using the Box-Muller algorithm. - - The random number generator to use. - The log-scale (μ) of the distribution. - The shape (σ) of the distribution. Range: σ ≥ 0. - a sample from the distribution. - - - - Generates a sequence of samples from the log-normal distribution using the Box-Muller algorithm. - - The random number generator to use. - The log-scale (μ) of the distribution. - The shape (σ) of the distribution. Range: σ ≥ 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The log-scale (μ) of the distribution. - The shape (σ) of the distribution. Range: σ ≥ 0. - a sequence of samples from the distribution. - - - - Generates a sample from the log-normal distribution using the Box-Muller algorithm. - - The log-scale (μ) of the distribution. - The shape (σ) of the distribution. Range: σ ≥ 0. - a sample from the distribution. - - - - Generates a sequence of samples from the log-normal distribution using the Box-Muller algorithm. - - The log-scale (μ) of the distribution. - The shape (σ) of the distribution. Range: σ ≥ 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - The log-scale (μ) of the distribution. - The shape (σ) of the distribution. Range: σ ≥ 0. - a sequence of samples from the distribution. - - - - Multivariate Matrix-valued Normal distributions. The distribution - is parameterized by a mean matrix (M), a covariance matrix for the rows (V) and a covariance matrix - for the columns (K). If the dimension of M is d-by-m then V is d-by-d and K is m-by-m. - Wikipedia - MatrixNormal distribution. - - - - - The mean of the matrix normal distribution. - - - - - The covariance matrix for the rows. - - - - - The covariance matrix for the columns. - - - - - Initializes a new instance of the class. - - The mean of the matrix normal. - The covariance matrix for the rows. - The covariance matrix for the columns. - If the dimensions of the mean and two covariance matrices don't match. - - - - Initializes a new instance of the class. - - The mean of the matrix normal. - The covariance matrix for the rows. - The covariance matrix for the columns. - The random number generator which is used to draw random samples. - If the dimensions of the mean and two covariance matrices don't match. - - - - Returns a that represents this instance. - - - A that represents this instance. - - - - - Tests whether the provided values are valid parameters for this distribution. - - The mean of the matrix normal. - The covariance matrix for the rows. - The covariance matrix for the columns. - - - - Gets the mean. (M) - - The mean of the distribution. - - - - Gets the row covariance. (V) - - The row covariance. - - - - Gets the column covariance. (K) - - The column covariance. - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Evaluates the probability density function for the matrix normal distribution. - - The matrix at which to evaluate the density at. - the density at - If the argument does not have the correct dimensions. - - - - Samples a matrix normal distributed random variable. - - A random number from this distribution. - - - - Samples a matrix normal distributed random variable. - - The random number generator to use. - The mean of the matrix normal. - The covariance matrix for the rows. - The covariance matrix for the columns. - If the dimensions of the mean and two covariance matrices don't match. - a sequence of samples from the distribution. - - - - Samples a vector normal distributed random variable. - - The random number generator to use. - The mean of the vector normal distribution. - The covariance matrix of the vector normal distribution. - a sequence of samples from defined distribution. - - - - Multivariate Multinomial distribution. For details about this distribution, see - Wikipedia - Multinomial distribution. - - - The distribution is parameterized by a vector of ratios: in other words, the parameter - does not have to be normalized and sum to 1. The reason is that some vectors can't be exactly normalized - to sum to 1 in floating point representation. - - - - - Stores the normalized multinomial probabilities. - - - - - The number of trials. - - - - - Initializes a new instance of the Multinomial class. - - An array of nonnegative ratios: this array does not need to be normalized - as this is often impossible using floating point arithmetic. - The number of trials. - If any of the probabilities are negative or do not sum to one. - If is negative. - - - - Initializes a new instance of the Multinomial class. - - An array of nonnegative ratios: this array does not need to be normalized - as this is often impossible using floating point arithmetic. - The number of trials. - The random number generator which is used to draw random samples. - If any of the probabilities are negative or do not sum to one. - If is negative. - - - - Initializes a new instance of the Multinomial class from histogram . The distribution will - not be automatically updated when the histogram changes. - - Histogram instance - The number of trials. - If any of the probabilities are negative or do not sum to one. - If is negative. - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - An array of nonnegative ratios: this array does not need to be normalized - as this is often impossible using floating point arithmetic. - The number of trials. - If any of the probabilities are negative returns false, - if the sum of parameters is 0.0, or if the number of trials is negative; otherwise true. - - - - Gets the proportion of ratios. - - - - - Gets the number of trials. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean of the distribution. - - - - - Gets the variance of the distribution. - - - - - Gets the skewness of the distribution. - - - - - Computes values of the probability mass function. - - Non-negative integers x1, ..., xk - The probability mass at location . - When is null. - When length of is not equal to event probabilities count. - - - - Computes values of the log probability mass function. - - Non-negative integers x1, ..., xk - The log probability mass at location . - When is null. - When length of is not equal to event probabilities count. - - - - Samples one multinomial distributed random variable. - - the counts for each of the different possible values. - - - - Samples a sequence multinomially distributed random variables. - - a sequence of counts for each of the different possible values. - - - - Samples one multinomial distributed random variable. - - The random number generator to use. - An array of nonnegative ratios: this array does not need to be normalized - as this is often impossible using floating point arithmetic. - The number of trials. - the counts for each of the different possible values. - - - - Samples a multinomially distributed random variable. - - The random number generator to use. - An array of nonnegative ratios: this array does not need to be normalized - as this is often impossible using floating point arithmetic. - The number of variables needed. - a sequence of counts for each of the different possible values. - - - - Discrete Univariate Negative Binomial distribution. - The negative binomial is a distribution over the natural numbers with two parameters r, p. For the special - case that r is an integer one can interpret the distribution as the number of failures before the r'th success - when the probability of success is p. - Wikipedia - NegativeBinomial distribution. - - - - - Initializes a new instance of the class. - - The number of successes (r) required to stop the experiment. Range: r ≥ 0. - The probability (p) of a trial resulting in success. Range: 0 ≤ p ≤ 1. - - - - Initializes a new instance of the class. - - The number of successes (r) required to stop the experiment. Range: r ≥ 0. - The probability (p) of a trial resulting in success. Range: 0 ≤ p ≤ 1. - The random number generator which is used to draw random samples. - - - - Returns a that represents this instance. - - - A that represents this instance. - - - - - Tests whether the provided values are valid parameters for this distribution. - - The number of successes (r) required to stop the experiment. Range: r ≥ 0. - The probability (p) of a trial resulting in success. Range: 0 ≤ p ≤ 1. - - - - Gets the number of successes. Range: r ≥ 0. - - - - - Gets the probability of success. Range: 0 ≤ p ≤ 1. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean of the distribution. - - - - - Gets the variance of the distribution. - - - - - Gets the standard deviation of the distribution. - - - - - Gets the entropy of the distribution. - - - - - Gets the skewness of the distribution. - - - - - Gets the mode of the distribution - - - - - Gets the median of the distribution. - - - - - Gets the smallest element in the domain of the distributions which can be represented by an integer. - - - - - Gets the largest element in the domain of the distributions which can be represented by an integer. - - - - - Computes the probability mass (PMF) at k, i.e. P(X = k). - - The location in the domain where we want to evaluate the probability mass function. - the probability mass at location . - - - - Computes the log probability mass (lnPMF) at k, i.e. ln(P(X = k)). - - The location in the domain where we want to evaluate the log probability mass function. - the log probability mass at location . - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - Computes the probability mass (PMF) at k, i.e. P(X = k). - - The location in the domain where we want to evaluate the probability mass function. - The number of successes (r) required to stop the experiment. Range: r ≥ 0. - The probability (p) of a trial resulting in success. Range: 0 ≤ p ≤ 1. - the probability mass at location . - - - - Computes the log probability mass (lnPMF) at k, i.e. ln(P(X = k)). - - The location in the domain where we want to evaluate the log probability mass function. - The number of successes (r) required to stop the experiment. Range: r ≥ 0. - The probability (p) of a trial resulting in success. Range: 0 ≤ p ≤ 1. - the log probability mass at location . - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - The number of successes (r) required to stop the experiment. Range: r ≥ 0. - The probability (p) of a trial resulting in success. Range: 0 ≤ p ≤ 1. - the cumulative distribution at location . - - - - - Samples a negative binomial distributed random variable. - - The random number generator to use. - The number of successes (r) required to stop the experiment. Range: r ≥ 0. - The probability (p) of a trial resulting in success. Range: 0 ≤ p ≤ 1. - a sample from the distribution. - - - - Samples a NegativeBinomial distributed random variable. - - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Samples an array of NegativeBinomial distributed random variables. - - a sequence of samples from the distribution. - - - - Samples a random variable. - - The random number generator to use. - The number of successes (r) required to stop the experiment. Range: r ≥ 0. - The probability (p) of a trial resulting in success. Range: 0 ≤ p ≤ 1. - - - - Samples a sequence of this random variable. - - The random number generator to use. - The number of successes (r) required to stop the experiment. Range: r ≥ 0. - The probability (p) of a trial resulting in success. Range: 0 ≤ p ≤ 1. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The number of successes (r) required to stop the experiment. Range: r ≥ 0. - The probability (p) of a trial resulting in success. Range: 0 ≤ p ≤ 1. - - - - Samples a random variable. - - The number of successes (r) required to stop the experiment. Range: r ≥ 0. - The probability (p) of a trial resulting in success. Range: 0 ≤ p ≤ 1. - - - - Samples a sequence of this random variable. - - The number of successes (r) required to stop the experiment. Range: r ≥ 0. - The probability (p) of a trial resulting in success. Range: 0 ≤ p ≤ 1. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - The number of successes (r) required to stop the experiment. Range: r ≥ 0. - The probability (p) of a trial resulting in success. Range: 0 ≤ p ≤ 1. - - - - Continuous Univariate Normal distribution, also known as Gaussian distribution. - For details about this distribution, see - Wikipedia - Normal distribution. - - - - - Initializes a new instance of the Normal class. This is a normal distribution with mean 0.0 - and standard deviation 1.0. The distribution will - be initialized with the default random number generator. - - - - - Initializes a new instance of the Normal class. This is a normal distribution with mean 0.0 - and standard deviation 1.0. The distribution will - be initialized with the default random number generator. - - The random number generator which is used to draw random samples. - - - - Initializes a new instance of the Normal class with a particular mean and standard deviation. The distribution will - be initialized with the default random number generator. - - The mean (μ) of the normal distribution. - The standard deviation (σ) of the normal distribution. Range: σ ≥ 0. - - - - Initializes a new instance of the Normal class with a particular mean and standard deviation. The distribution will - be initialized with the default random number generator. - - The mean (μ) of the normal distribution. - The standard deviation (σ) of the normal distribution. Range: σ ≥ 0. - The random number generator which is used to draw random samples. - - - - Constructs a normal distribution from a mean and standard deviation. - - The mean (μ) of the normal distribution. - The standard deviation (σ) of the normal distribution. Range: σ ≥ 0. - The random number generator which is used to draw random samples. Optional, can be null. - a normal distribution. - - - - Constructs a normal distribution from a mean and variance. - - The mean (μ) of the normal distribution. - The variance (σ^2) of the normal distribution. - The random number generator which is used to draw random samples. Optional, can be null. - A normal distribution. - - - - Constructs a normal distribution from a mean and precision. - - The mean (μ) of the normal distribution. - The precision of the normal distribution. - The random number generator which is used to draw random samples. Optional, can be null. - A normal distribution. - - - - Estimates the normal distribution parameters from sample data with maximum-likelihood. - - The samples to estimate the distribution parameters from. - The random number generator which is used to draw random samples. Optional, can be null. - A normal distribution. - MATLAB: normfit - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The mean (μ) of the normal distribution. - The standard deviation (σ) of the normal distribution. Range: σ ≥ 0. - - - - Gets the mean (μ) of the normal distribution. - - - - - Gets the standard deviation (σ) of the normal distribution. Range: σ ≥ 0. - - - - - Gets the variance of the normal distribution. - - - - - Gets the precision of the normal distribution. - - - - - Gets the random number generator which is used to draw random samples. - - - - - Gets the entropy of the normal distribution. - - - - - Gets the skewness of the normal distribution. - - - - - Gets the mode of the normal distribution. - - - - - Gets the median of the normal distribution. - - - - - Gets the minimum of the normal distribution. - - - - - Gets the maximum of the normal distribution. - - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location at which to compute the log density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - the inverse cumulative density at . - - - - - Generates a sample from the normal distribution using the Box-Muller algorithm. - - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Generates a sequence of samples from the normal distribution using the Box-Muller algorithm. - - a sequence of samples from the distribution. - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The mean (μ) of the normal distribution. - The standard deviation (σ) of the normal distribution. Range: σ ≥ 0. - The location at which to compute the density. - the density at . - - MATLAB: normpdf - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The mean (μ) of the normal distribution. - The standard deviation (σ) of the normal distribution. Range: σ ≥ 0. - The location at which to compute the density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - The mean (μ) of the normal distribution. - The standard deviation (σ) of the normal distribution. Range: σ ≥ 0. - the cumulative distribution at location . - - MATLAB: normcdf - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - The mean (μ) of the normal distribution. - The standard deviation (σ) of the normal distribution. Range: σ ≥ 0. - the inverse cumulative density at . - - MATLAB: norminv - - - - Generates a sample from the normal distribution using the Box-Muller algorithm. - - The random number generator to use. - The mean (μ) of the normal distribution. - The standard deviation (σ) of the normal distribution. Range: σ ≥ 0. - a sample from the distribution. - - - - Generates a sequence of samples from the normal distribution using the Box-Muller algorithm. - - The random number generator to use. - The mean (μ) of the normal distribution. - The standard deviation (σ) of the normal distribution. Range: σ ≥ 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The mean (μ) of the normal distribution. - The standard deviation (σ) of the normal distribution. Range: σ ≥ 0. - a sequence of samples from the distribution. - - - - Generates a sample from the normal distribution using the Box-Muller algorithm. - - The mean (μ) of the normal distribution. - The standard deviation (σ) of the normal distribution. Range: σ ≥ 0. - a sample from the distribution. - - - - Generates a sequence of samples from the normal distribution using the Box-Muller algorithm. - - The mean (μ) of the normal distribution. - The standard deviation (σ) of the normal distribution. Range: σ ≥ 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - The mean (μ) of the normal distribution. - The standard deviation (σ) of the normal distribution. Range: σ ≥ 0. - a sequence of samples from the distribution. - - - - This structure represents the type over which the distribution - is defined. - - - - - Initializes a new instance of the struct. - - The mean of the pair. - The precision of the pair. - - - - Gets or sets the mean of the pair. - - - - - Gets or sets the precision of the pair. - - - - - Multivariate Normal-Gamma Distribution. - The distribution is the conjugate prior distribution for the - distribution. It specifies a prior over the mean and precision of the distribution. - It is parameterized by four numbers: the mean location, the mean scale, the precision shape and the - precision inverse scale. - The distribution NG(mu, tau | mloc,mscale,psscale,pinvscale) = Normal(mu | mloc, 1/(mscale*tau)) * Gamma(tau | psscale,pinvscale). - The following degenerate cases are special: when the precision is known, - the precision shape will encode the value of the precision while the precision inverse scale is positive - infinity. When the mean is known, the mean location will encode the value of the mean while the scale - will be positive infinity. A completely degenerate NormalGamma distribution with known mean and precision is possible as well. - Wikipedia - Normal-Gamma distribution. - - - - - Initializes a new instance of the class. - - The location of the mean. - The scale of the mean. - The shape of the precision. - The inverse scale of the precision. - - - - Initializes a new instance of the class. - - The location of the mean. - The scale of the mean. - The shape of the precision. - The inverse scale of the precision. - The random number generator which is used to draw random samples. - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The location of the mean. - The scale of the mean. - The shape of the precision. - The inverse scale of the precision. - - - - Gets the location of the mean. - - - - - Gets the scale of the mean. - - - - - Gets the shape of the precision. - - - - - Gets the inverse scale of the precision. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Returns the marginal distribution for the mean of the NormalGamma distribution. - - the marginal distribution for the mean of the NormalGamma distribution. - - - - Returns the marginal distribution for the precision of the distribution. - - The marginal distribution for the precision of the distribution/ - - - - Gets the mean of the distribution. - - The mean of the distribution. - - - - Gets the variance of the distribution. - - The mean of the distribution. - - - - Evaluates the probability density function for a NormalGamma distribution. - - The mean/precision pair of the distribution - Density value - - - - Evaluates the probability density function for a NormalGamma distribution. - - The mean of the distribution - The precision of the distribution - Density value - - - - Evaluates the log probability density function for a NormalGamma distribution. - - The mean/precision pair of the distribution - The log of the density value - - - - Evaluates the log probability density function for a NormalGamma distribution. - - The mean of the distribution - The precision of the distribution - The log of the density value - - - - Generates a sample from the NormalGamma distribution. - - a sample from the distribution. - - - - Generates a sequence of samples from the NormalGamma distribution - - a sequence of samples from the distribution. - - - - Generates a sample from the NormalGamma distribution. - - The random number generator to use. - The location of the mean. - The scale of the mean. - The shape of the precision. - The inverse scale of the precision. - a sample from the distribution. - - - - Generates a sequence of samples from the NormalGamma distribution - - The random number generator to use. - The location of the mean. - The scale of the mean. - The shape of the precision. - The inverse scale of the precision. - a sequence of samples from the distribution. - - - - Continuous Univariate Pareto distribution. - The Pareto distribution is a power law probability distribution that coincides with social, - scientific, geophysical, actuarial, and many other types of observable phenomena. - For details about this distribution, see - Wikipedia - Pareto distribution. - - - - - Initializes a new instance of the class. - - The scale (xm) of the distribution. Range: xm > 0. - The shape (α) of the distribution. Range: α > 0. - If or are negative. - - - - Initializes a new instance of the class. - - The scale (xm) of the distribution. Range: xm > 0. - The shape (α) of the distribution. Range: α > 0. - The random number generator which is used to draw random samples. - If or are negative. - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The scale (xm) of the distribution. Range: xm > 0. - The shape (α) of the distribution. Range: α > 0. - - - - Gets the scale (xm) of the distribution. Range: xm > 0. - - - - - Gets the shape (α) of the distribution. Range: α > 0. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean of the distribution. - - - - - Gets the variance of the distribution. - - - - - Gets the standard deviation of the distribution. - - - - - Gets the entropy of the distribution. - - - - - Gets the skewness of the distribution. - - - - - Gets the mode of the distribution. - - - - - Gets the median of the distribution. - - - - - Gets the minimum of the distribution. - - - - - Gets the maximum of the distribution. - - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location at which to compute the log density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - the inverse cumulative density at . - - - - - Draws a random sample from the distribution. - - A random number from this distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Generates a sequence of samples from the Pareto distribution. - - a sequence of samples from the distribution. - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The scale (xm) of the distribution. Range: xm > 0. - The shape (α) of the distribution. Range: α > 0. - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The scale (xm) of the distribution. Range: xm > 0. - The shape (α) of the distribution. Range: α > 0. - The location at which to compute the density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - The scale (xm) of the distribution. Range: xm > 0. - The shape (α) of the distribution. Range: α > 0. - the cumulative distribution at location . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - The scale (xm) of the distribution. Range: xm > 0. - The shape (α) of the distribution. Range: α > 0. - the inverse cumulative density at . - - - - - Generates a sample from the distribution. - - The random number generator to use. - The scale (xm) of the distribution. Range: xm > 0. - The shape (α) of the distribution. Range: α > 0. - a sample from the distribution. - - - - Generates a sequence of samples from the distribution. - - The random number generator to use. - The scale (xm) of the distribution. Range: xm > 0. - The shape (α) of the distribution. Range: α > 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The scale (xm) of the distribution. Range: xm > 0. - The shape (α) of the distribution. Range: α > 0. - a sequence of samples from the distribution. - - - - Generates a sample from the distribution. - - The scale (xm) of the distribution. Range: xm > 0. - The shape (α) of the distribution. Range: α > 0. - a sample from the distribution. - - - - Generates a sequence of samples from the distribution. - - The scale (xm) of the distribution. Range: xm > 0. - The shape (α) of the distribution. Range: α > 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - The scale (xm) of the distribution. Range: xm > 0. - The shape (α) of the distribution. Range: α > 0. - a sequence of samples from the distribution. - - - - Discrete Univariate Poisson distribution. - - - Distribution is described at Wikipedia - Poisson distribution. - Knuth's method is used to generate Poisson distributed random variables. - f(x) = exp(-λ)*λ^x/x!; - - - - - Initializes a new instance of the class. - - The lambda (λ) parameter of the Poisson distribution. Range: λ > 0. - If is equal or less then 0.0. - - - - Initializes a new instance of the class. - - The lambda (λ) parameter of the Poisson distribution. Range: λ > 0. - The random number generator which is used to draw random samples. - If is equal or less then 0.0. - - - - Returns a that represents this instance. - - - A that represents this instance. - - - - - Tests whether the provided values are valid parameters for this distribution. - - The lambda (λ) parameter of the Poisson distribution. Range: λ > 0. - - - - Gets the Poisson distribution parameter λ. Range: λ > 0. - - - - - Gets the random number generator which is used to draw random samples. - - - - - Gets the mean of the distribution. - - - - - Gets the variance of the distribution. - - - - - Gets the standard deviation of the distribution. - - - - - Gets the entropy of the distribution. - - Approximation, see Wikipedia Poisson distribution - - - - Gets the skewness of the distribution. - - - - - Gets the smallest element in the domain of the distributions which can be represented by an integer. - - - - - Gets the largest element in the domain of the distributions which can be represented by an integer. - - - - - Gets the mode of the distribution. - - - - - Gets the median of the distribution. - - Approximation, see Wikipedia Poisson distribution - - - - Computes the probability mass (PMF) at k, i.e. P(X = k). - - The location in the domain where we want to evaluate the probability mass function. - the probability mass at location . - - - - Computes the log probability mass (lnPMF) at k, i.e. ln(P(X = k)). - - The location in the domain where we want to evaluate the log probability mass function. - the log probability mass at location . - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - Computes the probability mass (PMF) at k, i.e. P(X = k). - - The location in the domain where we want to evaluate the probability mass function. - The lambda (λ) parameter of the Poisson distribution. Range: λ > 0. - the probability mass at location . - - - - Computes the log probability mass (lnPMF) at k, i.e. ln(P(X = k)). - - The location in the domain where we want to evaluate the log probability mass function. - The lambda (λ) parameter of the Poisson distribution. Range: λ > 0. - the log probability mass at location . - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - The lambda (λ) parameter of the Poisson distribution. Range: λ > 0. - the cumulative distribution at location . - - - - - Generates one sample from the Poisson distribution. - - The random source to use. - The lambda (λ) parameter of the Poisson distribution. Range: λ > 0. - A random sample from the Poisson distribution. - - - - Generates one sample from the Poisson distribution by Knuth's method. - - The random source to use. - The lambda (λ) parameter of the Poisson distribution. Range: λ > 0. - A random sample from the Poisson distribution. - - - - Generates one sample from the Poisson distribution by "Rejection method PA". - - The random source to use. - The lambda (λ) parameter of the Poisson distribution. Range: λ > 0. - A random sample from the Poisson distribution. - "Rejection method PA" from "The Computer Generation of Poisson Random Variables" by A. C. Atkinson, - Journal of the Royal Statistical Society Series C (Applied Statistics) Vol. 28, No. 1. (1979) - The article is on pages 29-35. The algorithm given here is on page 32. - - - - Samples a Poisson distributed random variable. - - A sample from the Poisson distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Samples an array of Poisson distributed random variables. - - a sequence of successes in N trials. - - - - Samples a Poisson distributed random variable. - - The random number generator to use. - The lambda (λ) parameter of the Poisson distribution. Range: λ > 0. - A sample from the Poisson distribution. - - - - Samples a sequence of Poisson distributed random variables. - - The random number generator to use. - The lambda (λ) parameter of the Poisson distribution. Range: λ > 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The lambda (λ) parameter of the Poisson distribution. Range: λ > 0. - a sequence of samples from the distribution. - - - - Samples a Poisson distributed random variable. - - The lambda (λ) parameter of the Poisson distribution. Range: λ > 0. - A sample from the Poisson distribution. - - - - Samples a sequence of Poisson distributed random variables. - - The lambda (λ) parameter of the Poisson distribution. Range: λ > 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - The lambda (λ) parameter of the Poisson distribution. Range: λ > 0. - a sequence of samples from the distribution. - - - - Continuous Univariate Rayleigh distribution. - The Rayleigh distribution (pronounced /ˈreɪli/) is a continuous probability distribution. As an - example of how it arises, the wind speed will have a Rayleigh distribution if the components of - the two-dimensional wind velocity vector are uncorrelated and normally distributed with equal variance. - For details about this distribution, see - Wikipedia - Rayleigh distribution. - - - - - Initializes a new instance of the class. - - The scale (σ) of the distribution. Range: σ > 0. - If is negative. - - - - Initializes a new instance of the class. - - The scale (σ) of the distribution. Range: σ > 0. - The random number generator which is used to draw random samples. - If is negative. - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The scale (σ) of the distribution. Range: σ > 0. - - - - Gets the scale (σ) of the distribution. Range: σ > 0. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean of the distribution. - - - - - Gets the variance of the distribution. - - - - - Gets the standard deviation of the distribution. - - - - - Gets the entropy of the distribution. - - - - - Gets the skewness of the distribution. - - - - - Gets the mode of the distribution. - - - - - Gets the median of the distribution. - - - - - Gets the minimum of the distribution. - - - - - Gets the maximum of the distribution. - - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location at which to compute the log density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - the inverse cumulative density at . - - - - - Draws a random sample from the distribution. - - A random number from this distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Generates a sequence of samples from the Rayleigh distribution. - - a sequence of samples from the distribution. - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The scale (σ) of the distribution. Range: σ > 0. - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The scale (σ) of the distribution. Range: σ > 0. - The location at which to compute the density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - The scale (σ) of the distribution. Range: σ > 0. - the cumulative distribution at location . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - The scale (σ) of the distribution. Range: σ > 0. - the inverse cumulative density at . - - - - - Generates a sample from the distribution. - - The random number generator to use. - The scale (σ) of the distribution. Range: σ > 0. - a sample from the distribution. - - - - Generates a sequence of samples from the distribution. - - The random number generator to use. - The scale (σ) of the distribution. Range: σ > 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The scale (σ) of the distribution. Range: σ > 0. - a sequence of samples from the distribution. - - - - Generates a sample from the distribution. - - The scale (σ) of the distribution. Range: σ > 0. - a sample from the distribution. - - - - Generates a sequence of samples from the distribution. - - The scale (σ) of the distribution. Range: σ > 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - The scale (σ) of the distribution. Range: σ > 0. - a sequence of samples from the distribution. - - - - Continuous Univariate Skewed Generalized Error Distribution (SGED). - Implements the univariate Skewed Generalized Error Distribution. For details about this - distribution, see - - Wikipedia - Generalized Error Distribution. - It includes Laplace, Normal and Student-t distributions. - This is the distribution with q=Inf. - - This implementation is based on the R package dsgt and corresponding viginette, see - https://cran.r-project.org/web/packages/sgt/vignettes/sgt.pdf. Compared to that - implementation, the options for mean adjustment and variance adjustment are always true. - The location (μ) is the mean of the distribution. - The scale (σ) squared is the variance of the distribution. - - The distribution will use the by - default. Users can get/set the random number generator by using the - property. - The statistics classes will check all the incoming parameters - whether they are in the allowed range. - - - - Initializes a new instance of the SkewedGeneralizedError class. This is a generalized error distribution - with location=0.0, scale=1.0, skew=0.0 and p=2.0 (a standard normal distribution). - - - - - Initializes a new instance of the SkewedGeneralizedT class with a particular location, scale, skew - and kurtosis parameters. Different parameterizations result in different distributions. - - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The skew, 1 > λ > -1 - Parameter that controls kurtosis. Range: p > 0 - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The skew, 1 > λ > -1 - Parameter that controls kurtosis. Range: p > 0 - - - - Gets the location (μ) of the Skewed Generalized t-distribution. - - - - - Gets the scale (σ) of the Skewed Generalized t-distribution. Range: σ > 0. - - - - - Gets the skew (λ) of the Skewed Generalized t-distribution. Range: 1 > λ > -1. - - - - - Gets the parameter that controls the kurtosis of the distribution. Range: p > 0. - - - - - Generates a sample from the Skew Generalized Error distribution. - - The random number generator to use. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The skew, 1 > λ > -1 - Parameter that controls kurtosis. Range: p > 0 - a sample from the distribution. - - - - Generates a sequence of samples from the Skew Generalized Error distribution using inverse transform. - - The random number generator to use. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The skew, 1 > λ > -1 - Parameter that controls kurtosis. Range: p > 0 - a sequence of samples from the distribution. - - - - Fills an array with samples from the Skew Generalized Error distribution using inverse transform. - - The random number generator to use. - The array to fill with the samples. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The skew, 1 > λ > -1 - Parameter that controls kurtosis. Range: p > 0 - a sequence of samples from the distribution. - - - - Generates a sample from the Skew Generalized Error distribution. - - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The skew, 1 > λ > -1 - Parameter that controls kurtosis. Range: p > 0 - a sample from the distribution. - - - - Generates a sequence of samples from the Skew Generalized Error distribution using inverse transform. - - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The skew, 1 > λ > -1 - Parameter that controls kurtosis. Range: p > 0 - a sequence of samples from the distribution. - - - - Fills an array with samples from the Skew Generalized Error distribution using inverse transform. - - The array to fill with the samples. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The skew, 1 > λ > -1 - Parameter that controls kurtosis. Range: p > 0 - a sequence of samples from the distribution. - - - - Continuous Univariate Skewed Generalized T-distribution. - Implements the univariate Skewed Generalized t-distribution. For details about this - distribution, see - - Wikipedia - Skewed generalized t-distribution. - The skewed generalized t-distribution contains many different distributions within it - as special cases based on the parameterization chosen. - - This implementation is based on the R package dsgt and corresponding viginette, see - https://cran.r-project.org/web/packages/sgt/vignettes/sgt.pdf. Compared to that - implementation, the options for mean adjustment and variance adjustment are always true. - The location (μ) is the mean of the distribution. - The scale (σ) squared is the variance of the distribution. - - The distribution will use the by - default. Users can get/set the random number generator by using the - property. - The statistics classes will check all the incoming parameters - whether they are in the allowed range. - - - - Initializes a new instance of the SkewedGeneralizedT class. This is a skewed generalized t-distribution - with location=0.0, scale=1.0, skew=0.0, p=2.0 and q=Inf (a standard normal distribution). - - - - - Initializes a new instance of the SkewedGeneralizedT class with a particular location, scale, skew - and kurtosis parameters. Different parameterizations result in different distributions. - - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The skew, 1 > λ > -1 - First parameter that controls kurtosis. Range: p > 0 - Second parameter that controls kurtosis. Range: q > 0 - - - - Given a parameter set, returns the distribution that matches this parameterization. - - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The skew, 1 > λ > -1 - First parameter that controls kurtosis. Range: p > 0 - Second parameter that controls kurtosis. Range: q > 0 - Null if no known distribution matches the parameterization, else the distribution. - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The skew, 1 > λ > -1 - First parameter that controls kurtosis. Range: p > 0 - Second parameter that controls kurtosis. Range: q > 0 - - - - Gets the location (μ) of the Skewed Generalized t-distribution. - - - - - Gets the scale (σ) of the Skewed Generalized t-distribution. Range: σ > 0. - - - - - Gets the skew (λ) of the Skewed Generalized t-distribution. Range: 1 > λ > -1. - - - - - Gets the first parameter that controls the kurtosis of the distribution. Range: p > 0. - - - - - Gets the second parameter that controls the kurtosis of the distribution. Range: q > 0. - - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The skew, 1 > λ > -1 - First parameter that controls kurtosis. Range: p > 0 - Second parameter that controls kurtosis. Range: q > 0 - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The skew, 1 > λ > -1 - First parameter that controls kurtosis. Range: p > 0 - Second parameter that controls kurtosis. Range: q > 0 - The location at which to compute the density. - the density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The skew, 1 > λ > -1 - First parameter that controls kurtosis. Range: p > 0 - Second parameter that controls kurtosis. Range: q > 0 - the cumulative distribution at location . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The skew, 1 > λ > -1 - First parameter that controls kurtosis. Range: p > 0 - Second parameter that controls kurtosis. Range: q > 0 - the inverse cumulative density at . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - the inverse cumulative density at . - - - - - Generates a sample from the Skew Generalized t-distribution. - - The random number generator to use. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The skew, 1 > λ > -1 - First parameter that controls kurtosis. Range: p > 0 - Second parameter that controls kurtosis. Range: q > 0 - a sample from the distribution. - - - - Generates a sequence of samples from the Skew Generalized t-distribution using inverse transform. - - The random number generator to use. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The skew, 1 > λ > -1 - First parameter that controls kurtosis. Range: p > 0 - Second parameter that controls kurtosis. Range: q > 0 - a sequence of samples from the distribution. - - - - Fills an array with samples from the Skew Generalized t-distribution using inverse transform. - - The random number generator to use. - The array to fill with the samples. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The skew, 1 > λ > -1 - First parameter that controls kurtosis. Range: p > 0 - Second parameter that controls kurtosis. Range: q > 0 - a sequence of samples from the distribution. - - - - Generates a sample from the Skew Generalized t-distribution. - - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The skew, 1 > λ > -1 - First parameter that controls kurtosis. Range: p > 0 - Second parameter that controls kurtosis. Range: q > 0 - a sample from the distribution. - - - - Generates a sequence of samples from the Skew Generalized t-distribution using inverse transform. - - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The skew, 1 > λ > -1 - First parameter that controls kurtosis. Range: p > 0 - Second parameter that controls kurtosis. Range: q > 0 - a sequence of samples from the distribution. - - - - Fills an array with samples from the Skew Generalized t-distribution using inverse transform. - - The array to fill with the samples. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The skew, 1 > λ > -1 - First parameter that controls kurtosis. Range: p > 0 - Second parameter that controls kurtosis. Range: q > 0 - a sequence of samples from the distribution. - - - - Continuous Univariate Stable distribution. - A random variable is said to be stable (or to have a stable distribution) if it has - the property that a linear combination of two independent copies of the variable has - the same distribution, up to location and scale parameters. - For details about this distribution, see - Wikipedia - Stable distribution. - - - - - Initializes a new instance of the class. - - The stability (α) of the distribution. Range: 2 ≥ α > 0. - The skewness (β) of the distribution. Range: 1 ≥ β ≥ -1. - The scale (c) of the distribution. Range: c > 0. - The location (μ) of the distribution. - - - - Initializes a new instance of the class. - - The stability (α) of the distribution. Range: 2 ≥ α > 0. - The skewness (β) of the distribution. Range: 1 ≥ β ≥ -1. - The scale (c) of the distribution. Range: c > 0. - The location (μ) of the distribution. - The random number generator which is used to draw random samples. - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The stability (α) of the distribution. Range: 2 ≥ α > 0. - The skewness (β) of the distribution. Range: 1 ≥ β ≥ -1. - The scale (c) of the distribution. Range: c > 0. - The location (μ) of the distribution. - - - - Gets the stability (α) of the distribution. Range: 2 ≥ α > 0. - - - - - Gets The skewness (β) of the distribution. Range: 1 ≥ β ≥ -1. - - - - - Gets the scale (c) of the distribution. Range: c > 0. - - - - - Gets the location (μ) of the distribution. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean of the distribution. - - - - - Gets the variance of the distribution. - - - - - Gets the standard deviation of the distribution. - - - - - Gets he entropy of the distribution. - - Always throws a not supported exception. - - - - Gets the skewness of the distribution. - - Throws a not supported exception of Alpha != 2. - - - - Gets the mode of the distribution. - - Throws a not supported exception if Beta != 0. - - - - Gets the median of the distribution. - - Throws a not supported exception if Beta != 0. - - - - Gets the minimum of the distribution. - - - - - Gets the maximum of the distribution. - - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location at which to compute the density. - the density at . - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location at which to compute the log density. - the log density at . - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - Throws a not supported exception if Alpha != 2, (Alpha != 1 and Beta !=0), or (Alpha != 0.5 and Beta != 1) - - - - Samples the distribution. - - The random number generator to use. - The stability (α) of the distribution. Range: 2 ≥ α > 0. - The skewness (β) of the distribution. Range: 1 ≥ β ≥ -1. - The scale (c) of the distribution. Range: c > 0. - The location (μ) of the distribution. - a random number from the distribution. - - - - Draws a random sample from the distribution. - - A random number from this distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Generates a sequence of samples from the Stable distribution. - - a sequence of samples from the distribution. - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The stability (α) of the distribution. Range: 2 ≥ α > 0. - The skewness (β) of the distribution. Range: 1 ≥ β ≥ -1. - The scale (c) of the distribution. Range: c > 0. - The location (μ) of the distribution. - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The stability (α) of the distribution. Range: 2 ≥ α > 0. - The skewness (β) of the distribution. Range: 1 ≥ β ≥ -1. - The scale (c) of the distribution. Range: c > 0. - The location (μ) of the distribution. - The location at which to compute the density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - The stability (α) of the distribution. Range: 2 ≥ α > 0. - The skewness (β) of the distribution. Range: 1 ≥ β ≥ -1. - The scale (c) of the distribution. Range: c > 0. - The location (μ) of the distribution. - the cumulative distribution at location . - - - - - Generates a sample from the distribution. - - The random number generator to use. - The stability (α) of the distribution. Range: 2 ≥ α > 0. - The skewness (β) of the distribution. Range: 1 ≥ β ≥ -1. - The scale (c) of the distribution. Range: c > 0. - The location (μ) of the distribution. - a sample from the distribution. - - - - Generates a sequence of samples from the distribution. - - The random number generator to use. - The stability (α) of the distribution. Range: 2 ≥ α > 0. - The skewness (β) of the distribution. Range: 1 ≥ β ≥ -1. - The scale (c) of the distribution. Range: c > 0. - The location (μ) of the distribution. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The stability (α) of the distribution. Range: 2 ≥ α > 0. - The skewness (β) of the distribution. Range: 1 ≥ β ≥ -1. - The scale (c) of the distribution. Range: c > 0. - The location (μ) of the distribution. - a sequence of samples from the distribution. - - - - Generates a sample from the distribution. - - The stability (α) of the distribution. Range: 2 ≥ α > 0. - The skewness (β) of the distribution. Range: 1 ≥ β ≥ -1. - The scale (c) of the distribution. Range: c > 0. - The location (μ) of the distribution. - a sample from the distribution. - - - - Generates a sequence of samples from the distribution. - - The stability (α) of the distribution. Range: 2 ≥ α > 0. - The skewness (β) of the distribution. Range: 1 ≥ β ≥ -1. - The scale (c) of the distribution. Range: c > 0. - The location (μ) of the distribution. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - The stability (α) of the distribution. Range: 2 ≥ α > 0. - The skewness (β) of the distribution. Range: 1 ≥ β ≥ -1. - The scale (c) of the distribution. Range: c > 0. - The location (μ) of the distribution. - a sequence of samples from the distribution. - - - - Continuous Univariate Student's T-distribution. - Implements the univariate Student t-distribution. For details about this - distribution, see - - Wikipedia - Student's t-distribution. - - We use a slightly generalized version (compared to - Wikipedia) of the Student t-distribution. Namely, one which also - parameterizes the location and scale. See the book "Bayesian Data - Analysis" by Gelman et al. for more details. - The density of the Student t-distribution p(x|mu,scale,dof) = - Gamma((dof+1)/2) (1 + (x - mu)^2 / (scale * scale * dof))^(-(dof+1)/2) / - (Gamma(dof/2)*Sqrt(dof*pi*scale)). - The distribution will use the by - default. Users can get/set the random number generator by using the - property. - The statistics classes will check all the incoming parameters - whether they are in the allowed range. This might involve heavy - computation. Optionally, by setting Control.CheckDistributionParameters - to false, all parameter checks can be turned off. - - - - Initializes a new instance of the StudentT class. This is a Student t-distribution with location 0.0 - scale 1.0 and degrees of freedom 1. - - - - - Initializes a new instance of the StudentT class with a particular location, scale and degrees of - freedom. - - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The degrees of freedom (ν) for the distribution. Range: ν > 0. - - - - Initializes a new instance of the StudentT class with a particular location, scale and degrees of - freedom. - - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The degrees of freedom (ν) for the distribution. Range: ν > 0. - The random number generator which is used to draw random samples. - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The degrees of freedom (ν) for the distribution. Range: ν > 0. - - - - Gets the location (μ) of the Student t-distribution. - - - - - Gets the scale (σ) of the Student t-distribution. Range: σ > 0. - - - - - Gets the degrees of freedom (ν) of the Student t-distribution. Range: ν > 0. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean of the Student t-distribution. - - - - - Gets the variance of the Student t-distribution. - - - - - Gets the standard deviation of the Student t-distribution. - - - - - Gets the entropy of the Student t-distribution. - - - - - Gets the skewness of the Student t-distribution. - - - - - Gets the mode of the Student t-distribution. - - - - - Gets the median of the Student t-distribution. - - - - - Gets the minimum of the Student t-distribution. - - - - - Gets the maximum of the Student t-distribution. - - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location at which to compute the density. - the density at . - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location at which to compute the log density. - the log density at . - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - the inverse cumulative density at . - - WARNING: currently not an explicit implementation, hence slow and unreliable. - - - - Samples student-t distributed random variables. - - The algorithm is method 2 in section 5, chapter 9 - in L. Devroye's "Non-Uniform Random Variate Generation" - The random number generator to use. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The degrees of freedom (ν) for the distribution. Range: ν > 0. - a random number from the standard student-t distribution. - - - - Generates a sample from the Student t-distribution. - - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Generates a sequence of samples from the Student t-distribution. - - a sequence of samples from the distribution. - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The degrees of freedom (ν) for the distribution. Range: ν > 0. - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The degrees of freedom (ν) for the distribution. Range: ν > 0. - The location at which to compute the density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The degrees of freedom (ν) for the distribution. Range: ν > 0. - the cumulative distribution at location . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The degrees of freedom (ν) for the distribution. Range: ν > 0. - the inverse cumulative density at . - - WARNING: currently not an explicit implementation, hence slow and unreliable. - - - - Generates a sample from the Student t-distribution. - - The random number generator to use. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The degrees of freedom (ν) for the distribution. Range: ν > 0. - a sample from the distribution. - - - - Generates a sequence of samples from the Student t-distribution using the Box-Muller algorithm. - - The random number generator to use. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The degrees of freedom (ν) for the distribution. Range: ν > 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The degrees of freedom (ν) for the distribution. Range: ν > 0. - a sequence of samples from the distribution. - - - - Generates a sample from the Student t-distribution. - - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The degrees of freedom (ν) for the distribution. Range: ν > 0. - a sample from the distribution. - - - - Generates a sequence of samples from the Student t-distribution using the Box-Muller algorithm. - - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The degrees of freedom (ν) for the distribution. Range: ν > 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - The location (μ) of the distribution. - The scale (σ) of the distribution. Range: σ > 0. - The degrees of freedom (ν) for the distribution. Range: ν > 0. - a sequence of samples from the distribution. - - - - Triangular distribution. - For details, see Wikipedia - Triangular distribution. - - The distribution will use the by default. - Users can get/set the random number generator by using the property. - The statistics classes will check whether all the incoming parameters are in the allowed range. This might involve heavy computation. Optionally, by setting Control.CheckDistributionParameters - to false, all parameter checks can be turned off. - - - - Initializes a new instance of the Triangular class with the given lower bound, upper bound and mode. - - Lower bound. Range: lower ≤ mode ≤ upper - Upper bound. Range: lower ≤ mode ≤ upper - Mode (most frequent value). Range: lower ≤ mode ≤ upper - If the upper bound is smaller than the mode or if the mode is smaller than the lower bound. - - - - Initializes a new instance of the Triangular class with the given lower bound, upper bound and mode. - - Lower bound. Range: lower ≤ mode ≤ upper - Upper bound. Range: lower ≤ mode ≤ upper - Mode (most frequent value). Range: lower ≤ mode ≤ upper - The random number generator which is used to draw random samples. - If the upper bound is smaller than the mode or if the mode is smaller than the lower bound. - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - Lower bound. Range: lower ≤ mode ≤ upper - Upper bound. Range: lower ≤ mode ≤ upper - Mode (most frequent value). Range: lower ≤ mode ≤ upper - - - - Gets the lower bound of the distribution. - - - - - Gets the upper bound of the distribution. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean of the distribution. - - - - - Gets the variance of the distribution. - - - - - Gets the standard deviation of the distribution. - - - - - Gets the entropy of the distribution. - - - - - - Gets the skewness of the distribution. - - - - - Gets or sets the mode of the distribution. - - - - - Gets the median of the distribution. - - - - - - Gets the minimum of the distribution. - - - - - Gets the maximum of the distribution. - - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location at which to compute the log density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - the inverse cumulative density at . - - - - - Generates a sample from the Triangular distribution. - - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Generates a sequence of samples from the Triangular distribution. - - a sequence of samples from the distribution. - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - Lower bound. Range: lower ≤ mode ≤ upper - Upper bound. Range: lower ≤ mode ≤ upper - Mode (most frequent value). Range: lower ≤ mode ≤ upper - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - Lower bound. Range: lower ≤ mode ≤ upper - Upper bound. Range: lower ≤ mode ≤ upper - Mode (most frequent value). Range: lower ≤ mode ≤ upper - The location at which to compute the density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - Lower bound. Range: lower ≤ mode ≤ upper - Upper bound. Range: lower ≤ mode ≤ upper - Mode (most frequent value). Range: lower ≤ mode ≤ upper - the cumulative distribution at location . - - - - - Computes the inverse of the cumulative distribution function (InvCDF) for the distribution - at the given probability. This is also known as the quantile or percent point function. - - The location at which to compute the inverse cumulative density. - Lower bound. Range: lower ≤ mode ≤ upper - Upper bound. Range: lower ≤ mode ≤ upper - Mode (most frequent value). Range: lower ≤ mode ≤ upper - the inverse cumulative density at . - - - - - Generates a sample from the Triangular distribution. - - The random number generator to use. - Lower bound. Range: lower ≤ mode ≤ upper - Upper bound. Range: lower ≤ mode ≤ upper - Mode (most frequent value). Range: lower ≤ mode ≤ upper - a sample from the distribution. - - - - Generates a sequence of samples from the Triangular distribution. - - The random number generator to use. - Lower bound. Range: lower ≤ mode ≤ upper - Upper bound. Range: lower ≤ mode ≤ upper - Mode (most frequent value). Range: lower ≤ mode ≤ upper - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - Lower bound. Range: lower ≤ mode ≤ upper - Upper bound. Range: lower ≤ mode ≤ upper - Mode (most frequent value). Range: lower ≤ mode ≤ upper - a sequence of samples from the distribution. - - - - Generates a sample from the Triangular distribution. - - Lower bound. Range: lower ≤ mode ≤ upper - Upper bound. Range: lower ≤ mode ≤ upper - Mode (most frequent value). Range: lower ≤ mode ≤ upper - a sample from the distribution. - - - - Generates a sequence of samples from the Triangular distribution. - - Lower bound. Range: lower ≤ mode ≤ upper - Upper bound. Range: lower ≤ mode ≤ upper - Mode (most frequent value). Range: lower ≤ mode ≤ upper - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - Lower bound. Range: lower ≤ mode ≤ upper - Upper bound. Range: lower ≤ mode ≤ upper - Mode (most frequent value). Range: lower ≤ mode ≤ upper - a sequence of samples from the distribution. - - - - Initializes a new instance of the TruncatedPareto class. - - The scale (xm) of the distribution. Range: xm > 0. - The shape (α) of the distribution. Range: α > 0. - The truncation (T) of the distribution. Range: T > xm. - The random number generator which is used to draw random samples. - If or are non-positive or if T ≤ xm. - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The scale (xm) of the distribution. Range: xm > 0. - The shape (α) of the distribution. Range: α > 0. - The truncation (T) of the distribution. Range: T > xm. - - - - Gets the random number generator which is used to draw random samples. - - - - - Gets the scale (xm) of the distribution. Range: xm > 0. - - - - - Gets the shape (α) of the distribution. Range: α > 0. - - - - - Gets the truncation (T) of the distribution. Range: T > 0. - - - - - Gets the n-th raw moment of the distribution. - - The order (n) of the moment. Range: n ≥ 1. - the n-th moment of the distribution. - - - - Gets the mean of the truncated Pareto distribution. - - - - - Gets the variance of the truncated Pareto distribution. - - - - - Gets the standard deviation of the truncated Pareto distribution. - - - - - Gets the mode of the truncated Pareto distribution (not supported). - - - - - Gets the minimum of the truncated Pareto distribution. - - - - - Gets the maximum of the truncated Pareto distribution. - - - - - Gets the entropy of the truncated Pareto distribution (not supported). - - - - - Gets the skewness of the truncated Pareto distribution. - - - - - Gets the median of the truncated Pareto distribution. - - - - - Generates a sample from the truncated Pareto distribution. - - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - - - - Generates a sequence of samples from the truncated Pareto distribution. - - a sequence of samples from the distribution. - - - - Generates a sample from the truncated Pareto distribution. - - The random number generator to use. - The scale (xm) of the distribution. Range: xm > 0. - The shape (α) of the distribution. Range: α > 0. - The truncation (T) of the distribution. Range: T > xm. - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The scale (xm) of the distribution. Range: xm > 0. - The shape (α) of the distribution. Range: α > 0. - The truncation (T) of the distribution. Range: T > xm. - - - - Generates a sequence of samples from the truncated Pareto distribution. - - The random number generator to use. - The scale (xm) of the distribution. Range: xm > 0. - The shape (α) of the distribution. Range: α > 0. - The truncation (T) of the distribution. Range: T > xm. - a sequence of samples from the distribution. - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location at which to compute the log density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - - Computes the inverse cumulative distribution (CDF) of the distribution at p, i.e. solving for P(X ≤ x) = p. - - The location at which to compute the inverse cumulative distribution function. - the inverse cumulative distribution at location . - - - - Computes the inverse cumulative distribution (CDF) of the distribution at p, i.e. solving for P(X ≤ x) = p. - - The scale (xm) of the distribution. Range: xm > 0. - The shape (α) of the distribution. Range: α > 0. - The truncation (T) of the distribution. Range: T > xm. - The location at which to compute the inverse cumulative distribution function. - the inverse cumulative distribution at location . - - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The scale (xm) of the distribution. Range: xm > 0. - The shape (α) of the distribution. Range: α > 0. - The truncation (T) of the distribution. Range: T > xm. - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The scale (xm) of the distribution. Range: xm > 0. - The shape (α) of the distribution. Range: α > 0. - The truncation (T) of the distribution. Range: T > xm. - The location at which to compute the log density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The scale (xm) of the distribution. Range: xm > 0. - The shape (α) of the distribution. Range: α > 0. - The truncation (T) of the distribution. Range: T > xm. - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - - Continuous Univariate Weibull distribution. - For details about this distribution, see - Wikipedia - Weibull distribution. - - - The Weibull distribution is parametrized by a shape and scale parameter. - - - - - Reusable intermediate result 1 / (_scale ^ _shape) - - - By caching this parameter we can get slightly better numerics precision - in certain constellations without any additional computations. - - - - - Initializes a new instance of the Weibull class. - - The shape (k) of the Weibull distribution. Range: k > 0. - The scale (λ) of the Weibull distribution. Range: λ > 0. - - - - Initializes a new instance of the Weibull class. - - The shape (k) of the Weibull distribution. Range: k > 0. - The scale (λ) of the Weibull distribution. Range: λ > 0. - The random number generator which is used to draw random samples. - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The shape (k) of the Weibull distribution. Range: k > 0. - The scale (λ) of the Weibull distribution. Range: λ > 0. - - - - Gets the shape (k) of the Weibull distribution. Range: k > 0. - - - - - Gets the scale (λ) of the Weibull distribution. Range: λ > 0. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean of the Weibull distribution. - - - - - Gets the variance of the Weibull distribution. - - - - - Gets the standard deviation of the Weibull distribution. - - - - - Gets the entropy of the Weibull distribution. - - - - - Gets the skewness of the Weibull distribution. - - - - - Gets the mode of the Weibull distribution. - - - - - Gets the median of the Weibull distribution. - - - - - Gets the minimum of the Weibull distribution. - - - - - Gets the maximum of the Weibull distribution. - - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The location at which to compute the density. - the density at . - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The location at which to compute the log density. - the log density at . - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - Generates a sample from the Weibull distribution. - - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Generates a sequence of samples from the Weibull distribution. - - a sequence of samples from the distribution. - - - - Computes the probability density of the distribution (PDF) at x, i.e. ∂P(X ≤ x)/∂x. - - The shape (k) of the Weibull distribution. Range: k > 0. - The scale (λ) of the Weibull distribution. Range: λ > 0. - The location at which to compute the density. - the density at . - - - - - Computes the log probability density of the distribution (lnPDF) at x, i.e. ln(∂P(X ≤ x)/∂x). - - The shape (k) of the Weibull distribution. Range: k > 0. - The scale (λ) of the Weibull distribution. Range: λ > 0. - The location at which to compute the density. - the log density at . - - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - The shape (k) of the Weibull distribution. Range: k > 0. - The scale (λ) of the Weibull distribution. Range: λ > 0. - the cumulative distribution at location . - - - - - Implemented according to: Parameter estimation of the Weibull probability distribution, 1994, Hongzhu Qiao, Chris P. Tsokos - - - - Returns a Weibull distribution. - - - - Generates a sample from the Weibull distribution. - - The random number generator to use. - The shape (k) of the Weibull distribution. Range: k > 0. - The scale (λ) of the Weibull distribution. Range: λ > 0. - a sample from the distribution. - - - - Generates a sequence of samples from the Weibull distribution. - - The random number generator to use. - The shape (k) of the Weibull distribution. Range: k > 0. - The scale (λ) of the Weibull distribution. Range: λ > 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The shape (k) of the Weibull distribution. Range: k > 0. - The scale (λ) of the Weibull distribution. Range: λ > 0. - a sequence of samples from the distribution. - - - - Generates a sample from the Weibull distribution. - - The shape (k) of the Weibull distribution. Range: k > 0. - The scale (λ) of the Weibull distribution. Range: λ > 0. - a sample from the distribution. - - - - Generates a sequence of samples from the Weibull distribution. - - The shape (k) of the Weibull distribution. Range: k > 0. - The scale (λ) of the Weibull distribution. Range: λ > 0. - a sequence of samples from the distribution. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - The shape (k) of the Weibull distribution. Range: k > 0. - The scale (λ) of the Weibull distribution. Range: λ > 0. - a sequence of samples from the distribution. - - - - Multivariate Wishart distribution. This distribution is - parameterized by the degrees of freedom nu and the scale matrix S. The Wishart distribution - is the conjugate prior for the precision (inverse covariance) matrix of the multivariate - normal distribution. - Wikipedia - Wishart distribution. - - - - - The degrees of freedom for the Wishart distribution. - - - - - The scale matrix for the Wishart distribution. - - - - - Caches the Cholesky factorization of the scale matrix. - - - - - Initializes a new instance of the class. - - The degrees of freedom (n) for the Wishart distribution. - The scale matrix (V) for the Wishart distribution. - - - - Initializes a new instance of the class. - - The degrees of freedom (n) for the Wishart distribution. - The scale matrix (V) for the Wishart distribution. - The random number generator which is used to draw random samples. - - - - Tests whether the provided values are valid parameters for this distribution. - - The degrees of freedom (n) for the Wishart distribution. - The scale matrix (V) for the Wishart distribution. - - - - Gets or sets the degrees of freedom (n) for the Wishart distribution. - - - - - Gets or sets the scale matrix (V) for the Wishart distribution. - - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean of the distribution. - - The mean of the distribution. - - - - Gets the mode of the distribution. - - The mode of the distribution. - - - - Gets the variance of the distribution. - - The variance of the distribution. - - - - Evaluates the probability density function for the Wishart distribution. - - The matrix at which to evaluate the density at. - If the argument does not have the same dimensions as the scale matrix. - the density at . - - - - Samples a Wishart distributed random variable using the method - Algorithm AS 53: Wishart Variate Generator - W. B. Smith and R. R. Hocking - Applied Statistics, Vol. 21, No. 3 (1972), pp. 341-345 - - A random number from this distribution. - - - - Samples a Wishart distributed random variable using the method - Algorithm AS 53: Wishart Variate Generator - W. B. Smith and R. R. Hocking - Applied Statistics, Vol. 21, No. 3 (1972), pp. 341-345 - - The random number generator to use. - The degrees of freedom (n) for the Wishart distribution. - The scale matrix (V) for the Wishart distribution. - a sequence of samples from the distribution. - - - - Samples the distribution. - - The random number generator to use. - The degrees of freedom (n) for the Wishart distribution. - The scale matrix (V) for the Wishart distribution. - The cholesky decomposition to use. - a random number from the distribution. - - - - Discrete Univariate Zipf distribution. - Zipf's law, an empirical law formulated using mathematical statistics, refers to the fact - that many types of data studied in the physical and social sciences can be approximated with - a Zipfian distribution, one of a family of related discrete power law probability distributions. - For details about this distribution, see - Wikipedia - Zipf distribution. - - - - - The s parameter of the distribution. - - - - - The n parameter of the distribution. - - - - - Initializes a new instance of the class. - - The s parameter of the distribution. - The n parameter of the distribution. - - - - Initializes a new instance of the class. - - The s parameter of the distribution. - The n parameter of the distribution. - The random number generator which is used to draw random samples. - - - - A string representation of the distribution. - - a string representation of the distribution. - - - - Tests whether the provided values are valid parameters for this distribution. - - The s parameter of the distribution. - The n parameter of the distribution. - - - - Gets or sets the s parameter of the distribution. - - - - - Gets or sets the n parameter of the distribution. - - - - - Gets or sets the random number generator which is used to draw random samples. - - - - - Gets the mean of the distribution. - - - - - Gets the variance of the distribution. - - - - - Gets the standard deviation of the distribution. - - - - - Gets the entropy of the distribution. - - - - - Gets the skewness of the distribution. - - - - - Gets the mode of the distribution. - - - - - Gets the median of the distribution. - - - - - Gets the smallest element in the domain of the distributions which can be represented by an integer. - - - - - Gets the largest element in the domain of the distributions which can be represented by an integer. - - - - - Computes the probability mass (PMF) at k, i.e. P(X = k). - - The location in the domain where we want to evaluate the probability mass function. - the probability mass at location . - - - - Computes the log probability mass (lnPMF) at k, i.e. ln(P(X = k)). - - The location in the domain where we want to evaluate the log probability mass function. - the log probability mass at location . - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - the cumulative distribution at location . - - - - Computes the probability mass (PMF) at k, i.e. P(X = k). - - The location in the domain where we want to evaluate the probability mass function. - The s parameter of the distribution. - The n parameter of the distribution. - the probability mass at location . - - - - Computes the log probability mass (lnPMF) at k, i.e. ln(P(X = k)). - - The location in the domain where we want to evaluate the log probability mass function. - The s parameter of the distribution. - The n parameter of the distribution. - the log probability mass at location . - - - - Computes the cumulative distribution (CDF) of the distribution at x, i.e. P(X ≤ x). - - The location at which to compute the cumulative distribution function. - The s parameter of the distribution. - The n parameter of the distribution. - the cumulative distribution at location . - - - - - Generates a sample from the Zipf distribution without doing parameter checking. - - The random number generator to use. - The s parameter of the distribution. - The n parameter of the distribution. - a random number from the Zipf distribution. - - - - Draws a random sample from the distribution. - - a sample from the distribution. - - - - Fills an array with samples generated from the distribution. - - - - - Samples an array of zipf distributed random variables. - - a sequence of samples from the distribution. - - - - Samples a random variable. - - The random number generator to use. - The s parameter of the distribution. - The n parameter of the distribution. - - - - Samples a sequence of this random variable. - - The random number generator to use. - The s parameter of the distribution. - The n parameter of the distribution. - - - - Fills an array with samples generated from the distribution. - - The random number generator to use. - The array to fill with the samples. - The s parameter of the distribution. - The n parameter of the distribution. - - - - Samples a random variable. - - The s parameter of the distribution. - The n parameter of the distribution. - - - - Samples a sequence of this random variable. - - The s parameter of the distribution. - The n parameter of the distribution. - - - - Fills an array with samples generated from the distribution. - - The array to fill with the samples. - The s parameter of the distribution. - The n parameter of the distribution. - - - - Integer number theory functions. - - - - - Canonical Modulus. The result has the sign of the divisor. - - - - - Canonical Modulus. The result has the sign of the divisor. - - - - - Canonical Modulus. The result has the sign of the divisor. - - - - - Canonical Modulus. The result has the sign of the divisor. - - - - - Canonical Modulus. The result has the sign of the divisor. - - - - - Remainder (% operator). The result has the sign of the dividend. - - - - - Remainder (% operator). The result has the sign of the dividend. - - - - - Remainder (% operator). The result has the sign of the dividend. - - - - - Remainder (% operator). The result has the sign of the dividend. - - - - - Remainder (% operator). The result has the sign of the dividend. - - - - - Find out whether the provided 32 bit integer is an even number. - - The number to very whether it's even. - True if and only if it is an even number. - - - - Find out whether the provided 64 bit integer is an even number. - - The number to very whether it's even. - True if and only if it is an even number. - - - - Find out whether the provided 32 bit integer is an odd number. - - The number to very whether it's odd. - True if and only if it is an odd number. - - - - Find out whether the provided 64 bit integer is an odd number. - - The number to very whether it's odd. - True if and only if it is an odd number. - - - - Find out whether the provided 32 bit integer is a perfect power of two. - - The number to very whether it's a power of two. - True if and only if it is a power of two. - - - - Find out whether the provided 64 bit integer is a perfect power of two. - - The number to very whether it's a power of two. - True if and only if it is a power of two. - - - - Find out whether the provided 32 bit integer is a perfect square, i.e. a square of an integer. - - The number to very whether it's a perfect square. - True if and only if it is a perfect square. - - - - Find out whether the provided 64 bit integer is a perfect square, i.e. a square of an integer. - - The number to very whether it's a perfect square. - True if and only if it is a perfect square. - - - - Raises 2 to the provided integer exponent (0 <= exponent < 31). - - The exponent to raise 2 up to. - 2 ^ exponent. - - - - - Raises 2 to the provided integer exponent (0 <= exponent < 63). - - The exponent to raise 2 up to. - 2 ^ exponent. - - - - - Evaluate the binary logarithm of an integer number. - - Two-step method using a De Bruijn-like sequence table lookup. - - - - Find the closest perfect power of two that is larger or equal to the provided - 32 bit integer. - - The number of which to find the closest upper power of two. - A power of two. - - - - - Find the closest perfect power of two that is larger or equal to the provided - 64 bit integer. - - The number of which to find the closest upper power of two. - A power of two. - - - - - Returns the greatest common divisor (gcd) of two integers using Euclid's algorithm. - - First Integer: a. - Second Integer: b. - Greatest common divisor gcd(a,b) - - - - Returns the greatest common divisor (gcd) of a set of integers using Euclid's - algorithm. - - List of Integers. - Greatest common divisor gcd(list of integers) - - - - Returns the greatest common divisor (gcd) of a set of integers using Euclid's algorithm. - - List of Integers. - Greatest common divisor gcd(list of integers) - - - - Computes the extended greatest common divisor, such that a*x + b*y = gcd(a,b). - - First Integer: a. - Second Integer: b. - Resulting x, such that a*x + b*y = gcd(a,b). - Resulting y, such that a*x + b*y = gcd(a,b) - Greatest common divisor gcd(a,b) - - - long x,y,d; - d = Fn.GreatestCommonDivisor(45,18,out x, out y); - -> d == 9 && x == 1 && y == -2 - - The gcd of 45 and 18 is 9: 18 = 2*9, 45 = 5*9. 9 = 1*45 -2*18, therefore x=1 and y=-2. - - - - - Returns the least common multiple (lcm) of two integers using Euclid's algorithm. - - First Integer: a. - Second Integer: b. - Least common multiple lcm(a,b) - - - - Returns the least common multiple (lcm) of a set of integers using Euclid's algorithm. - - List of Integers. - Least common multiple lcm(list of integers) - - - - Returns the least common multiple (lcm) of a set of integers using Euclid's algorithm. - - List of Integers. - Least common multiple lcm(list of integers) - - - - Returns the greatest common divisor (gcd) of two big integers. - - First Integer: a. - Second Integer: b. - Greatest common divisor gcd(a,b) - - - - Returns the greatest common divisor (gcd) of a set of big integers. - - List of Integers. - Greatest common divisor gcd(list of integers) - - - - Returns the greatest common divisor (gcd) of a set of big integers. - - List of Integers. - Greatest common divisor gcd(list of integers) - - - - Computes the extended greatest common divisor, such that a*x + b*y = gcd(a,b). - - First Integer: a. - Second Integer: b. - Resulting x, such that a*x + b*y = gcd(a,b). - Resulting y, such that a*x + b*y = gcd(a,b) - Greatest common divisor gcd(a,b) - - - long x,y,d; - d = Fn.GreatestCommonDivisor(45,18,out x, out y); - -> d == 9 && x == 1 && y == -2 - - The gcd of 45 and 18 is 9: 18 = 2*9, 45 = 5*9. 9 = 1*45 -2*18, therefore x=1 and y=-2. - - - - - Returns the least common multiple (lcm) of two big integers. - - First Integer: a. - Second Integer: b. - Least common multiple lcm(a,b) - - - - Returns the least common multiple (lcm) of a set of big integers. - - List of Integers. - Least common multiple lcm(list of integers) - - - - Returns the least common multiple (lcm) of a set of big integers. - - List of Integers. - Least common multiple lcm(list of integers) - - - - Collection of functions equivalent to those provided by Microsoft Excel - but backed instead by Math.NET Numerics. - We do not recommend to use them except in an intermediate phase when - porting over solutions previously implemented in Excel. - - - - - An algorithm failed to converge. - - - - - An algorithm failed to converge due to a numerical breakdown. - - - - - An error occurred calling native provider function. - - - - - An error occurred calling native provider function. - - - - - Native provider was unable to allocate sufficient memory. - - - - - Native provider failed LU inversion do to a singular U matrix. - - - - - Compound Monthly Return or Geometric Return or Annualized Return - - - - - Average Gain or Gain Mean - This is a simple average (arithmetic mean) of the periods with a gain. It is calculated by summing the returns for gain periods (return 0) - and then dividing the total by the number of gain periods. - - http://www.offshore-library.com/kb/statistics.php - - - - Average Loss or LossMean - This is a simple average (arithmetic mean) of the periods with a loss. It is calculated by summing the returns for loss periods (return < 0) - and then dividing the total by the number of loss periods. - - http://www.offshore-library.com/kb/statistics.php - - - - Calculation is similar to Standard Deviation , except it calculates an average (mean) return only for periods with a gain - and measures the variation of only the gain periods around the gain mean. Measures the volatility of upside performance. - © Copyright 1996, 1999 Gary L.Gastineau. First Edition. © 1992 Swiss Bank Corporation. - - - - - Similar to standard deviation, except this statistic calculates an average (mean) return for only the periods with a loss and then - measures the variation of only the losing periods around this loss mean. This statistic measures the volatility of downside performance. - - http://www.offshore-library.com/kb/statistics.php - - - - This measure is similar to the loss standard deviation except the downside deviation - considers only returns that fall below a defined minimum acceptable return (MAR) rather than the arithmetic mean. - For example, if the MAR is 7%, the downside deviation would measure the variation of each period that falls below - 7%. (The loss standard deviation, on the other hand, would take only losing periods, calculate an average return for - the losing periods, and then measure the variation between each losing return and the losing return average). - - - - - A measure of volatility in returns below the mean. It's similar to standard deviation, but it only - looks at periods where the investment return was less than average return. - - - - - Measures a fund’s average gain in a gain period divided by the fund’s average loss in a losing - period. Periods can be monthly or quarterly depending on the data frequency. - - - - - Find value x that minimizes the scalar function f(x), constrained within bounds, using the Golden Section algorithm. - For more options and diagnostics consider to use directly. - - - - - Find vector x that minimizes the function f(x) using the Nelder-Mead Simplex algorithm. - For more options and diagnostics consider to use directly. - - - - - Find vector x that minimizes the function f(x) using the Nelder-Mead Simplex algorithm. - For more options and diagnostics consider to use directly. - - - - - Find vector x that minimizes the function f(x) using the Nelder-Mead Simplex algorithm. - For more options and diagnostics consider to use directly. - - - - - Find vector x that minimizes the function f(x) using the Nelder-Mead Simplex algorithm. - For more options and diagnostics consider to use directly. - - - - - Find vector x that minimizes the function f(x) using the Nelder-Mead Simplex algorithm. - For more options and diagnostics consider to use directly. - - - - - Find vector x that minimizes the function f(x) using the Nelder-Mead Simplex algorithm. - For more options and diagnostics consider to use directly. - - - - - Find vector x that minimizes the function f(x), constrained within bounds, using the Broyden–Fletcher–Goldfarb–Shanno Bounded (BFGS-B) algorithm. - The missing gradient is evaluated numerically (forward difference). - For more options and diagnostics consider to use directly. - - - - - Find vector x that minimizes the function f(x) using the Broyden–Fletcher–Goldfarb–Shanno (BFGS) algorithm. - For more options and diagnostics consider to use directly. - An alternative routine using conjugate gradients (CG) is available in . - - - - - Find vector x that minimizes the function f(x) using the Broyden–Fletcher–Goldfarb–Shanno (BFGS) algorithm. - For more options and diagnostics consider to use directly. - An alternative routine using conjugate gradients (CG) is available in . - - - - - Find vector x that minimizes the function f(x), constrained within bounds, using the Broyden–Fletcher–Goldfarb–Shanno Bounded (BFGS-B) algorithm. - For more options and diagnostics consider to use directly. - - - - - Find vector x that minimizes the function f(x), constrained within bounds, using the Broyden–Fletcher–Goldfarb–Shanno Bounded (BFGS-B) algorithm. - For more options and diagnostics consider to use directly. - - - - - Find vector x that minimizes the function f(x) using the Newton algorithm. - For more options and diagnostics consider to use directly. - - - - - Find vector x that minimizes the function f(x) using the Newton algorithm. - For more options and diagnostics consider to use directly. - - - - Find a solution of the equation f(x)=0. - The function to find roots from. - The low value of the range where the root is supposed to be. - The high value of the range where the root is supposed to be. - Desired accuracy. The root will be refined until the accuracy or the maximum number of iterations is reached. Example: 1e-14. - Maximum number of iterations. Example: 100. - - - Find a solution of the equation f(x)=0. - The function to find roots from. - The first derivative of the function to find roots from. - The low value of the range where the root is supposed to be. - The high value of the range where the root is supposed to be. - Desired accuracy. The root will be refined until the accuracy or the maximum number of iterations is reached. Example: 1e-14. - Maximum number of iterations. Example: 100. - - - - Find both complex roots of the quadratic equation c + b*x + a*x^2 = 0. - Note the special coefficient order ascending by exponent (consistent with polynomials). - - - - - Find all three complex roots of the cubic equation d + c*x + b*x^2 + a*x^3 = 0. - Note the special coefficient order ascending by exponent (consistent with polynomials). - - - - - Find all roots of a polynomial by calculating the characteristic polynomial of the companion matrix - - The coefficients of the polynomial in ascending order, e.g. new double[] {5, 0, 2} = "5 + 0 x^1 + 2 x^2" - The roots of the polynomial - - - - Find all roots of a polynomial by calculating the characteristic polynomial of the companion matrix - - The polynomial. - The roots of the polynomial - - - - Find all roots of the Chebychev polynomial of the first kind. - - The polynomial order and therefore the number of roots. - The real domain interval begin where to start sampling. - The real domain interval end where to stop sampling. - Samples in [a,b] at (b+a)/2+(b-1)/2*cos(pi*(2i-1)/(2n)) - - - - Find all roots of the Chebychev polynomial of the second kind. - - The polynomial order and therefore the number of roots. - The real domain interval begin where to start sampling. - The real domain interval end where to stop sampling. - Samples in [a,b] at (b+a)/2+(b-1)/2*cos(pi*i/(n-1)) - - - - Least-Squares Curve Fitting Routines - - - - - Least-Squares fitting the points (x,y) to a line y : x -> a+b*x, - returning its best fitting parameters as (a, b) tuple, - where a is the intercept and b the slope. - - - - - Least-Squares fitting the points (x,y) to a line y : x -> a+b*x, - returning a function y' for the best fitting line. - - - - - Least-Squares fitting the points (x,y) to a line through origin y : x -> b*x, - returning its best fitting parameter b, - where the intercept is zero and b the slope. - - - - - Least-Squares fitting the points (x,y) to a line through origin y : x -> b*x, - returning a function y' for the best fitting line. - - - - - Least-Squares fitting the points (x,y) to an exponential y : x -> a*exp(r*x), - returning its best fitting parameters as (a, r) tuple. - - - - - Least-Squares fitting the points (x,y) to an exponential y : x -> a*exp(r*x), - returning a function y' for the best fitting line. - - - - - Least-Squares fitting the points (x,y) to a logarithm y : x -> a + b*ln(x), - returning its best fitting parameters as (a, b) tuple. - - - - - Least-Squares fitting the points (x,y) to a logarithm y : x -> a + b*ln(x), - returning a function y' for the best fitting line. - - - - - Least-Squares fitting the points (x,y) to a power y : x -> a*x^b, - returning its best fitting parameters as (a, b) tuple. - - - - - Least-Squares fitting the points (x,y) to a power y : x -> a*x^b, - returning a function y' for the best fitting line. - - - - - Least-Squares fitting the points (x,y) to a k-order polynomial y : x -> p0 + p1*x + p2*x^2 + ... + pk*x^k, - returning its best fitting parameters as [p0, p1, p2, ..., pk] array, compatible with Polynomial.Evaluate. - A polynomial with order/degree k has (k+1) coefficients and thus requires at least (k+1) samples. - - - - - Least-Squares fitting the points (x,y) to a k-order polynomial y : x -> p0 + p1*x + p2*x^2 + ... + pk*x^k, - returning a function y' for the best fitting polynomial. - A polynomial with order/degree k has (k+1) coefficients and thus requires at least (k+1) samples. - - - - - Weighted Least-Squares fitting the points (x,y) and weights w to a k-order polynomial y : x -> p0 + p1*x + p2*x^2 + ... + pk*x^k, - returning its best fitting parameters as [p0, p1, p2, ..., pk] array, compatible with Polynomial.Evaluate. - A polynomial with order/degree k has (k+1) coefficients and thus requires at least (k+1) samples. - - - - - Least-Squares fitting the points (x,y) to an arbitrary linear combination y : x -> p0*f0(x) + p1*f1(x) + ... + pk*fk(x), - returning its best fitting parameters as [p0, p1, p2, ..., pk] array. - - - - - Least-Squares fitting the points (x,y) to an arbitrary linear combination y : x -> p0*f0(x) + p1*f1(x) + ... + pk*fk(x), - returning a function y' for the best fitting combination. - - - - - Least-Squares fitting the points (x,y) to an arbitrary linear combination y : x -> p0*f0(x) + p1*f1(x) + ... + pk*fk(x), - returning its best fitting parameters as [p0, p1, p2, ..., pk] array. - - - - - Least-Squares fitting the points (x,y) to an arbitrary linear combination y : x -> p0*f0(x) + p1*f1(x) + ... + pk*fk(x), - returning a function y' for the best fitting combination. - - - - - Least-Squares fitting the points (X,y) = ((x0,x1,..,xk),y) to a linear surface y : X -> p0*x0 + p1*x1 + ... + pk*xk, - returning its best fitting parameters as [p0, p1, p2, ..., pk] array. - If an intercept is added, its coefficient will be prepended to the resulting parameters. - - - - - Least-Squares fitting the points (X,y) = ((x0,x1,..,xk),y) to a linear surface y : X -> p0*x0 + p1*x1 + ... + pk*xk, - returning a function y' for the best fitting combination. - If an intercept is added, its coefficient will be prepended to the resulting parameters. - - - - - Weighted Least-Squares fitting the points (X,y) = ((x0,x1,..,xk),y) and weights w to a linear surface y : X -> p0*x0 + p1*x1 + ... + pk*xk, - returning its best fitting parameters as [p0, p1, p2, ..., pk] array. - - - - - Least-Squares fitting the points (X,y) = ((x0,x1,..,xk),y) to an arbitrary linear combination y : X -> p0*f0(x) + p1*f1(x) + ... + pk*fk(x), - returning its best fitting parameters as [p0, p1, p2, ..., pk] array. - - - - - Least-Squares fitting the points (X,y) = ((x0,x1,..,xk),y) to an arbitrary linear combination y : X -> p0*f0(x) + p1*f1(x) + ... + pk*fk(x), - returning a function y' for the best fitting combination. - - - - - Least-Squares fitting the points (X,y) = ((x0,x1,..,xk),y) to an arbitrary linear combination y : X -> p0*f0(x) + p1*f1(x) + ... + pk*fk(x), - returning its best fitting parameters as [p0, p1, p2, ..., pk] array. - - - - - Least-Squares fitting the points (X,y) = ((x0,x1,..,xk),y) to an arbitrary linear combination y : X -> p0*f0(x) + p1*f1(x) + ... + pk*fk(x), - returning a function y' for the best fitting combination. - - - - - Least-Squares fitting the points (T,y) = (T,y) to an arbitrary linear combination y : X -> p0*f0(T) + p1*f1(T) + ... + pk*fk(T), - returning its best fitting parameters as [p0, p1, p2, ..., pk] array. - - - - - Least-Squares fitting the points (T,y) = (T,y) to an arbitrary linear combination y : X -> p0*f0(T) + p1*f1(T) + ... + pk*fk(T), - returning a function y' for the best fitting combination. - - - - - Least-Squares fitting the points (T,y) = (T,y) to an arbitrary linear combination y : X -> p0*f0(T) + p1*f1(T) + ... + pk*fk(T), - returning its best fitting parameters as [p0, p1, p2, ..., pk] array. - - - - - Least-Squares fitting the points (T,y) = (T,y) to an arbitrary linear combination y : X -> p0*f0(T) + p1*f1(T) + ... + pk*fk(T), - returning a function y' for the best fitting combination. - - - - - Non-linear least-squares fitting the points (x,y) to an arbitrary function y : x -> f(p, x), - returning its best fitting parameter p. - - - - - Non-linear least-squares fitting the points (x,y) to an arbitrary function y : x -> f(p0, p1, x), - returning its best fitting parameter p0 and p1. - - - - - Non-linear least-squares fitting the points (x,y) to an arbitrary function y : x -> f(p0, p1, p2, x), - returning its best fitting parameter p0, p1 and p2. - - - - - Non-linear least-squares fitting the points (x,y) to an arbitrary function y : x -> f(p0, p1, p2, p3, x), - returning its best fitting parameter p0, p1, p2 and p3. - - - - - Non-linear least-squares fitting the points (x,y) to an arbitrary function y : x -> f(p0, p1, p2, p3, p4, x), - returning its best fitting parameter p0, p1, p2, p3 and p4. - - - - - Non-linear least-squares fitting the points (x,y) to an arbitrary function y : x -> f(p, x), - returning a function y' for the best fitting curve. - - - - - Non-linear least-squares fitting the points (x,y) to an arbitrary function y : x -> f(p0, p1, x), - returning a function y' for the best fitting curve. - - - - - Non-linear least-squares fitting the points (x,y) to an arbitrary function y : x -> f(p0, p1, p2, x), - returning a function y' for the best fitting curve. - - - - - Non-linear least-squares fitting the points (x,y) to an arbitrary function y : x -> f(p0, p1, p2, p3, x), - returning a function y' for the best fitting curve. - - - - - Non-linear least-squares fitting the points (x,y) to an arbitrary function y : x -> f(p0, p1, p2, p3, p4, x), - returning a function y' for the best fitting curve. - - - - - Generate samples by sampling a function at the provided points. - - - - - Generate a sample sequence by sampling a function at the provided point sequence. - - - - - Generate samples by sampling a function at the provided points. - - - - - Generate a sample sequence by sampling a function at the provided point sequence. - - - - - Generate a linearly spaced sample vector of the given length between the specified values (inclusive). - Equivalent to MATLAB linspace but with the length as first instead of last argument. - - - - - Generate samples by sampling a function at linearly spaced points between the specified values (inclusive). - - - - - Generate a base 10 logarithmically spaced sample vector of the given length between the specified decade exponents (inclusive). - Equivalent to MATLAB logspace but with the length as first instead of last argument. - - - - - Generate samples by sampling a function at base 10 logarithmically spaced points between the specified decade exponents (inclusive). - - - - - Generate a linearly spaced sample vector within the inclusive interval (start, stop) and step 1. - Equivalent to MATLAB colon operator (:). - - - - - Generate a linearly spaced sample vector within the inclusive interval (start, stop) and step 1. - Equivalent to MATLAB colon operator (:). - - - - - Generate a linearly spaced sample vector within the inclusive interval (start, stop) and the provided step. - The start value is aways included as first value, but stop is only included if it stop-start is a multiple of step. - Equivalent to MATLAB double colon operator (::). - - - - - Generate a linearly spaced sample vector within the inclusive interval (start, stop) and the provided step. - The start value is aways included as first value, but stop is only included if it stop-start is a multiple of step. - Equivalent to MATLAB double colon operator (::). - - - - - Generate a linearly spaced sample vector within the inclusive interval (start, stop) and the provide step. - The start value is aways included as first value, but stop is only included if it stop-start is a multiple of step. - Equivalent to MATLAB double colon operator (::). - - - - - Generate samples by sampling a function at linearly spaced points within the inclusive interval (start, stop) and the provide step. - The start value is aways included as first value, but stop is only included if it stop-start is a multiple of step. - - - - - Create a periodic wave. - - The number of samples to generate. - Samples per time unit (Hz). Must be larger than twice the frequency to satisfy the Nyquist criterion. - Frequency in periods per time unit (Hz). - The length of the period when sampled at one sample per time unit. This is the interval of the periodic domain, a typical value is 1.0, or 2*Pi for angular functions. - Optional phase offset. - Optional delay, relative to the phase. - - - - Create a periodic wave. - - The number of samples to generate. - The function to apply to each of the values and evaluate the resulting sample. - Samples per time unit (Hz). Must be larger than twice the frequency to satisfy the Nyquist criterion. - Frequency in periods per time unit (Hz). - The length of the period when sampled at one sample per time unit. This is the interval of the periodic domain, a typical value is 1.0, or 2*Pi for angular functions. - Optional phase offset. - Optional delay, relative to the phase. - - - - Create an infinite periodic wave sequence. - - Samples per time unit (Hz). Must be larger than twice the frequency to satisfy the Nyquist criterion. - Frequency in periods per time unit (Hz). - The length of the period when sampled at one sample per time unit. This is the interval of the periodic domain, a typical value is 1.0, or 2*Pi for angular functions. - Optional phase offset. - Optional delay, relative to the phase. - - - - Create an infinite periodic wave sequence. - - The function to apply to each of the values and evaluate the resulting sample. - Samples per time unit (Hz). Must be larger than twice the frequency to satisfy the Nyquist criterion. - Frequency in periods per time unit (Hz). - The length of the period when sampled at one sample per time unit. This is the interval of the periodic domain, a typical value is 1.0, or 2*Pi for angular functions. - Optional phase offset. - Optional delay, relative to the phase. - - - - Create a Sine wave. - - The number of samples to generate. - Samples per time unit (Hz). Must be larger than twice the frequency to satisfy the Nyquist criterion. - Frequency in periods per time unit (Hz). - The maximal reached peak. - The mean, or DC part, of the signal. - Optional phase offset. - Optional delay, relative to the phase. - - - - Create an infinite Sine wave sequence. - - Samples per unit. - Frequency in samples per unit. - The maximal reached peak. - The mean, or DC part, of the signal. - Optional phase offset. - Optional delay, relative to the phase. - - - - Create a periodic square wave, starting with the high phase. - - The number of samples to generate. - Number of samples of the high phase. - Number of samples of the low phase. - Sample value to be emitted during the low phase. - Sample value to be emitted during the high phase. - Optional delay. - - - - Create an infinite periodic square wave sequence, starting with the high phase. - - Number of samples of the high phase. - Number of samples of the low phase. - Sample value to be emitted during the low phase. - Sample value to be emitted during the high phase. - Optional delay. - - - - Create a periodic triangle wave, starting with the raise phase from the lowest sample. - - The number of samples to generate. - Number of samples of the raise phase. - Number of samples of the fall phase. - Lowest sample value. - Highest sample value. - Optional delay. - - - - Create an infinite periodic triangle wave sequence, starting with the raise phase from the lowest sample. - - Number of samples of the raise phase. - Number of samples of the fall phase. - Lowest sample value. - Highest sample value. - Optional delay. - - - - Create a periodic sawtooth wave, starting with the lowest sample. - - The number of samples to generate. - Number of samples a full sawtooth period. - Lowest sample value. - Highest sample value. - Optional delay. - - - - Create an infinite periodic sawtooth wave sequence, starting with the lowest sample. - - Number of samples a full sawtooth period. - Lowest sample value. - Highest sample value. - Optional delay. - - - - Create an array with each field set to the same value. - - The number of samples to generate. - The value that each field should be set to. - - - - Create an infinite sequence where each element has the same value. - - The value that each element should be set to. - - - - Create a Heaviside Step sample vector. - - The number of samples to generate. - The maximal reached peak. - Offset to the time axis. - - - - Create an infinite Heaviside Step sample sequence. - - The maximal reached peak. - Offset to the time axis. - - - - Create a Kronecker Delta impulse sample vector. - - The number of samples to generate. - The maximal reached peak. - Offset to the time axis. Zero or positive. - - - - Create a Kronecker Delta impulse sample vector. - - The maximal reached peak. - Offset to the time axis, hence the sample index of the impulse. - - - - Create a periodic Kronecker Delta impulse sample vector. - - The number of samples to generate. - impulse sequence period. - The maximal reached peak. - Offset to the time axis. Zero or positive. - - - - Create a Kronecker Delta impulse sample vector. - - impulse sequence period. - The maximal reached peak. - Offset to the time axis. Zero or positive. - - - - Generate samples generated by the given computation. - - - - - Generate samples generated by the given computation. - - - - - Generate an infinite sequence generated by the given computation. - - - - - Generate an infinite sequence generated by the given computation. - - - - - Generate a Fibonacci sequence, including zero as first value. - - - - - Generate an infinite Fibonacci sequence, including zero as first value. - - - - - Create random samples, uniform between 0 and 1. - Faster than other methods but with reduced guarantees on randomness. - - - - - Create an infinite random sample sequence, uniform between 0 and 1. - Faster than other methods but with reduced guarantees on randomness. - - - - - Generate samples by sampling a function at samples from a probability distribution, uniform between 0 and 1. - Faster than other methods but with reduced guarantees on randomness. - - - - - Generate a sample sequence by sampling a function at samples from a probability distribution, uniform between 0 and 1. - Faster than other methods but with reduced guarantees on randomness. - - - - - Generate samples by sampling a function at sample pairs from a probability distribution, uniform between 0 and 1. - Faster than other methods but with reduced guarantees on randomness. - - - - - Generate a sample sequence by sampling a function at sample pairs from a probability distribution, uniform between 0 and 1. - Faster than other methods but with reduced guarantees on randomness. - - - - - Create samples with independent amplitudes of standard distribution. - - - - - Create an infinite sample sequence with independent amplitudes of standard distribution. - - - - - Create samples with independent amplitudes of normal distribution and a flat spectral density. - - - - - Create an infinite sample sequence with independent amplitudes of normal distribution and a flat spectral density. - - - - - Create random samples. - - - - - Create an infinite random sample sequence. - - - - - Create random samples. - - - - - Create an infinite random sample sequence. - - - - - Create random samples. - - - - - Create an infinite random sample sequence. - - - - - Create random samples. - - - - - Create an infinite random sample sequence. - - - - - Generate samples by sampling a function at samples from a probability distribution. - - - - - Generate a sample sequence by sampling a function at samples from a probability distribution. - - - - - Generate samples by sampling a function at sample pairs from a probability distribution. - - - - - Generate a sample sequence by sampling a function at sample pairs from a probability distribution. - - - - - Globalized String Handling Helpers - - - - - Tries to get a from the format provider, - returning the current culture if it fails. - - - An that supplies culture-specific - formatting information. - - A instance. - - - - Tries to get a from the format - provider, returning the current culture if it fails. - - - An that supplies culture-specific - formatting information. - - A instance. - - - - Tries to get a from the format provider, returning the current culture if it fails. - - - An that supplies culture-specific - formatting information. - - A instance. - - - - Globalized Parsing: Tokenize a node by splitting it into several nodes. - - Node that contains the trimmed string to be tokenized. - List of keywords to tokenize by. - keywords to skip looking for (because they've already been handled). - - - - Globalized Parsing: Parse a double number - - First token of the number. - Culture Info. - The parsed double number using the given culture information. - - - - - Globalized Parsing: Parse a float number - - First token of the number. - Culture Info. - The parsed float number using the given culture information. - - - - - Calculates r^2, the square of the sample correlation coefficient between - the observed outcomes and the observed predictor values. - Not to be confused with R^2, the coefficient of determination, see . - - The modelled/predicted values - The observed/actual values - Squared Person product-momentum correlation coefficient. - - - - Calculates r, the sample correlation coefficient between the observed outcomes - and the observed predictor values. - - The modelled/predicted values - The observed/actual values - Person product-momentum correlation coefficient. - - - - Calculates the Standard Error of the regression, given a sequence of - modeled/predicted values, and a sequence of actual/observed values - - The modelled/predicted values - The observed/actual values - The Standard Error of the regression - - - - Calculates the Standard Error of the regression, given a sequence of - modeled/predicted values, and a sequence of actual/observed values - - The modelled/predicted values - The observed/actual values - The degrees of freedom by which the - number of samples is reduced for performing the Standard Error calculation - The Standard Error of the regression - - - - Calculates the R-Squared value, also known as coefficient of determination, - given some modelled and observed values. - - The values expected from the model. - The actual values obtained. - Coefficient of determination. - - - - Complex Fast (FFT) Implementation of the Discrete Fourier Transform (DFT). - - - - - Applies the forward Fast Fourier Transform (FFT) to arbitrary-length sample vectors. - - Sample vector, where the FFT is evaluated in place. - - - - Applies the forward Fast Fourier Transform (FFT) to arbitrary-length sample vectors. - - Sample vector, where the FFT is evaluated in place. - - - - Applies the forward Fast Fourier Transform (FFT) to arbitrary-length sample vectors. - - Sample vector, where the FFT is evaluated in place. - Fourier Transform Convention Options. - - - - Applies the forward Fast Fourier Transform (FFT) to arbitrary-length sample vectors. - - Sample vector, where the FFT is evaluated in place. - Fourier Transform Convention Options. - - - - Applies the forward Fast Fourier Transform (FFT) to arbitrary-length sample vectors. - - Real part of the sample vector, where the FFT is evaluated in place. - Imaginary part of the sample vector, where the FFT is evaluated in place. - Fourier Transform Convention Options. - - - - Applies the forward Fast Fourier Transform (FFT) to arbitrary-length sample vectors. - - Real part of the sample vector, where the FFT is evaluated in place. - Imaginary part of the sample vector, where the FFT is evaluated in place. - Fourier Transform Convention Options. - - - - Packed Real-Complex forward Fast Fourier Transform (FFT) to arbitrary-length sample vectors. - Since for real-valued time samples the complex spectrum is conjugate-even (symmetry), - the spectrum can be fully reconstructed from the positive frequencies only (first half). - The data array needs to be N+2 (if N is even) or N+1 (if N is odd) long in order to support such a packed spectrum. - - Data array of length N+2 (if N is even) or N+1 (if N is odd). - The number of samples. - Fourier Transform Convention Options. - - - - Packed Real-Complex forward Fast Fourier Transform (FFT) to arbitrary-length sample vectors. - Since for real-valued time samples the complex spectrum is conjugate-even (symmetry), - the spectrum can be fully reconstructed form the positive frequencies only (first half). - The data array needs to be N+2 (if N is even) or N+1 (if N is odd) long in order to support such a packed spectrum. - - Data array of length N+2 (if N is even) or N+1 (if N is odd). - The number of samples. - Fourier Transform Convention Options. - - - - Applies the forward Fast Fourier Transform (FFT) to multiple dimensional sample data. - - Sample data, where the FFT is evaluated in place. - - The data size per dimension. The first dimension is the major one. - For example, with two dimensions "rows" and "columns" the samples are assumed to be organized row by row. - - Fourier Transform Convention Options. - - - - Applies the forward Fast Fourier Transform (FFT) to multiple dimensional sample data. - - Sample data, where the FFT is evaluated in place. - - The data size per dimension. The first dimension is the major one. - For example, with two dimensions "rows" and "columns" the samples are assumed to be organized row by row. - - Fourier Transform Convention Options. - - - - Applies the forward Fast Fourier Transform (FFT) to two dimensional sample data. - - Sample data, organized row by row, where the FFT is evaluated in place - The number of rows. - The number of columns. - Data available organized column by column instead of row by row can be processed directly by swapping the rows and columns arguments. - Fourier Transform Convention Options. - - - - Applies the forward Fast Fourier Transform (FFT) to two dimensional sample data. - - Sample data, organized row by row, where the FFT is evaluated in place - The number of rows. - The number of columns. - Data available organized column by column instead of row by row can be processed directly by swapping the rows and columns arguments. - Fourier Transform Convention Options. - - - - Applies the forward Fast Fourier Transform (FFT) to a two dimensional data in form of a matrix. - - Sample matrix, where the FFT is evaluated in place - Fourier Transform Convention Options. - - - - Applies the forward Fast Fourier Transform (FFT) to a two dimensional data in form of a matrix. - - Sample matrix, where the FFT is evaluated in place - Fourier Transform Convention Options. - - - - Applies the inverse Fast Fourier Transform (iFFT) to arbitrary-length sample vectors. - - Spectrum data, where the iFFT is evaluated in place. - - - - Applies the inverse Fast Fourier Transform (iFFT) to arbitrary-length sample vectors. - - Spectrum data, where the iFFT is evaluated in place. - - - - Applies the inverse Fast Fourier Transform (iFFT) to arbitrary-length sample vectors. - - Spectrum data, where the iFFT is evaluated in place. - Fourier Transform Convention Options. - - - - Applies the inverse Fast Fourier Transform (iFFT) to arbitrary-length sample vectors. - - Spectrum data, where the iFFT is evaluated in place. - Fourier Transform Convention Options. - - - - Applies the inverse Fast Fourier Transform (iFFT) to arbitrary-length sample vectors. - - Real part of the sample vector, where the iFFT is evaluated in place. - Imaginary part of the sample vector, where the iFFT is evaluated in place. - Fourier Transform Convention Options. - - - - Applies the inverse Fast Fourier Transform (iFFT) to arbitrary-length sample vectors. - - Real part of the sample vector, where the iFFT is evaluated in place. - Imaginary part of the sample vector, where the iFFT is evaluated in place. - Fourier Transform Convention Options. - - - - Packed Real-Complex inverse Fast Fourier Transform (iFFT) to arbitrary-length sample vectors. - Since for real-valued time samples the complex spectrum is conjugate-even (symmetry), - the spectrum can be fully reconstructed form the positive frequencies only (first half). - The data array needs to be N+2 (if N is even) or N+1 (if N is odd) long in order to support such a packed spectrum. - - Data array of length N+2 (if N is even) or N+1 (if N is odd). - The number of samples. - Fourier Transform Convention Options. - - - - Packed Real-Complex inverse Fast Fourier Transform (iFFT) to arbitrary-length sample vectors. - Since for real-valued time samples the complex spectrum is conjugate-even (symmetry), - the spectrum can be fully reconstructed form the positive frequencies only (first half). - The data array needs to be N+2 (if N is even) or N+1 (if N is odd) long in order to support such a packed spectrum. - - Data array of length N+2 (if N is even) or N+1 (if N is odd). - The number of samples. - Fourier Transform Convention Options. - - - - Applies the inverse Fast Fourier Transform (iFFT) to multiple dimensional sample data. - - Spectrum data, where the iFFT is evaluated in place. - - The data size per dimension. The first dimension is the major one. - For example, with two dimensions "rows" and "columns" the samples are assumed to be organized row by row. - - Fourier Transform Convention Options. - - - - Applies the inverse Fast Fourier Transform (iFFT) to multiple dimensional sample data. - - Spectrum data, where the iFFT is evaluated in place. - - The data size per dimension. The first dimension is the major one. - For example, with two dimensions "rows" and "columns" the samples are assumed to be organized row by row. - - Fourier Transform Convention Options. - - - - Applies the inverse Fast Fourier Transform (iFFT) to two dimensional sample data. - - Sample data, organized row by row, where the iFFT is evaluated in place - The number of rows. - The number of columns. - Data available organized column by column instead of row by row can be processed directly by swapping the rows and columns arguments. - Fourier Transform Convention Options. - - - - Applies the inverse Fast Fourier Transform (iFFT) to two dimensional sample data. - - Sample data, organized row by row, where the iFFT is evaluated in place - The number of rows. - The number of columns. - Data available organized column by column instead of row by row can be processed directly by swapping the rows and columns arguments. - Fourier Transform Convention Options. - - - - Applies the inverse Fast Fourier Transform (iFFT) to a two dimensional data in form of a matrix. - - Sample matrix, where the iFFT is evaluated in place - Fourier Transform Convention Options. - - - - Applies the inverse Fast Fourier Transform (iFFT) to a two dimensional data in form of a matrix. - - Sample matrix, where the iFFT is evaluated in place - Fourier Transform Convention Options. - - - - Generate the frequencies corresponding to each index in frequency space. - The frequency space has a resolution of sampleRate/N. - Index 0 corresponds to the DC part, the following indices correspond to - the positive frequencies up to the Nyquist frequency (sampleRate/2), - followed by the negative frequencies wrapped around. - - Number of samples. - The sampling rate of the time-space data. - - - - Fourier Transform Convention - - - - - Inverse integrand exponent (forward: positive sign; inverse: negative sign). - - - - - Only scale by 1/N in the inverse direction; No scaling in forward direction. - - - - - Don't scale at all (neither on forward nor on inverse transformation). - - - - - Universal; Symmetric scaling and common exponent (used in Maple). - - - - - Only scale by 1/N in the inverse direction; No scaling in forward direction (used in Matlab). [= AsymmetricScaling] - - - - - Inverse integrand exponent; No scaling at all (used in all Numerical Recipes based implementations). [= InverseExponent | NoScaling] - - - - - Fast (FHT) Implementation of the Discrete Hartley Transform (DHT). - - - Fast (FHT) Implementation of the Discrete Hartley Transform (DHT). - - - - - Naive forward DHT, useful e.g. to verify faster algorithms. - - Time-space sample vector. - Hartley Transform Convention Options. - Corresponding frequency-space vector. - - - - Naive inverse DHT, useful e.g. to verify faster algorithms. - - Frequency-space sample vector. - Hartley Transform Convention Options. - Corresponding time-space vector. - - - - Rescale FFT-the resulting vector according to the provided convention options. - - Fourier Transform Convention Options. - Sample Vector. - - - - Rescale the iFFT-resulting vector according to the provided convention options. - - Fourier Transform Convention Options. - Sample Vector. - - - - Naive generic DHT, useful e.g. to verify faster algorithms. - - Time-space sample vector. - Corresponding frequency-space vector. - - - - Hartley Transform Convention - - - - - Only scale by 1/N in the inverse direction; No scaling in forward direction. - - - - - Don't scale at all (neither on forward nor on inverse transformation). - - - - - Universal; Symmetric scaling. - - - - - Numerical Integration (Quadrature). - - - - - Approximation of the definite integral of an analytic smooth function on a closed interval. - - The analytic smooth function to integrate. - Where the interval starts, inclusive and finite. - Where the interval stops, inclusive and finite. - The expected relative accuracy of the approximation. - Approximation of the finite integral in the given interval. - - - - Approximation of the definite integral of an analytic smooth function on a closed interval. - - The analytic smooth function to integrate. - Where the interval starts, inclusive and finite. - Where the interval stops, inclusive and finite. - Approximation of the finite integral in the given interval. - - - - Approximates a 2-dimensional definite integral using an Nth order Gauss-Legendre rule over the rectangle [a,b] x [c,d]. - - The 2-dimensional analytic smooth function to integrate. - Where the interval starts for the first (inside) integral, exclusive and finite. - Where the interval ends for the first (inside) integral, exclusive and finite. - Where the interval starts for the second (outside) integral, exclusive and finite. - /// Where the interval ends for the second (outside) integral, exclusive and finite. - Defines an Nth order Gauss-Legendre rule. The order also defines the number of abscissas and weights for the rule. Precomputed Gauss-Legendre abscissas/weights for orders 2-20, 32, 64, 96, 100, 128, 256, 512, 1024 are used, otherwise they're calculated on the fly. - Approximation of the finite integral in the given interval. - - - - Approximates a 2-dimensional definite integral using an Nth order Gauss-Legendre rule over the rectangle [a,b] x [c,d]. - - The 2-dimensional analytic smooth function to integrate. - Where the interval starts for the first (inside) integral, exclusive and finite. - Where the interval ends for the first (inside) integral, exclusive and finite. - Where the interval starts for the second (outside) integral, exclusive and finite. - /// Where the interval ends for the second (outside) integral, exclusive and finite. - Approximation of the finite integral in the given interval. - - - - Approximation of the definite integral of an analytic smooth function by double-exponential quadrature. When either or both limits are infinite, the integrand is assumed rapidly decayed to zero as x -> infinity. - - The analytic smooth function to integrate. - Where the interval starts. - Where the interval stops. - The expected relative accuracy of the approximation. - Approximation of the finite integral in the given interval. - - - - Approximation of the definite integral of an analytic smooth function by Gauss-Legendre quadrature. When either or both limits are infinite, the integrand is assumed rapidly decayed to zero as x -> infinity. - - The analytic smooth function to integrate. - Where the interval starts. - Where the interval stops. - Defines an Nth order Gauss-Legendre rule. The order also defines the number of abscissas and weights for the rule. Precomputed Gauss-Legendre abscissas/weights for orders 2-20, 32, 64, 96, 100, 128, 256, 512, 1024 are used, otherwise they're calculated on the fly. - Approximation of the finite integral in the given interval. - - - - Approximation of the definite integral of an analytic smooth function by Gauss-Kronrod quadrature. When either or both limits are infinite, the integrand is assumed rapidly decayed to zero as x -> infinity. - - The analytic smooth function to integrate. - Where the interval starts. - Where the interval stops. - The expected relative accuracy of the approximation. - The maximum number of interval splittings permitted before stopping. - The number of Gauss-Kronrod points. Pre-computed for 15, 21, 31, 41, 51 and 61 points. - Approximation of the finite integral in the given interval. - - - - Approximation of the definite integral of an analytic smooth function by Gauss-Kronrod quadrature. When either or both limits are infinite, the integrand is assumed rapidly decayed to zero as x -> infinity. - - The analytic smooth function to integrate. - Where the interval starts. - Where the interval stops. - The difference between the (N-1)/2 point Gauss approximation and the N-point Gauss-Kronrod approximation - The L1 norm of the result, if there is a significant difference between this and the returned value, then the result is likely to be ill-conditioned. - The expected relative accuracy of the approximation. - The maximum number of interval splittings permitted before stopping - The number of Gauss-Kronrod points. Pre-computed for 15, 21, 31, 41, 51 and 61 points - Approximation of the finite integral in the given interval. - - - - Numerical Contour Integration of a complex-valued function over a real variable,. - - - - - Approximation of the definite integral of an analytic smooth complex function by double-exponential quadrature. When either or both limits are infinite, the integrand is assumed rapidly decayed to zero as x -> infinity. - - The analytic smooth complex function to integrate, defined on the real domain. - Where the interval starts. - Where the interval stops. - The expected relative accuracy of the approximation. - Approximation of the finite integral in the given interval. - - - - Approximation of the definite integral of an analytic smooth complex function by double-exponential quadrature. When either or both limits are infinite, the integrand is assumed rapidly decayed to zero as x -> infinity. - - The analytic smooth complex function to integrate, defined on the real domain. - Where the interval starts. - Where the interval stops. - Defines an Nth order Gauss-Legendre rule. The order also defines the number of abscissas and weights for the rule. Precomputed Gauss-Legendre abscissas/weights for orders 2-20, 32, 64, 96, 100, 128, 256, 512, 1024 are used, otherwise they're calculated on the fly. - Approximation of the finite integral in the given interval. - - - - Approximation of the definite integral of an analytic smooth function by Gauss-Kronrod quadrature. When either or both limits are infinite, the integrand is assumed rapidly decayed to zero as x -> infinity. - - The analytic smooth complex function to integrate, defined on the real domain. - Where the interval starts. - Where the interval stops. - The expected relative accuracy of the approximation. - The maximum number of interval splittings permitted before stopping - The number of Gauss-Kronrod points. Pre-computed for 15, 21, 31, 41, 51 and 61 points - Approximation of the finite integral in the given interval. - - - - Approximation of the definite integral of an analytic smooth function by Gauss-Kronrod quadrature. When either or both limits are infinite, the integrand is assumed rapidly decayed to zero as x -> infinity. - - The analytic smooth complex function to integrate, defined on the real domain. - Where the interval starts. - Where the interval stops. - The difference between the (N-1)/2 point Gauss approximation and the N-point Gauss-Kronrod approximation - The L1 norm of the result, if there is a significant difference between this and the returned value, then the result is likely to be ill-conditioned. - The expected relative accuracy of the approximation. - The maximum number of interval splittings permitted before stopping - The number of Gauss-Kronrod points. Pre-computed for 15, 21, 31, 41, 51 and 61 points - Approximation of the finite integral in the given interval. - - - - Analytic integration algorithm for smooth functions with no discontinuities - or derivative discontinuities and no poles inside the interval. - - - - - Maximum number of iterations, until the asked - maximum error is (likely to be) satisfied. - - - - - Approximate the integral by the double exponential transformation - - The analytic smooth function to integrate. - Where the interval starts, inclusive and finite. - Where the interval stops, inclusive and finite. - The expected relative accuracy of the approximation. - Approximation of the finite integral in the given interval. - - - - Approximate the integral by the double exponential transformation - - The analytic smooth complex function to integrate, defined on the real domain. - Where the interval starts, inclusive and finite. - Where the interval stops, inclusive and finite. - The expected relative accuracy of the approximation. - Approximation of the finite integral in the given interval. - - - - Compute the abscissa vector for a single level. - - The level to evaluate the abscissa vector for. - Abscissa Vector. - - - - Compute the weight vector for a single level. - - The level to evaluate the weight vector for. - Weight Vector. - - - - Precomputed abscissa vector per level. - - - - - Precomputed weight vector per level. - - - - - Getter for the order. - - - - - Getter that returns a clone of the array containing the Kronrod abscissas. - - - - - Getter that returns a clone of the array containing the Kronrod weights. - - - - - Getter that returns a clone of the array containing the Gauss weights. - - - - - Performs adaptive Gauss-Kronrod quadrature on function f over the range (a,b) - - The analytic smooth function to integrate - Where the interval starts - Where the interval stops - The difference between the (N-1)/2 point Gauss approximation and the N-point Gauss-Kronrod approximation - The L1 norm of the result, if there is a significant difference between this and the returned value, then the result is likely to be ill-conditioned. - The maximum relative error in the result - The maximum number of interval splittings permitted before stopping - The number of Gauss-Kronrod points. Pre-computed for 15, 21, 31, 41, 51 and 61 points - - - - Performs adaptive Gauss-Kronrod quadrature on function f over the range (a,b) - - The analytic smooth complex function to integrate, defined on the real axis. - Where the interval starts - Where the interval stops - The difference between the (N-1)/2 point Gauss approximation and the N-point Gauss-Kronrod approximation - The L1 norm of the result, if there is a significant difference between this and the returned value, then the result is likely to be ill-conditioned. - The maximum relative error in the result - The maximum number of interval splittings permitted before stopping - The number of Gauss-Kronrod points. Pre-computed for 15, 21, 31, 41, 51 and 61 points - - - - - Approximates a definite integral using an Nth order Gauss-Legendre rule. Precomputed Gauss-Legendre abscissas/weights for orders 2-20, 32, 64, 96, 100, 128, 256, 512, 1024 are used, otherwise they're calculated on the fly. - - - - - Initializes a new instance of the class. - - Where the interval starts, inclusive and finite. - Where the interval stops, inclusive and finite. - Defines an Nth order Gauss-Legendre rule. The order also defines the number of abscissas and weights for the rule. Precomputed Gauss-Legendre abscissas/weights for orders 2-20, 32, 64, 96, 100, 128, 256, 512, 1024 are used, otherwise they're calculated on the fly. - - - - Gettter for the ith abscissa. - - Index of the ith abscissa. - The ith abscissa. - - - - Getter that returns a clone of the array containing the abscissas. - - - - - Getter for the ith weight. - - Index of the ith weight. - The ith weight. - - - - Getter that returns a clone of the array containing the weights. - - - - - Getter for the order. - - - - - Getter for the InvervalBegin. - - - - - Getter for the InvervalEnd. - - - - - Approximates a definite integral using an Nth order Gauss-Legendre rule. - - The analytic smooth function to integrate. - Where the interval starts, exclusive and finite. - Where the interval ends, exclusive and finite. - Defines an Nth order Gauss-Legendre rule. The order also defines the number of abscissas and weights for the rule. Precomputed Gauss-Legendre abscissas/weights for orders 2-20, 32, 64, 96, 100, 128, 256, 512, 1024 are used, otherwise they're calculated on the fly. - Approximation of the finite integral in the given interval. - - - - Approximates a definite integral using an Nth order Gauss-Legendre rule. - - The analytic smooth complex function to integrate, defined on the real domain. - Where the interval starts, exclusive and finite. - Where the interval ends, exclusive and finite. - Defines an Nth order Gauss-Legendre rule. The order also defines the number of abscissas and weights for the rule. Precomputed Gauss-Legendre abscissas/weights for orders 2-20, 32, 64, 96, 100, 128, 256, 512, 1024 are used, otherwise they're calculated on the fly. - Approximation of the finite integral in the given interval. - - - - Approximates a 2-dimensional definite integral using an Nth order Gauss-Legendre rule over the rectangle [a,b] x [c,d]. - - The 2-dimensional analytic smooth function to integrate. - Where the interval starts for the first (inside) integral, exclusive and finite. - Where the interval ends for the first (inside) integral, exclusive and finite. - Where the interval starts for the second (outside) integral, exclusive and finite. - /// Where the interval ends for the second (outside) integral, exclusive and finite. - Defines an Nth order Gauss-Legendre rule. The order also defines the number of abscissas and weights for the rule. Precomputed Gauss-Legendre abscissas/weights for orders 2-20, 32, 64, 96, 100, 128, 256, 512, 1024 are used, otherwise they're calculated on the fly. - Approximation of the finite integral in the given interval. - - - - Contains a method to compute the Gauss-Kronrod abscissas/weights and precomputed abscissas/weights for orders 15, 21, 31, 41, 51, 61. - - - Contains a method to compute the Gauss-Kronrod abscissas/weights. - - - - - Precomputed abscissas/weights for orders 15, 21, 31, 41, 51, 61. - - - - - Computes the Gauss-Kronrod abscissas/weights and Gauss weights. - - Defines an Nth order Gauss-Kronrod rule. The order also defines the number of abscissas and weights for the rule. - Required precision to compute the abscissas/weights. - Object containing the non-negative abscissas/weights, order. - - - - Returns coefficients of a Stieltjes polynomial in terms of Legendre polynomials. - - - - - Return value and derivative of a Legendre series at given points. - - - - - Return value and derivative of a Legendre polynomial of order at given points. - - - - - Creates a Gauss-Kronrod point. - - - - - Getter for the GaussKronrodPoint. - - Defines an Nth order Gauss-Kronrod rule. Precomputed Gauss-Kronrod abscissas/weights for orders 15, 21, 31, 41, 51, 61 are used, otherwise they're calculated on the fly. - Object containing the non-negative abscissas/weights, and order. - - - - Contains a method to compute the Gauss-Legendre abscissas/weights and precomputed abscissas/weights for orders 2-20, 32, 64, 96, 100, 128, 256, 512, 1024. - - - Contains a method to compute the Gauss-Legendre abscissas/weights and precomputed abscissas/weights for orders 2-20, 32, 64, 96, 100, 128, 256, 512, 1024. - - - - - Precomputed abscissas/weights for orders 2-20, 32, 64, 96, 100, 128, 256, 512, 1024. - - - - - Computes the Gauss-Legendre abscissas/weights. - See Pavel Holoborodko for a description of the algorithm. - - Defines an Nth order Gauss-Legendre rule. The order also defines the number of abscissas and weights for the rule. - Required precision to compute the abscissas/weights. 1e-10 is usually fine. - Object containing the non-negative abscissas/weights, order, and intervalBegin/intervalEnd. The non-negative abscissas/weights are generated over the interval [-1,1] for the given order. - - - - Creates and maps a Gauss-Legendre point. - - - - - Getter for the GaussPoint. - - Defines an Nth order Gauss-Legendre rule. Precomputed Gauss-Legendre abscissas/weights for orders 2-20, 32, 64, 96, 100, 128, 256, 512, 1024 are used, otherwise they're calculated on the fly. - Object containing the non-negative abscissas/weights, order, and intervalBegin/intervalEnd. The non-negative abscissas/weights are generated over the interval [-1,1] for the given order. - - - - Getter for the GaussPoint. - - Where the interval starts, inclusive and finite. - Where the interval stops, inclusive and finite. - Defines an Nth order Gauss-Legendre rule. Precomputed Gauss-Legendre abscissas/weights for orders 2-20, 32, 64, 96, 100, 128, 256, 512, 1024 are used, otherwise they're calculated on the fly. - Object containing the abscissas/weights, order, and intervalBegin/intervalEnd. - - - - Maps the non-negative abscissas/weights from the interval [-1, 1] to the interval [intervalBegin, intervalEnd]. - - Where the interval starts, inclusive and finite. - Where the interval stops, inclusive and finite. - Object containing the non-negative abscissas/weights, order, and intervalBegin/intervalEnd. The non-negative abscissas/weights are generated over the interval [-1,1] for the given order. - Object containing the abscissas/weights, order, and intervalBegin/intervalEnd. - - - - Contains the abscissas/weights, order, and intervalBegin/intervalEnd. - - - - - Contains two GaussPoint. - - - - - Approximation algorithm for definite integrals by the Trapezium rule of the Newton-Cotes family. - - - Wikipedia - Trapezium Rule - - - - - Direct 2-point approximation of the definite integral in the provided interval by the trapezium rule. - - The analytic smooth function to integrate. - Where the interval starts, inclusive and finite. - Where the interval stops, inclusive and finite. - Approximation of the finite integral in the given interval. - - - - Direct 2-point approximation of the definite integral in the provided interval by the trapezium rule. - - The analytic smooth complex function to integrate, defined on real domain. - Where the interval starts, inclusive and finite. - Where the interval stops, inclusive and finite. - Approximation of the finite integral in the given interval. - - - - Composite N-point approximation of the definite integral in the provided interval by the trapezium rule. - - The analytic smooth function to integrate. - Where the interval starts, inclusive and finite. - Where the interval stops, inclusive and finite. - Number of composite subdivision partitions. - Approximation of the finite integral in the given interval. - - - - Composite N-point approximation of the definite integral in the provided interval by the trapezium rule. - - The analytic smooth complex function to integrate, defined on real domain. - Where the interval starts, inclusive and finite. - Where the interval stops, inclusive and finite. - Number of composite subdivision partitions. - Approximation of the finite integral in the given interval. - - - - Adaptive approximation of the definite integral in the provided interval by the trapezium rule. - - The analytic smooth function to integrate. - Where the interval starts, inclusive and finite. - Where the interval stops, inclusive and finite. - The expected accuracy of the approximation. - Approximation of the finite integral in the given interval. - - - - Adaptive approximation of the definite integral in the provided interval by the trapezium rule. - - The analytic smooth complex function to integrate, define don real domain. - Where the interval starts, inclusive and finite. - Where the interval stops, inclusive and finite. - The expected accuracy of the approximation. - Approximation of the finite integral in the given interval. - - - - Adaptive approximation of the definite integral by the trapezium rule. - - The analytic smooth function to integrate. - Where the interval starts, inclusive and finite. - Where the interval stops, inclusive and finite. - Abscissa vector per level provider. - Weight vector per level provider. - First Level Step - The expected relative accuracy of the approximation. - Approximation of the finite integral in the given interval. - - - - Adaptive approximation of the definite integral by the trapezium rule. - - The analytic smooth complex function to integrate, defined on the real domain. - Where the interval starts, inclusive and finite. - Where the interval stops, inclusive and finite. - Abscissa vector per level provider. - Weight vector per level provider. - First Level Step - The expected relative accuracy of the approximation. - Approximation of the finite integral in the given interval. - - - - Approximation algorithm for definite integrals by Simpson's rule. - - - - - Direct 3-point approximation of the definite integral in the provided interval by Simpson's rule. - - The analytic smooth function to integrate. - Where the interval starts, inclusive and finite. - Where the interval stops, inclusive and finite. - Approximation of the finite integral in the given interval. - - - - Composite N-point approximation of the definite integral in the provided interval by Simpson's rule. - - The analytic smooth function to integrate. - Where the interval starts, inclusive and finite. - Where the interval stops, inclusive and finite. - Even number of composite subdivision partitions. - Approximation of the finite integral in the given interval. - - - - Interpolation Factory. - - - - - Creates an interpolation based on arbitrary points. - - The sample points t. - The sample point values x(t). - - An interpolation scheme optimized for the given sample points and values, - which can then be used to compute interpolations and extrapolations - on arbitrary points. - - - if your data is already sorted in arrays, consider to use - MathNet.Numerics.Interpolation.Barycentric.InterpolateRationalFloaterHormannSorted - instead, which is more efficient. - - - - - Create a Floater-Hormann rational pole-free interpolation based on arbitrary points. - - The sample points t. - The sample point values x(t). - - An interpolation scheme optimized for the given sample points and values, - which can then be used to compute interpolations and extrapolations - on arbitrary points. - - - if your data is already sorted in arrays, consider to use - MathNet.Numerics.Interpolation.Barycentric.InterpolateRationalFloaterHormannSorted - instead, which is more efficient. - - - - - Create a Bulirsch Stoer rational interpolation based on arbitrary points. - - The sample points t. - The sample point values x(t). - - An interpolation scheme optimized for the given sample points and values, - which can then be used to compute interpolations and extrapolations - on arbitrary points. - - - if your data is already sorted in arrays, consider to use - MathNet.Numerics.Interpolation.BulirschStoerRationalInterpolation.InterpolateSorted - instead, which is more efficient. - - - - - Create a barycentric polynomial interpolation where the given sample points are equidistant. - - The sample points t, must be equidistant. - The sample point values x(t). - - An interpolation scheme optimized for the given sample points and values, - which can then be used to compute interpolations and extrapolations - on arbitrary points. - - - if your data is already sorted in arrays, consider to use - MathNet.Numerics.Interpolation.Barycentric.InterpolatePolynomialEquidistantSorted - instead, which is more efficient. - - - - - Create a Neville polynomial interpolation based on arbitrary points. - If the points happen to be equidistant, consider to use the much more robust PolynomialEquidistant instead. - Otherwise, consider whether RationalWithoutPoles would not be a more robust alternative. - - The sample points t. - The sample point values x(t). - - An interpolation scheme optimized for the given sample points and values, - which can then be used to compute interpolations and extrapolations - on arbitrary points. - - - if your data is already sorted in arrays, consider to use - MathNet.Numerics.Interpolation.NevillePolynomialInterpolation.InterpolateSorted - instead, which is more efficient. - - - - - Create a piecewise linear interpolation based on arbitrary points. - - The sample points t. - The sample point values x(t). - - An interpolation scheme optimized for the given sample points and values, - which can then be used to compute interpolations and extrapolations - on arbitrary points. - - - if your data is already sorted in arrays, consider to use - MathNet.Numerics.Interpolation.LinearSpline.InterpolateSorted - instead, which is more efficient. - - - - - Create piecewise log-linear interpolation based on arbitrary points. - - The sample points t. - The sample point values x(t). - - An interpolation scheme optimized for the given sample points and values, - which can then be used to compute interpolations and extrapolations - on arbitrary points. - - - if your data is already sorted in arrays, consider to use - MathNet.Numerics.Interpolation.LogLinear.InterpolateSorted - instead, which is more efficient. - - - - - Create an piecewise natural cubic spline interpolation based on arbitrary points, - with zero secondary derivatives at the boundaries. - - The sample points t. - The sample point values x(t). - - An interpolation scheme optimized for the given sample points and values, - which can then be used to compute interpolations and extrapolations - on arbitrary points. - - - if your data is already sorted in arrays, consider to use - MathNet.Numerics.Interpolation.CubicSpline.InterpolateNaturalSorted - instead, which is more efficient. - - - - - Create a piecewise cubic Akima spline interpolation based on arbitrary points. - Akima splines are robust to outliers. - - The sample points t. - The sample point values x(t). - - An interpolation scheme optimized for the given sample points and values, - which can then be used to compute interpolations and extrapolations - on arbitrary points. - - - if your data is already sorted in arrays, consider to use - MathNet.Numerics.Interpolation.CubicSpline.InterpolateAkimaSorted - instead, which is more efficient. - - - - - Create a piecewise cubic monotone spline interpolation based on arbitrary points. - This is a shape-preserving spline with continuous first derivative. - - The sample points t. - The sample point values x(t). - - An interpolation scheme optimized for the given sample points and values, - which can then be used to compute interpolations and extrapolations - on arbitrary points. - - - if your data is already sorted in arrays, consider to use - MathNet.Numerics.Interpolation.CubicSpline.InterpolatePchipSorted - instead, which is more efficient. - - - - - Create a piecewise cubic Hermite spline interpolation based on arbitrary points - and their slopes/first derivative. - - The sample points t. - The sample point values x(t). - The slope at the sample points. Optimized for arrays. - - An interpolation scheme optimized for the given sample points and values, - which can then be used to compute interpolations and extrapolations - on arbitrary points. - - - if your data is already sorted in arrays, consider to use - MathNet.Numerics.Interpolation.CubicSpline.InterpolateHermiteSorted - instead, which is more efficient. - - - - - Create a step-interpolation based on arbitrary points. - - The sample points t. - The sample point values x(t). - - An interpolation scheme optimized for the given sample points and values, - which can then be used to compute interpolations and extrapolations - on arbitrary points. - - - if your data is already sorted in arrays, consider to use - MathNet.Numerics.Interpolation.StepInterpolation.InterpolateSorted - instead, which is more efficient. - - - - - Barycentric Interpolation Algorithm. - - Supports neither differentiation nor integration. - - - Sample points (N), sorted ascendingly. - Sample values (N), sorted ascendingly by x. - Barycentric weights (N), sorted ascendingly by x. - - - - Create a barycentric polynomial interpolation from a set of (x,y) value pairs with equidistant x, sorted ascendingly by x. - - - - - Create a barycentric polynomial interpolation from an unordered set of (x,y) value pairs with equidistant x. - WARNING: Works in-place and can thus causes the data array to be reordered. - - - - - Create a barycentric polynomial interpolation from an unsorted set of (x,y) value pairs with equidistant x. - - - - - Create a barycentric polynomial interpolation from a set of values related to linearly/equidistant spaced points within an interval. - - - - - Create a barycentric rational interpolation without poles, using Mike Floater and Kai Hormann's Algorithm. - The values are assumed to be sorted ascendingly by x. - - Sample points (N), sorted ascendingly. - Sample values (N), sorted ascendingly by x. - - Order of the interpolation scheme, 0 <= order <= N. - In most cases a value between 3 and 8 gives good results. - - - - - Create a barycentric rational interpolation without poles, using Mike Floater and Kai Hormann's Algorithm. - WARNING: Works in-place and can thus causes the data array to be reordered. - - Sample points (N), no sorting assumed. - Sample values (N). - - Order of the interpolation scheme, 0 <= order <= N. - In most cases a value between 3 and 8 gives good results. - - - - - Create a barycentric rational interpolation without poles, using Mike Floater and Kai Hormann's Algorithm. - - Sample points (N), no sorting assumed. - Sample values (N). - - Order of the interpolation scheme, 0 <= order <= N. - In most cases a value between 3 and 8 gives good results. - - - - - Create a barycentric rational interpolation without poles, using Mike Floater and Kai Hormann's Algorithm. - The values are assumed to be sorted ascendingly by x. - - Sample points (N), sorted ascendingly. - Sample values (N), sorted ascendingly by x. - - - - Create a barycentric rational interpolation without poles, using Mike Floater and Kai Hormann's Algorithm. - WARNING: Works in-place and can thus causes the data array to be reordered. - - Sample points (N), no sorting assumed. - Sample values (N). - - - - Create a barycentric rational interpolation without poles, using Mike Floater and Kai Hormann's Algorithm. - - Sample points (N), no sorting assumed. - Sample values (N). - - - - Gets a value indicating whether the algorithm supports differentiation (interpolated derivative). - - - - - Gets a value indicating whether the algorithm supports integration (interpolated quadrature). - - - - - Interpolate at point t. - - Point t to interpolate at. - Interpolated value x(t). - - - - Differentiate at point t. NOT SUPPORTED. - - Point t to interpolate at. - Interpolated first derivative at point t. - - - - Differentiate twice at point t. NOT SUPPORTED. - - Point t to interpolate at. - Interpolated second derivative at point t. - - - - Indefinite integral at point t. NOT SUPPORTED. - - Point t to integrate at. - - - - Definite integral between points a and b. NOT SUPPORTED. - - Left bound of the integration interval [a,b]. - Right bound of the integration interval [a,b]. - - - - Rational Interpolation (with poles) using Roland Bulirsch and Josef Stoer's Algorithm. - - - - This algorithm supports neither differentiation nor integration. - - - - - Sample Points t, sorted ascendingly. - Sample Values x(t), sorted ascendingly by x. - - - - Create a Bulirsch-Stoer rational interpolation from a set of (x,y) value pairs, sorted ascendingly by x. - - - - - Create a Bulirsch-Stoer rational interpolation from an unsorted set of (x,y) value pairs. - WARNING: Works in-place and can thus causes the data array to be reordered. - - - - - Create a Bulirsch-Stoer rational interpolation from an unsorted set of (x,y) value pairs. - - - - - Gets a value indicating whether the algorithm supports differentiation (interpolated derivative). - - - - - Gets a value indicating whether the algorithm supports integration (interpolated quadrature). - - - - - Interpolate at point t. - - Point t to interpolate at. - Interpolated value x(t). - - - - Differentiate at point t. NOT SUPPORTED. - - Point t to interpolate at. - Interpolated first derivative at point t. - - - - Differentiate twice at point t. NOT SUPPORTED. - - Point t to interpolate at. - Interpolated second derivative at point t. - - - - Indefinite integral at point t. NOT SUPPORTED. - - Point t to integrate at. - - - - Definite integral between points a and b. NOT SUPPORTED. - - Left bound of the integration interval [a,b]. - Right bound of the integration interval [a,b]. - - - - Cubic Spline Interpolation. - - Supports both differentiation and integration. - - - sample points (N+1), sorted ascending - Zero order spline coefficients (N) - First order spline coefficients (N) - second order spline coefficients (N) - third order spline coefficients (N) - - - - Create a Hermite cubic spline interpolation from a set of (x,y) value pairs and their slope (first derivative), sorted ascendingly by x. - - - - - Create a Hermite cubic spline interpolation from an unsorted set of (x,y) value pairs and their slope (first derivative). - WARNING: Works in-place and can thus causes the data array to be reordered. - - - - - Create a Hermite cubic spline interpolation from an unsorted set of (x,y) value pairs and their slope (first derivative). - - - - - Create an Akima cubic spline interpolation from a set of (x,y) value pairs, sorted ascendingly by x. - Akima splines are robust to outliers. - - - - - Create an Akima cubic spline interpolation from an unsorted set of (x,y) value pairs. - Akima splines are robust to outliers. - WARNING: Works in-place and can thus causes the data array to be reordered. - - - - - Create an Akima cubic spline interpolation from an unsorted set of (x,y) value pairs. - Akima splines are robust to outliers. - - - - - Create a piecewise cubic Hermite interpolating polynomial from an unsorted set of (x,y) value pairs. - Monotone-preserving interpolation with continuous first derivative. - - - - - Create a piecewise cubic Hermite interpolating polynomial from an unsorted set of (x,y) value pairs. - Monotone-preserving interpolation with continuous first derivative. - WARNING: Works in-place and can thus causes the data array to be reordered. - - - - - Create a piecewise cubic Hermite interpolating polynomial from an unsorted set of (x,y) value pairs. - Monotone-preserving interpolation with continuous first derivative. - - - - - Create a cubic spline interpolation from a set of (x,y) value pairs, sorted ascendingly by x, - and custom boundary/termination conditions. - - - - - Create a cubic spline interpolation from an unsorted set of (x,y) value pairs and custom boundary/termination conditions. - WARNING: Works in-place and can thus causes the data array to be reordered. - - - - - Create a cubic spline interpolation from an unsorted set of (x,y) value pairs and custom boundary/termination conditions. - - - - - Create a natural cubic spline interpolation from a set of (x,y) value pairs - and zero second derivatives at the two boundaries, sorted ascendingly by x. - - - - - Create a natural cubic spline interpolation from an unsorted set of (x,y) value pairs - and zero second derivatives at the two boundaries. - WARNING: Works in-place and can thus causes the data array to be reordered. - - - - - Create a natural cubic spline interpolation from an unsorted set of (x,y) value pairs - and zero second derivatives at the two boundaries. - - - - - Three-Point Differentiation Helper. - - Sample Points t. - Sample Values x(t). - Index of the point of the differentiation. - Index of the first sample. - Index of the second sample. - Index of the third sample. - The derivative approximation. - - - - Tridiagonal Solve Helper. - - The a-vector[n]. - The b-vector[n], will be modified by this function. - The c-vector[n]. - The d-vector[n], will be modified by this function. - The x-vector[n] - - - - Gets a value indicating whether the algorithm supports differentiation (interpolated derivative). - - - - - Gets a value indicating whether the algorithm supports integration (interpolated quadrature). - - - - - Interpolate at point t. - - Point t to interpolate at. - Interpolated value x(t). - - - - Differentiate at point t. - - Point t to interpolate at. - Interpolated first derivative at point t. - - - - Differentiate twice at point t. - - Point t to interpolate at. - Interpolated second derivative at point t. - - - - Indefinite integral at point t. - - Point t to integrate at. - - - - Definite integral between points a and b. - - Left bound of the integration interval [a,b]. - Right bound of the integration interval [a,b]. - - - - Find the index of the greatest sample point smaller than t, - or the left index of the closest segment for extrapolation. - - - - - Gets all the t values where the derivative is 0 - see: https://mathworld.wolfram.com/StationaryPoint.html - - An array of t values (in the domain of the function) where the derivative of the spline is 0 - - - - Returns the t values in the domain of the spline for which it takes the minimum and maximum value. - - A tuple containing the t value for which the spline is minimum in the first component and maximum in the second component - - - - Interpolation within the range of a discrete set of known data points. - - - - - Gets a value indicating whether the algorithm supports differentiation (interpolated derivative). - - - - - Gets a value indicating whether the algorithm supports integration (interpolated quadrature). - - - - - Interpolate at point t. - - Point t to interpolate at. - Interpolated value x(t). - - - - Differentiate at point t. - - Point t to interpolate at. - Interpolated first derivative at point t. - - - - Differentiate twice at point t. - - Point t to interpolate at. - Interpolated second derivative at point t. - - - - Indefinite integral at point t. - - Point t to integrate at. - - - - Definite integral between points a and b. - - Left bound of the integration interval [a,b]. - Right bound of the integration interval [a,b]. - - - - Piece-wise Linear Interpolation. - - Supports both differentiation and integration. - - - Sample points (N+1), sorted ascending - Sample values (N or N+1) at the corresponding points; intercept, zero order coefficients - Slopes (N) at the sample points (first order coefficients): N - - - - Create a linear spline interpolation from a set of (x,y) value pairs, sorted ascendingly by x. - - - - - Create a linear spline interpolation from an unsorted set of (x,y) value pairs. - WARNING: Works in-place and can thus causes the data array to be reordered. - - - - - Create a linear spline interpolation from an unsorted set of (x,y) value pairs. - - - - - Gets a value indicating whether the algorithm supports differentiation (interpolated derivative). - - - - - Gets a value indicating whether the algorithm supports integration (interpolated quadrature). - - - - - Interpolate at point t. - - Point t to interpolate at. - Interpolated value x(t). - - - - Differentiate at point t. - - Point t to interpolate at. - Interpolated first derivative at point t. - - - - Differentiate twice at point t. - - Point t to interpolate at. - Interpolated second derivative at point t. - - - - Indefinite integral at point t. - - Point t to integrate at. - - - - Definite integral between points a and b. - - Left bound of the integration interval [a,b]. - Right bound of the integration interval [a,b]. - - - - Find the index of the greatest sample point smaller than t, - or the left index of the closest segment for extrapolation. - - - - - Piece-wise Log-Linear Interpolation - - This algorithm supports differentiation, not integration. - - - - Internal Spline Interpolation - - - - Sample points (N), sorted ascending - Natural logarithm of the sample values (N) at the corresponding points - - - - Create a piecewise log-linear interpolation from a set of (x,y) value pairs, sorted ascendingly by x. - - - - - Create a piecewise log-linear interpolation from an unsorted set of (x,y) value pairs. - WARNING: Works in-place and can thus causes the data array to be reordered and modified. - - - - - Create a piecewise log-linear interpolation from an unsorted set of (x,y) value pairs. - - - - - Gets a value indicating whether the algorithm supports differentiation (interpolated derivative). - - - - - Gets a value indicating whether the algorithm supports integration (interpolated quadrature). - - - - - Interpolate at point t. - - Point t to interpolate at. - Interpolated value x(t). - - - - Differentiate at point t. - - Point t to interpolate at. - Interpolated first derivative at point t. - - - - Differentiate twice at point t. - - Point t to interpolate at. - Interpolated second derivative at point t. - - - - Indefinite integral at point t. - - Point t to integrate at. - - - - Definite integral between points a and b. - - Left bound of the integration interval [a,b]. - Right bound of the integration interval [a,b]. - - - - Lagrange Polynomial Interpolation using Neville's Algorithm. - - - - This algorithm supports differentiation, but doesn't support integration. - - - When working with equidistant or Chebyshev sample points it is - recommended to use the barycentric algorithms specialized for - these cases instead of this arbitrary Neville algorithm. - - - - - Sample Points t, sorted ascendingly. - Sample Values x(t), sorted ascendingly by x. - - - - Create a Neville polynomial interpolation from a set of (x,y) value pairs, sorted ascendingly by x. - - - - - Create a Neville polynomial interpolation from an unsorted set of (x,y) value pairs. - WARNING: Works in-place and can thus causes the data array to be reordered. - - - - - Create a Neville polynomial interpolation from an unsorted set of (x,y) value pairs. - - - - - Gets a value indicating whether the algorithm supports differentiation (interpolated derivative). - - - - - Gets a value indicating whether the algorithm supports integration (interpolated quadrature). - - - - - Interpolate at point t. - - Point t to interpolate at. - Interpolated value x(t). - - - - Differentiate at point t. - - Point t to interpolate at. - Interpolated first derivative at point t. - - - - Differentiate twice at point t. - - Point t to interpolate at. - Interpolated second derivative at point t. - - - - Indefinite integral at point t. NOT SUPPORTED. - - Point t to integrate at. - - - - Definite integral between points a and b. NOT SUPPORTED. - - Left bound of the integration interval [a,b]. - Right bound of the integration interval [a,b]. - - - - Quadratic Spline Interpolation. - - Supports both differentiation and integration. - - - sample points (N+1), sorted ascending - Zero order spline coefficients (N) - First order spline coefficients (N) - second order spline coefficients (N) - - - - Gets a value indicating whether the algorithm supports differentiation (interpolated derivative). - - - - - Gets a value indicating whether the algorithm supports integration (interpolated quadrature). - - - - - Interpolate at point t. - - Point t to interpolate at. - Interpolated value x(t). - - - - Differentiate at point t. - - Point t to interpolate at. - Interpolated first derivative at point t. - - - - Differentiate twice at point t. - - Point t to interpolate at. - Interpolated second derivative at point t. - - - - Indefinite integral at point t. - - Point t to integrate at. - - - - Definite integral between points a and b. - - Left bound of the integration interval [a,b]. - Right bound of the integration interval [a,b]. - - - - Find the index of the greatest sample point smaller than t, - or the left index of the closest segment for extrapolation. - - - - - Left and right boundary conditions. - - - - - Natural Boundary (Zero second derivative). - - - - - Parabolically Terminated boundary. - - - - - Fixed first derivative at the boundary. - - - - - Fixed second derivative at the boundary. - - - - - A step function where the start of each segment is included, and the last segment is open-ended. - Segment i is [x_i, x_i+1) for i < N, or [x_i, infinity] for i = N. - The domain of the function is all real numbers, such that y = 0 where x <. - - Supports both differentiation and integration. - - - Sample points (N), sorted ascending - Samples values (N) of each segment starting at the corresponding sample point. - - - - Create a linear spline interpolation from a set of (x,y) value pairs, sorted ascendingly by x. - - - - - Create a linear spline interpolation from an unsorted set of (x,y) value pairs. - WARNING: Works in-place and can thus causes the data array to be reordered. - - - - - Create a linear spline interpolation from an unsorted set of (x,y) value pairs. - - - - - Interpolate at point t. - - Point t to interpolate at. - Interpolated value x(t). - - - - Differentiate at point t. - - Point t to interpolate at. - Interpolated first derivative at point t. - - - - Differentiate twice at point t. - - Point t to interpolate at. - Interpolated second derivative at point t. - - - - Indefinite integral at point t. - - Point t to integrate at. - - - - Definite integral between points a and b. - - Left bound of the integration interval [a,b]. - Right bound of the integration interval [a,b]. - - - - Find the index of the greatest sample point smaller than t. - - - - - Wraps an interpolation with a transformation of the interpolated values. - - Neither differentiation nor integration is supported. - - - - Create a linear spline interpolation from a set of (x,y) value pairs, sorted ascendingly by x. - - - - - Create a linear spline interpolation from an unsorted set of (x,y) value pairs. - WARNING: Works in-place and can thus causes the data array to be reordered and modified. - - - - - Create a linear spline interpolation from an unsorted set of (x,y) value pairs. - - - - - Gets a value indicating whether the algorithm supports differentiation (interpolated derivative). - - - - - Gets a value indicating whether the algorithm supports integration (interpolated quadrature). - - - - - Interpolate at point t. - - Point t to interpolate at. - Interpolated value x(t). - - - - Differentiate at point t. NOT SUPPORTED. - - Point t to interpolate at. - Interpolated first derivative at point t. - - - - Differentiate twice at point t. NOT SUPPORTED. - - Point t to interpolate at. - Interpolated second derivative at point t. - - - - Indefinite integral at point t. NOT SUPPORTED. - - Point t to integrate at. - - - - Definite integral between points a and b. NOT SUPPORTED. - - Left bound of the integration interval [a,b]. - Right bound of the integration interval [a,b]. - - - - A Matrix class with dense storage. The underlying storage is a one dimensional array in column-major order (column by column). - - - - - Number of rows. - - Using this instead of the RowCount property to speed up calculating - a matrix index in the data array. - - - - Number of columns. - - Using this instead of the ColumnCount property to speed up calculating - a matrix index in the data array. - - - - Gets the matrix's data. - - The matrix's data. - - - - Create a new dense matrix straight from an initialized matrix storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a new square dense matrix with the given number of rows and columns. - All cells of the matrix will be initialized to zero. - - If the order is less than one. - - - - Create a new dense matrix with the given number of rows and columns. - All cells of the matrix will be initialized to zero. - - If the row or column count is less than one. - - - - Create a new dense matrix with the given number of rows and columns directly binding to a raw array. - The array is assumed to be in column-major order (column by column) and is used directly without copying. - Very efficient, but changes to the array and the matrix will affect each other. - - - - - - Create a new dense matrix as a copy of the given other matrix. - This new matrix will be independent from the other matrix. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given two-dimensional array. - This new matrix will be independent from the provided array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable. - The enumerable is assumed to be in column-major order (column by column). - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable of enumerable columns. - Each enumerable in the master enumerable specifies a column. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable of enumerable columns. - Each enumerable in the master enumerable specifies a column. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given column arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given column arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given column vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given column vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable of enumerable rows. - Each enumerable in the master enumerable specifies a row. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable of enumerable rows. - Each enumerable in the master enumerable specifies a row. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given row arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given row arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given row vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given row vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix with the diagonal as a copy of the given vector. - This new matrix will be independent from the vector. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix with the diagonal as a copy of the given vector. - This new matrix will be independent from the vector. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix with the diagonal as a copy of the given array. - This new matrix will be independent from the array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix with the diagonal as a copy of the given array. - This new matrix will be independent from the array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix and initialize each value to the same provided value. - - - - - Create a new dense matrix and initialize each value using the provided init function. - - - - - Create a new diagonal dense matrix and initialize each diagonal value to the same provided value. - - - - - Create a new diagonal dense matrix and initialize each diagonal value using the provided init function. - - - - - Create a new square sparse identity matrix where each diagonal value is set to One. - - - - - Create a new dense matrix with values sampled from the provided random distribution. - - - - - Gets the matrix's data. - - The matrix's data. - - - Calculates the induced L1 norm of this matrix. - The maximum absolute column sum of the matrix. - - - Calculates the induced infinity norm of this matrix. - The maximum absolute row sum of the matrix. - - - Calculates the entry-wise Frobenius norm of this matrix. - The square root of the sum of the squared values. - - - - Negate each element of this matrix and place the results into the result matrix. - - The result of the negation. - - - - Add a scalar to each element of the matrix and stores the result in the result vector. - - The scalar to add. - The matrix to store the result of the addition. - - - - Adds another matrix to this matrix. - - The matrix to add to this matrix. - The matrix to store the result of add - If the other matrix is . - If the two matrices don't have the same dimensions. - - - - Subtracts a scalar from each element of the matrix and stores the result in the result vector. - - The scalar to subtract. - The matrix to store the result of the subtraction. - - - - Subtracts another matrix from this matrix. - - The matrix to subtract. - The matrix to store the result of the subtraction. - - - - Multiplies each element of the matrix by a scalar and places results into the result matrix. - - The scalar to multiply the matrix with. - The matrix to store the result of the multiplication. - - - - Multiplies this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with transpose of another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Divides each element of the matrix by a scalar and places results into the result matrix. - - The scalar to divide the matrix with. - The matrix to store the result of the division. - - - - Pointwise multiplies this matrix with another matrix and stores the result into the result matrix. - - The matrix to pointwise multiply with this one. - The matrix to store the result of the pointwise multiplication. - - - - Pointwise divide this matrix by another matrix and stores the result into the result matrix. - - The matrix to pointwise divide this one by. - The matrix to store the result of the pointwise division. - - - - Pointwise raise this matrix to an exponent and store the result into the result matrix. - - The exponent to raise this matrix values to. - The vector to store the result of the pointwise power. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for the given divisor each element of the matrix. - - The scalar denominator to use. - Matrix to store the results in. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for the given dividend for each element of the matrix. - - The scalar numerator to use. - A vector to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for the given divisor each element of the matrix. - - The scalar denominator to use. - Matrix to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for the given dividend for each element of the matrix. - - The scalar numerator to use. - A vector to store the results in. - - - - Computes the trace of this matrix. - - The trace of this matrix - If the matrix is not square - - - - Adds two matrices together and returns the results. - - This operator will allocate new memory for the result. It will - choose the representation of either or depending on which - is denser. - The left matrix to add. - The right matrix to add. - The result of the addition. - If and don't have the same dimensions. - If or is . - - - - Returns a Matrix containing the same values of . - - The matrix to get the values from. - A matrix containing a the same values as . - If is . - - - - Subtracts two matrices together and returns the results. - - This operator will allocate new memory for the result. It will - choose the representation of either or depending on which - is denser. - The left matrix to subtract. - The right matrix to subtract. - The result of the addition. - If and don't have the same dimensions. - If or is . - - - - Negates each element of the matrix. - - The matrix to negate. - A matrix containing the negated values. - If is . - - - - Multiplies a Matrix by a constant and returns the result. - - The matrix to multiply. - The constant to multiply the matrix by. - The result of the multiplication. - If is . - - - - Multiplies a Matrix by a constant and returns the result. - - The matrix to multiply. - The constant to multiply the matrix by. - The result of the multiplication. - If is . - - - - Multiplies two matrices. - - This operator will allocate new memory for the result. It will - choose the representation of either or depending on which - is denser. - The left matrix to multiply. - The right matrix to multiply. - The result of multiplication. - If or is . - If the dimensions of or don't conform. - - - - Multiplies a Matrix and a Vector. - - The matrix to multiply. - The vector to multiply. - The result of multiplication. - If or is . - - - - Multiplies a Vector and a Matrix. - - The vector to multiply. - The matrix to multiply. - The result of multiplication. - If or is . - - - - Multiplies a Matrix by a constant and returns the result. - - The matrix to multiply. - The constant to multiply the matrix by. - The result of the multiplication. - If is . - - - - Evaluates whether this matrix is symmetric. - - - - - A vector using dense storage. - - - - - Number of elements - - - - - Gets the vector's data. - - - - - Create a new dense vector straight from an initialized vector storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a new dense vector with the given length. - All cells of the vector will be initialized to zero. - - If length is less than one. - - - - Create a new dense vector directly binding to a raw array. - The array is used directly without copying. - Very efficient, but changes to the array and the vector will affect each other. - - - - - Create a new dense vector as a copy of the given other vector. - This new vector will be independent from the other vector. - A new memory block will be allocated for storing the vector. - - - - - Create a new dense vector as a copy of the given array. - This new vector will be independent from the array. - A new memory block will be allocated for storing the vector. - - - - - Create a new dense vector as a copy of the given enumerable. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new dense vector as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new dense vector as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new dense vector and initialize each value using the provided value. - - - - - Create a new dense vector and initialize each value using the provided init function. - - - - - Create a new dense vector with values sampled from the provided random distribution. - - - - - Gets the vector's data. - - The vector's data. - - - - Returns a reference to the internal data structure. - - The DenseVector whose internal data we are - returning. - - A reference to the internal date of the given vector. - - - - - Returns a vector bound directly to a reference of the provided array. - - The array to bind to the DenseVector object. - - A DenseVector whose values are bound to the given array. - - - - - Adds a scalar to each element of the vector and stores the result in the result vector. - - The scalar to add. - The vector to store the result of the addition. - - - - Adds another vector to this vector and stores the result into the result vector. - - The vector to add to this one. - The vector to store the result of the addition. - - - - Adds two Vectors together and returns the results. - - One of the vectors to add. - The other vector to add. - The result of the addition. - If and are not the same size. - If or is . - - - - Subtracts a scalar from each element of the vector and stores the result in the result vector. - - The scalar to subtract. - The vector to store the result of the subtraction. - - - - Subtracts another vector to this vector and stores the result into the result vector. - - The vector to subtract from this one. - The vector to store the result of the subtraction. - - - - Returns a Vector containing the negated values of . - - The vector to get the values from. - A vector containing the negated values as . - If is . - - - - Subtracts two Vectors and returns the results. - - The vector to subtract from. - The vector to subtract. - The result of the subtraction. - If and are not the same size. - If or is . - - - - Negates vector and saves result to - - Target vector - - - - Multiplies a scalar to each element of the vector and stores the result in the result vector. - - The scalar to multiply. - The vector to store the result of the multiplication. - - - - - Computes the dot product between this vector and another vector. - - The other vector. - The sum of a[i]*b[i] for all i. - - - - Multiplies a vector with a scalar. - - The vector to scale. - The scalar value. - The result of the multiplication. - If is . - - - - Multiplies a vector with a scalar. - - The scalar value. - The vector to scale. - The result of the multiplication. - If is . - - - - Computes the dot product between two Vectors. - - The left row vector. - The right column vector. - The dot product between the two vectors. - If and are not the same size. - If or is . - - - - Divides a vector with a scalar. - - The vector to divide. - The scalar value. - The result of the division. - If is . - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for each element of the vector for the given divisor. - - The divisor to use. - A vector to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for each element of the vector for the given divisor. - - The divisor to use. - A vector to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - of each element of the vector of the given divisor. - - The vector whose elements we want to compute the remainder of. - The divisor to use, - If is . - - - - Returns the index of the absolute minimum element. - - The index of absolute minimum element. - - - - Returns the index of the absolute maximum element. - - The index of absolute maximum element. - - - - Returns the index of the maximum element. - - The index of maximum element. - - - - Returns the index of the minimum element. - - The index of minimum element. - - - - Computes the sum of the vector's elements. - - The sum of the vector's elements. - - - - Calculates the L1 norm of the vector, also known as Manhattan norm. - - The sum of the absolute values. - - - - Calculates the L2 norm of the vector, also known as Euclidean norm. - - The square root of the sum of the squared values. - - - - Calculates the infinity norm of the vector. - - The maximum absolute value. - - - - Computes the p-Norm. - - The p value. - Scalar ret = ( ∑|this[i]|^p )^(1/p) - - - - Pointwise divide this vector with another vector and stores the result into the result vector. - - The vector to pointwise divide this one by. - The vector to store the result of the pointwise division. - - - - Pointwise divide this vector with another vector and stores the result into the result vector. - - The vector to pointwise divide this one by. - The vector to store the result of the pointwise division. - - - - - Pointwise raise this vector to an exponent vector and store the result into the result vector. - - The exponent vector to raise this vector values to. - The vector to store the result of the pointwise power. - - - - Creates a double dense vector based on a string. The string can be in the following formats (without the - quotes): 'n', 'n,n,..', '(n,n,..)', '[n,n,...]', where n is a double. - - - A double dense vector containing the values specified by the given string. - - - the string to parse. - - - An that supplies culture-specific formatting information. - - - - - Converts the string representation of a real dense vector to double-precision dense vector equivalent. - A return value indicates whether the conversion succeeded or failed. - - - A string containing a real vector to convert. - - - The parsed value. - - - If the conversion succeeds, the result will contain a complex number equivalent to value. - Otherwise the result will be null. - - - - - Converts the string representation of a real dense vector to double-precision dense vector equivalent. - A return value indicates whether the conversion succeeded or failed. - - - A string containing a real vector to convert. - - - An that supplies culture-specific formatting information about value. - - - The parsed value. - - - If the conversion succeeds, the result will contain a complex number equivalent to value. - Otherwise the result will be null. - - - - - A matrix type for diagonal matrices. - - - Diagonal matrices can be non-square matrices but the diagonal always starts - at element 0,0. A diagonal matrix will throw an exception if non diagonal - entries are set. The exception to this is when the off diagonal elements are - 0.0 or NaN; these settings will cause no change to the diagonal matrix. - - - - - Gets the matrix's data. - - The matrix's data. - - - - Create a new diagonal matrix straight from an initialized matrix storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a new square diagonal matrix with the given number of rows and columns. - All cells of the matrix will be initialized to zero. - - If the order is less than one. - - - - Create a new diagonal matrix with the given number of rows and columns. - All cells of the matrix will be initialized to zero. - - If the row or column count is less than one. - - - - Create a new diagonal matrix with the given number of rows and columns. - All diagonal cells of the matrix will be initialized to the provided value, all non-diagonal ones to zero. - - If the row or column count is less than one. - - - - Create a new diagonal matrix with the given number of rows and columns directly binding to a raw array. - The array is assumed to contain the diagonal elements only and is used directly without copying. - Very efficient, but changes to the array and the matrix will affect each other. - - - - - Create a new diagonal matrix as a copy of the given other matrix. - This new matrix will be independent from the other matrix. - The matrix to copy from must be diagonal as well. - A new memory block will be allocated for storing the matrix. - - - - - Create a new diagonal matrix as a copy of the given two-dimensional array. - This new matrix will be independent from the provided array. - The array to copy from must be diagonal as well. - A new memory block will be allocated for storing the matrix. - - - - - Create a new diagonal matrix and initialize each diagonal value from the provided indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new diagonal matrix and initialize each diagonal value from the provided indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new diagonal matrix and initialize each diagonal value from the provided enumerable. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new diagonal matrix and initialize each diagonal value using the provided init function. - - - - - Create a new square sparse identity matrix where each diagonal value is set to One. - - - - - Create a new diagonal matrix with diagonal values sampled from the provided random distribution. - - - - - Negate each element of this matrix and place the results into the result matrix. - - The result of the negation. - - - - Adds another matrix to this matrix. - - The matrix to add to this matrix. - The matrix to store the result of the addition. - If the two matrices don't have the same dimensions. - - - - Subtracts another matrix from this matrix. - - The matrix to subtract. - The matrix to store the result of the subtraction. - If the two matrices don't have the same dimensions. - - - - Multiplies each element of the matrix by a scalar and places results into the result matrix. - - The scalar to multiply the matrix with. - The matrix to store the result of the multiplication. - If the result matrix's dimensions are not the same as this matrix. - - - - Multiplies this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with transpose of another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Divides each element of the matrix by a scalar and places results into the result matrix. - - The scalar to divide the matrix with. - The matrix to store the result of the division. - - - - Divides a scalar by each element of the matrix and stores the result in the result matrix. - - The scalar to add. - The matrix to store the result of the division. - - - - Computes the determinant of this matrix. - - The determinant of this matrix. - - - - Returns the elements of the diagonal in a . - - The elements of the diagonal. - For non-square matrices, the method returns Min(Rows, Columns) elements where - i == j (i is the row index, and j is the column index). - - - - Copies the values of the given array to the diagonal. - - The array to copy the values from. The length of the vector should be - Min(Rows, Columns). - If the length of does not - equal Min(Rows, Columns). - For non-square matrices, the elements of are copied to - this[i,i]. - - - - Copies the values of the given to the diagonal. - - The vector to copy the values from. The length of the vector should be - Min(Rows, Columns). - If the length of does not - equal Min(Rows, Columns). - For non-square matrices, the elements of are copied to - this[i,i]. - - - Calculates the induced L1 norm of this matrix. - The maximum absolute column sum of the matrix. - - - Calculates the induced L2 norm of the matrix. - The largest singular value of the matrix. - - - Calculates the induced infinity norm of this matrix. - The maximum absolute row sum of the matrix. - - - Calculates the entry-wise Frobenius norm of this matrix. - The square root of the sum of the squared values. - - - Calculates the condition number of this matrix. - The condition number of the matrix. - - - Computes the inverse of this matrix. - If is not a square matrix. - If is singular. - The inverse of this matrix. - - - - Returns a new matrix containing the lower triangle of this matrix. - - The lower triangle of this matrix. - - - - Puts the lower triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If the result matrix's dimensions are not the same as this matrix. - - - - Returns a new matrix containing the lower triangle of this matrix. The new matrix - does not contain the diagonal elements of this matrix. - - The lower triangle of this matrix. - - - - Puts the strictly lower triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If the result matrix's dimensions are not the same as this matrix. - - - - Returns a new matrix containing the upper triangle of this matrix. - - The upper triangle of this matrix. - - - - Puts the upper triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If the result matrix's dimensions are not the same as this matrix. - - - - Returns a new matrix containing the upper triangle of this matrix. The new matrix - does not contain the diagonal elements of this matrix. - - The upper triangle of this matrix. - - - - Puts the strictly upper triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If the result matrix's dimensions are not the same as this matrix. - - - - Creates a matrix that contains the values from the requested sub-matrix. - - The row to start copying from. - The number of rows to copy. Must be positive. - The column to start copying from. - The number of columns to copy. Must be positive. - The requested sub-matrix. - If: is - negative, or greater than or equal to the number of rows. - is negative, or greater than or equal to the number - of columns. - (columnIndex + columnLength) >= Columns - (rowIndex + rowLength) >= Rows - If or - is not positive. - - - - Permute the columns of a matrix according to a permutation. - - The column permutation to apply to this matrix. - Always thrown - Permutation in diagonal matrix are senseless, because of matrix nature - - - - Permute the rows of a matrix according to a permutation. - - The row permutation to apply to this matrix. - Always thrown - Permutation in diagonal matrix are senseless, because of matrix nature - - - - Evaluates whether this matrix is symmetric. - - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for the given divisor each element of the matrix. - - The scalar denominator to use. - Matrix to store the results in. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for the given dividend for each element of the matrix. - - The scalar numerator to use. - A vector to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for the given divisor each element of the matrix. - - The scalar denominator to use. - Matrix to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for the given dividend for each element of the matrix. - - The scalar numerator to use. - A vector to store the results in. - - - - A class which encapsulates the functionality of a Cholesky factorization. - For a symmetric, positive definite matrix A, the Cholesky factorization - is an lower triangular matrix L so that A = L*L'. - - - The computation of the Cholesky factorization is done at construction time. If the matrix is not symmetric - or positive definite, the constructor will throw an exception. - - - - - Gets the determinant of the matrix for which the Cholesky matrix was computed. - - - - - Gets the log determinant of the matrix for which the Cholesky matrix was computed. - - - - - A class which encapsulates the functionality of a Cholesky factorization for dense matrices. - For a symmetric, positive definite matrix A, the Cholesky factorization - is an lower triangular matrix L so that A = L*L'. - - - The computation of the Cholesky factorization is done at construction time. If the matrix is not symmetric - or positive definite, the constructor will throw an exception. - - - - - Initializes a new instance of the class. This object will compute the - Cholesky factorization when the constructor is called and cache it's factorization. - - The matrix to factor. - If is null. - If is not a square matrix. - If is not positive definite. - - - - Solves a system of linear equations, AX = B, with A Cholesky factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A Cholesky factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Calculates the Cholesky factorization of the input matrix. - - The matrix to be factorized. - If is null. - If is not a square matrix. - If is not positive definite. - If does not have the same dimensions as the existing factor. - - - - Eigenvalues and eigenvectors of a real matrix. - - - If A is symmetric, then A = V*D*V' where the eigenvalue matrix D is - diagonal and the eigenvector matrix V is orthogonal. - I.e. A = V*D*V' and V*VT=I. - If A is not symmetric, then the eigenvalue matrix D is block diagonal - with the real eigenvalues in 1-by-1 blocks and any complex eigenvalues, - lambda + i*mu, in 2-by-2 blocks, [lambda, mu; -mu, lambda]. The - columns of V represent the eigenvectors in the sense that A*V = V*D, - i.e. A.Multiply(V) equals V.Multiply(D). The matrix V may be badly - conditioned, or even singular, so the validity of the equation - A = V*D*Inverse(V) depends upon V.Condition(). - - - - - Initializes a new instance of the class. This object will compute the - the eigenvalue decomposition when the constructor is called and cache it's decomposition. - - The matrix to factor. - If it is known whether the matrix is symmetric or not the routine can skip checking it itself. - If is null. - If EVD algorithm failed to converge with matrix . - - - - Solves a system of linear equations, AX = B, with A SVD factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A EVD factorized. - - The right hand side vector, b. - The left hand side , x. - - - - A class which encapsulates the functionality of the QR decomposition Modified Gram-Schmidt Orthogonalization. - Any real square matrix A may be decomposed as A = QR where Q is an orthogonal mxn matrix and R is an nxn upper triangular matrix. - - - The computation of the QR decomposition is done at construction time by modified Gram-Schmidt Orthogonalization. - - - - - Initializes a new instance of the class. This object creates an orthogonal matrix - using the modified Gram-Schmidt method. - - The matrix to factor. - If is null. - If row count is less then column count - If is rank deficient - - - - Factorize matrix using the modified Gram-Schmidt method. - - Initial matrix. On exit is replaced by Q. - Number of rows in Q. - Number of columns in Q. - On exit is filled by R. - - - - Solves a system of linear equations, AX = B, with A QR factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A QR factorized. - - The right hand side vector, b. - The left hand side , x. - - - - A class which encapsulates the functionality of an LU factorization. - For a matrix A, the LU factorization is a pair of lower triangular matrix L and - upper triangular matrix U so that A = L*U. - - - The computation of the LU factorization is done at construction time. - - - - - Initializes a new instance of the class. This object will compute the - LU factorization when the constructor is called and cache it's factorization. - - The matrix to factor. - If is null. - If is not a square matrix. - - - - Solves a system of linear equations, AX = B, with A LU factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A LU factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Returns the inverse of this matrix. The inverse is calculated using LU decomposition. - - The inverse of this matrix. - - - - A class which encapsulates the functionality of the QR decomposition. - Any real square matrix A may be decomposed as A = QR where Q is an orthogonal matrix - (its columns are orthogonal unit vectors meaning QTQ = I) and R is an upper triangular matrix - (also called right triangular matrix). - - - The computation of the QR decomposition is done at construction time by Householder transformation. - - - - - Gets or sets Tau vector. Contains additional information on Q - used for native solver. - - - - - Initializes a new instance of the class. This object will compute the - QR factorization when the constructor is called and cache it's factorization. - - The matrix to factor. - The type of QR factorization to perform. - If is null. - If row count is less then column count - - - - Solves a system of linear equations, AX = B, with A QR factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A QR factorized. - - The right hand side vector, b. - The left hand side , x. - - - - A class which encapsulates the functionality of the singular value decomposition (SVD) for . - Suppose M is an m-by-n matrix whose entries are real numbers. - Then there exists a factorization of the form M = UΣVT where: - - U is an m-by-m unitary matrix; - - Σ is m-by-n diagonal matrix with nonnegative real numbers on the diagonal; - - VT denotes transpose of V, an n-by-n unitary matrix; - Such a factorization is called a singular-value decomposition of M. A common convention is to order the diagonal - entries Σ(i,i) in descending order. In this case, the diagonal matrix Σ is uniquely determined - by M (though the matrices U and V are not). The diagonal entries of Σ are known as the singular values of M. - - - The computation of the singular value decomposition is done at construction time. - - - - - Initializes a new instance of the class. This object will compute the - the singular value decomposition when the constructor is called and cache it's decomposition. - - The matrix to factor. - Compute the singular U and VT vectors or not. - If is null. - If SVD algorithm failed to converge with matrix . - - - - Solves a system of linear equations, AX = B, with A SVD factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A SVD factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Eigenvalues and eigenvectors of a real matrix. - - - If A is symmetric, then A = V*D*V' where the eigenvalue matrix D is - diagonal and the eigenvector matrix V is orthogonal. - I.e. A = V*D*V' and V*VT=I. - If A is not symmetric, then the eigenvalue matrix D is block diagonal - with the real eigenvalues in 1-by-1 blocks and any complex eigenvalues, - lambda + i*mu, in 2-by-2 blocks, [lambda, mu; -mu, lambda]. The - columns of V represent the eigenvectors in the sense that A*V = V*D, - i.e. A.Multiply(V) equals V.Multiply(D). The matrix V may be badly - conditioned, or even singular, so the validity of the equation - A = V*D*Inverse(V) depends upon V.Condition(). - Matrix V is encoded in the property EigenVectors in the way that: - - column corresponding to real eigenvalue represents real eigenvector, - - columns corresponding to the pair of complex conjugate eigenvalues - lambda[i] and lambda[i+1] encode real and imaginary parts of eigenvectors. - - - - - Gets the absolute value of determinant of the square matrix for which the EVD was computed. - - - - - Gets the effective numerical matrix rank. - - The number of non-negligible singular values. - - - - Gets a value indicating whether the matrix is full rank or not. - - true if the matrix is full rank; otherwise false. - - - - A class which encapsulates the functionality of the QR decomposition Modified Gram-Schmidt Orthogonalization. - Any real square matrix A may be decomposed as A = QR where Q is an orthogonal mxn matrix and R is an nxn upper triangular matrix. - - - The computation of the QR decomposition is done at construction time by modified Gram-Schmidt Orthogonalization. - - - - - Gets the absolute determinant value of the matrix for which the QR matrix was computed. - - - - - Gets a value indicating whether the matrix is full rank or not. - - true if the matrix is full rank; otherwise false. - - - - A class which encapsulates the functionality of an LU factorization. - For a matrix A, the LU factorization is a pair of lower triangular matrix L and - upper triangular matrix U so that A = L*U. - In the Math.NET implementation we also store a set of pivot elements for increased - numerical stability. The pivot elements encode a permutation matrix P such that P*A = L*U. - - - The computation of the LU factorization is done at construction time. - - - - - Gets the determinant of the matrix for which the LU factorization was computed. - - - - - A class which encapsulates the functionality of the QR decomposition. - Any real square matrix A (m x n) may be decomposed as A = QR where Q is an orthogonal matrix - (its columns are orthogonal unit vectors meaning QTQ = I) and R is an upper triangular matrix - (also called right triangular matrix). - - - The computation of the QR decomposition is done at construction time by Householder transformation. - If a factorization is performed, the resulting Q matrix is an m x m matrix - and the R matrix is an m x n matrix. If a factorization is performed, the - resulting Q matrix is an m x n matrix and the R matrix is an n x n matrix. - - - - - Gets the absolute determinant value of the matrix for which the QR matrix was computed. - - - - - Gets a value indicating whether the matrix is full rank or not. - - true if the matrix is full rank; otherwise false. - - - - A class which encapsulates the functionality of the singular value decomposition (SVD). - Suppose M is an m-by-n matrix whose entries are real numbers. - Then there exists a factorization of the form M = UΣVT where: - - U is an m-by-m unitary matrix; - - Σ is m-by-n diagonal matrix with nonnegative real numbers on the diagonal; - - VT denotes transpose of V, an n-by-n unitary matrix; - Such a factorization is called a singular-value decomposition of M. A common convention is to order the diagonal - entries Σ(i,i) in descending order. In this case, the diagonal matrix Σ is uniquely determined - by M (though the matrices U and V are not). The diagonal entries of Σ are known as the singular values of M. - - - The computation of the singular value decomposition is done at construction time. - - - - - Gets the effective numerical matrix rank. - - The number of non-negligible singular values. - - - - Gets the two norm of the . - - The 2-norm of the . - - - - Gets the condition number max(S) / min(S) - - The condition number. - - - - Gets the determinant of the square matrix for which the SVD was computed. - - - - - A class which encapsulates the functionality of a Cholesky factorization for user matrices. - For a symmetric, positive definite matrix A, the Cholesky factorization - is an lower triangular matrix L so that A = L*L'. - - - The computation of the Cholesky factorization is done at construction time. If the matrix is not symmetric - or positive definite, the constructor will throw an exception. - - - - - Computes the Cholesky factorization in-place. - - On entry, the matrix to factor. On exit, the Cholesky factor matrix - If is null. - If is not a square matrix. - If is not positive definite. - - - - Initializes a new instance of the class. This object will compute the - Cholesky factorization when the constructor is called and cache it's factorization. - - The matrix to factor. - If is null. - If is not a square matrix. - If is not positive definite. - - - - Calculates the Cholesky factorization of the input matrix. - - The matrix to be factorized. - If is null. - If is not a square matrix. - If is not positive definite. - If does not have the same dimensions as the existing factor. - - - - Calculate Cholesky step - - Factor matrix - Number of rows - Column start - Total columns - Multipliers calculated previously - Number of available processors - - - - Solves a system of linear equations, AX = B, with A Cholesky factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A Cholesky factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Eigenvalues and eigenvectors of a real matrix. - - - If A is symmetric, then A = V*D*V' where the eigenvalue matrix D is - diagonal and the eigenvector matrix V is orthogonal. - I.e. A = V*D*V' and V*VT=I. - If A is not symmetric, then the eigenvalue matrix D is block diagonal - with the real eigenvalues in 1-by-1 blocks and any complex eigenvalues, - lambda + i*mu, in 2-by-2 blocks, [lambda, mu; -mu, lambda]. The - columns of V represent the eigenvectors in the sense that A*V = V*D, - i.e. A.Multiply(V) equals V.Multiply(D). The matrix V may be badly - conditioned, or even singular, so the validity of the equation - A = V*D*Inverse(V) depends upon V.Condition(). - - - - - Initializes a new instance of the class. This object will compute the - the eigenvalue decomposition when the constructor is called and cache it's decomposition. - - The matrix to factor. - If it is known whether the matrix is symmetric or not the routine can skip checking it itself. - If is null. - If EVD algorithm failed to converge with matrix . - - - - Symmetric Householder reduction to tridiagonal form. - - The eigen vectors to work on. - Arrays for internal storage of real parts of eigenvalues - Arrays for internal storage of imaginary parts of eigenvalues - Order of initial matrix - This is derived from the Algol procedures tred2 by - Bowdler, Martin, Reinsch, and Wilkinson, Handbook for - Auto. Comp., Vol.ii-Linear Algebra, and the corresponding - Fortran subroutine in EISPACK. - - - - Symmetric tridiagonal QL algorithm. - - The eigen vectors to work on. - Arrays for internal storage of real parts of eigenvalues - Arrays for internal storage of imaginary parts of eigenvalues - Order of initial matrix - This is derived from the Algol procedures tql2, by - Bowdler, Martin, Reinsch, and Wilkinson, Handbook for - Auto. Comp., Vol.ii-Linear Algebra, and the corresponding - Fortran subroutine in EISPACK. - - - - - Nonsymmetric reduction to Hessenberg form. - - The eigen vectors to work on. - Array for internal storage of nonsymmetric Hessenberg form. - Order of initial matrix - This is derived from the Algol procedures orthes and ortran, - by Martin and Wilkinson, Handbook for Auto. Comp., - Vol.ii-Linear Algebra, and the corresponding - Fortran subroutines in EISPACK. - - - - Nonsymmetric reduction from Hessenberg to real Schur form. - - The eigen vectors to work on. - Array for internal storage of nonsymmetric Hessenberg form. - Arrays for internal storage of real parts of eigenvalues - Arrays for internal storage of imaginary parts of eigenvalues - Order of initial matrix - This is derived from the Algol procedure hqr2, - by Martin and Wilkinson, Handbook for Auto. Comp., - Vol.ii-Linear Algebra, and the corresponding - Fortran subroutine in EISPACK. - - - - Complex scalar division X/Y. - - Real part of X - Imaginary part of X - Real part of Y - Imaginary part of Y - Division result as a number. - - - - Solves a system of linear equations, AX = B, with A SVD factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A EVD factorized. - - The right hand side vector, b. - The left hand side , x. - - - - A class which encapsulates the functionality of the QR decomposition Modified Gram-Schmidt Orthogonalization. - Any real square matrix A may be decomposed as A = QR where Q is an orthogonal mxn matrix and R is an nxn upper triangular matrix. - - - The computation of the QR decomposition is done at construction time by modified Gram-Schmidt Orthogonalization. - - - - - Initializes a new instance of the class. This object creates an orthogonal matrix - using the modified Gram-Schmidt method. - - The matrix to factor. - If is null. - If row count is less then column count - If is rank deficient - - - - Solves a system of linear equations, AX = B, with A QR factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A QR factorized. - - The right hand side vector, b. - The left hand side , x. - - - - A class which encapsulates the functionality of an LU factorization. - For a matrix A, the LU factorization is a pair of lower triangular matrix L and - upper triangular matrix U so that A = L*U. - - - The computation of the LU factorization is done at construction time. - - - - - Initializes a new instance of the class. This object will compute the - LU factorization when the constructor is called and cache it's factorization. - - The matrix to factor. - If is null. - If is not a square matrix. - - - - Solves a system of linear equations, AX = B, with A LU factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A LU factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Returns the inverse of this matrix. The inverse is calculated using LU decomposition. - - The inverse of this matrix. - - - - A class which encapsulates the functionality of the QR decomposition. - Any real square matrix A may be decomposed as A = QR where Q is an orthogonal matrix - (its columns are orthogonal unit vectors meaning QTQ = I) and R is an upper triangular matrix - (also called right triangular matrix). - - - The computation of the QR decomposition is done at construction time by Householder transformation. - - - - - Initializes a new instance of the class. This object will compute the - QR factorization when the constructor is called and cache it's factorization. - - The matrix to factor. - The QR factorization method to use. - If is null. - - - - Generate column from initial matrix to work array - - Initial matrix - The first row - Column index - Generated vector - - - - Perform calculation of Q or R - - Work array - Q or R matrices - The first row - The last row - The first column - The last column - Number of available CPUs - - - - Solves a system of linear equations, AX = B, with A QR factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A QR factorized. - - The right hand side vector, b. - The left hand side , x. - - - - A class which encapsulates the functionality of the singular value decomposition (SVD) for . - Suppose M is an m-by-n matrix whose entries are real numbers. - Then there exists a factorization of the form M = UΣVT where: - - U is an m-by-m unitary matrix; - - Σ is m-by-n diagonal matrix with nonnegative real numbers on the diagonal; - - VT denotes transpose of V, an n-by-n unitary matrix; - Such a factorization is called a singular-value decomposition of M. A common convention is to order the diagonal - entries Σ(i,i) in descending order. In this case, the diagonal matrix Σ is uniquely determined - by M (though the matrices U and V are not). The diagonal entries of Σ are known as the singular values of M. - - - The computation of the singular value decomposition is done at construction time. - - - - - Initializes a new instance of the class. This object will compute the - the singular value decomposition when the constructor is called and cache it's decomposition. - - The matrix to factor. - Compute the singular U and VT vectors or not. - If is null. - - - - - Calculates absolute value of multiplied on signum function of - - Double value z1 - Double value z2 - Result multiplication of signum function and absolute value - - - - Swap column and - - Source matrix - The number of rows in - Column A index to swap - Column B index to swap - - - - Scale column by starting from row - - Source matrix - The number of rows in - Column to scale - Row to scale from - Scale value - - - - Scale vector by starting from index - - Source vector - Row to scale from - Scale value - - - - Given the Cartesian coordinates (da, db) of a point p, these function return the parameters da, db, c, and s - associated with the Givens rotation that zeros the y-coordinate of the point. - - Provides the x-coordinate of the point p. On exit contains the parameter r associated with the Givens rotation - Provides the y-coordinate of the point p. On exit contains the parameter z associated with the Givens rotation - Contains the parameter c associated with the Givens rotation - Contains the parameter s associated with the Givens rotation - This is equivalent to the DROTG LAPACK routine. - - - - Calculate Norm 2 of the column in matrix starting from row - - Source matrix - The number of rows in - Column index - Start row index - Norm2 (Euclidean norm) of the column - - - - Calculate Norm 2 of the vector starting from index - - Source vector - Start index - Norm2 (Euclidean norm) of the vector - - - - Calculate dot product of and - - Source matrix - The number of rows in - Index of column A - Index of column B - Starting row index - Dot product value - - - - Performs rotation of points in the plane. Given two vectors x and y , - each vector element of these vectors is replaced as follows: x(i) = c*x(i) + s*y(i); y(i) = c*y(i) - s*x(i) - - Source matrix - The number of rows in - Index of column A - Index of column B - Scalar "c" value - Scalar "s" value - - - - Solves a system of linear equations, AX = B, with A SVD factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A SVD factorized. - - The right hand side vector, b. - The left hand side , x. - - - - double version of the class. - - - - - Initializes a new instance of the Matrix class. - - - - - Set all values whose absolute value is smaller than the threshold to zero. - - - - - Returns the conjugate transpose of this matrix. - - The conjugate transpose of this matrix. - - - - Puts the conjugate transpose of this matrix into the result matrix. - - - - - Complex conjugates each element of this matrix and place the results into the result matrix. - - The result of the conjugation. - - - - Negate each element of this matrix and place the results into the result matrix. - - The result of the negation. - - - - Add a scalar to each element of the matrix and stores the result in the result vector. - - The scalar to add. - The matrix to store the result of the addition. - - - - Adds another matrix to this matrix. - - The matrix to add to this matrix. - The matrix to store the result of the addition. - If the other matrix is . - If the two matrices don't have the same dimensions. - - - - Subtracts a scalar from each element of the vector and stores the result in the result vector. - - The scalar to subtract. - The matrix to store the result of the subtraction. - - - - Subtracts another matrix from this matrix. - - The matrix to subtract to this matrix. - The matrix to store the result of subtraction. - If the other matrix is . - If the two matrices don't have the same dimensions. - - - - Multiplies each element of the matrix by a scalar and places results into the result matrix. - - The scalar to multiply the matrix with. - The matrix to store the result of the multiplication. - - - - Multiplies this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Divides each element of the matrix by a scalar and places results into the result matrix. - - The scalar to divide the matrix with. - The matrix to store the result of the division. - - - - Divides a scalar by each element of the matrix and stores the result in the result matrix. - - The scalar to divide by each element of the matrix. - The matrix to store the result of the division. - - - - Multiplies this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with transpose of another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with the conjugate transpose of another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies the conjugate transpose of this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for the given divisor each element of the matrix. - - The scalar denominator to use. - Matrix to store the results in. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for the given dividend for each element of the matrix. - - The scalar numerator to use. - A vector to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for the given divisor each element of the matrix. - - The scalar denominator to use. - Matrix to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for the given dividend for each element of the matrix. - - The scalar numerator to use. - A vector to store the results in. - - - - Pointwise multiplies this matrix with another matrix and stores the result into the result matrix. - - The matrix to pointwise multiply with this one. - The matrix to store the result of the pointwise multiplication. - - - - Pointwise divide this matrix by another matrix and stores the result into the result matrix. - - The matrix to pointwise divide this one by. - The matrix to store the result of the pointwise division. - - - - Pointwise raise this matrix to an exponent and store the result into the result matrix. - - The exponent to raise this matrix values to. - The matrix to store the result of the pointwise power. - - - - Pointwise raise this matrix to an exponent and store the result into the result matrix. - - The exponent to raise this matrix values to. - The vector to store the result of the pointwise power. - - - - Pointwise canonical modulus, where the result has the sign of the divisor, - of this matrix with another matrix and stores the result into the result matrix. - - The pointwise denominator matrix to use - The result of the modulus. - - - - Pointwise remainder (% operator), where the result has the sign of the dividend, - of this matrix with another matrix and stores the result into the result matrix. - - The pointwise denominator matrix to use - The result of the modulus. - - - - Pointwise applies the exponential function to each value and stores the result into the result matrix. - - The matrix to store the result. - - - - Pointwise applies the natural logarithm function to each value and stores the result into the result matrix. - - The matrix to store the result. - - - - Computes the Moore-Penrose Pseudo-Inverse of this matrix. - - - - - Computes the trace of this matrix. - - The trace of this matrix - If the matrix is not square - - - Calculates the induced L1 norm of this matrix. - The maximum absolute column sum of the matrix. - - - Calculates the induced infinity norm of this matrix. - The maximum absolute row sum of the matrix. - - - Calculates the entry-wise Frobenius norm of this matrix. - The square root of the sum of the squared values. - - - - Calculates the p-norms of all row vectors. - Typical values for p are 1.0 (L1, Manhattan norm), 2.0 (L2, Euclidean norm) and positive infinity (infinity norm) - - - - - Calculates the p-norms of all column vectors. - Typical values for p are 1.0 (L1, Manhattan norm), 2.0 (L2, Euclidean norm) and positive infinity (infinity norm) - - - - - Normalizes all row vectors to a unit p-norm. - Typical values for p are 1.0 (L1, Manhattan norm), 2.0 (L2, Euclidean norm) and positive infinity (infinity norm) - - - - - Normalizes all column vectors to a unit p-norm. - Typical values for p are 1.0 (L1, Manhattan norm), 2.0 (L2, Euclidean norm) and positive infinity (infinity norm) - - - - - Calculates the value sum of each row vector. - - - - - Calculates the absolute value sum of each row vector. - - - - - Calculates the value sum of each column vector. - - - - - Calculates the absolute value sum of each column vector. - - - - - Evaluates whether this matrix is Hermitian (conjugate symmetric). - - - - - A Bi-Conjugate Gradient stabilized iterative matrix solver. - - - - The Bi-Conjugate Gradient Stabilized (BiCGStab) solver is an 'improvement' - of the standard Conjugate Gradient (CG) solver. Unlike the CG solver the - BiCGStab can be used on non-symmetric matrices.
    - Note that much of the success of the solver depends on the selection of the - proper preconditioner. -
    - - The Bi-CGSTAB algorithm was taken from:
    - Templates for the solution of linear systems: Building blocks - for iterative methods -
    - Richard Barrett, Michael Berry, Tony F. Chan, James Demmel, - June M. Donato, Jack Dongarra, Victor Eijkhout, Roldan Pozo, - Charles Romine and Henk van der Vorst -
    - Url: http://www.netlib.org/templates/Templates.html -
    - Algorithm is described in Chapter 2, section 2.3.8, page 27 -
    - - The example code below provides an indication of the possible use of the - solver. - -
    -
    - - - Calculates the true residual of the matrix equation Ax = b according to: residual = b - Ax - - Instance of the A. - Residual values in . - Instance of the x. - Instance of the b. - - - - Solves the matrix equation Ax = b, where A is the coefficient matrix, b is the - solution vector and x is the unknown vector. - - The coefficient , A. - The solution , b. - The result , x. - The iterator to use to control when to stop iterating. - The preconditioner to use for approximations. - - - - A composite matrix solver. The actual solver is made by a sequence of - matrix solvers. - - - - Solver based on:
    - Faster PDE-based simulations using robust composite linear solvers
    - S. Bhowmicka, P. Raghavan a,*, L. McInnes b, B. Norris
    - Future Generation Computer Systems, Vol 20, 2004, pp 373�387
    -
    - - Note that if an iterator is passed to this solver it will be used for all the sub-solvers. - -
    -
    - - - The collection of solvers that will be used - - - - - Solves the matrix equation Ax = b, where A is the coefficient matrix, b is the - solution vector and x is the unknown vector. - - The coefficient matrix, A. - The solution vector, b - The result vector, x - The iterator to use to control when to stop iterating. - The preconditioner to use for approximations. - - - - A diagonal preconditioner. The preconditioner uses the inverse - of the matrix diagonal as preconditioning values. - - - - - The inverse of the matrix diagonal. - - - - - Returns the decomposed matrix diagonal. - - The matrix diagonal. - - - - Initializes the preconditioner and loads the internal data structures. - - - The upon which this preconditioner is based. - If is . - If is not a square matrix. - - - - Approximates the solution to the matrix equation Ax = b. - - The right hand side vector. - The left hand side vector. Also known as the result vector. - - - - A Generalized Product Bi-Conjugate Gradient iterative matrix solver. - - - - The Generalized Product Bi-Conjugate Gradient (GPBiCG) solver is an - alternative version of the Bi-Conjugate Gradient stabilized (CG) solver. - Unlike the CG solver the GPBiCG solver can be used on - non-symmetric matrices.
    - Note that much of the success of the solver depends on the selection of the - proper preconditioner. -
    - - The GPBiCG algorithm was taken from:
    - GPBiCG(m,l): A hybrid of BiCGSTAB and GPBiCG methods with - efficiency and robustness -
    - S. Fujino -
    - Applied Numerical Mathematics, Volume 41, 2002, pp 107 - 117 -
    -
    - - The example code below provides an indication of the possible use of the - solver. - -
    -
    - - - Indicates the number of BiCGStab steps should be taken - before switching. - - - - - Indicates the number of GPBiCG steps should be taken - before switching. - - - - - Gets or sets the number of steps taken with the BiCgStab algorithm - before switching over to the GPBiCG algorithm. - - - - - Gets or sets the number of steps taken with the GPBiCG algorithm - before switching over to the BiCgStab algorithm. - - - - - Calculates the true residual of the matrix equation Ax = b according to: residual = b - Ax - - Instance of the A. - Residual values in . - Instance of the x. - Instance of the b. - - - - Decide if to do steps with BiCgStab - - Number of iteration - true if yes, otherwise false - - - - Solves the matrix equation Ax = b, where A is the coefficient matrix, b is the - solution vector and x is the unknown vector. - - The coefficient matrix, A. - The solution vector, b - The result vector, x - The iterator to use to control when to stop iterating. - The preconditioner to use for approximations. - - - - An incomplete, level 0, LU factorization preconditioner. - - - The ILU(0) algorithm was taken from:
    - Iterative methods for sparse linear systems
    - Yousef Saad
    - Algorithm is described in Chapter 10, section 10.3.2, page 275
    -
    -
    - - - The matrix holding the lower (L) and upper (U) matrices. The - decomposition matrices are combined to reduce storage. - - - - - Returns the upper triagonal matrix that was created during the LU decomposition. - - A new matrix containing the upper triagonal elements. - - - - Returns the lower triagonal matrix that was created during the LU decomposition. - - A new matrix containing the lower triagonal elements. - - - - Initializes the preconditioner and loads the internal data structures. - - The matrix upon which the preconditioner is based. - If is . - If is not a square matrix. - - - - Approximates the solution to the matrix equation Ax = b. - - The right hand side vector. - The left hand side vector. Also known as the result vector. - - - - This class performs an Incomplete LU factorization with drop tolerance - and partial pivoting. The drop tolerance indicates which additional entries - will be dropped from the factorized LU matrices. - - - The ILUTP-Mem algorithm was taken from:
    - ILUTP_Mem: a Space-Efficient Incomplete LU Preconditioner -
    - Tzu-Yi Chen, Department of Mathematics and Computer Science,
    - Pomona College, Claremont CA 91711, USA
    - Published in:
    - Lecture Notes in Computer Science
    - Volume 3046 / 2004
    - pp. 20 - 28
    - Algorithm is described in Section 2, page 22 -
    -
    - - - The default fill level. - - - - - The default drop tolerance. - - - - - The decomposed upper triangular matrix. - - - - - The decomposed lower triangular matrix. - - - - - The array containing the pivot values. - - - - - The fill level. - - - - - The drop tolerance. - - - - - The pivot tolerance. - - - - - Initializes a new instance of the class with the default settings. - - - - - Initializes a new instance of the class with the specified settings. - - - The amount of fill that is allowed in the matrix. The value is a fraction of - the number of non-zero entries in the original matrix. Values should be positive. - - - The absolute drop tolerance which indicates below what absolute value an entry - will be dropped from the matrix. A drop tolerance of 0.0 means that no values - will be dropped. Values should always be positive. - - - The pivot tolerance which indicates at what level pivoting will take place. A - value of 0.0 means that no pivoting will take place. - - - - - Gets or sets the amount of fill that is allowed in the matrix. The - value is a fraction of the number of non-zero entries in the original - matrix. The standard value is 200. - - - - Values should always be positive and can be higher than 1.0. A value lower - than 1.0 means that the eventual preconditioner matrix will have fewer - non-zero entries as the original matrix. A value higher than 1.0 means that - the eventual preconditioner can have more non-zero values than the original - matrix. - - - Note that any changes to the FillLevel after creating the preconditioner - will invalidate the created preconditioner and will require a re-initialization of - the preconditioner. - - - Thrown if a negative value is provided. - - - - Gets or sets the absolute drop tolerance which indicates below what absolute value - an entry will be dropped from the matrix. The standard value is 0.0001. - - - - The values should always be positive and can be larger than 1.0. A low value will - keep more small numbers in the preconditioner matrix. A high value will remove - more small numbers from the preconditioner matrix. - - - Note that any changes to the DropTolerance after creating the preconditioner - will invalidate the created preconditioner and will require a re-initialization of - the preconditioner. - - - Thrown if a negative value is provided. - - - - Gets or sets the pivot tolerance which indicates at what level pivoting will - take place. The standard value is 0.0 which means pivoting will never take place. - - - - The pivot tolerance is used to calculate if pivoting is necessary. Pivoting - will take place if any of the values in a row is bigger than the - diagonal value of that row divided by the pivot tolerance, i.e. pivoting - will take place if row(i,j) > row(i,i) / PivotTolerance for - any j that is not equal to i. - - - Note that any changes to the PivotTolerance after creating the preconditioner - will invalidate the created preconditioner and will require a re-initialization of - the preconditioner. - - - Thrown if a negative value is provided. - - - - Returns the upper triagonal matrix that was created during the LU decomposition. - - - This method is used for debugging purposes only and should normally not be used. - - A new matrix containing the upper triagonal elements. - - - - Returns the lower triagonal matrix that was created during the LU decomposition. - - - This method is used for debugging purposes only and should normally not be used. - - A new matrix containing the lower triagonal elements. - - - - Returns the pivot array. This array is not needed for normal use because - the preconditioner will return the solution vector values in the proper order. - - - This method is used for debugging purposes only and should normally not be used. - - The pivot array. - - - - Initializes the preconditioner and loads the internal data structures. - - - The upon which this preconditioner is based. Note that the - method takes a general matrix type. However internally the data is stored - as a sparse matrix. Therefore it is not recommended to pass a dense matrix. - - If is . - If is not a square matrix. - - - - Pivot elements in the according to internal pivot array - - Row to pivot in - - - - Was pivoting already performed - - Pivots already done - Current item to pivot - true if performed, otherwise false - - - - Swap columns in the - - Source . - First column index to swap - Second column index to swap - - - - Sort vector descending, not changing vector but placing sorted indices to - - Start sort form - Sort till upper bound - Array with sorted vector indices - Source - - - - Approximates the solution to the matrix equation Ax = b. - - The right hand side vector. - The left hand side vector. Also known as the result vector. - - - - Pivot elements in according to internal pivot array - - Source . - Result after pivoting. - - - - An element sort algorithm for the class. - - - This sort algorithm is used to sort the columns in a sparse matrix based on - the value of the element on the diagonal of the matrix. - - - - - Sorts the elements of the vector in decreasing - fashion. The vector itself is not affected. - - The starting index. - The stopping index. - An array that will contain the sorted indices once the algorithm finishes. - The that contains the values that need to be sorted. - - - - Sorts the elements of the vector in decreasing - fashion using heap sort algorithm. The vector itself is not affected. - - The starting index. - The stopping index. - An array that will contain the sorted indices once the algorithm finishes. - The that contains the values that need to be sorted. - - - - Build heap for double indices - - Root position - Length of - Indices of - Target - - - - Sift double indices - - Indices of - Target - Root position - Length of - - - - Sorts the given integers in a decreasing fashion. - - The values. - - - - Sort the given integers in a decreasing fashion using heapsort algorithm - - Array of values to sort - Length of - - - - Build heap - - Target values array - Root position - Length of - - - - Sift values - - Target value array - Root position - Length of - - - - Exchange values in array - - Target values array - First value to exchange - Second value to exchange - - - - A simple milu(0) preconditioner. - - - Original Fortran code by Yousef Saad (07 January 2004) - - - - Use modified or standard ILU(0) - - - - Gets or sets a value indicating whether to use modified or standard ILU(0). - - - - - Gets a value indicating whether the preconditioner is initialized. - - - - - Initializes the preconditioner and loads the internal data structures. - - The matrix upon which the preconditioner is based. - If is . - If is not a square or is not an - instance of SparseCompressedRowMatrixStorage. - - - - Approximates the solution to the matrix equation Ax = b. - - The right hand side vector b. - The left hand side vector x. - - - - MILU0 is a simple milu(0) preconditioner. - - Order of the matrix. - Matrix values in CSR format (input). - Column indices (input). - Row pointers (input). - Matrix values in MSR format (output). - Row pointers and column indices (output). - Pointer to diagonal elements (output). - True if the modified/MILU algorithm should be used (recommended) - Returns 0 on success or k > 0 if a zero pivot was encountered at step k. - - - - A Multiple-Lanczos Bi-Conjugate Gradient stabilized iterative matrix solver. - - - - The Multiple-Lanczos Bi-Conjugate Gradient stabilized (ML(k)-BiCGStab) solver is an 'improvement' - of the standard BiCgStab solver. - - - The algorithm was taken from:
    - ML(k)BiCGSTAB: A BiCGSTAB variant based on multiple Lanczos starting vectors -
    - Man-Chung Yeung and Tony F. Chan -
    - SIAM Journal of Scientific Computing -
    - Volume 21, Number 4, pp. 1263 - 1290 -
    - - The example code below provides an indication of the possible use of the - solver. - -
    -
    - - - The default number of starting vectors. - - - - - The collection of starting vectors which are used as the basis for the Krylov sub-space. - - - - - The number of starting vectors used by the algorithm - - - - - Gets or sets the number of starting vectors. - - - Must be larger than 1 and smaller than the number of variables in the matrix that - for which this solver will be used. - - - - - Resets the number of starting vectors to the default value. - - - - - Gets or sets a series of orthonormal vectors which will be used as basis for the - Krylov sub-space. - - - - - Gets the number of starting vectors to create - - Maximum number - Number of variables - Number of starting vectors to create - - - - Returns an array of starting vectors. - - The maximum number of starting vectors that should be created. - The number of variables. - - An array with starting vectors. The array will never be larger than the - but it may be smaller if - the is smaller than - the . - - - - - Create random vectors array - - Number of vectors - Size of each vector - Array of random vectors - - - - Calculates the true residual of the matrix equation Ax = b according to: residual = b - Ax - - Source A. - Residual data. - x data. - b data. - - - - Solves the matrix equation Ax = b, where A is the coefficient matrix, b is the - solution vector and x is the unknown vector. - - The coefficient matrix, A. - The solution vector, b - The result vector, x - The iterator to use to control when to stop iterating. - The preconditioner to use for approximations. - - - - A Transpose Free Quasi-Minimal Residual (TFQMR) iterative matrix solver. - - - - The TFQMR algorithm was taken from:
    - Iterative methods for sparse linear systems. -
    - Yousef Saad -
    - Algorithm is described in Chapter 7, section 7.4.3, page 219 -
    - - The example code below provides an indication of the possible use of the - solver. - -
    -
    - - - Calculates the true residual of the matrix equation Ax = b according to: residual = b - Ax - - Instance of the A. - Residual values in . - Instance of the x. - Instance of the b. - - - - Is even? - - Number to check - true if even, otherwise false - - - - Solves the matrix equation Ax = b, where A is the coefficient matrix, b is the - solution vector and x is the unknown vector. - - The coefficient matrix, A. - The solution vector, b - The result vector, x - The iterator to use to control when to stop iterating. - The preconditioner to use for approximations. - - - - A Matrix with sparse storage, intended for very large matrices where most of the cells are zero. - The underlying storage scheme is 3-array compressed-sparse-row (CSR) Format. - Wikipedia - CSR. - - - - - Gets the number of non zero elements in the matrix. - - The number of non zero elements. - - - - Create a new sparse matrix straight from an initialized matrix storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a new square sparse matrix with the given number of rows and columns. - All cells of the matrix will be initialized to zero. - - If the order is less than one. - - - - Create a new sparse matrix with the given number of rows and columns. - All cells of the matrix will be initialized to zero. - - If the row or column count is less than one. - - - - Create a new sparse matrix as a copy of the given other matrix. - This new matrix will be independent from the other matrix. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given two-dimensional array. - This new matrix will be independent from the provided array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given enumerable. - The enumerable is assumed to be in row-major order (row by row). - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - - Create a new sparse matrix with the given number of rows and columns as a copy of the given array. - The array is assumed to be in column-major order (column by column). - This new matrix will be independent from the provided array. - A new memory block will be allocated for storing the matrix. - - - - - - Create a new sparse matrix as a copy of the given enumerable of enumerable columns. - Each enumerable in the master enumerable specifies a column. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given enumerable of enumerable columns. - Each enumerable in the master enumerable specifies a column. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given column arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given column arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given column vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given column vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given enumerable of enumerable rows. - Each enumerable in the master enumerable specifies a row. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given enumerable of enumerable rows. - Each enumerable in the master enumerable specifies a row. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given row arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given row arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given row vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given row vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix with the diagonal as a copy of the given vector. - This new matrix will be independent from the vector. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix with the diagonal as a copy of the given vector. - This new matrix will be independent from the vector. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix with the diagonal as a copy of the given array. - This new matrix will be independent from the array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix with the diagonal as a copy of the given array. - This new matrix will be independent from the array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix and initialize each value to the same provided value. - - - - - Create a new sparse matrix and initialize each value using the provided init function. - - - - - Create a new diagonal sparse matrix and initialize each diagonal value to the same provided value. - - - - - Create a new diagonal sparse matrix and initialize each diagonal value using the provided init function. - - - - - Create a new square sparse identity matrix where each diagonal value is set to One. - - - - - Returns a new matrix containing the lower triangle of this matrix. - - The lower triangle of this matrix. - - - - Puts the lower triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If is . - If the result matrix's dimensions are not the same as this matrix. - - - - Puts the lower triangle of this matrix into the result matrix. - - Where to store the lower triangle. - - - - Returns a new matrix containing the upper triangle of this matrix. - - The upper triangle of this matrix. - - - - Puts the upper triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If is . - If the result matrix's dimensions are not the same as this matrix. - - - - Puts the upper triangle of this matrix into the result matrix. - - Where to store the lower triangle. - - - - Returns a new matrix containing the lower triangle of this matrix. The new matrix - does not contain the diagonal elements of this matrix. - - The lower triangle of this matrix. - - - - Puts the strictly lower triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If is . - If the result matrix's dimensions are not the same as this matrix. - - - - Puts the strictly lower triangle of this matrix into the result matrix. - - Where to store the lower triangle. - - - - Returns a new matrix containing the upper triangle of this matrix. The new matrix - does not contain the diagonal elements of this matrix. - - The upper triangle of this matrix. - - - - Puts the strictly upper triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If is . - If the result matrix's dimensions are not the same as this matrix. - - - - Puts the strictly upper triangle of this matrix into the result matrix. - - Where to store the lower triangle. - - - - Negate each element of this matrix and place the results into the result matrix. - - The result of the negation. - - - Calculates the induced infinity norm of this matrix. - The maximum absolute row sum of the matrix. - - - Calculates the entry-wise Frobenius norm of this matrix. - The square root of the sum of the squared values. - - - - Adds another matrix to this matrix. - - The matrix to add to this matrix. - The matrix to store the result of the addition. - If the other matrix is . - If the two matrices don't have the same dimensions. - - - - Subtracts another matrix from this matrix. - - The matrix to subtract to this matrix. - The matrix to store the result of subtraction. - If the other matrix is . - If the two matrices don't have the same dimensions. - - - - Multiplies each element of the matrix by a scalar and places results into the result matrix. - - The scalar to multiply the matrix with. - The matrix to store the result of the multiplication. - - - - Multiplies this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with transpose of another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Pointwise multiplies this matrix with another matrix and stores the result into the result matrix. - - The matrix to pointwise multiply with this one. - The matrix to store the result of the pointwise multiplication. - - - - Pointwise divide this matrix by another matrix and stores the result into the result matrix. - - The matrix to pointwise divide this one by. - The matrix to store the result of the pointwise division. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for the given divisor each element of the matrix. - - The scalar denominator to use. - Matrix to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for the given divisor each element of the matrix. - - The scalar denominator to use. - Matrix to store the results in. - - - - Evaluates whether this matrix is symmetric. - - - - - Adds two matrices together and returns the results. - - This operator will allocate new memory for the result. It will - choose the representation of either or depending on which - is denser. - The left matrix to add. - The right matrix to add. - The result of the addition. - If and don't have the same dimensions. - If or is . - - - - Returns a Matrix containing the same values of . - - The matrix to get the values from. - A matrix containing a the same values as . - If is . - - - - Subtracts two matrices together and returns the results. - - This operator will allocate new memory for the result. It will - choose the representation of either or depending on which - is denser. - The left matrix to subtract. - The right matrix to subtract. - The result of the addition. - If and don't have the same dimensions. - If or is . - - - - Negates each element of the matrix. - - The matrix to negate. - A matrix containing the negated values. - If is . - - - - Multiplies a Matrix by a constant and returns the result. - - The matrix to multiply. - The constant to multiply the matrix by. - The result of the multiplication. - If is . - - - - Multiplies a Matrix by a constant and returns the result. - - The matrix to multiply. - The constant to multiply the matrix by. - The result of the multiplication. - If is . - - - - Multiplies two matrices. - - This operator will allocate new memory for the result. It will - choose the representation of either or depending on which - is denser. - The left matrix to multiply. - The right matrix to multiply. - The result of multiplication. - If or is . - If the dimensions of or don't conform. - - - - Multiplies a Matrix and a Vector. - - The matrix to multiply. - The vector to multiply. - The result of multiplication. - If or is . - - - - Multiplies a Vector and a Matrix. - - The vector to multiply. - The matrix to multiply. - The result of multiplication. - If or is . - - - - Multiplies a Matrix by a constant and returns the result. - - The matrix to multiply. - The constant to multiply the matrix by. - The result of the multiplication. - If is . - - - - A vector with sparse storage, intended for very large vectors where most of the cells are zero. - - The sparse vector is not thread safe. - - - - Gets the number of non zero elements in the vector. - - The number of non zero elements. - - - - Create a new sparse vector straight from an initialized vector storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a new sparse vector with the given length. - All cells of the vector will be initialized to zero. - - If length is less than one. - - - - Create a new sparse vector as a copy of the given other vector. - This new vector will be independent from the other vector. - A new memory block will be allocated for storing the vector. - - - - - Create a new sparse vector as a copy of the given enumerable. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new sparse vector as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new sparse vector as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new sparse vector and initialize each value using the provided value. - - - - - Create a new sparse vector and initialize each value using the provided init function. - - - - - Adds a scalar to each element of the vector and stores the result in the result vector. - Warning, the new 'sparse vector' with a non-zero scalar added to it will be a 100% filled - sparse vector and very inefficient. Would be better to work with a dense vector instead. - - - The scalar to add. - - - The vector to store the result of the addition. - - - - - Adds another vector to this vector and stores the result into the result vector. - - - The vector to add to this one. - - - The vector to store the result of the addition. - - - - - Subtracts a scalar from each element of the vector and stores the result in the result vector. - - - The scalar to subtract. - - - The vector to store the result of the subtraction. - - - - - Subtracts another vector to this vector and stores the result into the result vector. - - - The vector to subtract from this one. - - - The vector to store the result of the subtraction. - - - - - Negates vector and saves result to - - Target vector - - - - Multiplies a scalar to each element of the vector and stores the result in the result vector. - - - The scalar to multiply. - - - The vector to store the result of the multiplication. - - - - - Computes the dot product between this vector and another vector. - - The other vector. - The sum of a[i]*b[i] for all i. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for each element of the vector for the given divisor. - - The scalar denominator to use. - A vector to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for each element of the vector for the given divisor. - - The scalar denominator to use. - A vector to store the results in. - - - - Adds two Vectors together and returns the results. - - One of the vectors to add. - The other vector to add. - The result of the addition. - If and are not the same size. - If or is . - - - - Returns a Vector containing the negated values of . - - The vector to get the values from. - A vector containing the negated values as . - If is . - - - - Subtracts two Vectors and returns the results. - - The vector to subtract from. - The vector to subtract. - The result of the subtraction. - If and are not the same size. - If or is . - - - - Multiplies a vector with a scalar. - - The vector to scale. - The scalar value. - The result of the multiplication. - If is . - - - - Multiplies a vector with a scalar. - - The scalar value. - The vector to scale. - The result of the multiplication. - If is . - - - - Computes the dot product between two Vectors. - - The left row vector. - The right column vector. - The dot product between the two vectors. - If and are not the same size. - If or is . - - - - Divides a vector with a scalar. - - The vector to divide. - The scalar value. - The result of the division. - If is . - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - of each element of the vector of the given divisor. - - The vector whose elements we want to compute the modulus of. - The divisor to use, - The result of the calculation - If is . - - - - Returns the index of the absolute minimum element. - - The index of absolute minimum element. - - - - Returns the index of the absolute maximum element. - - The index of absolute maximum element. - - - - Returns the index of the maximum element. - - The index of maximum element. - - - - Returns the index of the minimum element. - - The index of minimum element. - - - - Computes the sum of the vector's elements. - - The sum of the vector's elements. - - - - Calculates the L1 norm of the vector, also known as Manhattan norm. - - The sum of the absolute values. - - - - Calculates the infinity norm of the vector. - - The maximum absolute value. - - - - Computes the p-Norm. - - The p value. - Scalar ret = ( ∑|this[i]|^p )^(1/p) - - - - Pointwise multiplies this vector with another vector and stores the result into the result vector. - - The vector to pointwise multiply with this one. - The vector to store the result of the pointwise multiplication. - - - - Creates a double sparse vector based on a string. The string can be in the following formats (without the - quotes): 'n', 'n,n,..', '(n,n,..)', '[n,n,...]', where n is a double. - - - A double sparse vector containing the values specified by the given string. - - - the string to parse. - - - An that supplies culture-specific formatting information. - - - - - Converts the string representation of a real sparse vector to double-precision sparse vector equivalent. - A return value indicates whether the conversion succeeded or failed. - - - A string containing a real vector to convert. - - - The parsed value. - - - If the conversion succeeds, the result will contain a complex number equivalent to value. - Otherwise the result will be null. - - - - - Converts the string representation of a real sparse vector to double-precision sparse vector equivalent. - A return value indicates whether the conversion succeeded or failed. - - - A string containing a real vector to convert. - - - An that supplies culture-specific formatting information about value. - - - The parsed value. - - - If the conversion succeeds, the result will contain a complex number equivalent to value. - Otherwise the result will be null. - - - - - double version of the class. - - - - - Initializes a new instance of the Vector class. - - - - - Set all values whose absolute value is smaller than the threshold to zero. - - - - - Conjugates vector and save result to - - Target vector - - - - Negates vector and saves result to - - Target vector - - - - Adds a scalar to each element of the vector and stores the result in the result vector. - - - The scalar to add. - - - The vector to store the result of the addition. - - - - - Adds another vector to this vector and stores the result into the result vector. - - - The vector to add to this one. - - - The vector to store the result of the addition. - - - - - Subtracts a scalar from each element of the vector and stores the result in the result vector. - - - The scalar to subtract. - - - The vector to store the result of the subtraction. - - - - - Subtracts another vector to this vector and stores the result into the result vector. - - - The vector to subtract from this one. - - - The vector to store the result of the subtraction. - - - - - Multiplies a scalar to each element of the vector and stores the result in the result vector. - - - The scalar to multiply. - - - The vector to store the result of the multiplication. - - - - - Divides each element of the vector by a scalar and stores the result in the result vector. - - - The scalar to divide with. - - - The vector to store the result of the division. - - - - - Divides a scalar by each element of the vector and stores the result in the result vector. - - The scalar to divide. - The vector to store the result of the division. - - - - Pointwise multiplies this vector with another vector and stores the result into the result vector. - - The vector to pointwise multiply with this one. - The vector to store the result of the pointwise multiplication. - - - - Pointwise divide this vector with another vector and stores the result into the result vector. - - The vector to pointwise divide this one by. - The vector to store the result of the pointwise division. - - - - Pointwise raise this vector to an exponent and store the result into the result vector. - - The exponent to raise this vector values to. - The vector to store the result of the pointwise power. - - - - Pointwise raise this vector to an exponent vector and store the result into the result vector. - - The exponent vector to raise this vector values to. - The vector to store the result of the pointwise power. - - - - Pointwise canonical modulus, where the result has the sign of the divisor, - of this vector with another vector and stores the result into the result vector. - - The pointwise denominator vector to use. - The result of the modulus. - - - - Pointwise remainder (% operator), where the result has the sign of the dividend, - of this vector with another vector and stores the result into the result vector. - - The pointwise denominator vector to use. - The result of the modulus. - - - - Pointwise applies the exponential function to each value and stores the result into the result vector. - - The vector to store the result. - - - - Pointwise applies the natural logarithm function to each value and stores the result into the result vector. - - The vector to store the result. - - - - Computes the dot product between this vector and another vector. - - The other vector. - The sum of a[i]*b[i] for all i. - - - - Computes the dot product between the conjugate of this vector and another vector. - - The other vector. - The sum of conj(a[i])*b[i] for all i. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for each element of the vector for the given divisor. - - The scalar denominator to use. - A vector to store the results in. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for the given dividend for each element of the vector. - - The scalar numerator to use. - A vector to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for each element of the vector for the given divisor. - - The scalar denominator to use. - A vector to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for the given dividend for each element of the vector. - - The scalar numerator to use. - A vector to store the results in. - - - - Returns the value of the absolute minimum element. - - The value of the absolute minimum element. - - - - Returns the index of the absolute minimum element. - - The index of absolute minimum element. - - - - Returns the value of the absolute maximum element. - - The value of the absolute maximum element. - - - - Returns the index of the absolute maximum element. - - The index of absolute maximum element. - - - - Computes the sum of the vector's elements. - - The sum of the vector's elements. - - - - Calculates the L1 norm of the vector, also known as Manhattan norm. - - The sum of the absolute values. - - - - Calculates the L2 norm of the vector, also known as Euclidean norm. - - The square root of the sum of the squared values. - - - - Calculates the infinity norm of the vector. - - The maximum absolute value. - - - - Computes the p-Norm. - - - The p value. - - - Scalar ret = ( ∑|At(i)|^p )^(1/p) - - - - - Returns the index of the maximum element. - - The index of maximum element. - - - - Returns the index of the minimum element. - - The index of minimum element. - - - - Normalizes this vector to a unit vector with respect to the p-norm. - - - The p value. - - - This vector normalized to a unit vector with respect to the p-norm. - - - - - A Matrix class with dense storage. The underlying storage is a one dimensional array in column-major order (column by column). - - - - - Number of rows. - - Using this instead of the RowCount property to speed up calculating - a matrix index in the data array. - - - - Number of columns. - - Using this instead of the ColumnCount property to speed up calculating - a matrix index in the data array. - - - - Gets the matrix's data. - - The matrix's data. - - - - Create a new dense matrix straight from an initialized matrix storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a new square dense matrix with the given number of rows and columns. - All cells of the matrix will be initialized to zero. - - If the order is less than one. - - - - Create a new dense matrix with the given number of rows and columns. - All cells of the matrix will be initialized to zero. - - If the row or column count is less than one. - - - - Create a new dense matrix with the given number of rows and columns directly binding to a raw array. - The array is assumed to be in column-major order (column by column) and is used directly without copying. - Very efficient, but changes to the array and the matrix will affect each other. - - - - - - Create a new dense matrix as a copy of the given other matrix. - This new matrix will be independent from the other matrix. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given two-dimensional array. - This new matrix will be independent from the provided array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable. - The enumerable is assumed to be in column-major order (column by column). - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable of enumerable columns. - Each enumerable in the master enumerable specifies a column. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable of enumerable columns. - Each enumerable in the master enumerable specifies a column. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given column arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given column arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given column vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given column vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable of enumerable rows. - Each enumerable in the master enumerable specifies a row. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable of enumerable rows. - Each enumerable in the master enumerable specifies a row. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given row arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given row arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given row vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given row vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix with the diagonal as a copy of the given vector. - This new matrix will be independent from the vector. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix with the diagonal as a copy of the given vector. - This new matrix will be independent from the vector. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix with the diagonal as a copy of the given array. - This new matrix will be independent from the array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix with the diagonal as a copy of the given array. - This new matrix will be independent from the array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix and initialize each value to the same provided value. - - - - - Create a new dense matrix and initialize each value using the provided init function. - - - - - Create a new diagonal dense matrix and initialize each diagonal value to the same provided value. - - - - - Create a new diagonal dense matrix and initialize each diagonal value using the provided init function. - - - - - Create a new square sparse identity matrix where each diagonal value is set to One. - - - - - Create a new dense matrix with values sampled from the provided random distribution. - - - - - Gets the matrix's data. - - The matrix's data. - - - Calculates the induced L1 norm of this matrix. - The maximum absolute column sum of the matrix. - - - Calculates the induced infinity norm of this matrix. - The maximum absolute row sum of the matrix. - - - Calculates the entry-wise Frobenius norm of this matrix. - The square root of the sum of the squared values. - - - - Negate each element of this matrix and place the results into the result matrix. - - The result of the negation. - - - - Add a scalar to each element of the matrix and stores the result in the result vector. - - The scalar to add. - The matrix to store the result of the addition. - - - - Adds another matrix to this matrix. - - The matrix to add to this matrix. - The matrix to store the result of add - If the other matrix is . - If the two matrices don't have the same dimensions. - - - - Subtracts a scalar from each element of the matrix and stores the result in the result vector. - - The scalar to subtract. - The matrix to store the result of the subtraction. - - - - Subtracts another matrix from this matrix. - - The matrix to subtract. - The matrix to store the result of the subtraction. - - - - Multiplies each element of the matrix by a scalar and places results into the result matrix. - - The scalar to multiply the matrix with. - The matrix to store the result of the multiplication. - - - - Multiplies this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with transpose of another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Divides each element of the matrix by a scalar and places results into the result matrix. - - The scalar to divide the matrix with. - The matrix to store the result of the division. - - - - Pointwise multiplies this matrix with another matrix and stores the result into the result matrix. - - The matrix to pointwise multiply with this one. - The matrix to store the result of the pointwise multiplication. - - - - Pointwise divide this matrix by another matrix and stores the result into the result matrix. - - The matrix to pointwise divide this one by. - The matrix to store the result of the pointwise division. - - - - Pointwise raise this matrix to an exponent and store the result into the result matrix. - - The exponent to raise this matrix values to. - The vector to store the result of the pointwise power. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for the given divisor each element of the matrix. - - The scalar denominator to use. - Matrix to store the results in. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for the given dividend for each element of the matrix. - - The scalar numerator to use. - A vector to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for the given divisor each element of the matrix. - - The scalar denominator to use. - Matrix to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for the given dividend for each element of the matrix. - - The scalar numerator to use. - A vector to store the results in. - - - - Computes the trace of this matrix. - - The trace of this matrix - If the matrix is not square - - - - Adds two matrices together and returns the results. - - This operator will allocate new memory for the result. It will - choose the representation of either or depending on which - is denser. - The left matrix to add. - The right matrix to add. - The result of the addition. - If and don't have the same dimensions. - If or is . - - - - Returns a Matrix containing the same values of . - - The matrix to get the values from. - A matrix containing a the same values as . - If is . - - - - Subtracts two matrices together and returns the results. - - This operator will allocate new memory for the result. It will - choose the representation of either or depending on which - is denser. - The left matrix to subtract. - The right matrix to subtract. - The result of the addition. - If and don't have the same dimensions. - If or is . - - - - Negates each element of the matrix. - - The matrix to negate. - A matrix containing the negated values. - If is . - - - - Multiplies a Matrix by a constant and returns the result. - - The matrix to multiply. - The constant to multiply the matrix by. - The result of the multiplication. - If is . - - - - Multiplies a Matrix by a constant and returns the result. - - The matrix to multiply. - The constant to multiply the matrix by. - The result of the multiplication. - If is . - - - - Multiplies two matrices. - - This operator will allocate new memory for the result. It will - choose the representation of either or depending on which - is denser. - The left matrix to multiply. - The right matrix to multiply. - The result of multiplication. - If or is . - If the dimensions of or don't conform. - - - - Multiplies a Matrix and a Vector. - - The matrix to multiply. - The vector to multiply. - The result of multiplication. - If or is . - - - - Multiplies a Vector and a Matrix. - - The vector to multiply. - The matrix to multiply. - The result of multiplication. - If or is . - - - - Multiplies a Matrix by a constant and returns the result. - - The matrix to multiply. - The constant to multiply the matrix by. - The result of the multiplication. - If is . - - - - Evaluates whether this matrix is symmetric. - - - - - A vector using dense storage. - - - - - Number of elements - - - - - Gets the vector's data. - - - - - Create a new dense vector straight from an initialized vector storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a new dense vector with the given length. - All cells of the vector will be initialized to zero. - - If length is less than one. - - - - Create a new dense vector directly binding to a raw array. - The array is used directly without copying. - Very efficient, but changes to the array and the vector will affect each other. - - - - - Create a new dense vector as a copy of the given other vector. - This new vector will be independent from the other vector. - A new memory block will be allocated for storing the vector. - - - - - Create a new dense vector as a copy of the given array. - This new vector will be independent from the array. - A new memory block will be allocated for storing the vector. - - - - - Create a new dense vector as a copy of the given enumerable. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new dense vector as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new dense vector as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new dense vector and initialize each value using the provided value. - - - - - Create a new dense vector and initialize each value using the provided init function. - - - - - Create a new dense vector with values sampled from the provided random distribution. - - - - - Gets the vector's data. - - The vector's data. - - - - Returns a reference to the internal data structure. - - The DenseVector whose internal data we are - returning. - - A reference to the internal date of the given vector. - - - - - Returns a vector bound directly to a reference of the provided array. - - The array to bind to the DenseVector object. - - A DenseVector whose values are bound to the given array. - - - - - Adds a scalar to each element of the vector and stores the result in the result vector. - - The scalar to add. - The vector to store the result of the addition. - - - - Adds another vector to this vector and stores the result into the result vector. - - The vector to add to this one. - The vector to store the result of the addition. - - - - Adds two Vectors together and returns the results. - - One of the vectors to add. - The other vector to add. - The result of the addition. - If and are not the same size. - If or is . - - - - Subtracts a scalar from each element of the vector and stores the result in the result vector. - - The scalar to subtract. - The vector to store the result of the subtraction. - - - - Subtracts another vector from this vector and stores the result into the result vector. - - The vector to subtract from this one. - The vector to store the result of the subtraction. - - - - Returns a Vector containing the negated values of . - - The vector to get the values from. - A vector containing the negated values as . - If is . - - - - Subtracts two Vectors and returns the results. - - The vector to subtract from. - The vector to subtract. - The result of the subtraction. - If and are not the same size. - If or is . - - - - Negates vector and saves result to - - Target vector - - - - Multiplies a scalar to each element of the vector and stores the result in the result vector. - - The scalar to multiply. - The vector to store the result of the multiplication. - - - - - Computes the dot product between this vector and another vector. - - The other vector. - The sum of a[i]*b[i] for all i. - - - - Multiplies a vector with a scalar. - - The vector to scale. - The scalar value. - The result of the multiplication. - If is . - - - - Multiplies a vector with a scalar. - - The scalar value. - The vector to scale. - The result of the multiplication. - If is . - - - - Computes the dot product between two Vectors. - - The left row vector. - The right column vector. - The dot product between the two vectors. - If and are not the same size. - If or is . - - - - Divides a vector with a scalar. - - The vector to divide. - The scalar value. - The result of the division. - If is . - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for each element of the vector for the given divisor. - - The scalar denominator to use. - A vector to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for each element of the vector for the given divisor. - - The scalar denominator to use. - A vector to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - of each element of the vector of the given divisor. - - The vector whose elements we want to compute the modulus of. - The divisor to use, - The result of the calculation - If is . - - - - Returns the index of the absolute minimum element. - - The index of absolute minimum element. - - - - Returns the index of the absolute maximum element. - - The index of absolute maximum element. - - - - Returns the index of the maximum element. - - The index of maximum element. - - - - Returns the index of the minimum element. - - The index of minimum element. - - - - Computes the sum of the vector's elements. - - The sum of the vector's elements. - - - - Calculates the L1 norm of the vector, also known as Manhattan norm. - - The sum of the absolute values. - - - - Calculates the L2 norm of the vector, also known as Euclidean norm. - - The square root of the sum of the squared values. - - - - Calculates the infinity norm of the vector. - - The maximum absolute value. - - - - Computes the p-Norm. - - The p value. - Scalar ret = ( ∑|this[i]|^p )^(1/p) - - - - Pointwise multiply this vector with another vector and stores the result into the result vector. - - The vector to pointwise multiply this one by. - The vector to store the result of the pointwise multiplication. - - - - Pointwise divide this vector with another vector and stores the result into the result vector. - - The vector to pointwise divide this one by. - The vector to store the result of the pointwise division. - - - - - Pointwise raise this vector to an exponent vector and store the result into the result vector. - - The exponent vector to raise this vector values to. - The vector to store the result of the pointwise power. - - - - Creates a float dense vector based on a string. The string can be in the following formats (without the - quotes): 'n', 'n,n,..', '(n,n,..)', '[n,n,...]', where n is a float. - - - A float dense vector containing the values specified by the given string. - - - the string to parse. - - - An that supplies culture-specific formatting information. - - - - - Converts the string representation of a real dense vector to float-precision dense vector equivalent. - A return value indicates whether the conversion succeeded or failed. - - - A string containing a real vector to convert. - - - The parsed value. - - - If the conversion succeeds, the result will contain a complex number equivalent to value. - Otherwise the result will be null. - - - - - Converts the string representation of a real dense vector to float-precision dense vector equivalent. - A return value indicates whether the conversion succeeded or failed. - - - A string containing a real vector to convert. - - - An that supplies culture-specific formatting information about value. - - - The parsed value. - - - If the conversion succeeds, the result will contain a complex number equivalent to value. - Otherwise the result will be null. - - - - - A matrix type for diagonal matrices. - - - Diagonal matrices can be non-square matrices but the diagonal always starts - at element 0,0. A diagonal matrix will throw an exception if non diagonal - entries are set. The exception to this is when the off diagonal elements are - 0.0 or NaN; these settings will cause no change to the diagonal matrix. - - - - - Gets the matrix's data. - - The matrix's data. - - - - Create a new diagonal matrix straight from an initialized matrix storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a new square diagonal matrix with the given number of rows and columns. - All cells of the matrix will be initialized to zero. - - If the order is less than one. - - - - Create a new diagonal matrix with the given number of rows and columns. - All cells of the matrix will be initialized to zero. - - If the row or column count is less than one. - - - - Create a new diagonal matrix with the given number of rows and columns. - All diagonal cells of the matrix will be initialized to the provided value, all non-diagonal ones to zero. - - If the row or column count is less than one. - - - - Create a new diagonal matrix with the given number of rows and columns directly binding to a raw array. - The array is assumed to contain the diagonal elements only and is used directly without copying. - Very efficient, but changes to the array and the matrix will affect each other. - - - - - Create a new diagonal matrix as a copy of the given other matrix. - This new matrix will be independent from the other matrix. - The matrix to copy from must be diagonal as well. - A new memory block will be allocated for storing the matrix. - - - - - Create a new diagonal matrix as a copy of the given two-dimensional array. - This new matrix will be independent from the provided array. - The array to copy from must be diagonal as well. - A new memory block will be allocated for storing the matrix. - - - - - Create a new diagonal matrix and initialize each diagonal value from the provided indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new diagonal matrix and initialize each diagonal value from the provided indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new diagonal matrix and initialize each diagonal value from the provided enumerable. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new diagonal matrix and initialize each diagonal value using the provided init function. - - - - - Create a new square sparse identity matrix where each diagonal value is set to One. - - - - - Create a new diagonal matrix with diagonal values sampled from the provided random distribution. - - - - - Negate each element of this matrix and place the results into the result matrix. - - The result of the negation. - - - - Adds another matrix to this matrix. - - The matrix to add to this matrix. - The matrix to store the result of the addition. - If the two matrices don't have the same dimensions. - - - - Subtracts another matrix from this matrix. - - The matrix to subtract. - The matrix to store the result of the subtraction. - If the two matrices don't have the same dimensions. - - - - Multiplies each element of the matrix by a scalar and places results into the result matrix. - - The scalar to multiply the matrix with. - The matrix to store the result of the multiplication. - If the result matrix's dimensions are not the same as this matrix. - - - - Multiplies this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with transpose of another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Divides each element of the matrix by a scalar and places results into the result matrix. - - The scalar to divide the matrix with. - The matrix to store the result of the division. - - - - Divides a scalar by each element of the matrix and stores the result in the result matrix. - - The scalar to add. - The matrix to store the result of the division. - - - - Computes the determinant of this matrix. - - The determinant of this matrix. - - - - Returns the elements of the diagonal in a . - - The elements of the diagonal. - For non-square matrices, the method returns Min(Rows, Columns) elements where - i == j (i is the row index, and j is the column index). - - - - Copies the values of the given array to the diagonal. - - The array to copy the values from. The length of the vector should be - Min(Rows, Columns). - If the length of does not - equal Min(Rows, Columns). - For non-square matrices, the elements of are copied to - this[i,i]. - - - - Copies the values of the given to the diagonal. - - The vector to copy the values from. The length of the vector should be - Min(Rows, Columns). - If the length of does not - equal Min(Rows, Columns). - For non-square matrices, the elements of are copied to - this[i,i]. - - - Calculates the induced L1 norm of this matrix. - The maximum absolute column sum of the matrix. - - - Calculates the induced L2 norm of the matrix. - The largest singular value of the matrix. - - - Calculates the induced infinity norm of this matrix. - The maximum absolute row sum of the matrix. - - - Calculates the entry-wise Frobenius norm of this matrix. - The square root of the sum of the squared values. - - - Calculates the condition number of this matrix. - The condition number of the matrix. - - - Computes the inverse of this matrix. - If is not a square matrix. - If is singular. - The inverse of this matrix. - - - - Returns a new matrix containing the lower triangle of this matrix. - - The lower triangle of this matrix. - - - - Puts the lower triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If the result matrix's dimensions are not the same as this matrix. - - - - Returns a new matrix containing the lower triangle of this matrix. The new matrix - does not contain the diagonal elements of this matrix. - - The lower triangle of this matrix. - - - - Puts the strictly lower triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If the result matrix's dimensions are not the same as this matrix. - - - - Returns a new matrix containing the upper triangle of this matrix. - - The upper triangle of this matrix. - - - - Puts the upper triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If the result matrix's dimensions are not the same as this matrix. - - - - Returns a new matrix containing the upper triangle of this matrix. The new matrix - does not contain the diagonal elements of this matrix. - - The upper triangle of this matrix. - - - - Puts the strictly upper triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If the result matrix's dimensions are not the same as this matrix. - - - - Creates a matrix that contains the values from the requested sub-matrix. - - The row to start copying from. - The number of rows to copy. Must be positive. - The column to start copying from. - The number of columns to copy. Must be positive. - The requested sub-matrix. - If: is - negative, or greater than or equal to the number of rows. - is negative, or greater than or equal to the number - of columns. - (columnIndex + columnLength) >= Columns - (rowIndex + rowLength) >= Rows - If or - is not positive. - - - - Permute the columns of a matrix according to a permutation. - - The column permutation to apply to this matrix. - Always thrown - Permutation in diagonal matrix are senseless, because of matrix nature - - - - Permute the rows of a matrix according to a permutation. - - The row permutation to apply to this matrix. - Always thrown - Permutation in diagonal matrix are senseless, because of matrix nature - - - - Evaluates whether this matrix is symmetric. - - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for the given divisor each element of the matrix. - - The scalar denominator to use. - Matrix to store the results in. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for the given dividend for each element of the matrix. - - The scalar numerator to use. - A vector to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for the given divisor each element of the matrix. - - The scalar denominator to use. - Matrix to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for the given dividend for each element of the matrix. - - The scalar numerator to use. - A vector to store the results in. - - - - A class which encapsulates the functionality of a Cholesky factorization. - For a symmetric, positive definite matrix A, the Cholesky factorization - is an lower triangular matrix L so that A = L*L'. - - - The computation of the Cholesky factorization is done at construction time. If the matrix is not symmetric - or positive definite, the constructor will throw an exception. - - - - - Gets the determinant of the matrix for which the Cholesky matrix was computed. - - - - - Gets the log determinant of the matrix for which the Cholesky matrix was computed. - - - - - A class which encapsulates the functionality of a Cholesky factorization for dense matrices. - For a symmetric, positive definite matrix A, the Cholesky factorization - is an lower triangular matrix L so that A = L*L'. - - - The computation of the Cholesky factorization is done at construction time. If the matrix is not symmetric - or positive definite, the constructor will throw an exception. - - - - - Initializes a new instance of the class. This object will compute the - Cholesky factorization when the constructor is called and cache it's factorization. - - The matrix to factor. - If is null. - If is not a square matrix. - If is not positive definite. - - - - Solves a system of linear equations, AX = B, with A Cholesky factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A Cholesky factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Calculates the Cholesky factorization of the input matrix. - - The matrix to be factorized. - If is null. - If is not a square matrix. - If is not positive definite. - If does not have the same dimensions as the existing factor. - - - - Eigenvalues and eigenvectors of a real matrix. - - - If A is symmetric, then A = V*D*V' where the eigenvalue matrix D is - diagonal and the eigenvector matrix V is orthogonal. - I.e. A = V*D*V' and V*VT=I. - If A is not symmetric, then the eigenvalue matrix D is block diagonal - with the real eigenvalues in 1-by-1 blocks and any complex eigenvalues, - lambda + i*mu, in 2-by-2 blocks, [lambda, mu; -mu, lambda]. The - columns of V represent the eigenvectors in the sense that A*V = V*D, - i.e. A.Multiply(V) equals V.Multiply(D). The matrix V may be badly - conditioned, or even singular, so the validity of the equation - A = V*D*Inverse(V) depends upon V.Condition(). - - - - - Initializes a new instance of the class. This object will compute the - the eigenvalue decomposition when the constructor is called and cache it's decomposition. - - The matrix to factor. - If it is known whether the matrix is symmetric or not the routine can skip checking it itself. - If is null. - If EVD algorithm failed to converge with matrix . - - - - Solves a system of linear equations, AX = B, with A SVD factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A EVD factorized. - - The right hand side vector, b. - The left hand side , x. - - - - A class which encapsulates the functionality of the QR decomposition Modified Gram-Schmidt Orthogonalization. - Any real square matrix A may be decomposed as A = QR where Q is an orthogonal mxn matrix and R is an nxn upper triangular matrix. - - - The computation of the QR decomposition is done at construction time by modified Gram-Schmidt Orthogonalization. - - - - - Initializes a new instance of the class. This object creates an orthogonal matrix - using the modified Gram-Schmidt method. - - The matrix to factor. - If is null. - If row count is less then column count - If is rank deficient - - - - Factorize matrix using the modified Gram-Schmidt method. - - Initial matrix. On exit is replaced by Q. - Number of rows in Q. - Number of columns in Q. - On exit is filled by R. - - - - Solves a system of linear equations, AX = B, with A QR factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A QR factorized. - - The right hand side vector, b. - The left hand side , x. - - - - A class which encapsulates the functionality of an LU factorization. - For a matrix A, the LU factorization is a pair of lower triangular matrix L and - upper triangular matrix U so that A = L*U. - - - The computation of the LU factorization is done at construction time. - - - - - Initializes a new instance of the class. This object will compute the - LU factorization when the constructor is called and cache it's factorization. - - The matrix to factor. - If is null. - If is not a square matrix. - - - - Solves a system of linear equations, AX = B, with A LU factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A LU factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Returns the inverse of this matrix. The inverse is calculated using LU decomposition. - - The inverse of this matrix. - - - - A class which encapsulates the functionality of the QR decomposition. - Any real square matrix A may be decomposed as A = QR where Q is an orthogonal matrix - (its columns are orthogonal unit vectors meaning QTQ = I) and R is an upper triangular matrix - (also called right triangular matrix). - - - The computation of the QR decomposition is done at construction time by Householder transformation. - - - - - Gets or sets Tau vector. Contains additional information on Q - used for native solver. - - - - - Initializes a new instance of the class. This object will compute the - QR factorization when the constructor is called and cache it's factorization. - - The matrix to factor. - The QR factorization method to use. - If is null. - If row count is less then column count - - - - Solves a system of linear equations, AX = B, with A QR factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A QR factorized. - - The right hand side vector, b. - The left hand side , x. - - - - A class which encapsulates the functionality of the singular value decomposition (SVD) for . - Suppose M is an m-by-n matrix whose entries are real numbers. - Then there exists a factorization of the form M = UΣVT where: - - U is an m-by-m unitary matrix; - - Σ is m-by-n diagonal matrix with nonnegative real numbers on the diagonal; - - VT denotes transpose of V, an n-by-n unitary matrix; - Such a factorization is called a singular-value decomposition of M. A common convention is to order the diagonal - entries Σ(i,i) in descending order. In this case, the diagonal matrix Σ is uniquely determined - by M (though the matrices U and V are not). The diagonal entries of Σ are known as the singular values of M. - - - The computation of the singular value decomposition is done at construction time. - - - - - Initializes a new instance of the class. This object will compute the - the singular value decomposition when the constructor is called and cache it's decomposition. - - The matrix to factor. - Compute the singular U and VT vectors or not. - If is null. - If SVD algorithm failed to converge with matrix . - - - - Solves a system of linear equations, AX = B, with A SVD factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A SVD factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Eigenvalues and eigenvectors of a real matrix. - - - If A is symmetric, then A = V*D*V' where the eigenvalue matrix D is - diagonal and the eigenvector matrix V is orthogonal. - I.e. A = V*D*V' and V*VT=I. - If A is not symmetric, then the eigenvalue matrix D is block diagonal - with the real eigenvalues in 1-by-1 blocks and any complex eigenvalues, - lambda + i*mu, in 2-by-2 blocks, [lambda, mu; -mu, lambda]. The - columns of V represent the eigenvectors in the sense that A*V = V*D, - i.e. A.Multiply(V) equals V.Multiply(D). The matrix V may be badly - conditioned, or even singular, so the validity of the equation - A = V*D*Inverse(V) depends upon V.Condition(). - - - - - Gets the absolute value of determinant of the square matrix for which the EVD was computed. - - - - - Gets the effective numerical matrix rank. - - The number of non-negligible singular values. - - - - Gets a value indicating whether the matrix is full rank or not. - - true if the matrix is full rank; otherwise false. - - - - A class which encapsulates the functionality of the QR decomposition Modified Gram-Schmidt Orthogonalization. - Any real square matrix A may be decomposed as A = QR where Q is an orthogonal mxn matrix and R is an nxn upper triangular matrix. - - - The computation of the QR decomposition is done at construction time by modified Gram-Schmidt Orthogonalization. - - - - - Gets the absolute determinant value of the matrix for which the QR matrix was computed. - - - - - Gets a value indicating whether the matrix is full rank or not. - - true if the matrix is full rank; otherwise false. - - - - A class which encapsulates the functionality of an LU factorization. - For a matrix A, the LU factorization is a pair of lower triangular matrix L and - upper triangular matrix U so that A = L*U. - In the Math.NET implementation we also store a set of pivot elements for increased - numerical stability. The pivot elements encode a permutation matrix P such that P*A = L*U. - - - The computation of the LU factorization is done at construction time. - - - - - Gets the determinant of the matrix for which the LU factorization was computed. - - - - - A class which encapsulates the functionality of the QR decomposition. - Any real square matrix A (m x n) may be decomposed as A = QR where Q is an orthogonal matrix - (its columns are orthogonal unit vectors meaning QTQ = I) and R is an upper triangular matrix - (also called right triangular matrix). - - - The computation of the QR decomposition is done at construction time by Householder transformation. - If a factorization is performed, the resulting Q matrix is an m x m matrix - and the R matrix is an m x n matrix. If a factorization is performed, the - resulting Q matrix is an m x n matrix and the R matrix is an n x n matrix. - - - - - Gets the absolute determinant value of the matrix for which the QR matrix was computed. - - - - - Gets a value indicating whether the matrix is full rank or not. - - true if the matrix is full rank; otherwise false. - - - - A class which encapsulates the functionality of the singular value decomposition (SVD). - Suppose M is an m-by-n matrix whose entries are real numbers. - Then there exists a factorization of the form M = UΣVT where: - - U is an m-by-m unitary matrix; - - Σ is m-by-n diagonal matrix with nonnegative real numbers on the diagonal; - - VT denotes transpose of V, an n-by-n unitary matrix; - Such a factorization is called a singular-value decomposition of M. A common convention is to order the diagonal - entries Σ(i,i) in descending order. In this case, the diagonal matrix Σ is uniquely determined - by M (though the matrices U and V are not). The diagonal entries of Σ are known as the singular values of M. - - - The computation of the singular value decomposition is done at construction time. - - - - - Gets the effective numerical matrix rank. - - The number of non-negligible singular values. - - - - Gets the two norm of the . - - The 2-norm of the . - - - - Gets the condition number max(S) / min(S) - - The condition number. - - - - Gets the determinant of the square matrix for which the SVD was computed. - - - - - A class which encapsulates the functionality of a Cholesky factorization for user matrices. - For a symmetric, positive definite matrix A, the Cholesky factorization - is an lower triangular matrix L so that A = L*L'. - - - The computation of the Cholesky factorization is done at construction time. If the matrix is not symmetric - or positive definite, the constructor will throw an exception. - - - - - Computes the Cholesky factorization in-place. - - On entry, the matrix to factor. On exit, the Cholesky factor matrix - If is null. - If is not a square matrix. - If is not positive definite. - - - - Initializes a new instance of the class. This object will compute the - Cholesky factorization when the constructor is called and cache it's factorization. - - The matrix to factor. - If is null. - If is not a square matrix. - If is not positive definite. - - - - Calculates the Cholesky factorization of the input matrix. - - The matrix to be factorized. - If is null. - If is not a square matrix. - If is not positive definite. - If does not have the same dimensions as the existing factor. - - - - Calculate Cholesky step - - Factor matrix - Number of rows - Column start - Total columns - Multipliers calculated previously - Number of available processors - - - - Solves a system of linear equations, AX = B, with A Cholesky factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A Cholesky factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Eigenvalues and eigenvectors of a real matrix. - - - If A is symmetric, then A = V*D*V' where the eigenvalue matrix D is - diagonal and the eigenvector matrix V is orthogonal. - I.e. A = V*D*V' and V*VT=I. - If A is not symmetric, then the eigenvalue matrix D is block diagonal - with the real eigenvalues in 1-by-1 blocks and any complex eigenvalues, - lambda + i*mu, in 2-by-2 blocks, [lambda, mu; -mu, lambda]. The - columns of V represent the eigenvectors in the sense that A*V = V*D, - i.e. A.Multiply(V) equals V.Multiply(D). The matrix V may be badly - conditioned, or even singular, so the validity of the equation - A = V*D*Inverse(V) depends upon V.Condition(). - - - - - Initializes a new instance of the class. This object will compute the - the eigenvalue decomposition when the constructor is called and cache it's decomposition. - - The matrix to factor. - If it is known whether the matrix is symmetric or not the routine can skip checking it itself. - If is null. - If EVD algorithm failed to converge with matrix . - - - - Symmetric Householder reduction to tridiagonal form. - - The eigen vectors to work on. - Arrays for internal storage of real parts of eigenvalues - Arrays for internal storage of imaginary parts of eigenvalues - Order of initial matrix - This is derived from the Algol procedures tred2 by - Bowdler, Martin, Reinsch, and Wilkinson, Handbook for - Auto. Comp., Vol.ii-Linear Algebra, and the corresponding - Fortran subroutine in EISPACK. - - - - Symmetric tridiagonal QL algorithm. - - The eigen vectors to work on. - Arrays for internal storage of real parts of eigenvalues - Arrays for internal storage of imaginary parts of eigenvalues - Order of initial matrix - This is derived from the Algol procedures tql2, by - Bowdler, Martin, Reinsch, and Wilkinson, Handbook for - Auto. Comp., Vol.ii-Linear Algebra, and the corresponding - Fortran subroutine in EISPACK. - - - - - Nonsymmetric reduction to Hessenberg form. - - The eigen vectors to work on. - Array for internal storage of nonsymmetric Hessenberg form. - Order of initial matrix - This is derived from the Algol procedures orthes and ortran, - by Martin and Wilkinson, Handbook for Auto. Comp., - Vol.ii-Linear Algebra, and the corresponding - Fortran subroutines in EISPACK. - - - - Nonsymmetric reduction from Hessenberg to real Schur form. - - The eigen vectors to work on. - Array for internal storage of nonsymmetric Hessenberg form. - Arrays for internal storage of real parts of eigenvalues - Arrays for internal storage of imaginary parts of eigenvalues - Order of initial matrix - This is derived from the Algol procedure hqr2, - by Martin and Wilkinson, Handbook for Auto. Comp., - Vol.ii-Linear Algebra, and the corresponding - Fortran subroutine in EISPACK. - - - - Complex scalar division X/Y. - - Real part of X - Imaginary part of X - Real part of Y - Imaginary part of Y - Division result as a number. - - - - Solves a system of linear equations, AX = B, with A SVD factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A EVD factorized. - - The right hand side vector, b. - The left hand side , x. - - - - A class which encapsulates the functionality of the QR decomposition Modified Gram-Schmidt Orthogonalization. - Any real square matrix A may be decomposed as A = QR where Q is an orthogonal mxn matrix and R is an nxn upper triangular matrix. - - - The computation of the QR decomposition is done at construction time by modified Gram-Schmidt Orthogonalization. - - - - - Initializes a new instance of the class. This object creates an orthogonal matrix - using the modified Gram-Schmidt method. - - The matrix to factor. - If is null. - If row count is less then column count - If is rank deficient - - - - Solves a system of linear equations, AX = B, with A QR factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A QR factorized. - - The right hand side vector, b. - The left hand side , x. - - - - A class which encapsulates the functionality of an LU factorization. - For a matrix A, the LU factorization is a pair of lower triangular matrix L and - upper triangular matrix U so that A = L*U. - - - The computation of the LU factorization is done at construction time. - - - - - Initializes a new instance of the class. This object will compute the - LU factorization when the constructor is called and cache it's factorization. - - The matrix to factor. - If is null. - If is not a square matrix. - - - - Solves a system of linear equations, AX = B, with A LU factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A LU factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Returns the inverse of this matrix. The inverse is calculated using LU decomposition. - - The inverse of this matrix. - - - - A class which encapsulates the functionality of the QR decomposition. - Any real square matrix A may be decomposed as A = QR where Q is an orthogonal matrix - (its columns are orthogonal unit vectors meaning QTQ = I) and R is an upper triangular matrix - (also called right triangular matrix). - - - The computation of the QR decomposition is done at construction time by Householder transformation. - - - - - Initializes a new instance of the class. This object will compute the - QR factorization when the constructor is called and cache it's factorization. - - The matrix to factor. - The QR factorization method to use. - If is null. - - - - Generate column from initial matrix to work array - - Initial matrix - The first row - Column index - Generated vector - - - - Perform calculation of Q or R - - Work array - Q or R matrices - The first row - The last row - The first column - The last column - Number of available CPUs - - - - Solves a system of linear equations, AX = B, with A QR factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A QR factorized. - - The right hand side vector, b. - The left hand side , x. - - - - A class which encapsulates the functionality of the singular value decomposition (SVD) for . - Suppose M is an m-by-n matrix whose entries are real numbers. - Then there exists a factorization of the form M = UΣVT where: - - U is an m-by-m unitary matrix; - - Σ is m-by-n diagonal matrix with nonnegative real numbers on the diagonal; - - VT denotes transpose of V, an n-by-n unitary matrix; - Such a factorization is called a singular-value decomposition of M. A common convention is to order the diagonal - entries Σ(i,i) in descending order. In this case, the diagonal matrix Σ is uniquely determined - by M (though the matrices U and V are not). The diagonal entries of Σ are known as the singular values of M. - - - The computation of the singular value decomposition is done at construction time. - - - - - Initializes a new instance of the class. This object will compute the - the singular value decomposition when the constructor is called and cache it's decomposition. - - The matrix to factor. - Compute the singular U and VT vectors or not. - If is null. - - - - - Calculates absolute value of multiplied on signum function of - - Double value z1 - Double value z2 - Result multiplication of signum function and absolute value - - - - Swap column and - - Source matrix - The number of rows in - Column A index to swap - Column B index to swap - - - - Scale column by starting from row - - Source matrix - The number of rows in - Column to scale - Row to scale from - Scale value - - - - Scale vector by starting from index - - Source vector - Row to scale from - Scale value - - - - Given the Cartesian coordinates (da, db) of a point p, these function return the parameters da, db, c, and s - associated with the Givens rotation that zeros the y-coordinate of the point. - - Provides the x-coordinate of the point p. On exit contains the parameter r associated with the Givens rotation - Provides the y-coordinate of the point p. On exit contains the parameter z associated with the Givens rotation - Contains the parameter c associated with the Givens rotation - Contains the parameter s associated with the Givens rotation - This is equivalent to the DROTG LAPACK routine. - - - - Calculate Norm 2 of the column in matrix starting from row - - Source matrix - The number of rows in - Column index - Start row index - Norm2 (Euclidean norm) of the column - - - - Calculate Norm 2 of the vector starting from index - - Source vector - Start index - Norm2 (Euclidean norm) of the vector - - - - Calculate dot product of and - - Source matrix - The number of rows in - Index of column A - Index of column B - Starting row index - Dot product value - - - - Performs rotation of points in the plane. Given two vectors x and y , - each vector element of these vectors is replaced as follows: x(i) = c*x(i) + s*y(i); y(i) = c*y(i) - s*x(i) - - Source matrix - The number of rows in - Index of column A - Index of column B - Scalar "c" value - Scalar "s" value - - - - Solves a system of linear equations, AX = B, with A SVD factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A SVD factorized. - - The right hand side vector, b. - The left hand side , x. - - - - float version of the class. - - - - - Initializes a new instance of the Matrix class. - - - - - Set all values whose absolute value is smaller than the threshold to zero. - - - - - Returns the conjugate transpose of this matrix. - - The conjugate transpose of this matrix. - - - - Puts the conjugate transpose of this matrix into the result matrix. - - - - - Complex conjugates each element of this matrix and place the results into the result matrix. - - The result of the conjugation. - - - - Negate each element of this matrix and place the results into the result matrix. - - The result of the negation. - - - - Add a scalar to each element of the matrix and stores the result in the result vector. - - The scalar to add. - The matrix to store the result of the addition. - - - - Adds another matrix to this matrix. - - The matrix to add to this matrix. - The matrix to store the result of the addition. - If the other matrix is . - If the two matrices don't have the same dimensions. - - - - Subtracts a scalar from each element of the vector and stores the result in the result vector. - - The scalar to subtract. - The matrix to store the result of the subtraction. - - - - Subtracts another matrix from this matrix. - - The matrix to subtract to this matrix. - The matrix to store the result of subtraction. - If the other matrix is . - If the two matrices don't have the same dimensions. - - - - Multiplies each element of the matrix by a scalar and places results into the result matrix. - - The scalar to multiply the matrix with. - The matrix to store the result of the multiplication. - - - - Multiplies this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Divides each element of the matrix by a scalar and places results into the result matrix. - - The scalar to divide the matrix with. - The matrix to store the result of the division. - - - - Divides a scalar by each element of the matrix and stores the result in the result matrix. - - The scalar to divide by each element of the matrix. - The matrix to store the result of the division. - - - - Multiplies this matrix with transpose of another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with the conjugate transpose of another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies the conjugate transpose of this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for the given divisor each element of the matrix. - - The scalar denominator to use. - Matrix to store the results in. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for the given dividend for each element of the matrix. - - The scalar numerator to use. - A vector to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for the given divisor each element of the matrix. - - The scalar denominator to use. - Matrix to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for the given dividend for each element of the matrix. - - The scalar numerator to use. - A vector to store the results in. - - - - Pointwise multiplies this matrix with another matrix and stores the result into the result matrix. - - The matrix to pointwise multiply with this one. - The matrix to store the result of the pointwise multiplication. - - - - Pointwise divide this matrix by another matrix and stores the result into the result matrix. - - The matrix to pointwise divide this one by. - The matrix to store the result of the pointwise division. - - - - Pointwise raise this matrix to an exponent and store the result into the result matrix. - - The exponent to raise this matrix values to. - The matrix to store the result of the pointwise power. - - - - Pointwise raise this matrix to an exponent and store the result into the result matrix. - - The exponent to raise this matrix values to. - The vector to store the result of the pointwise power. - - - - Pointwise canonical modulus, where the result has the sign of the divisor, - of this matrix with another matrix and stores the result into the result matrix. - - The pointwise denominator matrix to use - The result of the modulus. - - - - Pointwise remainder (% operator), where the result has the sign of the dividend, - of this matrix with another matrix and stores the result into the result matrix. - - The pointwise denominator matrix to use - The result of the modulus. - - - - Pointwise applies the exponential function to each value and stores the result into the result matrix. - - The matrix to store the result. - - - - Pointwise applies the natural logarithm function to each value and stores the result into the result matrix. - - The matrix to store the result. - - - - Computes the Moore-Penrose Pseudo-Inverse of this matrix. - - - - - Computes the trace of this matrix. - - The trace of this matrix - If the matrix is not square - - - Calculates the induced L1 norm of this matrix. - The maximum absolute column sum of the matrix. - - - Calculates the induced infinity norm of this matrix. - The maximum absolute row sum of the matrix. - - - Calculates the entry-wise Frobenius norm of this matrix. - The square root of the sum of the squared values. - - - - Calculates the p-norms of all row vectors. - Typical values for p are 1.0 (L1, Manhattan norm), 2.0 (L2, Euclidean norm) and positive infinity (infinity norm) - - - - - Calculates the p-norms of all column vectors. - Typical values for p are 1.0 (L1, Manhattan norm), 2.0 (L2, Euclidean norm) and positive infinity (infinity norm) - - - - - Normalizes all row vectors to a unit p-norm. - Typical values for p are 1.0 (L1, Manhattan norm), 2.0 (L2, Euclidean norm) and positive infinity (infinity norm) - - - - - Normalizes all column vectors to a unit p-norm. - Typical values for p are 1.0 (L1, Manhattan norm), 2.0 (L2, Euclidean norm) and positive infinity (infinity norm) - - - - - Calculates the value sum of each row vector. - - - - - Calculates the absolute value sum of each row vector. - - - - - Calculates the value sum of each column vector. - - - - - Calculates the absolute value sum of each column vector. - - - - - Evaluates whether this matrix is Hermitian (conjugate symmetric). - - - - - A Bi-Conjugate Gradient stabilized iterative matrix solver. - - - - The Bi-Conjugate Gradient Stabilized (BiCGStab) solver is an 'improvement' - of the standard Conjugate Gradient (CG) solver. Unlike the CG solver the - BiCGStab can be used on non-symmetric matrices.
    - Note that much of the success of the solver depends on the selection of the - proper preconditioner. -
    - - The Bi-CGSTAB algorithm was taken from:
    - Templates for the solution of linear systems: Building blocks - for iterative methods -
    - Richard Barrett, Michael Berry, Tony F. Chan, James Demmel, - June M. Donato, Jack Dongarra, Victor Eijkhout, Roldan Pozo, - Charles Romine and Henk van der Vorst -
    - Url: http://www.netlib.org/templates/Templates.html -
    - Algorithm is described in Chapter 2, section 2.3.8, page 27 -
    - - The example code below provides an indication of the possible use of the - solver. - -
    -
    - - - Calculates the true residual of the matrix equation Ax = b according to: residual = b - Ax - - Instance of the A. - Residual values in . - Instance of the x. - Instance of the b. - - - - Solves the matrix equation Ax = b, where A is the coefficient matrix, b is the - solution vector and x is the unknown vector. - - The coefficient , A. - The solution , b. - The result , x. - The iterator to use to control when to stop iterating. - The preconditioner to use for approximations. - - - - A composite matrix solver. The actual solver is made by a sequence of - matrix solvers. - - - - Solver based on:
    - Faster PDE-based simulations using robust composite linear solvers
    - S. Bhowmicka, P. Raghavan a,*, L. McInnes b, B. Norris
    - Future Generation Computer Systems, Vol 20, 2004, pp 373�387
    -
    - - Note that if an iterator is passed to this solver it will be used for all the sub-solvers. - -
    -
    - - - The collection of solvers that will be used - - - - - Solves the matrix equation Ax = b, where A is the coefficient matrix, b is the - solution vector and x is the unknown vector. - - The coefficient matrix, A. - The solution vector, b - The result vector, x - The iterator to use to control when to stop iterating. - The preconditioner to use for approximations. - - - - A diagonal preconditioner. The preconditioner uses the inverse - of the matrix diagonal as preconditioning values. - - - - - The inverse of the matrix diagonal. - - - - - Returns the decomposed matrix diagonal. - - The matrix diagonal. - - - - Initializes the preconditioner and loads the internal data structures. - - - The upon which this preconditioner is based. - If is . - If is not a square matrix. - - - - Approximates the solution to the matrix equation Ax = b. - - The right hand side vector. - The left hand side vector. Also known as the result vector. - - - - A Generalized Product Bi-Conjugate Gradient iterative matrix solver. - - - - The Generalized Product Bi-Conjugate Gradient (GPBiCG) solver is an - alternative version of the Bi-Conjugate Gradient stabilized (CG) solver. - Unlike the CG solver the GPBiCG solver can be used on - non-symmetric matrices.
    - Note that much of the success of the solver depends on the selection of the - proper preconditioner. -
    - - The GPBiCG algorithm was taken from:
    - GPBiCG(m,l): A hybrid of BiCGSTAB and GPBiCG methods with - efficiency and robustness -
    - S. Fujino -
    - Applied Numerical Mathematics, Volume 41, 2002, pp 107 - 117 -
    -
    - - The example code below provides an indication of the possible use of the - solver. - -
    -
    - - - Indicates the number of BiCGStab steps should be taken - before switching. - - - - - Indicates the number of GPBiCG steps should be taken - before switching. - - - - - Gets or sets the number of steps taken with the BiCgStab algorithm - before switching over to the GPBiCG algorithm. - - - - - Gets or sets the number of steps taken with the GPBiCG algorithm - before switching over to the BiCgStab algorithm. - - - - - Calculates the true residual of the matrix equation Ax = b according to: residual = b - Ax - - Instance of the A. - Residual values in . - Instance of the x. - Instance of the b. - - - - Decide if to do steps with BiCgStab - - Number of iteration - true if yes, otherwise false - - - - Solves the matrix equation Ax = b, where A is the coefficient matrix, b is the - solution vector and x is the unknown vector. - - The coefficient matrix, A. - The solution vector, b - The result vector, x - The iterator to use to control when to stop iterating. - The preconditioner to use for approximations. - - - - An incomplete, level 0, LU factorization preconditioner. - - - The ILU(0) algorithm was taken from:
    - Iterative methods for sparse linear systems
    - Yousef Saad
    - Algorithm is described in Chapter 10, section 10.3.2, page 275
    -
    -
    - - - The matrix holding the lower (L) and upper (U) matrices. The - decomposition matrices are combined to reduce storage. - - - - - Returns the upper triagonal matrix that was created during the LU decomposition. - - A new matrix containing the upper triagonal elements. - - - - Returns the lower triagonal matrix that was created during the LU decomposition. - - A new matrix containing the lower triagonal elements. - - - - Initializes the preconditioner and loads the internal data structures. - - The matrix upon which the preconditioner is based. - If is . - If is not a square matrix. - - - - Approximates the solution to the matrix equation Ax = b. - - The right hand side vector. - The left hand side vector. Also known as the result vector. - - - - This class performs an Incomplete LU factorization with drop tolerance - and partial pivoting. The drop tolerance indicates which additional entries - will be dropped from the factorized LU matrices. - - - The ILUTP-Mem algorithm was taken from:
    - ILUTP_Mem: a Space-Efficient Incomplete LU Preconditioner -
    - Tzu-Yi Chen, Department of Mathematics and Computer Science,
    - Pomona College, Claremont CA 91711, USA
    - Published in:
    - Lecture Notes in Computer Science
    - Volume 3046 / 2004
    - pp. 20 - 28
    - Algorithm is described in Section 2, page 22 -
    -
    - - - The default fill level. - - - - - The default drop tolerance. - - - - - The decomposed upper triangular matrix. - - - - - The decomposed lower triangular matrix. - - - - - The array containing the pivot values. - - - - - The fill level. - - - - - The drop tolerance. - - - - - The pivot tolerance. - - - - - Initializes a new instance of the class with the default settings. - - - - - Initializes a new instance of the class with the specified settings. - - - The amount of fill that is allowed in the matrix. The value is a fraction of - the number of non-zero entries in the original matrix. Values should be positive. - - - The absolute drop tolerance which indicates below what absolute value an entry - will be dropped from the matrix. A drop tolerance of 0.0 means that no values - will be dropped. Values should always be positive. - - - The pivot tolerance which indicates at what level pivoting will take place. A - value of 0.0 means that no pivoting will take place. - - - - - Gets or sets the amount of fill that is allowed in the matrix. The - value is a fraction of the number of non-zero entries in the original - matrix. The standard value is 200. - - - - Values should always be positive and can be higher than 1.0. A value lower - than 1.0 means that the eventual preconditioner matrix will have fewer - non-zero entries as the original matrix. A value higher than 1.0 means that - the eventual preconditioner can have more non-zero values than the original - matrix. - - - Note that any changes to the FillLevel after creating the preconditioner - will invalidate the created preconditioner and will require a re-initialization of - the preconditioner. - - - Thrown if a negative value is provided. - - - - Gets or sets the absolute drop tolerance which indicates below what absolute value - an entry will be dropped from the matrix. The standard value is 0.0001. - - - - The values should always be positive and can be larger than 1.0. A low value will - keep more small numbers in the preconditioner matrix. A high value will remove - more small numbers from the preconditioner matrix. - - - Note that any changes to the DropTolerance after creating the preconditioner - will invalidate the created preconditioner and will require a re-initialization of - the preconditioner. - - - Thrown if a negative value is provided. - - - - Gets or sets the pivot tolerance which indicates at what level pivoting will - take place. The standard value is 0.0 which means pivoting will never take place. - - - - The pivot tolerance is used to calculate if pivoting is necessary. Pivoting - will take place if any of the values in a row is bigger than the - diagonal value of that row divided by the pivot tolerance, i.e. pivoting - will take place if row(i,j) > row(i,i) / PivotTolerance for - any j that is not equal to i. - - - Note that any changes to the PivotTolerance after creating the preconditioner - will invalidate the created preconditioner and will require a re-initialization of - the preconditioner. - - - Thrown if a negative value is provided. - - - - Returns the upper triagonal matrix that was created during the LU decomposition. - - - This method is used for debugging purposes only and should normally not be used. - - A new matrix containing the upper triagonal elements. - - - - Returns the lower triagonal matrix that was created during the LU decomposition. - - - This method is used for debugging purposes only and should normally not be used. - - A new matrix containing the lower triagonal elements. - - - - Returns the pivot array. This array is not needed for normal use because - the preconditioner will return the solution vector values in the proper order. - - - This method is used for debugging purposes only and should normally not be used. - - The pivot array. - - - - Initializes the preconditioner and loads the internal data structures. - - - The upon which this preconditioner is based. Note that the - method takes a general matrix type. However internally the data is stored - as a sparse matrix. Therefore it is not recommended to pass a dense matrix. - - If is . - If is not a square matrix. - - - - Pivot elements in the according to internal pivot array - - Row to pivot in - - - - Was pivoting already performed - - Pivots already done - Current item to pivot - true if performed, otherwise false - - - - Swap columns in the - - Source . - First column index to swap - Second column index to swap - - - - Sort vector descending, not changing vector but placing sorted indices to - - Start sort form - Sort till upper bound - Array with sorted vector indices - Source - - - - Approximates the solution to the matrix equation Ax = b. - - The right hand side vector. - The left hand side vector. Also known as the result vector. - - - - Pivot elements in according to internal pivot array - - Source . - Result after pivoting. - - - - An element sort algorithm for the class. - - - This sort algorithm is used to sort the columns in a sparse matrix based on - the value of the element on the diagonal of the matrix. - - - - - Sorts the elements of the vector in decreasing - fashion. The vector itself is not affected. - - The starting index. - The stopping index. - An array that will contain the sorted indices once the algorithm finishes. - The that contains the values that need to be sorted. - - - - Sorts the elements of the vector in decreasing - fashion using heap sort algorithm. The vector itself is not affected. - - The starting index. - The stopping index. - An array that will contain the sorted indices once the algorithm finishes. - The that contains the values that need to be sorted. - - - - Build heap for double indices - - Root position - Length of - Indices of - Target - - - - Sift double indices - - Indices of - Target - Root position - Length of - - - - Sorts the given integers in a decreasing fashion. - - The values. - - - - Sort the given integers in a decreasing fashion using heapsort algorithm - - Array of values to sort - Length of - - - - Build heap - - Target values array - Root position - Length of - - - - Sift values - - Target value array - Root position - Length of - - - - Exchange values in array - - Target values array - First value to exchange - Second value to exchange - - - - A simple milu(0) preconditioner. - - - Original Fortran code by Yousef Saad (07 January 2004) - - - - Use modified or standard ILU(0) - - - - Gets or sets a value indicating whether to use modified or standard ILU(0). - - - - - Gets a value indicating whether the preconditioner is initialized. - - - - - Initializes the preconditioner and loads the internal data structures. - - The matrix upon which the preconditioner is based. - If is . - If is not a square or is not an - instance of SparseCompressedRowMatrixStorage. - - - - Approximates the solution to the matrix equation Ax = b. - - The right hand side vector b. - The left hand side vector x. - - - - MILU0 is a simple milu(0) preconditioner. - - Order of the matrix. - Matrix values in CSR format (input). - Column indices (input). - Row pointers (input). - Matrix values in MSR format (output). - Row pointers and column indices (output). - Pointer to diagonal elements (output). - True if the modified/MILU algorithm should be used (recommended) - Returns 0 on success or k > 0 if a zero pivot was encountered at step k. - - - - A Multiple-Lanczos Bi-Conjugate Gradient stabilized iterative matrix solver. - - - - The Multiple-Lanczos Bi-Conjugate Gradient stabilized (ML(k)-BiCGStab) solver is an 'improvement' - of the standard BiCgStab solver. - - - The algorithm was taken from:
    - ML(k)BiCGSTAB: A BiCGSTAB variant based on multiple Lanczos starting vectors -
    - Man-Chung Yeung and Tony F. Chan -
    - SIAM Journal of Scientific Computing -
    - Volume 21, Number 4, pp. 1263 - 1290 -
    - - The example code below provides an indication of the possible use of the - solver. - -
    -
    - - - The default number of starting vectors. - - - - - The collection of starting vectors which are used as the basis for the Krylov sub-space. - - - - - The number of starting vectors used by the algorithm - - - - - Gets or sets the number of starting vectors. - - - Must be larger than 1 and smaller than the number of variables in the matrix that - for which this solver will be used. - - - - - Resets the number of starting vectors to the default value. - - - - - Gets or sets a series of orthonormal vectors which will be used as basis for the - Krylov sub-space. - - - - - Gets the number of starting vectors to create - - Maximum number - Number of variables - Number of starting vectors to create - - - - Returns an array of starting vectors. - - The maximum number of starting vectors that should be created. - The number of variables. - - An array with starting vectors. The array will never be larger than the - but it may be smaller if - the is smaller than - the . - - - - - Create random vectors array - - Number of vectors - Size of each vector - Array of random vectors - - - - Calculates the true residual of the matrix equation Ax = b according to: residual = b - Ax - - Source A. - Residual data. - x data. - b data. - - - - Solves the matrix equation Ax = b, where A is the coefficient matrix, b is the - solution vector and x is the unknown vector. - - The coefficient matrix, A. - The solution vector, b - The result vector, x - The iterator to use to control when to stop iterating. - The preconditioner to use for approximations. - - - - A Transpose Free Quasi-Minimal Residual (TFQMR) iterative matrix solver. - - - - The TFQMR algorithm was taken from:
    - Iterative methods for sparse linear systems. -
    - Yousef Saad -
    - Algorithm is described in Chapter 7, section 7.4.3, page 219 -
    - - The example code below provides an indication of the possible use of the - solver. - -
    -
    - - - Calculates the true residual of the matrix equation Ax = b according to: residual = b - Ax - - Instance of the A. - Residual values in . - Instance of the x. - Instance of the b. - - - - Is even? - - Number to check - true if even, otherwise false - - - - Solves the matrix equation Ax = b, where A is the coefficient matrix, b is the - solution vector and x is the unknown vector. - - The coefficient matrix, A. - The solution vector, b - The result vector, x - The iterator to use to control when to stop iterating. - The preconditioner to use for approximations. - - - - A Matrix with sparse storage, intended for very large matrices where most of the cells are zero. - The underlying storage scheme is 3-array compressed-sparse-row (CSR) Format. - Wikipedia - CSR. - - - - - Gets the number of non zero elements in the matrix. - - The number of non zero elements. - - - - Create a new sparse matrix straight from an initialized matrix storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a new square sparse matrix with the given number of rows and columns. - All cells of the matrix will be initialized to zero. - - If the order is less than one. - - - - Create a new sparse matrix with the given number of rows and columns. - All cells of the matrix will be initialized to zero. - - If the row or column count is less than one. - - - - Create a new sparse matrix as a copy of the given other matrix. - This new matrix will be independent from the other matrix. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given two-dimensional array. - This new matrix will be independent from the provided array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given enumerable. - The enumerable is assumed to be in row-major order (row by row). - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - - Create a new sparse matrix with the given number of rows and columns as a copy of the given array. - The array is assumed to be in column-major order (column by column). - This new matrix will be independent from the provided array. - A new memory block will be allocated for storing the matrix. - - - - - - Create a new sparse matrix as a copy of the given enumerable of enumerable columns. - Each enumerable in the master enumerable specifies a column. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given enumerable of enumerable columns. - Each enumerable in the master enumerable specifies a column. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given column arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given column arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given column vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given column vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given enumerable of enumerable rows. - Each enumerable in the master enumerable specifies a row. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given enumerable of enumerable rows. - Each enumerable in the master enumerable specifies a row. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given row arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given row arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given row vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given row vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix with the diagonal as a copy of the given vector. - This new matrix will be independent from the vector. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix with the diagonal as a copy of the given vector. - This new matrix will be independent from the vector. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix with the diagonal as a copy of the given array. - This new matrix will be independent from the array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix with the diagonal as a copy of the given array. - This new matrix will be independent from the array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix and initialize each value to the same provided value. - - - - - Create a new sparse matrix and initialize each value using the provided init function. - - - - - Create a new diagonal sparse matrix and initialize each diagonal value to the same provided value. - - - - - Create a new diagonal sparse matrix and initialize each diagonal value using the provided init function. - - - - - Create a new square sparse identity matrix where each diagonal value is set to One. - - - - - Returns a new matrix containing the lower triangle of this matrix. - - The lower triangle of this matrix. - - - - Puts the lower triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If is . - If the result matrix's dimensions are not the same as this matrix. - - - - Puts the lower triangle of this matrix into the result matrix. - - Where to store the lower triangle. - - - - Returns a new matrix containing the upper triangle of this matrix. - - The upper triangle of this matrix. - - - - Puts the upper triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If is . - If the result matrix's dimensions are not the same as this matrix. - - - - Puts the upper triangle of this matrix into the result matrix. - - Where to store the lower triangle. - - - - Returns a new matrix containing the lower triangle of this matrix. The new matrix - does not contain the diagonal elements of this matrix. - - The lower triangle of this matrix. - - - - Puts the strictly lower triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If is . - If the result matrix's dimensions are not the same as this matrix. - - - - Puts the strictly lower triangle of this matrix into the result matrix. - - Where to store the lower triangle. - - - - Returns a new matrix containing the upper triangle of this matrix. The new matrix - does not contain the diagonal elements of this matrix. - - The upper triangle of this matrix. - - - - Puts the strictly upper triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If is . - If the result matrix's dimensions are not the same as this matrix. - - - - Puts the strictly upper triangle of this matrix into the result matrix. - - Where to store the lower triangle. - - - - Negate each element of this matrix and place the results into the result matrix. - - The result of the negation. - - - Calculates the induced infinity norm of this matrix. - The maximum absolute row sum of the matrix. - - - Calculates the entry-wise Frobenius norm of this matrix. - The square root of the sum of the squared values. - - - - Adds another matrix to this matrix. - - The matrix to add to this matrix. - The matrix to store the result of the addition. - If the other matrix is . - If the two matrices don't have the same dimensions. - - - - Subtracts another matrix from this matrix. - - The matrix to subtract to this matrix. - The matrix to store the result of subtraction. - If the other matrix is . - If the two matrices don't have the same dimensions. - - - - Multiplies each element of the matrix by a scalar and places results into the result matrix. - - The scalar to multiply the matrix with. - The matrix to store the result of the multiplication. - - - - Multiplies this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with transpose of another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Pointwise multiplies this matrix with another matrix and stores the result into the result matrix. - - The matrix to pointwise multiply with this one. - The matrix to store the result of the pointwise multiplication. - - - - Pointwise divide this matrix by another matrix and stores the result into the result matrix. - - The matrix to pointwise divide this one by. - The matrix to store the result of the pointwise division. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for the given divisor each element of the matrix. - - The scalar denominator to use. - Matrix to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for the given divisor each element of the matrix. - - The scalar denominator to use. - Matrix to store the results in. - - - - Evaluates whether this matrix is symmetric. - - - - - Adds two matrices together and returns the results. - - This operator will allocate new memory for the result. It will - choose the representation of either or depending on which - is denser. - The left matrix to add. - The right matrix to add. - The result of the addition. - If and don't have the same dimensions. - If or is . - - - - Returns a Matrix containing the same values of . - - The matrix to get the values from. - A matrix containing a the same values as . - If is . - - - - Subtracts two matrices together and returns the results. - - This operator will allocate new memory for the result. It will - choose the representation of either or depending on which - is denser. - The left matrix to subtract. - The right matrix to subtract. - The result of the addition. - If and don't have the same dimensions. - If or is . - - - - Negates each element of the matrix. - - The matrix to negate. - A matrix containing the negated values. - If is . - - - - Multiplies a Matrix by a constant and returns the result. - - The matrix to multiply. - The constant to multiply the matrix by. - The result of the multiplication. - If is . - - - - Multiplies a Matrix by a constant and returns the result. - - The matrix to multiply. - The constant to multiply the matrix by. - The result of the multiplication. - If is . - - - - Multiplies two matrices. - - This operator will allocate new memory for the result. It will - choose the representation of either or depending on which - is denser. - The left matrix to multiply. - The right matrix to multiply. - The result of multiplication. - If or is . - If the dimensions of or don't conform. - - - - Multiplies a Matrix and a Vector. - - The matrix to multiply. - The vector to multiply. - The result of multiplication. - If or is . - - - - Multiplies a Vector and a Matrix. - - The vector to multiply. - The matrix to multiply. - The result of multiplication. - If or is . - - - - Multiplies a Matrix by a constant and returns the result. - - The matrix to multiply. - The constant to multiply the matrix by. - The result of the multiplication. - If is . - - - - A vector with sparse storage, intended for very large vectors where most of the cells are zero. - - The sparse vector is not thread safe. - - - - Gets the number of non zero elements in the vector. - - The number of non zero elements. - - - - Create a new sparse vector straight from an initialized vector storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a new sparse vector with the given length. - All cells of the vector will be initialized to zero. - - If length is less than one. - - - - Create a new sparse vector as a copy of the given other vector. - This new vector will be independent from the other vector. - A new memory block will be allocated for storing the vector. - - - - - Create a new sparse vector as a copy of the given enumerable. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new sparse vector as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new sparse vector as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new sparse vector and initialize each value using the provided value. - - - - - Create a new sparse vector and initialize each value using the provided init function. - - - - - Adds a scalar to each element of the vector and stores the result in the result vector. - Warning, the new 'sparse vector' with a non-zero scalar added to it will be a 100% filled - sparse vector and very inefficient. Would be better to work with a dense vector instead. - - - The scalar to add. - - - The vector to store the result of the addition. - - - - - Adds another vector to this vector and stores the result into the result vector. - - - The vector to add to this one. - - - The vector to store the result of the addition. - - - - - Subtracts a scalar from each element of the vector and stores the result in the result vector. - - - The scalar to subtract. - - - The vector to store the result of the subtraction. - - - - - Subtracts another vector to this vector and stores the result into the result vector. - - - The vector to subtract from this one. - - - The vector to store the result of the subtraction. - - - - - Negates vector and saves result to - - Target vector - - - - Multiplies a scalar to each element of the vector and stores the result in the result vector. - - - The scalar to multiply. - - - The vector to store the result of the multiplication. - - - - - Computes the dot product between this vector and another vector. - - The other vector. - The sum of a[i]*b[i] for all i. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for each element of the vector for the given divisor. - - The scalar denominator to use. - A vector to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for each element of the vector for the given divisor. - - The scalar denominator to use. - A vector to store the results in. - - - - Adds two Vectors together and returns the results. - - One of the vectors to add. - The other vector to add. - The result of the addition. - If and are not the same size. - If or is . - - - - Returns a Vector containing the negated values of . - - The vector to get the values from. - A vector containing the negated values as . - If is . - - - - Subtracts two Vectors and returns the results. - - The vector to subtract from. - The vector to subtract. - The result of the subtraction. - If and are not the same size. - If or is . - - - - Multiplies a vector with a scalar. - - The vector to scale. - The scalar value. - The result of the multiplication. - If is . - - - - Multiplies a vector with a scalar. - - The scalar value. - The vector to scale. - The result of the multiplication. - If is . - - - - Computes the dot product between two Vectors. - - The left row vector. - The right column vector. - The dot product between the two vectors. - If and are not the same size. - If or is . - - - - Divides a vector with a scalar. - - The vector to divide. - The scalar value. - The result of the division. - If is . - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - of each element of the vector of the given divisor. - - The vector whose elements we want to compute the modulus of. - The divisor to use, - The result of the calculation - If is . - - - - Returns the index of the absolute minimum element. - - The index of absolute minimum element. - - - - Returns the index of the absolute maximum element. - - The index of absolute maximum element. - - - - Returns the index of the maximum element. - - The index of maximum element. - - - - Returns the index of the minimum element. - - The index of minimum element. - - - - Computes the sum of the vector's elements. - - The sum of the vector's elements. - - - - Calculates the L1 norm of the vector, also known as Manhattan norm. - - The sum of the absolute values. - - - - Calculates the infinity norm of the vector. - - The maximum absolute value. - - - - Computes the p-Norm. - - The p value. - Scalar ret = ( ∑|this[i]|^p )^(1/p) - - - - Pointwise multiplies this vector with another vector and stores the result into the result vector. - - The vector to pointwise multiply with this one. - The vector to store the result of the pointwise multiplication. - - - - Creates a float sparse vector based on a string. The string can be in the following formats (without the - quotes): 'n', 'n,n,..', '(n,n,..)', '[n,n,...]', where n is a float. - - - A float sparse vector containing the values specified by the given string. - - - the string to parse. - - - An that supplies culture-specific formatting information. - - - - - Converts the string representation of a real sparse vector to float-precision sparse vector equivalent. - A return value indicates whether the conversion succeeded or failed. - - - A string containing a real vector to convert. - - - The parsed value. - - - If the conversion succeeds, the result will contain a complex number equivalent to value. - Otherwise the result will be null. - - - - - Converts the string representation of a real sparse vector to float-precision sparse vector equivalent. - A return value indicates whether the conversion succeeded or failed. - - - A string containing a real vector to convert. - - - An that supplies culture-specific formatting information about value. - - - The parsed value. - - - If the conversion succeeds, the result will contain a complex number equivalent to value. - Otherwise the result will be null. - - - - - float version of the class. - - - - - Initializes a new instance of the Vector class. - - - - - Set all values whose absolute value is smaller than the threshold to zero. - - - - - Conjugates vector and save result to - - Target vector - - - - Negates vector and saves result to - - Target vector - - - - Adds a scalar to each element of the vector and stores the result in the result vector. - - - The scalar to add. - - - The vector to store the result of the addition. - - - - - Adds another vector to this vector and stores the result into the result vector. - - - The vector to add to this one. - - - The vector to store the result of the addition. - - - - - Subtracts a scalar from each element of the vector and stores the result in the result vector. - - - The scalar to subtract. - - - The vector to store the result of the subtraction. - - - - - Subtracts another vector to this vector and stores the result into the result vector. - - - The vector to subtract from this one. - - - The vector to store the result of the subtraction. - - - - - Multiplies a scalar to each element of the vector and stores the result in the result vector. - - - The scalar to multiply. - - - The vector to store the result of the multiplication. - - - - - Divides each element of the vector by a scalar and stores the result in the result vector. - - - The scalar to divide with. - - - The vector to store the result of the division. - - - - - Divides a scalar by each element of the vector and stores the result in the result vector. - - The scalar to divide. - The vector to store the result of the division. - - - - Pointwise multiplies this vector with another vector and stores the result into the result vector. - - The vector to pointwise multiply with this one. - The vector to store the result of the pointwise multiplication. - - - - Pointwise divide this vector with another vector and stores the result into the result vector. - - The vector to pointwise divide this one by. - The vector to store the result of the pointwise division. - - - - Pointwise raise this vector to an exponent and store the result into the result vector. - - The exponent to raise this vector values to. - The vector to store the result of the pointwise power. - - - - Pointwise raise this vector to an exponent vector and store the result into the result vector. - - The exponent vector to raise this vector values to. - The vector to store the result of the pointwise power. - - - - Pointwise canonical modulus, where the result has the sign of the divisor, - of this vector with another vector and stores the result into the result vector. - - The pointwise denominator vector to use. - The result of the modulus. - - - - Pointwise remainder (% operator), where the result has the sign of the dividend, - of this vector with another vector and stores the result into the result vector. - - The pointwise denominator vector to use. - The result of the modulus. - - - - Pointwise applies the exponential function to each value and stores the result into the result vector. - - The vector to store the result. - - - - Pointwise applies the natural logarithm function to each value and stores the result into the result vector. - - The vector to store the result. - - - - Computes the dot product between this vector and another vector. - - The other vector. - The sum of a[i]*b[i] for all i. - - - - Computes the dot product between the conjugate of this vector and another vector. - - The other vector. - The sum of conj(a[i])*b[i] for all i. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for each element of the vector for the given divisor. - - The scalar denominator to use. - A vector to store the results in. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for the given dividend for each element of the vector. - - The scalar numerator to use. - A vector to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for each element of the vector for the given divisor. - - The scalar denominator to use. - A vector to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for the given dividend for each element of the vector. - - The scalar numerator to use. - A vector to store the results in. - - - - Returns the value of the absolute minimum element. - - The value of the absolute minimum element. - - - - Returns the index of the absolute minimum element. - - The index of absolute minimum element. - - - - Returns the value of the absolute maximum element. - - The value of the absolute maximum element. - - - - Returns the index of the absolute maximum element. - - The index of absolute maximum element. - - - - Computes the sum of the vector's elements. - - The sum of the vector's elements. - - - - Calculates the L1 norm of the vector, also known as Manhattan norm. - - The sum of the absolute values. - - - - Calculates the L2 norm of the vector, also known as Euclidean norm. - - The square root of the sum of the squared values. - - - - Calculates the infinity norm of the vector. - - The maximum absolute value. - - - - Computes the p-Norm. - - - The p value. - - - Scalar ret = ( ∑|At(i)|^p )^(1/p) - - - - - Returns the index of the maximum element. - - The index of maximum element. - - - - Returns the index of the minimum element. - - The index of minimum element. - - - - Normalizes this vector to a unit vector with respect to the p-norm. - - - The p value. - - - This vector normalized to a unit vector with respect to the p-norm. - - - - - A Matrix class with dense storage. The underlying storage is a one dimensional array in column-major order (column by column). - - - - - Number of rows. - - Using this instead of the RowCount property to speed up calculating - a matrix index in the data array. - - - - Number of columns. - - Using this instead of the ColumnCount property to speed up calculating - a matrix index in the data array. - - - - Gets the matrix's data. - - The matrix's data. - - - - Create a new dense matrix straight from an initialized matrix storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a new square dense matrix with the given number of rows and columns. - All cells of the matrix will be initialized to zero. - - If the order is less than one. - - - - Create a new dense matrix with the given number of rows and columns. - All cells of the matrix will be initialized to zero. - - If the row or column count is less than one. - - - - Create a new dense matrix with the given number of rows and columns directly binding to a raw array. - The array is assumed to be in column-major order (column by column) and is used directly without copying. - Very efficient, but changes to the array and the matrix will affect each other. - - - - - - Create a new dense matrix as a copy of the given other matrix. - This new matrix will be independent from the other matrix. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given two-dimensional array. - This new matrix will be independent from the provided array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable. - The enumerable is assumed to be in column-major order (column by column). - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable of enumerable columns. - Each enumerable in the master enumerable specifies a column. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable of enumerable columns. - Each enumerable in the master enumerable specifies a column. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given column arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given column arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given column vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given column vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable of enumerable rows. - Each enumerable in the master enumerable specifies a row. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable of enumerable rows. - Each enumerable in the master enumerable specifies a row. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given row arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given row arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given row vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given row vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix with the diagonal as a copy of the given vector. - This new matrix will be independent from the vector. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix with the diagonal as a copy of the given vector. - This new matrix will be independent from the vector. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix with the diagonal as a copy of the given array. - This new matrix will be independent from the array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix with the diagonal as a copy of the given array. - This new matrix will be independent from the array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix and initialize each value to the same provided value. - - - - - Create a new dense matrix and initialize each value using the provided init function. - - - - - Create a new diagonal dense matrix and initialize each diagonal value to the same provided value. - - - - - Create a new diagonal dense matrix and initialize each diagonal value using the provided init function. - - - - - Create a new square sparse identity matrix where each diagonal value is set to One. - - - - - Create a new dense matrix with values sampled from the provided random distribution. - - - - - Gets the matrix's data. - - The matrix's data. - - - Calculates the induced L1 norm of this matrix. - The maximum absolute column sum of the matrix. - - - Calculates the induced infinity norm of this matrix. - The maximum absolute row sum of the matrix. - - - Calculates the entry-wise Frobenius norm of this matrix. - The square root of the sum of the squared values. - - - - Negate each element of this matrix and place the results into the result matrix. - - The result of the negation. - - - - Complex conjugates each element of this matrix and place the results into the result matrix. - - The result of the conjugation. - - - - Add a scalar to each element of the matrix and stores the result in the result vector. - - The scalar to add. - The matrix to store the result of the addition. - - - - Adds another matrix to this matrix. - - The matrix to add to this matrix. - The matrix to store the result of add - If the other matrix is . - If the two matrices don't have the same dimensions. - - - - Subtracts a scalar from each element of the matrix and stores the result in the result vector. - - The scalar to subtract. - The matrix to store the result of the subtraction. - - - - Subtracts another matrix from this matrix. - - The matrix to subtract. - The matrix to store the result of the subtraction. - - - - Multiplies each element of the matrix by a scalar and places results into the result matrix. - - The scalar to multiply the matrix with. - The matrix to store the result of the multiplication. - - - - Multiplies this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with transpose of another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with the conjugate transpose of another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies the conjugate transpose of this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Divides each element of the matrix by a scalar and places results into the result matrix. - - The scalar to divide the matrix with. - The matrix to store the result of the division. - - - - Pointwise multiplies this matrix with another matrix and stores the result into the result matrix. - - The matrix to pointwise multiply with this one. - The matrix to store the result of the pointwise multiplication. - - - - Pointwise divide this matrix by another matrix and stores the result into the result matrix. - - The matrix to pointwise divide this one by. - The matrix to store the result of the pointwise division. - - - - Pointwise raise this matrix to an exponent and store the result into the result matrix. - - The exponent to raise this matrix values to. - The vector to store the result of the pointwise power. - - - - Computes the trace of this matrix. - - The trace of this matrix - If the matrix is not square - - - - Adds two matrices together and returns the results. - - This operator will allocate new memory for the result. It will - choose the representation of either or depending on which - is denser. - The left matrix to add. - The right matrix to add. - The result of the addition. - If and don't have the same dimensions. - If or is . - - - - Returns a Matrix containing the same values of . - - The matrix to get the values from. - A matrix containing a the same values as . - If is . - - - - Subtracts two matrices together and returns the results. - - This operator will allocate new memory for the result. It will - choose the representation of either or depending on which - is denser. - The left matrix to subtract. - The right matrix to subtract. - The result of the addition. - If and don't have the same dimensions. - If or is . - - - - Negates each element of the matrix. - - The matrix to negate. - A matrix containing the negated values. - If is . - - - - Multiplies a Matrix by a constant and returns the result. - - The matrix to multiply. - The constant to multiply the matrix by. - The result of the multiplication. - If is . - - - - Multiplies a Matrix by a constant and returns the result. - - The matrix to multiply. - The constant to multiply the matrix by. - The result of the multiplication. - If is . - - - - Multiplies two matrices. - - This operator will allocate new memory for the result. It will - choose the representation of either or depending on which - is denser. - The left matrix to multiply. - The right matrix to multiply. - The result of multiplication. - If or is . - If the dimensions of or don't conform. - - - - Multiplies a Matrix and a Vector. - - The matrix to multiply. - The vector to multiply. - The result of multiplication. - If or is . - - - - Multiplies a Vector and a Matrix. - - The vector to multiply. - The matrix to multiply. - The result of multiplication. - If or is . - - - - Multiplies a Matrix by a constant and returns the result. - - The matrix to multiply. - The constant to multiply the matrix by. - The result of the multiplication. - If is . - - - - Evaluates whether this matrix is symmetric. - - - - - Evaluates whether this matrix is Hermitian (conjugate symmetric). - - - - - A vector using dense storage. - - - - - Number of elements - - - - - Gets the vector's data. - - - - - Create a new dense vector straight from an initialized vector storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a new dense vector with the given length. - All cells of the vector will be initialized to zero. - - If length is less than one. - - - - Create a new dense vector directly binding to a raw array. - The array is used directly without copying. - Very efficient, but changes to the array and the vector will affect each other. - - - - - Create a new dense vector as a copy of the given other vector. - This new vector will be independent from the other vector. - A new memory block will be allocated for storing the vector. - - - - - Create a new dense vector as a copy of the given array. - This new vector will be independent from the array. - A new memory block will be allocated for storing the vector. - - - - - Create a new dense vector as a copy of the given enumerable. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new dense vector as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new dense vector as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new dense vector and initialize each value using the provided value. - - - - - Create a new dense vector and initialize each value using the provided init function. - - - - - Create a new dense vector with values sampled from the provided random distribution. - - - - - Gets the vector's data. - - The vector's data. - - - - Returns a reference to the internal data structure. - - The DenseVector whose internal data we are - returning. - - A reference to the internal date of the given vector. - - - - - Returns a vector bound directly to a reference of the provided array. - - The array to bind to the DenseVector object. - - A DenseVector whose values are bound to the given array. - - - - - Adds a scalar to each element of the vector and stores the result in the result vector. - - The scalar to add. - The vector to store the result of the addition. - - - - Adds another vector to this vector and stores the result into the result vector. - - The vector to add to this one. - The vector to store the result of the addition. - - - - Adds two Vectors together and returns the results. - - One of the vectors to add. - The other vector to add. - The result of the addition. - If and are not the same size. - If or is . - - - - Subtracts a scalar from each element of the vector and stores the result in the result vector. - - The scalar to subtract. - The vector to store the result of the subtraction. - - - - Subtracts another vector from this vector and stores the result into the result vector. - - The vector to subtract from this one. - The vector to store the result of the subtraction. - - - - Returns a Vector containing the negated values of . - - The vector to get the values from. - A vector containing the negated values as . - If is . - - - - Subtracts two Vectors and returns the results. - - The vector to subtract from. - The vector to subtract. - The result of the subtraction. - If and are not the same size. - If or is . - - - - Negates vector and saves result to - - Target vector - - - - Conjugates vector and save result to - - Target vector - - - - Multiplies a scalar to each element of the vector and stores the result in the result vector. - - The scalar to multiply. - The vector to store the result of the multiplication. - - - - - Computes the dot product between this vector and another vector. - - The other vector. - The sum of a[i]*b[i] for all i. - - - - Computes the dot product between the conjugate of this vector and another vector. - - The other vector. - The sum of conj(a[i])*b[i] for all i. - - - - Multiplies a vector with a complex. - - The vector to scale. - The Complex value. - The result of the multiplication. - If is . - - - - Multiplies a vector with a complex. - - The Complex value. - The vector to scale. - The result of the multiplication. - If is . - - - - Computes the dot product between two Vectors. - - The left row vector. - The right column vector. - The dot product between the two vectors. - If and are not the same size. - If or is . - - - - Divides a vector with a complex. - - The vector to divide. - The Complex value. - The result of the division. - If is . - - - - Returns the index of the absolute minimum element. - - The index of absolute minimum element. - - - - Returns the index of the absolute maximum element. - - The index of absolute maximum element. - - - - Computes the sum of the vector's elements. - - The sum of the vector's elements. - - - - Calculates the L1 norm of the vector, also known as Manhattan norm. - - The sum of the absolute values. - - - - Calculates the L2 norm of the vector, also known as Euclidean norm. - - The square root of the sum of the squared values. - - - - Calculates the infinity norm of the vector. - - The maximum absolute value. - - - - Computes the p-Norm. - - The p value. - Scalar ret = ( ∑|this[i]|^p )^(1/p) - - - - Pointwise divide this vector with another vector and stores the result into the result vector. - - The vector to pointwise divide this one by. - The vector to store the result of the pointwise division. - - - - Pointwise divide this vector with another vector and stores the result into the result vector. - - The vector to pointwise divide this one by. - The vector to store the result of the pointwise division. - - - - - Pointwise raise this vector to an exponent vector and store the result into the result vector. - - The exponent vector to raise this vector values to. - The vector to store the result of the pointwise power. - - - - Creates a Complex dense vector based on a string. The string can be in the following formats (without the - quotes): 'n', 'n;n;..', '(n;n;..)', '[n;n;...]', where n is a double. - - - A Complex dense vector containing the values specified by the given string. - - - the string to parse. - - - An that supplies culture-specific formatting information. - - - - - Converts the string representation of a complex dense vector to double-precision dense vector equivalent. - A return value indicates whether the conversion succeeded or failed. - - - A string containing a complex vector to convert. - - - The parsed value. - - - If the conversion succeeds, the result will contain a complex number equivalent to value. - Otherwise the result will be null. - - - - - Converts the string representation of a complex dense vector to double-precision dense vector equivalent. - A return value indicates whether the conversion succeeded or failed. - - - A string containing a complex vector to convert. - - - An that supplies culture-specific formatting information about value. - - - The parsed value. - - - If the conversion succeeds, the result will contain a complex number equivalent to value. - Otherwise the result will be null. - - - - - A matrix type for diagonal matrices. - - - Diagonal matrices can be non-square matrices but the diagonal always starts - at element 0,0. A diagonal matrix will throw an exception if non diagonal - entries are set. The exception to this is when the off diagonal elements are - 0.0 or NaN; these settings will cause no change to the diagonal matrix. - - - - - Gets the matrix's data. - - The matrix's data. - - - - Create a new diagonal matrix straight from an initialized matrix storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a new square diagonal matrix with the given number of rows and columns. - All cells of the matrix will be initialized to zero. - - If the order is less than one. - - - - Create a new diagonal matrix with the given number of rows and columns. - All cells of the matrix will be initialized to zero. - - If the row or column count is less than one. - - - - Create a new diagonal matrix with the given number of rows and columns. - All diagonal cells of the matrix will be initialized to the provided value, all non-diagonal ones to zero. - - If the row or column count is less than one. - - - - Create a new diagonal matrix with the given number of rows and columns directly binding to a raw array. - The array is assumed to contain the diagonal elements only and is used directly without copying. - Very efficient, but changes to the array and the matrix will affect each other. - - - - - Create a new diagonal matrix as a copy of the given other matrix. - This new matrix will be independent from the other matrix. - The matrix to copy from must be diagonal as well. - A new memory block will be allocated for storing the matrix. - - - - - Create a new diagonal matrix as a copy of the given two-dimensional array. - This new matrix will be independent from the provided array. - The array to copy from must be diagonal as well. - A new memory block will be allocated for storing the matrix. - - - - - Create a new diagonal matrix and initialize each diagonal value from the provided indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new diagonal matrix and initialize each diagonal value from the provided indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new diagonal matrix and initialize each diagonal value from the provided enumerable. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new diagonal matrix and initialize each diagonal value using the provided init function. - - - - - Create a new square sparse identity matrix where each diagonal value is set to One. - - - - - Create a new diagonal matrix with diagonal values sampled from the provided random distribution. - - - - - Negate each element of this matrix and place the results into the result matrix. - - The result of the negation. - - - - Complex conjugates each element of this matrix and place the results into the result matrix. - - The result of the conjugation. - - - - Adds another matrix to this matrix. - - The matrix to add to this matrix. - The matrix to store the result of the addition. - If the two matrices don't have the same dimensions. - - - - Subtracts another matrix from this matrix. - - The matrix to subtract. - The matrix to store the result of the subtraction. - If the two matrices don't have the same dimensions. - - - - Multiplies each element of the matrix by a scalar and places results into the result matrix. - - The scalar to multiply the matrix with. - The matrix to store the result of the multiplication. - If the result matrix's dimensions are not the same as this matrix. - - - - Multiplies this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with transpose of another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with the conjugate transpose of another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies the conjugate transpose of this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Divides each element of the matrix by a scalar and places results into the result matrix. - - The scalar to divide the matrix with. - The matrix to store the result of the division. - - - - Divides a scalar by each element of the matrix and stores the result in the result matrix. - - The scalar to add. - The matrix to store the result of the division. - - - - Computes the determinant of this matrix. - - The determinant of this matrix. - - - - Returns the elements of the diagonal in a . - - The elements of the diagonal. - For non-square matrices, the method returns Min(Rows, Columns) elements where - i == j (i is the row index, and j is the column index). - - - - Copies the values of the given array to the diagonal. - - The array to copy the values from. The length of the vector should be - Min(Rows, Columns). - If the length of does not - equal Min(Rows, Columns). - For non-square matrices, the elements of are copied to - this[i,i]. - - - - Copies the values of the given to the diagonal. - - The vector to copy the values from. The length of the vector should be - Min(Rows, Columns). - If the length of does not - equal Min(Rows, Columns). - For non-square matrices, the elements of are copied to - this[i,i]. - - - Calculates the induced L1 norm of this matrix. - The maximum absolute column sum of the matrix. - - - Calculates the induced L2 norm of the matrix. - The largest singular value of the matrix. - - - Calculates the induced infinity norm of this matrix. - The maximum absolute row sum of the matrix. - - - Calculates the Frobenius norm of this matrix. - The Frobenius norm of this matrix. - - - Calculates the condition number of this matrix. - The condition number of the matrix. - - - Computes the inverse of this matrix. - If is not a square matrix. - If is singular. - The inverse of this matrix. - - - - Returns a new matrix containing the lower triangle of this matrix. - - The lower triangle of this matrix. - - - - Puts the lower triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If the result matrix's dimensions are not the same as this matrix. - - - - Returns a new matrix containing the lower triangle of this matrix. The new matrix - does not contain the diagonal elements of this matrix. - - The lower triangle of this matrix. - - - - Puts the strictly lower triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If the result matrix's dimensions are not the same as this matrix. - - - - Returns a new matrix containing the upper triangle of this matrix. - - The upper triangle of this matrix. - - - - Puts the upper triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If the result matrix's dimensions are not the same as this matrix. - - - - Returns a new matrix containing the upper triangle of this matrix. The new matrix - does not contain the diagonal elements of this matrix. - - The upper triangle of this matrix. - - - - Puts the strictly upper triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If the result matrix's dimensions are not the same as this matrix. - - - - Creates a matrix that contains the values from the requested sub-matrix. - - The row to start copying from. - The number of rows to copy. Must be positive. - The column to start copying from. - The number of columns to copy. Must be positive. - The requested sub-matrix. - If: is - negative, or greater than or equal to the number of rows. - is negative, or greater than or equal to the number - of columns. - (columnIndex + columnLength) >= Columns - (rowIndex + rowLength) >= Rows - If or - is not positive. - - - - Permute the columns of a matrix according to a permutation. - - The column permutation to apply to this matrix. - Always thrown - Permutation in diagonal matrix are senseless, because of matrix nature - - - - Permute the rows of a matrix according to a permutation. - - The row permutation to apply to this matrix. - Always thrown - Permutation in diagonal matrix are senseless, because of matrix nature - - - - Evaluates whether this matrix is symmetric. - - - - - Evaluates whether this matrix is Hermitian (conjugate symmetric). - - - - - A class which encapsulates the functionality of a Cholesky factorization. - For a symmetric, positive definite matrix A, the Cholesky factorization - is an lower triangular matrix L so that A = L*L'. - - - The computation of the Cholesky factorization is done at construction time. If the matrix is not symmetric - or positive definite, the constructor will throw an exception. - - - - - Gets the determinant of the matrix for which the Cholesky matrix was computed. - - - - - Gets the log determinant of the matrix for which the Cholesky matrix was computed. - - - - - A class which encapsulates the functionality of a Cholesky factorization for dense matrices. - For a symmetric, positive definite matrix A, the Cholesky factorization - is an lower triangular matrix L so that A = L*L'. - - - The computation of the Cholesky factorization is done at construction time. If the matrix is not symmetric - or positive definite, the constructor will throw an exception. - - - - - Initializes a new instance of the class. This object will compute the - Cholesky factorization when the constructor is called and cache it's factorization. - - The matrix to factor. - If is null. - If is not a square matrix. - If is not positive definite. - - - - Solves a system of linear equations, AX = B, with A Cholesky factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A Cholesky factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Calculates the Cholesky factorization of the input matrix. - - The matrix to be factorized. - If is null. - If is not a square matrix. - If is not positive definite. - If does not have the same dimensions as the existing factor. - - - - Eigenvalues and eigenvectors of a complex matrix. - - - If A is Hermitian, then A = V*D*V' where the eigenvalue matrix D is - diagonal and the eigenvector matrix V is Hermitian. - I.e. A = V*D*V' and V*VH=I. - If A is not symmetric, then the eigenvalue matrix D is block diagonal - with the real eigenvalues in 1-by-1 blocks and any complex eigenvalues, - lambda + i*mu, in 2-by-2 blocks, [lambda, mu; -mu, lambda]. The - columns of V represent the eigenvectors in the sense that A*V = V*D, - i.e. A.Multiply(V) equals V.Multiply(D). The matrix V may be badly - conditioned, or even singular, so the validity of the equation - A = V*D*Inverse(V) depends upon V.Condition(). - - - - - Initializes a new instance of the class. This object will compute the - the eigenvalue decomposition when the constructor is called and cache it's decomposition. - - The matrix to factor. - If it is known whether the matrix is symmetric or not the routine can skip checking it itself. - If is null. - If EVD algorithm failed to converge with matrix . - - - - Solves a system of linear equations, AX = B, with A SVD factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A EVD factorized. - - The right hand side vector, b. - The left hand side , x. - - - - A class which encapsulates the functionality of the QR decomposition Modified Gram-Schmidt Orthogonalization. - Any complex square matrix A may be decomposed as A = QR where Q is an unitary mxn matrix and R is an nxn upper triangular matrix. - - - The computation of the QR decomposition is done at construction time by modified Gram-Schmidt Orthogonalization. - - - - - Initializes a new instance of the class. This object creates an unitary matrix - using the modified Gram-Schmidt method. - - The matrix to factor. - If is null. - If row count is less then column count - If is rank deficient - - - - Factorize matrix using the modified Gram-Schmidt method. - - Initial matrix. On exit is replaced by Q. - Number of rows in Q. - Number of columns in Q. - On exit is filled by R. - - - - Solves a system of linear equations, AX = B, with A QR factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A QR factorized. - - The right hand side vector, b. - The left hand side , x. - - - - A class which encapsulates the functionality of an LU factorization. - For a matrix A, the LU factorization is a pair of lower triangular matrix L and - upper triangular matrix U so that A = L*U. - - - The computation of the LU factorization is done at construction time. - - - - - Initializes a new instance of the class. This object will compute the - LU factorization when the constructor is called and cache it's factorization. - - The matrix to factor. - If is null. - If is not a square matrix. - - - - Solves a system of linear equations, AX = B, with A LU factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A LU factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Returns the inverse of this matrix. The inverse is calculated using LU decomposition. - - The inverse of this matrix. - - - - A class which encapsulates the functionality of the QR decomposition. - Any real square matrix A may be decomposed as A = QR where Q is an orthogonal matrix - (its columns are orthogonal unit vectors meaning QTQ = I) and R is an upper triangular matrix - (also called right triangular matrix). - - - The computation of the QR decomposition is done at construction time by Householder transformation. - - - - - Gets or sets Tau vector. Contains additional information on Q - used for native solver. - - - - - Initializes a new instance of the class. This object will compute the - QR factorization when the constructor is called and cache it's factorization. - - The matrix to factor. - The type of QR factorization to perform. - If is null. - If row count is less then column count - - - - Solves a system of linear equations, AX = B, with A QR factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A QR factorized. - - The right hand side vector, b. - The left hand side , x. - - - - A class which encapsulates the functionality of the singular value decomposition (SVD) for . - Suppose M is an m-by-n matrix whose entries are real numbers. - Then there exists a factorization of the form M = UΣVT where: - - U is an m-by-m unitary matrix; - - Σ is m-by-n diagonal matrix with nonnegative real numbers on the diagonal; - - VT denotes transpose of V, an n-by-n unitary matrix; - Such a factorization is called a singular-value decomposition of M. A common convention is to order the diagonal - entries Σ(i,i) in descending order. In this case, the diagonal matrix Σ is uniquely determined - by M (though the matrices U and V are not). The diagonal entries of Σ are known as the singular values of M. - - - The computation of the singular value decomposition is done at construction time. - - - - - Initializes a new instance of the class. This object will compute the - the singular value decomposition when the constructor is called and cache it's decomposition. - - The matrix to factor. - Compute the singular U and VT vectors or not. - If is null. - If SVD algorithm failed to converge with matrix . - - - - Solves a system of linear equations, AX = B, with A SVD factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A SVD factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Eigenvalues and eigenvectors of a real matrix. - - - If A is symmetric, then A = V*D*V' where the eigenvalue matrix D is - diagonal and the eigenvector matrix V is orthogonal. - I.e. A = V*D*V' and V*VT=I. - If A is not symmetric, then the eigenvalue matrix D is block diagonal - with the real eigenvalues in 1-by-1 blocks and any complex eigenvalues, - lambda + i*mu, in 2-by-2 blocks, [lambda, mu; -mu, lambda]. The - columns of V represent the eigenvectors in the sense that A*V = V*D, - i.e. A.Multiply(V) equals V.Multiply(D). The matrix V may be badly - conditioned, or even singular, so the validity of the equation - A = V*D*Inverse(V) depends upon V.Condition(). - - - - - Gets the absolute value of determinant of the square matrix for which the EVD was computed. - - - - - Gets the effective numerical matrix rank. - - The number of non-negligible singular values. - - - - Gets a value indicating whether the matrix is full rank or not. - - true if the matrix is full rank; otherwise false. - - - - A class which encapsulates the functionality of the QR decomposition Modified Gram-Schmidt Orthogonalization. - Any real square matrix A may be decomposed as A = QR where Q is an orthogonal mxn matrix and R is an nxn upper triangular matrix. - - - The computation of the QR decomposition is done at construction time by modified Gram-Schmidt Orthogonalization. - - - - - Gets the absolute determinant value of the matrix for which the QR matrix was computed. - - - - - Gets a value indicating whether the matrix is full rank or not. - - true if the matrix is full rank; otherwise false. - - - - A class which encapsulates the functionality of an LU factorization. - For a matrix A, the LU factorization is a pair of lower triangular matrix L and - upper triangular matrix U so that A = L*U. - In the Math.NET implementation we also store a set of pivot elements for increased - numerical stability. The pivot elements encode a permutation matrix P such that P*A = L*U. - - - The computation of the LU factorization is done at construction time. - - - - - Gets the determinant of the matrix for which the LU factorization was computed. - - - - - A class which encapsulates the functionality of the QR decomposition. - Any real square matrix A (m x n) may be decomposed as A = QR where Q is an orthogonal matrix - (its columns are orthogonal unit vectors meaning QTQ = I) and R is an upper triangular matrix - (also called right triangular matrix). - - - The computation of the QR decomposition is done at construction time by Householder transformation. - If a factorization is performed, the resulting Q matrix is an m x m matrix - and the R matrix is an m x n matrix. If a factorization is performed, the - resulting Q matrix is an m x n matrix and the R matrix is an n x n matrix. - - - - - Gets the absolute determinant value of the matrix for which the QR matrix was computed. - - - - - Gets a value indicating whether the matrix is full rank or not. - - true if the matrix is full rank; otherwise false. - - - - A class which encapsulates the functionality of the singular value decomposition (SVD). - Suppose M is an m-by-n matrix whose entries are real numbers. - Then there exists a factorization of the form M = UΣVT where: - - U is an m-by-m unitary matrix; - - Σ is m-by-n diagonal matrix with nonnegative real numbers on the diagonal; - - VT denotes transpose of V, an n-by-n unitary matrix; - Such a factorization is called a singular-value decomposition of M. A common convention is to order the diagonal - entries Σ(i,i) in descending order. In this case, the diagonal matrix Σ is uniquely determined - by M (though the matrices U and V are not). The diagonal entries of Σ are known as the singular values of M. - - - The computation of the singular value decomposition is done at construction time. - - - - - Gets the effective numerical matrix rank. - - The number of non-negligible singular values. - - - - Gets the two norm of the . - - The 2-norm of the . - - - - Gets the condition number max(S) / min(S) - - The condition number. - - - - Gets the determinant of the square matrix for which the SVD was computed. - - - - - A class which encapsulates the functionality of a Cholesky factorization for user matrices. - For a symmetric, positive definite matrix A, the Cholesky factorization - is an lower triangular matrix L so that A = L*L'. - - - The computation of the Cholesky factorization is done at construction time. If the matrix is not symmetric - or positive definite, the constructor will throw an exception. - - - - - Computes the Cholesky factorization in-place. - - On entry, the matrix to factor. On exit, the Cholesky factor matrix - If is null. - If is not a square matrix. - If is not positive definite. - - - - Initializes a new instance of the class. This object will compute the - Cholesky factorization when the constructor is called and cache it's factorization. - - The matrix to factor. - If is null. - If is not a square matrix. - If is not positive definite. - - - - Calculates the Cholesky factorization of the input matrix. - - The matrix to be factorized. - If is null. - If is not a square matrix. - If is not positive definite. - If does not have the same dimensions as the existing factor. - - - - Calculate Cholesky step - - Factor matrix - Number of rows - Column start - Total columns - Multipliers calculated previously - Number of available processors - - - - Solves a system of linear equations, AX = B, with A Cholesky factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A Cholesky factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Eigenvalues and eigenvectors of a complex matrix. - - - If A is Hermitian, then A = V*D*V' where the eigenvalue matrix D is - diagonal and the eigenvector matrix V is Hermitian. - I.e. A = V*D*V' and V*VH=I. - If A is not symmetric, then the eigenvalue matrix D is block diagonal - with the real eigenvalues in 1-by-1 blocks and any complex eigenvalues, - lambda + i*mu, in 2-by-2 blocks, [lambda, mu; -mu, lambda]. The - columns of V represent the eigenvectors in the sense that A*V = V*D, - i.e. A.Multiply(V) equals V.Multiply(D). The matrix V may be badly - conditioned, or even singular, so the validity of the equation - A = V*D*Inverse(V) depends upon V.Condition(). - - - - - Initializes a new instance of the class. This object will compute the - the eigenvalue decomposition when the constructor is called and cache it's decomposition. - - The matrix to factor. - If it is known whether the matrix is symmetric or not the routine can skip checking it itself. - If is null. - If EVD algorithm failed to converge with matrix . - - - - Reduces a complex Hermitian matrix to a real symmetric tridiagonal matrix using unitary similarity transformations. - - Source matrix to reduce - Output: Arrays for internal storage of real parts of eigenvalues - Output: Arrays for internal storage of imaginary parts of eigenvalues - Output: Arrays that contains further information about the transformations. - Order of initial matrix - This is derived from the Algol procedures HTRIDI by - Smith, Boyle, Dongarra, Garbow, Ikebe, Klema, Moler, and Wilkinson, Handbook for - Auto. Comp., Vol.ii-Linear Algebra, and the corresponding - Fortran subroutine in EISPACK. - - - - Symmetric tridiagonal QL algorithm. - - The eigen vectors to work on. - Arrays for internal storage of real parts of eigenvalues - Arrays for internal storage of imaginary parts of eigenvalues - Order of initial matrix - This is derived from the Algol procedures tql2, by - Bowdler, Martin, Reinsch, and Wilkinson, Handbook for - Auto. Comp., Vol.ii-Linear Algebra, and the corresponding - Fortran subroutine in EISPACK. - - - - - Determines eigenvectors by undoing the symmetric tridiagonalize transformation - - The eigen vectors to work on. - Previously tridiagonalized matrix by . - Contains further information about the transformations - Input matrix order - This is derived from the Algol procedures HTRIBK, by - by Smith, Boyle, Dongarra, Garbow, Ikebe, Klema, Moler, and Wilkinson, Handbook for - Auto. Comp., Vol.ii-Linear Algebra, and the corresponding - Fortran subroutine in EISPACK. - - - - Nonsymmetric reduction to Hessenberg form. - - The eigen vectors to work on. - Array for internal storage of nonsymmetric Hessenberg form. - Order of initial matrix - This is derived from the Algol procedures orthes and ortran, - by Martin and Wilkinson, Handbook for Auto. Comp., - Vol.ii-Linear Algebra, and the corresponding - Fortran subroutines in EISPACK. - - - - Nonsymmetric reduction from Hessenberg to real Schur form. - - The eigen vectors to work on. - The eigen values to work on. - Array for internal storage of nonsymmetric Hessenberg form. - Order of initial matrix - This is derived from the Algol procedure hqr2, - by Martin and Wilkinson, Handbook for Auto. Comp., - Vol.ii-Linear Algebra, and the corresponding - Fortran subroutine in EISPACK. - - - - Solves a system of linear equations, AX = B, with A SVD factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A EVD factorized. - - The right hand side vector, b. - The left hand side , x. - - - - A class which encapsulates the functionality of the QR decomposition Modified Gram-Schmidt Orthogonalization. - Any complex square matrix A may be decomposed as A = QR where Q is an unitary mxn matrix and R is an nxn upper triangular matrix. - - - The computation of the QR decomposition is done at construction time by modified Gram-Schmidt Orthogonalization. - - - - - Initializes a new instance of the class. This object creates an unitary matrix - using the modified Gram-Schmidt method. - - The matrix to factor. - If is null. - If row count is less then column count - If is rank deficient - - - - Solves a system of linear equations, AX = B, with A QR factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A QR factorized. - - The right hand side vector, b. - The left hand side , x. - - - - A class which encapsulates the functionality of an LU factorization. - For a matrix A, the LU factorization is a pair of lower triangular matrix L and - upper triangular matrix U so that A = L*U. - - - The computation of the LU factorization is done at construction time. - - - - - Initializes a new instance of the class. This object will compute the - LU factorization when the constructor is called and cache it's factorization. - - The matrix to factor. - If is null. - If is not a square matrix. - - - - Solves a system of linear equations, AX = B, with A LU factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A LU factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Returns the inverse of this matrix. The inverse is calculated using LU decomposition. - - The inverse of this matrix. - - - - A class which encapsulates the functionality of the QR decomposition. - Any real square matrix A may be decomposed as A = QR where Q is an orthogonal matrix - (its columns are orthogonal unit vectors meaning QTQ = I) and R is an upper triangular matrix - (also called right triangular matrix). - - - The computation of the QR decomposition is done at construction time by Householder transformation. - - - - - Initializes a new instance of the class. This object will compute the - QR factorization when the constructor is called and cache it's factorization. - - The matrix to factor. - The QR factorization method to use. - If is null. - - - - Generate column from initial matrix to work array - - Initial matrix - The first row - Column index - Generated vector - - - - Perform calculation of Q or R - - Work array - Q or R matrices - The first row - The last row - The first column - The last column - Number of available CPUs - - - - Solves a system of linear equations, AX = B, with A QR factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A QR factorized. - - The right hand side vector, b. - The left hand side , x. - - - - A class which encapsulates the functionality of the singular value decomposition (SVD) for . - Suppose M is an m-by-n matrix whose entries are real numbers. - Then there exists a factorization of the form M = UΣVT where: - - U is an m-by-m unitary matrix; - - Σ is m-by-n diagonal matrix with nonnegative real numbers on the diagonal; - - VT denotes transpose of V, an n-by-n unitary matrix; - Such a factorization is called a singular-value decomposition of M. A common convention is to order the diagonal - entries Σ(i,i) in descending order. In this case, the diagonal matrix Σ is uniquely determined - by M (though the matrices U and V are not). The diagonal entries of Σ are known as the singular values of M. - - - The computation of the singular value decomposition is done at construction time. - - - - - Initializes a new instance of the class. This object will compute the - the singular value decomposition when the constructor is called and cache it's decomposition. - - The matrix to factor. - Compute the singular U and VT vectors or not. - If is null. - - - - - Calculates absolute value of multiplied on signum function of - - Complex value z1 - Complex value z2 - Result multiplication of signum function and absolute value - - - - Interchanges two vectors and - - Source matrix - The number of rows in - Column A index to swap - Column B index to swap - - - - Scale column by starting from row - - Source matrix - The number of rows in - Column to scale - Row to scale from - Scale value - - - - Scale vector by starting from index - - Source vector - Row to scale from - Scale value - - - - Given the Cartesian coordinates (da, db) of a point p, these function return the parameters da, db, c, and s - associated with the Givens rotation that zeros the y-coordinate of the point. - - Provides the x-coordinate of the point p. On exit contains the parameter r associated with the Givens rotation - Provides the y-coordinate of the point p. On exit contains the parameter z associated with the Givens rotation - Contains the parameter c associated with the Givens rotation - Contains the parameter s associated with the Givens rotation - This is equivalent to the DROTG LAPACK routine. - - - - Calculate Norm 2 of the column in matrix starting from row - - Source matrix - The number of rows in - Column index - Start row index - Norm2 (Euclidean norm) of the column - - - - Calculate Norm 2 of the vector starting from index - - Source vector - Start index - Norm2 (Euclidean norm) of the vector - - - - Calculate dot product of and conjugating the first vector. - - Source matrix - The number of rows in - Index of column A - Index of column B - Starting row index - Dot product value - - - - Performs rotation of points in the plane. Given two vectors x and y , - each vector element of these vectors is replaced as follows: x(i) = c*x(i) + s*y(i); y(i) = c*y(i) - s*x(i) - - Source matrix - The number of rows in - Index of column A - Index of column B - scalar cos value - scalar sin value - - - - Solves a system of linear equations, AX = B, with A SVD factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A SVD factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Complex version of the class. - - - - - Initializes a new instance of the Matrix class. - - - - - Set all values whose absolute value is smaller than the threshold to zero. - - - - - Returns the conjugate transpose of this matrix. - - The conjugate transpose of this matrix. - - - - Puts the conjugate transpose of this matrix into the result matrix. - - - - - Complex conjugates each element of this matrix and place the results into the result matrix. - - The result of the conjugation. - - - - Negate each element of this matrix and place the results into the result matrix. - - The result of the negation. - - - - Add a scalar to each element of the matrix and stores the result in the result vector. - - The scalar to add. - The matrix to store the result of the addition. - - - - Adds another matrix to this matrix. - - The matrix to add to this matrix. - The matrix to store the result of the addition. - If the other matrix is . - If the two matrices don't have the same dimensions. - - - - Subtracts a scalar from each element of the vector and stores the result in the result vector. - - The scalar to subtract. - The matrix to store the result of the subtraction. - - - - Subtracts another matrix from this matrix. - - The matrix to subtract to this matrix. - The matrix to store the result of subtraction. - If the other matrix is . - If the two matrices don't have the same dimensions. - - - - Multiplies each element of the matrix by a scalar and places results into the result matrix. - - The scalar to multiply the matrix with. - The matrix to store the result of the multiplication. - - - - Multiplies this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Divides each element of the matrix by a scalar and places results into the result matrix. - - The scalar to divide the matrix with. - The matrix to store the result of the division. - - - - Divides a scalar by each element of the matrix and stores the result in the result matrix. - - The scalar to divide by each element of the matrix. - The matrix to store the result of the division. - - - - Multiplies this matrix with transpose of another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with the conjugate transpose of another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies the conjugate transpose of this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Pointwise multiplies this matrix with another matrix and stores the result into the result matrix. - - The matrix to pointwise multiply with this one. - The matrix to store the result of the pointwise multiplication. - - - - Pointwise divide this matrix by another matrix and stores the result into the result matrix. - - The matrix to pointwise divide this one by. - The matrix to store the result of the pointwise division. - - - - Pointwise raise this matrix to an exponent and store the result into the result matrix. - - The exponent to raise this matrix values to. - The matrix to store the result of the pointwise power. - - - - Pointwise raise this matrix to an exponent and store the result into the result matrix. - - The exponent to raise this matrix values to. - The vector to store the result of the pointwise power. - - - - Pointwise canonical modulus, where the result has the sign of the divisor, - of this matrix with another matrix and stores the result into the result matrix. - - The pointwise denominator matrix to use - The result of the modulus. - - - - Pointwise remainder (% operator), where the result has the sign of the dividend, - of this matrix with another matrix and stores the result into the result matrix. - - The pointwise denominator matrix to use - The result of the modulus. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for the given divisor each element of the matrix. - - The scalar denominator to use. - Matrix to store the results in. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for the given dividend for each element of the matrix. - - The scalar numerator to use. - A vector to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for the given divisor each element of the matrix. - - The scalar denominator to use. - Matrix to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for the given dividend for each element of the matrix. - - The scalar numerator to use. - A vector to store the results in. - - - - Pointwise applies the exponential function to each value and stores the result into the result matrix. - - The matrix to store the result. - - - - Pointwise applies the natural logarithm function to each value and stores the result into the result matrix. - - The matrix to store the result. - - - - Computes the Moore-Penrose Pseudo-Inverse of this matrix. - - - - - Computes the trace of this matrix. - - The trace of this matrix - If the matrix is not square - - - Calculates the induced L1 norm of this matrix. - The maximum absolute column sum of the matrix. - - - Calculates the induced infinity norm of this matrix. - The maximum absolute row sum of the matrix. - - - Calculates the entry-wise Frobenius norm of this matrix. - The square root of the sum of the squared values. - - - - Calculates the p-norms of all row vectors. - Typical values for p are 1.0 (L1, Manhattan norm), 2.0 (L2, Euclidean norm) and positive infinity (infinity norm) - - - - - Calculates the p-norms of all column vectors. - Typical values for p are 1.0 (L1, Manhattan norm), 2.0 (L2, Euclidean norm) and positive infinity (infinity norm) - - - - - Normalizes all row vectors to a unit p-norm. - Typical values for p are 1.0 (L1, Manhattan norm), 2.0 (L2, Euclidean norm) and positive infinity (infinity norm) - - - - - Normalizes all column vectors to a unit p-norm. - Typical values for p are 1.0 (L1, Manhattan norm), 2.0 (L2, Euclidean norm) and positive infinity (infinity norm) - - - - - Calculates the value sum of each row vector. - - - - - Calculates the absolute value sum of each row vector. - - - - - Calculates the value sum of each column vector. - - - - - Calculates the absolute value sum of each column vector. - - - - - Evaluates whether this matrix is Hermitian (conjugate symmetric). - - - - - A Bi-Conjugate Gradient stabilized iterative matrix solver. - - - - The Bi-Conjugate Gradient Stabilized (BiCGStab) solver is an 'improvement' - of the standard Conjugate Gradient (CG) solver. Unlike the CG solver the - BiCGStab can be used on non-symmetric matrices.
    - Note that much of the success of the solver depends on the selection of the - proper preconditioner. -
    - - The Bi-CGSTAB algorithm was taken from:
    - Templates for the solution of linear systems: Building blocks - for iterative methods -
    - Richard Barrett, Michael Berry, Tony F. Chan, James Demmel, - June M. Donato, Jack Dongarra, Victor Eijkhout, Roldan Pozo, - Charles Romine and Henk van der Vorst -
    - Url: http://www.netlib.org/templates/Templates.html -
    - Algorithm is described in Chapter 2, section 2.3.8, page 27 -
    - - The example code below provides an indication of the possible use of the - solver. - -
    -
    - - - Calculates the true residual of the matrix equation Ax = b according to: residual = b - Ax - - Instance of the A. - Residual values in . - Instance of the x. - Instance of the b. - - - - Solves the matrix equation Ax = b, where A is the coefficient matrix, b is the - solution vector and x is the unknown vector. - - The coefficient , A. - The solution , b. - The result , x. - The iterator to use to control when to stop iterating. - The preconditioner to use for approximations. - - - - A composite matrix solver. The actual solver is made by a sequence of - matrix solvers. - - - - Solver based on:
    - Faster PDE-based simulations using robust composite linear solvers
    - S. Bhowmicka, P. Raghavan a,*, L. McInnes b, B. Norris
    - Future Generation Computer Systems, Vol 20, 2004, pp 373�387
    -
    - - Note that if an iterator is passed to this solver it will be used for all the sub-solvers. - -
    -
    - - - The collection of solvers that will be used - - - - - Solves the matrix equation Ax = b, where A is the coefficient matrix, b is the - solution vector and x is the unknown vector. - - The coefficient matrix, A. - The solution vector, b - The result vector, x - The iterator to use to control when to stop iterating. - The preconditioner to use for approximations. - - - - A diagonal preconditioner. The preconditioner uses the inverse - of the matrix diagonal as preconditioning values. - - - - - The inverse of the matrix diagonal. - - - - - Returns the decomposed matrix diagonal. - - The matrix diagonal. - - - - Initializes the preconditioner and loads the internal data structures. - - - The upon which this preconditioner is based. - If is . - If is not a square matrix. - - - - Approximates the solution to the matrix equation Ax = b. - - The right hand side vector. - The left hand side vector. Also known as the result vector. - - - - A Generalized Product Bi-Conjugate Gradient iterative matrix solver. - - - - The Generalized Product Bi-Conjugate Gradient (GPBiCG) solver is an - alternative version of the Bi-Conjugate Gradient stabilized (CG) solver. - Unlike the CG solver the GPBiCG solver can be used on - non-symmetric matrices.
    - Note that much of the success of the solver depends on the selection of the - proper preconditioner. -
    - - The GPBiCG algorithm was taken from:
    - GPBiCG(m,l): A hybrid of BiCGSTAB and GPBiCG methods with - efficiency and robustness -
    - S. Fujino -
    - Applied Numerical Mathematics, Volume 41, 2002, pp 107 - 117 -
    -
    - - The example code below provides an indication of the possible use of the - solver. - -
    -
    - - - Indicates the number of BiCGStab steps should be taken - before switching. - - - - - Indicates the number of GPBiCG steps should be taken - before switching. - - - - - Gets or sets the number of steps taken with the BiCgStab algorithm - before switching over to the GPBiCG algorithm. - - - - - Gets or sets the number of steps taken with the GPBiCG algorithm - before switching over to the BiCgStab algorithm. - - - - - Calculates the true residual of the matrix equation Ax = b according to: residual = b - Ax - - Instance of the A. - Residual values in . - Instance of the x. - Instance of the b. - - - - Decide if to do steps with BiCgStab - - Number of iteration - true if yes, otherwise false - - - - Solves the matrix equation Ax = b, where A is the coefficient matrix, b is the - solution vector and x is the unknown vector. - - The coefficient matrix, A. - The solution vector, b - The result vector, x - The iterator to use to control when to stop iterating. - The preconditioner to use for approximations. - - - - An incomplete, level 0, LU factorization preconditioner. - - - The ILU(0) algorithm was taken from:
    - Iterative methods for sparse linear systems
    - Yousef Saad
    - Algorithm is described in Chapter 10, section 10.3.2, page 275
    -
    -
    - - - The matrix holding the lower (L) and upper (U) matrices. The - decomposition matrices are combined to reduce storage. - - - - - Returns the upper triagonal matrix that was created during the LU decomposition. - - A new matrix containing the upper triagonal elements. - - - - Returns the lower triagonal matrix that was created during the LU decomposition. - - A new matrix containing the lower triagonal elements. - - - - Initializes the preconditioner and loads the internal data structures. - - The matrix upon which the preconditioner is based. - If is . - If is not a square matrix. - - - - Approximates the solution to the matrix equation Ax = b. - - The right hand side vector. - The left hand side vector. Also known as the result vector. - - - - This class performs an Incomplete LU factorization with drop tolerance - and partial pivoting. The drop tolerance indicates which additional entries - will be dropped from the factorized LU matrices. - - - The ILUTP-Mem algorithm was taken from:
    - ILUTP_Mem: a Space-Efficient Incomplete LU Preconditioner -
    - Tzu-Yi Chen, Department of Mathematics and Computer Science,
    - Pomona College, Claremont CA 91711, USA
    - Published in:
    - Lecture Notes in Computer Science
    - Volume 3046 / 2004
    - pp. 20 - 28
    - Algorithm is described in Section 2, page 22 -
    -
    - - - The default fill level. - - - - - The default drop tolerance. - - - - - The decomposed upper triangular matrix. - - - - - The decomposed lower triangular matrix. - - - - - The array containing the pivot values. - - - - - The fill level. - - - - - The drop tolerance. - - - - - The pivot tolerance. - - - - - Initializes a new instance of the class with the default settings. - - - - - Initializes a new instance of the class with the specified settings. - - - The amount of fill that is allowed in the matrix. The value is a fraction of - the number of non-zero entries in the original matrix. Values should be positive. - - - The absolute drop tolerance which indicates below what absolute value an entry - will be dropped from the matrix. A drop tolerance of 0.0 means that no values - will be dropped. Values should always be positive. - - - The pivot tolerance which indicates at what level pivoting will take place. A - value of 0.0 means that no pivoting will take place. - - - - - Gets or sets the amount of fill that is allowed in the matrix. The - value is a fraction of the number of non-zero entries in the original - matrix. The standard value is 200. - - - - Values should always be positive and can be higher than 1.0. A value lower - than 1.0 means that the eventual preconditioner matrix will have fewer - non-zero entries as the original matrix. A value higher than 1.0 means that - the eventual preconditioner can have more non-zero values than the original - matrix. - - - Note that any changes to the FillLevel after creating the preconditioner - will invalidate the created preconditioner and will require a re-initialization of - the preconditioner. - - - Thrown if a negative value is provided. - - - - Gets or sets the absolute drop tolerance which indicates below what absolute value - an entry will be dropped from the matrix. The standard value is 0.0001. - - - - The values should always be positive and can be larger than 1.0. A low value will - keep more small numbers in the preconditioner matrix. A high value will remove - more small numbers from the preconditioner matrix. - - - Note that any changes to the DropTolerance after creating the preconditioner - will invalidate the created preconditioner and will require a re-initialization of - the preconditioner. - - - Thrown if a negative value is provided. - - - - Gets or sets the pivot tolerance which indicates at what level pivoting will - take place. The standard value is 0.0 which means pivoting will never take place. - - - - The pivot tolerance is used to calculate if pivoting is necessary. Pivoting - will take place if any of the values in a row is bigger than the - diagonal value of that row divided by the pivot tolerance, i.e. pivoting - will take place if row(i,j) > row(i,i) / PivotTolerance for - any j that is not equal to i. - - - Note that any changes to the PivotTolerance after creating the preconditioner - will invalidate the created preconditioner and will require a re-initialization of - the preconditioner. - - - Thrown if a negative value is provided. - - - - Returns the upper triagonal matrix that was created during the LU decomposition. - - - This method is used for debugging purposes only and should normally not be used. - - A new matrix containing the upper triagonal elements. - - - - Returns the lower triagonal matrix that was created during the LU decomposition. - - - This method is used for debugging purposes only and should normally not be used. - - A new matrix containing the lower triagonal elements. - - - - Returns the pivot array. This array is not needed for normal use because - the preconditioner will return the solution vector values in the proper order. - - - This method is used for debugging purposes only and should normally not be used. - - The pivot array. - - - - Initializes the preconditioner and loads the internal data structures. - - - The upon which this preconditioner is based. Note that the - method takes a general matrix type. However internally the data is stored - as a sparse matrix. Therefore it is not recommended to pass a dense matrix. - - If is . - If is not a square matrix. - - - - Pivot elements in the according to internal pivot array - - Row to pivot in - - - - Was pivoting already performed - - Pivots already done - Current item to pivot - true if performed, otherwise false - - - - Swap columns in the - - Source . - First column index to swap - Second column index to swap - - - - Sort vector descending, not changing vector but placing sorted indices to - - Start sort form - Sort till upper bound - Array with sorted vector indices - Source - - - - Approximates the solution to the matrix equation Ax = b. - - The right hand side vector. - The left hand side vector. Also known as the result vector. - - - - Pivot elements in according to internal pivot array - - Source . - Result after pivoting. - - - - An element sort algorithm for the class. - - - This sort algorithm is used to sort the columns in a sparse matrix based on - the value of the element on the diagonal of the matrix. - - - - - Sorts the elements of the vector in decreasing - fashion. The vector itself is not affected. - - The starting index. - The stopping index. - An array that will contain the sorted indices once the algorithm finishes. - The that contains the values that need to be sorted. - - - - Sorts the elements of the vector in decreasing - fashion using heap sort algorithm. The vector itself is not affected. - - The starting index. - The stopping index. - An array that will contain the sorted indices once the algorithm finishes. - The that contains the values that need to be sorted. - - - - Build heap for double indices - - Root position - Length of - Indices of - Target - - - - Sift double indices - - Indices of - Target - Root position - Length of - - - - Sorts the given integers in a decreasing fashion. - - The values. - - - - Sort the given integers in a decreasing fashion using heapsort algorithm - - Array of values to sort - Length of - - - - Build heap - - Target values array - Root position - Length of - - - - Sift values - - Target value array - Root position - Length of - - - - Exchange values in array - - Target values array - First value to exchange - Second value to exchange - - - - A simple milu(0) preconditioner. - - - Original Fortran code by Yousef Saad (07 January 2004) - - - - Use modified or standard ILU(0) - - - - Gets or sets a value indicating whether to use modified or standard ILU(0). - - - - - Gets a value indicating whether the preconditioner is initialized. - - - - - Initializes the preconditioner and loads the internal data structures. - - The matrix upon which the preconditioner is based. - If is . - If is not a square or is not an - instance of SparseCompressedRowMatrixStorage. - - - - Approximates the solution to the matrix equation Ax = b. - - The right hand side vector b. - The left hand side vector x. - - - - MILU0 is a simple milu(0) preconditioner. - - Order of the matrix. - Matrix values in CSR format (input). - Column indices (input). - Row pointers (input). - Matrix values in MSR format (output). - Row pointers and column indices (output). - Pointer to diagonal elements (output). - True if the modified/MILU algorithm should be used (recommended) - Returns 0 on success or k > 0 if a zero pivot was encountered at step k. - - - - A Multiple-Lanczos Bi-Conjugate Gradient stabilized iterative matrix solver. - - - - The Multiple-Lanczos Bi-Conjugate Gradient stabilized (ML(k)-BiCGStab) solver is an 'improvement' - of the standard BiCgStab solver. - - - The algorithm was taken from:
    - ML(k)BiCGSTAB: A BiCGSTAB variant based on multiple Lanczos starting vectors -
    - Man-Chung Yeung and Tony F. Chan -
    - SIAM Journal of Scientific Computing -
    - Volume 21, Number 4, pp. 1263 - 1290 -
    - - The example code below provides an indication of the possible use of the - solver. - -
    -
    - - - The default number of starting vectors. - - - - - The collection of starting vectors which are used as the basis for the Krylov sub-space. - - - - - The number of starting vectors used by the algorithm - - - - - Gets or sets the number of starting vectors. - - - Must be larger than 1 and smaller than the number of variables in the matrix that - for which this solver will be used. - - - - - Resets the number of starting vectors to the default value. - - - - - Gets or sets a series of orthonormal vectors which will be used as basis for the - Krylov sub-space. - - - - - Gets the number of starting vectors to create - - Maximum number - Number of variables - Number of starting vectors to create - - - - Returns an array of starting vectors. - - The maximum number of starting vectors that should be created. - The number of variables. - - An array with starting vectors. The array will never be larger than the - but it may be smaller if - the is smaller than - the . - - - - - Create random vectors array - - Number of vectors - Size of each vector - Array of random vectors - - - - Calculates the true residual of the matrix equation Ax = b according to: residual = b - Ax - - Source A. - Residual data. - x data. - b data. - - - - Solves the matrix equation Ax = b, where A is the coefficient matrix, b is the - solution vector and x is the unknown vector. - - The coefficient matrix, A. - The solution vector, b - The result vector, x - The iterator to use to control when to stop iterating. - The preconditioner to use for approximations. - - - - A Transpose Free Quasi-Minimal Residual (TFQMR) iterative matrix solver. - - - - The TFQMR algorithm was taken from:
    - Iterative methods for sparse linear systems. -
    - Yousef Saad -
    - Algorithm is described in Chapter 7, section 7.4.3, page 219 -
    - - The example code below provides an indication of the possible use of the - solver. - -
    -
    - - - Calculates the true residual of the matrix equation Ax = b according to: residual = b - Ax - - Instance of the A. - Residual values in . - Instance of the x. - Instance of the b. - - - - Is even? - - Number to check - true if even, otherwise false - - - - Solves the matrix equation Ax = b, where A is the coefficient matrix, b is the - solution vector and x is the unknown vector. - - The coefficient matrix, A. - The solution vector, b - The result vector, x - The iterator to use to control when to stop iterating. - The preconditioner to use for approximations. - - - - A Matrix with sparse storage, intended for very large matrices where most of the cells are zero. - The underlying storage scheme is 3-array compressed-sparse-row (CSR) Format. - Wikipedia - CSR. - - - - - Gets the number of non zero elements in the matrix. - - The number of non zero elements. - - - - Create a new sparse matrix straight from an initialized matrix storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a new square sparse matrix with the given number of rows and columns. - All cells of the matrix will be initialized to zero. - - If the order is less than one. - - - - Create a new sparse matrix with the given number of rows and columns. - All cells of the matrix will be initialized to zero. - - If the row or column count is less than one. - - - - Create a new sparse matrix as a copy of the given other matrix. - This new matrix will be independent from the other matrix. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given two-dimensional array. - This new matrix will be independent from the provided array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given enumerable. - The enumerable is assumed to be in row-major order (row by row). - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - - Create a new sparse matrix with the given number of rows and columns as a copy of the given array. - The array is assumed to be in column-major order (column by column). - This new matrix will be independent from the provided array. - A new memory block will be allocated for storing the matrix. - - - - - - Create a new sparse matrix as a copy of the given enumerable of enumerable columns. - Each enumerable in the master enumerable specifies a column. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given enumerable of enumerable columns. - Each enumerable in the master enumerable specifies a column. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given column arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given column arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given column vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given column vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given enumerable of enumerable rows. - Each enumerable in the master enumerable specifies a row. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given enumerable of enumerable rows. - Each enumerable in the master enumerable specifies a row. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given row arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given row arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given row vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given row vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix with the diagonal as a copy of the given vector. - This new matrix will be independent from the vector. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix with the diagonal as a copy of the given vector. - This new matrix will be independent from the vector. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix with the diagonal as a copy of the given array. - This new matrix will be independent from the array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix with the diagonal as a copy of the given array. - This new matrix will be independent from the array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix and initialize each value to the same provided value. - - - - - Create a new sparse matrix and initialize each value using the provided init function. - - - - - Create a new diagonal sparse matrix and initialize each diagonal value to the same provided value. - - - - - Create a new diagonal sparse matrix and initialize each diagonal value using the provided init function. - - - - - Create a new square sparse identity matrix where each diagonal value is set to One. - - - - - Returns a new matrix containing the lower triangle of this matrix. - - The lower triangle of this matrix. - - - - Puts the lower triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If is . - If the result matrix's dimensions are not the same as this matrix. - - - - Puts the lower triangle of this matrix into the result matrix. - - Where to store the lower triangle. - - - - Returns a new matrix containing the upper triangle of this matrix. - - The upper triangle of this matrix. - - - - Puts the upper triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If is . - If the result matrix's dimensions are not the same as this matrix. - - - - Puts the upper triangle of this matrix into the result matrix. - - Where to store the lower triangle. - - - - Returns a new matrix containing the lower triangle of this matrix. The new matrix - does not contain the diagonal elements of this matrix. - - The lower triangle of this matrix. - - - - Puts the strictly lower triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If is . - If the result matrix's dimensions are not the same as this matrix. - - - - Puts the strictly lower triangle of this matrix into the result matrix. - - Where to store the lower triangle. - - - - Returns a new matrix containing the upper triangle of this matrix. The new matrix - does not contain the diagonal elements of this matrix. - - The upper triangle of this matrix. - - - - Puts the strictly upper triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If is . - If the result matrix's dimensions are not the same as this matrix. - - - - Puts the strictly upper triangle of this matrix into the result matrix. - - Where to store the lower triangle. - - - - Negate each element of this matrix and place the results into the result matrix. - - The result of the negation. - - - Calculates the induced infinity norm of this matrix. - The maximum absolute row sum of the matrix. - - - Calculates the entry-wise Frobenius norm of this matrix. - The square root of the sum of the squared values. - - - - Adds another matrix to this matrix. - - The matrix to add to this matrix. - The matrix to store the result of the addition. - If the other matrix is . - If the two matrices don't have the same dimensions. - - - - Subtracts another matrix from this matrix. - - The matrix to subtract to this matrix. - The matrix to store the result of subtraction. - If the other matrix is . - If the two matrices don't have the same dimensions. - - - - Multiplies each element of the matrix by a scalar and places results into the result matrix. - - The scalar to multiply the matrix with. - The matrix to store the result of the multiplication. - - - - Multiplies this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with transpose of another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Pointwise multiplies this matrix with another matrix and stores the result into the result matrix. - - The matrix to pointwise multiply with this one. - The matrix to store the result of the pointwise multiplication. - - - - Pointwise divide this matrix by another matrix and stores the result into the result matrix. - - The matrix to pointwise divide this one by. - The matrix to store the result of the pointwise division. - - - - Evaluates whether this matrix is symmetric. - - - - - Evaluates whether this matrix is Hermitian (conjugate symmetric). - - - - - Adds two matrices together and returns the results. - - This operator will allocate new memory for the result. It will - choose the representation of either or depending on which - is denser. - The left matrix to add. - The right matrix to add. - The result of the addition. - If and don't have the same dimensions. - If or is . - - - - Returns a Matrix containing the same values of . - - The matrix to get the values from. - A matrix containing a the same values as . - If is . - - - - Subtracts two matrices together and returns the results. - - This operator will allocate new memory for the result. It will - choose the representation of either or depending on which - is denser. - The left matrix to subtract. - The right matrix to subtract. - The result of the addition. - If and don't have the same dimensions. - If or is . - - - - Negates each element of the matrix. - - The matrix to negate. - A matrix containing the negated values. - If is . - - - - Multiplies a Matrix by a constant and returns the result. - - The matrix to multiply. - The constant to multiply the matrix by. - The result of the multiplication. - If is . - - - - Multiplies a Matrix by a constant and returns the result. - - The matrix to multiply. - The constant to multiply the matrix by. - The result of the multiplication. - If is . - - - - Multiplies two matrices. - - This operator will allocate new memory for the result. It will - choose the representation of either or depending on which - is denser. - The left matrix to multiply. - The right matrix to multiply. - The result of multiplication. - If or is . - If the dimensions of or don't conform. - - - - Multiplies a Matrix and a Vector. - - The matrix to multiply. - The vector to multiply. - The result of multiplication. - If or is . - - - - Multiplies a Vector and a Matrix. - - The vector to multiply. - The matrix to multiply. - The result of multiplication. - If or is . - - - - Multiplies a Matrix by a constant and returns the result. - - The matrix to multiply. - The constant to multiply the matrix by. - The result of the multiplication. - If is . - - - - A vector with sparse storage, intended for very large vectors where most of the cells are zero. - - The sparse vector is not thread safe. - - - - Gets the number of non zero elements in the vector. - - The number of non zero elements. - - - - Create a new sparse vector straight from an initialized vector storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a new sparse vector with the given length. - All cells of the vector will be initialized to zero. - - If length is less than one. - - - - Create a new sparse vector as a copy of the given other vector. - This new vector will be independent from the other vector. - A new memory block will be allocated for storing the vector. - - - - - Create a new sparse vector as a copy of the given enumerable. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new sparse vector as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new sparse vector as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new sparse vector and initialize each value using the provided value. - - - - - Create a new sparse vector and initialize each value using the provided init function. - - - - - Adds a scalar to each element of the vector and stores the result in the result vector. - Warning, the new 'sparse vector' with a non-zero scalar added to it will be a 100% filled - sparse vector and very inefficient. Would be better to work with a dense vector instead. - - - The scalar to add. - - - The vector to store the result of the addition. - - - - - Adds another vector to this vector and stores the result into the result vector. - - - The vector to add to this one. - - - The vector to store the result of the addition. - - - - - Subtracts a scalar from each element of the vector and stores the result in the result vector. - - - The scalar to subtract. - - - The vector to store the result of the subtraction. - - - - - Subtracts another vector to this vector and stores the result into the result vector. - - - The vector to subtract from this one. - - - The vector to store the result of the subtraction. - - - - - Negates vector and saves result to - - Target vector - - - - Conjugates vector and save result to - - Target vector - - - - Multiplies a scalar to each element of the vector and stores the result in the result vector. - - - The scalar to multiply. - - - The vector to store the result of the multiplication. - - - - - Computes the dot product between this vector and another vector. - - The other vector. - The sum of a[i]*b[i] for all i. - - - - Computes the dot product between the conjugate of this vector and another vector. - - The other vector. - The sum of conj(a[i])*b[i] for all i. - - - - Adds two Vectors together and returns the results. - - One of the vectors to add. - The other vector to add. - The result of the addition. - If and are not the same size. - If or is . - - - - Returns a Vector containing the negated values of . - - The vector to get the values from. - A vector containing the negated values as . - If is . - - - - Subtracts two Vectors and returns the results. - - The vector to subtract from. - The vector to subtract. - The result of the subtraction. - If and are not the same size. - If or is . - - - - Multiplies a vector with a complex. - - The vector to scale. - The complex value. - The result of the multiplication. - If is . - - - - Multiplies a vector with a complex. - - The complex value. - The vector to scale. - The result of the multiplication. - If is . - - - - Computes the dot product between two Vectors. - - The left row vector. - The right column vector. - The dot product between the two vectors. - If and are not the same size. - If or is . - - - - Divides a vector with a complex. - - The vector to divide. - The complex value. - The result of the division. - If is . - - - - Computes the modulus of each element of the vector of the given divisor. - - The vector whose elements we want to compute the modulus of. - The divisor to use, - The result of the calculation - If is . - - - - Returns the index of the absolute minimum element. - - The index of absolute minimum element. - - - - Returns the index of the absolute maximum element. - - The index of absolute maximum element. - - - - Computes the sum of the vector's elements. - - The sum of the vector's elements. - - - - Calculates the L1 norm of the vector, also known as Manhattan norm. - - The sum of the absolute values. - - - - Calculates the infinity norm of the vector. - - The maximum absolute value. - - - - Computes the p-Norm. - - The p value. - Scalar ret = ( ∑|this[i]|^p )^(1/p) - - - - Pointwise multiplies this vector with another vector and stores the result into the result vector. - - The vector to pointwise multiply with this one. - The vector to store the result of the pointwise multiplication. - - - - Creates a double sparse vector based on a string. The string can be in the following formats (without the - quotes): 'n', 'n;n;..', '(n;n;..)', '[n;n;...]', where n is a Complex. - - - A double sparse vector containing the values specified by the given string. - - - the string to parse. - - - An that supplies culture-specific formatting information. - - - - - Converts the string representation of a complex sparse vector to double-precision sparse vector equivalent. - A return value indicates whether the conversion succeeded or failed. - - - A string containing a complex vector to convert. - - - The parsed value. - - - If the conversion succeeds, the result will contain a complex number equivalent to value. - Otherwise the result will be null. - - - - - Converts the string representation of a complex sparse vector to double-precision sparse vector equivalent. - A return value indicates whether the conversion succeeded or failed. - - - A string containing a complex vector to convert. - - - An that supplies culture-specific formatting information about value. - - - The parsed value. - - - If the conversion succeeds, the result will contain a complex number equivalent to value. - Otherwise the result will be null. - - - - - Complex version of the class. - - - - - Initializes a new instance of the Vector class. - - - - - Set all values whose absolute value is smaller than the threshold to zero. - - - - - Conjugates vector and save result to - - Target vector - - - - Negates vector and saves result to - - Target vector - - - - Adds a scalar to each element of the vector and stores the result in the result vector. - - - The scalar to add. - - - The vector to store the result of the addition. - - - - - Adds another vector to this vector and stores the result into the result vector. - - - The vector to add to this one. - - - The vector to store the result of the addition. - - - - - Subtracts a scalar from each element of the vector and stores the result in the result vector. - - - The scalar to subtract. - - - The vector to store the result of the subtraction. - - - - - Subtracts another vector to this vector and stores the result into the result vector. - - - The vector to subtract from this one. - - - The vector to store the result of the subtraction. - - - - - Multiplies a scalar to each element of the vector and stores the result in the result vector. - - - The scalar to multiply. - - - The vector to store the result of the multiplication. - - - - - Divides each element of the vector by a scalar and stores the result in the result vector. - - - The scalar to divide with. - - - The vector to store the result of the division. - - - - - Divides a scalar by each element of the vector and stores the result in the result vector. - - The scalar to divide. - The vector to store the result of the division. - - - - Pointwise multiplies this vector with another vector and stores the result into the result vector. - - The vector to pointwise multiply with this one. - The vector to store the result of the pointwise multiplication. - - - - Pointwise divide this vector with another vector and stores the result into the result vector. - - The vector to pointwise divide this one by. - The vector to store the result of the pointwise division. - - - - Pointwise raise this vector to an exponent and store the result into the result vector. - - The exponent to raise this vector values to. - The vector to store the result of the pointwise power. - - - - Pointwise raise this vector to an exponent vector and store the result into the result vector. - - The exponent vector to raise this vector values to. - The vector to store the result of the pointwise power. - - - - Pointwise canonical modulus, where the result has the sign of the divisor, - of this vector with another vector and stores the result into the result vector. - - The pointwise denominator vector to use. - The result of the modulus. - - - - Pointwise remainder (% operator), where the result has the sign of the dividend, - of this vector with another vector and stores the result into the result vector. - - The pointwise denominator vector to use. - The result of the modulus. - - - - Pointwise applies the exponential function to each value and stores the result into the result vector. - - The vector to store the result. - - - - Pointwise applies the natural logarithm function to each value and stores the result into the result vector. - - The vector to store the result. - - - - Computes the dot product between this vector and another vector. - - The other vector. - The sum of a[i]*b[i] for all i. - - - - Computes the dot product between the conjugate of this vector and another vector. - - The other vector. - The sum of conj(a[i])*b[i] for all i. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for each element of the vector for the given divisor. - - The scalar denominator to use. - A vector to store the results in. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for the given dividend for each element of the vector. - - The scalar numerator to use. - A vector to store the results in. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for each element of the vector for the given divisor. - - The scalar denominator to use. - A vector to store the results in. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for the given dividend for each element of the vector. - - The scalar numerator to use. - A vector to store the results in. - - - - Returns the value of the absolute minimum element. - - The value of the absolute minimum element. - - - - Returns the index of the absolute minimum element. - - The index of absolute minimum element. - - - - Returns the value of the absolute maximum element. - - The value of the absolute maximum element. - - - - Returns the index of the absolute maximum element. - - The index of absolute maximum element. - - - - Computes the sum of the vector's elements. - - The sum of the vector's elements. - - - - Calculates the L1 norm of the vector, also known as Manhattan norm. - - The sum of the absolute values. - - - - Calculates the L2 norm of the vector, also known as Euclidean norm. - - The square root of the sum of the squared values. - - - - Calculates the infinity norm of the vector. - - The maximum absolute value. - - - - Computes the p-Norm. - - - The p value. - - - Scalar ret = ( ∑|At(i)|^p )^(1/p) - - - - - Returns the index of the maximum element. - - The index of maximum element. - - - - Returns the index of the minimum element. - - The index of minimum element. - - - - Normalizes this vector to a unit vector with respect to the p-norm. - - - The p value. - - - This vector normalized to a unit vector with respect to the p-norm. - - - - - A Matrix class with dense storage. The underlying storage is a one dimensional array in column-major order (column by column). - - - - - Number of rows. - - Using this instead of the RowCount property to speed up calculating - a matrix index in the data array. - - - - Number of columns. - - Using this instead of the ColumnCount property to speed up calculating - a matrix index in the data array. - - - - Gets the matrix's data. - - The matrix's data. - - - - Create a new dense matrix straight from an initialized matrix storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a new square dense matrix with the given number of rows and columns. - All cells of the matrix will be initialized to zero. - - If the order is less than one. - - - - Create a new dense matrix with the given number of rows and columns. - All cells of the matrix will be initialized to zero. - - If the row or column count is less than one. - - - - Create a new dense matrix with the given number of rows and columns directly binding to a raw array. - The array is assumed to be in column-major order (column by column) and is used directly without copying. - Very efficient, but changes to the array and the matrix will affect each other. - - - - - - Create a new dense matrix as a copy of the given other matrix. - This new matrix will be independent from the other matrix. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given two-dimensional array. - This new matrix will be independent from the provided array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable. - The enumerable is assumed to be in column-major order (column by column). - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable of enumerable columns. - Each enumerable in the master enumerable specifies a column. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable of enumerable columns. - Each enumerable in the master enumerable specifies a column. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given column arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given column arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given column vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given column vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable of enumerable rows. - Each enumerable in the master enumerable specifies a row. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable of enumerable rows. - Each enumerable in the master enumerable specifies a row. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given row arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given row arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given row vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given row vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix with the diagonal as a copy of the given vector. - This new matrix will be independent from the vector. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix with the diagonal as a copy of the given vector. - This new matrix will be independent from the vector. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix with the diagonal as a copy of the given array. - This new matrix will be independent from the array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix with the diagonal as a copy of the given array. - This new matrix will be independent from the array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix and initialize each value to the same provided value. - - - - - Create a new dense matrix and initialize each value using the provided init function. - - - - - Create a new diagonal dense matrix and initialize each diagonal value to the same provided value. - - - - - Create a new diagonal dense matrix and initialize each diagonal value using the provided init function. - - - - - Create a new square sparse identity matrix where each diagonal value is set to One. - - - - - Create a new dense matrix with values sampled from the provided random distribution. - - - - - Gets the matrix's data. - - The matrix's data. - - - Calculates the induced L1 norm of this matrix. - The maximum absolute column sum of the matrix. - - - Calculates the induced infinity norm of this matrix. - The maximum absolute row sum of the matrix. - - - Calculates the entry-wise Frobenius norm of this matrix. - The square root of the sum of the squared values. - - - - Negate each element of this matrix and place the results into the result matrix. - - The result of the negation. - - - - Complex conjugates each element of this matrix and place the results into the result matrix. - - The result of the conjugation. - - - - Add a scalar to each element of the matrix and stores the result in the result vector. - - The scalar to add. - The matrix to store the result of the addition. - - - - Adds another matrix to this matrix. - - The matrix to add to this matrix. - The matrix to store the result of add - If the other matrix is . - If the two matrices don't have the same dimensions. - - - - Subtracts a scalar from each element of the matrix and stores the result in the result vector. - - The scalar to subtract. - The matrix to store the result of the subtraction. - - - - Subtracts another matrix from this matrix. - - The matrix to subtract. - The matrix to store the result of the subtraction. - - - - Multiplies each element of the matrix by a scalar and places results into the result matrix. - - The scalar to multiply the matrix with. - The matrix to store the result of the multiplication. - - - - Multiplies this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with transpose of another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with the conjugate transpose of another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies the conjugate transpose of this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Divides each element of the matrix by a scalar and places results into the result matrix. - - The scalar to divide the matrix with. - The matrix to store the result of the division. - - - - Pointwise multiplies this matrix with another matrix and stores the result into the result matrix. - - The matrix to pointwise multiply with this one. - The matrix to store the result of the pointwise multiplication. - - - - Pointwise divide this matrix by another matrix and stores the result into the result matrix. - - The matrix to pointwise divide this one by. - The matrix to store the result of the pointwise division. - - - - Pointwise raise this matrix to an exponent and store the result into the result matrix. - - The exponent to raise this matrix values to. - The vector to store the result of the pointwise power. - - - - Computes the trace of this matrix. - - The trace of this matrix - If the matrix is not square - - - - Adds two matrices together and returns the results. - - This operator will allocate new memory for the result. It will - choose the representation of either or depending on which - is denser. - The left matrix to add. - The right matrix to add. - The result of the addition. - If and don't have the same dimensions. - If or is . - - - - Returns a Matrix containing the same values of . - - The matrix to get the values from. - A matrix containing a the same values as . - If is . - - - - Subtracts two matrices together and returns the results. - - This operator will allocate new memory for the result. It will - choose the representation of either or depending on which - is denser. - The left matrix to subtract. - The right matrix to subtract. - The result of the addition. - If and don't have the same dimensions. - If or is . - - - - Negates each element of the matrix. - - The matrix to negate. - A matrix containing the negated values. - If is . - - - - Multiplies a Matrix by a constant and returns the result. - - The matrix to multiply. - The constant to multiply the matrix by. - The result of the multiplication. - If is . - - - - Multiplies a Matrix by a constant and returns the result. - - The matrix to multiply. - The constant to multiply the matrix by. - The result of the multiplication. - If is . - - - - Multiplies two matrices. - - This operator will allocate new memory for the result. It will - choose the representation of either or depending on which - is denser. - The left matrix to multiply. - The right matrix to multiply. - The result of multiplication. - If or is . - If the dimensions of or don't conform. - - - - Multiplies a Matrix and a Vector. - - The matrix to multiply. - The vector to multiply. - The result of multiplication. - If or is . - - - - Multiplies a Vector and a Matrix. - - The vector to multiply. - The matrix to multiply. - The result of multiplication. - If or is . - - - - Multiplies a Matrix by a constant and returns the result. - - The matrix to multiply. - The constant to multiply the matrix by. - The result of the multiplication. - If is . - - - - Evaluates whether this matrix is symmetric. - - - - - Evaluates whether this matrix is Hermitian (conjugate symmetric). - - - - - A vector using dense storage. - - - - - Number of elements - - - - - Gets the vector's data. - - - - - Create a new dense vector straight from an initialized vector storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a new dense vector with the given length. - All cells of the vector will be initialized to zero. - - If length is less than one. - - - - Create a new dense vector directly binding to a raw array. - The array is used directly without copying. - Very efficient, but changes to the array and the vector will affect each other. - - - - - Create a new dense vector as a copy of the given other vector. - This new vector will be independent from the other vector. - A new memory block will be allocated for storing the vector. - - - - - Create a new dense vector as a copy of the given array. - This new vector will be independent from the array. - A new memory block will be allocated for storing the vector. - - - - - Create a new dense vector as a copy of the given enumerable. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new dense vector as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new dense vector as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new dense vector and initialize each value using the provided value. - - - - - Create a new dense vector and initialize each value using the provided init function. - - - - - Create a new dense vector with values sampled from the provided random distribution. - - - - - Gets the vector's data. - - The vector's data. - - - - Returns a reference to the internal data structure. - - The DenseVector whose internal data we are - returning. - - A reference to the internal date of the given vector. - - - - - Returns a vector bound directly to a reference of the provided array. - - The array to bind to the DenseVector object. - - A DenseVector whose values are bound to the given array. - - - - - Adds a scalar to each element of the vector and stores the result in the result vector. - - The scalar to add. - The vector to store the result of the addition. - - - - Adds another vector to this vector and stores the result into the result vector. - - The vector to add to this one. - The vector to store the result of the addition. - - - - Adds two Vectors together and returns the results. - - One of the vectors to add. - The other vector to add. - The result of the addition. - If and are not the same size. - If or is . - - - - Subtracts a scalar from each element of the vector and stores the result in the result vector. - - The scalar to subtract. - The vector to store the result of the subtraction. - - - - Subtracts another vector from this vector and stores the result into the result vector. - - The vector to subtract from this one. - The vector to store the result of the subtraction. - - - - Returns a Vector containing the negated values of . - - The vector to get the values from. - A vector containing the negated values as . - If is . - - - - Subtracts two Vectors and returns the results. - - The vector to subtract from. - The vector to subtract. - The result of the subtraction. - If and are not the same size. - If or is . - - - - Negates vector and saves result to - - Target vector - - - - Conjugates vector and save result to - - Target vector - - - - Multiplies a scalar to each element of the vector and stores the result in the result vector. - - The scalar to multiply. - The vector to store the result of the multiplication. - - - - - Computes the dot product between this vector and another vector. - - The other vector. - The sum of a[i]*b[i] for all i. - - - - Computes the dot product between the conjugate of this vector and another vector. - - The other vector. - The sum of conj(a[i])*b[i] for all i. - - - - Multiplies a vector with a complex. - - The vector to scale. - The Complex32 value. - The result of the multiplication. - If is . - - - - Multiplies a vector with a complex. - - The Complex32 value. - The vector to scale. - The result of the multiplication. - If is . - - - - Computes the dot product between two Vectors. - - The left row vector. - The right column vector. - The dot product between the two vectors. - If and are not the same size. - If or is . - - - - Divides a vector with a complex. - - The vector to divide. - The Complex32 value. - The result of the division. - If is . - - - - Returns the index of the absolute minimum element. - - The index of absolute minimum element. - - - - Returns the index of the absolute maximum element. - - The index of absolute maximum element. - - - - Computes the sum of the vector's elements. - - The sum of the vector's elements. - - - - Calculates the L1 norm of the vector, also known as Manhattan norm. - - The sum of the absolute values. - - - - Calculates the L2 norm of the vector, also known as Euclidean norm. - - The square root of the sum of the squared values. - - - - Calculates the infinity norm of the vector. - - The maximum absolute value. - - - - Computes the p-Norm. - - The p value. - Scalar ret = ( ∑|this[i]|^p )^(1/p) - - - - Pointwise divide this vector with another vector and stores the result into the result vector. - - The vector to pointwise divide this one by. - The vector to store the result of the pointwise division. - - - - Pointwise divide this vector with another vector and stores the result into the result vector. - - The vector to pointwise divide this one by. - The vector to store the result of the pointwise division. - - - - - Pointwise raise this vector to an exponent vector and store the result into the result vector. - - The exponent vector to raise this vector values to. - The vector to store the result of the pointwise power. - - - - Creates a Complex32 dense vector based on a string. The string can be in the following formats (without the - quotes): 'n', 'n;n;..', '(n;n;..)', '[n;n;...]', where n is a double. - - - A Complex32 dense vector containing the values specified by the given string. - - - the string to parse. - - - An that supplies culture-specific formatting information. - - - - - Converts the string representation of a complex dense vector to double-precision dense vector equivalent. - A return value indicates whether the conversion succeeded or failed. - - - A string containing a complex vector to convert. - - - The parsed value. - - - If the conversion succeeds, the result will contain a complex number equivalent to value. - Otherwise the result will be null. - - - - - Converts the string representation of a complex dense vector to double-precision dense vector equivalent. - A return value indicates whether the conversion succeeded or failed. - - - A string containing a complex vector to convert. - - - An that supplies culture-specific formatting information about value. - - - The parsed value. - - - If the conversion succeeds, the result will contain a complex number equivalent to value. - Otherwise the result will be null. - - - - - A matrix type for diagonal matrices. - - - Diagonal matrices can be non-square matrices but the diagonal always starts - at element 0,0. A diagonal matrix will throw an exception if non diagonal - entries are set. The exception to this is when the off diagonal elements are - 0.0 or NaN; these settings will cause no change to the diagonal matrix. - - - - - Gets the matrix's data. - - The matrix's data. - - - - Create a new diagonal matrix straight from an initialized matrix storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a new square diagonal matrix with the given number of rows and columns. - All cells of the matrix will be initialized to zero. - - If the order is less than one. - - - - Create a new diagonal matrix with the given number of rows and columns. - All cells of the matrix will be initialized to zero. - - If the row or column count is less than one. - - - - Create a new diagonal matrix with the given number of rows and columns. - All diagonal cells of the matrix will be initialized to the provided value, all non-diagonal ones to zero. - - If the row or column count is less than one. - - - - Create a new diagonal matrix with the given number of rows and columns directly binding to a raw array. - The array is assumed to contain the diagonal elements only and is used directly without copying. - Very efficient, but changes to the array and the matrix will affect each other. - - - - - Create a new diagonal matrix as a copy of the given other matrix. - This new matrix will be independent from the other matrix. - The matrix to copy from must be diagonal as well. - A new memory block will be allocated for storing the matrix. - - - - - Create a new diagonal matrix as a copy of the given two-dimensional array. - This new matrix will be independent from the provided array. - The array to copy from must be diagonal as well. - A new memory block will be allocated for storing the matrix. - - - - - Create a new diagonal matrix and initialize each diagonal value from the provided indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new diagonal matrix and initialize each diagonal value from the provided indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new diagonal matrix and initialize each diagonal value from the provided enumerable. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new diagonal matrix and initialize each diagonal value using the provided init function. - - - - - Create a new square sparse identity matrix where each diagonal value is set to One. - - - - - Create a new diagonal matrix with diagonal values sampled from the provided random distribution. - - - - - Negate each element of this matrix and place the results into the result matrix. - - The result of the negation. - - - - Complex conjugates each element of this matrix and place the results into the result matrix. - - The result of the conjugation. - - - - Adds another matrix to this matrix. - - The matrix to add to this matrix. - The matrix to store the result of the addition. - If the two matrices don't have the same dimensions. - - - - Subtracts another matrix from this matrix. - - The matrix to subtract. - The matrix to store the result of the subtraction. - If the two matrices don't have the same dimensions. - - - - Multiplies each element of the matrix by a scalar and places results into the result matrix. - - The scalar to multiply the matrix with. - The matrix to store the result of the multiplication. - - - - Multiplies this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with transpose of another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with the conjugate transpose of another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies the conjugate transpose of this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Divides each element of the matrix by a scalar and places results into the result matrix. - - The scalar to divide the matrix with. - The matrix to store the result of the division. - - - - Divides a scalar by each element of the matrix and stores the result in the result matrix. - - The scalar to add. - The matrix to store the result of the division. - - - - Computes the determinant of this matrix. - - The determinant of this matrix. - - - - Returns the elements of the diagonal in a . - - The elements of the diagonal. - For non-square matrices, the method returns Min(Rows, Columns) elements where - i == j (i is the row index, and j is the column index). - - - - Copies the values of the given array to the diagonal. - - The array to copy the values from. The length of the vector should be - Min(Rows, Columns). - If the length of does not - equal Min(Rows, Columns). - For non-square matrices, the elements of are copied to - this[i,i]. - - - - Copies the values of the given to the diagonal. - - The vector to copy the values from. The length of the vector should be - Min(Rows, Columns). - If the length of does not - equal Min(Rows, Columns). - For non-square matrices, the elements of are copied to - this[i,i]. - - - Calculates the induced L1 norm of this matrix. - The maximum absolute column sum of the matrix. - - - Calculates the induced L2 norm of the matrix. - The largest singular value of the matrix. - - - Calculates the induced infinity norm of this matrix. - The maximum absolute row sum of the matrix. - - - Calculates the entry-wise Frobenius norm of this matrix. - The square root of the sum of the squared values. - - - Calculates the condition number of this matrix. - The condition number of the matrix. - - - Computes the inverse of this matrix. - If is not a square matrix. - If is singular. - The inverse of this matrix. - - - - Returns a new matrix containing the lower triangle of this matrix. - - The lower triangle of this matrix. - - - - Puts the lower triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If the result matrix's dimensions are not the same as this matrix. - - - - Returns a new matrix containing the lower triangle of this matrix. The new matrix - does not contain the diagonal elements of this matrix. - - The lower triangle of this matrix. - - - - Puts the strictly lower triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If the result matrix's dimensions are not the same as this matrix. - - - - Returns a new matrix containing the upper triangle of this matrix. - - The upper triangle of this matrix. - - - - Puts the upper triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If the result matrix's dimensions are not the same as this matrix. - - - - Returns a new matrix containing the upper triangle of this matrix. The new matrix - does not contain the diagonal elements of this matrix. - - The upper triangle of this matrix. - - - - Puts the strictly upper triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If the result matrix's dimensions are not the same as this matrix. - - - - Creates a matrix that contains the values from the requested sub-matrix. - - The row to start copying from. - The number of rows to copy. Must be positive. - The column to start copying from. - The number of columns to copy. Must be positive. - The requested sub-matrix. - If: is - negative, or greater than or equal to the number of rows. - is negative, or greater than or equal to the number - of columns. - (columnIndex + columnLength) >= Columns - (rowIndex + rowLength) >= Rows - If or - is not positive. - - - - Permute the columns of a matrix according to a permutation. - - The column permutation to apply to this matrix. - Always thrown - Permutation in diagonal matrix are senseless, because of matrix nature - - - - Permute the rows of a matrix according to a permutation. - - The row permutation to apply to this matrix. - Always thrown - Permutation in diagonal matrix are senseless, because of matrix nature - - - - Evaluates whether this matrix is symmetric. - - - - - Evaluates whether this matrix is Hermitian (conjugate symmetric). - - - - - A class which encapsulates the functionality of a Cholesky factorization. - For a symmetric, positive definite matrix A, the Cholesky factorization - is an lower triangular matrix L so that A = L*L'. - - - The computation of the Cholesky factorization is done at construction time. If the matrix is not symmetric - or positive definite, the constructor will throw an exception. - - - - - Gets the determinant of the matrix for which the Cholesky matrix was computed. - - - - - Gets the log determinant of the matrix for which the Cholesky matrix was computed. - - - - - A class which encapsulates the functionality of a Cholesky factorization for dense matrices. - For a symmetric, positive definite matrix A, the Cholesky factorization - is an lower triangular matrix L so that A = L*L'. - - - The computation of the Cholesky factorization is done at construction time. If the matrix is not symmetric - or positive definite, the constructor will throw an exception. - - - - - Initializes a new instance of the class. This object will compute the - Cholesky factorization when the constructor is called and cache it's factorization. - - The matrix to factor. - If is null. - If is not a square matrix. - If is not positive definite. - - - - Solves a system of linear equations, AX = B, with A Cholesky factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A Cholesky factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Calculates the Cholesky factorization of the input matrix. - - The matrix to be factorized. - If is null. - If is not a square matrix. - If is not positive definite. - If does not have the same dimensions as the existing factor. - - - - Eigenvalues and eigenvectors of a complex matrix. - - - If A is Hermitian, then A = V*D*V' where the eigenvalue matrix D is - diagonal and the eigenvector matrix V is Hermitian. - I.e. A = V*D*V' and V*VH=I. - If A is not symmetric, then the eigenvalue matrix D is block diagonal - with the real eigenvalues in 1-by-1 blocks and any complex eigenvalues, - lambda + i*mu, in 2-by-2 blocks, [lambda, mu; -mu, lambda]. The - columns of V represent the eigenvectors in the sense that A*V = V*D, - i.e. A.Multiply(V) equals V.Multiply(D). The matrix V may be badly - conditioned, or even singular, so the validity of the equation - A = V*D*Inverse(V) depends upon V.Condition(). - - - - - Initializes a new instance of the class. This object will compute the - the eigenvalue decomposition when the constructor is called and cache it's decomposition. - - The matrix to factor. - If it is known whether the matrix is symmetric or not the routine can skip checking it itself. - If is null. - If EVD algorithm failed to converge with matrix . - - - - Solves a system of linear equations, AX = B, with A SVD factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A EVD factorized. - - The right hand side vector, b. - The left hand side , x. - - - - A class which encapsulates the functionality of the QR decomposition Modified Gram-Schmidt Orthogonalization. - Any complex square matrix A may be decomposed as A = QR where Q is an unitary mxn matrix and R is an nxn upper triangular matrix. - - - The computation of the QR decomposition is done at construction time by modified Gram-Schmidt Orthogonalization. - - - - - Initializes a new instance of the class. This object creates an unitary matrix - using the modified Gram-Schmidt method. - - The matrix to factor. - If is null. - If row count is less then column count - If is rank deficient - - - - Factorize matrix using the modified Gram-Schmidt method. - - Initial matrix. On exit is replaced by Q. - Number of rows in Q. - Number of columns in Q. - On exit is filled by R. - - - - Solves a system of linear equations, AX = B, with A QR factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A QR factorized. - - The right hand side vector, b. - The left hand side , x. - - - - A class which encapsulates the functionality of an LU factorization. - For a matrix A, the LU factorization is a pair of lower triangular matrix L and - upper triangular matrix U so that A = L*U. - - - The computation of the LU factorization is done at construction time. - - - - - Initializes a new instance of the class. This object will compute the - LU factorization when the constructor is called and cache it's factorization. - - The matrix to factor. - If is null. - If is not a square matrix. - - - - Solves a system of linear equations, AX = B, with A LU factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A LU factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Returns the inverse of this matrix. The inverse is calculated using LU decomposition. - - The inverse of this matrix. - - - - A class which encapsulates the functionality of the QR decomposition. - Any real square matrix A may be decomposed as A = QR where Q is an orthogonal matrix - (its columns are orthogonal unit vectors meaning QTQ = I) and R is an upper triangular matrix - (also called right triangular matrix). - - - The computation of the QR decomposition is done at construction time by Householder transformation. - - - - - Gets or sets Tau vector. Contains additional information on Q - used for native solver. - - - - - Initializes a new instance of the class. This object will compute the - QR factorization when the constructor is called and cache it's factorization. - - The matrix to factor. - The QR factorization method to use. - If is null. - If row count is less then column count - - - - Solves a system of linear equations, AX = B, with A QR factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A QR factorized. - - The right hand side vector, b. - The left hand side , x. - - - - A class which encapsulates the functionality of the singular value decomposition (SVD) for . - Suppose M is an m-by-n matrix whose entries are real numbers. - Then there exists a factorization of the form M = UΣVT where: - - U is an m-by-m unitary matrix; - - Σ is m-by-n diagonal matrix with nonnegative real numbers on the diagonal; - - VT denotes transpose of V, an n-by-n unitary matrix; - Such a factorization is called a singular-value decomposition of M. A common convention is to order the diagonal - entries Σ(i,i) in descending order. In this case, the diagonal matrix Σ is uniquely determined - by M (though the matrices U and V are not). The diagonal entries of Σ are known as the singular values of M. - - - The computation of the singular value decomposition is done at construction time. - - - - - Initializes a new instance of the class. This object will compute the - the singular value decomposition when the constructor is called and cache it's decomposition. - - The matrix to factor. - Compute the singular U and VT vectors or not. - If is null. - If SVD algorithm failed to converge with matrix . - - - - Solves a system of linear equations, AX = B, with A SVD factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A SVD factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Eigenvalues and eigenvectors of a real matrix. - - - If A is symmetric, then A = V*D*V' where the eigenvalue matrix D is - diagonal and the eigenvector matrix V is orthogonal. - I.e. A = V*D*V' and V*VT=I. - If A is not symmetric, then the eigenvalue matrix D is block diagonal - with the real eigenvalues in 1-by-1 blocks and any complex eigenvalues, - lambda + i*mu, in 2-by-2 blocks, [lambda, mu; -mu, lambda]. The - columns of V represent the eigenvectors in the sense that A*V = V*D, - i.e. A.Multiply(V) equals V.Multiply(D). The matrix V may be badly - conditioned, or even singular, so the validity of the equation - A = V*D*Inverse(V) depends upon V.Condition(). - - - - - Gets the absolute value of determinant of the square matrix for which the EVD was computed. - - - - - Gets the effective numerical matrix rank. - - The number of non-negligible singular values. - - - - Gets a value indicating whether the matrix is full rank or not. - - true if the matrix is full rank; otherwise false. - - - - A class which encapsulates the functionality of the QR decomposition Modified Gram-Schmidt Orthogonalization. - Any real square matrix A may be decomposed as A = QR where Q is an orthogonal mxn matrix and R is an nxn upper triangular matrix. - - - The computation of the QR decomposition is done at construction time by modified Gram-Schmidt Orthogonalization. - - - - - Gets the absolute determinant value of the matrix for which the QR matrix was computed. - - - - - Gets a value indicating whether the matrix is full rank or not. - - true if the matrix is full rank; otherwise false. - - - - A class which encapsulates the functionality of an LU factorization. - For a matrix A, the LU factorization is a pair of lower triangular matrix L and - upper triangular matrix U so that A = L*U. - In the Math.NET implementation we also store a set of pivot elements for increased - numerical stability. The pivot elements encode a permutation matrix P such that P*A = L*U. - - - The computation of the LU factorization is done at construction time. - - - - - Gets the determinant of the matrix for which the LU factorization was computed. - - - - - A class which encapsulates the functionality of the QR decomposition. - Any real square matrix A (m x n) may be decomposed as A = QR where Q is an orthogonal matrix - (its columns are orthogonal unit vectors meaning QTQ = I) and R is an upper triangular matrix - (also called right triangular matrix). - - - The computation of the QR decomposition is done at construction time by Householder transformation. - If a factorization is performed, the resulting Q matrix is an m x m matrix - and the R matrix is an m x n matrix. If a factorization is performed, the - resulting Q matrix is an m x n matrix and the R matrix is an n x n matrix. - - - - - Gets the absolute determinant value of the matrix for which the QR matrix was computed. - - - - - Gets a value indicating whether the matrix is full rank or not. - - true if the matrix is full rank; otherwise false. - - - - A class which encapsulates the functionality of the singular value decomposition (SVD). - Suppose M is an m-by-n matrix whose entries are real numbers. - Then there exists a factorization of the form M = UΣVT where: - - U is an m-by-m unitary matrix; - - Σ is m-by-n diagonal matrix with nonnegative real numbers on the diagonal; - - VT denotes transpose of V, an n-by-n unitary matrix; - Such a factorization is called a singular-value decomposition of M. A common convention is to order the diagonal - entries Σ(i,i) in descending order. In this case, the diagonal matrix Σ is uniquely determined - by M (though the matrices U and V are not). The diagonal entries of Σ are known as the singular values of M. - - - The computation of the singular value decomposition is done at construction time. - - - - - Gets the effective numerical matrix rank. - - The number of non-negligible singular values. - - - - Gets the two norm of the . - - The 2-norm of the . - - - - Gets the condition number max(S) / min(S) - - The condition number. - - - - Gets the determinant of the square matrix for which the SVD was computed. - - - - - A class which encapsulates the functionality of a Cholesky factorization for user matrices. - For a symmetric, positive definite matrix A, the Cholesky factorization - is an lower triangular matrix L so that A = L*L'. - - - The computation of the Cholesky factorization is done at construction time. If the matrix is not symmetric - or positive definite, the constructor will throw an exception. - - - - - Computes the Cholesky factorization in-place. - - On entry, the matrix to factor. On exit, the Cholesky factor matrix - If is null. - If is not a square matrix. - If is not positive definite. - - - - Initializes a new instance of the class. This object will compute the - Cholesky factorization when the constructor is called and cache it's factorization. - - The matrix to factor. - If is null. - If is not a square matrix. - If is not positive definite. - - - - Calculates the Cholesky factorization of the input matrix. - - The matrix to be factorized. - If is null. - If is not a square matrix. - If is not positive definite. - If does not have the same dimensions as the existing factor. - - - - Calculate Cholesky step - - Factor matrix - Number of rows - Column start - Total columns - Multipliers calculated previously - Number of available processors - - - - Solves a system of linear equations, AX = B, with A Cholesky factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A Cholesky factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Eigenvalues and eigenvectors of a complex matrix. - - - If A is Hermitian, then A = V*D*V' where the eigenvalue matrix D is - diagonal and the eigenvector matrix V is Hermitian. - I.e. A = V*D*V' and V*VH=I. - If A is not symmetric, then the eigenvalue matrix D is block diagonal - with the real eigenvalues in 1-by-1 blocks and any complex eigenvalues, - lambda + i*mu, in 2-by-2 blocks, [lambda, mu; -mu, lambda]. The - columns of V represent the eigenvectors in the sense that A*V = V*D, - i.e. A.Multiply(V) equals V.Multiply(D). The matrix V may be badly - conditioned, or even singular, so the validity of the equation - A = V*D*Inverse(V) depends upon V.Condition(). - - - - - Initializes a new instance of the class. This object will compute the - the eigenvalue decomposition when the constructor is called and cache it's decomposition. - - The matrix to factor. - If it is known whether the matrix is symmetric or not the routine can skip checking it itself. - If is null. - If EVD algorithm failed to converge with matrix . - - - - Reduces a complex Hermitian matrix to a real symmetric tridiagonal matrix using unitary similarity transformations. - - Source matrix to reduce - Output: Arrays for internal storage of real parts of eigenvalues - Output: Arrays for internal storage of imaginary parts of eigenvalues - Output: Arrays that contains further information about the transformations. - Order of initial matrix - This is derived from the Algol procedures HTRIDI by - Smith, Boyle, Dongarra, Garbow, Ikebe, Klema, Moler, and Wilkinson, Handbook for - Auto. Comp., Vol.ii-Linear Algebra, and the corresponding - Fortran subroutine in EISPACK. - - - - Symmetric tridiagonal QL algorithm. - - The eigen vectors to work on. - Arrays for internal storage of real parts of eigenvalues - Arrays for internal storage of imaginary parts of eigenvalues - Order of initial matrix - This is derived from the Algol procedures tql2, by - Bowdler, Martin, Reinsch, and Wilkinson, Handbook for - Auto. Comp., Vol.ii-Linear Algebra, and the corresponding - Fortran subroutine in EISPACK. - - - - - Determines eigenvectors by undoing the symmetric tridiagonalize transformation - - The eigen vectors to work on. - Previously tridiagonalized matrix by . - Contains further information about the transformations - Input matrix order - This is derived from the Algol procedures HTRIBK, by - by Smith, Boyle, Dongarra, Garbow, Ikebe, Klema, Moler, and Wilkinson, Handbook for - Auto. Comp., Vol.ii-Linear Algebra, and the corresponding - Fortran subroutine in EISPACK. - - - - Nonsymmetric reduction to Hessenberg form. - - The eigen vectors to work on. - Array for internal storage of nonsymmetric Hessenberg form. - Order of initial matrix - This is derived from the Algol procedures orthes and ortran, - by Martin and Wilkinson, Handbook for Auto. Comp., - Vol.ii-Linear Algebra, and the corresponding - Fortran subroutines in EISPACK. - - - - Nonsymmetric reduction from Hessenberg to real Schur form. - - The eigen vectors to work on. - The eigen values to work on. - Array for internal storage of nonsymmetric Hessenberg form. - Order of initial matrix - This is derived from the Algol procedure hqr2, - by Martin and Wilkinson, Handbook for Auto. Comp., - Vol.ii-Linear Algebra, and the corresponding - Fortran subroutine in EISPACK. - - - - Solves a system of linear equations, AX = B, with A SVD factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A EVD factorized. - - The right hand side vector, b. - The left hand side , x. - - - - A class which encapsulates the functionality of the QR decomposition Modified Gram-Schmidt Orthogonalization. - Any complex square matrix A may be decomposed as A = QR where Q is an unitary mxn matrix and R is an nxn upper triangular matrix. - - - The computation of the QR decomposition is done at construction time by modified Gram-Schmidt Orthogonalization. - - - - - Initializes a new instance of the class. This object creates an unitary matrix - using the modified Gram-Schmidt method. - - The matrix to factor. - If is null. - If row count is less then column count - If is rank deficient - - - - Solves a system of linear equations, AX = B, with A QR factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A QR factorized. - - The right hand side vector, b. - The left hand side , x. - - - - A class which encapsulates the functionality of an LU factorization. - For a matrix A, the LU factorization is a pair of lower triangular matrix L and - upper triangular matrix U so that A = L*U. - - - The computation of the LU factorization is done at construction time. - - - - - Initializes a new instance of the class. This object will compute the - LU factorization when the constructor is called and cache it's factorization. - - The matrix to factor. - If is null. - If is not a square matrix. - - - - Solves a system of linear equations, AX = B, with A LU factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A LU factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Returns the inverse of this matrix. The inverse is calculated using LU decomposition. - - The inverse of this matrix. - - - - A class which encapsulates the functionality of the QR decomposition. - Any real square matrix A may be decomposed as A = QR where Q is an orthogonal matrix - (its columns are orthogonal unit vectors meaning QTQ = I) and R is an upper triangular matrix - (also called right triangular matrix). - - - The computation of the QR decomposition is done at construction time by Householder transformation. - - - - - Initializes a new instance of the class. This object will compute the - QR factorization when the constructor is called and cache it's factorization. - - The matrix to factor. - The QR factorization method to use. - If is null. - - - - Generate column from initial matrix to work array - - Initial matrix - The first row - Column index - Generated vector - - - - Perform calculation of Q or R - - Work array - Q or R matrices - The first row - The last row - The first column - The last column - Number of available CPUs - - - - Solves a system of linear equations, AX = B, with A QR factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A QR factorized. - - The right hand side vector, b. - The left hand side , x. - - - - A class which encapsulates the functionality of the singular value decomposition (SVD) for . - Suppose M is an m-by-n matrix whose entries are real numbers. - Then there exists a factorization of the form M = UΣVT where: - - U is an m-by-m unitary matrix; - - Σ is m-by-n diagonal matrix with nonnegative real numbers on the diagonal; - - VT denotes transpose of V, an n-by-n unitary matrix; - Such a factorization is called a singular-value decomposition of M. A common convention is to order the diagonal - entries Σ(i,i) in descending order. In this case, the diagonal matrix Σ is uniquely determined - by M (though the matrices U and V are not). The diagonal entries of Σ are known as the singular values of M. - - - The computation of the singular value decomposition is done at construction time. - - - - - Initializes a new instance of the class. This object will compute the - the singular value decomposition when the constructor is called and cache it's decomposition. - - The matrix to factor. - Compute the singular U and VT vectors or not. - If is null. - - - - - Calculates absolute value of multiplied on signum function of - - Complex32 value z1 - Complex32 value z2 - Result multiplication of signum function and absolute value - - - - Interchanges two vectors and - - Source matrix - The number of rows in - Column A index to swap - Column B index to swap - - - - Scale column by starting from row - - Source matrix - The number of rows in - Column to scale - Row to scale from - Scale value - - - - Scale vector by starting from index - - Source vector - Row to scale from - Scale value - - - - Given the Cartesian coordinates (da, db) of a point p, these function return the parameters da, db, c, and s - associated with the Givens rotation that zeros the y-coordinate of the point. - - Provides the x-coordinate of the point p. On exit contains the parameter r associated with the Givens rotation - Provides the y-coordinate of the point p. On exit contains the parameter z associated with the Givens rotation - Contains the parameter c associated with the Givens rotation - Contains the parameter s associated with the Givens rotation - This is equivalent to the DROTG LAPACK routine. - - - - Calculate Norm 2 of the column in matrix starting from row - - Source matrix - The number of rows in - Column index - Start row index - Norm2 (Euclidean norm) of the column - - - - Calculate Norm 2 of the vector starting from index - - Source vector - Start index - Norm2 (Euclidean norm) of the vector - - - - Calculate dot product of and conjugating the first vector. - - Source matrix - The number of rows in - Index of column A - Index of column B - Starting row index - Dot product value - - - - Performs rotation of points in the plane. Given two vectors x and y , - each vector element of these vectors is replaced as follows: x(i) = c*x(i) + s*y(i); y(i) = c*y(i) - s*x(i) - - Source matrix - The number of rows in - Index of column A - Index of column B - scalar cos value - scalar sin value - - - - Solves a system of linear equations, AX = B, with A SVD factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A SVD factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Complex32 version of the class. - - - - - Initializes a new instance of the Matrix class. - - - - - Set all values whose absolute value is smaller than the threshold to zero. - - - - - Returns the conjugate transpose of this matrix. - - The conjugate transpose of this matrix. - - - - Puts the conjugate transpose of this matrix into the result matrix. - - - - - Complex conjugates each element of this matrix and place the results into the result matrix. - - The result of the conjugation. - - - - Negate each element of this matrix and place the results into the result matrix. - - The result of the negation. - - - - Add a scalar to each element of the matrix and stores the result in the result vector. - - The scalar to add. - The matrix to store the result of the addition. - - - - Adds another matrix to this matrix. - - The matrix to add to this matrix. - The matrix to store the result of the addition. - If the other matrix is . - If the two matrices don't have the same dimensions. - - - - Subtracts a scalar from each element of the vector and stores the result in the result vector. - - The scalar to subtract. - The matrix to store the result of the subtraction. - - - - Subtracts another matrix from this matrix. - - The matrix to subtract to this matrix. - The matrix to store the result of subtraction. - If the other matrix is . - If the two matrices don't have the same dimensions. - - - - Multiplies each element of the matrix by a scalar and places results into the result matrix. - - The scalar to multiply the matrix with. - The matrix to store the result of the multiplication. - - - - Multiplies this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Divides each element of the matrix by a scalar and places results into the result matrix. - - The scalar to divide the matrix with. - The matrix to store the result of the division. - - - - Divides a scalar by each element of the matrix and stores the result in the result matrix. - - The scalar to divide by each element of the matrix. - The matrix to store the result of the division. - - - - Multiplies this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with transpose of another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with the conjugate transpose of another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies the conjugate transpose of this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Pointwise multiplies this matrix with another matrix and stores the result into the result matrix. - - The matrix to pointwise multiply with this one. - The matrix to store the result of the pointwise multiplication. - - - - Pointwise divide this matrix by another matrix and stores the result into the result matrix. - - The matrix to pointwise divide this one by. - The matrix to store the result of the pointwise division. - - - - Pointwise raise this matrix to an exponent and store the result into the result matrix. - - The exponent to raise this matrix values to. - The matrix to store the result of the pointwise power. - - - - Pointwise raise this matrix to an exponent and store the result into the result matrix. - - The exponent to raise this matrix values to. - The vector to store the result of the pointwise power. - - - - Pointwise canonical modulus, where the result has the sign of the divisor, - of this matrix with another matrix and stores the result into the result matrix. - - The pointwise denominator matrix to use - The result of the modulus. - - - - Pointwise remainder (% operator), where the result has the sign of the dividend, - of this matrix with another matrix and stores the result into the result matrix. - - The pointwise denominator matrix to use - The result of the modulus. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for the given divisor each element of the matrix. - - The scalar denominator to use. - Matrix to store the results in. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for the given dividend for each element of the matrix. - - The scalar numerator to use. - A vector to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for the given divisor each element of the matrix. - - The scalar denominator to use. - Matrix to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for the given dividend for each element of the matrix. - - The scalar numerator to use. - A vector to store the results in. - - - - Pointwise applies the exponential function to each value and stores the result into the result matrix. - - The matrix to store the result. - - - - Pointwise applies the natural logarithm function to each value and stores the result into the result matrix. - - The matrix to store the result. - - - - Computes the Moore-Penrose Pseudo-Inverse of this matrix. - - - - - Computes the trace of this matrix. - - The trace of this matrix - If the matrix is not square - - - Calculates the induced L1 norm of this matrix. - The maximum absolute column sum of the matrix. - - - Calculates the induced infinity norm of this matrix. - The maximum absolute row sum of the matrix. - - - Calculates the entry-wise Frobenius norm of this matrix. - The square root of the sum of the squared values. - - - - Calculates the p-norms of all row vectors. - Typical values for p are 1.0 (L1, Manhattan norm), 2.0 (L2, Euclidean norm) and positive infinity (infinity norm) - - - - - Calculates the p-norms of all column vectors. - Typical values for p are 1.0 (L1, Manhattan norm), 2.0 (L2, Euclidean norm) and positive infinity (infinity norm) - - - - - Normalizes all row vectors to a unit p-norm. - Typical values for p are 1.0 (L1, Manhattan norm), 2.0 (L2, Euclidean norm) and positive infinity (infinity norm) - - - - - Normalizes all column vectors to a unit p-norm. - Typical values for p are 1.0 (L1, Manhattan norm), 2.0 (L2, Euclidean norm) and positive infinity (infinity norm) - - - - - Calculates the value sum of each row vector. - - - - - Calculates the absolute value sum of each row vector. - - - - - Calculates the value sum of each column vector. - - - - - Calculates the absolute value sum of each column vector. - - - - - Evaluates whether this matrix is Hermitian (conjugate symmetric). - - - - - A Bi-Conjugate Gradient stabilized iterative matrix solver. - - - - The Bi-Conjugate Gradient Stabilized (BiCGStab) solver is an 'improvement' - of the standard Conjugate Gradient (CG) solver. Unlike the CG solver the - BiCGStab can be used on non-symmetric matrices.
    - Note that much of the success of the solver depends on the selection of the - proper preconditioner. -
    - - The Bi-CGSTAB algorithm was taken from:
    - Templates for the solution of linear systems: Building blocks - for iterative methods -
    - Richard Barrett, Michael Berry, Tony F. Chan, James Demmel, - June M. Donato, Jack Dongarra, Victor Eijkhout, Roldan Pozo, - Charles Romine and Henk van der Vorst -
    - Url: http://www.netlib.org/templates/Templates.html -
    - Algorithm is described in Chapter 2, section 2.3.8, page 27 -
    - - The example code below provides an indication of the possible use of the - solver. - -
    -
    - - - Calculates the true residual of the matrix equation Ax = b according to: residual = b - Ax - - Instance of the A. - Residual values in . - Instance of the x. - Instance of the b. - - - - Solves the matrix equation Ax = b, where A is the coefficient matrix, b is the - solution vector and x is the unknown vector. - - The coefficient , A. - The solution , b. - The result , x. - The iterator to use to control when to stop iterating. - The preconditioner to use for approximations. - - - - A composite matrix solver. The actual solver is made by a sequence of - matrix solvers. - - - - Solver based on:
    - Faster PDE-based simulations using robust composite linear solvers
    - S. Bhowmicka, P. Raghavan a,*, L. McInnes b, B. Norris
    - Future Generation Computer Systems, Vol 20, 2004, pp 373�387
    -
    - - Note that if an iterator is passed to this solver it will be used for all the sub-solvers. - -
    -
    - - - The collection of solvers that will be used - - - - - Solves the matrix equation Ax = b, where A is the coefficient matrix, b is the - solution vector and x is the unknown vector. - - The coefficient matrix, A. - The solution vector, b - The result vector, x - The iterator to use to control when to stop iterating. - The preconditioner to use for approximations. - - - - A diagonal preconditioner. The preconditioner uses the inverse - of the matrix diagonal as preconditioning values. - - - - - The inverse of the matrix diagonal. - - - - - Returns the decomposed matrix diagonal. - - The matrix diagonal. - - - - Initializes the preconditioner and loads the internal data structures. - - - The upon which this preconditioner is based. - If is . - If is not a square matrix. - - - - Approximates the solution to the matrix equation Ax = b. - - The right hand side vector. - The left hand side vector. Also known as the result vector. - - - - A Generalized Product Bi-Conjugate Gradient iterative matrix solver. - - - - The Generalized Product Bi-Conjugate Gradient (GPBiCG) solver is an - alternative version of the Bi-Conjugate Gradient stabilized (CG) solver. - Unlike the CG solver the GPBiCG solver can be used on - non-symmetric matrices.
    - Note that much of the success of the solver depends on the selection of the - proper preconditioner. -
    - - The GPBiCG algorithm was taken from:
    - GPBiCG(m,l): A hybrid of BiCGSTAB and GPBiCG methods with - efficiency and robustness -
    - S. Fujino -
    - Applied Numerical Mathematics, Volume 41, 2002, pp 107 - 117 -
    -
    - - The example code below provides an indication of the possible use of the - solver. - -
    -
    - - - Indicates the number of BiCGStab steps should be taken - before switching. - - - - - Indicates the number of GPBiCG steps should be taken - before switching. - - - - - Gets or sets the number of steps taken with the BiCgStab algorithm - before switching over to the GPBiCG algorithm. - - - - - Gets or sets the number of steps taken with the GPBiCG algorithm - before switching over to the BiCgStab algorithm. - - - - - Calculates the true residual of the matrix equation Ax = b according to: residual = b - Ax - - Instance of the A. - Residual values in . - Instance of the x. - Instance of the b. - - - - Decide if to do steps with BiCgStab - - Number of iteration - true if yes, otherwise false - - - - Solves the matrix equation Ax = b, where A is the coefficient matrix, b is the - solution vector and x is the unknown vector. - - The coefficient matrix, A. - The solution vector, b - The result vector, x - The iterator to use to control when to stop iterating. - The preconditioner to use for approximations. - - - - An incomplete, level 0, LU factorization preconditioner. - - - The ILU(0) algorithm was taken from:
    - Iterative methods for sparse linear systems
    - Yousef Saad
    - Algorithm is described in Chapter 10, section 10.3.2, page 275
    -
    -
    - - - The matrix holding the lower (L) and upper (U) matrices. The - decomposition matrices are combined to reduce storage. - - - - - Returns the upper triagonal matrix that was created during the LU decomposition. - - A new matrix containing the upper triagonal elements. - - - - Returns the lower triagonal matrix that was created during the LU decomposition. - - A new matrix containing the lower triagonal elements. - - - - Initializes the preconditioner and loads the internal data structures. - - The matrix upon which the preconditioner is based. - If is . - If is not a square matrix. - - - - Approximates the solution to the matrix equation Ax = b. - - The right hand side vector. - The left hand side vector. Also known as the result vector. - - - - This class performs an Incomplete LU factorization with drop tolerance - and partial pivoting. The drop tolerance indicates which additional entries - will be dropped from the factorized LU matrices. - - - The ILUTP-Mem algorithm was taken from:
    - ILUTP_Mem: a Space-Efficient Incomplete LU Preconditioner -
    - Tzu-Yi Chen, Department of Mathematics and Computer Science,
    - Pomona College, Claremont CA 91711, USA
    - Published in:
    - Lecture Notes in Computer Science
    - Volume 3046 / 2004
    - pp. 20 - 28
    - Algorithm is described in Section 2, page 22 -
    -
    - - - The default fill level. - - - - - The default drop tolerance. - - - - - The decomposed upper triangular matrix. - - - - - The decomposed lower triangular matrix. - - - - - The array containing the pivot values. - - - - - The fill level. - - - - - The drop tolerance. - - - - - The pivot tolerance. - - - - - Initializes a new instance of the class with the default settings. - - - - - Initializes a new instance of the class with the specified settings. - - - The amount of fill that is allowed in the matrix. The value is a fraction of - the number of non-zero entries in the original matrix. Values should be positive. - - - The absolute drop tolerance which indicates below what absolute value an entry - will be dropped from the matrix. A drop tolerance of 0.0 means that no values - will be dropped. Values should always be positive. - - - The pivot tolerance which indicates at what level pivoting will take place. A - value of 0.0 means that no pivoting will take place. - - - - - Gets or sets the amount of fill that is allowed in the matrix. The - value is a fraction of the number of non-zero entries in the original - matrix. The standard value is 200. - - - - Values should always be positive and can be higher than 1.0. A value lower - than 1.0 means that the eventual preconditioner matrix will have fewer - non-zero entries as the original matrix. A value higher than 1.0 means that - the eventual preconditioner can have more non-zero values than the original - matrix. - - - Note that any changes to the FillLevel after creating the preconditioner - will invalidate the created preconditioner and will require a re-initialization of - the preconditioner. - - - Thrown if a negative value is provided. - - - - Gets or sets the absolute drop tolerance which indicates below what absolute value - an entry will be dropped from the matrix. The standard value is 0.0001. - - - - The values should always be positive and can be larger than 1.0. A low value will - keep more small numbers in the preconditioner matrix. A high value will remove - more small numbers from the preconditioner matrix. - - - Note that any changes to the DropTolerance after creating the preconditioner - will invalidate the created preconditioner and will require a re-initialization of - the preconditioner. - - - Thrown if a negative value is provided. - - - - Gets or sets the pivot tolerance which indicates at what level pivoting will - take place. The standard value is 0.0 which means pivoting will never take place. - - - - The pivot tolerance is used to calculate if pivoting is necessary. Pivoting - will take place if any of the values in a row is bigger than the - diagonal value of that row divided by the pivot tolerance, i.e. pivoting - will take place if row(i,j) > row(i,i) / PivotTolerance for - any j that is not equal to i. - - - Note that any changes to the PivotTolerance after creating the preconditioner - will invalidate the created preconditioner and will require a re-initialization of - the preconditioner. - - - Thrown if a negative value is provided. - - - - Returns the upper triagonal matrix that was created during the LU decomposition. - - - This method is used for debugging purposes only and should normally not be used. - - A new matrix containing the upper triagonal elements. - - - - Returns the lower triagonal matrix that was created during the LU decomposition. - - - This method is used for debugging purposes only and should normally not be used. - - A new matrix containing the lower triagonal elements. - - - - Returns the pivot array. This array is not needed for normal use because - the preconditioner will return the solution vector values in the proper order. - - - This method is used for debugging purposes only and should normally not be used. - - The pivot array. - - - - Initializes the preconditioner and loads the internal data structures. - - - The upon which this preconditioner is based. Note that the - method takes a general matrix type. However internally the data is stored - as a sparse matrix. Therefore it is not recommended to pass a dense matrix. - - If is . - If is not a square matrix. - - - - Pivot elements in the according to internal pivot array - - Row to pivot in - - - - Was pivoting already performed - - Pivots already done - Current item to pivot - true if performed, otherwise false - - - - Swap columns in the - - Source . - First column index to swap - Second column index to swap - - - - Sort vector descending, not changing vector but placing sorted indices to - - Start sort form - Sort till upper bound - Array with sorted vector indices - Source - - - - Approximates the solution to the matrix equation Ax = b. - - The right hand side vector. - The left hand side vector. Also known as the result vector. - - - - Pivot elements in according to internal pivot array - - Source . - Result after pivoting. - - - - An element sort algorithm for the class. - - - This sort algorithm is used to sort the columns in a sparse matrix based on - the value of the element on the diagonal of the matrix. - - - - - Sorts the elements of the vector in decreasing - fashion. The vector itself is not affected. - - The starting index. - The stopping index. - An array that will contain the sorted indices once the algorithm finishes. - The that contains the values that need to be sorted. - - - - Sorts the elements of the vector in decreasing - fashion using heap sort algorithm. The vector itself is not affected. - - The starting index. - The stopping index. - An array that will contain the sorted indices once the algorithm finishes. - The that contains the values that need to be sorted. - - - - Build heap for double indices - - Root position - Length of - Indices of - Target - - - - Sift double indices - - Indices of - Target - Root position - Length of - - - - Sorts the given integers in a decreasing fashion. - - The values. - - - - Sort the given integers in a decreasing fashion using heapsort algorithm - - Array of values to sort - Length of - - - - Build heap - - Target values array - Root position - Length of - - - - Sift values - - Target value array - Root position - Length of - - - - Exchange values in array - - Target values array - First value to exchange - Second value to exchange - - - - A simple milu(0) preconditioner. - - - Original Fortran code by Yousef Saad (07 January 2004) - - - - Use modified or standard ILU(0) - - - - Gets or sets a value indicating whether to use modified or standard ILU(0). - - - - - Gets a value indicating whether the preconditioner is initialized. - - - - - Initializes the preconditioner and loads the internal data structures. - - The matrix upon which the preconditioner is based. - If is . - If is not a square or is not an - instance of SparseCompressedRowMatrixStorage. - - - - Approximates the solution to the matrix equation Ax = b. - - The right hand side vector b. - The left hand side vector x. - - - - MILU0 is a simple milu(0) preconditioner. - - Order of the matrix. - Matrix values in CSR format (input). - Column indices (input). - Row pointers (input). - Matrix values in MSR format (output). - Row pointers and column indices (output). - Pointer to diagonal elements (output). - True if the modified/MILU algorithm should be used (recommended) - Returns 0 on success or k > 0 if a zero pivot was encountered at step k. - - - - A Multiple-Lanczos Bi-Conjugate Gradient stabilized iterative matrix solver. - - - - The Multiple-Lanczos Bi-Conjugate Gradient stabilized (ML(k)-BiCGStab) solver is an 'improvement' - of the standard BiCgStab solver. - - - The algorithm was taken from:
    - ML(k)BiCGSTAB: A BiCGSTAB variant based on multiple Lanczos starting vectors -
    - Man-Chung Yeung and Tony F. Chan -
    - SIAM Journal of Scientific Computing -
    - Volume 21, Number 4, pp. 1263 - 1290 -
    - - The example code below provides an indication of the possible use of the - solver. - -
    -
    - - - The default number of starting vectors. - - - - - The collection of starting vectors which are used as the basis for the Krylov sub-space. - - - - - The number of starting vectors used by the algorithm - - - - - Gets or sets the number of starting vectors. - - - Must be larger than 1 and smaller than the number of variables in the matrix that - for which this solver will be used. - - - - - Resets the number of starting vectors to the default value. - - - - - Gets or sets a series of orthonormal vectors which will be used as basis for the - Krylov sub-space. - - - - - Gets the number of starting vectors to create - - Maximum number - Number of variables - Number of starting vectors to create - - - - Returns an array of starting vectors. - - The maximum number of starting vectors that should be created. - The number of variables. - - An array with starting vectors. The array will never be larger than the - but it may be smaller if - the is smaller than - the . - - - - - Create random vectors array - - Number of vectors - Size of each vector - Array of random vectors - - - - Calculates the true residual of the matrix equation Ax = b according to: residual = b - Ax - - Source A. - Residual data. - x data. - b data. - - - - Solves the matrix equation Ax = b, where A is the coefficient matrix, b is the - solution vector and x is the unknown vector. - - The coefficient matrix, A. - The solution vector, b - The result vector, x - The iterator to use to control when to stop iterating. - The preconditioner to use for approximations. - - - - A Transpose Free Quasi-Minimal Residual (TFQMR) iterative matrix solver. - - - - The TFQMR algorithm was taken from:
    - Iterative methods for sparse linear systems. -
    - Yousef Saad -
    - Algorithm is described in Chapter 7, section 7.4.3, page 219 -
    - - The example code below provides an indication of the possible use of the - solver. - -
    -
    - - - Calculates the true residual of the matrix equation Ax = b according to: residual = b - Ax - - Instance of the A. - Residual values in . - Instance of the x. - Instance of the b. - - - - Is even? - - Number to check - true if even, otherwise false - - - - Solves the matrix equation Ax = b, where A is the coefficient matrix, b is the - solution vector and x is the unknown vector. - - The coefficient matrix, A. - The solution vector, b - The result vector, x - The iterator to use to control when to stop iterating. - The preconditioner to use for approximations. - - - - A Matrix with sparse storage, intended for very large matrices where most of the cells are zero. - The underlying storage scheme is 3-array compressed-sparse-row (CSR) Format. - Wikipedia - CSR. - - - - - Gets the number of non zero elements in the matrix. - - The number of non zero elements. - - - - Create a new sparse matrix straight from an initialized matrix storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a new square sparse matrix with the given number of rows and columns. - All cells of the matrix will be initialized to zero. - - If the order is less than one. - - - - Create a new sparse matrix with the given number of rows and columns. - All cells of the matrix will be initialized to zero. - - If the row or column count is less than one. - - - - Create a new sparse matrix as a copy of the given other matrix. - This new matrix will be independent from the other matrix. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given two-dimensional array. - This new matrix will be independent from the provided array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given enumerable. - The enumerable is assumed to be in row-major order (row by row). - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - - Create a new sparse matrix with the given number of rows and columns as a copy of the given array. - The array is assumed to be in column-major order (column by column). - This new matrix will be independent from the provided array. - A new memory block will be allocated for storing the matrix. - - - - - - Create a new sparse matrix as a copy of the given enumerable of enumerable columns. - Each enumerable in the master enumerable specifies a column. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given enumerable of enumerable columns. - Each enumerable in the master enumerable specifies a column. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given column arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given column arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given column vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given column vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given enumerable of enumerable rows. - Each enumerable in the master enumerable specifies a row. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given enumerable of enumerable rows. - Each enumerable in the master enumerable specifies a row. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given row arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given row arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given row vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given row vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix with the diagonal as a copy of the given vector. - This new matrix will be independent from the vector. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix with the diagonal as a copy of the given vector. - This new matrix will be independent from the vector. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix with the diagonal as a copy of the given array. - This new matrix will be independent from the array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix with the diagonal as a copy of the given array. - This new matrix will be independent from the array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix and initialize each value to the same provided value. - - - - - Create a new sparse matrix and initialize each value using the provided init function. - - - - - Create a new diagonal sparse matrix and initialize each diagonal value to the same provided value. - - - - - Create a new diagonal sparse matrix and initialize each diagonal value using the provided init function. - - - - - Create a new square sparse identity matrix where each diagonal value is set to One. - - - - - Returns a new matrix containing the lower triangle of this matrix. - - The lower triangle of this matrix. - - - - Puts the lower triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If is . - If the result matrix's dimensions are not the same as this matrix. - - - - Puts the lower triangle of this matrix into the result matrix. - - Where to store the lower triangle. - - - - Returns a new matrix containing the upper triangle of this matrix. - - The upper triangle of this matrix. - - - - Puts the upper triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If is . - If the result matrix's dimensions are not the same as this matrix. - - - - Puts the upper triangle of this matrix into the result matrix. - - Where to store the lower triangle. - - - - Returns a new matrix containing the lower triangle of this matrix. The new matrix - does not contain the diagonal elements of this matrix. - - The lower triangle of this matrix. - - - - Puts the strictly lower triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If is . - If the result matrix's dimensions are not the same as this matrix. - - - - Puts the strictly lower triangle of this matrix into the result matrix. - - Where to store the lower triangle. - - - - Returns a new matrix containing the upper triangle of this matrix. The new matrix - does not contain the diagonal elements of this matrix. - - The upper triangle of this matrix. - - - - Puts the strictly upper triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If is . - If the result matrix's dimensions are not the same as this matrix. - - - - Puts the strictly upper triangle of this matrix into the result matrix. - - Where to store the lower triangle. - - - - Negate each element of this matrix and place the results into the result matrix. - - The result of the negation. - - - Calculates the induced infinity norm of this matrix. - The maximum absolute row sum of the matrix. - - - Calculates the entry-wise Frobenius norm of this matrix. - The square root of the sum of the squared values. - - - - Adds another matrix to this matrix. - - The matrix to add to this matrix. - The matrix to store the result of the addition. - If the other matrix is . - If the two matrices don't have the same dimensions. - - - - Subtracts another matrix from this matrix. - - The matrix to subtract to this matrix. - The matrix to store the result of subtraction. - If the other matrix is . - If the two matrices don't have the same dimensions. - - - - Multiplies each element of the matrix by a scalar and places results into the result matrix. - - The scalar to multiply the matrix with. - The matrix to store the result of the multiplication. - - - - Multiplies this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with transpose of another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Pointwise multiplies this matrix with another matrix and stores the result into the result matrix. - - The matrix to pointwise multiply with this one. - The matrix to store the result of the pointwise multiplication. - - - - Pointwise divide this matrix by another matrix and stores the result into the result matrix. - - The matrix to pointwise divide this one by. - The matrix to store the result of the pointwise division. - - - - Evaluates whether this matrix is symmetric. - - - - - Evaluates whether this matrix is Hermitian (conjugate symmetric). - - - - - Adds two matrices together and returns the results. - - This operator will allocate new memory for the result. It will - choose the representation of either or depending on which - is denser. - The left matrix to add. - The right matrix to add. - The result of the addition. - If and don't have the same dimensions. - If or is . - - - - Returns a Matrix containing the same values of . - - The matrix to get the values from. - A matrix containing a the same values as . - If is . - - - - Subtracts two matrices together and returns the results. - - This operator will allocate new memory for the result. It will - choose the representation of either or depending on which - is denser. - The left matrix to subtract. - The right matrix to subtract. - The result of the addition. - If and don't have the same dimensions. - If or is . - - - - Negates each element of the matrix. - - The matrix to negate. - A matrix containing the negated values. - If is . - - - - Multiplies a Matrix by a constant and returns the result. - - The matrix to multiply. - The constant to multiply the matrix by. - The result of the multiplication. - If is . - - - - Multiplies a Matrix by a constant and returns the result. - - The matrix to multiply. - The constant to multiply the matrix by. - The result of the multiplication. - If is . - - - - Multiplies two matrices. - - This operator will allocate new memory for the result. It will - choose the representation of either or depending on which - is denser. - The left matrix to multiply. - The right matrix to multiply. - The result of multiplication. - If or is . - If the dimensions of or don't conform. - - - - Multiplies a Matrix and a Vector. - - The matrix to multiply. - The vector to multiply. - The result of multiplication. - If or is . - - - - Multiplies a Vector and a Matrix. - - The vector to multiply. - The matrix to multiply. - The result of multiplication. - If or is . - - - - Multiplies a Matrix by a constant and returns the result. - - The matrix to multiply. - The constant to multiply the matrix by. - The result of the multiplication. - If is . - - - - A vector with sparse storage, intended for very large vectors where most of the cells are zero. - - The sparse vector is not thread safe. - - - - Gets the number of non zero elements in the vector. - - The number of non zero elements. - - - - Create a new sparse vector straight from an initialized vector storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a new sparse vector with the given length. - All cells of the vector will be initialized to zero. - - If length is less than one. - - - - Create a new sparse vector as a copy of the given other vector. - This new vector will be independent from the other vector. - A new memory block will be allocated for storing the vector. - - - - - Create a new sparse vector as a copy of the given enumerable. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new sparse vector as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new sparse vector as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new sparse vector and initialize each value using the provided value. - - - - - Create a new sparse vector and initialize each value using the provided init function. - - - - - Adds a scalar to each element of the vector and stores the result in the result vector. - Warning, the new 'sparse vector' with a non-zero scalar added to it will be a 100% filled - sparse vector and very inefficient. Would be better to work with a dense vector instead. - - - The scalar to add. - - - The vector to store the result of the addition. - - - - - Adds another vector to this vector and stores the result into the result vector. - - - The vector to add to this one. - - - The vector to store the result of the addition. - - - - - Subtracts a scalar from each element of the vector and stores the result in the result vector. - - - The scalar to subtract. - - - The vector to store the result of the subtraction. - - - - - Subtracts another vector to this vector and stores the result into the result vector. - - - The vector to subtract from this one. - - - The vector to store the result of the subtraction. - - - - - Negates vector and saves result to - - Target vector - - - - Conjugates vector and save result to - - Target vector - - - - Multiplies a scalar to each element of the vector and stores the result in the result vector. - - - The scalar to multiply. - - - The vector to store the result of the multiplication. - - - - - Computes the dot product between this vector and another vector. - - The other vector. - The sum of a[i]*b[i] for all i. - - - - Computes the dot product between the conjugate of this vector and another vector. - - The other vector. - The sum of conj(a[i])*b[i] for all i. - - - - Adds two Vectors together and returns the results. - - One of the vectors to add. - The other vector to add. - The result of the addition. - If and are not the same size. - If or is . - - - - Returns a Vector containing the negated values of . - - The vector to get the values from. - A vector containing the negated values as . - If is . - - - - Subtracts two Vectors and returns the results. - - The vector to subtract from. - The vector to subtract. - The result of the subtraction. - If and are not the same size. - If or is . - - - - Multiplies a vector with a complex. - - The vector to scale. - The complex value. - The result of the multiplication. - If is . - - - - Multiplies a vector with a complex. - - The complex value. - The vector to scale. - The result of the multiplication. - If is . - - - - Computes the dot product between two Vectors. - - The left row vector. - The right column vector. - The dot product between the two vectors. - If and are not the same size. - If or is . - - - - Divides a vector with a complex. - - The vector to divide. - The complex value. - The result of the division. - If is . - - - - Computes the modulus of each element of the vector of the given divisor. - - The vector whose elements we want to compute the modulus of. - The divisor to use, - The result of the calculation - If is . - - - - Returns the index of the absolute minimum element. - - The index of absolute minimum element. - - - - Returns the index of the absolute maximum element. - - The index of absolute maximum element. - - - - Computes the sum of the vector's elements. - - The sum of the vector's elements. - - - - Calculates the L1 norm of the vector, also known as Manhattan norm. - - The sum of the absolute values. - - - - Calculates the infinity norm of the vector. - - The maximum absolute value. - - - - Computes the p-Norm. - - The p value. - Scalar ret = ( ∑|this[i]|^p )^(1/p) - - - - Pointwise multiplies this vector with another vector and stores the result into the result vector. - - The vector to pointwise multiply with this one. - The vector to store the result of the pointwise multiplication. - - - - Creates a double sparse vector based on a string. The string can be in the following formats (without the - quotes): 'n', 'n;n;..', '(n;n;..)', '[n;n;...]', where n is a Complex32. - - - A double sparse vector containing the values specified by the given string. - - - the string to parse. - - - An that supplies culture-specific formatting information. - - - - - Converts the string representation of a complex sparse vector to double-precision sparse vector equivalent. - A return value indicates whether the conversion succeeded or failed. - - - A string containing a complex vector to convert. - - - The parsed value. - - - If the conversion succeeds, the result will contain a complex number equivalent to value. - Otherwise the result will be null. - - - - - Converts the string representation of a complex sparse vector to double-precision sparse vector equivalent. - A return value indicates whether the conversion succeeded or failed. - - - A string containing a complex vector to convert. - - - An that supplies culture-specific formatting information about value. - - - The parsed value. - - - If the conversion succeeds, the result will contain a complex number equivalent to value. - Otherwise the result will be null. - - - - - Complex32 version of the class. - - - - - Initializes a new instance of the Vector class. - - - - - Set all values whose absolute value is smaller than the threshold to zero. - - - - - Conjugates vector and save result to - - Target vector - - - - Negates vector and saves result to - - Target vector - - - - Adds a scalar to each element of the vector and stores the result in the result vector. - - - The scalar to add. - - - The vector to store the result of the addition. - - - - - Adds another vector to this vector and stores the result into the result vector. - - - The vector to add to this one. - - - The vector to store the result of the addition. - - - - - Subtracts a scalar from each element of the vector and stores the result in the result vector. - - - The scalar to subtract. - - - The vector to store the result of the subtraction. - - - - - Subtracts another vector to this vector and stores the result into the result vector. - - - The vector to subtract from this one. - - - The vector to store the result of the subtraction. - - - - - Multiplies a scalar to each element of the vector and stores the result in the result vector. - - - The scalar to multiply. - - - The vector to store the result of the multiplication. - - - - - Divides each element of the vector by a scalar and stores the result in the result vector. - - - The scalar to divide with. - - - The vector to store the result of the division. - - - - - Divides a scalar by each element of the vector and stores the result in the result vector. - - The scalar to divide. - The vector to store the result of the division. - - - - Pointwise multiplies this vector with another vector and stores the result into the result vector. - - The vector to pointwise multiply with this one. - The vector to store the result of the pointwise multiplication. - - - - Pointwise divide this vector with another vector and stores the result into the result vector. - - The vector to pointwise divide this one by. - The vector to store the result of the pointwise division. - - - - Pointwise raise this vector to an exponent and store the result into the result vector. - - The exponent to raise this vector values to. - The vector to store the result of the pointwise power. - - - - Pointwise raise this vector to an exponent vector and store the result into the result vector. - - The exponent vector to raise this vector values to. - The vector to store the result of the pointwise power. - - - - Pointwise canonical modulus, where the result has the sign of the divisor, - of this vector with another vector and stores the result into the result vector. - - The pointwise denominator vector to use. - The result of the modulus. - - - - Pointwise remainder (% operator), where the result has the sign of the dividend, - of this vector with another vector and stores the result into the result vector. - - The pointwise denominator vector to use. - The result of the modulus. - - - - Pointwise applies the exponential function to each value and stores the result into the result vector. - - The vector to store the result. - - - - Pointwise applies the natural logarithm function to each value and stores the result into the result vector. - - The vector to store the result. - - - - Computes the dot product between this vector and another vector. - - The other vector. - The sum of a[i]*b[i] for all i. - - - - Computes the dot product between the conjugate of this vector and another vector. - - The other vector. - The sum of conj(a[i])*b[i] for all i. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for each element of the vector for the given divisor. - - The scalar denominator to use. - A vector to store the results in. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for the given dividend for each element of the vector. - - The scalar numerator to use. - A vector to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for each element of the vector for the given divisor. - - The scalar denominator to use. - A vector to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for the given dividend for each element of the vector. - - The scalar numerator to use. - A vector to store the results in. - - - - Returns the value of the absolute minimum element. - - The value of the absolute minimum element. - - - - Returns the index of the absolute minimum element. - - The index of absolute minimum element. - - - - Returns the value of the absolute maximum element. - - The value of the absolute maximum element. - - - - Returns the index of the absolute maximum element. - - The index of absolute maximum element. - - - - Computes the sum of the vector's elements. - - The sum of the vector's elements. - - - - Calculates the L1 norm of the vector, also known as Manhattan norm. - - The sum of the absolute values. - - - - Calculates the L2 norm of the vector, also known as Euclidean norm. - - The square root of the sum of the squared values. - - - - Calculates the infinity norm of the vector. - - The maximum absolute value. - - - - Computes the p-Norm. - - - The p value. - - - Scalar ret = ( ∑|At(i)|^p )^(1/p) - - - - - Returns the index of the maximum element. - - The index of maximum element. - - - - Returns the index of the minimum element. - - The index of minimum element. - - - - Normalizes this vector to a unit vector with respect to the p-norm. - - - The p value. - - - This vector normalized to a unit vector with respect to the p-norm. - - - - - Generic linear algebra type builder, for situations where a matrix or vector - must be created in a generic way. Usage of generic builders should not be - required in normal user code. - - - - - Gets the value of 0.0 for type T. - - - - - Gets the value of 1.0 for type T. - - - - - Create a new matrix straight from an initialized matrix storage instance. - If you have an instance of a discrete storage type instead, use their direct methods instead. - - - - - Create a new matrix with the same kind of the provided example. - - - - - Create a new matrix with the same kind and dimensions of the provided example. - - - - - Create a new matrix with the same kind of the provided example. - - - - - Create a new matrix with a type that can represent and is closest to both provided samples. - - - - - Create a new matrix with a type that can represent and is closest to both provided samples and the dimensions of example. - - - - - Create a new dense matrix with values sampled from the provided random distribution. - - - - - Create a new dense matrix with values sampled from the standard distribution with a system random source. - - - - - Create a new dense matrix with values sampled from the standard distribution with a system random source. - - - - - Create a new positive definite dense matrix where each value is the product - of two samples from the provided random distribution. - - - - - Create a new positive definite dense matrix where each value is the product - of two samples from the standard distribution. - - - - - Create a new positive definite dense matrix where each value is the product - of two samples from the provided random distribution. - - - - - Create a new dense matrix straight from an initialized matrix storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a new dense matrix with the given number of rows and columns. - All cells of the matrix will be initialized to zero. - - - - - Create a new dense matrix with the given number of rows and columns directly binding to a raw array. - The array is assumed to be in column-major order (column by column) and is used directly without copying. - Very efficient, but changes to the array and the matrix will affect each other. - - - - - - Create a new dense matrix and initialize each value to the same provided value. - - - - - Create a new dense matrix and initialize each value using the provided init function. - - - - - Create a new diagonal dense matrix and initialize each diagonal value to the same provided value. - - - - - Create a new diagonal dense matrix and initialize each diagonal value to the same provided value. - - - - - Create a new diagonal dense matrix and initialize each diagonal value using the provided init function. - - - - - Create a new diagonal dense identity matrix with a one-diagonal. - - - - - Create a new diagonal dense identity matrix with a one-diagonal. - - - - - Create a new dense matrix as a copy of the given other matrix. - This new matrix will be independent from the other matrix. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given two-dimensional array. - This new matrix will be independent from the provided array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable. - The enumerable is assumed to be in column-major order (column by column). - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable of enumerable columns. - Each enumerable in the master enumerable specifies a column. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable of enumerable columns. - Each enumerable in the master enumerable specifies a column. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix of T as a copy of the given column arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix of T as a copy of the given column arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given column vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given column vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable. - The enumerable is assumed to be in row-major order (row by row). - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable of enumerable rows. - Each enumerable in the master enumerable specifies a row. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable of enumerable rows. - Each enumerable in the master enumerable specifies a row. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix of T as a copy of the given row arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix of T as a copy of the given row arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given row vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given row vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix with the diagonal as a copy of the given vector. - This new matrix will be independent from the vector. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix with the diagonal as a copy of the given vector. - This new matrix will be independent from the vector. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix with the diagonal as a copy of the given array. - This new matrix will be independent from the array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix with the diagonal as a copy of the given array. - This new matrix will be independent from the array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix from a 2D array of existing matrices. - The matrices in the array are not required to be dense already. - If the matrices do not align properly, they are placed on the top left - corner of their cell with the remaining fields left zero. - - - - - Create a new sparse matrix straight from an initialized matrix storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - The SparseCompressedRowMatrixStorage - - - - Create a sparse matrix of T with the given number of rows and columns. - - The number of rows. - The number of columns. - - - - Create a new sparse matrix and initialize each value to the same provided value. - - - - - Create a new sparse matrix and initialize each value using the provided init function. - - - - - Create a new diagonal sparse matrix and initialize each diagonal value to the same provided value. - - - - - Create a new diagonal sparse matrix and initialize each diagonal value to the same provided value. - - - - - Create a new diagonal sparse matrix and initialize each diagonal value using the provided init function. - - - - - Create a new diagonal dense identity matrix with a one-diagonal. - - - - - Create a new diagonal dense identity matrix with a one-diagonal. - - - - - Create a new sparse matrix as a copy of the given other matrix. - This new matrix will be independent from the other matrix. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given two-dimensional array. - This new matrix will be independent from the provided array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given enumerable. - The enumerable is assumed to be in row-major order (row by row). - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - - Create a new sparse matrix with the given number of rows and columns as a copy of the given array. - The array is assumed to be in column-major order (column by column). - This new matrix will be independent from the provided array. - A new memory block will be allocated for storing the matrix. - - - - - - Create a new sparse matrix as a copy of the given enumerable of enumerable columns. - Each enumerable in the master enumerable specifies a column. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given enumerable of enumerable columns. - Each enumerable in the master enumerable specifies a column. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given column arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given column arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given column vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given column vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given enumerable of enumerable rows. - Each enumerable in the master enumerable specifies a row. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given enumerable of enumerable rows. - Each enumerable in the master enumerable specifies a row. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given row arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given row arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given row vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given row vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix with the diagonal as a copy of the given vector. - This new matrix will be independent from the vector. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix with the diagonal as a copy of the given vector. - This new matrix will be independent from the vector. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix with the diagonal as a copy of the given array. - This new matrix will be independent from the array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix with the diagonal as a copy of the given array. - This new matrix will be independent from the array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix from a 2D array of existing matrices. - The matrices in the array are not required to be sparse already. - If the matrices do not align properly, they are placed on the top left - corner of their cell with the remaining fields left zero. - - - - - Create a new sparse matrix from a coordinate format. - This new matrix will be independent from the given arrays. - A new memory block will be allocated for storing the matrix. - - The number of rows. - The number of columns. - The number of stored values including explicit zeros. - The row index array of the coordinate format. - The column index array of the coordinate format. - The data array of the coordinate format. - The sparse matrix from the coordinate format. - Duplicate entries will be summed together and explicit zeros will be not intentionally removed. - - - - Create a new sparse matrix from a compressed sparse row format. - This new matrix will be independent from the given arrays. - A new memory block will be allocated for storing the matrix. - - The number of rows. - The number of columns. - The number of stored values including explicit zeros. - The row pointer array of the compressed sparse row format. - The column index array of the compressed sparse row format. - The data array of the compressed sparse row format. - The sparse matrix from the compressed sparse row format. - Duplicate entries will be summed together and explicit zeros will be not intentionally removed. - - - - Create a new sparse matrix from a compressed sparse column format. - This new matrix will be independent from the given arrays. - A new memory block will be allocated for storing the matrix. - - The number of rows. - The number of columns. - The number of stored values including explicit zeros. - The row index array of the compressed sparse column format. - The column pointer array of the compressed sparse column format. - The data array of the compressed sparse column format. - The sparse matrix from the compressed sparse column format. - Duplicate entries will be summed together and explicit zeros will be not intentionally removed. - - - - Create a new diagonal matrix straight from an initialized matrix storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a new diagonal matrix with the given number of rows and columns. - All cells of the matrix will be initialized to zero. - - - - - Create a new diagonal matrix with the given number of rows and columns directly binding to a raw array. - The array is assumed to represent the diagonal values and is used directly without copying. - Very efficient, but changes to the array and the matrix will affect each other. - - - - - Create a new square diagonal matrix directly binding to a raw array. - The array is assumed to represent the diagonal values and is used directly without copying. - Very efficient, but changes to the array and the matrix will affect each other. - - - - - Create a new diagonal matrix and initialize each diagonal value to the same provided value. - - - - - Create a new diagonal matrix and initialize each diagonal value using the provided init function. - - - - - Create a new diagonal identity matrix with a one-diagonal. - - - - - Create a new diagonal identity matrix with a one-diagonal. - - - - - Create a new diagonal matrix with the diagonal as a copy of the given vector. - This new matrix will be independent from the vector. - A new memory block will be allocated for storing the matrix. - - - - - Create a new diagonal matrix with the diagonal as a copy of the given vector. - This new matrix will be independent from the vector. - A new memory block will be allocated for storing the matrix. - - - - - Create a new diagonal matrix with the diagonal as a copy of the given array. - This new matrix will be independent from the array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new diagonal matrix with the diagonal as a copy of the given array. - This new matrix will be independent from the array. - A new memory block will be allocated for storing the matrix. - - - - - Generic linear algebra type builder, for situations where a matrix or vector - must be created in a generic way. Usage of generic builders should not be - required in normal user code. - - - - - Gets the value of 0.0 for type T. - - - - - Gets the value of 1.0 for type T. - - - - - Create a new vector straight from an initialized matrix storage instance. - If you have an instance of a discrete storage type instead, use their direct methods instead. - - - - - Create a new vector with the same kind of the provided example. - - - - - Create a new vector with the same kind and dimension of the provided example. - - - - - Create a new vector with the same kind of the provided example. - - - - - Create a new vector with a type that can represent and is closest to both provided samples. - - - - - Create a new vector with a type that can represent and is closest to both provided samples and the dimensions of example. - - - - - Create a new vector with a type that can represent and is closest to both provided samples. - - - - - Create a new dense vector with values sampled from the provided random distribution. - - - - - Create a new dense vector with values sampled from the standard distribution with a system random source. - - - - - Create a new dense vector with values sampled from the standard distribution with a system random source. - - - - - Create a new dense vector straight from an initialized vector storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a dense vector of T with the given size. - - The size of the vector. - - - - Create a dense vector of T that is directly bound to the specified array. - - - - - Create a new dense vector and initialize each value using the provided value. - - - - - Create a new dense vector and initialize each value using the provided init function. - - - - - Create a new dense vector as a copy of the given other vector. - This new vector will be independent from the other vector. - A new memory block will be allocated for storing the vector. - - - - - Create a new dense vector as a copy of the given array. - This new vector will be independent from the array. - A new memory block will be allocated for storing the vector. - - - - - Create a new dense vector as a copy of the given enumerable. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new dense vector as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new dense vector as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new sparse vector straight from an initialized vector storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a sparse vector of T with the given size. - - The size of the vector. - - - - Create a new sparse vector and initialize each value using the provided value. - - - - - Create a new sparse vector and initialize each value using the provided init function. - - - - - Create a new sparse vector as a copy of the given other vector. - This new vector will be independent from the other vector. - A new memory block will be allocated for storing the vector. - - - - - Create a new sparse vector as a copy of the given array. - This new vector will be independent from the array. - A new memory block will be allocated for storing the vector. - - - - - Create a new sparse vector as a copy of the given enumerable. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new sparse vector as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new sparse vector as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new matrix straight from an initialized matrix storage instance. - If you have an instance of a discrete storage type instead, use their direct methods instead. - - - - - Create a new matrix with the same kind of the provided example. - - - - - Create a new matrix with the same kind and dimensions of the provided example. - - - - - Create a new matrix with the same kind of the provided example. - - - - - Create a new matrix with a type that can represent and is closest to both provided samples. - - - - - Create a new matrix with a type that can represent and is closest to both provided samples and the dimensions of example. - - - - - Create a new dense matrix with values sampled from the provided random distribution. - - - - - Create a new dense matrix with values sampled from the standard distribution with a system random source. - - - - - Create a new dense matrix with values sampled from the standard distribution with a system random source. - - - - - Create a new positive definite dense matrix where each value is the product - of two samples from the provided random distribution. - - - - - Create a new positive definite dense matrix where each value is the product - of two samples from the standard distribution. - - - - - Create a new positive definite dense matrix where each value is the product - of two samples from the provided random distribution. - - - - - Create a new dense matrix straight from an initialized matrix storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a new dense matrix with the given number of rows and columns. - All cells of the matrix will be initialized to zero. - - - - - Create a new dense matrix with the given number of rows and columns directly binding to a raw array. - The array is assumed to be in column-major order (column by column) and is used directly without copying. - Very efficient, but changes to the array and the matrix will affect each other. - - - - - - Create a new dense matrix and initialize each value to the same provided value. - - - - - Create a new dense matrix and initialize each value using the provided init function. - - - - - Create a new diagonal dense matrix and initialize each diagonal value to the same provided value. - - - - - Create a new diagonal dense matrix and initialize each diagonal value to the same provided value. - - - - - Create a new diagonal dense matrix and initialize each diagonal value using the provided init function. - - - - - Create a new diagonal dense identity matrix with a one-diagonal. - - - - - Create a new diagonal dense identity matrix with a one-diagonal. - - - - - Create a new dense matrix as a copy of the given other matrix. - This new matrix will be independent from the other matrix. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given two-dimensional array. - This new matrix will be independent from the provided array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable. - The enumerable is assumed to be in column-major order (column by column). - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable of enumerable columns. - Each enumerable in the master enumerable specifies a column. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable of enumerable columns. - Each enumerable in the master enumerable specifies a column. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix of T as a copy of the given column arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix of T as a copy of the given column arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given column vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given column vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable of enumerable rows. - Each enumerable in the master enumerable specifies a row. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given enumerable of enumerable rows. - Each enumerable in the master enumerable specifies a row. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix of T as a copy of the given row arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix of T as a copy of the given row arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given row vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix as a copy of the given row vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix with the diagonal as a copy of the given vector. - This new matrix will be independent from the vector. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix with the diagonal as a copy of the given vector. - This new matrix will be independent from the vector. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix with the diagonal as a copy of the given array. - This new matrix will be independent from the array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix with the diagonal as a copy of the given array. - This new matrix will be independent from the array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new dense matrix from a 2D array of existing matrices. - The matrices in the array are not required to be dense already. - If the matrices do not align properly, they are placed on the top left - corner of their cell with the remaining fields left zero. - - - - - Create a new sparse matrix straight from an initialized matrix storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a sparse matrix of T with the given number of rows and columns. - - The number of rows. - The number of columns. - - - - Create a new sparse matrix and initialize each value to the same provided value. - - - - - Create a new sparse matrix and initialize each value using the provided init function. - - - - - Create a new diagonal sparse matrix and initialize each diagonal value to the same provided value. - - - - - Create a new diagonal sparse matrix and initialize each diagonal value to the same provided value. - - - - - Create a new diagonal sparse matrix and initialize each diagonal value using the provided init function. - - - - - Create a new diagonal dense identity matrix with a one-diagonal. - - - - - Create a new diagonal dense identity matrix with a one-diagonal. - - - - - Create a new sparse matrix as a copy of the given other matrix. - This new matrix will be independent from the other matrix. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given two-dimensional array. - This new matrix will be independent from the provided array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given enumerable. - The enumerable is assumed to be in row-major order (row by row). - This new matrix will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - - Create a new sparse matrix with the given number of rows and columns as a copy of the given array. - The array is assumed to be in column-major order (column by column). - This new matrix will be independent from the provided array. - A new memory block will be allocated for storing the matrix. - - - - - - Create a new sparse matrix as a copy of the given enumerable of enumerable columns. - Each enumerable in the master enumerable specifies a column. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given enumerable of enumerable columns. - Each enumerable in the master enumerable specifies a column. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given column arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given column arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given column vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given column vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given enumerable of enumerable rows. - Each enumerable in the master enumerable specifies a row. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given enumerable of enumerable rows. - Each enumerable in the master enumerable specifies a row. - This new matrix will be independent from the enumerables. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given row arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given row arrays. - This new matrix will be independent from the arrays. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given row vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix as a copy of the given row vectors. - This new matrix will be independent from the vectors. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix with the diagonal as a copy of the given vector. - This new matrix will be independent from the vector. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix with the diagonal as a copy of the given vector. - This new matrix will be independent from the vector. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix with the diagonal as a copy of the given array. - This new matrix will be independent from the array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix with the diagonal as a copy of the given array. - This new matrix will be independent from the array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new sparse matrix from a 2D array of existing matrices. - The matrices in the array are not required to be sparse already. - If the matrices do not align properly, they are placed on the top left - corner of their cell with the remaining fields left zero. - - - - - Create a new sparse matrix from a coordinate format. - This new matrix will be independent from the given arrays. - A new memory block will be allocated for storing the matrix. - - The number of rows. - The number of columns. - The number of stored values including explicit zeros. - The row index array of the coordinate format. - The column index array of the coordinate format. - The data array of the coordinate format. - The sparse matrix from the coordinate format. - Duplicate entries will be summed together and explicit zeros will be not intentionally removed. - - - - Create a new sparse matrix from a compressed sparse row format. - This new matrix will be independent from the given arrays. - A new memory block will be allocated for storing the matrix. - - The number of rows. - The number of columns. - The number of stored values including explicit zeros. - The row pointer array of the compressed sparse row format. - The column index array of the compressed sparse row format. - The data array of the compressed sparse row format. - The sparse matrix from the compressed sparse row format. - Duplicate entries will be summed together and explicit zeros will be not intentionally removed. - - - - Create a new sparse matrix from a compressed sparse column format. - This new matrix will be independent from the given arrays. - A new memory block will be allocated for storing the matrix. - - The number of rows. - The number of columns. - The number of stored values including explicit zeros. - The row index array of the compressed sparse column format. - The column pointer array of the compressed sparse column format. - The data array of the compressed sparse column format. - The sparse matrix from the compressed sparse column format. - Duplicate entries will be summed together and explicit zeros will be not intentionally removed. - - - - Create a new diagonal matrix straight from an initialized matrix storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a new diagonal matrix with the given number of rows and columns. - All cells of the matrix will be initialized to zero. - - - - - Create a new diagonal matrix with the given number of rows and columns directly binding to a raw array. - The array is assumed to represent the diagonal values and is used directly without copying. - Very efficient, but changes to the array and the matrix will affect each other. - - - - - Create a new square diagonal matrix directly binding to a raw array. - The array is assumed to represent the diagonal values and is used directly without copying. - Very efficient, but changes to the array and the matrix will affect each other. - - - - - Create a new diagonal matrix and initialize each diagonal value to the same provided value. - - - - - Create a new diagonal matrix and initialize each diagonal value using the provided init function. - - - - - Create a new diagonal identity matrix with a one-diagonal. - - - - - Create a new diagonal identity matrix with a one-diagonal. - - - - - Create a new diagonal matrix with the diagonal as a copy of the given vector. - This new matrix will be independent from the vector. - A new memory block will be allocated for storing the matrix. - - - - - Create a new diagonal matrix with the diagonal as a copy of the given vector. - This new matrix will be independent from the vector. - A new memory block will be allocated for storing the matrix. - - - - - Create a new diagonal matrix with the diagonal as a copy of the given array. - This new matrix will be independent from the array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new diagonal matrix with the diagonal as a copy of the given array. - This new matrix will be independent from the array. - A new memory block will be allocated for storing the matrix. - - - - - Create a new vector straight from an initialized matrix storage instance. - If you have an instance of a discrete storage type instead, use their direct methods instead. - - - - - Create a new vector with the same kind of the provided example. - - - - - Create a new vector with the same kind and dimension of the provided example. - - - - - Create a new vector with the same kind of the provided example. - - - - - Create a new vector with a type that can represent and is closest to both provided samples. - - - - - Create a new vector with a type that can represent and is closest to both provided samples and the dimensions of example. - - - - - Create a new vector with a type that can represent and is closest to both provided samples. - - - - - Create a new dense vector with values sampled from the provided random distribution. - - - - - Create a new dense vector with values sampled from the standard distribution with a system random source. - - - - - Create a new dense vector with values sampled from the standard distribution with a system random source. - - - - - Create a new dense vector straight from an initialized vector storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a dense vector of T with the given size. - - The size of the vector. - - - - Create a dense vector of T that is directly bound to the specified array. - - - - - Create a new dense vector and initialize each value using the provided value. - - - - - Create a new dense vector and initialize each value using the provided init function. - - - - - Create a new dense vector as a copy of the given other vector. - This new vector will be independent from the other vector. - A new memory block will be allocated for storing the vector. - - - - - Create a new dense vector as a copy of the given array. - This new vector will be independent from the array. - A new memory block will be allocated for storing the vector. - - - - - Create a new dense vector as a copy of the given enumerable. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new dense vector as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new dense vector as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new sparse vector straight from an initialized vector storage instance. - The storage is used directly without copying. - Intended for advanced scenarios where you're working directly with - storage for performance or interop reasons. - - - - - Create a sparse vector of T with the given size. - - The size of the vector. - - - - Create a new sparse vector and initialize each value using the provided value. - - - - - Create a new sparse vector and initialize each value using the provided init function. - - - - - Create a new sparse vector as a copy of the given other vector. - This new vector will be independent from the other vector. - A new memory block will be allocated for storing the vector. - - - - - Create a new sparse vector as a copy of the given array. - This new vector will be independent from the array. - A new memory block will be allocated for storing the vector. - - - - - Create a new sparse vector as a copy of the given enumerable. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new sparse vector as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - Create a new sparse vector as a copy of the given indexed enumerable. - Keys must be provided at most once, zero is assumed if a key is omitted. - This new vector will be independent from the enumerable. - A new memory block will be allocated for storing the vector. - - - - - A class which encapsulates the functionality of a Cholesky factorization. - For a symmetric, positive definite matrix A, the Cholesky factorization - is an lower triangular matrix L so that A = L*L'. - - - The computation of the Cholesky factorization is done at construction time. If the matrix is not symmetric - or positive definite, the constructor will throw an exception. - - Supported data types are double, single, , and . - - - - Gets the lower triangular form of the Cholesky matrix. - - - - - Gets the determinant of the matrix for which the Cholesky matrix was computed. - - - - - Gets the log determinant of the matrix for which the Cholesky matrix was computed. - - - - - Calculates the Cholesky factorization of the input matrix. - - The matrix to be factorized. - - - - Solves a system of linear equations, AX = B, with A Cholesky factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, AX = B, with A Cholesky factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A Cholesky factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Solves a system of linear equations, Ax = b, with A Cholesky factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Eigenvalues and eigenvectors of a real matrix. - - - If A is symmetric, then A = V*D*V' where the eigenvalue matrix D is - diagonal and the eigenvector matrix V is orthogonal. - I.e. A = V*D*V' and V*VT=I. - If A is not symmetric, then the eigenvalue matrix D is block diagonal - with the real eigenvalues in 1-by-1 blocks and any complex eigenvalues, - lambda + i*mu, in 2-by-2 blocks, [lambda, mu; -mu, lambda]. The - columns of V represent the eigenvectors in the sense that A*V = V*D, - i.e. A.Multiply(V) equals V.Multiply(D). The matrix V may be badly - conditioned, or even singular, so the validity of the equation - A = V*D*Inverse(V) depends upon V.Condition(). - - Supported data types are double, single, , and . - - - - Gets or sets a value indicating whether matrix is symmetric or not - - - - - Gets the absolute value of determinant of the square matrix for which the EVD was computed. - - - - - Gets the effective numerical matrix rank. - - The number of non-negligible singular values. - - - - Gets a value indicating whether the matrix is full rank or not. - - true if the matrix is full rank; otherwise false. - - - - Gets or sets the eigen values (λ) of matrix in ascending value. - - - - - Gets or sets eigenvectors. - - - - - Gets or sets the block diagonal eigenvalue matrix. - - - - - Solves a system of linear equations, AX = B, with A EVD factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, AX = B, with A EVD factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A EVD factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Solves a system of linear equations, Ax = b, with A EVD factorized. - - The right hand side vector, b. - The left hand side , x. - - - - A class which encapsulates the functionality of the QR decomposition Modified Gram-Schmidt Orthogonalization. - Any real square matrix A may be decomposed as A = QR where Q is an orthogonal mxn matrix and R is an nxn upper triangular matrix. - - - The computation of the QR decomposition is done at construction time by modified Gram-Schmidt Orthogonalization. - - Supported data types are double, single, , and . - - - - Classes that solves a system of linear equations, AX = B. - - Supported data types are double, single, , and . - - - - Solves a system of linear equations, AX = B. - - The right hand side Matrix, B. - The left hand side Matrix, X. - - - - Solves a system of linear equations, AX = B. - - The right hand side Matrix, B. - The left hand side Matrix, X. - - - - Solves a system of linear equations, Ax = b - - The right hand side vector, b. - The left hand side Vector, x. - - - - Solves a system of linear equations, Ax = b. - - The right hand side vector, b. - The left hand side Matrix>, x. - - - - A class which encapsulates the functionality of an LU factorization. - For a matrix A, the LU factorization is a pair of lower triangular matrix L and - upper triangular matrix U so that A = L*U. - In the Math.NET implementation we also store a set of pivot elements for increased - numerical stability. The pivot elements encode a permutation matrix P such that P*A = L*U. - - - The computation of the LU factorization is done at construction time. - - Supported data types are double, single, , and . - - - - Gets the lower triangular factor. - - - - - Gets the upper triangular factor. - - - - - Gets the permutation applied to LU factorization. - - - - - Gets the determinant of the matrix for which the LU factorization was computed. - - - - - Solves a system of linear equations, AX = B, with A LU factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, AX = B, with A LU factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A LU factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Solves a system of linear equations, Ax = b, with A LU factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Returns the inverse of this matrix. The inverse is calculated using LU decomposition. - - The inverse of this matrix. - - - - The type of QR factorization go perform. - - - - - Compute the full QR factorization of a matrix. - - - - - Compute the thin QR factorization of a matrix. - - - - - A class which encapsulates the functionality of the QR decomposition. - Any real square matrix A (m x n) may be decomposed as A = QR where Q is an orthogonal matrix - (its columns are orthogonal unit vectors meaning QTQ = I) and R is an upper triangular matrix - (also called right triangular matrix). - - - The computation of the QR decomposition is done at construction time by Householder transformation. - If a factorization is performed, the resulting Q matrix is an m x m matrix - and the R matrix is an m x n matrix. If a factorization is performed, the - resulting Q matrix is an m x n matrix and the R matrix is an n x n matrix. - - Supported data types are double, single, , and . - - - - Gets or sets orthogonal Q matrix - - - - - Gets the upper triangular factor R. - - - - - Gets the absolute determinant value of the matrix for which the QR matrix was computed. - - - - - Gets a value indicating whether the matrix is full rank or not. - - true if the matrix is full rank; otherwise false. - - - - Solves a system of linear equations, AX = B, with A QR factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, AX = B, with A QR factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A QR factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Solves a system of linear equations, Ax = b, with A QR factorized. - - The right hand side vector, b. - The left hand side , x. - - - - A class which encapsulates the functionality of the singular value decomposition (SVD). - Suppose M is an m-by-n matrix whose entries are real numbers. - Then there exists a factorization of the form M = UΣVT where: - - U is an m-by-m unitary matrix; - - Σ is m-by-n diagonal matrix with nonnegative real numbers on the diagonal; - - VT denotes transpose of V, an n-by-n unitary matrix; - Such a factorization is called a singular-value decomposition of M. A common convention is to order the diagonal - entries Σ(i,i) in descending order. In this case, the diagonal matrix Σ is uniquely determined - by M (though the matrices U and V are not). The diagonal entries of Σ are known as the singular values of M. - - - The computation of the singular value decomposition is done at construction time. - - Supported data types are double, single, , and . - - - Indicating whether U and VT matrices have been computed during SVD factorization. - - - - Gets the singular values (Σ) of matrix in ascending value. - - - - - Gets the left singular vectors (U - m-by-m unitary matrix) - - - - - Gets the transpose right singular vectors (transpose of V, an n-by-n unitary matrix) - - - - - Returns the singular values as a diagonal . - - The singular values as a diagonal . - - - - Gets the effective numerical matrix rank. - - The number of non-negligible singular values. - - - - Gets the two norm of the . - - The 2-norm of the . - - - - Gets the condition number max(S) / min(S) - - The condition number. - - - - Gets the determinant of the square matrix for which the SVD was computed. - - - - - Solves a system of linear equations, AX = B, with A SVD factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, AX = B, with A SVD factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A SVD factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Solves a system of linear equations, Ax = b, with A SVD factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Defines the base class for Matrix classes. - - - Defines the base class for Matrix classes. - - Supported data types are double, single, , and . - - Defines the base class for Matrix classes. - - - Defines the base class for Matrix classes. - - - - - The value of 1.0. - - - - - The value of 0.0. - - - - - Negate each element of this matrix and place the results into the result matrix. - - The result of the negation. - - - - Complex conjugates each element of this matrix and place the results into the result matrix. - - The result of the conjugation. - - - - Add a scalar to each element of the matrix and stores the result in the result vector. - - The scalar to add. - The matrix to store the result of the addition. - - - - Adds another matrix to this matrix. - - The matrix to add to this matrix. - The matrix to store the result of the addition. - If the two matrices don't have the same dimensions. - - - - Subtracts a scalar from each element of the matrix and stores the result in the result matrix. - - The scalar to subtract. - The matrix to store the result of the subtraction. - - - - Subtracts each element of the matrix from a scalar and stores the result in the result matrix. - - The scalar to subtract from. - The matrix to store the result of the subtraction. - - - - Subtracts another matrix from this matrix. - - The matrix to subtract. - The matrix to store the result of the subtraction. - - - - Multiplies each element of the matrix by a scalar and places results into the result matrix. - - The scalar to multiply the matrix with. - The matrix to store the result of the multiplication. - - - - Multiplies this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with the transpose of another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with the conjugate transpose of another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies the conjugate transpose of this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Multiplies the transpose of this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - - - - Divides each element of the matrix by a scalar and places results into the result matrix. - - The scalar denominator to use. - The matrix to store the result of the division. - - - - Divides a scalar by each element of the matrix and stores the result in the result matrix. - - The scalar numerator to use. - The matrix to store the result of the division. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for the given divisor each element of the matrix. - - The scalar denominator to use. - Matrix to store the results in. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for the given dividend for each element of the matrix. - - The scalar numerator to use. - A vector to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for the given divisor each element of the matrix. - - The scalar denominator to use. - Matrix to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for the given dividend for each element of the matrix. - - The scalar numerator to use. - A vector to store the results in. - - - - Pointwise multiplies this matrix with another matrix and stores the result into the result matrix. - - The matrix to pointwise multiply with this one. - The matrix to store the result of the pointwise multiplication. - - - - Pointwise divide this matrix by another matrix and stores the result into the result matrix. - - The pointwise denominator matrix to use. - The matrix to store the result of the pointwise division. - - - - Pointwise raise this matrix to an exponent and store the result into the result matrix. - - The exponent to raise this matrix values to. - The matrix to store the result of the pointwise power. - - - - Pointwise raise this matrix to an exponent matrix and store the result into the result matrix. - - The exponent matrix to raise this matrix values to. - The matrix to store the result of the pointwise power. - - - - Pointwise canonical modulus, where the result has the sign of the divisor, - of this matrix with another matrix and stores the result into the result matrix. - - The pointwise denominator matrix to use - The result of the modulus. - - - - Pointwise remainder (% operator), where the result has the sign of the dividend, - of this matrix with another matrix and stores the result into the result matrix. - - The pointwise denominator matrix to use - The result of the modulus. - - - - Pointwise applies the exponential function to each value and stores the result into the result matrix. - - The matrix to store the result. - - - - Pointwise applies the natural logarithm function to each value and stores the result into the result matrix. - - The matrix to store the result. - - - - Adds a scalar to each element of the matrix. - - The scalar to add. - The result of the addition. - If the two matrices don't have the same dimensions. - - - - Adds a scalar to each element of the matrix and stores the result in the result matrix. - - The scalar to add. - The matrix to store the result of the addition. - If the two matrices don't have the same dimensions. - - - - Adds another matrix to this matrix. - - The matrix to add to this matrix. - The result of the addition. - If the two matrices don't have the same dimensions. - - - - Adds another matrix to this matrix. - - The matrix to add to this matrix. - The matrix to store the result of the addition. - If the two matrices don't have the same dimensions. - - - - Subtracts a scalar from each element of the matrix. - - The scalar to subtract. - A new matrix containing the subtraction of this matrix and the scalar. - - - - Subtracts a scalar from each element of the matrix and stores the result in the result matrix. - - The scalar to subtract. - The matrix to store the result of the subtraction. - If this matrix and are not the same size. - - - - Subtracts each element of the matrix from a scalar. - - The scalar to subtract from. - A new matrix containing the subtraction of the scalar and this matrix. - - - - Subtracts each element of the matrix from a scalar and stores the result in the result matrix. - - The scalar to subtract from. - The matrix to store the result of the subtraction. - If this matrix and are not the same size. - - - - Subtracts another matrix from this matrix. - - The matrix to subtract. - The result of the subtraction. - If the two matrices don't have the same dimensions. - - - - Subtracts another matrix from this matrix. - - The matrix to subtract. - The matrix to store the result of the subtraction. - If the two matrices don't have the same dimensions. - - - - Multiplies each element of this matrix with a scalar. - - The scalar to multiply with. - The result of the multiplication. - - - - Multiplies each element of the matrix by a scalar and places results into the result matrix. - - The scalar to multiply the matrix with. - The matrix to store the result of the multiplication. - If the result matrix's dimensions are not the same as this matrix. - - - - Divides each element of this matrix with a scalar. - - The scalar to divide with. - The result of the division. - - - - Divides each element of the matrix by a scalar and places results into the result matrix. - - The scalar to divide the matrix with. - The matrix to store the result of the division. - If the result matrix's dimensions are not the same as this matrix. - - - - Divides a scalar by each element of the matrix. - - The scalar to divide. - The result of the division. - - - - Divides a scalar by each element of the matrix and places results into the result matrix. - - The scalar to divide. - The matrix to store the result of the division. - If the result matrix's dimensions are not the same as this matrix. - - - - Multiplies this matrix by a vector and returns the result. - - The vector to multiply with. - The result of the multiplication. - If this.ColumnCount != rightSide.Count. - - - - Multiplies this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - If result.Count != this.RowCount. - If this.ColumnCount != .Count. - - - - Left multiply a matrix with a vector ( = vector * matrix ). - - The vector to multiply with. - The result of the multiplication. - If this.RowCount != .Count. - - - - Left multiply a matrix with a vector ( = vector * matrix ) and place the result in the result vector. - - The vector to multiply with. - The result of the multiplication. - If result.Count != this.ColumnCount. - If this.RowCount != .Count. - - - - Left multiply a matrix with a vector ( = vector * matrix ) and place the result in the result vector. - - The vector to multiply with. - The result of the multiplication. - - - - Multiplies this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - If this.Columns != other.Rows. - If the result matrix's dimensions are not the this.Rows x other.Columns. - - - - Multiplies this matrix with another matrix and returns the result. - - The matrix to multiply with. - If this.Columns != other.Rows. - The result of the multiplication. - - - - Multiplies this matrix with transpose of another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - If this.Columns != other.ColumnCount. - If the result matrix's dimensions are not the this.RowCount x other.RowCount. - - - - Multiplies this matrix with transpose of another matrix and returns the result. - - The matrix to multiply with. - If this.Columns != other.ColumnCount. - The result of the multiplication. - - - - Multiplies the transpose of this matrix by a vector and returns the result. - - The vector to multiply with. - The result of the multiplication. - If this.RowCount != rightSide.Count. - - - - Multiplies the transpose of this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - If result.Count != this.ColumnCount. - If this.RowCount != .Count. - - - - Multiplies the transpose of this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - If this.Rows != other.RowCount. - If the result matrix's dimensions are not the this.ColumnCount x other.ColumnCount. - - - - Multiplies the transpose of this matrix with another matrix and returns the result. - - The matrix to multiply with. - If this.Rows != other.RowCount. - The result of the multiplication. - - - - Multiplies this matrix with the conjugate transpose of another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - If this.Columns != other.ColumnCount. - If the result matrix's dimensions are not the this.RowCount x other.RowCount. - - - - Multiplies this matrix with the conjugate transpose of another matrix and returns the result. - - The matrix to multiply with. - If this.Columns != other.ColumnCount. - The result of the multiplication. - - - - Multiplies the conjugate transpose of this matrix by a vector and returns the result. - - The vector to multiply with. - The result of the multiplication. - If this.RowCount != rightSide.Count. - - - - Multiplies the conjugate transpose of this matrix with a vector and places the results into the result vector. - - The vector to multiply with. - The result of the multiplication. - If result.Count != this.ColumnCount. - If this.RowCount != .Count. - - - - Multiplies the conjugate transpose of this matrix with another matrix and places the results into the result matrix. - - The matrix to multiply with. - The result of the multiplication. - If this.Rows != other.RowCount. - If the result matrix's dimensions are not the this.ColumnCount x other.ColumnCount. - - - - Multiplies the conjugate transpose of this matrix with another matrix and returns the result. - - The matrix to multiply with. - If this.Rows != other.RowCount. - The result of the multiplication. - - - - Raises this square matrix to a positive integer exponent and places the results into the result matrix. - - The positive integer exponent to raise the matrix to. - The result of the power. - - - - Multiplies this square matrix with another matrix and returns the result. - - The positive integer exponent to raise the matrix to. - - - - Negate each element of this matrix. - - A matrix containing the negated values. - - - - Negate each element of this matrix and place the results into the result matrix. - - The result of the negation. - if the result matrix's dimensions are not the same as this matrix. - - - - Complex conjugate each element of this matrix. - - A matrix containing the conjugated values. - - - - Complex conjugate each element of this matrix and place the results into the result matrix. - - The result of the conjugation. - if the result matrix's dimensions are not the same as this matrix. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for each element of the matrix. - - The scalar denominator to use. - A matrix containing the results. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for each element of the matrix. - - The scalar denominator to use. - Matrix to store the results in. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for each element of the matrix. - - The scalar numerator to use. - A matrix containing the results. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for each element of the matrix. - - The scalar numerator to use. - Matrix to store the results in. - - - - Computes the remainder (matrix % divisor), where the result has the sign of the dividend, - for each element of the matrix. - - The scalar denominator to use. - A matrix containing the results. - - - - Computes the remainder (matrix % divisor), where the result has the sign of the dividend, - for each element of the matrix. - - The scalar denominator to use. - Matrix to store the results in. - - - - Computes the remainder (dividend % matrix), where the result has the sign of the dividend, - for each element of the matrix. - - The scalar numerator to use. - A matrix containing the results. - - - - Computes the remainder (dividend % matrix), where the result has the sign of the dividend, - for each element of the matrix. - - The scalar numerator to use. - Matrix to store the results in. - - - - Pointwise multiplies this matrix with another matrix. - - The matrix to pointwise multiply with this one. - If this matrix and are not the same size. - A new matrix that is the pointwise multiplication of this matrix and . - - - - Pointwise multiplies this matrix with another matrix and stores the result into the result matrix. - - The matrix to pointwise multiply with this one. - The matrix to store the result of the pointwise multiplication. - If this matrix and are not the same size. - If this matrix and are not the same size. - - - - Pointwise divide this matrix by another matrix. - - The pointwise denominator matrix to use. - If this matrix and are not the same size. - A new matrix that is the pointwise division of this matrix and . - - - - Pointwise divide this matrix by another matrix and stores the result into the result matrix. - - The pointwise denominator matrix to use. - The matrix to store the result of the pointwise division. - If this matrix and are not the same size. - If this matrix and are not the same size. - - - - Pointwise raise this matrix to an exponent and store the result into the result matrix. - - The exponent to raise this matrix values to. - - - - Pointwise raise this matrix to an exponent. - - The exponent to raise this matrix values to. - The matrix to store the result into. - If this matrix and are not the same size. - - - - Pointwise raise this matrix to an exponent and store the result into the result matrix. - - The exponent to raise this matrix values to. - - - - Pointwise raise this matrix to an exponent. - - The exponent to raise this matrix values to. - The matrix to store the result into. - If this matrix and are not the same size. - - - - Pointwise canonical modulus, where the result has the sign of the divisor, - of this matrix by another matrix. - - The pointwise denominator matrix to use. - If this matrix and are not the same size. - - - - Pointwise canonical modulus, where the result has the sign of the divisor, - of this matrix by another matrix and stores the result into the result matrix. - - The pointwise denominator matrix to use. - The matrix to store the result of the pointwise modulus. - If this matrix and are not the same size. - If this matrix and are not the same size. - - - - Pointwise remainder (% operator), where the result has the sign of the dividend, - of this matrix by another matrix. - - The pointwise denominator matrix to use. - If this matrix and are not the same size. - - - - Pointwise remainder (% operator), where the result has the sign of the dividend, - of this matrix by another matrix and stores the result into the result matrix. - - The pointwise denominator matrix to use. - The matrix to store the result of the pointwise remainder. - If this matrix and are not the same size. - If this matrix and are not the same size. - - - - Helper function to apply a unary function to a matrix. The function - f modifies the matrix given to it in place. Before its - called, a copy of the 'this' matrix is first created, then passed to - f. The copy is then returned as the result - - Function which takes a matrix, modifies it in place and returns void - New instance of matrix which is the result - - - - Helper function to apply a unary function which modifies a matrix - in place. - - Function which takes a matrix, modifies it in place and returns void - The matrix to be passed to f and where the result is to be stored - If this vector and are not the same size. - - - - Helper function to apply a binary function which takes two matrices - and modifies the latter in place. A copy of the "this" matrix is - first made and then passed to f together with the other matrix. The - copy is then returned as the result - - Function which takes two matrices, modifies the second in place and returns void - The other matrix to be passed to the function as argument. It is not modified - The resulting matrix - If this matrix and are not the same dimension. - - - - Helper function to apply a binary function which takes two matrices - and modifies the second one in place - - Function which takes two matrices, modifies the second in place and returns void - The other matrix to be passed to the function as argument. It is not modified - The matrix to store the result. - The resulting matrix - If this matrix and are not the same dimension. - - - - Pointwise applies the exponent function to each value. - - - - - Pointwise applies the exponent function to each value. - - The matrix to store the result. - If this matrix and are not the same size. - - - - Pointwise applies the natural logarithm function to each value. - - - - - Pointwise applies the natural logarithm function to each value. - - The matrix to store the result. - If this matrix and are not the same size. - - - - Pointwise applies the abs function to each value - - - - - Pointwise applies the abs function to each value - - The vector to store the result - - - - Pointwise applies the acos function to each value - - - - - Pointwise applies the acos function to each value - - The vector to store the result - - - - Pointwise applies the asin function to each value - - - - - Pointwise applies the asin function to each value - - The vector to store the result - - - - Pointwise applies the atan function to each value - - - - - Pointwise applies the atan function to each value - - The vector to store the result - - - - Pointwise applies the atan2 function to each value of the current - matrix and a given other matrix being the 'x' of atan2 and the - 'this' matrix being the 'y' - - - - - - - Pointwise applies the atan2 function to each value of the current - matrix and a given other matrix being the 'x' of atan2 and the - 'this' matrix being the 'y' - - The other matrix 'y' - The matrix with the result and 'x' - - - - - Pointwise applies the ceiling function to each value - - - - - Pointwise applies the ceiling function to each value - - The vector to store the result - - - - Pointwise applies the cos function to each value - - - - - Pointwise applies the cos function to each value - - The vector to store the result - - - - Pointwise applies the cosh function to each value - - - - - Pointwise applies the cosh function to each value - - The vector to store the result - - - - Pointwise applies the floor function to each value - - - - - Pointwise applies the floor function to each value - - The vector to store the result - - - - Pointwise applies the log10 function to each value - - - - - Pointwise applies the log10 function to each value - - The vector to store the result - - - - Pointwise applies the round function to each value - - - - - Pointwise applies the round function to each value - - The vector to store the result - - - - Pointwise applies the sign function to each value - - - - - Pointwise applies the sign function to each value - - The vector to store the result - - - - Pointwise applies the sin function to each value - - - - - Pointwise applies the sin function to each value - - The vector to store the result - - - - Pointwise applies the sinh function to each value - - - - - Pointwise applies the sinh function to each value - - The vector to store the result - - - - Pointwise applies the sqrt function to each value - - - - - Pointwise applies the sqrt function to each value - - The vector to store the result - - - - Pointwise applies the tan function to each value - - - - - Pointwise applies the tan function to each value - - The vector to store the result - - - - Pointwise applies the tanh function to each value - - - - - Pointwise applies the tanh function to each value - - The vector to store the result - - - - Computes the trace of this matrix. - - The trace of this matrix - If the matrix is not square - - - - Calculates the rank of the matrix. - - effective numerical rank, obtained from SVD - - - - Calculates the nullity of the matrix. - - effective numerical nullity, obtained from SVD - - - Calculates the condition number of this matrix. - The condition number of the matrix. - The condition number is calculated using singular value decomposition. - - - Computes the determinant of this matrix. - The determinant of this matrix. - - - - Computes an orthonormal basis for the null space of this matrix, - also known as the kernel of the corresponding matrix transformation. - - - - - Computes an orthonormal basis for the column space of this matrix, - also known as the range or image of the corresponding matrix transformation. - - - - Computes the inverse of this matrix. - The inverse of this matrix. - - - Computes the Moore-Penrose Pseudo-Inverse of this matrix. - - - - Computes the Kronecker product of this matrix with the given matrix. The new matrix is M-by-N - with M = this.Rows * lower.Rows and N = this.Columns * lower.Columns. - - The other matrix. - The Kronecker product of the two matrices. - - - - Computes the Kronecker product of this matrix with the given matrix. The new matrix is M-by-N - with M = this.Rows * lower.Rows and N = this.Columns * lower.Columns. - - The other matrix. - The Kronecker product of the two matrices. - If the result matrix's dimensions are not (this.Rows * lower.rows) x (this.Columns * lower.Columns). - - - - Pointwise applies the minimum with a scalar to each value. - - The scalar value to compare to. - - - - Pointwise applies the minimum with a scalar to each value. - - The scalar value to compare to. - The vector to store the result. - If this vector and are not the same size. - - - - Pointwise applies the maximum with a scalar to each value. - - The scalar value to compare to. - - - - Pointwise applies the maximum with a scalar to each value. - - The scalar value to compare to. - The matrix to store the result. - If this matrix and are not the same size. - - - - Pointwise applies the absolute minimum with a scalar to each value. - - The scalar value to compare to. - - - - Pointwise applies the absolute minimum with a scalar to each value. - - The scalar value to compare to. - The matrix to store the result. - If this matrix and are not the same size. - - - - Pointwise applies the absolute maximum with a scalar to each value. - - The scalar value to compare to. - - - - Pointwise applies the absolute maximum with a scalar to each value. - - The scalar value to compare to. - The matrix to store the result. - If this matrix and are not the same size. - - - - Pointwise applies the minimum with the values of another matrix to each value. - - The matrix with the values to compare to. - - - - Pointwise applies the minimum with the values of another matrix to each value. - - The matrix with the values to compare to. - The matrix to store the result. - If this matrix and are not the same size. - - - - Pointwise applies the maximum with the values of another matrix to each value. - - The matrix with the values to compare to. - - - - Pointwise applies the maximum with the values of another matrix to each value. - - The matrix with the values to compare to. - The matrix to store the result. - If this matrix and are not the same size. - - - - Pointwise applies the absolute minimum with the values of another matrix to each value. - - The matrix with the values to compare to. - - - - Pointwise applies the absolute minimum with the values of another matrix to each value. - - The matrix with the values to compare to. - The matrix to store the result. - If this matrix and are not the same size. - - - - Pointwise applies the absolute maximum with the values of another matrix to each value. - - The matrix with the values to compare to. - - - - Pointwise applies the absolute maximum with the values of another matrix to each value. - - The matrix with the values to compare to. - The matrix to store the result. - If this matrix and are not the same size. - - - Calculates the induced L1 norm of this matrix. - The maximum absolute column sum of the matrix. - - - Calculates the induced L2 norm of the matrix. - The largest singular value of the matrix. - - For sparse matrices, the L2 norm is computed using a dense implementation of singular value decomposition. - In a later release, it will be replaced with a sparse implementation. - - - - Calculates the induced infinity norm of this matrix. - The maximum absolute row sum of the matrix. - - - Calculates the entry-wise Frobenius norm of this matrix. - The square root of the sum of the squared values. - - - - Calculates the p-norms of all row vectors. - Typical values for p are 1.0 (L1, Manhattan norm), 2.0 (L2, Euclidean norm) and positive infinity (infinity norm) - - - - - Calculates the p-norms of all column vectors. - Typical values for p are 1.0 (L1, Manhattan norm), 2.0 (L2, Euclidean norm) and positive infinity (infinity norm) - - - - - Normalizes all row vectors to a unit p-norm. - Typical values for p are 1.0 (L1, Manhattan norm), 2.0 (L2, Euclidean norm) and positive infinity (infinity norm) - - - - - Normalizes all column vectors to a unit p-norm. - Typical values for p are 1.0 (L1, Manhattan norm), 2.0 (L2, Euclidean norm) and positive infinity (infinity norm) - - - - - Calculates the value sum of each row vector. - - - - - Calculates the value sum of each column vector. - - - - - Calculates the absolute value sum of each row vector. - - - - - Calculates the absolute value sum of each column vector. - - - - - Indicates whether the current object is equal to another object of the same type. - - - An object to compare with this object. - - - true if the current object is equal to the parameter; otherwise, false. - - - - - Determines whether the specified is equal to this instance. - - The to compare with this instance. - - true if the specified is equal to this instance; otherwise, false. - - - - - Returns a hash code for this instance. - - - A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. - - - - - Creates a new object that is a copy of the current instance. - - - A new object that is a copy of this instance. - - - - - Returns a string that describes the type, dimensions and shape of this matrix. - - - - - Returns a string 2D array that summarizes the content of this matrix. - - - - - Returns a string 2D array that summarizes the content of this matrix. - - - - - Returns a string that summarizes the content of this matrix. - - - - - Returns a string that summarizes the content of this matrix. - - - - - Returns a string that summarizes this matrix. - - - - - Returns a string that summarizes this matrix. - The maximum number of cells can be configured in the class. - - - - - Returns a string that summarizes this matrix. - The maximum number of cells can be configured in the class. - The format string is ignored. - - - - - Initializes a new instance of the Matrix class. - - - - - Gets the raw matrix data storage. - - - - - Gets the number of columns. - - The number of columns. - - - - Gets the number of rows. - - The number of rows. - - - - Gets or sets the value at the given row and column, with range checking. - - - The row of the element. - - - The column of the element. - - The value to get or set. - This method is ranged checked. and - to get and set values without range checking. - - - - Retrieves the requested element without range checking. - - - The row of the element. - - - The column of the element. - - - The requested element. - - - - - Sets the value of the given element without range checking. - - - The row of the element. - - - The column of the element. - - - The value to set the element to. - - - - - Sets all values to zero. - - - - - Sets all values of a row to zero. - - - - - Sets all values of a column to zero. - - - - - Sets all values for all of the chosen rows to zero. - - - - - Sets all values for all of the chosen columns to zero. - - - - - Sets all values of a sub-matrix to zero. - - - - - Set all values whose absolute value is smaller than the threshold to zero, in-place. - - - - - Set all values that meet the predicate to zero, in-place. - - - - - Creates a clone of this instance. - - - A clone of the instance. - - - - - Copies the elements of this matrix to the given matrix. - - - The matrix to copy values into. - - - If target is . - - - If this and the target matrix do not have the same dimensions.. - - - - - Copies a row into an Vector. - - The row to copy. - A Vector containing the copied elements. - If is negative, - or greater than or equal to the number of rows. - - - - Copies a row into to the given Vector. - - The row to copy. - The Vector to copy the row into. - If the result vector is . - If is negative, - or greater than or equal to the number of rows. - If this.Columns != result.Count. - - - - Copies the requested row elements into a new Vector. - - The row to copy elements from. - The column to start copying from. - The number of elements to copy. - A Vector containing the requested elements. - If: - is negative, - or greater than or equal to the number of rows. - is negative, - or greater than or equal to the number of columns. - (columnIndex + length) >= Columns. - If is not positive. - - - - Copies the requested row elements into a new Vector. - - The row to copy elements from. - The column to start copying from. - The number of elements to copy. - The Vector to copy the column into. - If the result Vector is . - If is negative, - or greater than or equal to the number of columns. - If is negative, - or greater than or equal to the number of rows. - If + - is greater than or equal to the number of rows. - If is not positive. - If result.Count < length. - - - - Copies a column into a new Vector>. - - The column to copy. - A Vector containing the copied elements. - If is negative, - or greater than or equal to the number of columns. - - - - Copies a column into to the given Vector. - - The column to copy. - The Vector to copy the column into. - If the result Vector is . - If is negative, - or greater than or equal to the number of columns. - If this.Rows != result.Count. - - - - Copies the requested column elements into a new Vector. - - The column to copy elements from. - The row to start copying from. - The number of elements to copy. - A Vector containing the requested elements. - If: - is negative, - or greater than or equal to the number of columns. - is negative, - or greater than or equal to the number of rows. - (rowIndex + length) >= Rows. - - If is not positive. - - - - Copies the requested column elements into the given vector. - - The column to copy elements from. - The row to start copying from. - The number of elements to copy. - The Vector to copy the column into. - If the result Vector is . - If is negative, - or greater than or equal to the number of columns. - If is negative, - or greater than or equal to the number of rows. - If + - is greater than or equal to the number of rows. - If is not positive. - If result.Count < length. - - - - Returns a new matrix containing the upper triangle of this matrix. - - The upper triangle of this matrix. - - - - Returns a new matrix containing the lower triangle of this matrix. - - The lower triangle of this matrix. - - - - Puts the lower triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If is . - If the result matrix's dimensions are not the same as this matrix. - - - - Puts the upper triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If is . - If the result matrix's dimensions are not the same as this matrix. - - - - Creates a matrix that contains the values from the requested sub-matrix. - - The row to start copying from. - The number of rows to copy. Must be positive. - The column to start copying from. - The number of columns to copy. Must be positive. - The requested sub-matrix. - If: is - negative, or greater than or equal to the number of rows. - is negative, or greater than or equal to the number - of columns. - (columnIndex + columnLength) >= Columns - (rowIndex + rowLength) >= Rows - If or - is not positive. - - - - Returns the elements of the diagonal in a Vector. - - The elements of the diagonal. - For non-square matrices, the method returns Min(Rows, Columns) elements where - i == j (i is the row index, and j is the column index). - - - - Returns a new matrix containing the lower triangle of this matrix. The new matrix - does not contain the diagonal elements of this matrix. - - The lower triangle of this matrix. - - - - Puts the strictly lower triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If is . - If the result matrix's dimensions are not the same as this matrix. - - - - Returns a new matrix containing the upper triangle of this matrix. The new matrix - does not contain the diagonal elements of this matrix. - - The upper triangle of this matrix. - - - - Puts the strictly upper triangle of this matrix into the result matrix. - - Where to store the lower triangle. - If is . - If the result matrix's dimensions are not the same as this matrix. - - - - Creates a new matrix and inserts the given column at the given index. - - The index of where to insert the column. - The column to insert. - A new matrix with the inserted column. - If is . - If is < zero or > the number of columns. - If the size of != the number of rows. - - - - Creates a new matrix with the given column removed. - - The index of the column to remove. - A new matrix without the chosen column. - If is < zero or >= the number of columns. - - - - Copies the values of the given Vector to the specified column. - - The column to copy the values to. - The vector to copy the values from. - If is . - If is less than zero, - or greater than or equal to the number of columns. - If the size of does not - equal the number of rows of this Matrix. - - - - Copies the values of the given Vector to the specified sub-column. - - The column to copy the values to. - The row to start copying to. - The number of elements to copy. - The vector to copy the values from. - If is . - If is less than zero, - or greater than or equal to the number of columns. - If the size of does not - equal the number of rows of this Matrix. - - - - Copies the values of the given array to the specified column. - - The column to copy the values to. - The array to copy the values from. - If is . - If is less than zero, - or greater than or equal to the number of columns. - If the size of does not - equal the number of rows of this Matrix. - If the size of does not - equal the number of rows of this Matrix. - - - - Creates a new matrix and inserts the given row at the given index. - - The index of where to insert the row. - The row to insert. - A new matrix with the inserted column. - If is . - If is < zero or > the number of rows. - If the size of != the number of columns. - - - - Creates a new matrix with the given row removed. - - The index of the row to remove. - A new matrix without the chosen row. - If is < zero or >= the number of rows. - - - - Copies the values of the given Vector to the specified row. - - The row to copy the values to. - The vector to copy the values from. - If is . - If is less than zero, - or greater than or equal to the number of rows. - If the size of does not - equal the number of columns of this Matrix. - - - - Copies the values of the given Vector to the specified sub-row. - - The row to copy the values to. - The column to start copying to. - The number of elements to copy. - The vector to copy the values from. - If is . - If is less than zero, - or greater than or equal to the number of rows. - If the size of does not - equal the number of columns of this Matrix. - - - - Copies the values of the given array to the specified row. - - The row to copy the values to. - The array to copy the values from. - If is . - If is less than zero, - or greater than or equal to the number of rows. - If the size of does not - equal the number of columns of this Matrix. - - - - Copies the values of a given matrix into a region in this matrix. - - The row to start copying to. - The column to start copying to. - The sub-matrix to copy from. - If: is - negative, or greater than or equal to the number of rows. - is negative, or greater than or equal to the number - of columns. - (columnIndex + columnLength) >= Columns - (rowIndex + rowLength) >= Rows - - - - Copies the values of a given matrix into a region in this matrix. - - The row to start copying to. - The number of rows to copy. Must be positive. - The column to start copying to. - The number of columns to copy. Must be positive. - The sub-matrix to copy from. - If: is - negative, or greater than or equal to the number of rows. - is negative, or greater than or equal to the number - of columns. - (columnIndex + columnLength) >= Columns - (rowIndex + rowLength) >= Rows - the size of is not at least x . - If or - is not positive. - - - - Copies the values of a given matrix into a region in this matrix. - - The row to start copying to. - The row of the sub-matrix to start copying from. - The number of rows to copy. Must be positive. - The column to start copying to. - The column of the sub-matrix to start copying from. - The number of columns to copy. Must be positive. - The sub-matrix to copy from. - If: is - negative, or greater than or equal to the number of rows. - is negative, or greater than or equal to the number - of columns. - (columnIndex + columnLength) >= Columns - (rowIndex + rowLength) >= Rows - the size of is not at least x . - If or - is not positive. - - - - Copies the values of the given Vector to the diagonal. - - The vector to copy the values from. The length of the vector should be - Min(Rows, Columns). - If is . - If the length of does not - equal Min(Rows, Columns). - For non-square matrices, the elements of are copied to - this[i,i]. - - - - Copies the values of the given array to the diagonal. - - The array to copy the values from. The length of the vector should be - Min(Rows, Columns). - If is . - If the length of does not - equal Min(Rows, Columns). - For non-square matrices, the elements of are copied to - this[i,i]. - - - - Creates a new matrix with the desired size and copies this matrix to it. - Values which no longer exist in the new matrix are ignored, new values are set to zero. - - The number of rows of the new matrix. - The number of columns of the new matrix. - A new matrix with the desired rows and columns. - - - - Returns the transpose of this matrix. - - The transpose of this matrix. - - - - Puts the transpose of this matrix into the result matrix. - - - - - Returns the conjugate transpose of this matrix. - - The conjugate transpose of this matrix. - - - - Puts the conjugate transpose of this matrix into the result matrix. - - - - - Permute the rows of a matrix according to a permutation. - - The row permutation to apply to this matrix. - - - - Permute the columns of a matrix according to a permutation. - - The column permutation to apply to this matrix. - - - - Concatenates this matrix with the given matrix. - - The matrix to concatenate. - The combined matrix. - - - - - - Concatenates this matrix with the given matrix and places the result into the result matrix. - - The matrix to concatenate. - The combined matrix. - - - - - - Stacks this matrix on top of the given matrix and places the result into the result matrix. - - The matrix to stack this matrix upon. - The combined matrix. - If lower is . - If upper.Columns != lower.Columns. - - - - - - Stacks this matrix on top of the given matrix and places the result into the result matrix. - - The matrix to stack this matrix upon. - The combined matrix. - If lower is . - If upper.Columns != lower.Columns. - - - - - - Diagonally stacks his matrix on top of the given matrix. The new matrix is a M-by-N matrix, - where M = this.Rows + lower.Rows and N = this.Columns + lower.Columns. - The values of off the off diagonal matrices/blocks are set to zero. - - The lower, right matrix. - If lower is . - the combined matrix - - - - - - Diagonally stacks his matrix on top of the given matrix and places the combined matrix into the result matrix. - - The lower, right matrix. - The combined matrix - If lower is . - If the result matrix is . - If the result matrix's dimensions are not (this.Rows + lower.rows) x (this.Columns + lower.Columns). - - - - - - Evaluates whether this matrix is symmetric. - - - - - Evaluates whether this matrix is Hermitian (conjugate symmetric). - - - - - Returns this matrix as a multidimensional array. - The returned array will be independent from this matrix. - A new memory block will be allocated for the array. - - A multidimensional containing the values of this matrix. - - - - Returns the matrix's elements as an array with the data laid out column by column (column major). - The returned array will be independent from this matrix. - A new memory block will be allocated for the array. - -
    -            1, 2, 3
    -            4, 5, 6  will be returned as  1, 4, 7, 2, 5, 8, 3, 6, 9
    -            7, 8, 9
    -            
    - An array containing the matrix's elements. - - -
    - - - Returns the matrix's elements as an array with the data laid row by row (row major). - The returned array will be independent from this matrix. - A new memory block will be allocated for the array. - -
    -            1, 2, 3
    -            4, 5, 6  will be returned as  1, 2, 3, 4, 5, 6, 7, 8, 9
    -            7, 8, 9
    -            
    - An array containing the matrix's elements. - - -
    - - - Returns this matrix as array of row arrays. - The returned arrays will be independent from this matrix. - A new memory block will be allocated for the arrays. - - - - - Returns this matrix as array of column arrays. - The returned arrays will be independent from this matrix. - A new memory block will be allocated for the arrays. - - - - - Returns the internal multidimensional array of this matrix if, and only if, this matrix is stored by such an array internally. - Otherwise returns null. Changes to the returned array and the matrix will affect each other. - Use ToArray instead if you always need an independent array. - - - - - Returns the internal column by column (column major) array of this matrix if, and only if, this matrix is stored by such arrays internally. - Otherwise returns null. Changes to the returned arrays and the matrix will affect each other. - Use ToColumnMajorArray instead if you always need an independent array. - -
    -            1, 2, 3
    -            4, 5, 6  will be returned as  1, 4, 7, 2, 5, 8, 3, 6, 9
    -            7, 8, 9
    -            
    - An array containing the matrix's elements. - - -
    - - - Returns the internal row by row (row major) array of this matrix if, and only if, this matrix is stored by such arrays internally. - Otherwise returns null. Changes to the returned arrays and the matrix will affect each other. - Use ToRowMajorArray instead if you always need an independent array. - -
    -            1, 2, 3
    -            4, 5, 6  will be returned as  1, 2, 3, 4, 5, 6, 7, 8, 9
    -            7, 8, 9
    -            
    - An array containing the matrix's elements. - - -
    - - - Returns the internal row arrays of this matrix if, and only if, this matrix is stored by such arrays internally. - Otherwise returns null. Changes to the returned arrays and the matrix will affect each other. - Use ToRowArrays instead if you always need an independent array. - - - - - Returns the internal column arrays of this matrix if, and only if, this matrix is stored by such arrays internally. - Otherwise returns null. Changes to the returned arrays and the matrix will affect each other. - Use ToColumnArrays instead if you always need an independent array. - - - - - Returns an IEnumerable that can be used to iterate through all values of the matrix. - - - The enumerator will include all values, even if they are zero. - The ordering of the values is unspecified (not necessarily column-wise or row-wise). - - - - - Returns an IEnumerable that can be used to iterate through all values of the matrix. - - - The enumerator will include all values, even if they are zero. - The ordering of the values is unspecified (not necessarily column-wise or row-wise). - - - - - Returns an IEnumerable that can be used to iterate through all values of the matrix and their index. - - - The enumerator returns a Tuple with the first two values being the row and column index - and the third value being the value of the element at that index. - The enumerator will include all values, even if they are zero. - - - - - Returns an IEnumerable that can be used to iterate through all values of the matrix and their index. - - - The enumerator returns a Tuple with the first two values being the row and column index - and the third value being the value of the element at that index. - The enumerator will include all values, even if they are zero. - - - - - Returns an IEnumerable that can be used to iterate through all columns of the matrix. - - - - - Returns an IEnumerable that can be used to iterate through a subset of all columns of the matrix. - - The column to start enumerating over. - The number of columns to enumerating over. - - - - Returns an IEnumerable that can be used to iterate through all columns of the matrix and their index. - - - The enumerator returns a Tuple with the first value being the column index - and the second value being the value of the column at that index. - - - - - Returns an IEnumerable that can be used to iterate through a subset of all columns of the matrix and their index. - - The column to start enumerating over. - The number of columns to enumerating over. - - The enumerator returns a Tuple with the first value being the column index - and the second value being the value of the column at that index. - - - - - Returns an IEnumerable that can be used to iterate through all rows of the matrix. - - - - - Returns an IEnumerable that can be used to iterate through a subset of all rows of the matrix. - - The row to start enumerating over. - The number of rows to enumerating over. - - - - Returns an IEnumerable that can be used to iterate through all rows of the matrix and their index. - - - The enumerator returns a Tuple with the first value being the row index - and the second value being the value of the row at that index. - - - - - Returns an IEnumerable that can be used to iterate through a subset of all rows of the matrix and their index. - - The row to start enumerating over. - The number of rows to enumerating over. - - The enumerator returns a Tuple with the first value being the row index - and the second value being the value of the row at that index. - - - - - Applies a function to each value of this matrix and replaces the value with its result. - If forceMapZero is not set to true, zero values may or may not be skipped depending - on the actual data storage implementation (relevant mostly for sparse matrices). - - - - - Applies a function to each value of this matrix and replaces the value with its result. - The row and column indices of each value (zero-based) are passed as first arguments to the function. - If forceMapZero is not set to true, zero values may or may not be skipped depending - on the actual data storage implementation (relevant mostly for sparse matrices). - - - - - Applies a function to each value of this matrix and replaces the value in the result matrix. - If forceMapZero is not set to true, zero values may or may not be skipped depending - on the actual data storage implementation (relevant mostly for sparse matrices). - - - - - Applies a function to each value of this matrix and replaces the value in the result matrix. - The index of each value (zero-based) is passed as first argument to the function. - If forceMapZero is not set to true, zero values may or may not be skipped depending - on the actual data storage implementation (relevant mostly for sparse matrices). - - - - - Applies a function to each value of this matrix and replaces the value in the result matrix. - If forceMapZero is not set to true, zero values may or may not be skipped depending - on the actual data storage implementation (relevant mostly for sparse matrices). - - - - - Applies a function to each value of this matrix and replaces the value in the result matrix. - The index of each value (zero-based) is passed as first argument to the function. - If forceMapZero is not set to true, zero values may or may not be skipped depending - on the actual data storage implementation (relevant mostly for sparse matrices). - - - - - Applies a function to each value of this matrix and returns the results as a new matrix. - If forceMapZero is not set to true, zero values may or may not be skipped depending - on the actual data storage implementation (relevant mostly for sparse matrices). - - - - - Applies a function to each value of this matrix and returns the results as a new matrix. - The index of each value (zero-based) is passed as first argument to the function. - If forceMapZero is not set to true, zero values may or may not be skipped depending - on the actual data storage implementation (relevant mostly for sparse matrices). - - - - - For each row, applies a function f to each element of the row, threading an accumulator argument through the computation. - Returns an array with the resulting accumulator states for each row. - - - - - For each column, applies a function f to each element of the column, threading an accumulator argument through the computation. - Returns an array with the resulting accumulator states for each column. - - - - - Applies a function f to each row vector, threading an accumulator vector argument through the computation. - Returns the resulting accumulator vector. - - - - - Applies a function f to each column vector, threading an accumulator vector argument through the computation. - Returns the resulting accumulator vector. - - - - - Reduces all row vectors by applying a function between two of them, until only a single vector is left. - - - - - Reduces all column vectors by applying a function between two of them, until only a single vector is left. - - - - - Applies a function to each value pair of two matrices and replaces the value in the result vector. - - - - - Applies a function to each value pair of two matrices and returns the results as a new vector. - - - - - Applies a function to update the status with each value pair of two matrices and returns the resulting status. - - - - - Returns a tuple with the index and value of the first element satisfying a predicate, or null if none is found. - Zero elements may be skipped on sparse data structures if allowed (default). - - - - - Returns a tuple with the index and values of the first element pair of two matrices of the same size satisfying a predicate, or null if none is found. - Zero elements may be skipped on sparse data structures if allowed (default). - - - - - Returns true if at least one element satisfies a predicate. - Zero elements may be skipped on sparse data structures if allowed (default). - - - - - Returns true if at least one element pairs of two matrices of the same size satisfies a predicate. - Zero elements may be skipped on sparse data structures if allowed (default). - - - - - Returns true if all elements satisfy a predicate. - Zero elements may be skipped on sparse data structures if allowed (default). - - - - - Returns true if all element pairs of two matrices of the same size satisfy a predicate. - Zero elements may be skipped on sparse data structures if allowed (default). - - - - - Returns a Matrix containing the same values of . - - The matrix to get the values from. - A matrix containing a the same values as . - If is . - - - - Negates each element of the matrix. - - The matrix to negate. - A matrix containing the negated values. - If is . - - - - Adds two matrices together and returns the results. - - This operator will allocate new memory for the result. It will - choose the representation of either or depending on which - is denser. - The left matrix to add. - The right matrix to add. - The result of the addition. - If and don't have the same dimensions. - If or is . - - - - Adds a scalar to each element of the matrix. - - This operator will allocate new memory for the result. It will - choose the representation of the provided matrix. - The left matrix to add. - The scalar value to add. - The result of the addition. - If is . - - - - Adds a scalar to each element of the matrix. - - This operator will allocate new memory for the result. It will - choose the representation of the provided matrix. - The scalar value to add. - The right matrix to add. - The result of the addition. - If is . - - - - Subtracts two matrices together and returns the results. - - This operator will allocate new memory for the result. It will - choose the representation of either or depending on which - is denser. - The left matrix to subtract. - The right matrix to subtract. - The result of the subtraction. - If and don't have the same dimensions. - If or is . - - - - Subtracts a scalar from each element of a matrix. - - This operator will allocate new memory for the result. It will - choose the representation of the provided matrix. - The left matrix to subtract. - The scalar value to subtract. - The result of the subtraction. - If and don't have the same dimensions. - If or is . - - - - Subtracts each element of a matrix from a scalar. - - This operator will allocate new memory for the result. It will - choose the representation of the provided matrix. - The scalar value to subtract. - The right matrix to subtract. - The result of the subtraction. - If and don't have the same dimensions. - If or is . - - - - Multiplies a Matrix by a constant and returns the result. - - The matrix to multiply. - The constant to multiply the matrix by. - The result of the multiplication. - If is . - - - - Multiplies a Matrix by a constant and returns the result. - - The matrix to multiply. - The constant to multiply the matrix by. - The result of the multiplication. - If is . - - - - Multiplies two matrices. - - This operator will allocate new memory for the result. It will - choose the representation of either or depending on which - is denser. - The left matrix to multiply. - The right matrix to multiply. - The result of multiplication. - If or is . - If the dimensions of or don't conform. - - - - Multiplies a Matrix and a Vector. - - The matrix to multiply. - The vector to multiply. - The result of multiplication. - If or is . - - - - Multiplies a Vector and a Matrix. - - The vector to multiply. - The matrix to multiply. - The result of multiplication. - If or is . - - - - Divides a scalar with a matrix. - - The scalar to divide. - The matrix. - The result of the division. - If is . - - - - Divides a matrix with a scalar. - - The matrix to divide. - The scalar value. - The result of the division. - If is . - - - - Computes the pointwise remainder (% operator), where the result has the sign of the dividend, - of each element of the matrix of the given divisor. - - The matrix whose elements we want to compute the modulus of. - The divisor to use. - The result of the calculation - If is . - - - - Computes the pointwise remainder (% operator), where the result has the sign of the dividend, - of the given dividend of each element of the matrix. - - The dividend we want to compute the modulus of. - The matrix whose elements we want to use as divisor. - The result of the calculation - If is . - - - - Computes the pointwise remainder (% operator), where the result has the sign of the dividend, - of each element of two matrices. - - The matrix whose elements we want to compute the remainder of. - The divisor to use. - If and are not the same size. - If is . - - - - Computes the sqrt of a matrix pointwise - - The input matrix - - - - - Computes the exponential of a matrix pointwise - - The input matrix - - - - - Computes the log of a matrix pointwise - - The input matrix - - - - - Computes the log10 of a matrix pointwise - - The input matrix - - - - - Computes the sin of a matrix pointwise - - The input matrix - - - - - Computes the cos of a matrix pointwise - - The input matrix - - - - - Computes the tan of a matrix pointwise - - The input matrix - - - - - Computes the asin of a matrix pointwise - - The input matrix - - - - - Computes the acos of a matrix pointwise - - The input matrix - - - - - Computes the atan of a matrix pointwise - - The input matrix - - - - - Computes the sinh of a matrix pointwise - - The input matrix - - - - - Computes the cosh of a matrix pointwise - - The input matrix - - - - - Computes the tanh of a matrix pointwise - - The input matrix - - - - - Computes the absolute value of a matrix pointwise - - The input matrix - - - - - Computes the floor of a matrix pointwise - - The input matrix - - - - - Computes the ceiling of a matrix pointwise - - The input matrix - - - - - Computes the rounded value of a matrix pointwise - - The input matrix - - - - - Computes the Cholesky decomposition for a matrix. - - The Cholesky decomposition object. - - - - Computes the LU decomposition for a matrix. - - The LU decomposition object. - - - - Computes the QR decomposition for a matrix. - - The type of QR factorization to perform. - The QR decomposition object. - - - - Computes the QR decomposition for a matrix using Modified Gram-Schmidt Orthogonalization. - - The QR decomposition object. - - - - Computes the SVD decomposition for a matrix. - - Compute the singular U and VT vectors or not. - The SVD decomposition object. - - - - Computes the EVD decomposition for a matrix. - - The EVD decomposition object. - - - - Solves a system of linear equations, Ax = b, with A QR factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Solves a system of linear equations, AX = B, with A QR factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, AX = B, with A QR factorized. - - The right hand side , B. - The left hand side , X. - - - - Solves a system of linear equations, Ax = b, with A QR factorized. - - The right hand side vector, b. - The left hand side , x. - - - - Solves the matrix equation Ax = b, where A is the coefficient matrix (this matrix), b is the solution vector and x is the unknown vector. - - The solution vector b. - The result vector x. - The iterative solver to use. - The iterator to use to control when to stop iterating. - The preconditioner to use for approximations. - - - - Solves the matrix equation AX = B, where A is the coefficient matrix (this matrix), B is the solution matrix and X is the unknown matrix. - - The solution matrix B. - The result matrix X - The iterative solver to use. - The iterator to use to control when to stop iterating. - The preconditioner to use for approximations. - - - - Solves the matrix equation Ax = b, where A is the coefficient matrix (this matrix), b is the solution vector and x is the unknown vector. - - The solution vector b. - The result vector x. - The iterative solver to use. - Criteria to control when to stop iterating. - The preconditioner to use for approximations. - - - - Solves the matrix equation AX = B, where A is the coefficient matrix (this matrix), B is the solution matrix and X is the unknown matrix. - - The solution matrix B. - The result matrix X - The iterative solver to use. - Criteria to control when to stop iterating. - The preconditioner to use for approximations. - - - - Solves the matrix equation Ax = b, where A is the coefficient matrix (this matrix), b is the solution vector and x is the unknown vector. - - The solution vector b. - The result vector x. - The iterative solver to use. - Criteria to control when to stop iterating. - - - - Solves the matrix equation AX = B, where A is the coefficient matrix (this matrix), B is the solution matrix and X is the unknown matrix. - - The solution matrix B. - The result matrix X - The iterative solver to use. - Criteria to control when to stop iterating. - - - - Solves the matrix equation Ax = b, where A is the coefficient matrix (this matrix), b is the solution vector and x is the unknown vector. - - The solution vector b. - The iterative solver to use. - The iterator to use to control when to stop iterating. - The preconditioner to use for approximations. - The result vector x. - - - - Solves the matrix equation AX = B, where A is the coefficient matrix (this matrix), B is the solution matrix and X is the unknown matrix. - - The solution matrix B. - The iterative solver to use. - The iterator to use to control when to stop iterating. - The preconditioner to use for approximations. - The result matrix X. - - - - Solves the matrix equation Ax = b, where A is the coefficient matrix (this matrix), b is the solution vector and x is the unknown vector. - - The solution vector b. - The iterative solver to use. - Criteria to control when to stop iterating. - The preconditioner to use for approximations. - The result vector x. - - - - Solves the matrix equation AX = B, where A is the coefficient matrix (this matrix), B is the solution matrix and X is the unknown matrix. - - The solution matrix B. - The iterative solver to use. - Criteria to control when to stop iterating. - The preconditioner to use for approximations. - The result matrix X. - - - - Solves the matrix equation Ax = b, where A is the coefficient matrix (this matrix), b is the solution vector and x is the unknown vector. - - The solution vector b. - The iterative solver to use. - Criteria to control when to stop iterating. - The result vector x. - - - - Solves the matrix equation AX = B, where A is the coefficient matrix (this matrix), B is the solution matrix and X is the unknown matrix. - - The solution matrix B. - The iterative solver to use. - Criteria to control when to stop iterating. - The result matrix X. - - - - Converts a matrix to single precision. - - - - - Converts a matrix to double precision. - - - - - Converts a matrix to single precision complex numbers. - - - - - Converts a matrix to double precision complex numbers. - - - - - Gets a single precision complex matrix with the real parts from the given matrix. - - - - - Gets a double precision complex matrix with the real parts from the given matrix. - - - - - Gets a real matrix representing the real parts of a complex matrix. - - - - - Gets a real matrix representing the real parts of a complex matrix. - - - - - Gets a real matrix representing the imaginary parts of a complex matrix. - - - - - Gets a real matrix representing the imaginary parts of a complex matrix. - - - - - Existing data may not be all zeros, so clearing may be necessary - if not all of it will be overwritten anyway. - - - - - If existing data is assumed to be all zeros already, - clearing it may be skipped if applicable. - - - - - Allow skipping zero entries (without enforcing skipping them). - When enumerating sparse matrices this can significantly speed up operations. - - - - - Force applying the operation to all fields even if they are zero. - - - - - It is not known yet whether a matrix is symmetric or not. - - - - - A matrix is symmetric - - - - - A matrix is Hermitian (conjugate symmetric). - - - - - A matrix is not symmetric - - - - - Defines an that uses a cancellation token as stop criterion. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - - - - Determines the status of the iterative calculation based on the stop criteria stored - by the current . Result is set into Status field. - - The number of iterations that have passed so far. - The vector containing the current solution values. - The right hand side vector. - The vector containing the current residual vectors. - - The individual stop criteria may internally track the progress of the calculation based - on the invocation of this method. Therefore this method should only be called if the - calculation has moved forwards at least one step. - - - - - Gets the current calculation status. - - - - - Resets the to the pre-calculation state. - - - - - Clones the current and its settings. - - A new instance of the class. - - - - Stop criterion that delegates the status determination to a delegate. - - - - - Create a new instance of this criterion with a custom implementation. - - Custom implementation with the same signature and semantics as the DetermineStatus method. - - - - Determines the status of the iterative calculation by delegating it to the provided delegate. - Result is set into Status field. - - The number of iterations that have passed so far. - The vector containing the current solution values. - The right hand side vector. - The vector containing the current residual vectors. - - The individual stop criteria may internally track the progress of the calculation based - on the invocation of this method. Therefore this method should only be called if the - calculation has moved forwards at least one step. - - - - - Gets the current calculation status. - - - - - Resets the IIterationStopCriterion to the pre-calculation state. - - - - - Clones this criterion and its settings. - - - - - Monitors an iterative calculation for signs of divergence. - - - - - The maximum relative increase the residual may experience without triggering a divergence warning. - - - - - The number of iterations over which a residual increase should be tracked before issuing a divergence warning. - - - - - The status of the calculation - - - - - The array that holds the tracking information. - - - - - The iteration number of the last iteration. - - - - - Initializes a new instance of the class with the specified maximum - relative increase and the specified minimum number of tracking iterations. - - The maximum relative increase that the residual may experience before a divergence warning is issued. - The minimum number of iterations over which the residual must grow before a divergence warning is issued. - - - - Gets or sets the maximum relative increase that the residual may experience before a divergence warning is issued. - - Thrown if the Maximum is set to zero or below. - - - - Gets or sets the minimum number of iterations over which the residual must grow before - issuing a divergence warning. - - Thrown if the value is set to less than one. - - - - Determines the status of the iterative calculation based on the stop criteria stored - by the current . Result is set into Status field. - - The number of iterations that have passed so far. - The vector containing the current solution values. - The right hand side vector. - The vector containing the current residual vectors. - - The individual stop criteria may internally track the progress of the calculation based - on the invocation of this method. Therefore this method should only be called if the - calculation has moved forwards at least one step. - - - - - Detect if solution is diverging - - true if diverging, otherwise false - - - - Gets required history Length - - - - - Gets the current calculation status. - - - - - Resets the to the pre-calculation state. - - - - - Clones the current and its settings. - - A new instance of the class. - - - - Defines an that monitors residuals for NaN's. - - - - - The status of the calculation - - - - - The iteration number of the last iteration. - - - - - Determines the status of the iterative calculation based on the stop criteria stored - by the current . Result is set into Status field. - - The number of iterations that have passed so far. - The vector containing the current solution values. - The right hand side vector. - The vector containing the current residual vectors. - - The individual stop criteria may internally track the progress of the calculation based - on the invocation of this method. Therefore this method should only be called if the - calculation has moved forwards at least one step. - - - - - Gets the current calculation status. - - - - - Resets the to the pre-calculation state. - - - - - Clones the current and its settings. - - A new instance of the class. - - - - The base interface for classes that provide stop criteria for iterative calculations. - - - - - Determines the status of the iterative calculation based on the stop criteria stored - by the current IIterationStopCriterion. Status is set to Status field of current object. - - The number of iterations that have passed so far. - The vector containing the current solution values. - The right hand side vector. - The vector containing the current residual vectors. - - The individual stop criteria may internally track the progress of the calculation based - on the invocation of this method. Therefore this method should only be called if the - calculation has moved forwards at least one step. - - - - - Gets the current calculation status. - - is not a legal value. Status should be set in implementation. - - - - Resets the IIterationStopCriterion to the pre-calculation state. - - To implementers: Invoking this method should not clear the user defined - property values, only the state that is used to track the progress of the - calculation. - - - - Defines the interface for classes that solve the matrix equation Ax = b in - an iterative manner. - - - - - Solves the matrix equation Ax = b, where A is the coefficient matrix, b is the - solution vector and x is the unknown vector. - - The coefficient matrix, A. - The solution vector, b - The result vector, x - The iterator to use to control when to stop iterating. - The preconditioner to use for approximations. - - - - Defines the interface for objects that can create an iterative solver with - specific settings. This interface is used to pass iterative solver creation - setup information around. - - - - - Gets the type of the solver that will be created by this setup object. - - - - - Gets type of preconditioner, if any, that will be created by this setup object. - - - - - Creates the iterative solver to be used. - - - - - Creates the preconditioner to be used by default (can be overwritten). - - - - - Gets the relative speed of the solver. - - Returns a value between 0 and 1, inclusive. - - - - Gets the relative reliability of the solver. - - Returns a value between 0 and 1 inclusive. - - - - The base interface for preconditioner classes. - - - - Preconditioners are used by iterative solvers to improve the convergence - speed of the solving process. Increase in convergence speed - is related to the number of iterations necessary to get a converged solution. - So while in general the use of a preconditioner means that the iterative - solver will perform fewer iterations it does not guarantee that the actual - solution time decreases given that some preconditioners can be expensive to - setup and run. - - - Note that in general changes to the matrix will invalidate the preconditioner - if the changes occur after creating the preconditioner. - - - - - - Initializes the preconditioner and loads the internal data structures. - - The matrix on which the preconditioner is based. - - - - Approximates the solution to the matrix equation Mx = b. - - The right hand side vector. - The left hand side vector. Also known as the result vector. - - - - Defines an that monitors the numbers of iteration - steps as stop criterion. - - - - - The default value for the maximum number of iterations the process is allowed - to perform. - - - - - The maximum number of iterations the calculation is allowed to perform. - - - - - The status of the calculation - - - - - Initializes a new instance of the class with the default maximum - number of iterations. - - - - - Initializes a new instance of the class with the specified maximum - number of iterations. - - The maximum number of iterations the calculation is allowed to perform. - - - - Gets or sets the maximum number of iterations the calculation is allowed to perform. - - Thrown if the Maximum is set to a negative value. - - - - Returns the maximum number of iterations to the default. - - - - - Determines the status of the iterative calculation based on the stop criteria stored - by the current . Result is set into Status field. - - The number of iterations that have passed so far. - The vector containing the current solution values. - The right hand side vector. - The vector containing the current residual vectors. - - The individual stop criteria may internally track the progress of the calculation based - on the invocation of this method. Therefore this method should only be called if the - calculation has moved forwards at least one step. - - - - - Gets the current calculation status. - - - - - Resets the to the pre-calculation state. - - - - - Clones the current and its settings. - - A new instance of the class. - - - - Iterative Calculation Status - - - - - An iterator that is used to check if an iterative calculation should continue or stop. - - - - - The collection that holds all the stop criteria and the flag indicating if they should be added - to the child iterators. - - - - - The status of the iterator. - - - - - Initializes a new instance of the class with the default stop criteria. - - - - - Initializes a new instance of the class with the specified stop criteria. - - - The specified stop criteria. Only one stop criterion of each type can be passed in. None - of the stop criteria will be passed on to child iterators. - - - - - Initializes a new instance of the class with the specified stop criteria. - - - The specified stop criteria. Only one stop criterion of each type can be passed in. None - of the stop criteria will be passed on to child iterators. - - - - - Gets the current calculation status. - - - - - Determines the status of the iterative calculation based on the stop criteria stored - by the current . Result is set into Status field. - - The number of iterations that have passed so far. - The vector containing the current solution values. - The right hand side vector. - The vector containing the current residual vectors. - - The individual iterators may internally track the progress of the calculation based - on the invocation of this method. Therefore this method should only be called if the - calculation has moved forwards at least one step. - - - - - Indicates to the iterator that the iterative process has been cancelled. - - - Does not reset the stop-criteria. - - - - - Resets the to the pre-calculation state. - - - - - Creates a deep clone of the current iterator. - - The deep clone of the current iterator. - - - - Defines an that monitors residuals as stop criterion. - - - - - The maximum value for the residual below which the calculation is considered converged. - - - - - The minimum number of iterations for which the residual has to be below the maximum before - the calculation is considered converged. - - - - - The status of the calculation - - - - - The number of iterations since the residuals got below the maximum. - - - - - The iteration number of the last iteration. - - - - - Initializes a new instance of the class with the specified - maximum residual and minimum number of iterations. - - - The maximum value for the residual below which the calculation is considered converged. - - - The minimum number of iterations for which the residual has to be below the maximum before - the calculation is considered converged. - - - - - Gets or sets the maximum value for the residual below which the calculation is considered - converged. - - Thrown if the Maximum is set to a negative value. - - - - Gets or sets the minimum number of iterations for which the residual has to be - below the maximum before the calculation is considered converged. - - Thrown if the BelowMaximumFor is set to a value less than 1. - - - - Determines the status of the iterative calculation based on the stop criteria stored - by the current . Result is set into Status field. - - The number of iterations that have passed so far. - The vector containing the current solution values. - The right hand side vector. - The vector containing the current residual vectors. - - The individual stop criteria may internally track the progress of the calculation based - on the invocation of this method. Therefore this method should only be called if the - calculation has moved forwards at least one step. - - - - - Gets the current calculation status. - - - - - Resets the to the pre-calculation state. - - - - - Clones the current and its settings. - - A new instance of the class. - - - - Loads the available objects from the specified assembly. - - The assembly which will be searched for setup objects. - If true, types that fail to load are simply ignored. Otherwise the exception is rethrown. - The types that should not be loaded. - - - - Loads the available objects from the specified assembly. - - The type in the assembly which should be searched for setup objects. - If true, types that fail to load are simply ignored. Otherwise the exception is rethrown. - The types that should not be loaded. - - - - Loads the available objects from the specified assembly. - - The of the assembly that should be searched for setup objects. - If true, types that fail to load are simply ignored. Otherwise the exception is rethrown. - The types that should not be loaded. - - - - Loads the available objects from the Math.NET Numerics assembly. - - The types that should not be loaded. - - - - Loads the available objects from the Math.NET Numerics assembly. - - - - - A unit preconditioner. This preconditioner does not actually do anything - it is only used when running an without - a preconditioner. - - - - - The coefficient matrix on which this preconditioner operates. - Is used to check dimensions on the different vectors that are processed. - - - - - Initializes the preconditioner and loads the internal data structures. - - - The matrix upon which the preconditioner is based. - - If is not a square matrix. - - - - Approximates the solution to the matrix equation Ax = b. - - The right hand side vector. - The left hand side vector. Also known as the result vector. - - - If and do not have the same size. - - - - or - - - - If the size of is different the number of rows of the coefficient matrix. - - - - - - True if the matrix storage format is dense. - - - - - True if all fields of this matrix can be set to any value. - False if some fields are fixed, like on a diagonal matrix. - - - - - True if the specified field can be set to any value. - False if the field is fixed, like an off-diagonal field on a diagonal matrix. - - - - - Retrieves the requested element without range checking. - - - - - Sets the element without range checking. - - - - - Evaluate the row and column at a specific data index. - - - - - True if the vector storage format is dense. - - - - - Retrieves the requested element without range checking. - - - - - Sets the element without range checking. - - - - - True if the matrix storage format is dense. - - - - - True if all fields of this matrix can be set to any value. - False if some fields are fixed, like on a diagonal matrix. - - - - - True if the specified field can be set to any value. - False if the field is fixed, like an off-diagonal field on a diagonal matrix. - - - - - Retrieves the requested element without range checking. - - - - - Sets the element without range checking. - - - - - Returns a hash code for this instance. - - - A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. - - - - - True if the matrix storage format is dense. - - - - - True if all fields of this matrix can be set to any value. - False if some fields are fixed, like on a diagonal matrix. - - - - - True if the specified field can be set to any value. - False if the field is fixed, like an off-diagonal field on a diagonal matrix. - - - - - Gets or sets the value at the given row and column, with range checking. - - - The row of the element. - - - The column of the element. - - The value to get or set. - This method is ranged checked. and - to get and set values without range checking. - - - - Retrieves the requested element without range checking. - - - The row of the element. - - - The column of the element. - - - The requested element. - - Not range-checked. - - - - Sets the element without range checking. - - The row of the element. - The column of the element. - The value to set the element to. - WARNING: This method is not thread safe. Use "lock" with it and be sure to avoid deadlocks. - - - - Indicates whether the current object is equal to another object of the same type. - - - An object to compare with this object. - - - true if the current object is equal to the parameter; otherwise, false. - - - - - Determines whether the specified is equal to the current . - - - true if the specified is equal to the current ; otherwise, false. - - The to compare with the current . - - - - Serves as a hash function for a particular type. - - - A hash code for the current . - - - - The state array will not be modified, unless it is the same instance as the target array (which is allowed). - - - The state array will not be modified, unless it is the same instance as the target array (which is allowed). - - - The state array will not be modified, unless it is the same instance as the target array (which is allowed). - - - The state array will not be modified, unless it is the same instance as the target array (which is allowed). - - - - The array containing the row indices of the existing rows. Element "i" of the array gives the index of the - element in the array that is first non-zero element in a row "i". - The last value is equal to ValueCount, so that the number of non-zero entries in row "i" is always - given by RowPointers[i+i] - RowPointers[i]. This array thus has length RowCount+1. - - - - - An array containing the column indices of the non-zero values. Element "j" of the array - is the number of the column in matrix that contains the j-th value in the array. - - - - - Array that contains the non-zero elements of matrix. Values of the non-zero elements of matrix are mapped into the values - array using the row-major storage mapping described in a compressed sparse row (CSR) format. - - - - - Gets the number of non zero elements in the matrix. - - The number of non zero elements. - - - - True if the matrix storage format is dense. - - - - - True if all fields of this matrix can be set to any value. - False if some fields are fixed, like on a diagonal matrix. - - - - - True if the specified field can be set to any value. - False if the field is fixed, like an off-diagonal field on a diagonal matrix. - - - - - Retrieves the requested element without range checking. - - - The row of the element. - - - The column of the element. - - - The requested element. - - Not range-checked. - - - - Sets the element without range checking. - - The row of the element. - The column of the element. - The value to set the element to. - WARNING: This method is not thread safe. Use "lock" with it and be sure to avoid deadlocks. - - - - Delete value from internal storage - - Index of value in nonZeroValues array - Row number of matrix - WARNING: This method is not thread safe. Use "lock" with it and be sure to avoid deadlocks - - - - Find item Index in nonZeroValues array - - Matrix row index - Matrix column index - Item index - WARNING: This method is not thread safe. Use "lock" with it and be sure to avoid deadlocks - - - - Calculates the amount with which to grow the storage array's if they need to be - increased in size. - - The amount grown. - - - - Eliminate duplicate entries by adding them together. - - - - - Fill zeros explicitly on the diagonal entries as required by the Intel MKL direct sparse solver. - - - - - Returns a hash code for this instance. - - - A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. - - - - - Create a new sparse storage from a compressed sparse row (CSR) format. - This new storage will be independent from the given arrays. - A new memory block will be allocated for storing the matrix. - - The number of rows. - The number of columns. - The number of stored values including explicit zeros. - The row pointer array of the compressed sparse row format. - The column index array of the compressed sparse row format. - The data array of the compressed sparse row format. - The sparse storage from the compressed sparse row format. - Duplicate entries will be summed together and explicit zeros will be not intentionally removed. - - - - Create a new sparse matrix storage from a compressed sparse column (CSC) format. - This new storage will be independent from the given arrays. - A new memory block will be allocated. - - The number of rows. - The number of columns. - The number of stored values including explicit zeros. - The row index array of the compressed sparse column format. - The column pointer array of the compressed sparse column format. - The data array of the compressed sparse column format. - The sparse storage from the compressed sparse column format. - Duplicate entries will be summed together and explicit zeros will be not intentionally removed. - - - - Create a new sparse storage from a coordinate (COO) format. - This new storage will be independent from the given arrays. - A new memory block will be allocated for storing the matrix. - - The number of rows. - The number of columns. - The number of stored values including explicit zeros. - The row index array of the coordinate format. - The column index array of the coordinate format. - The data array of the coordinate format. - The sparse storage from the coordinate format. - Duplicate entries will be summed together and - explicit zeros will be not intentionally removed. - - - - Array that contains the indices of the non-zero values. - - - - - Array that contains the non-zero elements of the vector. - - - - - Gets the number of non-zero elements in the vector. - - - - - True if the vector storage format is dense. - - - - - Retrieves the requested element without range checking. - - - - - Sets the element without range checking. - - - - - Calculates the amount with which to grow the storage array's if they need to be - increased in size. - - The amount grown. - - - - Returns a hash code for this instance. - - - A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. - - - - - True if the vector storage format is dense. - - - - - Gets or sets the value at the given index, with range checking. - - - The index of the element. - - The value to get or set. - This method is ranged checked. and - to get and set values without range checking. - - - - Retrieves the requested element without range checking. - - The index of the element. - The requested element. - Not range-checked. - - - - Sets the element without range checking. - - The index of the element. - The value to set the element to. - WARNING: This method is not thread safe. Use "lock" with it and be sure to avoid deadlocks. - - - - Indicates whether the current object is equal to another object of the same type. - - - An object to compare with this object. - - - true if the current object is equal to the parameter; otherwise, false. - - - - - Determines whether the specified is equal to the current . - - - true if the specified is equal to the current ; otherwise, false. - - The to compare with the current . - - - - Serves as a hash function for a particular type. - - - A hash code for the current . - - - - - Defines the generic class for Vector classes. - - Supported data types are double, single, , and . - - - - The zero value for type T. - - - - - The value of 1.0 for type T. - - - - - Negates vector and save result to - - Target vector - - - - Complex conjugates vector and save result to - - Target vector - - - - Adds a scalar to each element of the vector and stores the result in the result vector. - - The scalar to add. - The vector to store the result of the addition. - - - - Adds another vector to this vector and stores the result into the result vector. - - The vector to add to this one. - The vector to store the result of the addition. - - - - Subtracts a scalar from each element of the vector and stores the result in the result vector. - - The scalar to subtract. - The vector to store the result of the subtraction. - - - - Subtracts each element of the vector from a scalar and stores the result in the result vector. - - The scalar to subtract from. - The vector to store the result of the subtraction. - - - - Subtracts another vector to this vector and stores the result into the result vector. - - The vector to subtract from this one. - The vector to store the result of the subtraction. - - - - Multiplies a scalar to each element of the vector and stores the result in the result vector. - - The scalar to multiply. - The vector to store the result of the multiplication. - - - - Computes the dot product between this vector and another vector. - - The other vector. - The sum of a[i]*b[i] for all i. - - - - Computes the dot product between the conjugate of this vector and another vector. - - The other vector. - The sum of conj(a[i])*b[i] for all i. - - - - Computes the outer product M[i,j] = u[i]*v[j] of this and another vector and stores the result in the result matrix. - - The other vector - The matrix to store the result of the product. - - - - Divides each element of the vector by a scalar and stores the result in the result vector. - - The scalar denominator to use. - The vector to store the result of the division. - - - - Divides a scalar by each element of the vector and stores the result in the result vector. - - The scalar numerator to use. - The vector to store the result of the division. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for each element of the vector for the given divisor. - - The scalar denominator to use. - A vector to store the results in. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for the given dividend for each element of the vector. - - The scalar numerator to use. - A vector to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for each element of the vector for the given divisor. - - The scalar denominator to use. - A vector to store the results in. - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - for the given dividend for each element of the vector. - - The scalar numerator to use. - A vector to store the results in. - - - - Pointwise multiplies this vector with another vector and stores the result into the result vector. - - The vector to pointwise multiply with this one. - The vector to store the result of the pointwise multiplication. - - - - Pointwise divide this vector with another vector and stores the result into the result vector. - - The pointwise denominator vector to use. - The result of the division. - - - - Pointwise raise this vector to an exponent and store the result into the result vector. - - The exponent to raise this vector values to. - The vector to store the result of the pointwise power. - - - - Pointwise raise this vector to an exponent vector and store the result into the result vector. - - The exponent vector to raise this vector values to. - The vector to store the result of the pointwise power. - - - - Pointwise canonical modulus, where the result has the sign of the divisor, - of this vector with another vector and stores the result into the result vector. - - The pointwise denominator vector to use. - The result of the modulus. - - - - Pointwise remainder (% operator), where the result has the sign of the dividend, - of this vector with another vector and stores the result into the result vector. - - The pointwise denominator vector to use. - The result of the modulus. - - - - Pointwise applies the exponential function to each value and stores the result into the result vector. - - The vector to store the result. - - - - Pointwise applies the natural logarithm function to each value and stores the result into the result vector. - - The vector to store the result. - - - - Adds a scalar to each element of the vector. - - The scalar to add. - A copy of the vector with the scalar added. - - - - Adds a scalar to each element of the vector and stores the result in the result vector. - - The scalar to add. - The vector to store the result of the addition. - If this vector and are not the same size. - - - - Adds another vector to this vector. - - The vector to add to this one. - A new vector containing the sum of both vectors. - If this vector and are not the same size. - - - - Adds another vector to this vector and stores the result into the result vector. - - The vector to add to this one. - The vector to store the result of the addition. - If this vector and are not the same size. - If this vector and are not the same size. - - - - Subtracts a scalar from each element of the vector. - - The scalar to subtract. - A new vector containing the subtraction of this vector and the scalar. - - - - Subtracts a scalar from each element of the vector and stores the result in the result vector. - - The scalar to subtract. - The vector to store the result of the subtraction. - If this vector and are not the same size. - - - - Subtracts each element of the vector from a scalar. - - The scalar to subtract from. - A new vector containing the subtraction of the scalar and this vector. - - - - Subtracts each element of the vector from a scalar and stores the result in the result vector. - - The scalar to subtract from. - The vector to store the result of the subtraction. - If this vector and are not the same size. - - - - Returns a negated vector. - - The negated vector. - Added as an alternative to the unary negation operator. - - - - Negates vector and save result to - - Target vector - - - - Subtracts another vector from this vector. - - The vector to subtract from this one. - A new vector containing the subtraction of the two vectors. - If this vector and are not the same size. - - - - Subtracts another vector to this vector and stores the result into the result vector. - - The vector to subtract from this one. - The vector to store the result of the subtraction. - If this vector and are not the same size. - If this vector and are not the same size. - - - - Return vector with complex conjugate values of the source vector - - Conjugated vector - - - - Complex conjugates vector and save result to - - Target vector - - - - Multiplies a scalar to each element of the vector. - - The scalar to multiply. - A new vector that is the multiplication of the vector and the scalar. - - - - Multiplies a scalar to each element of the vector and stores the result in the result vector. - - The scalar to multiply. - The vector to store the result of the multiplication. - If this vector and are not the same size. - - - - Computes the dot product between this vector and another vector. - - The other vector. - The sum of a[i]*b[i] for all i. - If is not of the same size. - - - - - Computes the dot product between the conjugate of this vector and another vector. - - The other vector. - The sum of conj(a[i])*b[i] for all i. - If is not of the same size. - If is . - - - - - Divides each element of the vector by a scalar. - - The scalar to divide with. - A new vector that is the division of the vector and the scalar. - - - - Divides each element of the vector by a scalar and stores the result in the result vector. - - The scalar to divide with. - The vector to store the result of the division. - If this vector and are not the same size. - - - - Divides a scalar by each element of the vector. - - The scalar to divide. - A new vector that is the division of the vector and the scalar. - - - - Divides a scalar by each element of the vector and stores the result in the result vector. - - The scalar to divide. - The vector to store the result of the division. - If this vector and are not the same size. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for each element of the vector for the given divisor. - - The scalar denominator to use. - A vector containing the result. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for each element of the vector for the given divisor. - - The scalar denominator to use. - A vector to store the results in. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for the given dividend for each element of the vector. - - The scalar numerator to use. - A vector containing the result. - - - - Computes the canonical modulus, where the result has the sign of the divisor, - for the given dividend for each element of the vector. - - The scalar numerator to use. - A vector to store the results in. - - - - Computes the remainder (vector % divisor), where the result has the sign of the dividend, - for each element of the vector for the given divisor. - - The scalar denominator to use. - A vector containing the result. - - - - Computes the remainder (vector % divisor), where the result has the sign of the dividend, - for each element of the vector for the given divisor. - - The scalar denominator to use. - A vector to store the results in. - - - - Computes the remainder (dividend % vector), where the result has the sign of the dividend, - for the given dividend for each element of the vector. - - The scalar numerator to use. - A vector containing the result. - - - - Computes the remainder (dividend % vector), where the result has the sign of the dividend, - for the given dividend for each element of the vector. - - The scalar numerator to use. - A vector to store the results in. - - - - Pointwise multiplies this vector with another vector. - - The vector to pointwise multiply with this one. - A new vector which is the pointwise multiplication of the two vectors. - If this vector and are not the same size. - - - - Pointwise multiplies this vector with another vector and stores the result into the result vector. - - The vector to pointwise multiply with this one. - The vector to store the result of the pointwise multiplication. - If this vector and are not the same size. - If this vector and are not the same size. - - - - Pointwise divide this vector with another vector. - - The pointwise denominator vector to use. - A new vector which is the pointwise division of the two vectors. - If this vector and are not the same size. - - - - Pointwise divide this vector with another vector and stores the result into the result vector. - - The pointwise denominator vector to use. - The vector to store the result of the pointwise division. - If this vector and are not the same size. - If this vector and are not the same size. - - - - Pointwise raise this vector to an exponent. - - The exponent to raise this vector values to. - - - - Pointwise raise this vector to an exponent and store the result into the result vector. - - The exponent to raise this vector values to. - The matrix to store the result into. - If this vector and are not the same size. - - - - Pointwise raise this vector to an exponent and store the result into the result vector. - - The exponent to raise this vector values to. - - - - Pointwise raise this vector to an exponent. - - The exponent to raise this vector values to. - The vector to store the result into. - If this vector and are not the same size. - - - - Pointwise canonical modulus, where the result has the sign of the divisor, - of this vector with another vector. - - The pointwise denominator vector to use. - If this vector and are not the same size. - - - - Pointwise canonical modulus, where the result has the sign of the divisor, - of this vector with another vector and stores the result into the result vector. - - The pointwise denominator vector to use. - The vector to store the result of the pointwise modulus. - If this vector and are not the same size. - If this vector and are not the same size. - - - - Pointwise remainder (% operator), where the result has the sign of the dividend, - of this vector with another vector. - - The pointwise denominator vector to use. - If this vector and are not the same size. - - - - Pointwise remainder (% operator), where the result has the sign of the dividend, - this vector with another vector and stores the result into the result vector. - - The pointwise denominator vector to use. - The vector to store the result of the pointwise remainder. - If this vector and are not the same size. - If this vector and are not the same size. - - - - Helper function to apply a unary function to a vector. The function - f modifies the vector given to it in place. Before its - called, a copy of the 'this' vector with the same dimension is - first created, then passed to f. The copy is returned as the result - - Function which takes a vector, modifies it in place and returns void - New instance of vector which is the result - - - - Helper function to apply a unary function which modifies a vector - in place. - - Function which takes a vector, modifies it in place and returns void - The vector where the result is to be stored - If this vector and are not the same size. - - - - Helper function to apply a binary function which takes a scalar and - a vector and modifies the latter in place. A copy of the "this" - vector is therefore first made and then passed to f together with - the scalar argument. The copy is then returned as the result - - Function which takes a scalar and a vector, modifies the vector in place and returns void - The scalar to be passed to the function - The resulting vector - - - - Helper function to apply a binary function which takes a scalar and - a vector, modifies the latter in place and returns void. - - Function which takes a scalar and a vector, modifies the vector in place and returns void - The scalar to be passed to the function - The vector where the result will be placed - If this vector and are not the same size. - - - - Helper function to apply a binary function which takes two vectors - and modifies the latter in place. A copy of the "this" vector is - first made and then passed to f together with the other vector. The - copy is then returned as the result - - Function which takes two vectors, modifies the second in place and returns void - The other vector to be passed to the function as argument. It is not modified - The resulting vector - If this vector and are not the same size. - - - - Helper function to apply a binary function which takes two vectors - and modifies the second one in place - - Function which takes two vectors, modifies the second in place and returns void - The other vector to be passed to the function as argument. It is not modified - The resulting vector - If this vector and are not the same size. - - - - Pointwise applies the exponent function to each value. - - - - - Pointwise applies the exponent function to each value. - - The vector to store the result. - If this vector and are not the same size. - - - - Pointwise applies the natural logarithm function to each value. - - - - - Pointwise applies the natural logarithm function to each value. - - The vector to store the result. - If this vector and are not the same size. - - - - Pointwise applies the abs function to each value - - - - - Pointwise applies the abs function to each value - - The vector to store the result - - - - Pointwise applies the acos function to each value - - - - - Pointwise applies the acos function to each value - - The vector to store the result - - - - Pointwise applies the asin function to each value - - - - - Pointwise applies the asin function to each value - - The vector to store the result - - - - Pointwise applies the atan function to each value - - - - - Pointwise applies the atan function to each value - - The vector to store the result - - - - Pointwise applies the atan2 function to each value of the current - vector and a given other vector being the 'x' of atan2 and the - 'this' vector being the 'y' - - - - - - Pointwise applies the atan2 function to each value of the current - vector and a given other vector being the 'x' of atan2 and the - 'this' vector being the 'y' - - - The vector to store the result - - - - Pointwise applies the ceiling function to each value - - - - - Pointwise applies the ceiling function to each value - - The vector to store the result - - - - Pointwise applies the cos function to each value - - - - - Pointwise applies the cos function to each value - - The vector to store the result - - - - Pointwise applies the cosh function to each value - - - - - Pointwise applies the cosh function to each value - - The vector to store the result - - - - Pointwise applies the floor function to each value - - - - - Pointwise applies the floor function to each value - - The vector to store the result - - - - Pointwise applies the log10 function to each value - - - - - Pointwise applies the log10 function to each value - - The vector to store the result - - - - Pointwise applies the round function to each value - - - - - Pointwise applies the round function to each value - - The vector to store the result - - - - Pointwise applies the sign function to each value - - - - - Pointwise applies the sign function to each value - - The vector to store the result - - - - Pointwise applies the sin function to each value - - - - - Pointwise applies the sin function to each value - - The vector to store the result - - - - Pointwise applies the sinh function to each value - - - - - Pointwise applies the sinh function to each value - - The vector to store the result - - - - Pointwise applies the sqrt function to each value - - - - - Pointwise applies the sqrt function to each value - - The vector to store the result - - - - Pointwise applies the tan function to each value - - - - - Pointwise applies the tan function to each value - - The vector to store the result - - - - Pointwise applies the tanh function to each value - - - - - Pointwise applies the tanh function to each value - - The vector to store the result - - - - Computes the outer product M[i,j] = u[i]*v[j] of this and another vector. - - The other vector - - - - Computes the outer product M[i,j] = u[i]*v[j] of this and another vector and stores the result in the result matrix. - - The other vector - The matrix to store the result of the product. - - - - Pointwise applies the minimum with a scalar to each value. - - The scalar value to compare to. - - - - Pointwise applies the minimum with a scalar to each value. - - The scalar value to compare to. - The vector to store the result. - If this vector and are not the same size. - - - - Pointwise applies the maximum with a scalar to each value. - - The scalar value to compare to. - - - - Pointwise applies the maximum with a scalar to each value. - - The scalar value to compare to. - The vector to store the result. - If this vector and are not the same size. - - - - Pointwise applies the absolute minimum with a scalar to each value. - - The scalar value to compare to. - - - - Pointwise applies the absolute minimum with a scalar to each value. - - The scalar value to compare to. - The vector to store the result. - If this vector and are not the same size. - - - - Pointwise applies the absolute maximum with a scalar to each value. - - The scalar value to compare to. - - - - Pointwise applies the absolute maximum with a scalar to each value. - - The scalar value to compare to. - The vector to store the result. - If this vector and are not the same size. - - - - Pointwise applies the minimum with the values of another vector to each value. - - The vector with the values to compare to. - - - - Pointwise applies the minimum with the values of another vector to each value. - - The vector with the values to compare to. - The vector to store the result. - If this vector and are not the same size. - - - - Pointwise applies the maximum with the values of another vector to each value. - - The vector with the values to compare to. - - - - Pointwise applies the maximum with the values of another vector to each value. - - The vector with the values to compare to. - The vector to store the result. - If this vector and are not the same size. - - - - Pointwise applies the absolute minimum with the values of another vector to each value. - - The vector with the values to compare to. - - - - Pointwise applies the absolute minimum with the values of another vector to each value. - - The vector with the values to compare to. - The vector to store the result. - If this vector and are not the same size. - - - - Pointwise applies the absolute maximum with the values of another vector to each value. - - The vector with the values to compare to. - - - - Pointwise applies the absolute maximum with the values of another vector to each value. - - The vector with the values to compare to. - The vector to store the result. - If this vector and are not the same size. - - - - Calculates the L1 norm of the vector, also known as Manhattan norm. - - The sum of the absolute values. - - - - Calculates the L2 norm of the vector, also known as Euclidean norm. - - The square root of the sum of the squared values. - - - - Calculates the infinity norm of the vector. - - The maximum absolute value. - - - - Computes the p-Norm. - - The p value. - Scalar ret = (sum(abs(this[i])^p))^(1/p) - - - - Normalizes this vector to a unit vector with respect to the p-norm. - - The p value. - This vector normalized to a unit vector with respect to the p-norm. - - - - Returns the value of the absolute minimum element. - - The value of the absolute minimum element. - - - - Returns the index of the absolute minimum element. - - The index of absolute minimum element. - - - - Returns the value of the absolute maximum element. - - The value of the absolute maximum element. - - - - Returns the index of the absolute maximum element. - - The index of absolute maximum element. - - - - Returns the value of maximum element. - - The value of maximum element. - - - - Returns the index of the maximum element. - - The index of maximum element. - - - - Returns the value of the minimum element. - - The value of the minimum element. - - - - Returns the index of the minimum element. - - The index of minimum element. - - - - Computes the sum of the vector's elements. - - The sum of the vector's elements. - - - - Computes the sum of the absolute value of the vector's elements. - - The sum of the absolute value of the vector's elements. - - - - Indicates whether the current object is equal to another object of the same type. - - An object to compare with this object. - - true if the current object is equal to the parameter; otherwise, false. - - - - - Determines whether the specified is equal to this instance. - - The to compare with this instance. - - true if the specified is equal to this instance; otherwise, false. - - - - - Returns a hash code for this instance. - - - A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. - - - - - Creates a new object that is a copy of the current instance. - - - A new object that is a copy of this instance. - - - - - Returns an enumerator that iterates through the collection. - - - A that can be used to iterate through the collection. - - - - - Returns an enumerator that iterates through a collection. - - - An object that can be used to iterate through the collection. - - - - - Returns a string that describes the type, dimensions and shape of this vector. - - - - - Returns a string that represents the content of this vector, column by column. - - Maximum number of entries and thus lines per column. Typical value: 12; Minimum: 3. - Maximum number of characters per line over all columns. Typical value: 80; Minimum: 16. - Character to use to print if there is not enough space to print all entries. Typical value: "..". - Character to use to separate two columns on a line. Typical value: " " (2 spaces). - Character to use to separate two rows/lines. Typical value: Environment.NewLine. - Function to provide a string for any given entry value. - - - - Returns a string that represents the content of this vector, column by column. - - Maximum number of entries and thus lines per column. Typical value: 12; Minimum: 3. - Maximum number of characters per line over all columns. Typical value: 80; Minimum: 16. - Floating point format string. Can be null. Default value: G6. - Format provider or culture. Can be null. - - - - Returns a string that represents the content of this vector, column by column. - - Floating point format string. Can be null. Default value: G6. - Format provider or culture. Can be null. - - - - Returns a string that summarizes this vector, column by column and with a type header. - - Maximum number of entries and thus lines per column. Typical value: 12; Minimum: 3. - Maximum number of characters per line over all columns. Typical value: 80; Minimum: 16. - Floating point format string. Can be null. Default value: G6. - Format provider or culture. Can be null. - - - - Returns a string that summarizes this vector. - The maximum number of cells can be configured in the class. - - - - - Returns a string that summarizes this vector. - The maximum number of cells can be configured in the class. - The format string is ignored. - - - - - Initializes a new instance of the Vector class. - - - - - Gets the raw vector data storage. - - - - - Gets the length or number of dimensions of this vector. - - - - Gets or sets the value at the given . - The index of the value to get or set. - The value of the vector at the given . - If is negative or - greater than the size of the vector. - - - Gets the value at the given without range checking.. - The index of the value to get or set. - The value of the vector at the given . - - - Sets the at the given without range checking.. - The index of the value to get or set. - The value to set. - - - - Resets all values to zero. - - - - - Sets all values of a subvector to zero. - - - - - Set all values whose absolute value is smaller than the threshold to zero, in-place. - - - - - Set all values that meet the predicate to zero, in-place. - - - - - Returns a deep-copy clone of the vector. - - A deep-copy clone of the vector. - - - - Set the values of this vector to the given values. - - The array containing the values to use. - If is . - If is not the same size as this vector. - - - - Copies the values of this vector into the target vector. - - The vector to copy elements into. - If is . - If is not the same size as this vector. - - - - Creates a vector containing specified elements. - - The first element to begin copying from. - The number of elements to copy. - A vector containing a copy of the specified elements. - If is not positive or - greater than or equal to the size of the vector. - If + is greater than or equal to the size of the vector. - - If is not positive. - - - - Copies the values of a given vector into a region in this vector. - - The field to start copying to - The number of fields to copy. Must be positive. - The sub-vector to copy from. - If is - - - - Copies the requested elements from this vector to another. - - The vector to copy the elements to. - The element to start copying from. - The element to start copying to. - The number of elements to copy. - - - - Returns the data contained in the vector as an array. - The returned array will be independent from this vector. - A new memory block will be allocated for the array. - - The vector's data as an array. - - - - Returns the internal array of this vector if, and only if, this vector is stored by such an array internally. - Otherwise returns null. Changes to the returned array and the vector will affect each other. - Use ToArray instead if you always need an independent array. - - - - - Create a matrix based on this vector in column form (one single column). - - - This vector as a column matrix. - - - - - Create a matrix based on this vector in row form (one single row). - - - This vector as a row matrix. - - - - - Returns an IEnumerable that can be used to iterate through all values of the vector. - - - The enumerator will include all values, even if they are zero. - - - - - Returns an IEnumerable that can be used to iterate through all values of the vector. - - - The enumerator will include all values, even if they are zero. - - - - - Returns an IEnumerable that can be used to iterate through all values of the vector and their index. - - - The enumerator returns a Tuple with the first value being the element index - and the second value being the value of the element at that index. - The enumerator will include all values, even if they are zero. - - - - - Returns an IEnumerable that can be used to iterate through all values of the vector and their index. - - - The enumerator returns a Tuple with the first value being the element index - and the second value being the value of the element at that index. - The enumerator will include all values, even if they are zero. - - - - - Applies a function to each value of this vector and replaces the value with its result. - If forceMapZero is not set to true, zero values may or may not be skipped depending - on the actual data storage implementation (relevant mostly for sparse vectors). - - - - - Applies a function to each value of this vector and replaces the value with its result. - The index of each value (zero-based) is passed as first argument to the function. - If forceMapZero is not set to true, zero values may or may not be skipped depending - on the actual data storage implementation (relevant mostly for sparse vectors). - - - - - Applies a function to each value of this vector and replaces the value in the result vector. - If forceMapZero is not set to true, zero values may or may not be skipped depending - on the actual data storage implementation (relevant mostly for sparse vectors). - - - - - Applies a function to each value of this vector and replaces the value in the result vector. - The index of each value (zero-based) is passed as first argument to the function. - If forceMapZero is not set to true, zero values may or may not be skipped depending - on the actual data storage implementation (relevant mostly for sparse vectors). - - - - - Applies a function to each value of this vector and replaces the value in the result vector. - If forceMapZero is not set to true, zero values may or may not be skipped depending - on the actual data storage implementation (relevant mostly for sparse vectors). - - - - - Applies a function to each value of this vector and replaces the value in the result vector. - The index of each value (zero-based) is passed as first argument to the function. - If forceMapZero is not set to true, zero values may or may not be skipped depending - on the actual data storage implementation (relevant mostly for sparse vectors). - - - - - Applies a function to each value of this vector and returns the results as a new vector. - If forceMapZero is not set to true, zero values may or may not be skipped depending - on the actual data storage implementation (relevant mostly for sparse vectors). - - - - - Applies a function to each value of this vector and returns the results as a new vector. - The index of each value (zero-based) is passed as first argument to the function. - If forceMapZero is not set to true, zero values may or may not be skipped depending - on the actual data storage implementation (relevant mostly for sparse vectors). - - - - - Applies a function to each value pair of two vectors and replaces the value in the result vector. - - - - - Applies a function to each value pair of two vectors and returns the results as a new vector. - - - - - Applies a function to update the status with each value pair of two vectors and returns the resulting status. - - - - - Returns a tuple with the index and value of the first element satisfying a predicate, or null if none is found. - Zero elements may be skipped on sparse data structures if allowed (default). - - - - - Returns a tuple with the index and values of the first element pair of two vectors of the same size satisfying a predicate, or null if none is found. - Zero elements may be skipped on sparse data structures if allowed (default). - - - - - Returns true if at least one element satisfies a predicate. - Zero elements may be skipped on sparse data structures if allowed (default). - - - - - Returns true if at least one element pairs of two vectors of the same size satisfies a predicate. - Zero elements may be skipped on sparse data structures if allowed (default). - - - - - Returns true if all elements satisfy a predicate. - Zero elements may be skipped on sparse data structures if allowed (default). - - - - - Returns true if all element pairs of two vectors of the same size satisfy a predicate. - Zero elements may be skipped on sparse data structures if allowed (default). - - - - - Returns a Vector containing the same values of . - - This method is included for completeness. - The vector to get the values from. - A vector containing the same values as . - If is . - - - - Returns a Vector containing the negated values of . - - The vector to get the values from. - A vector containing the negated values as . - If is . - - - - Adds two Vectors together and returns the results. - - One of the vectors to add. - The other vector to add. - The result of the addition. - If and are not the same size. - If or is . - - - - Adds a scalar to each element of a vector. - - The vector to add to. - The scalar value to add. - The result of the addition. - If is . - - - - Adds a scalar to each element of a vector. - - The scalar value to add. - The vector to add to. - The result of the addition. - If is . - - - - Subtracts two Vectors and returns the results. - - The vector to subtract from. - The vector to subtract. - The result of the subtraction. - If and are not the same size. - If or is . - - - - Subtracts a scalar from each element of a vector. - - The vector to subtract from. - The scalar value to subtract. - The result of the subtraction. - If is . - - - - Subtracts each element of a vector from a scalar. - - The scalar value to subtract from. - The vector to subtract. - The result of the subtraction. - If is . - - - - Multiplies a vector with a scalar. - - The vector to scale. - The scalar value. - The result of the multiplication. - If is . - - - - Multiplies a vector with a scalar. - - The scalar value. - The vector to scale. - The result of the multiplication. - If is . - - - - Computes the dot product between two Vectors. - - The left row vector. - The right column vector. - The dot product between the two vectors. - If and are not the same size. - If or is . - - - - Divides a scalar with a vector. - - The scalar to divide. - The vector. - The result of the division. - If is . - - - - Divides a vector with a scalar. - - The vector to divide. - The scalar value. - The result of the division. - If is . - - - - Pointwise divides two Vectors. - - The vector to divide. - The other vector. - The result of the division. - If and are not the same size. - If is . - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - of each element of the vector of the given divisor. - - The vector whose elements we want to compute the remainder of. - The divisor to use. - If is . - - - - Computes the remainder (% operator), where the result has the sign of the dividend, - of the given dividend of each element of the vector. - - The dividend we want to compute the remainder of. - The vector whose elements we want to use as divisor. - If is . - - - - Computes the pointwise remainder (% operator), where the result has the sign of the dividend, - of each element of two vectors. - - The vector whose elements we want to compute the remainder of. - The divisor to use. - If and are not the same size. - If is . - - - - Computes the sqrt of a vector pointwise - - The input vector - - - - - Computes the exponential of a vector pointwise - - The input vector - - - - - Computes the log of a vector pointwise - - The input vector - - - - - Computes the log10 of a vector pointwise - - The input vector - - - - - Computes the sin of a vector pointwise - - The input vector - - - - - Computes the cos of a vector pointwise - - The input vector - - - - - Computes the tan of a vector pointwise - - The input vector - - - - - Computes the asin of a vector pointwise - - The input vector - - - - - Computes the acos of a vector pointwise - - The input vector - - - - - Computes the atan of a vector pointwise - - The input vector - - - - - Computes the sinh of a vector pointwise - - The input vector - - - - - Computes the cosh of a vector pointwise - - The input vector - - - - - Computes the tanh of a vector pointwise - - The input vector - - - - - Computes the absolute value of a vector pointwise - - The input vector - - - - - Computes the floor of a vector pointwise - - The input vector - - - - - Computes the ceiling of a vector pointwise - - The input vector - - - - - Computes the rounded value of a vector pointwise - - The input vector - - - - - Converts a vector to single precision. - - - - - Converts a vector to double precision. - - - - - Converts a vector to single precision complex numbers. - - - - - Converts a vector to double precision complex numbers. - - - - - Gets a single precision complex vector with the real parts from the given vector. - - - - - Gets a double precision complex vector with the real parts from the given vector. - - - - - Gets a real vector representing the real parts of a complex vector. - - - - - Gets a real vector representing the real parts of a complex vector. - - - - - Gets a real vector representing the imaginary parts of a complex vector. - - - - - Gets a real vector representing the imaginary parts of a complex vector. - - - - - Find the model parameters β such that X*β with predictor X becomes as close to response Y as possible, with least squares residuals. - - Predictor matrix X - Response vector Y - The direct method to be used to compute the regression. - Best fitting vector for model parameters β - - - - Find the model parameters β such that X*β with predictor X becomes as close to response Y as possible, with least squares residuals. - - Predictor matrix X - Response matrix Y - The direct method to be used to compute the regression. - Best fitting vector for model parameters β - - - - Find the model parameters β such that their linear combination with all predictor-arrays in X become as close to their response in Y as possible, with least squares residuals. - - List of predictor-arrays. - List of responses - True if an intercept should be added as first artificial predictor value. Default = false. - The direct method to be used to compute the regression. - Best fitting list of model parameters β for each element in the predictor-arrays. - - - - Find the model parameters β such that their linear combination with all predictor-arrays in X become as close to their response in Y as possible, with least squares residuals. - Uses the cholesky decomposition of the normal equations. - - Sequence of predictor-arrays and their response. - True if an intercept should be added as first artificial predictor value. Default = false. - The direct method to be used to compute the regression. - Best fitting list of model parameters β for each element in the predictor-arrays. - - - - Find the model parameters β such that X*β with predictor X becomes as close to response Y as possible, with least squares residuals. - Uses the cholesky decomposition of the normal equations. - - Predictor matrix X - Response vector Y - Best fitting vector for model parameters β - - - - Find the model parameters β such that X*β with predictor X becomes as close to response Y as possible, with least squares residuals. - Uses the cholesky decomposition of the normal equations. - - Predictor matrix X - Response matrix Y - Best fitting vector for model parameters β - - - - Find the model parameters β such that their linear combination with all predictor-arrays in X become as close to their response in Y as possible, with least squares residuals. - Uses the cholesky decomposition of the normal equations. - - List of predictor-arrays. - List of responses - True if an intercept should be added as first artificial predictor value. Default = false. - Best fitting list of model parameters β for each element in the predictor-arrays. - - - - Find the model parameters β such that their linear combination with all predictor-arrays in X become as close to their response in Y as possible, with least squares residuals. - Uses the cholesky decomposition of the normal equations. - - Sequence of predictor-arrays and their response. - True if an intercept should be added as first artificial predictor value. Default = false. - Best fitting list of model parameters β for each element in the predictor-arrays. - - - - Find the model parameters β such that their linear combination with all predictor-arrays in X become as close to their response in Y as possible, with least squares residuals. - Uses the cholesky decomposition of the normal equations. - - Sequence of predictor-arrays and their response. - True if an intercept should be added as first artificial predictor value. Default = false. - Best fitting list of model parameters β for each element in the predictor-arrays. - - - - Find the model parameters β such that X*β with predictor X becomes as close to response Y as possible, with least squares residuals. - Uses an orthogonal decomposition and is therefore more numerically stable than the normal equations but also slower. - - Predictor matrix X - Response vector Y - Best fitting vector for model parameters β - - - - Find the model parameters β such that X*β with predictor X becomes as close to response Y as possible, with least squares residuals. - Uses an orthogonal decomposition and is therefore more numerically stable than the normal equations but also slower. - - Predictor matrix X - Response matrix Y - Best fitting vector for model parameters β - - - - Find the model parameters β such that their linear combination with all predictor-arrays in X become as close to their response in Y as possible, with least squares residuals. - Uses an orthogonal decomposition and is therefore more numerically stable than the normal equations but also slower. - - List of predictor-arrays. - List of responses - True if an intercept should be added as first artificial predictor value. Default = false. - Best fitting list of model parameters β for each element in the predictor-arrays. - - - - Find the model parameters β such that their linear combination with all predictor-arrays in X become as close to their response in Y as possible, with least squares residuals. - Uses an orthogonal decomposition and is therefore more numerically stable than the normal equations but also slower. - - Sequence of predictor-arrays and their response. - True if an intercept should be added as first artificial predictor value. Default = false. - Best fitting list of model parameters β for each element in the predictor-arrays. - - - - Find the model parameters β such that their linear combination with all predictor-arrays in X become as close to their response in Y as possible, with least squares residuals. - Uses an orthogonal decomposition and is therefore more numerically stable than the normal equations but also slower. - - Sequence of predictor-arrays and their response. - True if an intercept should be added as first artificial predictor value. Default = false. - Best fitting list of model parameters β for each element in the predictor-arrays. - - - - Find the model parameters β such that X*β with predictor X becomes as close to response Y as possible, with least squares residuals. - Uses a singular value decomposition and is therefore more numerically stable (especially if ill-conditioned) than the normal equations or QR but also slower. - - Predictor matrix X - Response vector Y - Best fitting vector for model parameters β - - - - Find the model parameters β such that X*β with predictor X becomes as close to response Y as possible, with least squares residuals. - Uses a singular value decomposition and is therefore more numerically stable (especially if ill-conditioned) than the normal equations or QR but also slower. - - Predictor matrix X - Response matrix Y - Best fitting vector for model parameters β - - - - Find the model parameters β such that their linear combination with all predictor-arrays in X become as close to their response in Y as possible, with least squares residuals. - Uses a singular value decomposition and is therefore more numerically stable (especially if ill-conditioned) than the normal equations or QR but also slower. - - List of predictor-arrays. - List of responses - True if an intercept should be added as first artificial predictor value. Default = false. - Best fitting list of model parameters β for each element in the predictor-arrays. - - - - Find the model parameters β such that their linear combination with all predictor-arrays in X become as close to their response in Y as possible, with least squares residuals. - Uses a singular value decomposition and is therefore more numerically stable (especially if ill-conditioned) than the normal equations or QR but also slower. - - Sequence of predictor-arrays and their response. - True if an intercept should be added as first artificial predictor value. Default = false. - Best fitting list of model parameters β for each element in the predictor-arrays. - - - - Find the model parameters β such that their linear combination with all predictor-arrays in X become as close to their response in Y as possible, with least squares residuals. - Uses a singular value decomposition and is therefore more numerically stable (especially if ill-conditioned) than the normal equations or QR but also slower. - - Sequence of predictor-arrays and their response. - True if an intercept should be added as first artificial predictor value. Default = false. - Best fitting list of model parameters β for each element in the predictor-arrays. - - - - Least-Squares fitting the points (x,y) to a line y : x -> a+b*x, - returning its best fitting parameters as (a, b) tuple, - where a is the intercept and b the slope. - - Predictor (independent) - Response (dependent) - - - - Least-Squares fitting the points (x,y) to a line y : x -> a+b*x, - returning its best fitting parameters as (a, b) tuple, - where a is the intercept and b the slope. - - Predictor-Response samples as tuples - - - - Least-Squares fitting the points (x,y) to a line y : x -> a+b*x, - returning its best fitting parameters as (a, b) tuple, - where a is the intercept and b the slope. - - Predictor-Response samples as tuples - - - - Least-Squares fitting the points (x,y) to a line y : x -> b*x, - returning its best fitting parameter b, - where the intercept is zero and b the slope. - - Predictor (independent) - Response (dependent) - - - - Least-Squares fitting the points (x,y) to a line y : x -> b*x, - returning its best fitting parameter b, - where the intercept is zero and b the slope. - - Predictor-Response samples as tuples - - - - Weighted Linear Regression using normal equations. - - Predictor matrix X - Response vector Y - Weight matrix W, usually diagonal with an entry for each predictor (row). - - - - Weighted Linear Regression using normal equations. - - Predictor matrix X - Response matrix Y - Weight matrix W, usually diagonal with an entry for each predictor (row). - - - - Weighted Linear Regression using normal equations. - - Predictor matrix X - Response vector Y - Weight matrix W, usually diagonal with an entry for each predictor (row). - True if an intercept should be added as first artificial predictor value. Default = false. - - - - Weighted Linear Regression using normal equations. - - List of sample vectors (predictor) together with their response. - List of weights, one for each sample. - True if an intercept should be added as first artificial predictor value. Default = false. - - - - Weighted Linear Regression using normal equations. - - List of sample vectors (predictor) together with their response. - List of weights, one for each sample. - True if an intercept should be added as first artificial predictor value. Default = false. - - - - Locally-Weighted Linear Regression using normal equations. - - - - - Locally-Weighted Linear Regression using normal equations. - - - - - First Order AB method(same as Forward Euler) - - Initial value - Start Time - End Time - Size of output array(the larger, the finer) - ode model - approximation with size N - - - - Second Order AB Method - - Initial value 1 - Start Time - End Time - Size of output array(the larger, the finer) - ode model - approximation with size N - - - - Third Order AB Method - - Initial value 1 - Start Time - End Time - Size of output array(the larger, the finer) - ode model - approximation with size N - - - - Fourth Order AB Method - - Initial value 1 - Start Time - End Time - Size of output array(the larger, the finer) - ode model - approximation with size N - - - - ODE Solver Algorithms - - - - - Second Order Runge-Kutta method - - initial value - start time - end time - Size of output array(the larger, the finer) - ode function - approximations - - - - Fourth Order Runge-Kutta method - - initial value - start time - end time - Size of output array(the larger, the finer) - ode function - approximations - - - - Second Order Runge-Kutta to solve ODE SYSTEM - - initial vector - start time - end time - Size of output array(the larger, the finer) - ode function - approximations - - - - Fourth Order Runge-Kutta to solve ODE SYSTEM - - initial vector - start time - end time - Size of output array(the larger, the finer) - ode function - approximations - - - - Broyden–Fletcher–Goldfarb–Shanno Bounded (BFGS-B) algorithm is an iterative method for solving box-constrained nonlinear optimization problems - http://www.ece.northwestern.edu/~nocedal/PSfiles/limited.ps.gz - - - - - Find the minimum of the objective function given lower and upper bounds - - The objective function, must support a gradient - The lower bound - The upper bound - The initial guess - The MinimizationResult which contains the minimum and the ExitCondition - - - - Broyden–Fletcher–Goldfarb–Shanno (BFGS) algorithm is an iterative method for solving unconstrained nonlinear optimization problems - - - - - Creates BFGS minimizer - - The gradient tolerance - The parameter tolerance - The function progress tolerance - The maximum number of iterations - - - - Find the minimum of the objective function given lower and upper bounds - - The objective function, must support a gradient - The initial guess - The MinimizationResult which contains the minimum and the ExitCondition - - - - - Creates a base class for BFGS minimization - - - - - Broyden-Fletcher-Goldfarb-Shanno solver for finding function minima - See http://en.wikipedia.org/wiki/Broyden%E2%80%93Fletcher%E2%80%93Goldfarb%E2%80%93Shanno_algorithm - Inspired by implementation: https://github.com/PatWie/CppNumericalSolvers/blob/master/src/BfgsSolver.cpp - - - - - Finds a minimum of a function by the BFGS quasi-Newton method - This uses the function and it's gradient (partial derivatives in each direction) and approximates the Hessian - - An initial guess - Evaluates the function at a point - Evaluates the gradient of the function at a point - The minimum found - - - - Objective function with a frozen evaluation that must not be changed from the outside. - - - - Create a new unevaluated and independent copy of this objective function - - - - Objective function with a mutable evaluation. - - - - Create a new independent copy of this objective function, evaluated at the same point. - - - - Get the y-values of the observations. - - - - - Get the values of the weights for the observations. - - - - - Get the y-values of the fitted model that correspond to the independent values. - - - - - Get the values of the parameters. - - - - - Get the residual sum of squares. - - - - - Get the Gradient vector. G = J'(y - f(x; p)) - - - - - Get the approximated Hessian matrix. H = J'J - - - - - Get the number of calls to function. - - - - - Get the number of calls to jacobian. - - - - - Get the degree of freedom. - - - - - The scale factor for initial mu - - - - - Non-linear least square fitting by the Levenberg-Marduardt algorithm. - - The objective function, including model, observations, and parameter bounds. - The initial guess values. - The initial damping parameter of mu. - The stopping threshold for infinity norm of the gradient vector. - The stopping threshold for L2 norm of the change of parameters. - The stopping threshold for L2 norm of the residuals. - The max iterations. - The result of the Levenberg-Marquardt minimization - - - - Limited Memory version of Broyden–Fletcher–Goldfarb–Shanno (BFGS) algorithm - - - - - - Creates L-BFGS minimizer - - Numbers of gradients and steps to store. - - - - Find the minimum of the objective function given lower and upper bounds - - The objective function, must support a gradient - The initial guess - The MinimizationResult which contains the minimum and the ExitCondition - - - - Search for a step size alpha that satisfies the weak Wolfe conditions. The weak Wolfe - Conditions are - i) Armijo Rule: f(x_k + alpha_k p_k) <= f(x_k) + c1 alpha_k p_k^T g(x_k) - ii) Curvature Condition: p_k^T g(x_k + alpha_k p_k) >= c2 p_k^T g(x_k) - where g(x) is the gradient of f(x), 0 < c1 < c2 < 1. - - Implementation is based on http://www.math.washington.edu/~burke/crs/408/lectures/L9-weak-Wolfe.pdf - - references: - http://en.wikipedia.org/wiki/Wolfe_conditions - http://www.math.washington.edu/~burke/crs/408/lectures/L9-weak-Wolfe.pdf - - - - Implemented following http://www.math.washington.edu/~burke/crs/408/lectures/L9-weak-Wolfe.pdf - The objective function being optimized, evaluated at the starting point of the search - Search direction - Initial size of the step in the search direction - - - - The objective function being optimized, evaluated at the starting point of the search - Search direction - Initial size of the step in the search direction - The upper bound - - - - Creates a base class for minimization - - The gradient tolerance - The parameter tolerance - The function progress tolerance - The maximum number of iterations - - - - Class implementing the Nelder-Mead simplex algorithm, used to find a minima when no gradient is available. - Called fminsearch() in Matlab. A description of the algorithm can be found at - http://se.mathworks.com/help/matlab/math/optimizing-nonlinear-functions.html#bsgpq6p-11 - or - https://en.wikipedia.org/wiki/Nelder%E2%80%93Mead_method - - - - - Finds the minimum of the objective function without an initial perturbation, the default values used - by fminsearch() in Matlab are used instead - http://se.mathworks.com/help/matlab/math/optimizing-nonlinear-functions.html#bsgpq6p-11 - - The objective function, no gradient or hessian needed - The initial guess - The minimum point - - - - Finds the minimum of the objective function with an initial perturbation - - The objective function, no gradient or hessian needed - The initial guess - The initial perturbation - The minimum point - - - - Finds the minimum of the objective function without an initial perturbation, the default values used - by fminsearch() in Matlab are used instead - http://se.mathworks.com/help/matlab/math/optimizing-nonlinear-functions.html#bsgpq6p-11 - - The objective function, no gradient or hessian needed - The initial guess - The minimum point - - - - Finds the minimum of the objective function with an initial perturbation - - The objective function, no gradient or hessian needed - The initial guess - The initial perturbation - The minimum point - - - - Evaluate the objective function at each vertex to create a corresponding - list of error values for each vertex - - - - - - - - Check whether the points in the error profile have so little range that we - consider ourselves to have converged - - - - - - - - - Examine all error values to determine the ErrorProfile - - - - - - - Construct an initial simplex, given starting guesses for the constants, and - initial step sizes for each dimension - - - - - - - Test a scaling operation of the high point, and replace it if it is an improvement - - - - - - - - - - - Contract the simplex uniformly around the lowest point - - - - - - - - - Compute the centroid of all points except the worst - - - - - - - - The value of the constant - - - - - Returns the best fit parameters. - - - - - Returns the standard errors of the corresponding parameters - - - - - Returns the y-values of the fitted model that correspond to the independent values. - - - - - Returns the covariance matrix at minimizing point. - - - - - Returns the correlation matrix at minimizing point. - - - - - The stopping threshold for the function value or L2 norm of the residuals. - - - - - The stopping threshold for L2 norm of the change of the parameters. - - - - - The stopping threshold for infinity norm of the gradient. - - - - - The maximum number of iterations. - - - - - The lower bound of the parameters. - - - - - The upper bound of the parameters. - - - - - The scale factors for the parameters. - - - - - Objective function where neither Gradient nor Hessian is available. - - - - - Objective function where the Gradient is available. Greedy evaluation. - - - - - Objective function where the Gradient is available. Lazy evaluation. - - - - - Objective function where the Hessian is available. Greedy evaluation. - - - - - Objective function where the Hessian is available. Lazy evaluation. - - - - - Objective function where both Gradient and Hessian are available. Greedy evaluation. - - - - - Objective function where both Gradient and Hessian are available. Lazy evaluation. - - - - - Objective function where neither first nor second derivative is available. - - - - - Objective function where the first derivative is available. - - - - - Objective function where the first and second derivatives are available. - - - - - objective model with a user supplied jacobian for non-linear least squares regression. - - - - - Objective model for non-linear least squares regression. - - - - - Objective model with a user supplied jacobian for non-linear least squares regression. - - - - - Objective model for non-linear least squares regression. - - - - - Objective function with a user supplied jacobian for nonlinear least squares regression. - - - - - Objective function for nonlinear least squares regression. - The numerical jacobian with accuracy order is used. - - - - - Adapts an objective function with only value implemented - to provide a gradient as well. Gradient calculation is - done using the finite difference method, specifically - forward differences. - - For each gradient computed, the algorithm requires an - additional number of function evaluations equal to the - functions's number of input parameters. - - - - - Set or get the values of the independent variable. - - - - - Set or get the values of the observations. - - - - - Set or get the values of the weights for the observations. - - - - - Get whether parameters are fixed or free. - - - - - Get the number of observations. - - - - - Get the number of unknown parameters. - - - - - Get the degree of freedom - - - - - Get the number of calls to function. - - - - - Get the number of calls to jacobian. - - - - - Set or get the values of the parameters. - - - - - Get the y-values of the fitted model that correspond to the independent values. - - - - - Get the residual sum of squares. - - - - - Get the Gradient vector of x and p. - - - - - Get the Hessian matrix of x and p, J'WJ - - - - - Set observed data to fit. - - - - - Set parameters and bounds. - - The initial values of parameters. - The list to the parameters fix or free. - - - - Non-linear least square fitting by the trust region dogleg algorithm. - - - - - The trust region subproblem. - - - - - The stopping threshold for the trust region radius. - - - - - Non-linear least square fitting by the trust-region algorithm. - - The objective model, including function, jacobian, observations, and parameter bounds. - The subproblem - The initial guess values. - The stopping threshold for L2 norm of the residuals. - The stopping threshold for infinity norm of the gradient vector. - The stopping threshold for L2 norm of the change of parameters. - The stopping threshold for trust region radius - The max iterations. - - - - - Non-linear least square fitting by the trust region Newton-Conjugate-Gradient algorithm. - - - - - Class to represent a permutation for a subset of the natural numbers. - - - - - Entry _indices[i] represents the location to which i is permuted to. - - - - - Initializes a new instance of the Permutation class. - - An array which represents where each integer is permuted too: indices[i] represents that integer i - is permuted to location indices[i]. - - - - Gets the number of elements this permutation is over. - - - - - Computes where permutes too. - - The index to permute from. - The index which is permuted to. - - - - Computes the inverse of the permutation. - - The inverse of the permutation. - - - - Construct an array from a sequence of inversions. - - - From wikipedia: the permutation 12043 has the inversions (0,2), (1,2) and (3,4). This would be - encoded using the array [22244]. - - The set of inversions to construct the permutation from. - A permutation generated from a sequence of inversions. - - - - Construct a sequence of inversions from the permutation. - - - From wikipedia: the permutation 12043 has the inversions (0,2), (1,2) and (3,4). This would be - encoded using the array [22244]. - - A sequence of inversions. - - - - Checks whether the array represents a proper permutation. - - An array which represents where each integer is permuted too: indices[i] represents that integer i - is permuted to location indices[i]. - True if represents a proper permutation, false otherwise. - - - - A single-variable polynomial with real-valued coefficients and non-negative exponents. - - - - - The coefficients of the polynomial in a - - - - - Only needed for the ToString method - - - - - Degree of the polynomial, i.e. the largest monomial exponent. For example, the degree of y=x^2+x^5 is 5, for y=3 it is 0. - The null-polynomial returns degree -1 because the correct degree, negative infinity, cannot be represented by integers. - - - - - Create a zero-polynomial with a coefficient array of the given length. - An array of length N can support polynomials of a degree of at most N-1. - - Length of the coefficient array - - - - Create a zero-polynomial - - - - - Create a constant polynomial. - Example: 3.0 -> "p : x -> 3.0" - - The coefficient of the "x^0" monomial. - - - - Create a polynomial with the provided coefficients (in ascending order, where the index matches the exponent). - Example: {5, 0, 2} -> "p : x -> 5 + 0 x^1 + 2 x^2". - - Polynomial coefficients as array - - - - Create a polynomial with the provided coefficients (in ascending order, where the index matches the exponent). - Example: {5, 0, 2} -> "p : x -> 5 + 0 x^1 + 2 x^2". - - Polynomial coefficients as enumerable - - - - Least-Squares fitting the points (x,y) to a k-order polynomial y : x -> p0 + p1*x + p2*x^2 + ... + pk*x^k - - - - - Evaluate a polynomial at point x. - Coefficients are ordered ascending by power with power k at index k. - Example: coefficients [3,-1,2] represent y=2x^2-x+3. - - The location where to evaluate the polynomial at. - The coefficients of the polynomial, coefficient for power k at index k. - - is a null reference. - - - - - Evaluate a polynomial at point x. - Coefficients are ordered ascending by power with power k at index k. - Example: coefficients [3,-1,2] represent y=2x^2-x+3. - - The location where to evaluate the polynomial at. - The coefficients of the polynomial, coefficient for power k at index k. - - is a null reference. - - - - - Evaluate a polynomial at point x. - Coefficients are ordered ascending by power with power k at index k. - Example: coefficients [3,-1,2] represent y=2x^2-x+3. - - The location where to evaluate the polynomial at. - The coefficients of the polynomial, coefficient for power k at index k. - - is a null reference. - - - - - Evaluate a polynomial at point x. - - The location where to evaluate the polynomial at. - - - - Evaluate a polynomial at point x. - - The location where to evaluate the polynomial at. - - - - Evaluate a polynomial at points z. - - The locations where to evaluate the polynomial at. - - - - Evaluate a polynomial at points z. - - The locations where to evaluate the polynomial at. - - - - Calculates the complex roots of the Polynomial by eigenvalue decomposition - - a vector of complex numbers with the roots - - - - Get the eigenvalue matrix A of this polynomial such that eig(A) = roots of this polynomial. - - Eigenvalue matrix A - This matrix is similar to the companion matrix of this polynomial, in such a way, that it's transpose is the columnflip of the companion matrix - - - - Addition of two Polynomials (point-wise). - - Left Polynomial - Right Polynomial - Resulting Polynomial - - - - Addition of a polynomial and a scalar. - - - - - Subtraction of two Polynomials (point-wise). - - Left Polynomial - Right Polynomial - Resulting Polynomial - - - - Addition of a scalar from a polynomial. - - - - - Addition of a polynomial from a scalar. - - - - - Negation of a polynomial. - - - - - Multiplies a polynomial by a polynomial (convolution) - - Left polynomial - Right polynomial - Resulting Polynomial - - or is a null reference. - - - - - Scales a polynomial by a scalar - - Polynomial - Scalar value - Resulting Polynomial - - - - Scales a polynomial by division by a scalar - - Polynomial - Scalar value - Resulting Polynomial - - - - Euclidean long division of two polynomials, returning the quotient q and remainder r of the two polynomials a and b such that a = q*b + r - - Left polynomial - Right polynomial - A tuple holding quotient in first and remainder in second - - - - Point-wise division of two Polynomials - - Left Polynomial - Right Polynomial - Resulting Polynomial - - - - Point-wise multiplication of two Polynomials - - Left Polynomial - Right Polynomial - Resulting Polynomial - - - - Division of two polynomials returning the quotient-with-remainder of the two polynomials given - - Right polynomial - A tuple holding quotient in first and remainder in second - - - - Addition of two Polynomials (piecewise) - - Left polynomial - Right polynomial - Resulting Polynomial - - - - adds a scalar to a polynomial. - - Polynomial - Scalar value - Resulting Polynomial - - - - adds a scalar to a polynomial. - - Scalar value - Polynomial - Resulting Polynomial - - - - Subtraction of two polynomial. - - Left polynomial - Right polynomial - Resulting Polynomial - - - - Subtracts a scalar from a polynomial. - - Polynomial - Scalar value - Resulting Polynomial - - - - Subtracts a polynomial from a scalar. - - Scalar value - Polynomial - Resulting Polynomial - - - - Negates a polynomial. - - Polynomial - Resulting Polynomial - - - - Multiplies a polynomial by a polynomial (convolution). - - Left polynomial - Right polynomial - resulting Polynomial - - - - Multiplies a polynomial by a scalar. - - Polynomial - Scalar value - Resulting Polynomial - - - - Multiplies a polynomial by a scalar. - - Scalar value - Polynomial - Resulting Polynomial - - - - Divides a polynomial by scalar value. - - Polynomial - Scalar value - Resulting Polynomial - - - - Format the polynomial in ascending order, e.g. "4.3 + 2.0x^2 - x^3". - - - - - Format the polynomial in descending order, e.g. "x^3 + 2.0x^2 - 4.3". - - - - - Format the polynomial in ascending order, e.g. "4.3 + 2.0x^2 - x^3". - - - - - Format the polynomial in descending order, e.g. "x^3 + 2.0x^2 - 4.3". - - - - - Format the polynomial in ascending order, e.g. "4.3 + 2.0x^2 - x^3". - - - - - Format the polynomial in descending order, e.g. "x^3 + 2.0x^2 - 4.3". - - - - - Format the polynomial in ascending order, e.g. "4.3 + 2.0x^2 - x^3". - - - - - Format the polynomial in descending order, e.g. "x^3 + 2.0x^2 - 4.3". - - - - - Creates a new object that is a copy of the current instance. - - - A new object that is a copy of this instance. - - - - - Utilities for working with floating point numbers. - - - - Useful links: - - - http://docs.sun.com/source/806-3568/ncg_goldberg.html#689 - What every computer scientist should know about floating-point arithmetic - - - http://en.wikipedia.org/wiki/Machine_epsilon - Gives the definition of machine epsilon - - - - - - - - Compares two doubles and determines which double is bigger. - a < b -> -1; a ~= b (almost equal according to parameter) -> 0; a > b -> +1. - - The first value. - The second value. - The absolute accuracy required for being almost equal. - - - - Compares two doubles and determines which double is bigger. - a < b -> -1; a ~= b (almost equal according to parameter) -> 0; a > b -> +1. - - The first value. - The second value. - The number of decimal places on which the values must be compared. Must be 1 or larger. - - - - Compares two doubles and determines which double is bigger. - a < b -> -1; a ~= b (almost equal according to parameter) -> 0; a > b -> +1. - - The first value. - The second value. - The relative accuracy required for being almost equal. - - - - Compares two doubles and determines which double is bigger. - a < b -> -1; a ~= b (almost equal according to parameter) -> 0; a > b -> +1. - - The first value. - The second value. - The number of decimal places on which the values must be compared. Must be 1 or larger. - - - - Compares two doubles and determines which double is bigger. - a < b -> -1; a ~= b (almost equal according to parameter) -> 0; a > b -> +1. - - The first value. - The second value. - The maximum error in terms of Units in Last Place (ulps), i.e. the maximum number of decimals that may be different. Must be 1 or larger. - - - - Compares two doubles and determines if the first value is larger than the second - value to within the specified number of decimal places or not. - - - - The values are equal if the difference between the two numbers is smaller than 10^(-numberOfDecimalPlaces). We divide by - two so that we have half the range on each side of the numbers, e.g. if == 2, then 0.01 will equal between - 0.005 and 0.015, but not 0.02 and not 0.00 - - - The first value. - The second value. - The number of decimal places. - true if the first value is larger than the second value; otherwise false. - - - - Compares two doubles and determines if the first value is larger than the second - value to within the specified number of decimal places or not. - - - - The values are equal if the difference between the two numbers is smaller than 10^(-numberOfDecimalPlaces). We divide by - two so that we have half the range on each side of the numbers, e.g. if == 2, then 0.01 will equal between - 0.005 and 0.015, but not 0.02 and not 0.00 - - - The first value. - The second value. - The number of decimal places. - true if the first value is larger than the second value; otherwise false. - - - - Compares two doubles and determines if the first value is larger than the second - value to within the specified number of decimal places or not. - - The first value. - The second value. - The absolute accuracy required for being almost equal. - true if the first value is larger than the second value; otherwise false. - - - - Compares two doubles and determines if the first value is larger than the second - value to within the specified number of decimal places or not. - - The first value. - The second value. - The absolute accuracy required for being almost equal. - true if the first value is larger than the second value; otherwise false. - - - - Compares two doubles and determines if the first value is larger than the second - value to within the specified number of decimal places or not. - - - - The values are equal if the difference between the two numbers is smaller than 10^(-numberOfDecimalPlaces). We divide by - two so that we have half the range on each side of the numbers, e.g. if == 2, then 0.01 will equal between - 0.005 and 0.015, but not 0.02 and not 0.00 - - - The first value. - The second value. - The number of decimal places. - true if the first value is larger than the second value; otherwise false. - - - - Compares two doubles and determines if the first value is larger than the second - value to within the specified number of decimal places or not. - - - - The values are equal if the difference between the two numbers is smaller than 10^(-numberOfDecimalPlaces). We divide by - two so that we have half the range on each side of the numbers, e.g. if == 2, then 0.01 will equal between - 0.005 and 0.015, but not 0.02 and not 0.00 - - - The first value. - The second value. - The number of decimal places. - true if the first value is larger than the second value; otherwise false. - - - - Compares two doubles and determines if the first value is larger than the second - value to within the specified number of decimal places or not. - - The first value. - The second value. - The relative accuracy required for being almost equal. - true if the first value is larger than the second value; otherwise false. - - - - Compares two doubles and determines if the first value is larger than the second - value to within the specified number of decimal places or not. - - The first value. - The second value. - The relative accuracy required for being almost equal. - true if the first value is larger than the second value; otherwise false. - - - - Compares two doubles and determines if the first value is larger than the second - value to within the tolerance or not. Equality comparison is based on the binary representation. - - The first value. - The second value. - The maximum number of floating point values for which the two values are considered equal. Must be 1 or larger. - true if the first value is larger than the second value; otherwise false. - - - - Compares two doubles and determines if the first value is larger than the second - value to within the tolerance or not. Equality comparison is based on the binary representation. - - The first value. - The second value. - The maximum number of floating point values for which the two values are considered equal. Must be 1 or larger. - true if the first value is larger than the second value; otherwise false. - - - - Compares two doubles and determines if the first value is smaller than the second - value to within the specified number of decimal places or not. - - - - The values are equal if the difference between the two numbers is smaller than 10^(-numberOfDecimalPlaces). We divide by - two so that we have half the range on each side of thg. if == 2, then 0.01 will equal between - 0.005 and 0.015, but not 0.02 and not 0.00 - - - The first value. - The second value. - The number of decimal places. - true if the first value is smaller than the second value; otherwise false. - - - - Compares two doubles and determines if the first value is smaller than the second - value to within the specified number of decimal places or not. - - - - The values are equal if the difference between the two numbers is smaller than 10^(-numberOfDecimalPlaces). We divide by - two so that we have half the range on each side of thg. if == 2, then 0.01 will equal between - 0.005 and 0.015, but not 0.02 and not 0.00 - - - The first value. - The second value. - The number of decimal places. - true if the first value is smaller than the second value; otherwise false. - - - - Compares two doubles and determines if the first value is smaller than the second - value to within the specified number of decimal places or not. - - The first value. - The second value. - The absolute accuracy required for being almost equal. - true if the first value is smaller than the second value; otherwise false. - - - - Compares two doubles and determines if the first value is smaller than the second - value to within the specified number of decimal places or not. - - The first value. - The second value. - The absolute accuracy required for being almost equal. - true if the first value is smaller than the second value; otherwise false. - - - - Compares two doubles and determines if the first value is smaller than the second - value to within the specified number of decimal places or not. - - The first value. - The second value. - The number of decimal places. - true if the first value is smaller than the second value; otherwise false. - - - - Compares two doubles and determines if the first value is smaller than the second - value to within the specified number of decimal places or not. - - The first value. - The second value. - The number of decimal places. - true if the first value is smaller than the second value; otherwise false. - - - - Compares two doubles and determines if the first value is smaller than the second - value to within the specified number of decimal places or not. - - The first value. - The second value. - The relative accuracy required for being almost equal. - true if the first value is smaller than the second value; otherwise false. - - - - Compares two doubles and determines if the first value is smaller than the second - value to within the specified number of decimal places or not. - - The first value. - The second value. - The relative accuracy required for being almost equal. - true if the first value is smaller than the second value; otherwise false. - - - - Compares two doubles and determines if the first value is smaller than the second - value to within the tolerance or not. Equality comparison is based on the binary representation. - - The first value. - The second value. - The maximum number of floating point values for which the two values are considered equal. Must be 1 or larger. - true if the first value is smaller than the second value; otherwise false. - - - - Compares two doubles and determines if the first value is smaller than the second - value to within the tolerance or not. Equality comparison is based on the binary representation. - - The first value. - The second value. - The maximum number of floating point values for which the two values are considered equal. Must be 1 or larger. - true if the first value is smaller than the second value; otherwise false. - - - - Checks if a given double values is finite, i.e. neither NaN nor inifnity - - The value to be checked fo finitenes. - - - - The number of binary digits used to represent the binary number for a double precision floating - point value. i.e. there are this many digits used to represent the - actual number, where in a number as: 0.134556 * 10^5 the digits are 0.134556 and the exponent is 5. - - - - - The number of binary digits used to represent the binary number for a single precision floating - point value. i.e. there are this many digits used to represent the - actual number, where in a number as: 0.134556 * 10^5 the digits are 0.134556 and the exponent is 5. - - - - - Standard epsilon, the maximum relative precision of IEEE 754 double-precision floating numbers (64 bit). - According to the definition of Prof. Demmel and used in LAPACK and Scilab. - - - - - Standard epsilon, the maximum relative precision of IEEE 754 double-precision floating numbers (64 bit). - According to the definition of Prof. Higham and used in the ISO C standard and MATLAB. - - - - - Standard epsilon, the maximum relative precision of IEEE 754 single-precision floating numbers (32 bit). - According to the definition of Prof. Demmel and used in LAPACK and Scilab. - - - - - Standard epsilon, the maximum relative precision of IEEE 754 single-precision floating numbers (32 bit). - According to the definition of Prof. Higham and used in the ISO C standard and MATLAB. - - - - - Actual double precision machine epsilon, the smallest number that can be subtracted from 1, yielding a results different than 1. - This is also known as unit roundoff error. According to the definition of Prof. Demmel. - On a standard machine this is equivalent to `DoublePrecision`. - - - - - Actual double precision machine epsilon, the smallest number that can be added to 1, yielding a results different than 1. - This is also known as unit roundoff error. According to the definition of Prof. Higham. - On a standard machine this is equivalent to `PositiveDoublePrecision`. - - - - - The number of significant decimal places of double-precision floating numbers (64 bit). - - - - - The number of significant decimal places of single-precision floating numbers (32 bit). - - - - - Value representing 10 * 2^(-53) = 1.11022302462516E-15 - - - - - Value representing 10 * 2^(-24) = 5.96046447753906E-07 - - - - - Returns the magnitude of the number. - - The value. - The magnitude of the number. - - - - Returns the magnitude of the number. - - The value. - The magnitude of the number. - - - - Returns the number divided by it's magnitude, effectively returning a number between -10 and 10. - - The value. - The value of the number. - - - - Returns a 'directional' long value. This is a long value which acts the same as a double, - e.g. a negative double value will return a negative double value starting at 0 and going - more negative as the double value gets more negative. - - The input double value. - A long value which is roughly the equivalent of the double value. - - - - Returns a 'directional' int value. This is a int value which acts the same as a float, - e.g. a negative float value will return a negative int value starting at 0 and going - more negative as the float value gets more negative. - - The input float value. - An int value which is roughly the equivalent of the double value. - - - - Increments a floating point number to the next bigger number representable by the data type. - - The value which needs to be incremented. - How many times the number should be incremented. - - The incrementation step length depends on the provided value. - Increment(double.MaxValue) will return positive infinity. - - The next larger floating point value. - - - - Decrements a floating point number to the next smaller number representable by the data type. - - The value which should be decremented. - How many times the number should be decremented. - - The decrementation step length depends on the provided value. - Decrement(double.MinValue) will return negative infinity. - - The next smaller floating point value. - - - - Forces small numbers near zero to zero, according to the specified absolute accuracy. - - The real number to coerce to zero, if it is almost zero. - The maximum count of numbers between the zero and the number . - - Zero if || is fewer than numbers from zero, otherwise. - - - - - Forces small numbers near zero to zero, according to the specified absolute accuracy. - - The real number to coerce to zero, if it is almost zero. - The maximum count of numbers between the zero and the number . - - Zero if || is fewer than numbers from zero, otherwise. - - - Thrown if is smaller than zero. - - - - - Forces small numbers near zero to zero, according to the specified absolute accuracy. - - The real number to coerce to zero, if it is almost zero. - The absolute threshold for to consider it as zero. - Zero if || is smaller than , otherwise. - - Thrown if is smaller than zero. - - - - - Forces small numbers near zero to zero. - - The real number to coerce to zero, if it is almost zero. - Zero if || is smaller than 2^(-53) = 1.11e-16, otherwise. - - - - Determines the range of floating point numbers that will match the specified value with the given tolerance. - - The value. - The ulps difference. - - Thrown if is smaller than zero. - - Tuple of the bottom and top range ends. - - - - Returns the floating point number that will match the value with the tolerance on the maximum size (i.e. the result is - always bigger than the value) - - The value. - The ulps difference. - The maximum floating point number which is larger than the given . - - - - Returns the floating point number that will match the value with the tolerance on the minimum size (i.e. the result is - always smaller than the value) - - The value. - The ulps difference. - The minimum floating point number which is smaller than the given . - - - - Determines the range of ulps that will match the specified value with the given tolerance. - - The value. - The relative difference. - - Thrown if is smaller than zero. - - - Thrown if is double.PositiveInfinity or double.NegativeInfinity. - - - Thrown if is double.NaN. - - - Tuple with the number of ULPS between the value and the value - relativeDifference as first, - and the number of ULPS between the value and the value + relativeDifference as second value. - - - - - Evaluates the count of numbers between two double numbers - - The first parameter. - The second parameter. - The second number is included in the number, thus two equal numbers evaluate to zero and two neighbor numbers evaluate to one. Therefore, what is returned is actually the count of numbers between plus 1. - The number of floating point values between and . - - Thrown if is double.PositiveInfinity or double.NegativeInfinity. - - - Thrown if is double.NaN. - - - Thrown if is double.PositiveInfinity or double.NegativeInfinity. - - - Thrown if is double.NaN. - - - - - Evaluates the minimum distance to the next distinguishable number near the argument value. - - The value used to determine the minimum distance. - - Relative Epsilon (positive double or NaN). - - Evaluates the negative epsilon. The more common positive epsilon is equal to two times this negative epsilon. - - - - - Evaluates the minimum distance to the next distinguishable number near the argument value. - - The value used to determine the minimum distance. - - Relative Epsilon (positive float or NaN). - - Evaluates the negative epsilon. The more common positive epsilon is equal to two times this negative epsilon. - - - - - Evaluates the minimum distance to the next distinguishable number near the argument value. - - The value used to determine the minimum distance. - Relative Epsilon (positive double or NaN) - Evaluates the positive epsilon. See also - - - - - Evaluates the minimum distance to the next distinguishable number near the argument value. - - The value used to determine the minimum distance. - Relative Epsilon (positive float or NaN) - Evaluates the positive epsilon. See also - - - - - Calculates the actual (negative) double precision machine epsilon - the smallest number that can be subtracted from 1, yielding a results different than 1. - This is also known as unit roundoff error. According to the definition of Prof. Demmel. - - Positive Machine epsilon - - - - Calculates the actual positive double precision machine epsilon - the smallest number that can be added to 1, yielding a results different than 1. - This is also known as unit roundoff error. According to the definition of Prof. Higham. - - Machine epsilon - - - - Round to a multiple of the provided positive basis. - - Number to be rounded. - The basis to whose multiples to round to. Must be positive. - - - - Round to a multiple of the provided positive basis. - - Number to be rounded. - The basis to whose multiples to round to. Must be positive. - - - - Round to a multiple of the provided positive basis. - - Number to be rounded. - The basis to whose multiples to round to. Must be positive. - - - - Round to a multiple of the provided positive basis. - - Number to be rounded. - The basis to whose powers to round to. Must be positive. - - - - Round to a multiple of the provided positive basis. - - Number to be rounded. - The basis to whose powers to round to. Must be positive. - - - - Round to the number closest to 10^(-decimals). Negative decimals to round within the integer part. - - Number to be rounded - If positive the number of decimals to round to. If negative the number of digits within the integer part to round, e.g. -3 will wound to the closes 1000. - To round 123456789 to hundreds Round(123456789, -2) = 123456800 - Rounded number - - - - Round to the number closest to 10^(-decimals). Negative decimals to round within the integer part. - - Number to be rounded - If positive the number of decimals to round to. If negative the number of digits within the integer part to round, e.g. -3 will wound to the closes 1000. - To round 123456789 to hundreds Round(123456789, -2) = 123456800 - Rounded number - - - - Round to the number closest to 10^(-decimals). Negative decimals to round within the integer part. - - Number to be rounded - If positive the number of decimals to round to. If negative the number of digits within the integer part to round, e.g. -3 will wound to the closes 1000. - To round 123456789 to hundreds Round(123456789, -2) = 123456800 - Rounded number - - - - Round to the number closest to 10^(-decimals). Negative decimals to round within the integer part. - - Number to be rounded - If positive the number of decimals to round to. If negative the number of digits within the integer part to round, e.g. -3 will wound to the closes 1000. - To round 123456789 to hundreds Round(123456789, -2) = 123456800 - Rounded number - - - - Round to the number closest to 10^(-decimals). Negative decimals to round within the integer part. - - Number to be rounded - If positive the number of decimals to round to. If negative the number of digits within the integer part to round, e.g. -3 will wound to the closes 1000. - To round 123456789 to hundreds Round(123456789, -2) = 123456800 - Rounded number - - - - Round to the number closest to 10^(-decimals). Negative decimals to round within the integer part. - - Number to be rounded - If positive the number of decimals to round to. If negative the number of digits within the integer part to round, e.g. -3 will wound to the closes 1000. - To round 123456789 to hundreds Round(123456789, -2) = 123456800 - Rounded number - - - - Round to the number closest to 10^(-decimals). Negative decimals to round within the integer part. - - Number to be rounded - If positive the number of decimals to round to. If negative the number of digits within the integer part to round, e.g. -3 will wound to the closes 1000. - To round 123456789 to hundreds Round(123456789, -2) = 123456800 - Rounded number - - - - Round to the number closest to 10^(-decimals). Negative decimals to round within the integer part. - - Number to be rounded - If positive the number of decimals to round to. If negative the number of digits within the integer part to round, e.g. -3 will wound to the closes 1000. - To round 123456789 to hundreds Round(123456789, -2) = 123456800 - Rounded number - - - - Round to the number closest to 10^(-decimals). Negative decimals to round within the integer part. - - Number to be rounded - If positive the number of decimals to round to. If negative the number of digits within the integer part to round, e.g. -3 will wound to the closes 1000. - To round 123456789 to hundreds Round(123456789, -2) = 123456800 - Rounded number - - - - Round to the number closest to 10^(-decimals). Negative decimals to round within the integer part. - - Number to be rounded - If positive the number of decimals to round to. If negative the number of digits within the integer part to round, e.g. -3 will wound to the closes 1000. - To round 123456789 to hundreds Round(123456789, -2) = 123456800 - Rounded number - - - - Compares two doubles and determines if they are equal - within the specified maximum absolute error. - - The norm of the first value (can be negative). - The norm of the second value (can be negative). - The norm of the difference of the two values (can be negative). - The absolute accuracy required for being almost equal. - True if both doubles are almost equal up to the specified maximum absolute error, false otherwise. - - - - Compares two doubles and determines if they are equal - within the specified maximum absolute error. - - The first value. - The second value. - The absolute accuracy required for being almost equal. - True if both doubles are almost equal up to the specified maximum absolute error, false otherwise. - - - - Compares two doubles and determines if they are equal - within the specified maximum error. - - The norm of the first value (can be negative). - The norm of the second value (can be negative). - The norm of the difference of the two values (can be negative). - The accuracy required for being almost equal. - True if both doubles are almost equal up to the specified maximum error, false otherwise. - - - - Compares two doubles and determines if they are equal - within the specified maximum error. - - The first value. - The second value. - The accuracy required for being almost equal. - True if both doubles are almost equal up to the specified maximum error, false otherwise. - - - - Compares two doubles and determines if they are equal within - the specified maximum error. - - The first value. - The second value. - The accuracy required for being almost equal. - - - - Compares two complex and determines if they are equal within - the specified maximum error. - - The first value. - The second value. - The accuracy required for being almost equal. - - - - Compares two complex and determines if they are equal within - the specified maximum error. - - The first value. - The second value. - The accuracy required for being almost equal. - - - - Compares two complex and determines if they are equal within - the specified maximum error. - - The first value. - The second value. - The accuracy required for being almost equal. - - - - Compares two doubles and determines if they are equal within - the specified maximum error. - - The first value. - The second value. - The accuracy required for being almost equal. - - - - Compares two complex and determines if they are equal within - the specified maximum error. - - The first value. - The second value. - The accuracy required for being almost equal. - - - - Compares two complex and determines if they are equal within - the specified maximum error. - - The first value. - The second value. - The accuracy required for being almost equal. - - - - Compares two complex and determines if they are equal within - the specified maximum error. - - The first value. - The second value. - The accuracy required for being almost equal. - - - - Checks whether two real numbers are almost equal. - - The first number - The second number - true if the two values differ by no more than 10 * 2^(-52); false otherwise. - - - - Checks whether two real numbers are almost equal. - - The first number - The second number - true if the two values differ by no more than 10 * 2^(-52); false otherwise. - - - - Checks whether two Complex numbers are almost equal. - - The first number - The second number - true if the two values differ by no more than 10 * 2^(-52); false otherwise. - - - - Checks whether two Complex numbers are almost equal. - - The first number - The second number - true if the two values differ by no more than 10 * 2^(-52); false otherwise. - - - - Checks whether two real numbers are almost equal. - - The first number - The second number - true if the two values differ by no more than 10 * 2^(-52); false otherwise. - - - - Checks whether two real numbers are almost equal. - - The first number - The second number - true if the two values differ by no more than 10 * 2^(-52); false otherwise. - - - - Checks whether two Complex numbers are almost equal. - - The first number - The second number - true if the two values differ by no more than 10 * 2^(-52); false otherwise. - - - - Checks whether two Complex numbers are almost equal. - - The first number - The second number - true if the two values differ by no more than 10 * 2^(-52); false otherwise. - - - - Compares two doubles and determines if they are equal to within the specified number of decimal places or not, using the - number of decimal places as an absolute measure. - - - - The values are equal if the difference between the two numbers is smaller than 0.5e-decimalPlaces. We divide by - two so that we have half the range on each side of the numbers, e.g. if == 2, then 0.01 will equal between - 0.005 and 0.015, but not 0.02 and not 0.00 - - - The norm of the first value (can be negative). - The norm of the second value (can be negative). - The norm of the difference of the two values (can be negative). - The number of decimal places. - - - - Compares two doubles and determines if they are equal to within the specified number of decimal places or not, using the - number of decimal places as an absolute measure. - - - - The values are equal if the difference between the two numbers is smaller than 0.5e-decimalPlaces. We divide by - two so that we have half the range on each side of the numbers, e.g. if == 2, then 0.01 will equal between - 0.005 and 0.015, but not 0.02 and not 0.00 - - - The first value. - The second value. - The number of decimal places. - - - - Compares two doubles and determines if they are equal to within the specified number of decimal places or not. If the numbers - are very close to zero an absolute difference is compared, otherwise the relative difference is compared. - - - - The values are equal if the difference between the two numbers is smaller than 10^(-numberOfDecimalPlaces). We divide by - two so that we have half the range on each side of the numbers, e.g. if == 2, then 0.01 will equal between - 0.005 and 0.015, but not 0.02 and not 0.00 - - - The norm of the first value (can be negative). - The norm of the second value (can be negative). - The norm of the difference of the two values (can be negative). - The number of decimal places. - Thrown if is smaller than zero. - - - - Compares two doubles and determines if they are equal to within the specified number of decimal places or not. If the numbers - are very close to zero an absolute difference is compared, otherwise the relative difference is compared. - - - - The values are equal if the difference between the two numbers is smaller than 10^(-numberOfDecimalPlaces). We divide by - two so that we have half the range on each side of the numbers, e.g. if == 2, then 0.01 will equal between - 0.005 and 0.015, but not 0.02 and not 0.00 - - - The first value. - The second value. - The number of decimal places. - - - - Compares two doubles and determines if they are equal to within the specified number of decimal places or not, using the - number of decimal places as an absolute measure. - - The first value. - The second value. - The number of decimal places. - - - - Compares two doubles and determines if they are equal to within the specified number of decimal places or not, using the - number of decimal places as an absolute measure. - - The first value. - The second value. - The number of decimal places. - - - - Compares two doubles and determines if they are equal to within the specified number of decimal places or not, using the - number of decimal places as an absolute measure. - - The first value. - The second value. - The number of decimal places. - - - - Compares two doubles and determines if they are equal to within the specified number of decimal places or not, using the - number of decimal places as an absolute measure. - - The first value. - The second value. - The number of decimal places. - - - - Compares two doubles and determines if they are equal to within the specified number of decimal places or not. If the numbers - are very close to zero an absolute difference is compared, otherwise the relative difference is compared. - - The first value. - The second value. - The number of decimal places. - - - - Compares two doubles and determines if they are equal to within the specified number of decimal places or not. If the numbers - are very close to zero an absolute difference is compared, otherwise the relative difference is compared. - - The first value. - The second value. - The number of decimal places. - - - - Compares two doubles and determines if they are equal to within the specified number of decimal places or not. If the numbers - are very close to zero an absolute difference is compared, otherwise the relative difference is compared. - - The first value. - The second value. - The number of decimal places. - - - - Compares two doubles and determines if they are equal to within the specified number of decimal places or not. If the numbers - are very close to zero an absolute difference is compared, otherwise the relative difference is compared. - - The first value. - The second value. - The number of decimal places. - - - - Compares two doubles and determines if they are equal to within the tolerance or not. Equality comparison is based on the binary representation. - - - - Determines the 'number' of floating point numbers between two values (i.e. the number of discrete steps - between the two numbers) and then checks if that is within the specified tolerance. So if a tolerance - of 1 is passed then the result will be true only if the two numbers have the same binary representation - OR if they are two adjacent numbers that only differ by one step. - - - The comparison method used is explained in http://www.cygnus-software.com/papers/comparingfloats/comparingfloats.htm . The article - at http://www.extremeoptimization.com/resources/Articles/FPDotNetConceptsAndFormats.aspx explains how to transform the C code to - .NET enabled code without using pointers and unsafe code. - - - The first value. - The second value. - The maximum number of floating point values between the two values. Must be 1 or larger. - Thrown if is smaller than one. - - - - Compares two floats and determines if they are equal to within the tolerance or not. Equality comparison is based on the binary representation. - - The first value. - The second value. - The maximum number of floating point values between the two values. Must be 1 or larger. - Thrown if is smaller than one. - - - - Compares two lists of doubles and determines if they are equal within the - specified maximum error. - - The first value list. - The second value list. - The accuracy required for being almost equal. - - - - Compares two lists of doubles and determines if they are equal within the - specified maximum error. - - The first value list. - The second value list. - The accuracy required for being almost equal. - - - - Compares two lists of doubles and determines if they are equal within the - specified maximum error. - - The first value list. - The second value list. - The accuracy required for being almost equal. - - - - Compares two lists of doubles and determines if they are equal within the - specified maximum error. - - The first value list. - The second value list. - The accuracy required for being almost equal. - - - - Compares two lists of doubles and determines if they are equal within the - specified maximum error. - - The first value list. - The second value list. - The accuracy required for being almost equal. - - - - Compares two lists of doubles and determines if they are equal within the - specified maximum error. - - The first value list. - The second value list. - The accuracy required for being almost equal. - - - - Compares two lists of doubles and determines if they are equal within the - specified maximum error. - - The first value list. - The second value list. - The accuracy required for being almost equal. - - - - Compares two lists of doubles and determines if they are equal within the - specified maximum error. - - The first value list. - The second value list. - The accuracy required for being almost equal. - - - - Compares two lists of doubles and determines if they are equal within the - specified maximum error. - - The first value list. - The second value list. - The number of decimal places. - - - - Compares two lists of doubles and determines if they are equal within the - specified maximum error. - - The first value list. - The second value list. - The number of decimal places. - - - - Compares two lists of doubles and determines if they are equal within the - specified maximum error. - - The first value list. - The second value list. - The number of decimal places. - - - - Compares two lists of doubles and determines if they are equal within the - specified maximum error. - - The first value list. - The second value list. - The number of decimal places. - - - - Compares two lists of doubles and determines if they are equal within the - specified maximum error. - - The first value list. - The second value list. - The number of decimal places. - - - - Compares two lists of doubles and determines if they are equal within the - specified maximum error. - - The first value list. - The second value list. - The number of decimal places. - - - - Compares two lists of doubles and determines if they are equal within the - specified maximum error. - - The first value list. - The second value list. - The number of decimal places. - - - - Compares two lists of doubles and determines if they are equal within the - specified maximum error. - - The first value list. - The second value list. - The number of decimal places. - - - - Compares two lists of doubles and determines if they are equal within the - specified maximum error. - - The first value list. - The second value list. - The accuracy required for being almost equal. - - - - Compares two lists of doubles and determines if they are equal within the - specified maximum error. - - The first value list. - The second value list. - The accuracy required for being almost equal. - - - - Compares two vectors and determines if they are equal within the specified maximum error. - - The first value. - The second value. - The accuracy required for being almost equal. - - - - Compares two vectors and determines if they are equal within the specified maximum error. - - The first value. - The second value. - The accuracy required for being almost equal. - - - - Compares two vectors and determines if they are equal to within the specified number - of decimal places or not, using the number of decimal places as an absolute measure. - - The first value. - The second value. - The number of decimal places. - - - - Compares two vectors and determines if they are equal to within the specified number of decimal places or not. - If the numbers are very close to zero an absolute difference is compared, otherwise the relative difference is compared. - - The first value. - The second value. - The number of decimal places. - - - - Compares two matrices and determines if they are equal within the specified maximum error. - - The first value. - The second value. - The accuracy required for being almost equal. - - - - Compares two matrices and determines if they are equal within the specified maximum error. - - The first value. - The second value. - The accuracy required for being almost equal. - - - - Compares two matrices and determines if they are equal to within the specified number - of decimal places or not, using the number of decimal places as an absolute measure. - - The first value. - The second value. - The number of decimal places. - - - - Compares two matrices and determines if they are equal to within the specified number of decimal places or not. - If the numbers are very close to zero an absolute difference is compared, otherwise the relative difference is compared. - - The first value. - The second value. - The number of decimal places. - - - - Support Interface for Precision Operations (like AlmostEquals). - - Type of the implementing class. - - - - Returns a Norm of a value of this type, which is appropriate for measuring how - close this value is to zero. - - A norm of this value. - - - - Returns a Norm of the difference of two values of this type, which is - appropriate for measuring how close together these two values are. - - The value to compare with. - A norm of the difference between this and the other value. - - - - Optional path to try to load native provider binaries from, - if the provider specific hint path is not set. - If neither is set, Numerics falls back to the provider specific - environment variables, or the default probing paths. - - - - - Gets or sets the Fourier transform provider. Consider to use UseNativeMKL or UseManaged instead. - - The linear algebra provider. - - - - Try to use a native provider, if available. - - - - - Use the best provider available. - - - - - Use a specific provider if configured, e.g. using the - "MathNetNumericsFFTProvider" environment variable, - or fall back to the best provider. - - - - - Try to find out whether the provider is available, at least in principle. - Verification may still fail if available, but it will certainly fail if unavailable. - - - - - Initialize and verify that the provided is indeed available. If not, fall back to alternatives like the managed provider - - - - - Frees memory buffers, caches and handles allocated in or to the provider. - Does not unload the provider itself, it is still usable afterwards. - - - - - Sequences with length greater than Math.Sqrt(Int32.MaxValue) + 1 - will cause k*k in the Bluestein sequence to overflow (GH-286). - - - - - Generate the bluestein sequence for the provided problem size. - - Number of samples. - Bluestein sequence exp(I*Pi*k^2/N) - - - - Generate the bluestein sequence for the provided problem size. - - Number of samples. - Bluestein sequence exp(I*Pi*k^2/N) - - - - Convolution with the bluestein sequence (Parallel Version). - - Sample Vector. - - - - Convolution with the bluestein sequence (Parallel Version). - - Sample Vector. - - - - Swap the real and imaginary parts of each sample. - - Sample Vector. - - - - Swap the real and imaginary parts of each sample. - - Sample Vector. - - - - Bluestein generic FFT for arbitrary sized sample vectors. - - - - - Bluestein generic FFT for arbitrary sized sample vectors. - - - - - Bluestein generic FFT for arbitrary sized sample vectors. - - - - - Bluestein generic FFT for arbitrary sized sample vectors. - - - - - Try to find out whether the provider is available, at least in principle. - Verification may still fail if available, but it will certainly fail if unavailable. - - - - - Initialize and verify that the provided is indeed available. If not, fall back to alternatives like the managed provider - - - - - Frees memory buffers, caches and handles allocated in or to the provider. - Does not unload the provider itself, it is still usable afterwards. - - - - - Radix-2 Reorder Helper Method - - Sample type - Sample vector - - - - Radix-2 Step Helper Method - - Sample vector. - Fourier series exponent sign. - Level Group Size. - Index inside of the level. - - - - Radix-2 Step Helper Method - - Sample vector. - Fourier series exponent sign. - Level Group Size. - Index inside of the level. - - - - Radix-2 generic FFT for power-of-two sized sample vectors. - - - - - Radix-2 generic FFT for power-of-two sized sample vectors. - - - - - Radix-2 generic FFT for power-of-two sized sample vectors. - - - - - Radix-2 generic FFT for power-of-two sized sample vectors. - - - - - Radix-2 generic FFT for power-of-two sample vectors (Parallel Version). - - - - - Radix-2 generic FFT for power-of-two sample vectors (Parallel Version). - - - - - Radix-2 generic FFT for power-of-two sample vectors (Parallel Version). - - - - - Radix-2 generic FFT for power-of-two sample vectors (Parallel Version). - - - - - Fully rescale the FFT result. - - Sample Vector. - - - - Fully rescale the FFT result. - - Sample Vector. - - - - Half rescale the FFT result (e.g. for symmetric transforms). - - Sample Vector. - - - - Fully rescale the FFT result (e.g. for symmetric transforms). - - Sample Vector. - - - - How to transpose a matrix. - - - - - Don't transpose a matrix. - - - - - Transpose a matrix. - - - - - Conjugate transpose a complex matrix. - - If a conjugate transpose is used with a real matrix, then the matrix is just transposed. - - - - Types of matrix norms. - - - - - The 1-norm. - - - - - The Frobenius norm. - - - - - The infinity norm. - - - - - The largest absolute value norm. - - - - - Interface to linear algebra algorithms that work off 1-D arrays. - - - - - Try to find out whether the provider is available, at least in principle. - Verification may still fail if available, but it will certainly fail if unavailable. - - - - - Initialize and verify that the provided is indeed available. If not, fall back to alternatives like the managed provider - - - - - Frees memory buffers, caches and handles allocated in or to the provider. - Does not unload the provider itself, it is still usable afterwards. - - - - - Interface to linear algebra algorithms that work off 1-D arrays. - - Supported data types are Double, Single, Complex, and Complex32. - - - - Adds a scaled vector to another: result = y + alpha*x. - - The vector to update. - The value to scale by. - The vector to add to . - The result of the addition. - This is similar to the AXPY BLAS routine. - - - - Scales an array. Can be used to scale a vector and a matrix. - - The scalar. - The values to scale. - This result of the scaling. - This is similar to the SCAL BLAS routine. - - - - Conjugates an array. Can be used to conjugate a vector and a matrix. - - The values to conjugate. - This result of the conjugation. - - - - Computes the dot product of x and y. - - The vector x. - The vector y. - The dot product of x and y. - This is equivalent to the DOT BLAS routine. - - - - Does a point wise add of two arrays z = x + y. This can be used - to add vectors or matrices. - - The array x. - The array y. - The result of the addition. - There is no equivalent BLAS routine, but many libraries - provide optimized (parallel and/or vectorized) versions of this - routine. - - - - Does a point wise subtraction of two arrays z = x - y. This can be used - to subtract vectors or matrices. - - The array x. - The array y. - The result of the subtraction. - There is no equivalent BLAS routine, but many libraries - provide optimized (parallel and/or vectorized) versions of this - routine. - - - - Does a point wise multiplication of two arrays z = x * y. This can be used - to multiply elements of vectors or matrices. - - The array x. - The array y. - The result of the point wise multiplication. - There is no equivalent BLAS routine, but many libraries - provide optimized (parallel and/or vectorized) versions of this - routine. - - - - Does a point wise division of two arrays z = x / y. This can be used - to divide elements of vectors or matrices. - - The array x. - The array y. - The result of the point wise division. - There is no equivalent BLAS routine, but many libraries - provide optimized (parallel and/or vectorized) versions of this - routine. - - - - Does a point wise power of two arrays z = x ^ y. This can be used - to raise elements of vectors or matrices to the powers of another vector or matrix. - - The array x. - The array y. - The result of the point wise power. - There is no equivalent BLAS routine, but many libraries - provide optimized (parallel and/or vectorized) versions of this - routine. - - - - Computes the requested of the matrix. - - The type of norm to compute. - The number of rows. - The number of columns. - The matrix to compute the norm from. - - The requested of the matrix. - - - - - Multiples two matrices. result = x * y - - The x matrix. - The number of rows in the x matrix. - The number of columns in the x matrix. - The y matrix. - The number of rows in the y matrix. - The number of columns in the y matrix. - Where to store the result of the multiplication. - This is a simplified version of the BLAS GEMM routine with alpha - set to 1.0 and beta set to 0.0, and x and y are not transposed. - - - - Multiplies two matrices and updates another with the result. c = alpha*op(a)*op(b) + beta*c - - How to transpose the matrix. - How to transpose the matrix. - The value to scale matrix. - The a matrix. - The number of rows in the matrix. - The number of columns in the matrix. - The b matrix - The number of rows in the matrix. - The number of columns in the matrix. - The value to scale the matrix. - The c matrix. - - - - Computes the LUP factorization of A. P*A = L*U. - - An by matrix. The matrix is overwritten with the - the LU factorization on exit. The lower triangular factor L is stored in under the diagonal of (the diagonal is always 1.0 - for the L factor). The upper triangular factor U is stored on and above the diagonal of . - The order of the square matrix . - On exit, it contains the pivot indices. The size of the array must be . - This is equivalent to the GETRF LAPACK routine. - - - - Computes the inverse of matrix using LU factorization. - - The N by N matrix to invert. Contains the inverse On exit. - The order of the square matrix . - This is equivalent to the GETRF and GETRI LAPACK routines. - - - - Computes the inverse of a previously factored matrix. - - The LU factored N by N matrix. Contains the inverse On exit. - The order of the square matrix . - The pivot indices of . - This is equivalent to the GETRI LAPACK routine. - - - - Solves A*X=B for X using LU factorization. - - The number of columns of B. - The square matrix A. - The order of the square matrix . - On entry the B matrix; on exit the X matrix. - This is equivalent to the GETRF and GETRS LAPACK routines. - - - - Solves A*X=B for X using a previously factored A matrix. - - The number of columns of B. - The factored A matrix. - The order of the square matrix . - The pivot indices of . - On entry the B matrix; on exit the X matrix. - This is equivalent to the GETRS LAPACK routine. - - - - Computes the Cholesky factorization of A. - - On entry, a square, positive definite matrix. On exit, the matrix is overwritten with the - the Cholesky factorization. - The number of rows or columns in the matrix. - This is equivalent to the POTRF LAPACK routine. - - - - Solves A*X=B for X using Cholesky factorization. - - The square, positive definite matrix A. - The number of rows and columns in A. - On entry the B matrix; on exit the X matrix. - The number of columns in the B matrix. - This is equivalent to the POTRF add POTRS LAPACK routines. - - - - Solves A*X=B for X using a previously factored A matrix. - - The square, positive definite matrix A. - The number of rows and columns in A. - On entry the B matrix; on exit the X matrix. - The number of columns in the B matrix. - This is equivalent to the POTRS LAPACK routine. - - - - Computes the full QR factorization of A. - - On entry, it is the M by N A matrix to factor. On exit, - it is overwritten with the R matrix of the QR factorization. - The number of rows in the A matrix. - The number of columns in the A matrix. - On exit, A M by M matrix that holds the Q matrix of the - QR factorization. - A min(m,n) vector. On exit, contains additional information - to be used by the QR solve routine. - This is similar to the GEQRF and ORGQR LAPACK routines. - - - - Computes the thin QR factorization of A where M > N. - - On entry, it is the M by N A matrix to factor. On exit, - it is overwritten with the Q matrix of the QR factorization. - The number of rows in the A matrix. - The number of columns in the A matrix. - On exit, A N by N matrix that holds the R matrix of the - QR factorization. - A min(m,n) vector. On exit, contains additional information - to be used by the QR solve routine. - This is similar to the GEQRF and ORGQR LAPACK routines. - - - - Solves A*X=B for X using QR factorization of A. - - The A matrix. - The number of rows in the A matrix. - The number of columns in the A matrix. - The B matrix. - The number of columns of B. - On exit, the solution matrix. - The type of QR factorization to perform. - Rows must be greater or equal to columns. - - - - Solves A*X=B for X using a previously QR factored matrix. - - The Q matrix obtained by QR factor. This is only used for the managed provider and can be - null for the native provider. The native provider uses the Q portion stored in the R matrix. - The R matrix obtained by calling . - The number of rows in the A matrix. - The number of columns in the A matrix. - Contains additional information on Q. Only used for the native solver - and can be null for the managed provider. - On entry the B matrix; on exit the X matrix. - The number of columns of B. - On exit, the solution matrix. - Rows must be greater or equal to columns. - The type of QR factorization to perform. - - - - Computes the singular value decomposition of A. - - Compute the singular U and VT vectors or not. - On entry, the M by N matrix to decompose. On exit, A may be overwritten. - The number of rows in the A matrix. - The number of columns in the A matrix. - The singular values of A in ascending value. - If is true, on exit U contains the left - singular vectors. - If is true, on exit VT contains the transposed - right singular vectors. - This is equivalent to the GESVD LAPACK routine. - - - - Solves A*X=B for X using the singular value decomposition of A. - - On entry, the M by N matrix to decompose. - The number of rows in the A matrix. - The number of columns in the A matrix. - The B matrix. - The number of columns of B. - On exit, the solution matrix. - - - - Solves A*X=B for X using a previously SVD decomposed matrix. - - The number of rows in the A matrix. - The number of columns in the A matrix. - The s values returned by . - The left singular vectors returned by . - The right singular vectors returned by . - The B matrix - The number of columns of B. - On exit, the solution matrix. - - - - Computes the eigenvalues and eigenvectors of a matrix. - - Whether the matrix is symmetric or not. - The order of the matrix. - The matrix to decompose. The length of the array must be order * order. - On output, the matrix contains the eigen vectors. The length of the array must be order * order. - On output, the eigen values (λ) of matrix in ascending value. The length of the array must . - On output, the block diagonal eigenvalue matrix. The length of the array must be order * order. - - - - Optional path to try to load native provider binaries from, - if the provider specific hint path is not set. - If neither is set, Numerics falls back to the provider specific - environment variables, or the default probing paths. - - - - - Gets or sets the linear algebra provider. - Consider to use UseNativeMKL or UseManaged instead. - - The linear algebra provider. - - - - Try to use a native provider, if available. - - - - - Use the best provider available. - - - - - Use a specific provider if configured, e.g. using the - "MathNetNumericsLAProvider" environment variable, - or fall back to the best provider. - - - - - The managed linear algebra provider. - - - The managed linear algebra provider. - - - The managed linear algebra provider. - - - The managed linear algebra provider. - - - The managed linear algebra provider. - - - - - Adds a scaled vector to another: result = y + alpha*x. - - The vector to update. - The value to scale by. - The vector to add to . - The result of the addition. - This is similar to the AXPY BLAS routine. - - - - Scales an array. Can be used to scale a vector and a matrix. - - The scalar. - The values to scale. - This result of the scaling. - This is similar to the SCAL BLAS routine. - - - - Conjugates an array. Can be used to conjugate a vector and a matrix. - - The values to conjugate. - This result of the conjugation. - - - - Computes the dot product of x and y. - - The vector x. - The vector y. - The dot product of x and y. - This is equivalent to the DOT BLAS routine. - - - - Does a point wise add of two arrays z = x + y. This can be used - to add vectors or matrices. - - The array x. - The array y. - The result of the addition. - There is no equivalent BLAS routine, but many libraries - provide optimized (parallel and/or vectorized) versions of this - routine. - - - - Does a point wise subtraction of two arrays z = x - y. This can be used - to subtract vectors or matrices. - - The array x. - The array y. - The result of the subtraction. - There is no equivalent BLAS routine, but many libraries - provide optimized (parallel and/or vectorized) versions of this - routine. - - - - Does a point wise multiplication of two arrays z = x * y. This can be used - to multiple elements of vectors or matrices. - - The array x. - The array y. - The result of the point wise multiplication. - There is no equivalent BLAS routine, but many libraries - provide optimized (parallel and/or vectorized) versions of this - routine. - - - - Does a point wise division of two arrays z = x / y. This can be used - to divide elements of vectors or matrices. - - The array x. - The array y. - The result of the point wise division. - There is no equivalent BLAS routine, but many libraries - provide optimized (parallel and/or vectorized) versions of this - routine. - - - - Does a point wise power of two arrays z = x ^ y. This can be used - to raise elements of vectors or matrices to the powers of another vector or matrix. - - The array x. - The array y. - The result of the point wise power. - There is no equivalent BLAS routine, but many libraries - provide optimized (parallel and/or vectorized) versions of this - routine. - - - - Computes the requested of the matrix. - - The type of norm to compute. - The number of rows. - The number of columns. - The matrix to compute the norm from. - - The requested of the matrix. - - - - - Multiples two matrices. result = x * y - - The x matrix. - The number of rows in the x matrix. - The number of columns in the x matrix. - The y matrix. - The number of rows in the y matrix. - The number of columns in the y matrix. - Where to store the result of the multiplication. - This is a simplified version of the BLAS GEMM routine with alpha - set to 1.0 and beta set to 0.0, and x and y are not transposed. - - - - Multiplies two matrices and updates another with the result. c = alpha*op(a)*op(b) + beta*c - - How to transpose the matrix. - How to transpose the matrix. - The value to scale matrix. - The a matrix. - The number of rows in the matrix. - The number of columns in the matrix. - The b matrix - The number of rows in the matrix. - The number of columns in the matrix. - The value to scale the matrix. - The c matrix. - - - - Computes the LUP factorization of A. P*A = L*U. - - An by matrix. The matrix is overwritten with the - the LU factorization on exit. The lower triangular factor L is stored in under the diagonal of (the diagonal is always 1.0 - for the L factor). The upper triangular factor U is stored on and above the diagonal of . - The order of the square matrix . - On exit, it contains the pivot indices. The size of the array must be . - This is equivalent to the GETRF LAPACK routine. - - - - Computes the inverse of matrix using LU factorization. - - The N by N matrix to invert. Contains the inverse On exit. - The order of the square matrix . - This is equivalent to the GETRF and GETRI LAPACK routines. - - - - Computes the inverse of a previously factored matrix. - - The LU factored N by N matrix. Contains the inverse On exit. - The order of the square matrix . - The pivot indices of . - This is equivalent to the GETRI LAPACK routine. - - - - Solves A*X=B for X using LU factorization. - - The number of columns of B. - The square matrix A. - The order of the square matrix . - On entry the B matrix; on exit the X matrix. - This is equivalent to the GETRF and GETRS LAPACK routines. - - - - Solves A*X=B for X using a previously factored A matrix. - - The number of columns of B. - The factored A matrix. - The order of the square matrix . - The pivot indices of . - On entry the B matrix; on exit the X matrix. - This is equivalent to the GETRS LAPACK routine. - - - - Computes the Cholesky factorization of A. - - On entry, a square, positive definite matrix. On exit, the matrix is overwritten with the - the Cholesky factorization. - The number of rows or columns in the matrix. - This is equivalent to the POTRF LAPACK routine. - - - - Calculate Cholesky step - - Factor matrix - Number of rows - Column start - Total columns - Multipliers calculated previously - Number of available processors - - - - Solves A*X=B for X using Cholesky factorization. - - The square, positive definite matrix A. - The number of rows and columns in A. - On entry the B matrix; on exit the X matrix. - The number of columns in the B matrix. - This is equivalent to the POTRF add POTRS LAPACK routines. - - - - Solves A*X=B for X using a previously factored A matrix. - - The square, positive definite matrix A. - The number of rows and columns in A. - The B matrix. - The number of columns in the B matrix. - This is equivalent to the POTRS LAPACK routine. - - - - Solves A*X=B for X using a previously factored A matrix. - - The square, positive definite matrix A. Has to be different than . - The number of rows and columns in A. - On entry the B matrix; on exit the X matrix. - The column to solve for. - - - - Computes the QR factorization of A. - - On entry, it is the M by N A matrix to factor. On exit, - it is overwritten with the R matrix of the QR factorization. - The number of rows in the A matrix. - The number of columns in the A matrix. - On exit, A M by M matrix that holds the Q matrix of the - QR factorization. - A min(m,n) vector. On exit, contains additional information - to be used by the QR solve routine. - This is similar to the GEQRF and ORGQR LAPACK routines. - - - - Computes the QR factorization of A. - - On entry, it is the M by N A matrix to factor. On exit, - it is overwritten with the Q matrix of the QR factorization. - The number of rows in the A matrix. - The number of columns in the A matrix. - On exit, A N by N matrix that holds the R matrix of the - QR factorization. - A min(m,n) vector. On exit, contains additional information - to be used by the QR solve routine. - This is similar to the GEQRF and ORGQR LAPACK routines. - - - - Perform calculation of Q or R - - Work array - Index of column in work array - Q or R matrices - The first row in - The last row - The first column - The last column - Number of available CPUs - - - - Generate column from initial matrix to work array - - Work array - Initial matrix - The number of rows in matrix - The first row - Column index - - - - Solves A*X=B for X using QR factorization of A. - - The A matrix. - The number of rows in the A matrix. - The number of columns in the A matrix. - The B matrix. - The number of columns of B. - On exit, the solution matrix. - The type of QR factorization to perform. - Rows must be greater or equal to columns. - - - - Solves A*X=B for X using a previously QR factored matrix. - - The Q matrix obtained by calling . - The R matrix obtained by calling . - The number of rows in the A matrix. - The number of columns in the A matrix. - Contains additional information on Q. Only used for the native solver - and can be null for the managed provider. - The B matrix. - The number of columns of B. - On exit, the solution matrix. - The type of QR factorization to perform. - Rows must be greater or equal to columns. - - - - Computes the singular value decomposition of A. - - Compute the singular U and VT vectors or not. - On entry, the M by N matrix to decompose. On exit, A may be overwritten. - The number of rows in the A matrix. - The number of columns in the A matrix. - The singular values of A in ascending value. - If is true, on exit U contains the left - singular vectors. - If is true, on exit VT contains the transposed - right singular vectors. - This is equivalent to the GESVD LAPACK routine. - - - - Solves A*X=B for X using the singular value decomposition of A. - - On entry, the M by N matrix to decompose. - The number of rows in the A matrix. - The number of columns in the A matrix. - The B matrix. - The number of columns of B. - On exit, the solution matrix. - - - - Solves A*X=B for X using a previously SVD decomposed matrix. - - The number of rows in the A matrix. - The number of columns in the A matrix. - The s values returned by . - The left singular vectors returned by . - The right singular vectors returned by . - The B matrix. - The number of columns of B. - On exit, the solution matrix. - - - - Computes the eigenvalues and eigenvectors of a matrix. - - Whether the matrix is symmetric or not. - The order of the matrix. - The matrix to decompose. The length of the array must be order * order. - On output, the matrix contains the eigen vectors. The length of the array must be order * order. - On output, the eigen values (λ) of matrix in ascending value. The length of the array must . - On output, the block diagonal eigenvalue matrix. The length of the array must be order * order. - - - - Reduces a complex Hermitian matrix to a real symmetric tridiagonal matrix using unitary similarity transformations. - - Source matrix to reduce - Output: Arrays for internal storage of real parts of eigenvalues - Output: Arrays for internal storage of imaginary parts of eigenvalues - Output: Arrays that contains further information about the transformations. - Order of initial matrix - This is derived from the Algol procedures HTRIDI by - Smith, Boyle, Dongarra, Garbow, Ikebe, Klema, Moler, and Wilkinson, Handbook for - Auto. Comp., Vol.ii-Linear Algebra, and the corresponding - Fortran subroutine in EISPACK. - - - - Symmetric tridiagonal QL algorithm. - - Data array of matrix V (eigenvectors) - Arrays for internal storage of real parts of eigenvalues - Arrays for internal storage of imaginary parts of eigenvalues - Order of initial matrix - This is derived from the Algol procedures tql2, by - Bowdler, Martin, Reinsch, and Wilkinson, Handbook for - Auto. Comp., Vol.ii-Linear Algebra, and the corresponding - Fortran subroutine in EISPACK. - - - - - Determines eigenvectors by undoing the symmetric tridiagonalize transformation - - Data array of matrix V (eigenvectors) - Previously tridiagonalized matrix by SymmetricTridiagonalize. - Contains further information about the transformations - Input matrix order - This is derived from the Algol procedures HTRIBK, by - by Smith, Boyle, Dongarra, Garbow, Ikebe, Klema, Moler, and Wilkinson, Handbook for - Auto. Comp., Vol.ii-Linear Algebra, and the corresponding - Fortran subroutine in EISPACK. - - - - Nonsymmetric reduction to Hessenberg form. - - Data array of matrix V (eigenvectors) - Array for internal storage of nonsymmetric Hessenberg form. - Order of initial matrix - This is derived from the Algol procedures orthes and ortran, - by Martin and Wilkinson, Handbook for Auto. Comp., - Vol.ii-Linear Algebra, and the corresponding - Fortran subroutines in EISPACK. - - - - Nonsymmetric reduction from Hessenberg to real Schur form. - - Data array of the eigenvectors - Data array of matrix V (eigenvectors) - Array for internal storage of nonsymmetric Hessenberg form. - Order of initial matrix - This is derived from the Algol procedure hqr2, - by Martin and Wilkinson, Handbook for Auto. Comp., - Vol.ii-Linear Algebra, and the corresponding - Fortran subroutine in EISPACK. - - - - Assumes that and have already been transposed. - - - - - Assumes that and have already been transposed. - - - - - Adds a scaled vector to another: result = y + alpha*x. - - The vector to update. - The value to scale by. - The vector to add to . - The result of the addition. - This is similar to the AXPY BLAS routine. - - - - Scales an array. Can be used to scale a vector and a matrix. - - The scalar. - The values to scale. - This result of the scaling. - This is similar to the SCAL BLAS routine. - - - - Conjugates an array. Can be used to conjugate a vector and a matrix. - - The values to conjugate. - This result of the conjugation. - - - - Computes the dot product of x and y. - - The vector x. - The vector y. - The dot product of x and y. - This is equivalent to the DOT BLAS routine. - - - - Does a point wise add of two arrays z = x + y. This can be used - to add vectors or matrices. - - The array x. - The array y. - The result of the addition. - There is no equivalent BLAS routine, but many libraries - provide optimized (parallel and/or vectorized) versions of this - routine. - - - - Does a point wise subtraction of two arrays z = x - y. This can be used - to subtract vectors or matrices. - - The array x. - The array y. - The result of the subtraction. - There is no equivalent BLAS routine, but many libraries - provide optimized (parallel and/or vectorized) versions of this - routine. - - - - Does a point wise multiplication of two arrays z = x * y. This can be used - to multiple elements of vectors or matrices. - - The array x. - The array y. - The result of the point wise multiplication. - There is no equivalent BLAS routine, but many libraries - provide optimized (parallel and/or vectorized) versions of this - routine. - - - - Does a point wise division of two arrays z = x / y. This can be used - to divide elements of vectors or matrices. - - The array x. - The array y. - The result of the point wise division. - There is no equivalent BLAS routine, but many libraries - provide optimized (parallel and/or vectorized) versions of this - routine. - - - - Does a point wise power of two arrays z = x ^ y. This can be used - to raise elements of vectors or matrices to the powers of another vector or matrix. - - The array x. - The array y. - The result of the point wise power. - There is no equivalent BLAS routine, but many libraries - provide optimized (parallel and/or vectorized) versions of this - routine. - - - - Computes the requested of the matrix. - - The type of norm to compute. - The number of rows. - The number of columns. - The matrix to compute the norm from. - The requested of the matrix. - - - - Multiples two matrices. result = x * y - - The x matrix. - The number of rows in the x matrix. - The number of columns in the x matrix. - The y matrix. - The number of rows in the y matrix. - The number of columns in the y matrix. - Where to store the result of the multiplication. - This is a simplified version of the BLAS GEMM routine with alpha - set to 1.0 and beta set to 0.0, and x and y are not transposed. - - - - Multiplies two matrices and updates another with the result. c = alpha*op(a)*op(b) + beta*c - - How to transpose the matrix. - How to transpose the matrix. - The value to scale matrix. - The a matrix. - The number of rows in the matrix. - The number of columns in the matrix. - The b matrix - The number of rows in the matrix. - The number of columns in the matrix. - The value to scale the matrix. - The c matrix. - - - - Computes the LUP factorization of A. P*A = L*U. - - An by matrix. The matrix is overwritten with the - the LU factorization on exit. The lower triangular factor L is stored in under the diagonal of (the diagonal is always 1.0 - for the L factor). The upper triangular factor U is stored on and above the diagonal of . - The order of the square matrix . - On exit, it contains the pivot indices. The size of the array must be . - This is equivalent to the GETRF LAPACK routine. - - - - Computes the inverse of matrix using LU factorization. - - The N by N matrix to invert. Contains the inverse On exit. - The order of the square matrix . - This is equivalent to the GETRF and GETRI LAPACK routines. - - - - Computes the inverse of a previously factored matrix. - - The LU factored N by N matrix. Contains the inverse On exit. - The order of the square matrix . - The pivot indices of . - This is equivalent to the GETRI LAPACK routine. - - - - Solves A*X=B for X using LU factorization. - - The number of columns of B. - The square matrix A. - The order of the square matrix . - On entry the B matrix; on exit the X matrix. - This is equivalent to the GETRF and GETRS LAPACK routines. - - - - Solves A*X=B for X using a previously factored A matrix. - - The number of columns of B. - The factored A matrix. - The order of the square matrix . - The pivot indices of . - On entry the B matrix; on exit the X matrix. - This is equivalent to the GETRS LAPACK routine. - - - - Computes the Cholesky factorization of A. - - On entry, a square, positive definite matrix. On exit, the matrix is overwritten with the - the Cholesky factorization. - The number of rows or columns in the matrix. - This is equivalent to the POTRF LAPACK routine. - - - - Calculate Cholesky step - - Factor matrix - Number of rows - Column start - Total columns - Multipliers calculated previously - Number of available processors - - - - Solves A*X=B for X using Cholesky factorization. - - The square, positive definite matrix A. - The number of rows and columns in A. - On entry the B matrix; on exit the X matrix. - The number of columns in the B matrix. - This is equivalent to the POTRF add POTRS LAPACK routines. - - - - Solves A*X=B for X using a previously factored A matrix. - - The square, positive definite matrix A. - The number of rows and columns in A. - On entry the B matrix; on exit the X matrix. - The number of columns in the B matrix. - This is equivalent to the POTRS LAPACK routine. - - - - Solves A*X=B for X using a previously factored A matrix. - - The square, positive definite matrix A. Has to be different than . - The number of rows and columns in A. - On entry the B matrix; on exit the X matrix. - The column to solve for. - - - - Computes the QR factorization of A. - - On entry, it is the M by N A matrix to factor. On exit, - it is overwritten with the R matrix of the QR factorization. - The number of rows in the A matrix. - The number of columns in the A matrix. - On exit, A M by M matrix that holds the Q matrix of the - QR factorization. - A min(m,n) vector. On exit, contains additional information - to be used by the QR solve routine. - This is similar to the GEQRF and ORGQR LAPACK routines. - - - - Computes the QR factorization of A. - - On entry, it is the M by N A matrix to factor. On exit, - it is overwritten with the Q matrix of the QR factorization. - The number of rows in the A matrix. - The number of columns in the A matrix. - On exit, A N by N matrix that holds the R matrix of the - QR factorization. - A min(m,n) vector. On exit, contains additional information - to be used by the QR solve routine. - This is similar to the GEQRF and ORGQR LAPACK routines. - - - - Perform calculation of Q or R - - Work array - Index of column in work array - Q or R matrices - The first row in - The last row - The first column - The last column - Number of available CPUs - - - - Generate column from initial matrix to work array - - Work array - Initial matrix - The number of rows in matrix - The first row - Column index - - - - Solves A*X=B for X using QR factorization of A. - - The A matrix. - The number of rows in the A matrix. - The number of columns in the A matrix. - The B matrix. - The number of columns of B. - On exit, the solution matrix. - The type of QR factorization to perform. - Rows must be greater or equal to columns. - - - - Solves A*X=B for X using a previously QR factored matrix. - - The Q matrix obtained by calling . - The R matrix obtained by calling . - The number of rows in the A matrix. - The number of columns in the A matrix. - Contains additional information on Q. Only used for the native solver - and can be null for the managed provider. - The B matrix. - The number of columns of B. - On exit, the solution matrix. - The type of QR factorization to perform. - Rows must be greater or equal to columns. - - - - Computes the singular value decomposition of A. - - Compute the singular U and VT vectors or not. - On entry, the M by N matrix to decompose. On exit, A may be overwritten. - The number of rows in the A matrix. - The number of columns in the A matrix. - The singular values of A in ascending value. - If is true, on exit U contains the left - singular vectors. - If is true, on exit VT contains the transposed - right singular vectors. - This is equivalent to the GESVD LAPACK routine. - - - - Solves A*X=B for X using the singular value decomposition of A. - - On entry, the M by N matrix to decompose. - The number of rows in the A matrix. - The number of columns in the A matrix. - The B matrix. - The number of columns of B. - On exit, the solution matrix. - - - - Solves A*X=B for X using a previously SVD decomposed matrix. - - The number of rows in the A matrix. - The number of columns in the A matrix. - The s values returned by . - The left singular vectors returned by . - The right singular vectors returned by . - The B matrix. - The number of columns of B. - On exit, the solution matrix. - - - - Computes the eigenvalues and eigenvectors of a matrix. - - Whether the matrix is symmetric or not. - The order of the matrix. - The matrix to decompose. The length of the array must be order * order. - On output, the matrix contains the eigen vectors. The length of the array must be order * order. - On output, the eigen values (λ) of matrix in ascending value. The length of the array must . - On output, the block diagonal eigenvalue matrix. The length of the array must be order * order. - - - - Reduces a complex Hermitian matrix to a real symmetric tridiagonal matrix using unitary similarity transformations. - - Source matrix to reduce - Output: Arrays for internal storage of real parts of eigenvalues - Output: Arrays for internal storage of imaginary parts of eigenvalues - Output: Arrays that contains further information about the transformations. - Order of initial matrix - This is derived from the Algol procedures HTRIDI by - Smith, Boyle, Dongarra, Garbow, Ikebe, Klema, Moler, and Wilkinson, Handbook for - Auto. Comp., Vol.ii-Linear Algebra, and the corresponding - Fortran subroutine in EISPACK. - - - - Symmetric tridiagonal QL algorithm. - - Data array of matrix V (eigenvectors) - Arrays for internal storage of real parts of eigenvalues - Arrays for internal storage of imaginary parts of eigenvalues - Order of initial matrix - This is derived from the Algol procedures tql2, by - Bowdler, Martin, Reinsch, and Wilkinson, Handbook for - Auto. Comp., Vol.ii-Linear Algebra, and the corresponding - Fortran subroutine in EISPACK. - - - - - Determines eigenvectors by undoing the symmetric tridiagonalize transformation - - Data array of matrix V (eigenvectors) - Previously tridiagonalized matrix by SymmetricTridiagonalize. - Contains further information about the transformations - Input matrix order - This is derived from the Algol procedures HTRIBK, by - by Smith, Boyle, Dongarra, Garbow, Ikebe, Klema, Moler, and Wilkinson, Handbook for - Auto. Comp., Vol.ii-Linear Algebra, and the corresponding - Fortran subroutine in EISPACK. - - - - Nonsymmetric reduction to Hessenberg form. - - Data array of matrix V (eigenvectors) - Array for internal storage of nonsymmetric Hessenberg form. - Order of initial matrix - This is derived from the Algol procedures orthes and ortran, - by Martin and Wilkinson, Handbook for Auto. Comp., - Vol.ii-Linear Algebra, and the corresponding - Fortran subroutines in EISPACK. - - - - Nonsymmetric reduction from Hessenberg to real Schur form. - - Data array of the eigenvectors - Data array of matrix V (eigenvectors) - Array for internal storage of nonsymmetric Hessenberg form. - Order of initial matrix - This is derived from the Algol procedure hqr2, - by Martin and Wilkinson, Handbook for Auto. Comp., - Vol.ii-Linear Algebra, and the corresponding - Fortran subroutine in EISPACK. - - - - Assumes that and have already been transposed. - - - - - Assumes that and have already been transposed. - - - - - Try to find out whether the provider is available, at least in principle. - Verification may still fail if available, but it will certainly fail if unavailable. - - - - - Initialize and verify that the provided is indeed available. If not, fall back to alternatives like the managed provider - - - - - Frees memory buffers, caches and handles allocated in or to the provider. - Does not unload the provider itself, it is still usable afterwards. - - - - - Assumes that and have already been transposed. - - - - - Assumes that and have already been transposed. - - - - - Adds a scaled vector to another: result = y + alpha*x. - - The vector to update. - The value to scale by. - The vector to add to . - The result of the addition. - This is similar to the AXPY BLAS routine. - - - - Scales an array. Can be used to scale a vector and a matrix. - - The scalar. - The values to scale. - This result of the scaling. - This is similar to the SCAL BLAS routine. - - - - Conjugates an array. Can be used to conjugate a vector and a matrix. - - The values to conjugate. - This result of the conjugation. - - - - Computes the dot product of x and y. - - The vector x. - The vector y. - The dot product of x and y. - This is equivalent to the DOT BLAS routine. - - - - Does a point wise add of two arrays z = x + y. This can be used - to add vectors or matrices. - - The array x. - The array y. - The result of the addition. - There is no equivalent BLAS routine, but many libraries - provide optimized (parallel and/or vectorized) versions of this - routine. - - - - Does a point wise subtraction of two arrays z = x - y. This can be used - to subtract vectors or matrices. - - The array x. - The array y. - The result of the subtraction. - There is no equivalent BLAS routine, but many libraries - provide optimized (parallel and/or vectorized) versions of this - routine. - - - - Does a point wise multiplication of two arrays z = x * y. This can be used - to multiple elements of vectors or matrices. - - The array x. - The array y. - The result of the point wise multiplication. - There is no equivalent BLAS routine, but many libraries - provide optimized (parallel and/or vectorized) versions of this - routine. - - - - Does a point wise division of two arrays z = x / y. This can be used - to divide elements of vectors or matrices. - - The array x. - The array y. - The result of the point wise division. - There is no equivalent BLAS routine, but many libraries - provide optimized (parallel and/or vectorized) versions of this - routine. - - - - Does a point wise power of two arrays z = x ^ y. This can be used - to raise elements of vectors or matrices to the powers of another vector or matrix. - - The array x. - The array y. - The result of the point wise power. - There is no equivalent BLAS routine, but many libraries - provide optimized (parallel and/or vectorized) versions of this - routine. - - - - Computes the requested of the matrix. - - The type of norm to compute. - The number of rows. - The number of columns. - The matrix to compute the norm from. - - The requested of the matrix. - - - - - Multiples two matrices. result = x * y - - The x matrix. - The number of rows in the x matrix. - The number of columns in the x matrix. - The y matrix. - The number of rows in the y matrix. - The number of columns in the y matrix. - Where to store the result of the multiplication. - This is a simplified version of the BLAS GEMM routine with alpha - set to 1.0 and beta set to 0.0, and x and y are not transposed. - - - - Multiplies two matrices and updates another with the result. c = alpha*op(a)*op(b) + beta*c - - How to transpose the matrix. - How to transpose the matrix. - The value to scale matrix. - The a matrix. - The number of rows in the matrix. - The number of columns in the matrix. - The b matrix - The number of rows in the matrix. - The number of columns in the matrix. - The value to scale the matrix. - The c matrix. - - - - Computes the LUP factorization of A. P*A = L*U. - - An by matrix. The matrix is overwritten with the - the LU factorization on exit. The lower triangular factor L is stored in under the diagonal of (the diagonal is always 1.0 - for the L factor). The upper triangular factor U is stored on and above the diagonal of . - The order of the square matrix . - On exit, it contains the pivot indices. The size of the array must be . - This is equivalent to the GETRF LAPACK routine. - - - - Computes the inverse of matrix using LU factorization. - - The N by N matrix to invert. Contains the inverse On exit. - The order of the square matrix . - This is equivalent to the GETRF and GETRI LAPACK routines. - - - - Computes the inverse of a previously factored matrix. - - The LU factored N by N matrix. Contains the inverse On exit. - The order of the square matrix . - The pivot indices of . - This is equivalent to the GETRI LAPACK routine. - - - - Solves A*X=B for X using LU factorization. - - The number of columns of B. - The square matrix A. - The order of the square matrix . - On entry the B matrix; on exit the X matrix. - This is equivalent to the GETRF and GETRS LAPACK routines. - - - - Solves A*X=B for X using a previously factored A matrix. - - The number of columns of B. - The factored A matrix. - The order of the square matrix . - The pivot indices of . - On entry the B matrix; on exit the X matrix. - This is equivalent to the GETRS LAPACK routine. - - - - Computes the Cholesky factorization of A. - - On entry, a square, positive definite matrix. On exit, the matrix is overwritten with the - the Cholesky factorization. - The number of rows or columns in the matrix. - This is equivalent to the POTRF LAPACK routine. - - - - Calculate Cholesky step - - Factor matrix - Number of rows - Column start - Total columns - Multipliers calculated previously - Number of available processors - - - - Solves A*X=B for X using Cholesky factorization. - - The square, positive definite matrix A. - The number of rows and columns in A. - On entry the B matrix; on exit the X matrix. - The number of columns in the B matrix. - This is equivalent to the POTRF add POTRS LAPACK routines. - - - - Solves A*X=B for X using a previously factored A matrix. - - The square, positive definite matrix A. Has to be different than . - The number of rows and columns in A. - On entry the B matrix; on exit the X matrix. - The number of columns in the B matrix. - This is equivalent to the POTRS LAPACK routine. - - - - Solves A*X=B for X using a previously factored A matrix. - - The square, positive definite matrix A. Has to be different than . - The number of rows and columns in A. - On entry the B matrix; on exit the X matrix. - The column to solve for. - - - - Computes the QR factorization of A. - - On entry, it is the M by N A matrix to factor. On exit, - it is overwritten with the R matrix of the QR factorization. - The number of rows in the A matrix. - The number of columns in the A matrix. - On exit, A M by M matrix that holds the Q matrix of the - QR factorization. - A min(m,n) vector. On exit, contains additional information - to be used by the QR solve routine. - This is similar to the GEQRF and ORGQR LAPACK routines. - - - - Computes the QR factorization of A. - - On entry, it is the M by N A matrix to factor. On exit, - it is overwritten with the Q matrix of the QR factorization. - The number of rows in the A matrix. - The number of columns in the A matrix. - On exit, A N by N matrix that holds the R matrix of the - QR factorization. - A min(m,n) vector. On exit, contains additional information - to be used by the QR solve routine. - This is similar to the GEQRF and ORGQR LAPACK routines. - - - - Perform calculation of Q or R - - Work array - Index of column in work array - Q or R matrices - The first row in - The last row - The first column - The last column - Number of available CPUs - - - - Generate column from initial matrix to work array - - Work array - Initial matrix - The number of rows in matrix - The first row - Column index - - - - Solves A*X=B for X using QR factorization of A. - - The A matrix. - The number of rows in the A matrix. - The number of columns in the A matrix. - The B matrix. - The number of columns of B. - On exit, the solution matrix. - The type of QR factorization to perform. - Rows must be greater or equal to columns. - - - - Solves A*X=B for X using a previously QR factored matrix. - - The Q matrix obtained by calling . - The R matrix obtained by calling . - The number of rows in the A matrix. - The number of columns in the A matrix. - Contains additional information on Q. Only used for the native solver - and can be null for the managed provider. - The B matrix. - The number of columns of B. - On exit, the solution matrix. - The type of QR factorization to perform. - Rows must be greater or equal to columns. - - - - Computes the singular value decomposition of A. - - Compute the singular U and VT vectors or not. - On entry, the M by N matrix to decompose. On exit, A may be overwritten. - The number of rows in the A matrix. - The number of columns in the A matrix. - The singular values of A in ascending value. - If is true, on exit U contains the left - singular vectors. - If is true, on exit VT contains the transposed - right singular vectors. - This is equivalent to the GESVD LAPACK routine. - - - - Given the Cartesian coordinates (da, db) of a point p, these function return the parameters da, db, c, and s - associated with the Givens rotation that zeros the y-coordinate of the point. - - Provides the x-coordinate of the point p. On exit contains the parameter r associated with the Givens rotation - Provides the y-coordinate of the point p. On exit contains the parameter z associated with the Givens rotation - Contains the parameter c associated with the Givens rotation - Contains the parameter s associated with the Givens rotation - This is equivalent to the DROTG LAPACK routine. - - - - Solves A*X=B for X using the singular value decomposition of A. - - On entry, the M by N matrix to decompose. - The number of rows in the A matrix. - The number of columns in the A matrix. - The B matrix. - The number of columns of B. - On exit, the solution matrix. - - - - Solves A*X=B for X using a previously SVD decomposed matrix. - - The number of rows in the A matrix. - The number of columns in the A matrix. - The s values returned by . - The left singular vectors returned by . - The right singular vectors returned by . - The B matrix. - The number of columns of B. - On exit, the solution matrix. - - - - Computes the eigenvalues and eigenvectors of a matrix. - - Whether the matrix is symmetric or not. - The order of the matrix. - The matrix to decompose. The length of the array must be order * order. - On output, the matrix contains the eigen vectors. The length of the array must be order * order. - On output, the eigen values (λ) of matrix in ascending value. The length of the array must . - On output, the block diagonal eigenvalue matrix. The length of the array must be order * order. - - - - Symmetric Householder reduction to tridiagonal form. - - Data array of matrix V (eigenvectors) - Arrays for internal storage of real parts of eigenvalues - Arrays for internal storage of imaginary parts of eigenvalues - Order of initial matrix - This is derived from the Algol procedures tred2 by - Bowdler, Martin, Reinsch, and Wilkinson, Handbook for - Auto. Comp., Vol.ii-Linear Algebra, and the corresponding - Fortran subroutine in EISPACK. - - - - Symmetric tridiagonal QL algorithm. - - Data array of matrix V (eigenvectors) - Arrays for internal storage of real parts of eigenvalues - Arrays for internal storage of imaginary parts of eigenvalues - Order of initial matrix - This is derived from the Algol procedures tql2, by - Bowdler, Martin, Reinsch, and Wilkinson, Handbook for - Auto. Comp., Vol.ii-Linear Algebra, and the corresponding - Fortran subroutine in EISPACK. - - - - - Nonsymmetric reduction to Hessenberg form. - - Data array of matrix V (eigenvectors) - Array for internal storage of nonsymmetric Hessenberg form. - Order of initial matrix - This is derived from the Algol procedures orthes and ortran, - by Martin and Wilkinson, Handbook for Auto. Comp., - Vol.ii-Linear Algebra, and the corresponding - Fortran subroutines in EISPACK. - - - - Nonsymmetric reduction from Hessenberg to real Schur form. - - Data array of matrix V (eigenvectors) - Array for internal storage of nonsymmetric Hessenberg form. - Arrays for internal storage of real parts of eigenvalues - Arrays for internal storage of imaginary parts of eigenvalues - Order of initial matrix - This is derived from the Algol procedure hqr2, - by Martin and Wilkinson, Handbook for Auto. Comp., - Vol.ii-Linear Algebra, and the corresponding - Fortran subroutine in EISPACK. - - - - - Complex scalar division X/Y. - - Real part of X - Imaginary part of X - Real part of Y - Imaginary part of Y - Division result as a number. - - - - Adds a scaled vector to another: result = y + alpha*x. - - The vector to update. - The value to scale by. - The vector to add to . - The result of the addition. - This is similar to the AXPY BLAS routine. - - - - Scales an array. Can be used to scale a vector and a matrix. - - The scalar. - The values to scale. - This result of the scaling. - This is similar to the SCAL BLAS routine. - - - - Conjugates an array. Can be used to conjugate a vector and a matrix. - - The values to conjugate. - This result of the conjugation. - - - - Computes the dot product of x and y. - - The vector x. - The vector y. - The dot product of x and y. - This is equivalent to the DOT BLAS routine. - - - - Does a point wise add of two arrays z = x + y. This can be used - to add vectors or matrices. - - The array x. - The array y. - The result of the addition. - There is no equivalent BLAS routine, but many libraries - provide optimized (parallel and/or vectorized) versions of this - routine. - - - - Does a point wise subtraction of two arrays z = x - y. This can be used - to subtract vectors or matrices. - - The array x. - The array y. - The result of the subtraction. - There is no equivalent BLAS routine, but many libraries - provide optimized (parallel and/or vectorized) versions of this - routine. - - - - Does a point wise multiplication of two arrays z = x * y. This can be used - to multiple elements of vectors or matrices. - - The array x. - The array y. - The result of the point wise multiplication. - There is no equivalent BLAS routine, but many libraries - provide optimized (parallel and/or vectorized) versions of this - routine. - - - - Does a point wise division of two arrays z = x / y. This can be used - to divide elements of vectors or matrices. - - The array x. - The array y. - The result of the point wise division. - There is no equivalent BLAS routine, but many libraries - provide optimized (parallel and/or vectorized) versions of this - routine. - - - - Does a point wise power of two arrays z = x ^ y. This can be used - to raise elements of vectors or matrices to the powers of another vector or matrix. - - The array x. - The array y. - The result of the point wise power. - There is no equivalent BLAS routine, but many libraries - provide optimized (parallel and/or vectorized) versions of this - routine. - - - - Computes the requested of the matrix. - - The type of norm to compute. - The number of rows. - The number of columns. - The matrix to compute the norm from. - - The requested of the matrix. - - - - - Multiples two matrices. result = x * y - - The x matrix. - The number of rows in the x matrix. - The number of columns in the x matrix. - The y matrix. - The number of rows in the y matrix. - The number of columns in the y matrix. - Where to store the result of the multiplication. - This is a simplified version of the BLAS GEMM routine with alpha - set to 1.0 and beta set to 0.0, and x and y are not transposed. - - - - Multiplies two matrices and updates another with the result. c = alpha*op(a)*op(b) + beta*c - - How to transpose the matrix. - How to transpose the matrix. - The value to scale matrix. - The a matrix. - The number of rows in the matrix. - The number of columns in the matrix. - The b matrix - The number of rows in the matrix. - The number of columns in the matrix. - The value to scale the matrix. - The c matrix. - - - - Computes the LUP factorization of A. P*A = L*U. - - An by matrix. The matrix is overwritten with the - the LU factorization on exit. The lower triangular factor L is stored in under the diagonal of (the diagonal is always 1.0 - for the L factor). The upper triangular factor U is stored on and above the diagonal of . - The order of the square matrix . - On exit, it contains the pivot indices. The size of the array must be . - This is equivalent to the GETRF LAPACK routine. - - - - Computes the inverse of matrix using LU factorization. - - The N by N matrix to invert. Contains the inverse On exit. - The order of the square matrix . - This is equivalent to the GETRF and GETRI LAPACK routines. - - - - Computes the inverse of a previously factored matrix. - - The LU factored N by N matrix. Contains the inverse On exit. - The order of the square matrix . - The pivot indices of . - This is equivalent to the GETRI LAPACK routine. - - - - Solves A*X=B for X using LU factorization. - - The number of columns of B. - The square matrix A. - The order of the square matrix . - On entry the B matrix; on exit the X matrix. - This is equivalent to the GETRF and GETRS LAPACK routines. - - - - Solves A*X=B for X using a previously factored A matrix. - - The number of columns of B. - The factored A matrix. - The order of the square matrix . - The pivot indices of . - On entry the B matrix; on exit the X matrix. - This is equivalent to the GETRS LAPACK routine. - - - - Computes the Cholesky factorization of A. - - On entry, a square, positive definite matrix. On exit, the matrix is overwritten with the - the Cholesky factorization. - The number of rows or columns in the matrix. - This is equivalent to the POTRF LAPACK routine. - - - - Calculate Cholesky step - - Factor matrix - Number of rows - Column start - Total columns - Multipliers calculated previously - Number of available processors - - - - Solves A*X=B for X using Cholesky factorization. - - The square, positive definite matrix A. - The number of rows and columns in A. - On entry the B matrix; on exit the X matrix. - The number of columns in the B matrix. - This is equivalent to the POTRF add POTRS LAPACK routines. - - - - Solves A*X=B for X using a previously factored A matrix. - - The square, positive definite matrix A. - The number of rows and columns in A. - On entry the B matrix; on exit the X matrix. - The number of columns in the B matrix. - This is equivalent to the POTRS LAPACK routine. - - - - Solves A*X=B for X using a previously factored A matrix. - - The square, positive definite matrix A. Has to be different than . - The number of rows and columns in A. - On entry the B matrix; on exit the X matrix. - The column to solve for. - - - - Computes the QR factorization of A. - - On entry, it is the M by N A matrix to factor. On exit, - it is overwritten with the R matrix of the QR factorization. - The number of rows in the A matrix. - The number of columns in the A matrix. - On exit, A M by M matrix that holds the Q matrix of the - QR factorization. - A min(m,n) vector. On exit, contains additional information - to be used by the QR solve routine. - This is similar to the GEQRF and ORGQR LAPACK routines. - - - - Computes the QR factorization of A. - - On entry, it is the M by N A matrix to factor. On exit, - it is overwritten with the Q matrix of the QR factorization. - The number of rows in the A matrix. - The number of columns in the A matrix. - On exit, A N by N matrix that holds the R matrix of the - QR factorization. - A min(m,n) vector. On exit, contains additional information - to be used by the QR solve routine. - This is similar to the GEQRF and ORGQR LAPACK routines. - - - - Perform calculation of Q or R - - Work array - Index of column in work array - Q or R matrices - The first row in - The last row - The first column - The last column - Number of available CPUs - - - - Generate column from initial matrix to work array - - Work array - Initial matrix - The number of rows in matrix - The first row - Column index - - - - Solves A*X=B for X using QR factorization of A. - - The A matrix. - The number of rows in the A matrix. - The number of columns in the A matrix. - The B matrix. - The number of columns of B. - On exit, the solution matrix. - The type of QR factorization to perform. - Rows must be greater or equal to columns. - - - - Solves A*X=B for X using a previously QR factored matrix. - - The Q matrix obtained by calling . - The R matrix obtained by calling . - The number of rows in the A matrix. - The number of columns in the A matrix. - Contains additional information on Q. Only used for the native solver - and can be null for the managed provider. - The B matrix. - The number of columns of B. - On exit, the solution matrix. - The type of QR factorization to perform. - Rows must be greater or equal to columns. - - - - Computes the singular value decomposition of A. - - Compute the singular U and VT vectors or not. - On entry, the M by N matrix to decompose. On exit, A may be overwritten. - The number of rows in the A matrix. - The number of columns in the A matrix. - The singular values of A in ascending value. - If is true, on exit U contains the left - singular vectors. - If is true, on exit VT contains the transposed - right singular vectors. - This is equivalent to the GESVD LAPACK routine. - - - - Given the Cartesian coordinates (da, db) of a point p, these function return the parameters da, db, c, and s - associated with the Givens rotation that zeros the y-coordinate of the point. - - Provides the x-coordinate of the point p. On exit contains the parameter r associated with the Givens rotation - Provides the y-coordinate of the point p. On exit contains the parameter z associated with the Givens rotation - Contains the parameter c associated with the Givens rotation - Contains the parameter s associated with the Givens rotation - This is equivalent to the DROTG LAPACK routine. - - - - Solves A*X=B for X using the singular value decomposition of A. - - On entry, the M by N matrix to decompose. - The number of rows in the A matrix. - The number of columns in the A matrix. - The B matrix. - The number of columns of B. - On exit, the solution matrix. - - - - Solves A*X=B for X using a previously SVD decomposed matrix. - - The number of rows in the A matrix. - The number of columns in the A matrix. - The s values returned by . - The left singular vectors returned by . - The right singular vectors returned by . - The B matrix. - The number of columns of B. - On exit, the solution matrix. - - - - Computes the eigenvalues and eigenvectors of a matrix. - - Whether the matrix is symmetric or not. - The order of the matrix. - The matrix to decompose. The length of the array must be order * order. - On output, the matrix contains the eigen vectors. The length of the array must be order * order. - On output, the eigen values (λ) of matrix in ascending value. The length of the array must . - On output, the block diagonal eigenvalue matrix. The length of the array must be order * order. - - - - Symmetric Householder reduction to tridiagonal form. - - Data array of matrix V (eigenvectors) - Arrays for internal storage of real parts of eigenvalues - Arrays for internal storage of imaginary parts of eigenvalues - Order of initial matrix - This is derived from the Algol procedures tred2 by - Bowdler, Martin, Reinsch, and Wilkinson, Handbook for - Auto. Comp., Vol.ii-Linear Algebra, and the corresponding - Fortran subroutine in EISPACK. - - - - Symmetric tridiagonal QL algorithm. - - Data array of matrix V (eigenvectors) - Arrays for internal storage of real parts of eigenvalues - Arrays for internal storage of imaginary parts of eigenvalues - Order of initial matrix - This is derived from the Algol procedures tql2, by - Bowdler, Martin, Reinsch, and Wilkinson, Handbook for - Auto. Comp., Vol.ii-Linear Algebra, and the corresponding - Fortran subroutine in EISPACK. - - - - - Nonsymmetric reduction to Hessenberg form. - - Data array of matrix V (eigenvectors) - Array for internal storage of nonsymmetric Hessenberg form. - Order of initial matrix - This is derived from the Algol procedures orthes and ortran, - by Martin and Wilkinson, Handbook for Auto. Comp., - Vol.ii-Linear Algebra, and the corresponding - Fortran subroutines in EISPACK. - - - - Nonsymmetric reduction from Hessenberg to real Schur form. - - Data array of matrix V (eigenvectors) - Array for internal storage of nonsymmetric Hessenberg form. - Arrays for internal storage of real parts of eigenvalues - Arrays for internal storage of imaginary parts of eigenvalues - Order of initial matrix - This is derived from the Algol procedure hqr2, - by Martin and Wilkinson, Handbook for Auto. Comp., - Vol.ii-Linear Algebra, and the corresponding - Fortran subroutine in EISPACK. - - - - - Complex scalar division X/Y. - - Real part of X - Imaginary part of X - Real part of Y - Imaginary part of Y - Division result as a number. - - - - Structure option. - - - - - Factorization option. - - - - - Solver step's substitution. - - - - - Solve a system, Ax = b. - - - - - Solve a transposed system, A'x = b - - - - - Solve a conjugate transposed system, A†x = b - - - - - Status values - - - - - The operation was successful. - - - - - Try to find out whether the provider is available, at least in principle. - Verification may still fail if available, but it will certainly fail if unavailable. - - - - - Initialize and verify that the provided is indeed available. If not, fall back to alternatives like the managed provider - - - - - Frees memory buffers, caches and handles allocated in or to the provider. - Does not unload the provider itself, it is still usable afterwards. - - - - - The managed sparse solver provider - - - - - Try to find out whether the provider is available, at least in principle. - Verification may still fail if available, but it will certainly fail if unavailable. - - - - - Initialize and verify that the provided is indeed available. If not, fall back to alternatives like the managed provider - - - - - Frees memory buffers, caches and handles allocated in or to the provider. - Does not unload the provider itself, it is still usable afterwards. - - - - - Optional path to try to load native provider binaries from, - if the provider specific hint path is not set. - If neither is set, Numerics falls back to the provider specific - environment variables, or the default probing paths. - - - - - Gets or sets the sparse solver provider. Consider to use UseNativeMKL or UseManaged instead. - - The linear algebra provider. - - - - Try to use a native provider, if available. - - - - - Use the best provider available. - - - - - Use a specific provider if configured, e.g. using the - "MathNetNumericsDSSProvider" environment variable, - or fall back to the best provider. - - - - - A random number generator based on the class in the .NET library. - - - - - Construct a new random number generator with a random seed. - - Uses and uses the value of - to set whether the instance is thread safe. - - - - Construct a new random number generator with random seed. - - The to use. - Uses the value of to set whether the instance is thread safe. - - - - Construct a new random number generator with random seed. - - Uses - if set to true , the class is thread safe. - - - - Construct a new random number generator with random seed. - - The to use. - if set to true , the class is thread safe. - - - - Fills the elements of a specified array of bytes with random numbers in full range, including zero and 255 (). - - - - - Returns a random double-precision floating point number greater than or equal to 0.0, and less than 1.0. - - - - - Returns a random 32-bit signed integer greater than or equal to zero and less than - - - - - Fills an array with random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads. - - - - Returns an array of random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads. - - - - Returns an infinite sequence of random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads. - - - - Multiplicative congruential generator using a modulus of 2^31-1 and a multiplier of 1132489760. - - - - - Initializes a new instance of the class using - a seed based on time and unique GUIDs. - - - - - Initializes a new instance of the class using - a seed based on time and unique GUIDs. - - if set to true , the class is thread safe. - - - - Initializes a new instance of the class. - - The seed value. - If the seed value is zero, it is set to one. Uses the - value of to - set whether the instance is thread safe. - - - - Initializes a new instance of the class. - - The seed value. - if set to true, the class is thread safe. - - - - Returns a random double-precision floating point number greater than or equal to 0.0, and less than 1.0. - - - - - Fills an array with random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads. - - - - Returns an array of random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads. - - - - Returns an infinite sequence of random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads, but the result must be enumerated from a single thread each. - - - - Multiplicative congruential generator using a modulus of 2^59 and a multiplier of 13^13. - - - - - Initializes a new instance of the class using - a seed based on time and unique GUIDs. - - - - - Initializes a new instance of the class using - a seed based on time and unique GUIDs. - - if set to true , the class is thread safe. - - - - Initializes a new instance of the class. - - The seed value. - If the seed value is zero, it is set to one. Uses the - value of to - set whether the instance is thread safe. - - - - Initializes a new instance of the class. - - The seed value. - The seed is set to 1, if the zero is used as the seed. - if set to true , the class is thread safe. - - - - Returns a random double-precision floating point number greater than or equal to 0.0, and less than 1.0. - - - - - Fills an array with random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads. - - - - Returns an array of random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads. - - - - Returns an infinite sequence of random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads, but the result must be enumerated from a single thread each. - - - - Random number generator using Mersenne Twister 19937 algorithm. - - - - - Mersenne twister constant. - - - - - Mersenne twister constant. - - - - - Mersenne twister constant. - - - - - Mersenne twister constant. - - - - - Mersenne twister constant. - - - - - Mersenne twister constant. - - - - - Mersenne twister constant. - - - - - Mersenne twister constant. - - - - - Mersenne twister constant. - - - - - Initializes a new instance of the class using - a seed based on time and unique GUIDs. - - If the seed value is zero, it is set to one. Uses the - value of to - set whether the instance is thread safe. - - - - Initializes a new instance of the class using - a seed based on time and unique GUIDs. - - if set to true , the class is thread safe. - - - - Initializes a new instance of the class. - - The seed value. - Uses the value of to - set whether the instance is thread safe. - - - - Initializes a new instance of the class. - - The seed value. - if set to true, the class is thread safe. - - - - Default instance, thread-safe. - - - - - Returns a random double-precision floating point number greater than or equal to 0.0, and less than 1.0. - - - - - Returns a random 32-bit signed integer greater than or equal to zero and less than - - - - - Fills the elements of a specified array of bytes with random numbers in full range, including zero and 255 (). - - - - - Fills an array with random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads. - - - - Returns an array of random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads. - - - - Returns an infinite sequence of random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads, but the result must be enumerated from a single thread each. - - - - A 32-bit combined multiple recursive generator with 2 components of order 3. - - Based off of P. L'Ecuyer, "Combined Multiple Recursive Random Number Generators," Operations Research, 44, 5 (1996), 816--822. - - - - - Initializes a new instance of the class using - a seed based on time and unique GUIDs. - - If the seed value is zero, it is set to one. Uses the - value of to - set whether the instance is thread safe. - - - - Initializes a new instance of the class using - a seed based on time and unique GUIDs. - - if set to true , the class is thread safe. - - - - Initializes a new instance of the class. - - The seed value. - If the seed value is zero, it is set to one. Uses the - value of to - set whether the instance is thread safe. - - - - Initializes a new instance of the class. - - The seed value. - if set to true, the class is thread safe. - - - - Returns a random double-precision floating point number greater than or equal to 0.0, and less than 1.0. - - - - - Fills an array with random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads. - - - - Returns an array of random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads. - - - - Returns an infinite sequence of random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads, but the result must be enumerated from a single thread each. - - - - Represents a Parallel Additive Lagged Fibonacci pseudo-random number generator. - - - The type bases upon the implementation in the - Boost Random Number Library. - It uses the modulus 232 and by default the "lags" 418 and 1279. Some popular pairs are presented on - Wikipedia - Lagged Fibonacci generator. - - - - - Default value for the ShortLag - - - - - Default value for the LongLag - - - - - The multiplier to compute a double-precision floating point number [0, 1) - - - - - Initializes a new instance of the class using - a seed based on time and unique GUIDs. - - If the seed value is zero, it is set to one. Uses the - value of to - set whether the instance is thread safe. - - - - Initializes a new instance of the class using - a seed based on time and unique GUIDs. - - if set to true , the class is thread safe. - - - - Initializes a new instance of the class. - - The seed value. - If the seed value is zero, it is set to one. Uses the - value of to - set whether the instance is thread safe. - - - - Initializes a new instance of the class. - - The seed value. - if set to true , the class is thread safe. - - - - Initializes a new instance of the class. - - The seed value. - if set to true, the class is thread safe. - The ShortLag value - TheLongLag value - - - - Gets the short lag of the Lagged Fibonacci pseudo-random number generator. - - - - - Gets the long lag of the Lagged Fibonacci pseudo-random number generator. - - - - - Stores an array of random numbers - - - - - Stores an index for the random number array element that will be accessed next. - - - - - Fills the array with new unsigned random numbers. - - - Generated random numbers are 32-bit unsigned integers greater than or equal to 0 - and less than or equal to . - - - - - Returns a random double-precision floating point number greater than or equal to 0.0, and less than 1.0. - - - - - Returns a random 32-bit signed integer greater than or equal to zero and less than - - - - - Fills an array with random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads. - - - - Returns an array of random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads. - - - - Returns an infinite sequence of random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads, but the result must be enumerated from a single thread each. - - - - This class implements extension methods for the System.Random class. The extension methods generate - pseudo-random distributed numbers for types other than double and int32. - - - - - Fills an array with uniform random numbers greater than or equal to 0.0 and less than 1.0. - - The random number generator. - The array to fill with random values. - - This extension is thread-safe if and only if called on an random number - generator provided by Math.NET Numerics or derived from the RandomSource class. - - - - - Returns an array of uniform random numbers greater than or equal to 0.0 and less than 1.0. - - The random number generator. - The size of the array to fill. - - This extension is thread-safe if and only if called on an random number - generator provided by Math.NET Numerics or derived from the RandomSource class. - - - - - Returns an infinite sequence of uniform random numbers greater than or equal to 0.0 and less than 1.0. - - - This extension is thread-safe if and only if called on an random number - generator provided by Math.NET Numerics or derived from the RandomSource class. - - - - - Returns an array of uniform random bytes. - - The random number generator. - The size of the array to fill. - - This extension is thread-safe if and only if called on an random number - generator provided by Math.NET Numerics or derived from the RandomSource class. - - - - - Fills an array with uniform random 32-bit signed integers greater than or equal to zero and less than . - - The random number generator. - The array to fill with random values. - - This extension is thread-safe if and only if called on an random number - generator provided by Math.NET Numerics or derived from the RandomSource class. - - - - - Fills an array with uniform random 32-bit signed integers within the specified range. - - The random number generator. - The array to fill with random values. - Lower bound, inclusive. - Upper bound, exclusive. - - This extension is thread-safe if and only if called on an random number - generator provided by Math.NET Numerics or derived from the RandomSource class. - - - - - Returns an infinite sequence of uniform random 32-bit signed integers within the specified range. - - - This extension is thread-safe if and only if called on an random number - generator provided by Math.NET Numerics or derived from the RandomSource class. - - - - - Returns an infinite sequence of uniform random within the specified range. - - - This extension is thread-safe if and only if called on an random number - generator provided by Math.NET Numerics or derived from the RandomSource class. - - - - - Returns a nonnegative random number less than . - - The random number generator. - - A 64-bit signed integer greater than or equal to 0, and less than ; that is, - the range of return values includes 0 but not . - - - - This extension is thread-safe if and only if called on an random number - generator provided by Math.NET Numerics or derived from the RandomSource class. - - - - - Returns a random number of the full Int32 range. - - The random number generator. - - A 32-bit signed integer of the full range, including 0, negative numbers, - and . - - - - This extension is thread-safe if and only if called on an random number - generator provided by Math.NET Numerics or derived from the RandomSource class. - - - - - Returns a random number of the full Int64 range. - - The random number generator. - - A 64-bit signed integer of the full range, including 0, negative numbers, - and . - - - - This extension is thread-safe if and only if called on an random number - generator provided by Math.NET Numerics or derived from the RandomSource class. - - - - - Returns a nonnegative decimal floating point random number less than 1.0. - - The random number generator. - - A decimal floating point number greater than or equal to 0.0, and less than 1.0; that is, - the range of return values includes 0.0 but not 1.0. - - - This extension is thread-safe if and only if called on an random number - generator provided by Math.NET Numerics or derived from the RandomSource class. - - - - - Returns a random boolean. - - The random number generator. - - This extension is thread-safe if and only if called on an random number - generator provided by Math.NET Numerics or derived from the RandomSource class. - - - - - Provides a time-dependent seed value, matching the default behavior of System.Random. - WARNING: There is no randomness in this seed and quick repeated calls can cause - the same seed value. Do not use for cryptography! - - - - - Provides a seed based on time and unique GUIDs. - WARNING: There is only low randomness in this seed, but at least quick repeated - calls will result in different seed values. Do not use for cryptography! - - - - - Provides a seed based on an internal random number generator (crypto if available), time and unique GUIDs. - WARNING: There is only medium randomness in this seed, but quick repeated - calls will result in different seed values. Do not use for cryptography! - - - - - Base class for random number generators. This class introduces a layer between - and the Math.NET Numerics random number generators to provide thread safety. - When used directly it use the System.Random as random number source. - - - - - Initializes a new instance of the class using - the value of to set whether - the instance is thread safe or not. - - - - - Initializes a new instance of the class. - - if set to true , the class is thread safe. - Thread safe instances are two and half times slower than non-thread - safe classes. - - - - Fills an array with uniform random numbers greater than or equal to 0.0 and less than 1.0. - - The array to fill with random values. - - - - Returns an array of uniform random numbers greater than or equal to 0.0 and less than 1.0. - - The size of the array to fill. - - - - Returns an infinite sequence of uniform random numbers greater than or equal to 0.0 and less than 1.0. - - - - - Returns a random 32-bit signed integer greater than or equal to zero and less than . - - - - - Returns a random number less then a specified maximum. - - The exclusive upper bound of the random number returned. Range: maxExclusive ≥ 1. - A 32-bit signed integer less than . - is zero or negative. - - - - Returns a random number within a specified range. - - The inclusive lower bound of the random number returned. - The exclusive upper bound of the random number returned. Range: maxExclusive > minExclusive. - - A 32-bit signed integer greater than or equal to and less than ; that is, the range of return values includes but not . If equals , is returned. - - is greater than . - - - - Fills an array with random 32-bit signed integers greater than or equal to zero and less than . - - The array to fill with random values. - - - - Returns an array with random 32-bit signed integers greater than or equal to zero and less than . - - The size of the array to fill. - - - - Fills an array with random numbers within a specified range. - - The array to fill with random values. - The exclusive upper bound of the random number returned. Range: maxExclusive ≥ 1. - - - - Returns an array with random 32-bit signed integers within the specified range. - - The size of the array to fill. - The exclusive upper bound of the random number returned. Range: maxExclusive ≥ 1. - - - - Fills an array with random numbers within a specified range. - - The array to fill with random values. - The inclusive lower bound of the random number returned. - The exclusive upper bound of the random number returned. Range: maxExclusive > minExclusive. - - - - Returns an array with random 32-bit signed integers within the specified range. - - The size of the array to fill. - The inclusive lower bound of the random number returned. - The exclusive upper bound of the random number returned. Range: maxExclusive > minExclusive. - - - - Returns an infinite sequence of random 32-bit signed integers greater than or equal to zero and less than . - - - - - Returns an infinite sequence of random numbers within a specified range. - - The inclusive lower bound of the random number returned. - The exclusive upper bound of the random number returned. Range: maxExclusive > minExclusive. - - - - Fills the elements of a specified array of bytes with random numbers. - - An array of bytes to contain random numbers. - is null. - - - - Returns a random number between 0.0 and 1.0. - - A double-precision floating point number greater than or equal to 0.0, and less than 1.0. - - - - Returns a random double-precision floating point number greater than or equal to 0.0, and less than 1.0. - - - - - Returns a random 32-bit signed integer greater than or equal to zero and less than 2147483647 (). - - - - - Fills the elements of a specified array of bytes with random numbers in full range, including zero and 255 (). - - - - - Returns a random N-bit signed integer greater than or equal to zero and less than 2^N. - N (bit count) is expected to be greater than zero and less than 32 (not verified). - - - - - Returns a random N-bit signed long integer greater than or equal to zero and less than 2^N. - N (bit count) is expected to be greater than zero and less than 64 (not verified). - - - - - Returns a random 32-bit signed integer within the specified range. - - The exclusive upper bound of the random number returned. Range: maxExclusive ≥ 2 (not verified, must be ensured by caller). - - - - Returns a random 32-bit signed integer within the specified range. - - The inclusive lower bound of the random number returned. - The exclusive upper bound of the random number returned. Range: maxExclusive ≥ minExclusive + 2 (not verified, must be ensured by caller). - - - - A random number generator based on the class in the .NET library. - - - - - Construct a new random number generator with a random seed. - - - - - Construct a new random number generator with random seed. - - if set to true , the class is thread safe. - - - - Construct a new random number generator with random seed. - - The seed value. - - - - Construct a new random number generator with random seed. - - The seed value. - if set to true , the class is thread safe. - - - - Default instance, thread-safe. - - - - - Returns a random double-precision floating point number greater than or equal to 0.0, and less than 1.0. - - - - - Returns a random 32-bit signed integer greater than or equal to zero and less than - - - - - Returns a random 32-bit signed integer within the specified range. - - The exclusive upper bound of the random number returned. Range: maxExclusive ≥ 2 (not verified, must be ensured by caller). - - - - Returns a random 32-bit signed integer within the specified range. - - The inclusive lower bound of the random number returned. - The exclusive upper bound of the random number returned. Range: maxExclusive ≥ minExclusive + 2 (not verified, must be ensured by caller). - - - - Fills the elements of a specified array of bytes with random numbers in full range, including zero and 255 (). - - - - - Fill an array with uniform random numbers greater than or equal to 0.0 and less than 1.0. - WARNING: potentially very short random sequence length, can generate repeated partial sequences. - - Parallelized on large length, but also supports being called in parallel from multiple threads - - - - Returns an array of uniform random numbers greater than or equal to 0.0 and less than 1.0. - WARNING: potentially very short random sequence length, can generate repeated partial sequences. - - Parallelized on large length, but also supports being called in parallel from multiple threads - - - - Returns an infinite sequence of uniform random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads, but the result must be enumerated from a single thread each. - - - - Fills an array with random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads. - - - - Returns an array of random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads. - - - - Returns an infinite sequence of random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads, but the result must be enumerated from a single thread each. - - - - Wichmann-Hill’s 1982 combined multiplicative congruential generator. - - See: Wichmann, B. A. & Hill, I. D. (1982), "Algorithm AS 183: - An efficient and portable pseudo-random number generator". Applied Statistics 31 (1982) 188-190 - - - - - Initializes a new instance of the class using - a seed based on time and unique GUIDs. - - - - - Initializes a new instance of the class using - a seed based on time and unique GUIDs. - - if set to true , the class is thread safe. - - - - Initializes a new instance of the class. - - The seed value. - If the seed value is zero, it is set to one. Uses the - value of to - set whether the instance is thread safe. - - - - Initializes a new instance of the class. - - The seed value. - The seed is set to 1, if the zero is used as the seed. - if set to true , the class is thread safe. - - - - Returns a random double-precision floating point number greater than or equal to 0.0, and less than 1.0. - - - - - Fills an array with random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads. - - - - Returns an array of random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads. - - - - Returns an infinite sequence of random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads, but the result must be enumerated from a single thread each. - - - - Wichmann-Hill’s 2006 combined multiplicative congruential generator. - - See: Wichmann, B. A. & Hill, I. D. (2006), "Generating good pseudo-random numbers". - Computational Statistics & Data Analysis 51:3 (2006) 1614-1622 - - - - - Initializes a new instance of the class using - a seed based on time and unique GUIDs. - - - - - Initializes a new instance of the class using - a seed based on time and unique GUIDs. - - if set to true , the class is thread safe. - - - - Initializes a new instance of the class. - - The seed value. - If the seed value is zero, it is set to one. Uses the - value of to - set whether the instance is thread safe. - - - - Initializes a new instance of the class. - - The seed value. - The seed is set to 1, if the zero is used as the seed. - if set to true , the class is thread safe. - - - - Returns a random double-precision floating point number greater than or equal to 0.0, and less than 1.0. - - - - - Fills an array with random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads. - - - - Returns an array of random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads. - - - - Returns an infinite sequence of random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads, but the result must be enumerated from a single thread each. - - - - Implements a multiply-with-carry Xorshift pseudo random number generator (RNG) specified in Marsaglia, George. (2003). Xorshift RNGs. - Xn = a * Xn−3 + c mod 2^32 - http://www.jstatsoft.org/v08/i14/paper - - - - - The default value for X1. - - - - - The default value for X2. - - - - - The default value for the multiplier. - - - - - The default value for the carry over. - - - - - The multiplier to compute a double-precision floating point number [0, 1) - - - - - Seed or last but three unsigned random number. - - - - - Last but two unsigned random number. - - - - - Last but one unsigned random number. - - - - - The value of the carry over. - - - - - The multiplier. - - - - - Initializes a new instance of the class using - a seed based on time and unique GUIDs. - - If the seed value is zero, it is set to one. Uses the - value of to - set whether the instance is thread safe. - Uses the default values of: - - a = 916905990 - c = 13579 - X1 = 77465321 - X2 = 362436069 - - - - - Initializes a new instance of the class using - a seed based on time and unique GUIDs. - - The multiply value - The initial carry value. - The initial value if X1. - The initial value if X2. - If the seed value is zero, it is set to one. Uses the - value of to - set whether the instance is thread safe. - Note: must be less than . - - - - - Initializes a new instance of the class using - a seed based on time and unique GUIDs. - - if set to true , the class is thread safe. - - Uses the default values of: - - a = 916905990 - c = 13579 - X1 = 77465321 - X2 = 362436069 - - - - - Initializes a new instance of the class using - a seed based on time and unique GUIDs. - - if set to true , the class is thread safe. - The multiply value - The initial carry value. - The initial value if X1. - The initial value if X2. - must be less than . - - - - Initializes a new instance of the class. - - The seed value. - If the seed value is zero, it is set to one. Uses the - value of to - set whether the instance is thread safe. - Uses the default values of: - - a = 916905990 - c = 13579 - X1 = 77465321 - X2 = 362436069 - - - - - Initializes a new instance of the class. - - The seed value. - If the seed value is zero, it is set to one. Uses the - value of to - set whether the instance is thread safe. - The multiply value - The initial carry value. - The initial value if X1. - The initial value if X2. - must be less than . - - - - Initializes a new instance of the class. - - The seed value. - if set to true, the class is thread safe. - - Uses the default values of: - - a = 916905990 - c = 13579 - X1 = 77465321 - X2 = 362436069 - - - - - Initializes a new instance of the class. - - The seed value. - if set to true, the class is thread safe. - The multiply value - The initial carry value. - The initial value if X1. - The initial value if X2. - must be less than . - - - - Returns a random double-precision floating point number greater than or equal to 0.0, and less than 1.0. - - - - - Returns a random 32-bit signed integer greater than or equal to zero and less than - - - - - Fills the elements of a specified array of bytes with random numbers in full range, including zero and 255 (). - - - - - Fills an array with random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads. - - - - Returns an array of random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads. - - - - Returns an infinite sequence of random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads, but the result must be enumerated from a single thread each. - - - - Xoshiro256** pseudo random number generator. - A random number generator based on the class in the .NET library. - - - This is xoshiro256** 1.0, our all-purpose, rock-solid generator. It has - excellent(sub-ns) speed, a state space(256 bits) that is large enough - for any parallel application, and it passes all tests we are aware of. - - For generating just floating-point numbers, xoshiro256+ is even faster. - - The state must be seeded so that it is not everywhere zero.If you have - a 64-bit seed, we suggest to seed a splitmix64 generator and use its - output to fill s. - - For further details see: - David Blackman & Sebastiano Vigna (2018), "Scrambled Linear Pseudorandom Number Generators". - https://arxiv.org/abs/1805.01407 - - - - - Construct a new random number generator with a random seed. - - - - - Construct a new random number generator with random seed. - - if set to true , the class is thread safe. - - - - Construct a new random number generator with random seed. - - The seed value. - - - - Construct a new random number generator with random seed. - - The seed value. - if set to true , the class is thread safe. - - - - Returns a random double-precision floating point number greater than or equal to 0.0, and less than 1.0. - - - - - Returns a random 32-bit signed integer greater than or equal to zero and less than - - - - - Fills the elements of a specified array of bytes with random numbers in full range, including zero and 255 (). - - - - - Returns a random N-bit signed integer greater than or equal to zero and less than 2^N. - N (bit count) is expected to be greater than zero and less than 32 (not verified). - - - - - Returns a random N-bit signed long integer greater than or equal to zero and less than 2^N. - N (bit count) is expected to be greater than zero and less than 64 (not verified). - - - - - Fills an array with random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads. - - - - Returns an array of random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads. - - - - Returns an infinite sequence of random numbers greater than or equal to 0.0 and less than 1.0. - - Supports being called in parallel from multiple threads, but the result must be enumerated from a single thread each. - - - - Splitmix64 RNG. - - RNG state. This can take any value, including zero. - A new random UInt64. - - Splitmix64 produces equidistributed outputs, thus if a zero is generated then the - next zero will be after a further 2^64 outputs. - - - - - Bisection root-finding algorithm. - - - - Find a solution of the equation f(x)=0. - The function to find roots from. - Guess for the low value of the range where the root is supposed to be. Will be expanded if needed. - Guess for the high value of the range where the root is supposed to be. Will be expanded if needed. - Desired accuracy. The root will be refined until the accuracy or the maximum number of iterations is reached. Default 1e-8. Must be greater than 0. - Maximum number of iterations. Default 100. - Factor at which to expand the bounds, if needed. Default 1.6. - Maximum number of expand iterations. Default 100. - Returns the root with the specified accuracy. - - - - Find a solution of the equation f(x)=0. - The function to find roots from. - The low value of the range where the root is supposed to be. - The high value of the range where the root is supposed to be. - Desired accuracy. The root will be refined until the accuracy or the maximum number of iterations is reached. Default 1e-8. Must be greater than 0. - Maximum number of iterations. Default 100. - Returns the root with the specified accuracy. - - - - Find a solution of the equation f(x)=0. - The function to find roots from. - The low value of the range where the root is supposed to be. - The high value of the range where the root is supposed to be. - Desired accuracy for both the root and the function value at the root. The root will be refined until the accuracy or the maximum number of iterations is reached. Must be greater than 0. - Maximum number of iterations. Usually 100. - The root that was found, if any. Undefined if the function returns false. - True if a root with the specified accuracy was found, else false. - - - - Algorithm by Brent, Van Wijngaarden, Dekker et al. - Implementation inspired by Press, Teukolsky, Vetterling, and Flannery, "Numerical Recipes in C", 2nd edition, Cambridge University Press - - - - Find a solution of the equation f(x)=0. - The function to find roots from. - Guess for the low value of the range where the root is supposed to be. Will be expanded if needed. - Guess for the high value of the range where the root is supposed to be. Will be expanded if needed. - Desired accuracy. The root will be refined until the accuracy or the maximum number of iterations is reached. Default 1e-8. Must be greater than 0. - Maximum number of iterations. Default 100. - Factor at which to expand the bounds, if needed. Default 1.6. - Maximum number of expand iterations. Default 100. - Returns the root with the specified accuracy. - - - - Find a solution of the equation f(x)=0. - The function to find roots from. - The low value of the range where the root is supposed to be. - The high value of the range where the root is supposed to be. - Desired accuracy. The root will be refined until the accuracy or the maximum number of iterations is reached. Default 1e-8. Must be greater than 0. - Maximum number of iterations. Default 100. - Returns the root with the specified accuracy. - - - - Find a solution of the equation f(x)=0. - The function to find roots from. - The low value of the range where the root is supposed to be. - The high value of the range where the root is supposed to be. - Desired accuracy. The root will be refined until the accuracy or the maximum number of iterations is reached. Must be greater than 0. - Maximum number of iterations. Usually 100. - The root that was found, if any. Undefined if the function returns false. - True if a root with the specified accuracy was found, else false. - - - Helper method useful for preventing rounding errors. - a*sign(b) - - - - Algorithm by Broyden. - Implementation inspired by Press, Teukolsky, Vetterling, and Flannery, "Numerical Recipes in C", 2nd edition, Cambridge University Press - - - - Find a solution of the equation f(x)=0. - The function to find roots from. - Initial guess of the root. - Desired accuracy. The root will be refined until the accuracy or the maximum number of iterations is reached. Default 1e-8. Must be greater than 0. - Maximum number of iterations. Default 100. - Relative step size for calculating the Jacobian matrix at first step. Default 1.0e-4 - Returns the root with the specified accuracy. - - - - Find a solution of the equation f(x)=0. - The function to find roots from. - Initial guess of the root. - Desired accuracy. The root will be refined until the accuracy or the maximum number of iterations is reached. Must be greater than 0. - Maximum number of iterations. Usually 100. - Relative step size for calculating the Jacobian matrix at first step. - The root that was found, if any. Undefined if the function returns false. - True if a root with the specified accuracy was found, else false. - - - Find a solution of the equation f(x)=0. - The function to find roots from. - Initial guess of the root. - Desired accuracy. The root will be refined until the accuracy or the maximum number of iterations is reached. Must be greater than 0. - Maximum number of iterations. Usually 100. - The root that was found, if any. Undefined if the function returns false. - True if a root with the specified accuracy was found, else false. - - - - Helper method to calculate an approximation of the Jacobian. - - The function. - The argument (initial guess). - The result (of initial guess). - Relative step size for calculating the Jacobian. - - - - Finds roots to the cubic equation x^3 + a2*x^2 + a1*x + a0 = 0 - Implements the cubic formula in http://mathworld.wolfram.com/CubicFormula.html - - - - - Q and R are transformed variables. - - - - - n^(1/3) - work around a negative double raised to (1/3) - - - - - Find all real-valued roots of the cubic equation a0 + a1*x + a2*x^2 + x^3 = 0. - Note the special coefficient order ascending by exponent (consistent with polynomials). - - - - - Find all three complex roots of the cubic equation d + c*x + b*x^2 + a*x^3 = 0. - Note the special coefficient order ascending by exponent (consistent with polynomials). - - - - - Pure Newton-Raphson root-finding algorithm without any recovery measures in cases it behaves badly. - The algorithm aborts immediately if the root leaves the bound interval. - - - - - Find a solution of the equation f(x)=0. - The function to find roots from. - The first derivative of the function to find roots from. - The low value of the range where the root is supposed to be. Aborts if it leaves the interval. - The high value of the range where the root is supposed to be. Aborts if it leaves the interval. - Desired accuracy. The root will be refined until the accuracy or the maximum number of iterations is reached. Default 1e-8. Must be greater than 0. - Maximum number of iterations. Default 100. - Returns the root with the specified accuracy. - - - - Find a solution of the equation f(x)=0. - The function to find roots from. - The first derivative of the function to find roots from. - Initial guess of the root. - The low value of the range where the root is supposed to be. Aborts if it leaves the interval. Default MinValue. - The high value of the range where the root is supposed to be. Aborts if it leaves the interval. Default MaxValue. - Desired accuracy. The root will be refined until the accuracy or the maximum number of iterations is reached. Default 1e-8. Must be greater than 0. - Maximum number of iterations. Default 100. - Returns the root with the specified accuracy. - - - - Find a solution of the equation f(x)=0. - The function to find roots from. - The first derivative of the function to find roots from. - Initial guess of the root. - The low value of the range where the root is supposed to be. Aborts if it leaves the interval. - The high value of the range where the root is supposed to be. Aborts if it leaves the interval. - Desired accuracy. The root will be refined until the accuracy or the maximum number of iterations is reached. Example: 1e-14. Must be greater than 0. - Maximum number of iterations. Example: 100. - The root that was found, if any. Undefined if the function returns false. - True if a root with the specified accuracy was found, else false. - - - - Robust Newton-Raphson root-finding algorithm that falls back to bisection when overshooting or converging too slow, or to subdivision on lacking bracketing. - - - - - Find a solution of the equation f(x)=0. - The function to find roots from. - The first derivative of the function to find roots from. - The low value of the range where the root is supposed to be. - The high value of the range where the root is supposed to be. - Desired accuracy. The root will be refined until the accuracy or the maximum number of iterations is reached. Default 1e-8. Must be greater than 0. - Maximum number of iterations. Default 100. - How many parts an interval should be split into for zero crossing scanning in case of lacking bracketing. Default 20. - Returns the root with the specified accuracy. - - - - Find a solution of the equation f(x)=0. - The function to find roots from. - The first derivative of the function to find roots from. - The low value of the range where the root is supposed to be. - The high value of the range where the root is supposed to be. - Desired accuracy. The root will be refined until the accuracy or the maximum number of iterations is reached. Example: 1e-14. Must be greater than 0. - Maximum number of iterations. Example: 100. - How many parts an interval should be split into for zero crossing scanning in case of lacking bracketing. Example: 20. - The root that was found, if any. Undefined if the function returns false. - True if a root with the specified accuracy was found, else false. - - - - Pure Secant root-finding algorithm without any recovery measures in cases it behaves badly. - The algorithm aborts immediately if the root leaves the bound interval. - - - - - Find a solution of the equation f(x)=0. - The function to find roots from. - The first guess of the root within the bounds specified. - The second guess of the root within the bounds specified. - The low value of the range where the root is supposed to be. Aborts if it leaves the interval. Default MinValue. - The high value of the range where the root is supposed to be. Aborts if it leaves the interval. Default MaxValue. - Desired accuracy. The root will be refined until the accuracy or the maximum number of iterations is reached. Default 1e-8. Must be greater than 0. - Maximum number of iterations. Default 100. - Returns the root with the specified accuracy. - - - - Find a solution of the equation f(x)=0. - The function to find roots from. - The first guess of the root within the bounds specified. - The second guess of the root within the bounds specified. - The low value of the range where the root is supposed to be. Aborts if it leaves the interval. - The low value of the range where the root is supposed to be. Aborts if it leaves the interval. - Desired accuracy. The root will be refined until the accuracy or the maximum number of iterations is reached. Example: 1e-14. Must be greater than 0. - Maximum number of iterations. Example: 100. - The root that was found, if any. Undefined if the function returns false. - True if a root with the specified accuracy was found, else false - - - Detect a range containing at least one root. - The function to detect roots from. - Lower value of the range. - Upper value of the range - The growing factor of research. Usually 1.6. - Maximum number of iterations. Usually 50. - True if the bracketing operation succeeded, false otherwise. - This iterative methods stops when two values with opposite signs are found. - - - - Numerically stable series summation (stops automatically). - - provides the summands sequentially - Sum - - - - Numerically stable series summation (stops automatically). - - provides the summands sequentially - Sum - - - - Sorting algorithms for single, tuple and triple lists. - - - - - Sort a list of keys, in place using the quick sort algorithm using the quick sort algorithm. - - The type of elements in the key list. - List to sort. - Comparison, defining the sort order. - - - - Sort a list of keys and items with respect to the keys, in place using the quick sort algorithm. - - The type of elements in the key list. - The type of elements in the item list. - List to sort. - List to permute the same way as the key list. - Comparison, defining the sort order. - - - - Sort a list of keys, items1 and items2 with respect to the keys, in place using the quick sort algorithm. - - The type of elements in the key list. - The type of elements in the first item list. - The type of elements in the second item list. - List to sort. - First list to permute the same way as the key list. - Second list to permute the same way as the key list. - Comparison, defining the sort order. - - - - Sort a range of a list of keys, in place using the quick sort algorithm. - - The type of element in the list. - List to sort. - The zero-based starting index of the range to sort. - The length of the range to sort. - Comparison, defining the sort order. - - - - Sort a list of keys and items with respect to the keys, in place using the quick sort algorithm. - - The type of elements in the key list. - The type of elements in the item list. - List to sort. - List to permute the same way as the key list. - The zero-based starting index of the range to sort. - The length of the range to sort. - Comparison, defining the sort order. - - - - Sort a list of keys, items1 and items2 with respect to the keys, in place using the quick sort algorithm. - - The type of elements in the key list. - The type of elements in the first item list. - The type of elements in the second item list. - List to sort. - First list to permute the same way as the key list. - Second list to permute the same way as the key list. - The zero-based starting index of the range to sort. - The length of the range to sort. - Comparison, defining the sort order. - - - - Sort a list of keys and items with respect to the keys, in place using the quick sort algorithm. - - The type of elements in the primary list. - The type of elements in the secondary list. - List to sort. - List to sort on duplicate primary items, and permute the same way as the key list. - Comparison, defining the primary sort order. - Comparison, defining the secondary sort order. - - - - Recursive implementation for an in place quick sort on a list. - - The type of the list on which the quick sort is performed. - The list which is sorted using quick sort. - The method with which to compare two elements of the quick sort. - The left boundary of the quick sort. - The right boundary of the quick sort. - - - - Recursive implementation for an in place quick sort on a list while reordering one other list accordingly. - - The type of the list on which the quick sort is performed. - The type of the list which is automatically reordered accordingly. - The list which is sorted using quick sort. - The list which is automatically reordered accordingly. - The method with which to compare two elements of the quick sort. - The left boundary of the quick sort. - The right boundary of the quick sort. - - - - Recursive implementation for an in place quick sort on one list while reordering two other lists accordingly. - - The type of the list on which the quick sort is performed. - The type of the first list which is automatically reordered accordingly. - The type of the second list which is automatically reordered accordingly. - The list which is sorted using quick sort. - The first list which is automatically reordered accordingly. - The second list which is automatically reordered accordingly. - The method with which to compare two elements of the quick sort. - The left boundary of the quick sort. - The right boundary of the quick sort. - - - - Recursive implementation for an in place quick sort on the primary and then by the secondary list while reordering one secondary list accordingly. - - The type of the primary list. - The type of the secondary list. - The list which is sorted using quick sort. - The list which is sorted secondarily (on primary duplicates) and automatically reordered accordingly. - The method with which to compare two elements of the primary list. - The method with which to compare two elements of the secondary list. - The left boundary of the quick sort. - The right boundary of the quick sort. - - - - Performs an in place swap of two elements in a list. - - The type of elements stored in the list. - The list in which the elements are stored. - The index of the first element of the swap. - The index of the second element of the swap. - - - - This partial implementation of the SpecialFunctions class contains all methods related to the Airy functions. - - - This partial implementation of the SpecialFunctions class contains all methods related to the Bessel functions. - - - This partial implementation of the SpecialFunctions class contains all methods related to the error function. - - - This partial implementation of the SpecialFunctions class contains all methods related to the Hankel function. - - - This partial implementation of the SpecialFunctions class contains all methods related to the harmonic function. - - - This partial implementation of the SpecialFunctions class contains all methods related to the modified Bessel function. - - - This partial implementation of the SpecialFunctions class contains all methods related to the log1p function. - - - This partial implementation of the SpecialFunctions class contains all methods related to the logistic function. - - - This partial implementation of the SpecialFunctions class contains all methods related to the Marcum-Q functions. - - - This partial implementation of the SpecialFunctions class contains all methods related to the modified Bessel function. - - - This partial implementation of the SpecialFunctions class contains all methods related to the modified Bessel function. - - - This partial implementation of the SpecialFunctions class contains all methods related to the spherical Bessel functions. - - - - - Returns the Airy function Ai. - AiryAi(z) is a solution to the Airy equation, y'' - y * z = 0. - - The value to compute the Airy function of. - The Airy function Ai. - - - - Returns the exponentially scaled Airy function Ai. - ScaledAiryAi(z) is given by Exp(zta) * AiryAi(z), where zta = (2/3) * z * Sqrt(z). - - The value to compute the Airy function of. - The exponentially scaled Airy function Ai. - - - - Returns the Airy function Ai. - AiryAi(z) is a solution to the Airy equation, y'' - y * z = 0. - - The value to compute the Airy function of. - The Airy function Ai. - - - - Returns the exponentially scaled Airy function Ai. - ScaledAiryAi(z) is given by Exp(zta) * AiryAi(z), where zta = (2/3) * z * Sqrt(z). - - The value to compute the Airy function of. - The exponentially scaled Airy function Ai. - - - - Returns the derivative of the Airy function Ai. - AiryAiPrime(z) is defined as d/dz AiryAi(z). - - The value to compute the derivative of the Airy function of. - The derivative of the Airy function Ai. - - - - Returns the exponentially scaled derivative of Airy function Ai - ScaledAiryAiPrime(z) is given by Exp(zta) * AiryAiPrime(z), where zta = (2/3) * z * Sqrt(z). - - The value to compute the derivative of the Airy function of. - The exponentially scaled derivative of Airy function Ai. - - - - Returns the derivative of the Airy function Ai. - AiryAiPrime(z) is defined as d/dz AiryAi(z). - - The value to compute the derivative of the Airy function of. - The derivative of the Airy function Ai. - - - - Returns the exponentially scaled derivative of the Airy function Ai. - ScaledAiryAiPrime(z) is given by Exp(zta) * AiryAiPrime(z), where zta = (2/3) * z * Sqrt(z). - - The value to compute the derivative of the Airy function of. - The exponentially scaled derivative of the Airy function Ai. - - - - Returns the Airy function Bi. - AiryBi(z) is a solution to the Airy equation, y'' - y * z = 0. - - The value to compute the Airy function of. - The Airy function Bi. - - - - Returns the exponentially scaled Airy function Bi. - ScaledAiryBi(z) is given by Exp(-Abs(zta.Real)) * AiryBi(z) where zta = (2 / 3) * z * Sqrt(z). - - The value to compute the Airy function of. - The exponentially scaled Airy function Bi(z). - - - - Returns the Airy function Bi. - AiryBi(z) is a solution to the Airy equation, y'' - y * z = 0. - - The value to compute the Airy function of. - The Airy function Bi. - - - - Returns the exponentially scaled Airy function Bi. - ScaledAiryBi(z) is given by Exp(-Abs(zta.Real)) * AiryBi(z) where zta = (2 / 3) * z * Sqrt(z). - - The value to compute the Airy function of. - The exponentially scaled Airy function Bi. - - - - Returns the derivative of the Airy function Bi. - AiryBiPrime(z) is defined as d/dz AiryBi(z). - - The value to compute the derivative of the Airy function of. - The derivative of the Airy function Bi. - - - - Returns the exponentially scaled derivative of the Airy function Bi. - ScaledAiryBiPrime(z) is given by Exp(-Abs(zta.Real)) * AiryBiPrime(z) where zta = (2 / 3) * z * Sqrt(z). - - The value to compute the derivative of the Airy function of. - The exponentially scaled derivative of the Airy function Bi. - - - - Returns the derivative of the Airy function Bi. - AiryBiPrime(z) is defined as d/dz AiryBi(z). - - The value to compute the derivative of the Airy function of. - The derivative of the Airy function Bi. - - - - Returns the exponentially scaled derivative of the Airy function Bi. - ScaledAiryBiPrime(z) is given by Exp(-Abs(zta.Real)) * AiryBiPrime(z) where zta = (2 / 3) * z * Sqrt(z). - - The value to compute the derivative of the Airy function of. - The exponentially scaled derivative of the Airy function Bi. - - - - Returns the Bessel function of the first kind. - BesselJ(n, z) is a solution to the Bessel differential equation. - - The order of the Bessel function. - The value to compute the Bessel function of. - The Bessel function of the first kind. - - - - Returns the exponentially scaled Bessel function of the first kind. - ScaledBesselJ(n, z) is given by Exp(-Abs(z.Imaginary)) * BesselJ(n, z). - - The order of the Bessel function. - The value to compute the Bessel function of. - The exponentially scaled Bessel function of the first kind. - - - - Returns the Bessel function of the first kind. - BesselJ(n, z) is a solution to the Bessel differential equation. - - The order of the Bessel function. - The value to compute the Bessel function of. - The Bessel function of the first kind. - - - - Returns the exponentially scaled Bessel function of the first kind. - ScaledBesselJ(n, z) is given by Exp(-Abs(z.Imaginary)) * BesselJ(n, z). - - The order of the Bessel function. - The value to compute the Bessel function of. - The exponentially scaled Bessel function of the first kind. - - - - Returns the Bessel function of the second kind. - BesselY(n, z) is a solution to the Bessel differential equation. - - The order of the Bessel function. - The value to compute the Bessel function of. - The Bessel function of the second kind. - - - - Returns the exponentially scaled Bessel function of the second kind. - ScaledBesselY(n, z) is given by Exp(-Abs(z.Imaginary)) * Y(n, z). - - The order of the Bessel function. - The value to compute the Bessel function of. - The exponentially scaled Bessel function of the second kind. - - - - Returns the Bessel function of the second kind. - BesselY(n, z) is a solution to the Bessel differential equation. - - The order of the Bessel function. - The value to compute the Bessel function of. - The Bessel function of the second kind. - - - - Returns the exponentially scaled Bessel function of the second kind. - ScaledBesselY(n, z) is given by Exp(-Abs(z.Imaginary)) * BesselY(n, z). - - The order of the Bessel function. - The value to compute the Bessel function of. - The exponentially scaled Bessel function of the second kind. - - - - Returns the modified Bessel function of the first kind. - BesselI(n, z) is a solution to the modified Bessel differential equation. - - The order of the modified Bessel function. - The value to compute the modified Bessel function of. - The modified Bessel function of the first kind. - - - - Returns the exponentially scaled modified Bessel function of the first kind. - ScaledBesselI(n, z) is given by Exp(-Abs(z.Real)) * BesselI(n, z). - - The order of the modified Bessel function. - The value to compute the modified Bessel function of. - The exponentially scaled modified Bessel function of the first kind. - - - - Returns the modified Bessel function of the first kind. - BesselI(n, z) is a solution to the modified Bessel differential equation. - - The order of the modified Bessel function. - The value to compute the modified Bessel function of. - The modified Bessel function of the first kind. - - - - Returns the exponentially scaled modified Bessel function of the first kind. - ScaledBesselI(n, z) is given by Exp(-Abs(z.Real)) * BesselI(n, z). - - The order of the modified Bessel function. - The value to compute the modified Bessel function of. - The exponentially scaled modified Bessel function of the first kind. - - - - Returns the modified Bessel function of the second kind. - BesselK(n, z) is a solution to the modified Bessel differential equation. - - The order of the modified Bessel function. - The value to compute the modified Bessel function of. - The modified Bessel function of the second kind. - - - - Returns the exponentially scaled modified Bessel function of the second kind. - ScaledBesselK(n, z) is given by Exp(z) * BesselK(n, z). - - The order of the modified Bessel function. - The value to compute the modified Bessel function of. - The exponentially scaled modified Bessel function of the second kind. - - - - Returns the modified Bessel function of the second kind. - BesselK(n, z) is a solution to the modified Bessel differential equation. - - The order of the modified Bessel function. - The value to compute the modified Bessel function of. - The modified Bessel function of the second kind. - - - - Returns the exponentially scaled modified Bessel function of the second kind. - ScaledBesselK(n, z) is given by Exp(z) * BesselK(n, z). - - The order of the modified Bessel function. - The value to compute the modified Bessel function of. - The exponentially scaled modified Bessel function of the second kind. - - - - Computes the logarithm of the Euler Beta function. - - The first Beta parameter, a positive real number. - The second Beta parameter, a positive real number. - The logarithm of the Euler Beta function evaluated at z,w. - If or are not positive. - - - - Computes the Euler Beta function. - - The first Beta parameter, a positive real number. - The second Beta parameter, a positive real number. - The Euler Beta function evaluated at z,w. - If or are not positive. - - - - Returns the lower incomplete (unregularized) beta function - B(a,b,x) = int(t^(a-1)*(1-t)^(b-1),t=0..x) for real a > 0, b > 0, 1 >= x >= 0. - - The first Beta parameter, a positive real number. - The second Beta parameter, a positive real number. - The upper limit of the integral. - The lower incomplete (unregularized) beta function. - - - - Returns the regularized lower incomplete beta function - I_x(a,b) = 1/Beta(a,b) * int(t^(a-1)*(1-t)^(b-1),t=0..x) for real a > 0, b > 0, 1 >= x >= 0. - - The first Beta parameter, a positive real number. - The second Beta parameter, a positive real number. - The upper limit of the integral. - The regularized lower incomplete beta function. - - - - ************************************** - COEFFICIENTS FOR METHOD ErfImp * - ************************************** - - Polynomial coefficients for a numerator of ErfImp - calculation for Erf(x) in the interval [1e-10, 0.5]. - - - - Polynomial coefficients for a denominator of ErfImp - calculation for Erf(x) in the interval [1e-10, 0.5]. - - - - Polynomial coefficients for a numerator in ErfImp - calculation for Erfc(x) in the interval [0.5, 0.75]. - - - - Polynomial coefficients for a denominator in ErfImp - calculation for Erfc(x) in the interval [0.5, 0.75]. - - - - Polynomial coefficients for a numerator in ErfImp - calculation for Erfc(x) in the interval [0.75, 1.25]. - - - - Polynomial coefficients for a denominator in ErfImp - calculation for Erfc(x) in the interval [0.75, 1.25]. - - - - Polynomial coefficients for a numerator in ErfImp - calculation for Erfc(x) in the interval [1.25, 2.25]. - - - - Polynomial coefficients for a denominator in ErfImp - calculation for Erfc(x) in the interval [1.25, 2.25]. - - - - Polynomial coefficients for a numerator in ErfImp - calculation for Erfc(x) in the interval [2.25, 3.5]. - - - - Polynomial coefficients for a denominator in ErfImp - calculation for Erfc(x) in the interval [2.25, 3.5]. - - - - Polynomial coefficients for a numerator in ErfImp - calculation for Erfc(x) in the interval [3.5, 5.25]. - - - - Polynomial coefficients for a denominator in ErfImp - calculation for Erfc(x) in the interval [3.5, 5.25]. - - - - Polynomial coefficients for a numerator in ErfImp - calculation for Erfc(x) in the interval [5.25, 8]. - - - - Polynomial coefficients for a denominator in ErfImp - calculation for Erfc(x) in the interval [5.25, 8]. - - - - Polynomial coefficients for a numerator in ErfImp - calculation for Erfc(x) in the interval [8, 11.5]. - - - - Polynomial coefficients for a denominator in ErfImp - calculation for Erfc(x) in the interval [8, 11.5]. - - - - Polynomial coefficients for a numerator in ErfImp - calculation for Erfc(x) in the interval [11.5, 17]. - - - - Polynomial coefficients for a denominator in ErfImp - calculation for Erfc(x) in the interval [11.5, 17]. - - - - Polynomial coefficients for a numerator in ErfImp - calculation for Erfc(x) in the interval [17, 24]. - - - - Polynomial coefficients for a denominator in ErfImp - calculation for Erfc(x) in the interval [17, 24]. - - - - Polynomial coefficients for a numerator in ErfImp - calculation for Erfc(x) in the interval [24, 38]. - - - - Polynomial coefficients for a denominator in ErfImp - calculation for Erfc(x) in the interval [24, 38]. - - - - Polynomial coefficients for a numerator in ErfImp - calculation for Erfc(x) in the interval [38, 60]. - - - - Polynomial coefficients for a denominator in ErfImp - calculation for Erfc(x) in the interval [38, 60]. - - - - Polynomial coefficients for a numerator in ErfImp - calculation for Erfc(x) in the interval [60, 85]. - - - - Polynomial coefficients for a denominator in ErfImp - calculation for Erfc(x) in the interval [60, 85]. - - - - Polynomial coefficients for a numerator in ErfImp - calculation for Erfc(x) in the interval [85, 110]. - - - - Polynomial coefficients for a denominator in ErfImp - calculation for Erfc(x) in the interval [85, 110]. - - - - - ************************************** - COEFFICIENTS FOR METHOD ErfInvImp * - ************************************** - - Polynomial coefficients for a numerator of ErfInvImp - calculation for Erf^-1(z) in the interval [0, 0.5]. - - - - Polynomial coefficients for a denominator of ErfInvImp - calculation for Erf^-1(z) in the interval [0, 0.5]. - - - - Polynomial coefficients for a numerator of ErfInvImp - calculation for Erf^-1(z) in the interval [0.5, 0.75]. - - - - Polynomial coefficients for a denominator of ErfInvImp - calculation for Erf^-1(z) in the interval [0.5, 0.75]. - - - - Polynomial coefficients for a numerator of ErfInvImp - calculation for Erf^-1(z) in the interval [0.75, 1] with x less than 3. - - - - Polynomial coefficients for a denominator of ErfInvImp - calculation for Erf^-1(z) in the interval [0.75, 1] with x less than 3. - - - - Polynomial coefficients for a numerator of ErfInvImp - calculation for Erf^-1(z) in the interval [0.75, 1] with x between 3 and 6. - - - - Polynomial coefficients for a denominator of ErfInvImp - calculation for Erf^-1(z) in the interval [0.75, 1] with x between 3 and 6. - - - - Polynomial coefficients for a numerator of ErfInvImp - calculation for Erf^-1(z) in the interval [0.75, 1] with x between 6 and 18. - - - - Polynomial coefficients for a denominator of ErfInvImp - calculation for Erf^-1(z) in the interval [0.75, 1] with x between 6 and 18. - - - - Polynomial coefficients for a numerator of ErfInvImp - calculation for Erf^-1(z) in the interval [0.75, 1] with x between 18 and 44. - - - - Polynomial coefficients for a denominator of ErfInvImp - calculation for Erf^-1(z) in the interval [0.75, 1] with x between 18 and 44. - - - - Polynomial coefficients for a numerator of ErfInvImp - calculation for Erf^-1(z) in the interval [0.75, 1] with x greater than 44. - - - - Polynomial coefficients for a denominator of ErfInvImp - calculation for Erf^-1(z) in the interval [0.75, 1] with x greater than 44. - - - - Calculates the error function. - The value to evaluate. - the error function evaluated at given value. - - - returns 1 if x == double.PositiveInfinity. - returns -1 if x == double.NegativeInfinity. - - - - - Calculates the complementary error function. - The value to evaluate. - the complementary error function evaluated at given value. - - - returns 0 if x == double.PositiveInfinity. - returns 2 if x == double.NegativeInfinity. - - - - - Calculates the inverse error function evaluated at z. - The inverse error function evaluated at given value. - - - returns double.PositiveInfinity if z >= 1.0. - returns double.NegativeInfinity if z <= -1.0. - - - Calculates the inverse error function evaluated at z. - value to evaluate. - the inverse error function evaluated at Z. - - - - Implementation of the error function. - - Where to evaluate the error function. - Whether to compute 1 - the error function. - the error function. - - - Calculates the complementary inverse error function evaluated at z. - The complementary inverse error function evaluated at given value. - We have tested this implementation against the arbitrary precision mpmath library - and found cases where we can only guarantee 9 significant figures correct. - - returns double.PositiveInfinity if z <= 0.0. - returns double.NegativeInfinity if z >= 2.0. - - - calculates the complementary inverse error function evaluated at z. - value to evaluate. - the complementary inverse error function evaluated at Z. - - - - The implementation of the inverse error function. - - First intermediate parameter. - Second intermediate parameter. - Third intermediate parameter. - the inverse error function. - - - - Numerically stable exponential minus one, i.e. x -> exp(x)-1 - - A number specifying a power. - Returns exp(power)-1. - - - - Numerically stable exponential minus one, i.e. x -> exp(x)-1 - - A number specifying a power. - Returns exp(power)-1. - - - - Computes the generalized Exponential Integral function (En). - - The argument of the Exponential Integral function. - Integer power of the denominator term. Generalization index. - The value of the Exponential Integral function. - - This implementation of the computation of the Exponential Integral function follows the derivation in - "Handbook of Mathematical Functions, Applied Mathematics Series, Volume 55", Abramowitz, M., and Stegun, I.A. 1964, reprinted 1968 by - Dover Publications, New York), Chapters 6, 7, and 26. - AND - "Advanced mathematical methods for scientists and engineers", Bender, Carl M.; Steven A. Orszag (1978). page 253 - - - for x > 1 uses continued fraction approach that is often used to compute incomplete gamma. - for 0 < x <= 1 uses Taylor series expansion - - Our unit tests suggest that the accuracy of the Exponential Integral function is correct up to 13 floating point digits. - - - - - Computes the factorial function x -> x! of an integer number > 0. The function can represent all number up - to 22! exactly, all numbers up to 170! using a double representation. All larger values will overflow. - - A value value! for value > 0 - - If you need to multiply or divide various such factorials, consider using the logarithmic version - instead so you can add instead of multiply and subtract instead of divide, and - then exponentiate the result using . This will also circumvent the problem that - factorials become very large even for small parameters. - - - - - - Computes the factorial of an integer. - - - - - Computes the logarithmic factorial function x -> ln(x!) of an integer number > 0. - - A value value! for value > 0 - - - - Computes the binomial coefficient: n choose k. - - A nonnegative value n. - A nonnegative value h. - The binomial coefficient: n choose k. - - - - Computes the natural logarithm of the binomial coefficient: ln(n choose k). - - A nonnegative value n. - A nonnegative value h. - The logarithmic binomial coefficient: ln(n choose k). - - - - Computes the multinomial coefficient: n choose n1, n2, n3, ... - - A nonnegative value n. - An array of nonnegative values that sum to . - The multinomial coefficient. - if is . - If or any of the are negative. - If the sum of all is not equal to . - - - - The order of the approximation. - - - - - Auxiliary variable when evaluating the function. - - - - - Polynomial coefficients for the approximation. - - - - - Computes the logarithm of the Gamma function. - - The argument of the gamma function. - The logarithm of the gamma function. - - This implementation of the computation of the gamma and logarithm of the gamma function follows the derivation in - "An Analysis Of The Lanczos Gamma Approximation", Glendon Ralph Pugh, 2004. - We use the implementation listed on p. 116 which achieves an accuracy of 16 floating point digits. Although 16 digit accuracy - should be sufficient for double values, improving accuracy is possible (see p. 126 in Pugh). - Our unit tests suggest that the accuracy of the Gamma function is correct up to 14 floating point digits. - - - - - Computes the Gamma function. - - The argument of the gamma function. - The logarithm of the gamma function. - - - This implementation of the computation of the gamma and logarithm of the gamma function follows the derivation in - "An Analysis Of The Lanczos Gamma Approximation", Glendon Ralph Pugh, 2004. - We use the implementation listed on p. 116 which should achieve an accuracy of 16 floating point digits. Although 16 digit accuracy - should be sufficient for double values, improving accuracy is possible (see p. 126 in Pugh). - - Our unit tests suggest that the accuracy of the Gamma function is correct up to 13 floating point digits. - - - - - Returns the upper incomplete regularized gamma function - Q(a,x) = 1/Gamma(a) * int(exp(-t)t^(a-1),t=0..x) for real a > 0, x > 0. - - The argument for the gamma function. - The lower integral limit. - The upper incomplete regularized gamma function. - - - - Returns the upper incomplete gamma function - Gamma(a,x) = int(exp(-t)t^(a-1),t=0..x) for real a > 0, x > 0. - - The argument for the gamma function. - The lower integral limit. - The upper incomplete gamma function. - - - - Returns the lower incomplete gamma function - gamma(a,x) = int(exp(-t)t^(a-1),t=0..x) for real a > 0, x > 0. - - The argument for the gamma function. - The upper integral limit. - The lower incomplete gamma function. - - - - Returns the lower incomplete regularized gamma function - P(a,x) = 1/Gamma(a) * int(exp(-t)t^(a-1),t=0..x) for real a > 0, x > 0. - - The argument for the gamma function. - The upper integral limit. - The lower incomplete gamma function. - - - - Returns the inverse P^(-1) of the regularized lower incomplete gamma function - P(a,x) = 1/Gamma(a) * int(exp(-t)t^(a-1),t=0..x) for real a > 0, x > 0, - such that P^(-1)(a,P(a,x)) == x. - - - - - Computes the Digamma function which is mathematically defined as the derivative of the logarithm of the gamma function. - This implementation is based on - Jose Bernardo - Algorithm AS 103: - Psi ( Digamma ) Function, - Applied Statistics, - Volume 25, Number 3, 1976, pages 315-317. - Using the modifications as in Tom Minka's lightspeed toolbox. - - The argument of the digamma function. - The value of the DiGamma function at . - - - - Computes the inverse Digamma function: this is the inverse of the logarithm of the gamma function. This function will - only return solutions that are positive. - This implementation is based on the bisection method. - - The argument of the inverse digamma function. - The positive solution to the inverse DiGamma function at . - - - - Computes the Rising Factorial (Pochhammer function) x -> (x)n, n>= 0. see: https://en.wikipedia.org/wiki/Falling_and_rising_factorials - - The real value of the Rising Factorial for x and n - - - - Computes the Falling Factorial (Pochhammer function) x -> x(n), n>= 0. see: https://en.wikipedia.org/wiki/Falling_and_rising_factorials - - The real value of the Falling Factorial for x and n - - - - A generalized hypergeometric series is a power series in which the ratio of successive coefficients indexed by n is a rational function of n. - This is the most common pFq(a1, ..., ap; b1,...,bq; z) representation - see: https://en.wikipedia.org/wiki/Generalized_hypergeometric_function - - The list of coefficients in the numerator - The list of coefficients in the denominator - The variable in the power series - The value of the Generalized HyperGeometric Function. - - - - Returns the Hankel function of the first kind. - HankelH1(n, z) is defined as BesselJ(n, z) + j * BesselY(n, z). - - The order of the Hankel function. - The value to compute the Hankel function of. - The Hankel function of the first kind. - - - - Returns the exponentially scaled Hankel function of the first kind. - ScaledHankelH1(n, z) is given by Exp(-z * j) * HankelH1(n, z) where j = Sqrt(-1). - - The order of the Hankel function. - The value to compute the Hankel function of. - The exponentially scaled Hankel function of the first kind. - - - - Returns the Hankel function of the second kind. - HankelH2(n, z) is defined as BesselJ(n, z) - j * BesselY(n, z). - - The order of the Hankel function. - The value to compute the Hankel function of. - The Hankel function of the second kind. - - - - Returns the exponentially scaled Hankel function of the second kind. - ScaledHankelH2(n, z) is given by Exp(z * j) * HankelH2(n, z) where j = Sqrt(-1). - - The order of the Hankel function. - The value to compute the Hankel function of. - The exponentially scaled Hankel function of the second kind. - - - - Computes the 'th Harmonic number. - - The Harmonic number which needs to be computed. - The t'th Harmonic number. - - - - Compute the generalized harmonic number of order n of m. (1 + 1/2^m + 1/3^m + ... + 1/n^m) - - The order parameter. - The power parameter. - General Harmonic number. - - - - Returns the Kelvin function of the first kind. - KelvinBe(nu, x) is given by BesselJ(0, j * sqrt(j) * x) where j = sqrt(-1). - KelvinBer(nu, x) and KelvinBei(nu, x) are the real and imaginary parts of the KelvinBe(nu, x) - - the order of the the Kelvin function. - The value to compute the Kelvin function of. - The Kelvin function of the first kind. - - - - Returns the Kelvin function ber. - KelvinBer(nu, x) is given by the real part of BesselJ(nu, j * sqrt(j) * x) where j = sqrt(-1). - - the order of the the Kelvin function. - The value to compute the Kelvin function of. - The Kelvin function ber. - - - - Returns the Kelvin function ber. - KelvinBer(x) is given by the real part of BesselJ(0, j * sqrt(j) * x) where j = sqrt(-1). - KelvinBer(x) is equivalent to KelvinBer(0, x). - - The value to compute the Kelvin function of. - The Kelvin function ber. - - - - Returns the Kelvin function bei. - KelvinBei(nu, x) is given by the imaginary part of BesselJ(nu, j * sqrt(j) * x) where j = sqrt(-1). - - the order of the the Kelvin function. - The value to compute the Kelvin function of. - The Kelvin function bei. - - - - Returns the Kelvin function bei. - KelvinBei(x) is given by the imaginary part of BesselJ(0, j * sqrt(j) * x) where j = sqrt(-1). - KelvinBei(x) is equivalent to KelvinBei(0, x). - - The value to compute the Kelvin function of. - The Kelvin function bei. - - - - Returns the derivative of the Kelvin function ber. - - The order of the Kelvin function. - The value to compute the derivative of the Kelvin function of. - the derivative of the Kelvin function ber - - - - Returns the derivative of the Kelvin function ber. - - The value to compute the derivative of the Kelvin function of. - The derivative of the Kelvin function ber. - - - - Returns the derivative of the Kelvin function bei. - - The order of the Kelvin function. - The value to compute the derivative of the Kelvin function of. - the derivative of the Kelvin function bei. - - - - Returns the derivative of the Kelvin function bei. - - The value to compute the derivative of the Kelvin function of. - The derivative of the Kelvin function bei. - - - - Returns the Kelvin function of the second kind - KelvinKe(nu, x) is given by Exp(-nu * pi * j / 2) * BesselK(nu, x * sqrt(j)) where j = sqrt(-1). - KelvinKer(nu, x) and KelvinKei(nu, x) are the real and imaginary parts of the KelvinBe(nu, x) - - The order of the Kelvin function. - The value to calculate the kelvin function of, - - - - - Returns the Kelvin function ker. - KelvinKer(nu, x) is given by the real part of Exp(-nu * pi * j / 2) * BesselK(nu, sqrt(j) * x) where j = sqrt(-1). - - the order of the the Kelvin function. - The non-negative real value to compute the Kelvin function of. - The Kelvin function ker. - - - - Returns the Kelvin function ker. - KelvinKer(x) is given by the real part of Exp(-nu * pi * j / 2) * BesselK(0, sqrt(j) * x) where j = sqrt(-1). - KelvinKer(x) is equivalent to KelvinKer(0, x). - - The non-negative real value to compute the Kelvin function of. - The Kelvin function ker. - - - - Returns the Kelvin function kei. - KelvinKei(nu, x) is given by the imaginary part of Exp(-nu * pi * j / 2) * BesselK(nu, sqrt(j) * x) where j = sqrt(-1). - - the order of the the Kelvin function. - The non-negative real value to compute the Kelvin function of. - The Kelvin function kei. - - - - Returns the Kelvin function kei. - KelvinKei(x) is given by the imaginary part of Exp(-nu * pi * j / 2) * BesselK(0, sqrt(j) * x) where j = sqrt(-1). - KelvinKei(x) is equivalent to KelvinKei(0, x). - - The non-negative real value to compute the Kelvin function of. - The Kelvin function kei. - - - - Returns the derivative of the Kelvin function ker. - - The order of the Kelvin function. - The non-negative real value to compute the derivative of the Kelvin function of. - The derivative of the Kelvin function ker. - - - - Returns the derivative of the Kelvin function ker. - - The value to compute the derivative of the Kelvin function of. - The derivative of the Kelvin function ker. - - - - Returns the derivative of the Kelvin function kei. - - The order of the Kelvin function. - The value to compute the derivative of the Kelvin function of. - The derivative of the Kelvin function kei. - - - - Returns the derivative of the Kelvin function kei. - - The value to compute the derivative of the Kelvin function of. - The derivative of the Kelvin function kei. - - - - Computes ln(1+x) with good relative precision when |x| is small - - The parameter for which to compute the log1p function. Range: x > 0. - - - - Computes the logistic function. see: http://en.wikipedia.org/wiki/Logistic - - The parameter for which to compute the logistic function. - The logistic function of . - - - - Computes the logit function, the inverse of the sigmoid logistic function. see: http://en.wikipedia.org/wiki/Logit - - The parameter for which to compute the logit function. This number should be - between 0 and 1. - The logarithm of divided by 1.0 - . - - - - Returns the Marcum Q-function Q[ν](a,b). Marcum Q-function (Wikipedia) - References: A. Gil, J. Segura and N.M. Temme. Efficient and accurate algorithms for the - computation and inversion of the incomplete gamma function ratios. SIAM J Sci Comput. (2012) 34(6), A2965-A2981 - - The order of generalized Marcum Q-function. Range: 1≦ν≦10000 - The value to compute the Marcum Q-function of. Range: 0≦a≦10000 - The value to compute the Marcum Q-function of. Range: 0≦b≦10000 - The Marcum Q-function Q[ν](a,b) - - - - Returns the Marcum Q-function Q[ν](a,b). Marcum Q-function (Wikipedia) - References: A. Gil, J. Segura and N.M. Temme. Efficient and accurate algorithms for the - computation and inversion of the incomplete gamma function ratios. SIAM J Sci Comput. (2012) 34(6), A2965-A2981 - - The order of generalized Marcum Q-function. Range: 1≦ν≦10000 - The value to compute the Marcum Q-function of. Range: 0≦a≦10000 - The value to compute the Marcum Q-function of. Range: 0≦b≦10000 - Error flag - 0: Computation succesful. - 1: Underflow problems. The function value is set to one. - 2: Any of the arguments of the function is out of range.The function value is set to zero. - - The Marcum Q-function Q[ν](a,b) - - - - Marcum Q-functions - References - [1] A. Gil, J. Segura and N.M. Temme, Accompanying paper in ACM Trans Math Soft - [2] A. Gil, J. Segura and N.M. Temme. Efficient and accurate algorithms for the - computation and inversion of the incomplete gamma function ratios. SIAM J Sci Comput. - (2012) 34(6), A2965-A2981 - - - - - Fortran 95 TINY(0.0d0) - - - - - Fortran 95 HUGE(0.0d0) - - - - - The number 2**(1/4) - - - - - machine-epsilon - - - - - The number log[e](sqrt(2*pi)) - - - - - Safe underflow limit - - - - - Safe overflow limit - - - - - Lower limit of exponential - - - - - Demanded accuracy - - - - - Calculation of the Marcum Q-functions P_mu(x,y) and Q_mu(x,y). Marcum Q-function (Wikipedia) - - - - In order to avoid, overflow/underflow problems in IEEE double precision arithmetic, the admissible parameter ranges for computation are: - - - 0≦x≦10000, 0≦y≦10000, 1≦mu≦10000 - - - The aimed relative accuracy is close to 1.0e-11 in the previous parameter domain. - - - argument of the functions - argument of the functions - argument of the functions - function P_mu(a,x) - function Q_mu(a,x) - error flag - 0: Computation succesful - 1: Underflow problems. The function values are set to zero and one. - 2: Any of the arguments of the function is out of range.The function values (P_mu(a, x) and Q_mu(a, x)) are set to zero. - - - - - computation of the incomplete gamma function ratios - - - - - Calculation of the incomplete gamma functions ratios P(a,x) and Q(a,x). - - argument of the functions - argument of the functions - function P(a,x) - function Q(a,x) - error flag - - - - Computes xr in the equations P(a,xr)=p and Q(a,xr)=q with a as a given positive parameter. In most cases, we invert the equation with min(p,q) - - argument of the functions - function P(a,x) - function Q(a,x) - soluction of the equations P(a,xr)=p and Q(a,xr)=q with a as a given positive parameter. - error flag - - - - dompart is approx. of x^a * exp(-x) / gamma(a+1) - - argument of the functions - argument of the functions - argument of the functions - - - - - Computation of ln(gamma(x)), x>0 - - argument of the functions - - - - - ************************************** - COEFFICIENTS FOR METHODS bessi0 * - ************************************** - - Chebyshev coefficients for exp(-x) I0(x) - in the interval [0, 8]. - - lim(x->0){ exp(-x) I0(x) } = 1. - - - - Chebyshev coefficients for exp(-x) sqrt(x) I0(x) - in the inverted interval [8, infinity]. - - lim(x->inf){ exp(-x) sqrt(x) I0(x) } = 1/sqrt(2pi). - - - - - ************************************** - COEFFICIENTS FOR METHODS bessi1 * - ************************************** - - Chebyshev coefficients for exp(-x) I1(x) / x - in the interval [0, 8]. - - lim(x->0){ exp(-x) I1(x) / x } = 1/2. - - - - Chebyshev coefficients for exp(-x) sqrt(x) I1(x) - in the inverted interval [8, infinity]. - - lim(x->inf){ exp(-x) sqrt(x) I1(x) } = 1/sqrt(2pi). - - - - - ************************************** - COEFFICIENTS FOR METHODS bessk0, bessk0e * - ************************************** - - Chebyshev coefficients for K0(x) + log(x/2) I0(x) - in the interval [0, 2]. The odd order coefficients are all - zero; only the even order coefficients are listed. - - lim(x->0){ K0(x) + log(x/2) I0(x) } = -EUL. - - - - Chebyshev coefficients for exp(x) sqrt(x) K0(x) - in the inverted interval [2, infinity]. - - lim(x->inf){ exp(x) sqrt(x) K0(x) } = sqrt(pi/2). - - - - - ************************************** - COEFFICIENTS FOR METHODS bessk1, bessk1e * - ************************************** - - Chebyshev coefficients for x(K1(x) - log(x/2) I1(x)) - in the interval [0, 2]. - - lim(x->0){ x(K1(x) - log(x/2) I1(x)) } = 1. - - - - Chebyshev coefficients for exp(x) sqrt(x) K1(x) - in the interval [2, infinity]. - - lim(x->inf){ exp(x) sqrt(x) K1(x) } = sqrt(pi/2). - - - - Returns the modified Bessel function of first kind, order 0 of the argument. -

    - The function is defined as i0(x) = j0( ix ). -

    - The range is partitioned into the two intervals [0, 8] and - (8, infinity). Chebyshev polynomial expansions are employed - in each interval. -

    - The value to compute the Bessel function of. - -
    - - Returns the modified Bessel function of first kind, - order 1 of the argument. -

    - The function is defined as i1(x) = -i j1( ix ). -

    - The range is partitioned into the two intervals [0, 8] and - (8, infinity). Chebyshev polynomial expansions are employed - in each interval. -

    - The value to compute the Bessel function of. - -
    - - Returns the modified Bessel function of the second kind - of order 0 of the argument. -

    - The range is partitioned into the two intervals [0, 8] and - (8, infinity). Chebyshev polynomial expansions are employed - in each interval. -

    - The value to compute the Bessel function of. - -
    - - Returns the exponentially scaled modified Bessel function - of the second kind of order 0 of the argument. - - The value to compute the Bessel function of. - - - - Returns the modified Bessel function of the second kind - of order 1 of the argument. -

    - The range is partitioned into the two intervals [0, 2] and - (2, infinity). Chebyshev polynomial expansions are employed - in each interval. -

    - The value to compute the Bessel function of. - -
    - - Returns the exponentially scaled modified Bessel function - of the second kind of order 1 of the argument. -

    - k1e(x) = exp(x) * k1(x). -

    - The value to compute the Bessel function of. - -
    - - - Returns the modified Struve function of order 0. - - The value to compute the function of. - - - - Returns the modified Struve function of order 1. - - The value to compute the function of. - - - - Returns the difference between the Bessel I0 and Struve L0 functions. - - The value to compute the function of. - - - - Returns the difference between the Bessel I1 and Struve L1 functions. - - The value to compute the function of. - - - - Returns the spherical Bessel function of the first kind. - SphericalBesselJ(n, z) is given by Sqrt(pi/2) / Sqrt(z) * BesselJ(n + 1/2, z). - - The order of the spherical Bessel function. - The value to compute the spherical Bessel function of. - The spherical Bessel function of the first kind. - - - - Returns the spherical Bessel function of the first kind. - SphericalBesselJ(n, z) is given by Sqrt(pi/2) / Sqrt(z) * BesselJ(n + 1/2, z). - - The order of the spherical Bessel function. - The value to compute the spherical Bessel function of. - The spherical Bessel function of the first kind. - - - - Returns the spherical Bessel function of the second kind. - SphericalBesselY(n, z) is given by Sqrt(pi/2) / Sqrt(z) * BesselY(n + 1/2, z). - - The order of the spherical Bessel function. - The value to compute the spherical Bessel function of. - The spherical Bessel function of the second kind. - - - - Returns the spherical Bessel function of the second kind. - SphericalBesselY(n, z) is given by Sqrt(pi/2) / Sqrt(z) * BesselY(n + 1/2, z). - - The order of the spherical Bessel function. - The value to compute the spherical Bessel function of. - The spherical Bessel function of the second kind. - - - - Numerically stable hypotenuse of a right angle triangle, i.e. (a,b) -> sqrt(a^2 + b^2) - - The length of side a of the triangle. - The length of side b of the triangle. - Returns sqrt(a2 + b2) without underflow/overflow. - - - - Numerically stable hypotenuse of a right angle triangle, i.e. (a,b) -> sqrt(a^2 + b^2) - - The length of side a of the triangle. - The length of side b of the triangle. - Returns sqrt(a2 + b2) without underflow/overflow. - - - - Numerically stable hypotenuse of a right angle triangle, i.e. (a,b) -> sqrt(a^2 + b^2) - - The length of side a of the triangle. - The length of side b of the triangle. - Returns sqrt(a2 + b2) without underflow/overflow. - - - - Numerically stable hypotenuse of a right angle triangle, i.e. (a,b) -> sqrt(a^2 + b^2) - - The length of side a of the triangle. - The length of side b of the triangle. - Returns sqrt(a2 + b2) without underflow/overflow. - - - - Evaluation functions, useful for function approximation. - - - - Evaluates the series of Chebyshev polynomials Ti at argument x/2. - The series is given by -
    -                  N-1
    -                   - '
    -            y  =   >   coef[i] T (x/2)
    -                   -            i
    -                  i=0
    -            
    - Coefficients are stored in reverse order, i.e. the zero - order term is last in the array. Note N is the number of - coefficients, not the order. -

    - If coefficients are for the interval a to b, x must - have been transformed to x -> 2(2x - b - a)/(b-a) before - entering the routine. This maps x from (a, b) to (-1, 1), - over which the Chebyshev polynomials are defined. -

    - If the coefficients are for the inverted interval, in - which (a, b) is mapped to (1/b, 1/a), the transformation - required is x -> 2(2ab/x - b - a)/(b-a). If b is infinity, - this becomes x -> 4a/x - 1. -

    - SPEED: -

    - Taking advantage of the recurrence properties of the - Chebyshev polynomials, the routine requires one more - addition per loop than evaluating a nested polynomial of - the same degree. -

    - The coefficients of the polynomial. - Argument to the polynomial. - - Reference: https://bpm2.svn.codeplex.com/svn/Common.Numeric/Arithmetic.cs -

    - Marked as Deprecated in - http://people.apache.org/~isabel/mahout_site/mahout-matrix/apidocs/org/apache/mahout/jet/math/Arithmetic.html - - - -

    - Summation of Chebyshev polynomials, using the Clenshaw method with Reinsch modification. - - The no. of terms in the sequence. - The coefficients of the Chebyshev series, length n+1. - The value at which the series is to be evaluated. - - ORIGINAL AUTHOR: - Dr. Allan J. MacLeod; Dept. of Mathematics and Statistics, University of Paisley; High St., PAISLEY, SCOTLAND - REFERENCES: - "An error analysis of the modified Clenshaw method for evaluating Chebyshev and Fourier series" - J. Oliver, J.I.M.A., vol. 20, 1977, pp379-391 - -
    - - - Valley-shaped Rosenbrock function for 2 dimensions: (x,y) -> (1-x)^2 + 100*(y-x^2)^2. - This function has a global minimum at (1,1) with f(1,1) = 0. - Common range: [-5,10] or [-2.048,2.048]. - - - https://en.wikipedia.org/wiki/Rosenbrock_function - http://www.sfu.ca/~ssurjano/rosen.html - - - - - Valley-shaped Rosenbrock function for 2 or more dimensions. - This function have a global minimum of all ones and, for 8 > N > 3, a local minimum at (-1,1,...,1). - - - https://en.wikipedia.org/wiki/Rosenbrock_function - http://www.sfu.ca/~ssurjano/rosen.html - - - - - Himmelblau, a multi-modal function: (x,y) -> (x^2+y-11)^2 + (x+y^2-7)^2 - This function has 4 global minima with f(x,y) = 0. - Common range: [-6,6]. - Named after David Mautner Himmelblau - - - https://en.wikipedia.org/wiki/Himmelblau%27s_function - - - - - Rastrigin, a highly multi-modal function with many local minima. - Global minimum of all zeros with f(0) = 0. - Common range: [-5.12,5.12]. - - - https://en.wikipedia.org/wiki/Rastrigin_function - http://www.sfu.ca/~ssurjano/rastr.html - - - - - Drop-Wave, a multi-modal and highly complex function with many local minima. - Global minimum of all zeros with f(0) = -1. - Common range: [-5.12,5.12]. - - - http://www.sfu.ca/~ssurjano/drop.html - - - - - Ackley, a function with many local minima. It is nearly flat in outer regions but has a large hole at the center. - Global minimum of all zeros with f(0) = 0. - Common range: [-32.768, 32.768]. - - - http://www.sfu.ca/~ssurjano/ackley.html - - - - - Bowl-shaped first Bohachevsky function. - Global minimum of all zeros with f(0,0) = 0. - Common range: [-100, 100] - - - http://www.sfu.ca/~ssurjano/boha.html - - - - - Plate-shaped Matyas function. - Global minimum of all zeros with f(0,0) = 0. - Common range: [-10, 10]. - - - http://www.sfu.ca/~ssurjano/matya.html - - - - - Valley-shaped six-hump camel back function. - Two global minima and four local minima. Global minima with f(x) ) -1.0316 at (0.0898,-0.7126) and (-0.0898,0.7126). - Common range: x in [-3,3], y in [-2,2]. - - - http://www.sfu.ca/~ssurjano/camel6.html - - - - - Statistics operating on arrays assumed to be unsorted. - WARNING: Methods with the Inplace-suffix may modify the data array by reordering its entries. - - - - - - - - Returns the smallest absolute value from the unsorted data array. - Returns NaN if data is empty or any entry is NaN. - - Sample array, no sorting is assumed. - - - - Returns the smallest absolute value from the unsorted data array. - Returns NaN if data is empty or any entry is NaN. - - Sample array, no sorting is assumed. - - - - Returns the largest absolute value from the unsorted data array. - Returns NaN if data is empty or any entry is NaN. - - Sample array, no sorting is assumed. - - - - Returns the largest absolute value from the unsorted data array. - Returns NaN if data is empty or any entry is NaN. - - Sample array, no sorting is assumed. - - - - Returns the smallest value from the unsorted data array. - Returns NaN if data is empty or any entry is NaN. - - Sample array, no sorting is assumed. - - - - Returns the largest value from the unsorted data array. - Returns NaN if data is empty or any entry is NaN. - - Sample array, no sorting is assumed. - - - - Returns the smallest absolute value from the unsorted data array. - Returns NaN if data is empty or any entry is NaN. - - Sample array, no sorting is assumed. - - - - Returns the largest absolute value from the unsorted data array. - Returns NaN if data is empty or any entry is NaN. - - Sample array, no sorting is assumed. - - - - Estimates the arithmetic sample mean from the unsorted data array. - Returns NaN if data is empty or any entry is NaN. - - Sample array, no sorting is assumed. - - - - Evaluates the geometric mean of the unsorted data array. - Returns NaN if data is empty or any entry is NaN. - - Sample array, no sorting is assumed. - - - - Evaluates the harmonic mean of the unsorted data array. - Returns NaN if data is empty or any entry is NaN. - - Sample array, no sorting is assumed. - - - - Estimates the unbiased population variance from the provided samples as unsorted array. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN if data has less than two entries or if any entry is NaN. - - Sample array, no sorting is assumed. - - - - Evaluates the population variance from the full population provided as unsorted array. - On a dataset of size N will use an N normalizer and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - - Sample array, no sorting is assumed. - - - - Estimates the unbiased population standard deviation from the provided samples as unsorted array. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN if data has less than two entries or if any entry is NaN. - - Sample array, no sorting is assumed. - - - - Evaluates the population standard deviation from the full population provided as unsorted array. - On a dataset of size N will use an N normalizer and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - - Sample array, no sorting is assumed. - - - - Estimates the arithmetic sample mean and the unbiased population variance from the provided samples as unsorted array. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN for mean if data is empty or any entry is NaN and NaN for variance if data has less than two entries or if any entry is NaN. - - Sample array, no sorting is assumed. - - - - Estimates the arithmetic sample mean and the unbiased population standard deviation from the provided samples as unsorted array. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN for mean if data is empty or any entry is NaN and NaN for standard deviation if data has less than two entries or if any entry is NaN. - - Sample array, no sorting is assumed. - - - - Estimates the unbiased population covariance from the provided two sample arrays. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN if data has less than two entries or if any entry is NaN. - - First sample array. - Second sample array. - - - - Evaluates the population covariance from the full population provided as two arrays. - On a dataset of size N will use an N normalizer and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - - First population array. - Second population array. - - - - Estimates the root mean square (RMS) also known as quadratic mean from the unsorted data array. - Returns NaN if data is empty or any entry is NaN. - - Sample array, no sorting is assumed. - - - - Returns the order statistic (order 1..N) from the unsorted data array. - WARNING: Works inplace and can thus causes the data array to be reordered. - - Sample array, no sorting is assumed. Will be reordered. - One-based order of the statistic, must be between 1 and N (inclusive). - - - - Estimates the median value from the unsorted data array. - WARNING: Works inplace and can thus causes the data array to be reordered. - - Sample array, no sorting is assumed. Will be reordered. - - - - Estimates the p-Percentile value from the unsorted data array. - If a non-integer Percentile is needed, use Quantile instead. - Approximately median-unbiased regardless of the sample distribution (R8). - WARNING: Works inplace and can thus causes the data array to be reordered. - - Sample array, no sorting is assumed. Will be reordered. - Percentile selector, between 0 and 100 (inclusive). - - - - Estimates the first quartile value from the unsorted data array. - Approximately median-unbiased regardless of the sample distribution (R8). - WARNING: Works inplace and can thus causes the data array to be reordered. - - Sample array, no sorting is assumed. Will be reordered. - - - - Estimates the third quartile value from the unsorted data array. - Approximately median-unbiased regardless of the sample distribution (R8). - WARNING: Works inplace and can thus causes the data array to be reordered. - - Sample array, no sorting is assumed. Will be reordered. - - - - Estimates the inter-quartile range from the unsorted data array. - Approximately median-unbiased regardless of the sample distribution (R8). - WARNING: Works inplace and can thus causes the data array to be reordered. - - Sample array, no sorting is assumed. Will be reordered. - - - - Estimates {min, lower-quantile, median, upper-quantile, max} from the unsorted data array. - Approximately median-unbiased regardless of the sample distribution (R8). - WARNING: Works inplace and can thus causes the data array to be reordered. - - Sample array, no sorting is assumed. Will be reordered. - - - - Estimates the tau-th quantile from the unsorted data array. - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. - Approximately median-unbiased regardless of the sample distribution (R8). - WARNING: Works inplace and can thus causes the data array to be reordered. - - Sample array, no sorting is assumed. Will be reordered. - Quantile selector, between 0.0 and 1.0 (inclusive). - - R-8, SciPy-(1/3,1/3): - Linear interpolation of the approximate medians for order statistics. - When tau < (2/3) / (N + 1/3), use x1. When tau >= (N - 1/3) / (N + 1/3), use xN. - - - - - Estimates the tau-th quantile from the unsorted data array. - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. The quantile definition can be specified - by 4 parameters a, b, c and d, consistent with Mathematica. - WARNING: Works inplace and can thus causes the data array to be reordered. - - Sample array, no sorting is assumed. Will be reordered. - Quantile selector, between 0.0 and 1.0 (inclusive) - a-parameter - b-parameter - c-parameter - d-parameter - - - - Estimates the tau-th quantile from the unsorted data array. - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. The quantile definition can be specified to be compatible - with an existing system. - WARNING: Works inplace and can thus causes the data array to be reordered. - - Sample array, no sorting is assumed. Will be reordered. - Quantile selector, between 0.0 and 1.0 (inclusive) - Quantile definition, to choose what product/definition it should be consistent with - - - - Evaluates the rank of each entry of the unsorted data array. - The rank definition can be specified to be compatible - with an existing system. - WARNING: Works inplace and can thus causes the data array to be reordered. - - - - - Estimates the arithmetic sample mean from the unsorted data array. - Returns NaN if data is empty or any entry is NaN. - - Sample array, no sorting is assumed. - - - - Evaluates the geometric mean of the unsorted data array. - Returns NaN if data is empty or any entry is NaN. - - Sample array, no sorting is assumed. - - - - Evaluates the harmonic mean of the unsorted data array. - Returns NaN if data is empty or any entry is NaN. - - Sample array, no sorting is assumed. - - - - Estimates the unbiased population variance from the provided samples as unsorted array. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN if data has less than two entries or if any entry is NaN. - - Sample array, no sorting is assumed. - - - - Evaluates the population variance from the full population provided as unsorted array. - On a dataset of size N will use an N normalizer and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - - Sample array, no sorting is assumed. - - - - Estimates the unbiased population standard deviation from the provided samples as unsorted array. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN if data has less than two entries or if any entry is NaN. - - Sample array, no sorting is assumed. - - - - Evaluates the population standard deviation from the full population provided as unsorted array. - On a dataset of size N will use an N normalizer and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - - Sample array, no sorting is assumed. - - - - Estimates the arithmetic sample mean and the unbiased population variance from the provided samples as unsorted array. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN for mean if data is empty or any entry is NaN and NaN for variance if data has less than two entries or if any entry is NaN. - - Sample array, no sorting is assumed. - - - - Estimates the arithmetic sample mean and the unbiased population standard deviation from the provided samples as unsorted array. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN for mean if data is empty or any entry is NaN and NaN for standard deviation if data has less than two entries or if any entry is NaN. - - Sample array, no sorting is assumed. - - - - Estimates the unbiased population covariance from the provided two sample arrays. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN if data has less than two entries or if any entry is NaN. - - First sample array. - Second sample array. - - - - Evaluates the population covariance from the full population provided as two arrays. - On a dataset of size N will use an N normalizer and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - - First population array. - Second population array. - - - - Estimates the root mean square (RMS) also known as quadratic mean from the unsorted data array. - Returns NaN if data is empty or any entry is NaN. - - Sample array, no sorting is assumed. - - - - Returns the smallest value from the unsorted data array. - Returns NaN if data is empty or any entry is NaN. - - Sample array, no sorting is assumed. - - - - Returns the smallest value from the unsorted data array. - Returns NaN if data is empty or any entry is NaN. - - Sample array, no sorting is assumed. - - - - Returns the smallest absolute value from the unsorted data array. - Returns NaN if data is empty or any entry is NaN. - - Sample array, no sorting is assumed. - - - - Returns the largest absolute value from the unsorted data array. - Returns NaN if data is empty or any entry is NaN. - - Sample array, no sorting is assumed. - - - - Estimates the arithmetic sample mean from the unsorted data array. - Returns NaN if data is empty or any entry is NaN. - - Sample array, no sorting is assumed. - - - - Evaluates the geometric mean of the unsorted data array. - Returns NaN if data is empty or any entry is NaN. - - Sample array, no sorting is assumed. - - - - Evaluates the harmonic mean of the unsorted data array. - Returns NaN if data is empty or any entry is NaN. - - Sample array, no sorting is assumed. - - - - Estimates the unbiased population variance from the provided samples as unsorted array. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN if data has less than two entries or if any entry is NaN. - - Sample array, no sorting is assumed. - - - - Evaluates the population variance from the full population provided as unsorted array. - On a dataset of size N will use an N normalizer and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - - Sample array, no sorting is assumed. - - - - Estimates the unbiased population standard deviation from the provided samples as unsorted array. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN if data has less than two entries or if any entry is NaN. - - Sample array, no sorting is assumed. - - - - Evaluates the population standard deviation from the full population provided as unsorted array. - On a dataset of size N will use an N normalizer and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - - Sample array, no sorting is assumed. - - - - Estimates the arithmetic sample mean and the unbiased population variance from the provided samples as unsorted array. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN for mean if data is empty or any entry is NaN and NaN for variance if data has less than two entries or if any entry is NaN. - - Sample array, no sorting is assumed. - - - - Estimates the arithmetic sample mean and the unbiased population standard deviation from the provided samples as unsorted array. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN for mean if data is empty or any entry is NaN and NaN for standard deviation if data has less than two entries or if any entry is NaN. - - Sample array, no sorting is assumed. - - - - Estimates the unbiased population covariance from the provided two sample arrays. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN if data has less than two entries or if any entry is NaN. - - First sample array. - Second sample array. - - - - Evaluates the population covariance from the full population provided as two arrays. - On a dataset of size N will use an N normalizer and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - - First population array. - Second population array. - - - - Estimates the root mean square (RMS) also known as quadratic mean from the unsorted data array. - Returns NaN if data is empty or any entry is NaN. - - Sample array, no sorting is assumed. - - - - Returns the order statistic (order 1..N) from the unsorted data array. - WARNING: Works inplace and can thus causes the data array to be reordered. - - Sample array, no sorting is assumed. Will be reordered. - One-based order of the statistic, must be between 1 and N (inclusive). - - - - Estimates the median value from the unsorted data array. - WARNING: Works inplace and can thus causes the data array to be reordered. - - Sample array, no sorting is assumed. Will be reordered. - - - - Estimates the p-Percentile value from the unsorted data array. - If a non-integer Percentile is needed, use Quantile instead. - Approximately median-unbiased regardless of the sample distribution (R8). - WARNING: Works inplace and can thus causes the data array to be reordered. - - Sample array, no sorting is assumed. Will be reordered. - Percentile selector, between 0 and 100 (inclusive). - - - - Estimates the first quartile value from the unsorted data array. - Approximately median-unbiased regardless of the sample distribution (R8). - WARNING: Works inplace and can thus causes the data array to be reordered. - - Sample array, no sorting is assumed. Will be reordered. - - - - Estimates the third quartile value from the unsorted data array. - Approximately median-unbiased regardless of the sample distribution (R8). - WARNING: Works inplace and can thus causes the data array to be reordered. - - Sample array, no sorting is assumed. Will be reordered. - - - - Estimates the inter-quartile range from the unsorted data array. - Approximately median-unbiased regardless of the sample distribution (R8). - WARNING: Works inplace and can thus causes the data array to be reordered. - - Sample array, no sorting is assumed. Will be reordered. - - - - Estimates {min, lower-quantile, median, upper-quantile, max} from the unsorted data array. - Approximately median-unbiased regardless of the sample distribution (R8). - WARNING: Works inplace and can thus causes the data array to be reordered. - - Sample array, no sorting is assumed. Will be reordered. - - - - Estimates the tau-th quantile from the unsorted data array. - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. - Approximately median-unbiased regardless of the sample distribution (R8). - WARNING: Works inplace and can thus causes the data array to be reordered. - - Sample array, no sorting is assumed. Will be reordered. - Quantile selector, between 0.0 and 1.0 (inclusive). - - R-8, SciPy-(1/3,1/3): - Linear interpolation of the approximate medians for order statistics. - When tau < (2/3) / (N + 1/3), use x1. When tau >= (N - 1/3) / (N + 1/3), use xN. - - - - - Estimates the tau-th quantile from the unsorted data array. - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. The quantile definition can be specified - by 4 parameters a, b, c and d, consistent with Mathematica. - WARNING: Works inplace and can thus causes the data array to be reordered. - - Sample array, no sorting is assumed. Will be reordered. - Quantile selector, between 0.0 and 1.0 (inclusive) - a-parameter - b-parameter - c-parameter - d-parameter - - - - Estimates the tau-th quantile from the unsorted data array. - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. The quantile definition can be specified to be compatible - with an existing system. - WARNING: Works inplace and can thus causes the data array to be reordered. - - Sample array, no sorting is assumed. Will be reordered. - Quantile selector, between 0.0 and 1.0 (inclusive) - Quantile definition, to choose what product/definition it should be consistent with - - - - Evaluates the rank of each entry of the unsorted data array. - The rank definition can be specified to be compatible - with an existing system. - WARNING: Works inplace and can thus causes the data array to be reordered. - - - - - A class with correlation measures between two datasets. - - - - - Auto-correlation function (ACF) based on FFT for all possible lags k. - - Data array to calculate auto correlation for. - An array with the ACF as a function of the lags k. - - - - Auto-correlation function (ACF) based on FFT for lags between kMin and kMax. - - The data array to calculate auto correlation for. - Max lag to calculate ACF for must be positive and smaller than x.Length. - Min lag to calculate ACF for (0 = no shift with acf=1) must be zero or positive and smaller than x.Length. - An array with the ACF as a function of the lags k. - - - - Auto-correlation function based on FFT for lags k. - - The data array to calculate auto correlation for. - Array with lags to calculate ACF for. - An array with the ACF as a function of the lags k. - - - - The internal method for calculating the auto-correlation. - - The data array to calculate auto-correlation for - Min lag to calculate ACF for (0 = no shift with acf=1) must be zero or positive and smaller than x.Length - Max lag (EXCLUSIVE) to calculate ACF for must be positive and smaller than x.Length - An array with the ACF as a function of the lags k. - - - - Computes the Pearson Product-Moment Correlation coefficient. - - Sample data A. - Sample data B. - The Pearson product-moment correlation coefficient. - - - - Computes the Weighted Pearson Product-Moment Correlation coefficient. - - Sample data A. - Sample data B. - Corresponding weights of data. - The Weighted Pearson product-moment correlation coefficient. - - - - Computes the Pearson Product-Moment Correlation matrix. - - Array of sample data vectors. - The Pearson product-moment correlation matrix. - - - - Computes the Pearson Product-Moment Correlation matrix. - - Enumerable of sample data vectors. - The Pearson product-moment correlation matrix. - - - - Computes the Spearman Ranked Correlation coefficient. - - Sample data series A. - Sample data series B. - The Spearman ranked correlation coefficient. - - - - Computes the Spearman Ranked Correlation matrix. - - Array of sample data vectors. - The Spearman ranked correlation matrix. - - - - Computes the Spearman Ranked Correlation matrix. - - Enumerable of sample data vectors. - The Spearman ranked correlation matrix. - - - - Computes the basic statistics of data set. The class meets the - NIST standard of accuracy for mean, variance, and standard deviation - (the only statistics they provide exact values for) and exceeds them - in increased accuracy mode. - Recommendation: consider to use RunningStatistics instead. - - - This type declares a DataContract for out of the box ephemeral serialization - with engines like DataContractSerializer, Protocol Buffers and FsPickler, - but does not guarantee any compatibility between versions. - It is not recommended to rely on this mechanism for durable persistence. - - - - - Initializes a new instance of the class. - - The sample data. - - If set to true, increased accuracy mode used. - Increased accuracy mode uses types for internal calculations. - - - Don't use increased accuracy for data sets containing large values (in absolute value). - This may cause the calculations to overflow. - - - - - Initializes a new instance of the class. - - The sample data. - - If set to true, increased accuracy mode used. - Increased accuracy mode uses types for internal calculations. - - - Don't use increased accuracy for data sets containing large values (in absolute value). - This may cause the calculations to overflow. - - - - - Gets the size of the sample. - - The size of the sample. - - - - Gets the sample mean. - - The sample mean. - - - - Gets the unbiased population variance estimator (on a dataset of size N will use an N-1 normalizer). - - The sample variance. - - - - Gets the unbiased population standard deviation (on a dataset of size N will use an N-1 normalizer). - - The sample standard deviation. - - - - Gets the sample skewness. - - The sample skewness. - Returns zero if is less than three. - - - - Gets the sample kurtosis. - - The sample kurtosis. - Returns zero if is less than four. - - - - Gets the maximum sample value. - - The maximum sample value. - - - - Gets the minimum sample value. - - The minimum sample value. - - - - Computes descriptive statistics from a stream of data values. - - A sequence of datapoints. - - - - Computes descriptive statistics from a stream of nullable data values. - - A sequence of datapoints. - - - - Computes descriptive statistics from a stream of data values. - - A sequence of datapoints. - - - - Computes descriptive statistics from a stream of nullable data values. - - A sequence of datapoints. - - - - Internal use. Method use for setting the statistics. - - For setting Mean. - For setting Variance. - For setting Skewness. - For setting Kurtosis. - For setting Minimum. - For setting Maximum. - For setting Count. - - - - A consists of a series of s, - each representing a region limited by a lower bound (exclusive) and an upper bound (inclusive). - - - This type declares a DataContract for out of the box ephemeral serialization - with engines like DataContractSerializer, Protocol Buffers and FsPickler, - but does not guarantee any compatibility between versions. - It is not recommended to rely on this mechanism for durable persistence. - - - - - This IComparer performs comparisons between a point and a bucket. - - - - - Compares a point and a bucket. The point will be encapsulated in a bucket with width 0. - - The first bucket to compare. - The second bucket to compare. - -1 when the point is less than this bucket, 0 when it is in this bucket and 1 otherwise. - - - - Lower Bound of the Bucket. - - - - - Upper Bound of the Bucket. - - - - - The number of datapoints in the bucket. - - - Value may be NaN if this was constructed as a argument. - - - - - Initializes a new instance of the Bucket class. - - - - - Constructs a Bucket that can be used as an argument for a - like when performing a Binary search. - - Value to look for - - - - Creates a copy of the Bucket with the lowerbound, upperbound and counts exactly equal. - - A cloned Bucket object. - - - - Width of the Bucket. - - - - - True if this is a single point argument for - when performing a Binary search. - - - - - Default comparer. - - - - - This method check whether a point is contained within this bucket. - - The point to check. - - 0 if the point falls within the bucket boundaries; - -1 if the point is smaller than the bucket, - +1 if the point is larger than the bucket. - - - - Comparison of two disjoint buckets. The buckets cannot be overlapping. - - - 0 if UpperBound and LowerBound are bit-for-bit equal - 1 if This bucket is lower that the compared bucket - -1 otherwise - - - - - Checks whether two Buckets are equal. - - - UpperBound and LowerBound are compared bit-for-bit, but This method tolerates a - difference in Count given by . - - - - - Provides a hash code for this bucket. - - - - - Formats a human-readable string for this bucket. - - - - - A class which computes histograms of data. - - - - - Contains all the Buckets of the Histogram. - - - - - Indicates whether the elements of buckets are currently sorted. - - - - - Initializes a new instance of the Histogram class. - - - - - Constructs a Histogram with a specific number of equally sized buckets. The upper and lower bound of the histogram - will be set to the smallest and largest datapoint. - - The data sequence to build a histogram on. - The number of buckets to use. - - - - Constructs a Histogram with a specific number of equally sized buckets. - - The data sequence to build a histogram on. - The number of buckets to use. - The histogram lower bound. - The histogram upper bound. - - - - Add one data point to the histogram. If the datapoint falls outside the range of the histogram, - the lowerbound or upperbound will automatically adapt. - - The datapoint which we want to add. - - - - Add a sequence of data point to the histogram. If the datapoint falls outside the range of the histogram, - the lowerbound or upperbound will automatically adapt. - - The sequence of datapoints which we want to add. - - - - Adds a Bucket to the Histogram. - - - - - Sort the buckets if needed. - - - - - Returns the Bucket that contains the value v. - - The point to search the bucket for. - A copy of the bucket containing point . - - - - Returns the index in the Histogram of the Bucket - that contains the value v. - - The point to search the bucket index for. - The index of the bucket containing the point. - - - - Returns the lower bound of the histogram. - - - - - Returns the upper bound of the histogram. - - - - - Gets the n'th bucket. - - The index of the bucket to be returned. - A copy of the n'th bucket. - - - - Gets the number of buckets. - - - - - Gets the total number of datapoints in the histogram. - - - - - Prints the buckets contained in the . - - - - - Kernel density estimation (KDE). - - - - - Estimate the probability density function of a random variable. - - - The routine assumes that the provided kernel is well defined, i.e. a real non-negative function that integrates to 1. - - - - - Estimate the probability density function of a random variable with a Gaussian kernel. - - - - - Estimate the probability density function of a random variable with an Epanechnikov kernel. - The Epanechnikov kernel is optimal in a mean square error sense. - - - - - Estimate the probability density function of a random variable with a uniform kernel. - - - - - Estimate the probability density function of a random variable with a triangular kernel. - - - - - A Gaussian kernel (PDF of Normal distribution with mean 0 and variance 1). - This kernel is the default. - - - - - Epanechnikov Kernel: - x => Math.Abs(x) <= 1.0 ? 3.0/4.0(1.0-x^2) : 0.0 - - - - - Uniform Kernel: - x => Math.Abs(x) <= 1.0 ? 1.0/2.0 : 0.0 - - - - - Triangular Kernel: - x => Math.Abs(x) <= 1.0 ? (1.0-Math.Abs(x)) : 0.0 - - - - - A hybrid Monte Carlo sampler for multivariate distributions. - - - - - Number of parameters in the density function. - - - - - Distribution to sample momentum from. - - - - - Standard deviations used in the sampling of different components of the - momentum. - - - - - Gets or sets the standard deviations used in the sampling of different components of the - momentum. - - When the length of pSdv is not the same as Length. - - - - Constructs a new Hybrid Monte Carlo sampler for a multivariate probability distribution. - The components of the momentum will be sampled from a normal distribution with standard deviation - 1 using the default random - number generator. A three point estimation will be used for differentiation. - This constructor will set the burn interval. - - The initial sample. - The log density of the distribution we want to sample from. - Number frog leap simulation steps. - Size of the frog leap simulation steps. - The number of iterations in between returning samples. - When the number of burnInterval iteration is negative. - - - - Constructs a new Hybrid Monte Carlo sampler for a multivariate probability distribution. - The components of the momentum will be sampled from a normal distribution with standard deviation - specified by pSdv using the default random - number generator. A three point estimation will be used for differentiation. - This constructor will set the burn interval. - - The initial sample. - The log density of the distribution we want to sample from. - Number frog leap simulation steps. - Size of the frog leap simulation steps. - The number of iterations in between returning samples. - The standard deviations of the normal distributions that are used to sample - the components of the momentum. - When the number of burnInterval iteration is negative. - - - - Constructs a new Hybrid Monte Carlo sampler for a multivariate probability distribution. - The components of the momentum will be sampled from a normal distribution with standard deviation - specified by pSdv using the a random number generator provided by the user. - A three point estimation will be used for differentiation. - This constructor will set the burn interval. - - The initial sample. - The log density of the distribution we want to sample from. - Number frog leap simulation steps. - Size of the frog leap simulation steps. - The number of iterations in between returning samples. - The standard deviations of the normal distributions that are used to sample - the components of the momentum. - Random number generator used for sampling the momentum. - When the number of burnInterval iteration is negative. - - - - Constructs a new Hybrid Monte Carlo sampler for a multivariate probability distribution. - The components of the momentum will be sampled from a normal distribution with standard deviations - given by pSdv. This constructor will set the burn interval, the method used for - numerical differentiation and the random number generator. - - The initial sample. - The log density of the distribution we want to sample from. - Number frog leap simulation steps. - Size of the frog leap simulation steps. - The number of iterations in between returning samples. - The standard deviations of the normal distributions that are used to sample - the components of the momentum. - Random number generator used for sampling the momentum. - The method used for numerical differentiation. - When the number of burnInterval iteration is negative. - When the length of pSdv is not the same as x0. - - - - Initialize parameters. - - The current location of the sampler. - - - - Checking that the location and the momentum are of the same dimension and that each component is positive. - - The standard deviations used for sampling the momentum. - When the length of pSdv is not the same as Length or if any - component is negative. - When pSdv is null. - - - - Use for copying objects in the Burn method. - - The source of copying. - A copy of the source object. - - - - Use for creating temporary objects in the Burn method. - - An object of type T. - - - - - - - - - - - - - Samples the momentum from a normal distribution. - - The momentum to be randomized. - - - - The default method used for computing the gradient. Uses a simple three point estimation. - - Function which the gradient is to be evaluated. - The location where the gradient is to be evaluated. - The gradient of the function at the point x. - - - - The Hybrid (also called Hamiltonian) Monte Carlo produces samples from distribution P using a set - of Hamiltonian equations to guide the sampling process. It uses the negative of the log density as - a potential energy, and a randomly generated momentum to set up a Hamiltonian system, which is then used - to sample the distribution. This can result in a faster convergence than the random walk Metropolis sampler - (). - - The type of samples this sampler produces. - - - - The delegate type that defines a derivative evaluated at a certain point. - - Function to be differentiated. - Value where the derivative is computed. - - - - Evaluates the energy function of the target distribution. - - - - - The current location of the sampler. - - - - - The number of burn iterations between two samples. - - - - - The size of each step in the Hamiltonian equation. - - - - - The number of iterations in the Hamiltonian equation. - - - - - The algorithm used for differentiation. - - - - - Gets or sets the number of iterations in between returning samples. - - When burn interval is negative. - - - - Gets or sets the number of iterations in the Hamiltonian equation. - - When frog leap steps is negative or zero. - - - - Gets or sets the size of each step in the Hamiltonian equation. - - When step size is negative or zero. - - - - Constructs a new Hybrid Monte Carlo sampler. - - The initial sample. - The log density of the distribution we want to sample from. - Number frog leap simulation steps. - Size of the frog leap simulation steps. - The number of iterations in between returning samples. - Random number generator used for sampling the momentum. - The method used for differentiation. - When the number of burnInterval iteration is negative. - When either x0, pdfLnP or diff is null. - - - - Returns a sample from the distribution P. - - - - - This method runs the sampler for a number of iterations without returning a sample - - - - - Method used to update the sample location. Used in the end of the loop. - - The old energy. - The old gradient/derivative of the energy. - The new sample. - The new gradient/derivative of the energy. - The new energy. - The difference between the old Hamiltonian and new Hamiltonian. Use to determine - if an update should take place. - - - - Use for creating temporary objects in the Burn method. - - An object of type T. - - - - Use for copying objects in the Burn method. - - The source of copying. - A copy of the source object. - - - - Method for doing dot product. - - First vector/scalar in the product. - Second vector/scalar in the product. - - - - Method for adding, multiply the second vector/scalar by factor and then - add it to the first vector/scalar. - - First vector/scalar. - Scalar factor multiplying by the second vector/scalar. - Second vector/scalar. - - - - Multiplying the second vector/scalar by factor and then subtract it from - the first vector/scalar. - - First vector/scalar. - Scalar factor to be multiplied to the second vector/scalar. - Second vector/scalar. - - - - Method for sampling a random momentum. - - Momentum to be randomized. - - - - The Hamiltonian equations that is used to produce the new sample. - - - - - Method to compute the Hamiltonian used in the method. - - The momentum. - The energy. - Hamiltonian=E+p.p/2 - - - - Method to check and set a quantity to a non-negative value. - - Proposed value to be checked. - Returns value if it is greater than or equal to zero. - Throws when value is negative. - - - - Method to check and set a quantity to a non-negative value. - - Proposed value to be checked. - Returns value if it is greater than to zero. - Throws when value is negative or zero. - - - - Method to check and set a quantity to a non-negative value. - - Proposed value to be checked. - Returns value if it is greater than zero. - Throws when value is negative or zero. - - - - Provides utilities to analysis the convergence of a set of samples from - a . - - - - - Computes the auto correlations of a series evaluated by a function f. - - The series for computing the auto correlation. - The lag in the series - The function used to evaluate the series. - The auto correlation. - Throws if lag is zero or if lag is - greater than or equal to the length of Series. - - - - Computes the effective size of the sample when evaluated by a function f. - - The samples. - The function use for evaluating the series. - The effective size when auto correlation is taken into account. - - - - A method which samples datapoints from a proposal distribution. The implementation of this sampler - is stateless: no variables are saved between two calls to Sample. This proposal is different from - in that it doesn't take any parameters; it samples random - variables from the whole domain. - - The type of the datapoints. - A sample from the proposal distribution. - - - - A method which samples datapoints from a proposal distribution given an initial sample. The implementation - of this sampler is stateless: no variables are saved between two calls to Sample. This proposal is different from - in that it samples locally around an initial point. In other words, it - makes a small local move rather than producing a global sample from the proposal. - - The type of the datapoints. - The initial sample. - A sample from the proposal distribution. - - - - A function which evaluates a density. - - The type of data the distribution is over. - The sample we want to evaluate the density for. - - - - A function which evaluates a log density. - - The type of data the distribution is over. - The sample we want to evaluate the log density for. - - - - A function which evaluates the log of a transition kernel probability. - - The type for the space over which this transition kernel is defined. - The new state in the transition. - The previous state in the transition. - The log probability of the transition. - - - - The interface which every sampler must implement. - - The type of samples this sampler produces. - - - - The random number generator for this class. - - - - - Keeps track of the number of accepted samples. - - - - - Keeps track of the number of calls to the proposal sampler. - - - - - Initializes a new instance of the class. - - Thread safe instances are two and half times slower than non-thread - safe classes. - - - - Gets or sets the random number generator. - - When the random number generator is null. - - - - Returns one sample. - - - - - Returns a number of samples. - - The number of samples we want. - An array of samples. - - - - Gets the acceptance rate of the sampler. - - - - - Metropolis-Hastings sampling produces samples from distribution P by sampling from a proposal distribution Q - and accepting/rejecting based on the density of P. Metropolis-Hastings sampling doesn't require that the - proposal distribution Q is symmetric in comparison to . It does need to - be able to evaluate the proposal sampler's log density though. All densities are required to be in log space. - - The Metropolis-Hastings sampler is a stateful sampler. It keeps track of where it currently is in the domain - of the distribution P. - - The type of samples this sampler produces. - - - - Evaluates the log density function of the target distribution. - - - - - Evaluates the log transition probability for the proposal distribution. - - - - - A function which samples from a proposal distribution. - - - - - The current location of the sampler. - - - - - The log density at the current location. - - - - - The number of burn iterations between two samples. - - - - - Constructs a new Metropolis-Hastings sampler using the default random number generator. This - constructor will set the burn interval. - - The initial sample. - The log density of the distribution we want to sample from. - The log transition probability for the proposal distribution. - A method that samples from the proposal distribution. - The number of iterations in between returning samples. - When the number of burnInterval iteration is negative. - - - - Gets or sets the number of iterations in between returning samples. - - When burn interval is negative. - - - - This method runs the sampler for a number of iterations without returning a sample - - - - - Returns a sample from the distribution P. - - - - - Metropolis sampling produces samples from distribution P by sampling from a proposal distribution Q - and accepting/rejecting based on the density of P. Metropolis sampling requires that the proposal - distribution Q is symmetric. All densities are required to be in log space. - - The Metropolis sampler is a stateful sampler. It keeps track of where it currently is in the domain - of the distribution P. - - The type of samples this sampler produces. - - - - Evaluates the log density function of the sampling distribution. - - - - - A function which samples from a proposal distribution. - - - - - The current location of the sampler. - - - - - The log density at the current location. - - - - - The number of burn iterations between two samples. - - - - - Constructs a new Metropolis sampler using the default random number generator. - - The initial sample. - The log density of the distribution we want to sample from. - A method that samples from the symmetric proposal distribution. - The number of iterations in between returning samples. - When the number of burnInterval iteration is negative. - - - - Gets or sets the number of iterations in between returning samples. - - When burn interval is negative. - - - - This method runs the sampler for a number of iterations without returning a sample - - - - - Returns a sample from the distribution P. - - - - - Rejection sampling produces samples from distribution P by sampling from a proposal distribution Q - and accepting/rejecting based on the density of P and Q. The density of P and Q don't need to - to be normalized, but we do need that for each x, P(x) < Q(x). - - The type of samples this sampler produces. - - - - Evaluates the density function of the sampling distribution. - - - - - Evaluates the density function of the proposal distribution. - - - - - A function which samples from a proposal distribution. - - - - - Constructs a new rejection sampler using the default random number generator. - - The density of the distribution we want to sample from. - The density of the proposal distribution. - A method that samples from the proposal distribution. - - - - Returns a sample from the distribution P. - - When the algorithms detects that the proposal - distribution doesn't upper bound the target distribution. - - - - A hybrid Monte Carlo sampler for univariate distributions. - - - - - Distribution to sample momentum from. - - - - - Standard deviations used in the sampling of the - momentum. - - - - - Gets or sets the standard deviation used in the sampling of the - momentum. - - When standard deviation is negative. - - - - Constructs a new Hybrid Monte Carlo sampler for a univariate probability distribution. - The momentum will be sampled from a normal distribution with standard deviation - specified by pSdv using the default random - number generator. A three point estimation will be used for differentiation. - This constructor will set the burn interval. - - The initial sample. - The log density of the distribution we want to sample from. - Number frog leap simulation steps. - Size of the frog leap simulation steps. - The number of iterations in between returning samples. - The standard deviation of the normal distribution that is used to sample - the momentum. - When the number of burnInterval iteration is negative. - - - - Constructs a new Hybrid Monte Carlo sampler for a univariate probability distribution. - The momentum will be sampled from a normal distribution with standard deviation - specified by pSdv using a random - number generator provided by the user. A three point estimation will be used for differentiation. - This constructor will set the burn interval. - - The initial sample. - The log density of the distribution we want to sample from. - Number frog leap simulation steps. - Size of the frog leap simulation steps. - The number of iterations in between returning samples. - The standard deviation of the normal distribution that is used to sample - the momentum. - Random number generator used to sample the momentum. - When the number of burnInterval iteration is negative. - - - - Constructs a new Hybrid Monte Carlo sampler for a multivariate probability distribution. - The momentum will be sampled from a normal distribution with standard deviation - given by pSdv using a random - number generator provided by the user. This constructor will set both the burn interval and the method used for - numerical differentiation. - - The initial sample. - The log density of the distribution we want to sample from. - Number frog leap simulation steps. - Size of the frog leap simulation steps. - The number of iterations in between returning samples. - The standard deviation of the normal distribution that is used to sample - the momentum. - The method used for numerical differentiation. - Random number generator used for sampling the momentum. - When the number of burnInterval iteration is negative. - - - - Use for copying objects in the Burn method. - - The source of copying. - A copy of the source object. - - - - Use for creating temporary objects in the Burn method. - - An object of type T. - - - - - - - - - - - - - Samples the momentum from a normal distribution. - - The momentum to be randomized. - - - - The default method used for computing the derivative. Uses a simple three point estimation. - - Function for which the derivative is to be evaluated. - The location where the derivative is to be evaluated. - The derivative of the function at the point x. - - - - Slice sampling produces samples from distribution P by uniformly sampling from under the pdf of P using - a technique described in "Slice Sampling", R. Neal, 2003. All densities are required to be in log space. - - The slice sampler is a stateful sampler. It keeps track of where it currently is in the domain - of the distribution P. - - - - - Evaluates the log density function of the target distribution. - - - - - The current location of the sampler. - - - - - The log density at the current location. - - - - - The number of burn iterations between two samples. - - - - - The scale of the slice sampler. - - - - - Constructs a new Slice sampler using the default random - number generator. The burn interval will be set to 0. - - The initial sample. - The density of the distribution we want to sample from. - The scale factor of the slice sampler. - When the scale of the slice sampler is not positive. - - - - Constructs a new slice sampler using the default random number generator. It - will set the number of burnInterval iterations and run a burnInterval phase. - - The initial sample. - The density of the distribution we want to sample from. - The number of iterations in between returning samples. - The scale factor of the slice sampler. - When the number of burnInterval iteration is negative. - When the scale of the slice sampler is not positive. - - - - Gets or sets the number of iterations in between returning samples. - - When burn interval is negative. - - - - Gets or sets the scale of the slice sampler. - - - - - This method runs the sampler for a number of iterations without returning a sample - - - - - Returns a sample from the distribution P. - - - - - Running statistics over a window of data, allows updating by adding values. - - - - - Gets the total number of samples. - - - - - Returns the minimum value in the sample data. - Returns NaN if data is empty or if any entry is NaN. - - - - - Returns the maximum value in the sample data. - Returns NaN if data is empty or if any entry is NaN. - - - - - Evaluates the sample mean, an estimate of the population mean. - Returns NaN if data is empty or if any entry is NaN. - - - - - Estimates the unbiased population variance from the provided samples. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN if data has less than two entries or if any entry is NaN. - - - - - Evaluates the variance from the provided full population. - On a dataset of size N will use an N normalizer and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - - - - - Estimates the unbiased population standard deviation from the provided samples. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN if data has less than two entries or if any entry is NaN. - - - - - Evaluates the standard deviation from the provided full population. - On a dataset of size N will use an N normalizer and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - - - - - Update the running statistics by adding another observed sample (in-place). - - - - - Update the running statistics by adding a sequence of observed sample (in-place). - - - - Replace ties with their mean (non-integer ranks). Default. - - - Replace ties with their minimum (typical sports ranking). - - - Replace ties with their maximum. - - - Permutation with increasing values at each index of ties. - - - - Running statistics accumulator, allows updating by adding values - or by combining two accumulators. - - - This type declares a DataContract for out of the box ephemeral serialization - with engines like DataContractSerializer, Protocol Buffers and FsPickler, - but does not guarantee any compatibility between versions. - It is not recommended to rely on this mechanism for durable persistence. - - - - - Gets the total number of samples. - - - - - Returns the minimum value in the sample data. - Returns NaN if data is empty or if any entry is NaN. - - - - - Returns the maximum value in the sample data. - Returns NaN if data is empty or if any entry is NaN. - - - - - Evaluates the sample mean, an estimate of the population mean. - Returns NaN if data is empty or if any entry is NaN. - - - - - Estimates the unbiased population variance from the provided samples. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN if data has less than two entries or if any entry is NaN. - - - - - Evaluates the variance from the provided full population. - On a dataset of size N will use an N normalizer and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - - - - - Estimates the unbiased population standard deviation from the provided samples. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN if data has less than two entries or if any entry is NaN. - - - - - Evaluates the standard deviation from the provided full population. - On a dataset of size N will use an N normalizer and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - - - - - Estimates the unbiased population skewness from the provided samples. - Uses a normalizer (Bessel's correction; type 2). - Returns NaN if data has less than three entries or if any entry is NaN. - - - - - Evaluates the population skewness from the full population. - Does not use a normalizer and would thus be biased if applied to a subset (type 1). - Returns NaN if data has less than two entries or if any entry is NaN. - - - - - Estimates the unbiased population excess kurtosis from the provided samples. - Uses a normalizer (Bessel's correction; type 2). - Returns NaN if data has less than four entries or if any entry is NaN. - - - - - Evaluates the population excess kurtosis from the full population. - Does not use a normalizer and would thus be biased if applied to a subset (type 1). - Returns NaN if data has less than three entries or if any entry is NaN. - - - - - Update the running statistics by adding another observed sample (in-place). - - - - - Update the running statistics by adding a sequence of observed sample (in-place). - - - - - Create a new running statistics over the combined samples of two existing running statistics. - - - - - Running weighted statistics accumulator, allows updating by adding values - or by combining two accumulators. Weights are reliability weights, not frequency weights. - - - This type declares a DataContract for out of the box ephemeral serialization - with engines like DataContractSerializer, Protocol Buffers and FsPickler, - but does not guarantee any compatibility between versions. - It is not recommended to rely on this mechanism for durable persistence. - - - - - Second moment - - - - - Third moment - - - - - Fourth moment - - - - - Total weight - - - - - Total of weights to the second power - - - - - Total of weights to the third power - - - - - Total of weights to the fourth power - - - - - The denominator in the variance calculation to perform a Bessel correction. - - - - - Gets the total number of samples with non-zero weight. - - - - - Returns the minimum value in the sample data. - Returns NaN if data is empty or if any entry is NaN. - - - - - Returns the maximum value in the sample data. - Returns NaN if data is empty or if any entry is NaN. - - - - - Evaluates the sample mean, an estimate of the population mean. - Returns NaN if data is empty or if any entry is NaN. - - - - - Estimates the unbiased population variance from the provided samples. - Will use the Bessel correction for reliability weighting. - Returns NaN if data has less than two entries or if any entry is NaN. - - - - - Evaluates the variance from the provided full population. - On a dataset of size N will use an N normalizer and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - - - - - Estimates the unbiased population standard deviation from the provided samples. - Will use the Bessel correction for reliability weighting. - Returns NaN if data has less than two entries or if any entry is NaN. - - - - - Evaluates the standard deviation from the provided full population. - On a dataset of size N will use an N normalizer and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - - - - - Estimates the unbiased population skewness from the provided samples. - Will use the Bessel correction for reliability weighting. - Returns NaN if data has less than three entries or if any entry is NaN. - - - - - Evaluates the population skewness from the full population. - Does not use a normalizer and would thus be biased if applied to a subset (type 1). - Returns NaN if data has less than two entries or if any entry is NaN. - - - - - Estimates the unbiased population excess kurtosis from the provided samples. - Will use the Bessel correction for reliability weighting. - Returns NaN if data has less than four entries or if any entry is NaN. - Equivalent formula for this for weighted distributions are unknown. - - - - - Evaluates the population excess kurtosis from the full population. - Does not use a normalizer and would thus be biased if applied to a subset (type 1). - Returns NaN if data has less than three entries or if any entry is NaN. - - - - - Evaluates the total weight of the population. - - - - - The Kish's Effective Sample Size - - - - - Update the running statistics by adding another observed sample (in-place). - - - - - Update the running statistics by adding a sequence of weighted observatopms (in-place). - - - - - Update the running statistics by adding a sequence of weighted observatopms (in-place). - - - - - Create a new running statistics over the combined samples of two existing running statistics. - - - - - Statistics operating on an array already sorted ascendingly. - - - - - - - - Returns the smallest value from the sorted data array (ascending). - - Sample array, must be sorted ascendingly. - - - - Returns the largest value from the sorted data array (ascending). - - Sample array, must be sorted ascendingly. - - - - Returns the order statistic (order 1..N) from the sorted data array (ascending). - - Sample array, must be sorted ascendingly. - One-based order of the statistic, must be between 1 and N (inclusive). - - - - Estimates the median value from the sorted data array (ascending). - Approximately median-unbiased regardless of the sample distribution (R8). - - Sample array, must be sorted ascendingly. - - - - Estimates the p-Percentile value from the sorted data array (ascending). - If a non-integer Percentile is needed, use Quantile instead. - Approximately median-unbiased regardless of the sample distribution (R8). - - Sample array, must be sorted ascendingly. - Percentile selector, between 0 and 100 (inclusive). - - - - Estimates the first quartile value from the sorted data array (ascending). - Approximately median-unbiased regardless of the sample distribution (R8). - - Sample array, must be sorted ascendingly. - - - - Estimates the third quartile value from the sorted data array (ascending). - Approximately median-unbiased regardless of the sample distribution (R8). - - Sample array, must be sorted ascendingly. - - - - Estimates the inter-quartile range from the sorted data array (ascending). - Approximately median-unbiased regardless of the sample distribution (R8). - - Sample array, must be sorted ascendingly. - - - - Estimates {min, lower-quantile, median, upper-quantile, max} from the sorted data array (ascending). - Approximately median-unbiased regardless of the sample distribution (R8). - - Sample array, must be sorted ascendingly. - - - - Estimates the tau-th quantile from the sorted data array (ascending). - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. - Approximately median-unbiased regardless of the sample distribution (R8). - - Sample array, must be sorted ascendingly. - Quantile selector, between 0.0 and 1.0 (inclusive). - - R-8, SciPy-(1/3,1/3): - Linear interpolation of the approximate medians for order statistics. - When tau < (2/3) / (N + 1/3), use x1. When tau >= (N - 1/3) / (N + 1/3), use xN. - - - - - Estimates the tau-th quantile from the sorted data array (ascending). - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. The quantile definition can be specified - by 4 parameters a, b, c and d, consistent with Mathematica. - - Sample array, must be sorted ascendingly. - Quantile selector, between 0.0 and 1.0 (inclusive). - a-parameter - b-parameter - c-parameter - d-parameter - - - - Estimates the tau-th quantile from the sorted data array (ascending). - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. The quantile definition can be specified to be compatible - with an existing system. - - Sample array, must be sorted ascendingly. - Quantile selector, between 0.0 and 1.0 (inclusive). - Quantile definition, to choose what product/definition it should be consistent with - - - - Estimates the empirical cumulative distribution function (CDF) at x from the sorted data array (ascending). - - The data sample sequence. - The value where to estimate the CDF at. - - - - Estimates the quantile tau from the sorted data array (ascending). - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. The quantile definition can be specified to be compatible - with an existing system. - - The data sample sequence. - Quantile value. - Rank definition, to choose how ties should be handled and what product/definition it should be consistent with - - - - Evaluates the rank of each entry of the sorted data array (ascending). - The rank definition can be specified to be compatible - with an existing system. - - - - - Returns the smallest value from the sorted data array (ascending). - - Sample array, must be sorted ascendingly. - - - - Returns the largest value from the sorted data array (ascending). - - Sample array, must be sorted ascendingly. - - - - Returns the order statistic (order 1..N) from the sorted data array (ascending). - - Sample array, must be sorted ascendingly. - One-based order of the statistic, must be between 1 and N (inclusive). - - - - Estimates the median value from the sorted data array (ascending). - Approximately median-unbiased regardless of the sample distribution (R8). - - Sample array, must be sorted ascendingly. - - - - Estimates the p-Percentile value from the sorted data array (ascending). - If a non-integer Percentile is needed, use Quantile instead. - Approximately median-unbiased regardless of the sample distribution (R8). - - Sample array, must be sorted ascendingly. - Percentile selector, between 0 and 100 (inclusive). - - - - Estimates the first quartile value from the sorted data array (ascending). - Approximately median-unbiased regardless of the sample distribution (R8). - - Sample array, must be sorted ascendingly. - - - - Estimates the third quartile value from the sorted data array (ascending). - Approximately median-unbiased regardless of the sample distribution (R8). - - Sample array, must be sorted ascendingly. - - - - Estimates the inter-quartile range from the sorted data array (ascending). - Approximately median-unbiased regardless of the sample distribution (R8). - - Sample array, must be sorted ascendingly. - - - - Estimates {min, lower-quantile, median, upper-quantile, max} from the sorted data array (ascending). - Approximately median-unbiased regardless of the sample distribution (R8). - - Sample array, must be sorted ascendingly. - - - - Estimates the tau-th quantile from the sorted data array (ascending). - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. - Approximately median-unbiased regardless of the sample distribution (R8). - - Sample array, must be sorted ascendingly. - Quantile selector, between 0.0 and 1.0 (inclusive). - - R-8, SciPy-(1/3,1/3): - Linear interpolation of the approximate medians for order statistics. - When tau < (2/3) / (N + 1/3), use x1. When tau >= (N - 1/3) / (N + 1/3), use xN. - - - - - Estimates the tau-th quantile from the sorted data array (ascending). - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. The quantile definition can be specified - by 4 parameters a, b, c and d, consistent with Mathematica. - - Sample array, must be sorted ascendingly. - Quantile selector, between 0.0 and 1.0 (inclusive). - a-parameter - b-parameter - c-parameter - d-parameter - - - - Estimates the tau-th quantile from the sorted data array (ascending). - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. The quantile definition can be specified to be compatible - with an existing system. - - Sample array, must be sorted ascendingly. - Quantile selector, between 0.0 and 1.0 (inclusive). - Quantile definition, to choose what product/definition it should be consistent with - - - - Estimates the empirical cumulative distribution function (CDF) at x from the sorted data array (ascending). - - The data sample sequence. - The value where to estimate the CDF at. - - - - Estimates the quantile tau from the sorted data array (ascending). - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. The quantile definition can be specified to be compatible - with an existing system. - - The data sample sequence. - Quantile value. - Rank definition, to choose how ties should be handled and what product/definition it should be consistent with - - - - Evaluates the rank of each entry of the sorted data array (ascending). - The rank definition can be specified to be compatible - with an existing system. - - - - - Extension methods to return basic statistics on set of data. - - - - - Returns the minimum value in the sample data. - Returns NaN if data is empty or if any entry is NaN. - - The sample data. - The minimum value in the sample data. - - - - Returns the minimum value in the sample data. - Returns NaN if data is empty or if any entry is NaN. - - The sample data. - The minimum value in the sample data. - - - - Returns the minimum value in the sample data. - Returns NaN if data is empty or if any entry is NaN. - Null-entries are ignored. - - The sample data. - The minimum value in the sample data. - - - - Returns the maximum value in the sample data. - Returns NaN if data is empty or if any entry is NaN. - - The sample data. - The maximum value in the sample data. - - - - Returns the maximum value in the sample data. - Returns NaN if data is empty or if any entry is NaN. - - The sample data. - The maximum value in the sample data. - - - - Returns the maximum value in the sample data. - Returns NaN if data is empty or if any entry is NaN. - Null-entries are ignored. - - The sample data. - The maximum value in the sample data. - - - - Returns the minimum absolute value in the sample data. - Returns NaN if data is empty or if any entry is NaN. - - The sample data. - The minimum value in the sample data. - - - - Returns the minimum absolute value in the sample data. - Returns NaN if data is empty or if any entry is NaN. - - The sample data. - The minimum value in the sample data. - - - - Returns the maximum absolute value in the sample data. - Returns NaN if data is empty or if any entry is NaN. - - The sample data. - The maximum value in the sample data. - - - - Returns the maximum absolute value in the sample data. - Returns NaN if data is empty or if any entry is NaN. - - The sample data. - The maximum value in the sample data. - - - - Returns the minimum magnitude and phase value in the sample data. - Returns NaN if data is empty or if any entry is NaN. - - The sample data. - The minimum value in the sample data. - - - - Returns the minimum magnitude and phase value in the sample data. - Returns NaN if data is empty or if any entry is NaN. - - The sample data. - The minimum value in the sample data. - - - - Returns the maximum magnitude and phase value in the sample data. - Returns NaN if data is empty or if any entry is NaN. - - The sample data. - The minimum value in the sample data. - - - - Returns the maximum magnitude and phase value in the sample data. - Returns NaN if data is empty or if any entry is NaN. - - The sample data. - The minimum value in the sample data. - - - - Evaluates the sample mean, an estimate of the population mean. - Returns NaN if data is empty or if any entry is NaN. - - The data to calculate the mean of. - The mean of the sample. - - - - Evaluates the sample mean, an estimate of the population mean. - Returns NaN if data is empty or if any entry is NaN. - - The data to calculate the mean of. - The mean of the sample. - - - - Evaluates the sample mean, an estimate of the population mean. - Returns NaN if data is empty or if any entry is NaN. - Null-entries are ignored. - - The data to calculate the mean of. - The mean of the sample. - - - - Evaluates the geometric mean. - Returns NaN if data is empty or if any entry is NaN. - - The data to calculate the geometric mean of. - The geometric mean of the sample. - - - - Evaluates the geometric mean. - Returns NaN if data is empty or if any entry is NaN. - - The data to calculate the geometric mean of. - The geometric mean of the sample. - - - - Evaluates the harmonic mean. - Returns NaN if data is empty or if any entry is NaN. - - The data to calculate the harmonic mean of. - The harmonic mean of the sample. - - - - Evaluates the harmonic mean. - Returns NaN if data is empty or if any entry is NaN. - - The data to calculate the harmonic mean of. - The harmonic mean of the sample. - - - - Estimates the unbiased population variance from the provided samples. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN if data has less than two entries or if any entry is NaN. - - A subset of samples, sampled from the full population. - - - - Estimates the unbiased population variance from the provided samples. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN if data has less than two entries or if any entry is NaN. - - A subset of samples, sampled from the full population. - - - - Estimates the unbiased population variance from the provided samples. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN if data has less than two entries or if any entry is NaN. - Null-entries are ignored. - - A subset of samples, sampled from the full population. - - - - Evaluates the variance from the provided full population. - On a dataset of size N will use an N normalizer and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - - The full population data. - - - - Evaluates the variance from the provided full population. - On a dataset of size N will use an N normalizer and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - - The full population data. - - - - Evaluates the variance from the provided full population. - On a dataset of size N will use an N normalize and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - Null-entries are ignored. - - The full population data. - - - - Estimates the unbiased population standard deviation from the provided samples. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN if data has less than two entries or if any entry is NaN. - - A subset of samples, sampled from the full population. - - - - Estimates the unbiased population standard deviation from the provided samples. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN if data has less than two entries or if any entry is NaN. - - A subset of samples, sampled from the full population. - - - - Estimates the unbiased population standard deviation from the provided samples. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN if data has less than two entries or if any entry is NaN. - Null-entries are ignored. - - A subset of samples, sampled from the full population. - - - - Evaluates the standard deviation from the provided full population. - On a dataset of size N will use an N normalizer and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - - The full population data. - - - - Evaluates the standard deviation from the provided full population. - On a dataset of size N will use an N normalizer and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - - The full population data. - - - - Evaluates the standard deviation from the provided full population. - On a dataset of size N will use an N normalizer and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - Null-entries are ignored. - - The full population data. - - - - Estimates the unbiased population skewness from the provided samples. - Uses a normalizer (Bessel's correction; type 2). - Returns NaN if data has less than three entries or if any entry is NaN. - - A subset of samples, sampled from the full population. - - - - Estimates the unbiased population skewness from the provided samples. - Uses a normalizer (Bessel's correction; type 2). - Returns NaN if data has less than three entries or if any entry is NaN. - Null-entries are ignored. - - A subset of samples, sampled from the full population. - - - - Evaluates the skewness from the full population. - Does not use a normalizer and would thus be biased if applied to a subset (type 1). - Returns NaN if data has less than two entries or if any entry is NaN. - - The full population data. - - - - Evaluates the skewness from the full population. - Does not use a normalizer and would thus be biased if applied to a subset (type 1). - Returns NaN if data has less than two entries or if any entry is NaN. - Null-entries are ignored. - - The full population data. - - - - Estimates the unbiased population kurtosis from the provided samples. - Uses a normalizer (Bessel's correction; type 2). - Returns NaN if data has less than four entries or if any entry is NaN. - - A subset of samples, sampled from the full population. - - - - Estimates the unbiased population kurtosis from the provided samples. - Uses a normalizer (Bessel's correction; type 2). - Returns NaN if data has less than four entries or if any entry is NaN. - Null-entries are ignored. - - A subset of samples, sampled from the full population. - - - - Evaluates the kurtosis from the full population. - Does not use a normalizer and would thus be biased if applied to a subset (type 1). - Returns NaN if data has less than three entries or if any entry is NaN. - - The full population data. - - - - Evaluates the kurtosis from the full population. - Does not use a normalizer and would thus be biased if applied to a subset (type 1). - Returns NaN if data has less than three entries or if any entry is NaN. - Null-entries are ignored. - - The full population data. - - - - Estimates the sample mean and the unbiased population variance from the provided samples. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN for mean if data is empty or if any entry is NaN and NaN for variance if data has less than two entries or if any entry is NaN. - - The data to calculate the mean of. - The mean of the sample. - - - - Estimates the sample mean and the unbiased population variance from the provided samples. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN for mean if data is empty or if any entry is NaN and NaN for variance if data has less than two entries or if any entry is NaN. - - The data to calculate the mean of. - The mean of the sample. - - - - Estimates the sample mean and the unbiased population standard deviation from the provided samples. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN for mean if data is empty or if any entry is NaN and NaN for standard deviation if data has less than two entries or if any entry is NaN. - - The data to calculate the mean of. - The mean of the sample. - - - - Estimates the sample mean and the unbiased population standard deviation from the provided samples. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN for mean if data is empty or if any entry is NaN and NaN for standard deviation if data has less than two entries or if any entry is NaN. - - The data to calculate the mean of. - The mean of the sample. - - - - Estimates the unbiased population skewness and kurtosis from the provided samples in a single pass. - Uses a normalizer (Bessel's correction; type 2). - - A subset of samples, sampled from the full population. - - - - Evaluates the skewness and kurtosis from the full population. - Does not use a normalizer and would thus be biased if applied to a subset (type 1). - - The full population data. - - - - Estimates the unbiased population covariance from the provided samples. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN if data has less than two entries or if any entry is NaN. - - A subset of samples, sampled from the full population. - A subset of samples, sampled from the full population. - - - - Estimates the unbiased population covariance from the provided samples. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN if data has less than two entries or if any entry is NaN. - - A subset of samples, sampled from the full population. - A subset of samples, sampled from the full population. - - - - Estimates the unbiased population covariance from the provided samples. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN if data has less than two entries or if any entry is NaN. - Null-entries are ignored. - - A subset of samples, sampled from the full population. - A subset of samples, sampled from the full population. - - - - Evaluates the population covariance from the provided full populations. - On a dataset of size N will use an N normalizer and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - - The full population data. - The full population data. - - - - Evaluates the population covariance from the provided full populations. - On a dataset of size N will use an N normalizer and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - - The full population data. - The full population data. - - - - Evaluates the population covariance from the provided full populations. - On a dataset of size N will use an N normalize and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - Null-entries are ignored. - - The full population data. - The full population data. - - - - Evaluates the root mean square (RMS) also known as quadratic mean. - Returns NaN if data is empty or if any entry is NaN. - - The data to calculate the RMS of. - - - - Evaluates the root mean square (RMS) also known as quadratic mean. - Returns NaN if data is empty or if any entry is NaN. - - The data to calculate the RMS of. - - - - Evaluates the root mean square (RMS) also known as quadratic mean. - Returns NaN if data is empty or if any entry is NaN. - Null-entries are ignored. - - The data to calculate the mean of. - - - - Estimates the sample median from the provided samples (R8). - - The data sample sequence. - - - - Estimates the sample median from the provided samples (R8). - - The data sample sequence. - - - - Estimates the sample median from the provided samples (R8). - - The data sample sequence. - - - - Estimates the tau-th quantile from the provided samples. - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. - Approximately median-unbiased regardless of the sample distribution (R8). - - The data sample sequence. - Quantile selector, between 0.0 and 1.0 (inclusive). - - - - Estimates the tau-th quantile from the provided samples. - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. - Approximately median-unbiased regardless of the sample distribution (R8). - - The data sample sequence. - Quantile selector, between 0.0 and 1.0 (inclusive). - - - - Estimates the tau-th quantile from the provided samples. - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. - Approximately median-unbiased regardless of the sample distribution (R8). - - The data sample sequence. - Quantile selector, between 0.0 and 1.0 (inclusive). - - - - Estimates the tau-th quantile from the provided samples. - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. - Approximately median-unbiased regardless of the sample distribution (R8). - - The data sample sequence. - - - - Estimates the tau-th quantile from the provided samples. - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. - Approximately median-unbiased regardless of the sample distribution (R8). - - The data sample sequence. - - - - Estimates the tau-th quantile from the provided samples. - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. - Approximately median-unbiased regardless of the sample distribution (R8). - - The data sample sequence. - - - - Estimates the tau-th quantile from the provided samples. - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. The quantile definition can be specified to be compatible - with an existing system. - - The data sample sequence. - Quantile selector, between 0.0 and 1.0 (inclusive). - Quantile definition, to choose what product/definition it should be consistent with - - - - Estimates the tau-th quantile from the provided samples. - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. The quantile definition can be specified to be compatible - with an existing system. - - The data sample sequence. - Quantile selector, between 0.0 and 1.0 (inclusive). - Quantile definition, to choose what product/definition it should be consistent with - - - - Estimates the tau-th quantile from the provided samples. - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. The quantile definition can be specified to be compatible - with an existing system. - - The data sample sequence. - Quantile selector, between 0.0 and 1.0 (inclusive). - Quantile definition, to choose what product/definition it should be consistent with - - - - Estimates the tau-th quantile from the provided samples. - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. The quantile definition can be specified to be compatible - with an existing system. - - The data sample sequence. - Quantile definition, to choose what product/definition it should be consistent with - - - - Estimates the tau-th quantile from the provided samples. - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. The quantile definition can be specified to be compatible - with an existing system. - - The data sample sequence. - Quantile definition, to choose what product/definition it should be consistent with - - - - Estimates the tau-th quantile from the provided samples. - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. The quantile definition can be specified to be compatible - with an existing system. - - The data sample sequence. - Quantile definition, to choose what product/definition it should be consistent with - - - - Estimates the p-Percentile value from the provided samples. - If a non-integer Percentile is needed, use Quantile instead. - Approximately median-unbiased regardless of the sample distribution (R8). - - The data sample sequence. - Percentile selector, between 0 and 100 (inclusive). - - - - Estimates the p-Percentile value from the provided samples. - If a non-integer Percentile is needed, use Quantile instead. - Approximately median-unbiased regardless of the sample distribution (R8). - - The data sample sequence. - Percentile selector, between 0 and 100 (inclusive). - - - - Estimates the p-Percentile value from the provided samples. - If a non-integer Percentile is needed, use Quantile instead. - Approximately median-unbiased regardless of the sample distribution (R8). - - The data sample sequence. - Percentile selector, between 0 and 100 (inclusive). - - - - Estimates the p-Percentile value from the provided samples. - If a non-integer Percentile is needed, use Quantile instead. - Approximately median-unbiased regardless of the sample distribution (R8). - - The data sample sequence. - - - - Estimates the p-Percentile value from the provided samples. - If a non-integer Percentile is needed, use Quantile instead. - Approximately median-unbiased regardless of the sample distribution (R8). - - The data sample sequence. - - - - Estimates the p-Percentile value from the provided samples. - If a non-integer Percentile is needed, use Quantile instead. - Approximately median-unbiased regardless of the sample distribution (R8). - - The data sample sequence. - - - - Estimates the first quartile value from the provided samples. - Approximately median-unbiased regardless of the sample distribution (R8). - - The data sample sequence. - - - - Estimates the first quartile value from the provided samples. - Approximately median-unbiased regardless of the sample distribution (R8). - - The data sample sequence. - - - - Estimates the first quartile value from the provided samples. - Approximately median-unbiased regardless of the sample distribution (R8). - - The data sample sequence. - - - - Estimates the third quartile value from the provided samples. - Approximately median-unbiased regardless of the sample distribution (R8). - - The data sample sequence. - - - - Estimates the third quartile value from the provided samples. - Approximately median-unbiased regardless of the sample distribution (R8). - - The data sample sequence. - - - - Estimates the third quartile value from the provided samples. - Approximately median-unbiased regardless of the sample distribution (R8). - - The data sample sequence. - - - - Estimates the inter-quartile range from the provided samples. - Approximately median-unbiased regardless of the sample distribution (R8). - - The data sample sequence. - - - - Estimates the inter-quartile range from the provided samples. - Approximately median-unbiased regardless of the sample distribution (R8). - - The data sample sequence. - - - - Estimates the inter-quartile range from the provided samples. - Approximately median-unbiased regardless of the sample distribution (R8). - - The data sample sequence. - - - - Estimates {min, lower-quantile, median, upper-quantile, max} from the provided samples. - Approximately median-unbiased regardless of the sample distribution (R8). - - The data sample sequence. - - - - Estimates {min, lower-quantile, median, upper-quantile, max} from the provided samples. - Approximately median-unbiased regardless of the sample distribution (R8). - - The data sample sequence. - - - - Estimates {min, lower-quantile, median, upper-quantile, max} from the provided samples. - Approximately median-unbiased regardless of the sample distribution (R8). - - The data sample sequence. - - - - Returns the order statistic (order 1..N) from the provided samples. - - The data sample sequence. - One-based order of the statistic, must be between 1 and N (inclusive). - - - - Returns the order statistic (order 1..N) from the provided samples. - - The data sample sequence. - One-based order of the statistic, must be between 1 and N (inclusive). - - - - Returns the order statistic (order 1..N) from the provided samples. - - The data sample sequence. - - - - Returns the order statistic (order 1..N) from the provided samples. - - The data sample sequence. - - - - Evaluates the rank of each entry of the provided samples. - The rank definition can be specified to be compatible - with an existing system. - - The data sample sequence. - Rank definition, to choose how ties should be handled and what product/definition it should be consistent with - - - - Evaluates the rank of each entry of the provided samples. - The rank definition can be specified to be compatible - with an existing system. - - The data sample sequence. - Rank definition, to choose how ties should be handled and what product/definition it should be consistent with - - - - Evaluates the rank of each entry of the provided samples. - The rank definition can be specified to be compatible - with an existing system. - - The data sample sequence. - Rank definition, to choose how ties should be handled and what product/definition it should be consistent with - - - - Estimates the quantile tau from the provided samples. - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. The quantile definition can be specified to be compatible - with an existing system. - - The data sample sequence. - Quantile value. - Rank definition, to choose how ties should be handled and what product/definition it should be consistent with - - - - Estimates the quantile tau from the provided samples. - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. The quantile definition can be specified to be compatible - with an existing system. - - The data sample sequence. - Quantile value. - Rank definition, to choose how ties should be handled and what product/definition it should be consistent with - - - - Estimates the quantile tau from the provided samples. - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. The quantile definition can be specified to be compatible - with an existing system. - - The data sample sequence. - Quantile value. - Rank definition, to choose how ties should be handled and what product/definition it should be consistent with - - - - Estimates the quantile tau from the provided samples. - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. The quantile definition can be specified to be compatible - with an existing system. - - The data sample sequence. - Rank definition, to choose how ties should be handled and what product/definition it should be consistent with - - - - Estimates the quantile tau from the provided samples. - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. The quantile definition can be specified to be compatible - with an existing system. - - The data sample sequence. - Rank definition, to choose how ties should be handled and what product/definition it should be consistent with - - - - Estimates the quantile tau from the provided samples. - The tau-th quantile is the data value where the cumulative distribution - function crosses tau. The quantile definition can be specified to be compatible - with an existing system. - - The data sample sequence. - Rank definition, to choose how ties should be handled and what product/definition it should be consistent with - - - - Estimates the empirical cumulative distribution function (CDF) at x from the provided samples. - - The data sample sequence. - The value where to estimate the CDF at. - - - - Estimates the empirical cumulative distribution function (CDF) at x from the provided samples. - - The data sample sequence. - The value where to estimate the CDF at. - - - - Estimates the empirical cumulative distribution function (CDF) at x from the provided samples. - - The data sample sequence. - The value where to estimate the CDF at. - - - - Estimates the empirical cumulative distribution function (CDF) at x from the provided samples. - - The data sample sequence. - - - - Estimates the empirical cumulative distribution function (CDF) at x from the provided samples. - - The data sample sequence. - - - - Estimates the empirical cumulative distribution function (CDF) at x from the provided samples. - - The data sample sequence. - - - - Estimates the empirical inverse CDF at tau from the provided samples. - - The data sample sequence. - Quantile selector, between 0.0 and 1.0 (inclusive). - - - - Estimates the empirical inverse CDF at tau from the provided samples. - - The data sample sequence. - Quantile selector, between 0.0 and 1.0 (inclusive). - - - - Estimates the empirical inverse CDF at tau from the provided samples. - - The data sample sequence. - Quantile selector, between 0.0 and 1.0 (inclusive). - - - - Estimates the empirical inverse CDF at tau from the provided samples. - - The data sample sequence. - - - - Estimates the empirical inverse CDF at tau from the provided samples. - - The data sample sequence. - - - - Estimates the empirical inverse CDF at tau from the provided samples. - - The data sample sequence. - - - - Calculates the entropy of a stream of double values in bits. - Returns NaN if any of the values in the stream are NaN. - - The data sample sequence. - - - - Calculates the entropy of a stream of double values in bits. - Returns NaN if any of the values in the stream are NaN. - Null-entries are ignored. - - The data sample sequence. - - - - Evaluates the sample mean over a moving window, for each samples. - Returns NaN if no data is empty or if any entry is NaN. - - The sample stream to calculate the mean of. - The number of last samples to consider. - - - - Statistics operating on an IEnumerable in a single pass, without keeping the full data in memory. - Can be used in a streaming way, e.g. on large datasets not fitting into memory. - - - - - - - - Returns the smallest value from the enumerable, in a single pass without memoization. - Returns NaN if data is empty or any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Returns the smallest value from the enumerable, in a single pass without memoization. - Returns NaN if data is empty or any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Returns the largest value from the enumerable, in a single pass without memoization. - Returns NaN if data is empty or any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Returns the largest value from the enumerable, in a single pass without memoization. - Returns NaN if data is empty or any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Returns the smallest absolute value from the enumerable, in a single pass without memoization. - Returns NaN if data is empty or any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Returns the smallest absolute value from the enumerable, in a single pass without memoization. - Returns NaN if data is empty or any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Returns the largest absolute value from the enumerable, in a single pass without memoization. - Returns NaN if data is empty or any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Returns the largest absolute value from the enumerable, in a single pass without memoization. - Returns NaN if data is empty or any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Returns the smallest absolute value from the enumerable, in a single pass without memoization. - Returns NaN if data is empty or any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Returns the smallest absolute value from the enumerable, in a single pass without memoization. - Returns NaN if data is empty or any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Returns the largest absolute value from the enumerable, in a single pass without memoization. - Returns NaN if data is empty or any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Returns the largest absolute value from the enumerable, in a single pass without memoization. - Returns NaN if data is empty or any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Estimates the arithmetic sample mean from the enumerable, in a single pass without memoization. - Returns NaN if data is empty or any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Estimates the arithmetic sample mean from the enumerable, in a single pass without memoization. - Returns NaN if data is empty or any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Evaluates the geometric mean of the enumerable, in a single pass without memoization. - Returns NaN if data is empty or any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Evaluates the geometric mean of the enumerable, in a single pass without memoization. - Returns NaN if data is empty or any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Evaluates the harmonic mean of the enumerable, in a single pass without memoization. - Returns NaN if data is empty or any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Evaluates the harmonic mean of the enumerable, in a single pass without memoization. - Returns NaN if data is empty or any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Estimates the unbiased population variance from the provided samples as enumerable sequence, in a single pass without memoization. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN if data has less than two entries or if any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Estimates the unbiased population variance from the provided samples as enumerable sequence, in a single pass without memoization. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN if data has less than two entries or if any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Evaluates the population variance from the full population provided as enumerable sequence, in a single pass without memoization. - On a dataset of size N will use an N normalizer and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Evaluates the population variance from the full population provided as enumerable sequence, in a single pass without memoization. - On a dataset of size N will use an N normalizer and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Estimates the unbiased population standard deviation from the provided samples as enumerable sequence, in a single pass without memoization. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN if data has less than two entries or if any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Estimates the unbiased population standard deviation from the provided samples as enumerable sequence, in a single pass without memoization. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN if data has less than two entries or if any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Evaluates the population standard deviation from the full population provided as enumerable sequence, in a single pass without memoization. - On a dataset of size N will use an N normalizer and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Evaluates the population standard deviation from the full population provided as enumerable sequence, in a single pass without memoization. - On a dataset of size N will use an N normalizer and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Estimates the arithmetic sample mean and the unbiased population variance from the provided samples as enumerable sequence, in a single pass without memoization. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN for mean if data is empty or any entry is NaN, and NaN for variance if data has less than two entries or if any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Estimates the arithmetic sample mean and the unbiased population variance from the provided samples as enumerable sequence, in a single pass without memoization. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN for mean if data is empty or any entry is NaN, and NaN for variance if data has less than two entries or if any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Estimates the arithmetic sample mean and the unbiased population standard deviation from the provided samples as enumerable sequence, in a single pass without memoization. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN for mean if data is empty or any entry is NaN, and NaN for standard deviation if data has less than two entries or if any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Estimates the arithmetic sample mean and the unbiased population standard deviation from the provided samples as enumerable sequence, in a single pass without memoization. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN for mean if data is empty or any entry is NaN, and NaN for standard deviation if data has less than two entries or if any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Estimates the unbiased population covariance from the provided two sample enumerable sequences, in a single pass without memoization. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN if data has less than two entries or if any entry is NaN. - - First sample stream. - Second sample stream. - - - - Estimates the unbiased population covariance from the provided two sample enumerable sequences, in a single pass without memoization. - On a dataset of size N will use an N-1 normalizer (Bessel's correction). - Returns NaN if data has less than two entries or if any entry is NaN. - - First sample stream. - Second sample stream. - - - - Evaluates the population covariance from the full population provided as two enumerable sequences, in a single pass without memoization. - On a dataset of size N will use an N normalizer and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - - First population stream. - Second population stream. - - - - Evaluates the population covariance from the full population provided as two enumerable sequences, in a single pass without memoization. - On a dataset of size N will use an N normalizer and would thus be biased if applied to a subset. - Returns NaN if data is empty or if any entry is NaN. - - First population stream. - Second population stream. - - - - Estimates the root mean square (RMS) also known as quadratic mean from the enumerable, in a single pass without memoization. - Returns NaN if data is empty or any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Estimates the root mean square (RMS) also known as quadratic mean from the enumerable, in a single pass without memoization. - Returns NaN if data is empty or any entry is NaN. - - Sample stream, no sorting is assumed. - - - - Calculates the entropy of a stream of double values. - Returns NaN if any of the values in the stream are NaN. - - The input stream to evaluate. - - - - - Computes the basic statistics of data set. The class meets the - NIST standard of accuracy for mean, variance, and standard deviation - (the only statistics they provide exact values for) and exceeds them - in increased accuracy mode. - Recommendation: consider to use RunningWeightedStatistics instead. - - - This type declares a DataContract for out of the box ephemeral serialization - with engines like DataContractSerializer, Protocol Buffers and FsPickler, - but does not guarantee any compatibility between versions. - It is not recommended to rely on this mechanism for durable persistence. - - - - - Initializes a new instance of the class. - - The sample data. - - If set to true, increased accuracy mode used. - Increased accuracy mode uses types for internal calculations. - - - Don't use increased accuracy for data sets containing large values (in absolute value). - This may cause the calculations to overflow. - - - - - Initializes a new instance of the class. - - The sample data. - - If set to true, increased accuracy mode used. - Increased accuracy mode uses types for internal calculations. - - - Don't use increased accuracy for data sets containing large values (in absolute value). - This may cause the calculations to overflow. - - - - - Gets the size of the sample. - - The size of the sample. - - - - Gets the sample mean. - - The sample mean. - - - - Gets the unbiased population variance estimator (on a dataset of size N will use an N-1 normalizer). - - The sample variance. - - - - Gets the unbiased population standard deviation (on a dataset of size N will use an N-1 normalizer). - - The sample standard deviation. - - - - Gets the unbiased estimator of the population skewness. - - The sample skewness. - Returns zero if is less than three. - - - - Gets the unbiased estimator of the population excess kurtosis using the G_2 estimator. - - The sample kurtosis. - Returns zero if is less than four. - - - - Gets the maximum sample value. - - The maximum sample value. - - - - Gets the minimum sample value. - - The minimum sample value. - - - - Gets the total weight. When used with unweighted data, returns the number of samples. - - The total weight. - - - - The Kish's effective sample size https://en.wikipedia.org/wiki/Effective_sample_size - - The Kish's effective sample size. - - - - Computes descriptive statistics from a stream of data values and reliability weights. - - A sequence of datapoints. - - - - Computes descriptive statistics from a stream of data values and reliability weights. - - A sequence of datapoints. - - - - Internal use. Method use for setting the statistics. - - For setting Mean. - For setting Variance. - For setting Skewness. - For setting Kurtosis. - For setting Minimum. - For setting Maximum. - For setting Count. - - - - Used to simplify parallel code, particularly between the .NET 4.0 and Silverlight Code. - - - - - Executes a for loop in which iterations may run in parallel. - - The start index, inclusive. - The end index, exclusive. - The body to be invoked for each iteration range. - - - - Executes a for loop in which iterations may run in parallel. - - The start index, inclusive. - The end index, exclusive. - The partition size for splitting work into smaller pieces. - The body to be invoked for each iteration range. - - - - Executes each of the provided actions inside a discrete, asynchronous task. - - An array of actions to execute. - The actions array contains a null element. - At least one invocation of the actions threw an exception. - - - - Selects an item (such as Max or Min). - - Starting index of the loop. - Ending index of the loop - The function to select items over a subset. - The function to select the item of selection from the subsets. - The selected value. - - - - Selects an item (such as Max or Min). - - The array to iterate over. - The function to select items over a subset. - The function to select the item of selection from the subsets. - The selected value. - - - - Selects an item (such as Max or Min). - - Starting index of the loop. - Ending index of the loop - The function to select items over a subset. - The function to select the item of selection from the subsets. - Default result of the reduce function on an empty set. - The selected value. - - - - Selects an item (such as Max or Min). - - The array to iterate over. - The function to select items over a subset. - The function to select the item of selection from the subsets. - Default result of the reduce function on an empty set. - The selected value. - - - - Double-precision trigonometry toolkit. - - - - - Constant to convert a degree to grad. - - - - - Converts a degree (360-periodic) angle to a grad (400-periodic) angle. - - The degree to convert. - The converted grad angle. - - - - Converts a degree (360-periodic) angle to a radian (2*Pi-periodic) angle. - - The degree to convert. - The converted radian angle. - - - - Converts a grad (400-periodic) angle to a degree (360-periodic) angle. - - The grad to convert. - The converted degree. - - - - Converts a grad (400-periodic) angle to a radian (2*Pi-periodic) angle. - - The grad to convert. - The converted radian. - - - - Converts a radian (2*Pi-periodic) angle to a degree (360-periodic) angle. - - The radian to convert. - The converted degree. - - - - Converts a radian (2*Pi-periodic) angle to a grad (400-periodic) angle. - - The radian to convert. - The converted grad. - - - - Normalized Sinc function. sinc(x) = sin(pi*x)/(pi*x). - - - - - Trigonometric Sine of an angle in radian, or opposite / hypotenuse. - - The angle in radian. - The sine of the radian angle. - - - - Trigonometric Sine of a Complex number. - - The complex value. - The sine of the complex number. - - - - Trigonometric Cosine of an angle in radian, or adjacent / hypotenuse. - - The angle in radian. - The cosine of an angle in radian. - - - - Trigonometric Cosine of a Complex number. - - The complex value. - The cosine of a complex number. - - - - Trigonometric Tangent of an angle in radian, or opposite / adjacent. - - The angle in radian. - The tangent of the radian angle. - - - - Trigonometric Tangent of a Complex number. - - The complex value. - The tangent of the complex number. - - - - Trigonometric Cotangent of an angle in radian, or adjacent / opposite. Reciprocal of the tangent. - - The angle in radian. - The cotangent of an angle in radian. - - - - Trigonometric Cotangent of a Complex number. - - The complex value. - The cotangent of the complex number. - - - - Trigonometric Secant of an angle in radian, or hypotenuse / adjacent. Reciprocal of the cosine. - - The angle in radian. - The secant of the radian angle. - - - - Trigonometric Secant of a Complex number. - - The complex value. - The secant of the complex number. - - - - Trigonometric Cosecant of an angle in radian, or hypotenuse / opposite. Reciprocal of the sine. - - The angle in radian. - Cosecant of an angle in radian. - - - - Trigonometric Cosecant of a Complex number. - - The complex value. - The cosecant of a complex number. - - - - Trigonometric principal Arc Sine in radian - - The opposite for a unit hypotenuse (i.e. opposite / hypotenuse). - The angle in radian. - - - - Trigonometric principal Arc Sine of this Complex number. - - The complex value. - The arc sine of a complex number. - - - - Trigonometric principal Arc Cosine in radian - - The adjacent for a unit hypotenuse (i.e. adjacent / hypotenuse). - The angle in radian. - - - - Trigonometric principal Arc Cosine of this Complex number. - - The complex value. - The arc cosine of a complex number. - - - - Trigonometric principal Arc Tangent in radian - - The opposite for a unit adjacent (i.e. opposite / adjacent). - The angle in radian. - - - - Trigonometric principal Arc Tangent of this Complex number. - - The complex value. - The arc tangent of a complex number. - - - - Trigonometric principal Arc Cotangent in radian - - The adjacent for a unit opposite (i.e. adjacent / opposite). - The angle in radian. - - - - Trigonometric principal Arc Cotangent of this Complex number. - - The complex value. - The arc cotangent of a complex number. - - - - Trigonometric principal Arc Secant in radian - - The hypotenuse for a unit adjacent (i.e. hypotenuse / adjacent). - The angle in radian. - - - - Trigonometric principal Arc Secant of this Complex number. - - The complex value. - The arc secant of a complex number. - - - - Trigonometric principal Arc Cosecant in radian - - The hypotenuse for a unit opposite (i.e. hypotenuse / opposite). - The angle in radian. - - - - Trigonometric principal Arc Cosecant of this Complex number. - - The complex value. - The arc cosecant of a complex number. - - - - Hyperbolic Sine - - The hyperbolic angle, i.e. the area of the hyperbolic sector. - The hyperbolic sine of the angle. - - - - Hyperbolic Sine of a Complex number. - - The complex value. - The hyperbolic sine of a complex number. - - - - Hyperbolic Cosine - - The hyperbolic angle, i.e. the area of the hyperbolic sector. - The hyperbolic Cosine of the angle. - - - - Hyperbolic Cosine of a Complex number. - - The complex value. - The hyperbolic cosine of a complex number. - - - - Hyperbolic Tangent in radian - - The hyperbolic angle, i.e. the area of the hyperbolic sector. - The hyperbolic tangent of the angle. - - - - Hyperbolic Tangent of a Complex number. - - The complex value. - The hyperbolic tangent of a complex number. - - - - Hyperbolic Cotangent - - The hyperbolic angle, i.e. the area of the hyperbolic sector. - The hyperbolic cotangent of the angle. - - - - Hyperbolic Cotangent of a Complex number. - - The complex value. - The hyperbolic cotangent of a complex number. - - - - Hyperbolic Secant - - The hyperbolic angle, i.e. the area of the hyperbolic sector. - The hyperbolic secant of the angle. - - - - Hyperbolic Secant of a Complex number. - - The complex value. - The hyperbolic secant of a complex number. - - - - Hyperbolic Cosecant - - The hyperbolic angle, i.e. the area of the hyperbolic sector. - The hyperbolic cosecant of the angle. - - - - Hyperbolic Cosecant of a Complex number. - - The complex value. - The hyperbolic cosecant of a complex number. - - - - Hyperbolic Area Sine - - The real value. - The hyperbolic angle, i.e. the area of its hyperbolic sector. - - - - Hyperbolic Area Sine of this Complex number. - - The complex value. - The hyperbolic arc sine of a complex number. - - - - Hyperbolic Area Cosine - - The real value. - The hyperbolic angle, i.e. the area of its hyperbolic sector. - - - - Hyperbolic Area Cosine of this Complex number. - - The complex value. - The hyperbolic arc cosine of a complex number. - - - - Hyperbolic Area Tangent - - The real value. - The hyperbolic angle, i.e. the area of its hyperbolic sector. - - - - Hyperbolic Area Tangent of this Complex number. - - The complex value. - The hyperbolic arc tangent of a complex number. - - - - Hyperbolic Area Cotangent - - The real value. - The hyperbolic angle, i.e. the area of its hyperbolic sector. - - - - Hyperbolic Area Cotangent of this Complex number. - - The complex value. - The hyperbolic arc cotangent of a complex number. - - - - Hyperbolic Area Secant - - The real value. - The hyperbolic angle, i.e. the area of its hyperbolic sector. - - - - Hyperbolic Area Secant of this Complex number. - - The complex value. - The hyperbolic arc secant of a complex number. - - - - Hyperbolic Area Cosecant - - The real value. - The hyperbolic angle, i.e. the area of its hyperbolic sector. - - - - Hyperbolic Area Cosecant of this Complex number. - - The complex value. - The hyperbolic arc cosecant of a complex number. - - - - Hamming window. Named after Richard Hamming. - Symmetric version, useful e.g. for filter design purposes. - - - - - Hamming window. Named after Richard Hamming. - Periodic version, useful e.g. for FFT purposes. - - - - - Hann window. Named after Julius von Hann. - Symmetric version, useful e.g. for filter design purposes. - - - - - Hann window. Named after Julius von Hann. - Periodic version, useful e.g. for FFT purposes. - - - - - Cosine window. - Symmetric version, useful e.g. for filter design purposes. - - - - - Cosine window. - Periodic version, useful e.g. for FFT purposes. - - - - - Lanczos window. - Symmetric version, useful e.g. for filter design purposes. - - - - - Lanczos window. - Periodic version, useful e.g. for FFT purposes. - - - - - Gauss window. - - - - - Blackman window. - - - - - Blackman-Harris window. - - - - - Blackman-Nuttall window. - - - - - Bartlett window. - - - - - Bartlett-Hann window. - - - - - Nuttall window. - - - - - Flat top window. - - - - - Uniform rectangular (Dirichlet) window. - - - - - Triangular window. - - - - - Tukey tapering window. A rectangular window bounded - by half a cosine window on each side. - - Width of the window - Fraction of the window occupied by the cosine parts - - - diff --git a/Runtime/MathNet.Numerics.xml.meta b/Runtime/MathNet.Numerics.xml.meta deleted file mode 100644 index 73c59d2..0000000 --- a/Runtime/MathNet.Numerics.xml.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 9abe5f919a1840a4dace5de52d721a06 -TextScriptImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Runtime/RescissionRework.dll b/Runtime/RescissionRework.dll new file mode 100644 index 0000000000000000000000000000000000000000..a6bd13ca6c34b0e50dab986b4318f1bdb37ca4f4 GIT binary patch literal 4608 zcmeHK>u(fQ6hE`HYk^Xs0xB9DEJi??Y#(9^KKj@e3N6&#wxBlB*_qpAV0LD`Gi_O8 z3^CEDU*MxL#^^_lF)Aj4QDeZ6m}p}B3pDYw8b4|jf9KB3b|1u7qVa=gJLlf>xaXd8 z?zxXnK5~v$5m5`it5=CGpk)|T`1jEnh&yikpo899{l&Hm+Qb*zrcXG5UY34QnkC&b zJ(*?KO;3#yO=zpAebW!$C9{1^x9e-Q4AB~J(h>Ku z9cXoYgZPNnt9~l-n;Eeh(HRinGpwTdXIPd0R@#_k7GO2(9^uX)(TkjjMwlmR2k)jk ziTWF5zenptZ8h>X&+K=QJ3Je)c>M;$TEJeCn*+_BPSd+|6#M~=@fL;OP1NgoqFgcQd;YK)i1}{Hho*H3?R}HJz37Sus1#Vfbe#g_D?unq z#)$8_!U`SV3yl536VkCLCj!d}0`PKT*_Wq`aW52d!L$S&V}%K)AWc~@a*JN*l!P%| zDGS=a=-5LcYPzr(3d)MYVzFozT(QC%@k_H#;MDPkf%2O*= zrcGHC;TX$rBkjK!tb)x4DZc+rx?$6;d8=?K=UEdQ<0+*4ftf{u6VvH}`%0{B>ZAYMt$EIGB{Nt$b!pr#2sz zX8Ex1jh?oIDwXLI(q9fV=tcW*9R|#Jwx1KWkKFzW2sfR%OPCEH-$IAl)7M; z8$rVrOSybDzkK;EJAHorfp>bIf96x;>>iGGZ13ERhr&IMEpZa3%b4qkxnzHiyQXJX zDQqmyKAsgzQ@-SFH#da?3#AmyS$@fIWf1flwyKHK2^^zbxcjc47j=Tw`6& z`Gu2Ux&millh7#J1?r9;0vy&M?(5uZhUCEzNsf>BGV8jNrsGBDs1OG4m>90!0W*y$ zN`(Kn|G5nCTLf=iqBHfb@h-B$Nr>Q-1x_VM=6KiI9}R^ zL5~BEMXzr9sO9@#qg$V6V2IiWBSPKk$yFY+D66z)$s`Fo4&IUiHa%J(oGpOuYSc8O zCb$9QCWX-RK}GO(%gZpT!KV;f4*11uSURnAGKf3+_2C7F9N?wG`51w{5`F@sL(CGv z?KQHpn!kc*O{EvB&|bXEwCa3WSP1Y&Vn51te$K$MjahQg;FckSgLh@@EF==6S7PhN zYbsOyhz`;w=yP^LrR%{Lx5gv3&9ghei5=!GV?K%3nSq&I{1^`4^{UYXq(xUf{;=5q literal 0 HcmV?d00001 diff --git a/Runtime/RescissionRework.dll.meta b/Runtime/RescissionRework.dll.meta new file mode 100644 index 0000000..a7831dd --- /dev/null +++ b/Runtime/RescissionRework.dll.meta @@ -0,0 +1,33 @@ +fileFormatVersion: 2 +guid: 7246df1f122aac345b615cdfe123fb10 +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 1 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + Any: + second: + enabled: 1 + settings: {} + - first: + Editor: Editor + second: + enabled: 0 + settings: + DefaultValueInitialized: true + - first: + Windows Store Apps: WindowsStoreApps + second: + enabled: 0 + settings: + CPU: AnyCPU + userData: + assetBundleName: + assetBundleVariant: diff --git a/Runtime/SerializerHelper.dll b/Runtime/SerializerHelper.dll index 77f58827409c6c79666e04c3422fb7f8830b89bc..d8a0c26222a3a4c03df03d1b9db787a05a7cb041 100644 GIT binary patch delta 168 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 G2L3 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 diff --git a/Runtime/XericCecil.pdb.meta b/Runtime/XericCecil.pdb.meta deleted file mode 100644 index 7e2643b..0000000 --- a/Runtime/XericCecil.pdb.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 138831b823d56714db753f3bbfcca789 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Runtime/XericLibrary.dll b/Runtime/XericLibrary.dll index abcec569efd906e52f188460383eaeb792f5a844..e13e84e8d91aa986e6eecf20b4f7c5a773ddab19 100644 GIT binary patch delta 233804 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�S0JNB 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 v8!P^?k|@N4xlcbd33yj?r%>tp{POcSh} delta 230235 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%0DB3hIvmAF#rh09B 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 diff --git a/Runtime/XericLibrary.pdb b/Runtime/XericLibrary.pdb index eaa107af71fe20cb083c7bcd3d45de604f0d0b5d..274876e9a6aa53ed8be3e5a6a4f7be6081aa9230 100644 GIT binary patch literal 2188800 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 I@3z4I2j0oOF#rGn literal 2401792 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%0Dt5w>Px>tgoXDx)<4CuM#>A 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 }isef!L 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�;lDCMtuoyUc~(wp7*GlijZ*&__{p@ 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

    aM`Y(T*bl16;)p*+#Un#_cHun2o)JWCuygJ z@gqJLyL$tOOE094p!8g5p7*5W`EsPQ6zqHpdtuB|+qb>yey2zuUJ{EzhHWPO-N16L z`+yaoQYpQh1*W+!2A6^=PgNj!Z=R0_DHE9q;LRYqm&^>hH_y>MvkUe-r&@3!*LC0x zU_FQ|W)>0|crse|dN1P2>pjeaX{5W*JhS>AXY`;O_PW@hbP?)9b<@t_@Gh|lt$7Jk z4$V~)a;1;eM!wzmB^zpO9G_d^Hzn5ZSf1H2fA069wm5#D01NO-*>>e=Sj=ND_wD#K zGGkdT$=mEcuWvXWyFlGnUMO!~;#zIkx4?n!{$Ox7*D6il0Y`%01*zvIoa+9|T)zSQ z9yk%C-ejmRi64L^;19u4ka}eH4(|bN9Z=3IZfBtbN%FcL$GtPnwJoF1*)eStkBfV7Z=(sFNcsq-z;(2saY8$JzVNW=NiQ117N<6F&hJGRZ91<-|iWsuyf@Kt>O0(J)# zuU_C^xmJEhtf5LXNl+!Z6KHj*QYBp~9+H`D`?qr6j#1geW_&4*_WKjMq&X8fjnS zP_*oo`2K*jZJQ2AR3+WIU0mq03O zy-c4dz1VSMZoL!{R(UZP4BImHkQu!U0ad2X10_?a6e`_??s^Ewd&)*HdLHWK0~EbOaNt@OpJLAB3;>jL~*j?y4>$>Ug`K<1xm-PSvg&0+d1;q zjl&`{Cc_)$i2g{4!Ie55*MedG&EvWc&*y_`b(CMqrv+TA4Y&@R;Ovhil>W&fh|Jod$2@{t|EzSPPbcb?*7?pyb`_a2=T9xh)5(RjME3(bYKj`zn4b zR=Pii-$hU#T1(Y9rPub?C(-w-T(ib+?(2`QL)-an$8em{pa(d$DJuVRRmhjhv|sB) z@MchXr+D@UwQs8stN{l&l)m)*e0QxF*798WDu2`5^LgMcTuV>&piSp!;%e);t&e@U zIu{>Gk8GWRv<8x-c1q{v+O}S0(2n7-( zQlmACd8uiaQ=E@q{8sR!4p zFzK4*3Zt=hTlOKTE-9?fi&t~x#RT%=D@V!;44Br;VJct4c>$Ymx#tBwMpJY#BT)6H zYNc%)a{K)>e$T>w^zFl+QUt)M4cS4R+NXMjaL&1-t5ZUIYG2u;r*lw z=y1&=&Hb0A>Vdf4m+?UUy`R5#y*GOZwI^@Yl$xdP+uY|Iu`LMey2kpn2|?ImHnrDP zR+TqQT)t#Ux_)S3@N8(|yfk|WYHKbZR&4$aEu6Hxx^a1Z`tq9e^2Yj9_0YnS<%_GU z%CAZ@?|yT-=JJ~5)zzj>AJaTBI_v{!j9^_?vwqxzi~Z;&@4bRQBA>1a^JymE zlv7yK9@(|}{;tY};r0-2e)DiOH>WF1=rHVp9ASS<*c-yI`YtGE8Yo%{>&w-47gn~2 zcRwL)c^G!KwAH#cOl32S;|>j^aGE#q?x*-!=H*OIFG-PUPBo?sKTq5=08<$6Pkq{} z+`ohS8X3RMh1VV^CFQ3wX`NFz`Pci5yz{7ccoL5||5|t8R&)O~CR>bt6nD`vl@Ib< zWkG57`wH|m^eEF5Wi}^QijVI*hPp!ZX8e1%mvG_`|;kg?!BLg}Jg%MvxGYnhBN8h+*;!=kHT~Hy{ zXSy(wCmSOSQ(?0-PKVd2aQ4yG^vKM-7J8LDz8hPgd_$MagWc>BP3DEDsgOkz@$_p_ z>z$76Xof(z|3=3t7uQ5_d8^Mm^5t3mY#C(R)a-fLs<)+(93!rb^jHXL?4vP_#;*go z*4SqtSOg9N?K@v~gq@F%&a71Gp6}0XyTL|({L6{2ACEIm$`sP;d%w1=$nEzc{0?Pa z#QU{vLvFvL@Out+g7<6Nf`}25bzvMB?=bf|(D)_qT|JHBdalaIT%K{0@vE>?z)&w! zxz+p@B!Y=}^=KfN! z1ho6D)e@*Z*O?OMGw$kbu5Dh7=Kkf7&V|*Rc!OyB?OaM8bLk2%y-X${wjM^NPKtrX zx6F4KHy2s@NtrO~E5yr;)fA_bxz89j(+AYt{V5I=D?L|Qbzf;+0AfDs?7Yks?)fB; zv9CExVIhb;4G)^u9mw+iyI#>)=f|64MO3rey9J~!ogX=)TI9=&% z?JK#XIcU9~*n{?g(uC_pYhd3^9AK{XUZP0OzN2_0S0l`C`I9>pE$Q9FJhdeJl`a)u zTQ{@kr{r-@V`(|`VaCcT!_t|`r*h;{@H{N~i{Wq)t2mvQ%Q(pWuFz~L2{#@ZO;1z` zRYPl`jnFn|H*^5%%0~wZq0vw&R1G};kFmhn=!^K?9XQc7fWE9q5H}lqkVKkRH|d37h$^ zOrcL3hWR?3Lt^aec|jPJk}yoA{S13ETjHqSI)#byN@ZLq*A2p^Na`M+JZ*YI)U<@| zu33M_8Sut2#~QnPC>!^=_|e~)Jqb#4A$~VP^6Q`LehK$BK(b>#&A|s^CEW?>`-~37 zoFWyc>8R=HMBHH@o+_)djr2PatN6x1~@s7%k<1lv|c_N@t^rwTbg);#)vCh4KD;nWY^&Oz*APSK{Lb}o9$;&JHHdM?N4OdBFU8Zvg8^tg7mCJx5cos4CYRG1_02 z<-K58b+JFTI;Gc-d2ZGbW~Xm$b@}^R;djUC@eP{c$W7r=I@6fK2P83#c zcoAgvlY2j%_As2odg(#@DO}BU{K4t>9+l^A$EQq(`S0iW&UWQM@=sw-0S7IV>NOt5QpAY8x7vfn~Hz9tQKTii@|iz8u&r z4UMU0?=*(b>QglpwacuHDeZ;N8ff?we~tfW$LSSV2c{8JI%OMmZsEVm+-F`8R6RKx zY;^t=FO57y{+!RIY4X^P^|JO8b^?CC7|2o{hhe=e_51sv3wZuqAWMBt=-vXDF=quQV;--X=&kS)JpfGN&^7l^{(j2R_eQv#;Kz$-HZrJTb|4oiaa7 zHeHm=e7||VXiipcfCclHIOl)Dr)>&#aT&)v&*BBK`c>C9Frt+B65w`Ryi*_vh2LBS@RAcO|vrtul#domCo-r^GnT zbicwXZ^LKHs%j>)LX)Z~x9{*3P|W{{PpZi~)sHTQiya>?bwr3a5h8xb6>_P_UJOr(ABJ(-#B$t=9R zJ_qcFU89kq-)lP_|8{?NF`7A(@soXaDt<4APXGVxy$gVsRh|F;JYR+ZhLnL>-iY0SDzK42tGu2IdPhI?RkS!%b1YgJ@J%SY%XGn3SYcmQ++&lw?%YQtOuW zb9deUQtOtxnX%>ev--c@=kk2d3|}rYVChc|eCGW<&vTyhIoHoQ=W}j3+?VmZ7hmOe z@7J7d!z0^X#-{C*zbaRLtT>x+6MQpoAsI6ldlzsXD0hmt^d_=Ppp}D~6IuXj9k1RO zI6Gy-==c?S%_Z3M=ubG$f#gc<#7KT?4WLHE>OUzx%FsR9HFDAi*fuhIceKh^fdYwn zJO1kDjUb}H@bBjAsuMT!T;aS0R0>yu!$5^|B)ACsC~z^T{*<0mHqE;JA~4N!%8+?J z30#7mGGx~GUjtTSCoMGRWbR{@Ki6RwR)O*lH)h>GZp^xWn+{=o&nC`V3poN8whUw8?UR|?puT0!#=aaB z*A<`*<9PhN3@S?eR=V4^FHYLdGx^4^QC-8g@*6!-rYm?is5bZ>Q0`hl<)2U~;LD5b z%7?WeG9tPcl+a!WD&6k`scXi48F)YT8Q?p>nc#X*I*fOMl-cNApz=rlQZ~$Yw}B5} zZvYX|E{@}fpUR)=rq*vO6lzD$#jbrTMNkQ(Qtb0%40$ljX)1E2}eT&Nn_0BwVILnqDOJ_Yh%>H8Q}j{UeG7?10I zjXbCSadSNFS!dYx-jIFHZsqrSAhq)juZ-zzHZny&Wr>%u!?;{GYLIoY*Q8sE$Guwedvj&PpKWyaz5bvsv~*-3g4}Q zYcTab)7R0N=9%~xL$)l($W&`O0rErU)yT?e`k1EO{1a&X%le_V!(G z+4=Do@C@vd^~mMuuh@-LkG-F^ubEFTGStc2vXy)9fb@_mcU{3#z;20Ot^KfNB~B_v z7{?yYkDj3VkiByFp?1dRd-gsz@l`xz&fuG_^u`bJTlx2=N1_o82Y)1`A2vZeagiHnd;^b=B1Ztta$ADCdJ3=3sV=R&=_V8D1M%IKUdt; z7xjj7PVyh|ylLO&RyI~HYvvM7jM|p3PT>%>XFaKlk6HVn)du;QwQ**x)qi-oy}`w4C49a4C*t(iAWpuG>Ofk?z44S* zvD}|6=K1RW4w*YGn7==T?}|@n^U?F|K%6_NUu;%b7|yNZoN>IvHu7ii{+;I?v{mhC zmwkGxz4v-1A7ANIWh8gKc@CbbM_qi&8&^|yIPJE5dZk=E)mCkWY~9Z8K~~$i0g|ap zS)D*V*b93DsP^V|Z~)j04h5HklIJTxjcHbb<3ScBn=$lia3=OUz&ytNcK&`OI2`>B zC5Beiu8TMe90C=ZXFiNpHe~ORZ%-KSgr~x|22>dD0u{!)L51-iP$TOMI0bA0+lKKn z#)a81YW>C;kX>(}Fz$w|Y>5+@qx9MV$-E0csm9T}K|Ox}RLiV(TVrDmfoY|acrW%) z7x6yqS3CET&D6(a|K?5DAH?1az8|#V)I7Xz`!%{&nNlifjlo3*Pho6n?H8N4DIWVE zD}S>4E!BSShGag7|BA;$pz=WBSA0H%y$|>iQ00QPUq(kH)F@l-l;*N4%|8YfJNtC^ zey+o7z)$f025<{#<0D@bcJ;Z2Lp>NBUtpf~VzwclenNk0r}|9loraTZIG3LaUvTfPgI{}z61~D)0aWzkB`$= zu*&tsKm*5m(?)G`O}BZr_p5KHTsFYd$6w*Du&9T253FB71{+o3%vy8^`zekO@L-XRnVK&C=LC- zkp>ru(}T!-ox9ZQu66BC@eDRv*&D#kA`sSqv}c^Q9lz8+Q5jaAmFu)lYAkMciDL$17u=r;@0H`RC5 zklgzBeopR>sbp9veTli>R{7qZe$rRrtA4iRT6|;cxiIZDmQfk<=3BVmpCg>xanKw0 za_iswaK0LZv!TAeHeF@=fF~-PJ6t#=)4cgM;XLTW*@5wt(nV?M#~TGs^pI4Ec^WsJ z=yVzObL!?2wW;iuHhI^c`s#W4{^@$hOMO6Z_Q0!KYhI?5bcByDhc7uk>SK8G9rz6L zd^#}K>Ej~VQvumB8z*I5=~oWPd_1!4k#y=Re_KG!WjqWH1V0H51|I=!|6~|#%P2_w z*Q}nT0ynnI#YtHW`Fx7+l}Dcj#ph8_e5i+}U-%ht2=>Ro)_hv;;VQ$8EmPTh|5QJH z+xS_&?}GhvU{~<-p!x+*fO+({t>5-uQ!krs`N_R^>x+Chi5Wk+6%U*L*}E$`@oX$4 zvjew^obGr+!0gfuOWzzwrn-nC;5s^Jl=hb)p*hldGY_SfupMdG>|5KWBaefvT)6sa;yn&Zz2Tf0KRjiwIMzz4t7hYc6NS zW|M+_Lbl!;UD(Y>)9q2_RR<)Sgfe{~risjmGL#r4Ja5sv9QRdk=DDo{aZ-QOerJa8ab=bo>1&p!qZ;`zhwIS|>srn;Ycl&s7dOE+Q1 zmbvbwzFPxpjO6HkgW>=-g zf8)mL1fcfK)qUBWJ2Ty#J^Zp`6!P4Ko2NpaoHou9eGdBxnVaK>+BN?4y#08$BDT!c z_wwc`c>g%z?UlSHwihY3?djKge!h=m(=qqGzMqV>Hs^|@KV;*d+wC^vwk&aL!<(JY zQ?&dz`j@y3$Iqde%O4<>R`jM-Zb~^bWm}+61+&Wk%1rT zv)VL{O?qREG&Zf!56o43qhz@n)bp93RDZKT^=f8=BfvSJ8lSnK9ZzaZJP6Vpf%eyC z=Vugmo2I$rJ|92Cvm8|17bJd;Ghsi-Gd=hE;sSo}L{9F54nVI$y?diOh9*N5(3{1m z{`-0}SDA_Vy#@1k5aYk{pB;JpC->gX$?=~%myk3$IsQBRxoCf@@n79>jQ_@vhpHcv zH!lXrPh%SR`#s3(sdcEcpWjfMV(Ubl)TeOXQR6}R+pUvbXLbsB0ru`-Imp@vvqxX( z$ARJ}dkfeT)VQ!0h;Ge{FP{QW#r}Oz?tTgO2LIE&2i$nE7x9`3Y20X5jG1wxm7|4n zX5`+{#*eFza~s}7vd%>8Rb?=yYcUfU;*~;I=kxDVC=sDhk*Y9>if=wXDG;e zN%I|#kD;y&ku&-#{SD?bgRVMww0gIVI=A}-)jQ?CpG(^Bx-FG1Z562L%-KF)?DBtV zb$an_(%9DMB+O(Uu!`^WjdvI7Lj(QpvFUUJU8eZA-3MN@aGv$&u=-53y9H+1)-yrh zeNp|Yamy-KnRklbA@6GH%sVAPn|I^=cj_J;^3HvybPV4uRw`93G=6r@`R;o2PV+&B zes=?UU3=DH_%2;n$#qL6{qfoEr&Yi7aBj4QL;k2QemFN$2WoGq#$%xyHm>?8nD^3U z=6nwmeXn|+^F0hyf0rChUXbugL+OEpGDY?7vB|UJ{@O%AGb`7TizG9 z{5oDcEnfRdeD8wz-kqtnAG7ns8mqhp+42~hvWYd)I6^W+WkH zfER(6f)|6Fr^B3hl(`wa479r3VNo7?jl^p^jb z$>1um#9VOYAalXS-NWD-?2mwVfoccz{ZGKVvHu$=fBp*I z19l?JdXLq$183I16TbKPScae0uk3k1;%`%e`+HD9 zcESEnU@wR2GyfEOUQ|F@45RdqAVu<%xnQr)R60y14az&14t)NWG`aF$?S(g&qmNp$ z>-E+DT>+2!6TrjEv0VDU$?#b1c^pCi=iU6h^nWFU^Kl=}6RiKU`IuV=)&rfF>RwN$ z1M3Cm(*N0f%B}x9)qUF=R2ky1=A8OJo5s2Ie|`A|(HWfqDm-U`YPZh&SaoX&~|7K^gMJB>f1-X$Tx>k z{rB}|vkUT%gP@;^{{HuC4;}xtr~UuGtlbLR{}K5AOu*xIem@G){&({2|48h<-Pp%( z8-`eSy&02Bm-0|#+y4)Nnp58d&H&X8&jde=eJ)6s$m|&x*1Pu#gY0X;kAk>0-)(cx zp9V>vWE_aqwd-n^&XARM=`?<~o{QHR#4-<37Z zi>nRmDa&hWtJvSwk+~lq&nKKnDi8Sm5q=RbOi*&{OM8JA)qH2Zaqcu<){kcz^B3aR z8Sc5p-16tV6T2_X?9s~a8h1@)9@2IxBNM#5Ds+R1;X#~UB~Il&PC+~0o;AH;`SE+S zG^VV8Y+Z{|E;+av`*q;Q!JENPfN5|G z7=|w|YB1r`d9^Y+UCHA4gj#3V4l?h38rixNCv_@Jqet*t`M4ESoIV927NSps!@x&D z#@5j`(6;O1p|*V}B>9?MGivKf_Wn}&+YgfY4BubGX)p@Yb9!LPM4aT6+8MPgGGD~4 zzI_s;SQ}KIL+K{TuIGyR4iJ4o^d(Sj*q6a^pxjLWzk+=txD&ht)OSjEy`SY!>Hk%p z&jY^(+Bj-IQz=h$-o4JQ*O|0eKW{kq(UiB}>Ehey`&peWN#1;qlZ7;NjbaT;sn|czoCM2-=0V>p#4k zzt{M08sYq3AI=jz{aXa}?xdI5SB>fJXLjfLJUM)lv79w<5EIh-dtw|S=EKHQ(z z)s>^;=NtEs-*nCuU-j|Sud!t?PRg&6+4l$0$7lNC%Dc5`o!c$*7W7Gn8Ml&oHoam_ zWV9yiTLtIktW)1!XWm$OWY4e{Klx$f9_w5{V?sZ4|G2{1JC5$J0XbjN`O&3S|EyG< zb4&qLhK#9zRzVw~?a*H61?V;CSWQ^}NlarTcfI*@*C>Ah=k1#!tNK5uv4(pVlls4h z7jp029P2$gMm8K_4mXqyf$Y#&>4-8VlmVrUl`B~^&YVH^8!tO@og1I4&KnsK%t;q5 zm@%!^+$+>X8U+3Z`;9^wXyjJ-eUAM(#!b$&C`~U~zSJBPb0k^SQMsh?S12!PbL9VD z$p0I|{GXbxt({+Uhl*l*^bsmYAupDc7!#JYzv5T;k72@HLG&fY>D?p^^J1ek#zL@3RQtI>bH24g5SNK zUlVoq1n~2EB%S#!Gr)rR+X;T}_WUFxl$KNKm)BJ_btrDWoqW~t3ez$VUXO;nroxBT zt0QUX&v$OK=8^eTPT5x!pc`K;r+(6Tpw^WnSO^X%e?6Zza_c&Ne<)ac;dG)2ftI`*W~$$N9*M55ImJX;TamghU%_g+W* z&R|{Ea+@Wl9a8(yp1B2;b^4&Oba|;R@dds==;JffDKc*LkpX)WADvBW`ZF#*_6mUZ zodf51n|Xy)7ju+XtG0BkQ*dkyc=v+$FFbF{w7lNsoYHJA;e8R(H{PAsLvVH!vlrIf z0qD8n5I$e+o~vmMpG#0FZP|&D_q{8A{mhfs|8&N#Vck++e|$#;uejs1l(7l(Bz)-C z?D+Wg+R`95p`o=2YTX$JvY~eSI8Vfoae9!tu{Jz9{H!xrH*VH+)+> zUt0%#wzg|rE>n4R>xO*2ya+im#_1SO?N>>M5&j#&#gh zW2HHqZ;4WwovD_gChvS03e3QVa_j>D_8|;U2Vw9{l`C2uiGQnf_q;bd-gZXQ2H2KxOz`o|rA-(GKU%#}ahoIx0V@53;ot|`s6 z564^1J--{BB8K_w#GDDgF5MIPW%x;UY$R-baWA+2y`Jykd2gPV@qC2)PI6e?)D3}5 zsc{_|mG=(H3R7-Pow*=>dn$9U@yEwypNmVFc4rZnkNddH3-~y_;CL+c48XJD@$EJ|ln)bdy9tt8|6ci^PrqW1_|(scb+=sJ+1$}Q zF!QDHRFey44WshXhj*?^j4KT%`=>wQ9mSbuMt&V<9?%Z9%JUtLpIsec`JDqlovUW} zO|4B=)^)5u=En#lU8@+Ds{!!1FX6#{bsfI}`{S*bp66!A^ZXzk2g38iCx&Ovwx^#P zoP=%dAb39GdD8ZHx$lNV#~oiU_cuD;ql5UK3-6zwSl+GT?fY;&T!h2?Er7Sq;PY*+ zkGFz%ym{>Tu5*0D^d1b~ey=m%Vi!@(GkY@xzM~Jr_l~3W=@9gJjHAcmS#fkF_nb6y zzf+ofOqOzf+oGsGYNXFy#Z37vtWAHLVM(9b=uP8c@v1npJ#INYZn-3Gd5p2Q>F=U- zU8}COWQ$L)mtDBSzQIt!U3QpouQ;LMzSxJ`%D*e(8x`_xJPpEZ?)?eFT@$~nm~Mg9+z<9eeDr)TI&;zC7&6>waVw` zUD!wP+?(Nq{e6cCyV|~ye6tDCH{PB0jOhFK2Yrw_rxR=9x$>z4V?ld|*X3&eT8De% zS>k5ztFyld58?ju5yJffVV=u(gZaR_dtJjl`p|Iu35@r>W@9{1gq4%Eh(r?3gkw9KyI^iTQmV;r*)*ubcM^<`0TyxCpS3 zih0OZ(K+t6;}t?s2-&%i*vyM4P->@K(rQgqraMD<@7C(pbGs!qaC>^<*6PM{yJhaF zm0PRZjuV}C7>23F?cl^;tDDa4?^VX_nTcDgSI&Kh?bXKZpv0}!3Fls)HQ%@$ow&6+ z-P~cQFm8J%ZmnK6cigIt+o8to2GZT?Qe)lWVvJN4>)h`QZt1d`JEhdcc@K8Ugp6-1>FMW@lWSaYaZ}wXsCJS^WExS zbKiY&J^M(zAT7OHt2@o@c9C&ACUI-^p6rt%Try$4FEeh>P25_YWp1}CjN7vlw^rYn zU0)XZ+hW{aYus*zr_}?-MklB+bcd7|GVj8zzI`{Swnb~>ByS$TuHn>sz`@{qLCQ$< zKJY$}ElB1r@(01MWB&lS7u*Qiw6-CrDe-pm_FZke*6GbIaB)d2KPBXe+ViL{{X7~><16c zqw@)OHhmOst4E97E;zea(1-h9@I&GLS5SHKV&dn#B;4}D>cO&QI*j`(&X3=NDw78j zKgP83!|JnQbgb5de*D?_@fT42#=jZj=LO&h?1RCPp!%AlK$UpC*NWituxsDNXi#N$3|Il4530Ug0II%>2W!9!!F$08 zpvv||;0M8rL7N_mncw4DV1C=WHJbY6-)XJv0Ej~dc;?UF?MzGC87ZhW!}3e%q4Ht% zO}W!_GJKUUC7^ttl7u6hrt-t;kg|Ii!+e?H{J08~Ji9vaV|Wsd%{;d{pxEexu(pzs z3!ER-2+cYd#R{@n{Izt<)HOi03{ zbg+7z>^-VsI=t8U@jg)PnDRjBp*8yQQ+okMfFA&rXW9#3)1d&HZ!1O+?$+hh>UDC< zaIM={I(!TiFRkCVeyabGZEvi8Cigmgt+$sSkAh*iweDUr`!R47_&6Ab*PgA_I*qL^ zCU+WZ&Aj+%&Aie>Yv!$gmn30T{#w0C?)Ylmy8O_(b;Wmg;z#RxX~*rk!|}h)k3WG5 z$Nx?IC{Dsr!E-x4&9-}C8$GnM4M!oUGOoNMXrHArSy4rDK%vlrGgtF=~z89Zj zQ1O_Q_;+a%R{3GaQ`z$+LqBFZKW2gIThC7XILG*LkY`Tx!HL6e~>XbrR(+5tTay#)2`pNhsnrO=H~GxPwo71{+o z3%vy8okRGc3D8Wa0$K%afVM%qq357iq22>X52y^Pg4RHrpeLYx&;ckKn2P#A6QQ|K z1GFC62JMDkfL?|A4kCO|8B_snhK^(;U;X&sum5cfKDdq};J-e_jw7O_tnFcr%ida_ zT?5>YJk>YeUAX?OJ?r(Du)STZ!!>;V9PT5ny`ADs_2Ud-S-9oAR><9{YUs=Ou4-eAQ?6 z=0@Dl@qATZsw3av@ehVb`-i@Bm-$&m{{Up=Q*2}vR(f1+Zy-po)U<`P ztES(sHdp~c>L zgzx<=+8FW;Sk>V(9HM zlF@U)un%_)cJ-0wfhwQMC-N{t2bEEn%R%Mu0&o&Y-kLp~=oK?>$1e9bgV$rf1-t>g z1LR%iPVgqM1;h>Uq&7s-587Ut&G!P{N+&dtyd1q6my1wVw zQ}c~?7xw?cJrcn@OuP1RbhKZ1$li_F>E@O7jkjq}NUlC(uV6pN3NCM;i2n zY-v}rbyFYEtYb@YQkZXpkRg#xqpU7L-<0VSjM@NY0eXT~det%5A*FG~whO*Jke)kx z7S_$Gm>AWu8>t(sj-h@i|9szq{YS=x{h3>6779vTztr_De7--6Yq|CB!+h^ZzdtN1 z;r%`B9SCx=cqqj*F`=^5R7}X{{+S8v?dWJj>I3Bc}iK)cRC7#EO zx)t@ewQpUVc=$f6Uz4TwTkV(4t89B3w#n-IsEsTDRfYzGo%rkJxBO69weipDKUIe0 zw@jh)W0>=UHq`W|Mi{?JTzg@41M;r|vT==Be`1aDL3Kq&WnM{C#FPZ#G3^jM)Q>Rj z^Ehw<_VLDlwW+povHC?j=W~$viqED3{$SMZZJ=&!g?2&vp% z`hXhS4FzujCx8{89UtkeCsB5eT^(qfR@%dEjZpEHS8GW|XTx8GdRc!2-H`m#I;rYDfq<`%Z^1yiX zcls0N|6Uh{9|d9A)H}*A9(HK{w@1JD5PqmXs($os-hV@S;8-LRb5!$hf&?AfD}Hp&62mOv#TH*-Z=8{PQ|JWrHB|l{zc06+7B)&Uc-!q0T#4Y{60jbRY zq*{toYyT~E@ATBYkEPaiA9CM#-gUGbapq4_jy{P{Qary6`f{|9-!|T{)_WPF_H;eZ zWx{eqTV(7i5!X{*t^nT-qB}ItuLW8J0Q|-gW02Z=~Ps92FRAK5Lh? zHbN$!{)2S5_P6c^AL4#%O_KDZx}#O+84iIYB`E9s3XSDEhv(hR<0HwK9mtn`P)Cd; z*Hvykb;fyMLu4(>8M~D%boIYj6KNd(u{d3qo>yPrd}Zabw4I=AGB;$R7Hm&HS>r<0 zH-8uCYmUEUhBqs4Gb0y&9pF-5$4#V$^@Z)do3kzNRg_(sFzzeiz2I1QBZ!VC-l{(` zVZ2wt`=+Dwo^ZVJZg9mWjQ47I*BlG)4#wM;x0fC7a4dEQyl-#CdvSBk3a0UA)Ron+ z@t|>W^=ebr##6&$++8kc~H`tYdlY_c1@8gXbD}-jjpp z{K_TiW)s`-?Y?`~mv0|e&Aqmb>s|1@Kjb^LnuCUkt`d0s#U_D|Cw=$i;CVMZ-xKnj z(pazQak0E`V#o8;r!Q-nj0vUTJ@DL^@Z=8R73|WUUb(EMcJ*u|m{`9}R~a8qT%T}! z!?MJnF#n;1FS4@@Pu*bL5uRRNj>$hXt}XEV*r7Zb@i*5jPGV~-Pe*va0?R_kwh6iS zfsBhZ$C%yQVdZyr{g}j^bg(j48Mk)4Eq|@N&F$|@-1cT9=EGp+V{U&nKYNB7$ID+U z&vN^#K3nLol|Q-l1JB_0ZD^Bx7_6+w?e?NrbH|esx3-Swb~~+&TU#%4yJd|D=MHDX zVCz$ExAeVOw=gjYgRKWyokN%xzd%1(KtIRF&6eHV{{A~|OQI_ix3w#awPx;}$d$Z09W_#rRObmOj<`$Pu(nonSlyv%!-04)lx*=_nNsV}WWUkU) z{bS#@u|(CFKAtI9h?|2)=LTp!v;*1)y$YQ)?N0&Kf3N@9=sy2k;LWw@Zs%Nl zsQ%}McIbcF>VGv#{w#Dc^f)9vkJSyP8l%)@i4Nuf?=0^)@?ny$e`A#BaGdV%xwic!7xCk;-1>)mMTKwsKJ8I9|G84q>Fy+_clL9e&TmH)pE zm=>}AXYR+2FaL+)hvt6=;ICq&Jk$JdIrKw_{CD%cQR*7(UI(|2-BHs|qidK<9xwbGkmBZtQ&Nq51FI`eMG3d+#P}>%;lqa6Qk_)&{lfyxunFgdeizD>$!rNU*+Z zetPlpM$`&LQyW(|G}kX}tZb;JePYEWXZl{nIc|+QG^nVguFg#Yqu|W7X3V&sonF~o zU)NN>q`By-ruw=fw_q)de>ndgh9h`hWL0Ui>Z{VVXa)&K&NG44ohZ^N2Ix==Pb)X` z)6wRz(IWxT?U0bxEt_j6KQAyM4y2bO-l~uDU>nb@!m~LBR&Elpp1;Nbvn1XB5 zjk?Qs(%2&NZ%o0|<+aVr8`G2O(#sEjd%M<4XU{%Xbc?2~YT)cD`9(_6?GE1C04zg| zQlwSzjhrCCnM`)|fbr+B@svK?$I4a-`|kNqz^`HdH&Fik75qBbiE!#WtggL0OFxl{C;mRv2IT4bzoSew z5qp#T3FW`W<1$?=n7_Akci-e%H~!Op7U__9)1GlmJ$|T7_x;TM&i}3fpGMqV>G^1X z&3H_>48hg7f86t&b~|T0HnAe<*!MN%;^)`xk97@;#zx-U z0l%j_KUB|Ul}*)C=~?Lg@$!8IKh$$&~C-ni{=+?JCLw!FrXFUQgwl|eE$ z;#TrUYs4fUZU!}mVH}##$e{wvi!O=mc%nb;q4tW~eO$%7x8*duA6-RjEF?plosozm zQ_UJE+U|@WmxO-Ua+lS!gnm>zKUnvQ4&1IEuzuJ*NXkEj!jwa$-a zpyH-A1lEspBjG`wDej;91b;Adp)It}JE8s1i)yP!q6db?LS;||v-hrei4(w*MQP7e5KSn#;XC&3|z1f3W_$J?sBowjlK0H00dpT8K@&a%Ya|YdCC;&$a&V?i-9VQ|{MOKDWF< z%V?PY2W*gA^_RZPUXlSMr0GhT{zZLFU31AHYregk!;Sxgac--zWAHq=7cAE}Tjio7 z>%SGhu^k8Srs?+41!4t5`n;&(}Op#m({TNZfqCv09Y_6UOZu@EJqLDXH(J zHI2zb_Q{e{oGd&Y<4}5O)e6CD4qu*rVOJyxOO1jB*uafR4D&Sjv=iQ#^%F?YtS!(8e z2g{ME*Rd=2ui#H1WZTHx>USF26Uyx35%XVi;+ik@;;J71gz`LTh*WZR(JVPY<&RhVo$k~>VuVH2hzFborY zG!rIdnF$l^gbCAWCPlP=xG&-B8~HG)OxU&~X7!FW%H|69yNvH+e$N0krcm6wgY^B3 z|5t;e+N8Ytc}`6dm9VLz8XT(4vdXWNb3`?BZYhj`8f2Z7gs!@zmq7?3KO zvE!ZdOkA{oFN}|EE8;}XhVjw(P=5RIp^uNoiR7ahCyoLuu#X2TL7S(2u_-?1!c%vK zpB{xgZCep1W5tl?V*C)#D)4lWiov|RT~j_7T#9`pSPiO=t+Am^!%-$3Ex&&7JSPfy z+IAy%JR9*tJe$BU->73Ip36bSQ|rYQ&y}F%Nh!wUQ>ss6J-}(8=UKsX+ZJT^XNC0y zIc9j?0d~XfouJCb8c_X)yTAz`;{nI(0{p)aDm1)&`PhIPE9C@(rS>PemLNxt@Eowz+i z_$+>_?)Hx~XZ(tFAKCUH_xZ*jj%>I-0xDb|1(m;>L6zH&feOdR!6_ia^UMrz3rJay z9tN)iKM9Jb!j;FobsmyL;qc+gqeThBB{^l=l-xRz?U4=FXF-MQbD+}e^PqGhPk@%+ zp>dYXvh7G#pP{t363)&&^rqA+eaav!-(w@|u||22^cgbWf{(uaHmH1g8bppndqCww zPijI>%ACS-kmm~P5EUTIDrhHTx@V!6psweoq5`NGDu)`N_0U#m7xWzTGSp) z&ISMEp7$b*dOixg20R~BxOi>Kk|EYdUEJA(I7#%p=ow{RWm=Qv_p6OJ+1#hSFXI0il;o)HKofq!hE$n z;)HkGe3iVupL$9E!lb9_>w4_!BS_wsfReY@y7#oFM()--dn5P&??2$|()~#Oeh8HO z-2_UGBkPR+p8_{vM@AX@7r+Ox|JK?60KOkP5UD+qv1@&(Fv%Jao4;MCVKQBiCU#B8 zS;p?yhUDv1DvZu5J_t(Ad>WxFqu(zoPtS*52c!J=djyoPGODxQ{3q)_J~-XwfAMvd zTy9y}bQ=f0)ihO`HTyVh&sgCX_@{jLJYRH-PW24IU*qQCBk-JXoIGzdg}HS+e*@1a zj=)pn&W^7MO`GKXwPDWfFLi`I z@dZhl;yQU_obTK<2CJeU>c!6Es7;p>+Fo8WzY$UDh@%ky~i z-^MFk|aBfptVhwXXhmV4lOT z$5Ndu6EEXeR(B)*#g3o)!QJ?+KCbj@>c5@_jsq8RvW3Q3{#;pK*Zi6i)w>O(@76b9 z8WXfPtWo;=`IMb5luAo){>*)PH5_PWhD?Zmj(?b0&wNT*eN*#{2I*^$vWBe_<71di z#KYEiQ_kd!k;Uk2VR_n(-*5boQ9a0h{2q5h-h6nB9Ie5>!g+i?9txW+x#I)(5()0Jitc=h~r`SI%C(cZmF+7zM}%? zoX}KiG#h#Nr*hO663VC^qw`?}Ai8_*aZFum=YV~lY2S#ip z+SFGeedpck`F5TigtR*62gew%_N+%xdCCrPMxud8XU zw%Ledg?}>X!F^egzW3kw`R&gK`BJOOH)F2(W*y&f7nhNr-5no)o__dElPNEjkJhFZ z@{QEkecd;@)0Cu(!f(=bRdclphQ~=cP+4e?-p{33ta1@&J`!hk#VuEyY1eqoc4yA) zvZ^!fNk~krK8H^?)>oKxo6%5G#n}{1O-j0?mNcgumsBoJ+qkhGFRI2r`Q^X&Y4}8t zhV{#v8Jf!SePCbS3i!Yp;}_zCKM9b4+&&=5LC0 zj5uiWkn-o&*0*PUgbPnfVIvDonegj54m#dpyU_{W-9z4$bvm(UIT^-$+fn2RiLW+e z0=#^iF_V^}E}BY9v5Zz?Ijx0mkoB#Fq=S(+M#miYis$8LJ`_v2tNUYB{yIf>Ub8y$ zP^tyhtJ2MfeS!-#n{jQPjJC!Gu!SK6KCVPG_^4&n(T^W2w(zW_7 zy((LWJ6wN^!gPl8-liPZRG;K*d`a##?szekrJUUj_~V6%WOi z@rhYCz+9qPqrjZKiSJ~PxEue}zmV6OzJ zVg`GI3eOqNem1y>_x-`epu(;9($iL9e;b$vRUU;ZcY1%dvlB;ih9Yq?>s^+(_qT%8 zxW5go0TG?%OvTk8&&-`J^6x(E^6x>1?+0sn{sC|qxY0e|1S%d6gLU8+!Ftf9pVm!u zC*{ZyOixAwHZ5;9c3T#DQePGt`>E)o?0rBgWtvaaeLy1&>UoiBm^1oTe#s1thVgrB zQeVt?+sL=vck>WelMi=*-S}SXW_*5!bsx>XjYs$RI>yLqyceAGD8c=Im zY}i#sbtiNW=F%jsG#1m^Go8;c!l0g=Vb-$fj-7sxzR~{F&Pm#p;l{RIv1!NjO&(;@ z6jXdvw;qk`I=IhrWaSX-^hq;-@h6X5^XVx6Y}=8&r?ahpeR1{-Vjj7rrm^dZkf2cf=W(e*0^P~6?fqzT zrbDPBk)ESyUV7>B+RDc8$boR5etC5x#~#q{EYezqCVCF&SlXP?p!nHwz){8`v`vbu z>Y$aT`m&4p)~DNM+{k!2sNYLTw_mkMxAx3cDBZ(xia+})%$sW5Oq`Y--_5J9O}n8T zE%8y}MODrt-0BaAm)7T~jVf*sl+yC_3{$*jK}0G^3`FbL7& z*uEjM%E)CTuIU?5W=vcBXOR9$B_mt=A%{EhWheTCo#=h~d(tGM6_yQzH+q@jBa>>v=NRIzxIonsdx%FQinE&||-%E~p zJr!l#n9%``U*qQ6o=3^@=6ZYQ)hv{K99(0^+VshzXCZy(-AYFyZ&r0;Fz8JEqFaq@ zZjby^7`^<9$Fn%`Zre8aba~E&`9jYG{0-mymk+bMqf6}~bvD`r$*q5{=QDY>5t6(; z{S=#?KK#gvB>Y6zgx{vwvCD8D2l*c(EcCr(llrAL|8n>BZ%6)i!%ZV7nbizVLbId?ekzRb044F( zgG0f0g6Kue+EI-&-i=*hdH|Fxeh)Yvd@pFjr165zZWn*;fsoyz-g~)Qt^p-Ra(4qV zb}O_CdLB9m^Em~~$0k@}qh-WCPZCYp7nW(=w)-ij8`k)|e z1tqIL1zMS8@7h%ztA%X3#3qffGFpkE3jM%HFCjm+fz-F?GoWO%WbwJ+W7s7Z9|y;P z+d<1?6w-|viLv+4W%qs+^30||wqA>eWS`8##*aBk{k=g01&rR$rS4Wk8E6yq1hf}A zY5q1TkW2m#30M#78Rh@+D;<~r54$sreI45C{2mqX7!HrKcb+&NV^sJszTW8f2zX36 zfjl-i9_p`nGZG$+Cy2_Y1bud6=o=1B(UJjSRUXh1}a#SeY& zzwvW#9+#<#>RmuvUai<0?C8>mW%DYIbyjv+0UeAU&7;EXcGeGTz`0g`*~#LJgY&; z_ZraizA0HFs`PFhXO$Z((_+ejHJyPn_xm>dp(sYRpyqFuflBi_P&&GL(59#M+Yf|J zGx1be-2qt{6dQSjm62-puFBi_R(?0;M=kPGeJ%C5nt49d*@uBEuulS4;clLLel2(h z&u?<}TfjBg8FNQ>fvds0K^r!!p~y!<%H&7a5zedJZ(ED(vmQyeUN8*?$6Oy9=<@I@gUTLLy!ufiO@`_3R(qifVM)rpy!~Mp?+LgI~FQ~ zDxeJXRx=XmzAtd25*?#5=1rHbQU2Jcfz5Ua)!}|U;NZ)vO;XF{dMmCrSYJJvM zoB5t_-R!ZfYt40DnC}bB3EIP4>xynTTKhyht2p+BgfeP}yuR>Uj%L<4ku^r0x zIP;k}^Gqu9e^V`&`ndT%_d-{I)i!z4ow!wh$K{ndGQPwd_BDHXZSAzi#`?yY^-JZp zJ^eV9C$H03$G284#7P8Tv@%(VZspJpzM zXQoXY2=Y3z^J2KhWZUWC{GMdqsomKP*?JTw`754kzh%Tzb(^->v~|Nl)ek+Fu4Dvu z>4rvvYGG*y&D;Xz(7MpAVu(mi{I4VUWIA=24LTN{00t^a_s@W}W4uzKg1EiJrp4e8a1uBJoDALsmVkgu(?b1>TBqsc zBrHlhTjsNA8uopB{^GyMUwR|0!g4isg=HqFu*?Fdg0sOYa1N-nyarTS(l0V;IUiJ7 zmV>}y!WyRK=qQi1g?YqMWySYHY}wD=SETCi^#*UpZ$ybX!&l{iw8_|Vrg`eDKHBfA zr(8sv=tJy;_Cqg2UEju<8fY?90j+|zKyMV2M?k!8M(Hi1eDJ1-@!ePa_^t!T4%X$COL|GY%f(Pauz6`k(RexbXz=@coip`kxEo z@gC3PZ>ay70N?Ea-(%JP_-}lh8|rVk$%D&A-hBF>i%5&%Uq8D3$GiD^>3`lvIO}{k zPq6;S%AMT$pN)(OyCXq92=)OV0_ht>9|EN}*aQv+KMdM7^ziy0D|>S5f75E0*Xruqx&2#n3?xCgXh>zMw>%8=ap zpYP(g!oC-j{^xt3(*OIQ^gllU73O{5bnu6u4a<@BKUQYs*8l9s5Apml*cJRq;^*P@ zKRfAD?Sl?LuR^^q=A1pK7@7-JLu;Uo&=b&J=w+xYgV6$LBD7Eg)3=yW|Ig1uuw2y` zje)$mn)&HxFL&(_dogdRY^b?9y*knTbmbel_ioyw`w90#&!D3p>V5ov>2Mvf_CA+2 zH#aD3pOkJlY!IqxVdnNc*gy0Y2)DQT#=r8J#xn4eDHratwtd}9?~ijTQ3 zEhmpzm5UqeXVxrgtkj0VL+&b@TU)t0%_zOTfqpydoOAkN?u?sK*_0;Vvir@Gb<*&+ zI-O&ftHG`GT+*FebE^5)mm%qOWWq8ulQQ%RUxswHw<|;K(J81LDvX|wKmR@CGYdB_ zcs{PIE@-T6m+qo1AL(`4#%DHse&zYN_;i$yUl;k3<0E~9H*?_glIP>Dt!E~3)%a4T zLvhrR^z-{3x2xh~B*VR#3%@^kew_87qHT0QC3TgxtD9%*yAJm;mETd!+M+o7z{)asl2k5;FstJ+InhTCFO4k}%FXks6IJ*A_G zQZb)(zm4p7tYa@^2~Sq@Ycb{Ap2adQx>&4|ISN_UPF$;M|Q`608+g86$b z@p=3(@kv)MOXBnC6BwT~J1>{zjL$?9Ci14!7=Fd4#TN~n7H2YX<_~ep8S&bW4{T|O z?~USn7su;H#`h_E$U9Sq5mBY7mU>f%z3k?^0As>Bd>!%aSK`W9Y5mH&+WN|>={2=1 zj^J8Wtv5bOTkG--9WD7*N=~gLPijHs-*ob-mVC>VSC^QuC~ngE#(f43j5AvYW_HAx zm$4I%l-h5+ACSsCnb%Tn<*L`uv8Tuw$t!QJCoVVpxO8BRqi<8Cb1j5yUy+L%90T?B z6;>I>e2nYu`Q37B`wh9>GA_hz_C9&r_UCqcE^bfZ_7EQi+kWSEThPW|+Xlz%7qun~ zZxL?0Fv}-@H$b*M%#LxDoa^jo(PZ4}+Y(S?%qgJqLgPBkTujBTbSMQ2z-ge;;7V{b zNF6rg{28FtLth-_MH(HGuk^^W>k_ngHM>7v{B4^ToAyucRYh0n2ZnB?3D+H;XiJp7SM)=l~JUH=3MfkG0^!?8FaeQm;1E0WhvG= zZ)21uKK~~~@@q=6R&@Pl>!tx{V0`ufv=!P7JqI0xdR&5z9hwYPK&zn5&<SF(XtAl|yd@lSd?dpZb7{@Hl0NGi#{(|32NxvEcmg zW12U|AGOgd@gvv$Z_-xmfYe5+EDVT;jEquq4tq{cWzsUuLiRPYPrn{nI0L!3gkNUv zF#oR@1%D}|u-^x&ZBp4Q;DwC~_0z>s^LTyTZ`DI}8HB3qH>(1=)>n=KX}j-TM&^ zssF~k;-dGZ;4R<+_xwxl`FEZDpB?^-!(W4yxc{BA9|RX+j|h{(k#eYgMKl|kLTAUB zF}B`yr~VA`j|}!?l-8LMp^WylhbE8FvrK2rx;i6&WW-~25C!;yNtv4gVf#3R&W^jX>bI%6C4RD z4XAT#I}vB@jL0Z2ia;IACw|&Dc>(sbL1b5kJ;DaZy7x*mJ)a8lJ5vf?2-dmxjo<|A zP2fe~2f??24}sjJk@+~N?>`HQ-)@Kdz==HnA$TeH&+hpF@G|Vb1dGA{anF@!ld%5@ zyd3OJzFh$pfbzExoQ!=KSOU_tL{q>;AYsoe1_^uSHgFnvC#dgK2Bu@rfLDSKfo0%l z-TNuT=40t{GUGN6*AHcVR`@x&Q--7!7 zkKiqogW;5I+0O$P@qRS87@X*y7lT#U=YeVPHgE~3d-C+%?O-+bMz99F$30h_xfT06 zz*=x4xD5P)d;cYnGL!i-SPwq!o_`l?!2T2PcJP-VWh(P4_x?q&8T)^N%fUam=YIlM zVDC&FS_$gzzg6Jb;A(I%sPGO2@5EjRt^von=NEx@VXpx12JZsz0q+Jg;5}dq_+Ic{ z@cp3tqdFO5+eh_>2SeF5GN0f1NT+<(@(OhdkL^PKSS8*aX~- zG45oy@#(Lhj^_oqvGKEEv_1K5toQ924dtDB5b{T775R6=_&vrvQy64y_-#L>DX67we%jyHAhu2jA=V{|Ej5 zXWG&JKZPG^|7-D6{Q;S`!9#uNU-I0WFYx1O>^}n^4)C|wC2zgyg6!^(oolzE7HA!` z3;G4rhvynkjKT4M_>6eSv}j06L#kzCs^yJal66AN%BgyKzKIzY-H!Y z{|QtY{S+*A@3%Spj66Q7Bv;TubrQvfths;?~{|^2FyT%*hqcnXU`^z9>lFT1L z#w3|;gj?^C)zQCVU+3)W!56T<2gI+;r`+?;fCsQY2L2L!%02%U_$%x`1OEej9)x%1 z_uy|p636gSUcQ7~^N9ZiDo+VphO5#d#zYxaYsPLFj)6DsSYnd% z_>@ES8}$9ZIQ&kR~TPYbbwPh+-IN>DJ8K_iF#CRivCCiG1!>(~V%nq5QGu~*pNUMq(Ld1 zuh%uH#o9-~JMb20Qz$NI+w5G_uGl7+ZISKok0R&N$sG(+IasTCP9t+`S5_`d>-rCK z2iPs+lJx-e$;cu4r0$z=zB$_>}Y^bhT+%#qRk|pWJF$KZ9F$LT-+{7)}lg1XAe`5-!vZ-`= zV|r3udUAFdEEU`Cj1RB#LpRZ1uDxdm7LK&4&uh%N% zw@vTd_xNUzL#I*ieBWt`lv^12@fu}(B$Ku$&08}CRG$2rfM%BjRy$}dUAPzP2Q+d< zG!##*PA|S~`tmxnMMPD9tX#Ec9YQDk3(KwbJ9{69_}Ec`ZQq8|cKC98u+D}_<#sY< zw(4ZLwFz<@f0h4!?vMVGF`66lW-#*qRo2Ow{CDgBwFX4r?Skaizi-dluWIPl70cJi+{Rdw*zxDtx zF>ANPNGPK+ z#JJS10~#M^o=n|t{PK10C71TDX*SiEJsID77@ zFB1phD`T~D_V+Zx`UM}>4(!KL`Y25qQ=4@Ow%*20>)3i-06L0{%HB*+a&0!KGCc>B zCRO9i!Qfo%8Y#{LNp5qF{3T#Hc02wojPfWgx;I{?GvmoTc2VXrj?;UE1-Fqc>)CY{ zlGkOB%yp3s%R*3L5%2Ec_1LwR;%3nDD!?WlJrch+W4GlrPRhH!-5`gUYUg*2^ZQot z6rSG(%AF9oZ+I&HvJU`j!4b|r-n}mYm+{<&<@88#&SUi5&y9EPcRZS@SM=cT8(LiHqvD(nLn}PkL*We_vvmi!(;3_Pif9)~#gj)zj4MR14E4 zvk%ihIGRrRJSJEC`W0kqq_nS-w@zMrmtQhoKJD3JtVULCLH6uCDSvE&@Hedgo7__;&W-H}j@`ZghC}Cn z+H-EjGW<|ID#SnTfKZ?N+<4GAeGi zyb8~x%*w4Vdq2HHPi;H7pK|x&8?5Yw`M=o)HG0OOpdWKtcP>3N{}&xb#wB+`lF`0T z-ZuY{3(~9YhN+eKtUc+hySOGK^(fT+jU{d7{*BVdr^ElN7}oy-E|Re_ z!kMS3{|n!7X#GFjym_wr@8|!+epKXnfZ2M_d_A3wj`p9lXU6xRE++g6`vTC*kq!K| zapAlp$6w>Tb&!ned)R+^Dzg12>b%*Xt@jV&?wi;@3GN0Tci%}yeGB^w&JGx3+l^`F zcOIiTzg}O@Wqdmk&OKIBwljaD@~u$JcJqImoyd`X#+w4_|0x&x`p?AQ{Q4!$GwR&E ztCugm(TfIihedPi>(M39=Xm|+8|&Kga98Q-wj>jz>(YzdcEi8x{HEF< z)!TWlY!=d=kO|A?V9Mseqm|9Mjr9%b#^%+wcuGChuK6mJe=k1@`PP=@I0=Wuh;Ot0 zf%-oJ4bv+;lUp0M+-~>d_I$KkzW(=ijc;$h+eF>p2OWS0T=Dw$1H$^h4&E|-EttPU ziT~InjX4bHkowQFHub+feFC4pKA%|&V@w!^Lc&mbv@o3De713ple7r)`2~~DlaqY5 zVax6I-%LJF&za8?$lGct1MPgB^Vz2Ap?{VCeokPED{9gmcr&zbl>bu}u$gQrM%GWQ zuBqi7?z$<{=lcm@FYl}PUf+86p}Y^}s9iqMROIzL9i1l%zdM>756_xdxU4qkx{+}H z(a%YSIxIwE(SjL80Gsif8|!P4^T(op3gfOeuD*`8NT-P-^mR_e5zcIw-$0vHSzA)O zw7!vh&zI4*;yy>)ak=FBVb`)0we_dSoaw%xxu*8&nr7v7828e~%9T1U{aD-6Fpb=| zMRPfDz1f|)F8SG>d0Lf88I7hw*=x&Hc77nNlclVE8y)DRfBLZT!svYVQ@0NOo$8kj z#T)mp(%S2PHP0pE$JP4%YOg5&!!I3P|NA_3Uhch{u+E3|Gg#wg>x}EC1<&dK)h%A$ zh-{%mhGi;rb7i`Y`v4ZVDzCn-hWtW#5SHV4%PE%2(n())e!6i*&EhmQxpf`zvdPr% zKp&m!?#YmEc&186`-i4326bFvJ6ydt;S1ar&97gKz~EGv<|Xxw%S^o5D`Wl^{m?^r z%%c}x-dI`Jq+p+ruBVY59nt$s?u7cvLhRpCCO9KK;wK^LE7f1qzOxd*%PNfpZGDK7 zx+HhLUTGXDKhL7+9|raV$AD*p(ryc3R!_M72wX6Mj;CRY`#*(=gD#q^Tu*|HyH*eRvR#sGe%iHyK&Fj6{jq3M$&&=mJ zvxl>P0sHfFVD^3Hd1mG_pPA2m=Knk#f>AkSqV@l)da(ZU0CA{29ZVF8ryBb?tlCdK zqxtNY&9BX5Zz!~(YAZe6BxC70m}fh%GHUzOaxwp!9|}GMo)ey*3w{!}=sXNw7M@Q7 zx8hz9+*bJJro*QNE|=E~If$c$%y5%x9HyBtvY+xp*tkd1Ns|0CvqKEok)SO3Sk z@~>t3r`gv3Z0_f2JSd#`jmLq#8Oz1<5j`1;#d9s`Sgdk(P4kjwzJ%1#97%k~W~FoJ zs;<)}G&MFi+fYhRCf797*5{PdJ&xX z+`^r2thiJvxUCSHx^vG%q4=Ck6(xOUvd?um>h*U{CynD zzFYS_7F!1n9fI3U9(VKJrybJt>ez;TP|sBUw%>fG zkDk3v1@k@%VGENCPXAAQ@UJmGv<^KN@7*9?~Zb zt-3iZqdhO;+tTV~p>Y3WoM*=qUUW_X$uGB8*yq_%?c(s|nz;MKL?@2pM>XcvdgVP-=?2_8b1K8}43`wDi@#hi=AR$=F2Td?b~TdRwgn<}Y8w2jMi~)8zNeSX-dIo(gAv_ecM~v%Y<)K6H2Q0r2{(i?#;- ztgY#5nZv0*g|+8_l`H|q6(~+*TUIf6(Rc3 z8T1+Zh_6ledH8ZH?N|D73^#^ayuJ)d`;`toEpu7w*XLttztXFtGFPR3eIAtdE8RPi z9aE;?Mvd}(p#L(@p|f^l2T#amMq{U9Yq7UsH)6M8pT@ps{{NK&(rMQJ9~|@-a+I1k zv!{0O>2^1#)Zu;?>-TqGrz;<1)VGn2wLGyq zaZYt_{hzmxC!;J+qA}5t1bMsif!TVSU*b)@$NEe)zcvR6nc=)ExeJP^03D zLG+uu_q>dIKKyuC-|W=)+mCT>qvP|l@V&B_&LrZI=w1S9JgUB_@@X<|>G(@Q=|I*2 z@}7n-P2FqNm)SQx6CL&EeSRg3*1d`QmD33?Ix|4=F%$Ih4b2Em@1CH^G>qDj=h3OV zv4a_qjlfo8=h@)Q`TFbriR*ubn8PqmNX;LRp>u0W*Z=2(Uwi**)_?73>14m##WgJp z7PBRkojuL&qA1nr-pq@dK9GFO#(G|pG>_C5M9!Ri8(|I_BQa0_TFG1Csylz2evN zdEoURQvvSz+r#sZf;aG7b9svIaqvdmPX;&O#*4-KWcr5E*S?sJ?vjhw`8HFI+h2vU zRC;@A;_}}d0*?uLK+f5e-5EdGv;4cYuZnn7u2%jd_$_*7R6g%82PnDYPD9P#^^yM8 zJa83YGQquy8J`yJ(d4(xVC-)9s~{6~l%ZsTI~Scy2xFO$dmitXfVY4u`*#Na9|!As z{@L*S^Wak4UkLbgc&@bS`7gl+@c+Vd?qGD!PXQZwembc5dEE_J@|st7S8y+ig0P?Z z2x^2Mk-VN+Va;R6n9hjh>=|V2g}+fbbBTWK&ucmGS`Pe8)Zv*A;!{CeH1K~Xo>1?;fg}Hn?_b+bLo|WDo8}Csp zo5(pX?BAkM`P)1n_xC$9HcIHDToZrS|8ibd&)oLU`rNF>#+I2iEsOQY=6{FdLE+4A zJQnC`|3`c_r=#z{x_$0pUf_xx#{^hCsvN&S{rhkjr}X~)cpf6%4?;Ri%_-(KKhak|teE!W zK_ss;!r%`4|IBD>yAR(TY+T;7AUC0A!D4bk<^3{g&J$MQ%&(s7ez)7Or||r@Ar8As z?=4ZD?#=yffgg8IM0vlYU-lfo{%HBxf}WA_yYc+*$KdI_-v=2UU+Y)*!r@!0TzV~{*5dpuBpM^$;e3>yncN2#&8beXLeA!9*^sQHgGrv|(TBCev;Zg`i ztvr)R$L}o9dNSW-a;tFw-J(rJF7Uauc#H~>h=3^__@#cnU!1GxFR=W{!N@K znbg#{G?HI^3w9{s)vGrDR@SQ{o-EzHF6-0S*NUuInx6@2)|{7_Z;<9Mc9G`Zl)K4S zl_n%Gzx3e#J^{@i7|p5SyOg|99e$QHK40$rn;$FhHBsJJdF$Rsm3O;$HBF0hEz_Om zRK8NR+Pzo4iq-(=JcQLAo!uclqNO%z&-i@#Tew|>W4_WWz9Eg7 zUVJ;#>apfTR$_honuJ@3{9I9eAT|lLtg;|q-2BrN@NnGf3rW^B52{|vR8Vs#nx8rc z)clmKv6qG23x2=S*i8H#$#MAg?NUPdc_Z~TGW?!HJfeRMsB!tVX}lv{KT168!umEN zaqS0Ar(B=a56prPM=dD15lT0Thl7J#qvRaV#nVFYL!}4bSDDW0gI^tH)m&^H?GB_&B9GvE(%EGr1rT3oP zPFTf#2Pk=dD;V#AP+3TByiQM?e#e_4(8gE?!zBwsRvJh;EV;SQyvxir~{c`xo8 z{vP4g2eSUivmtKPVKe`MpHq!SFZV)W6nKR|`uU=1jkUf&&QqB@5fUXILAv z4esLunQoTrK*By|VVQTB(6nkj6VJ)^zn}neZ^<8*afom6#-6$~Ph!6D-tL{{m(nTQt$p$^rhbX)mGq=|*52(T z|Kp_f@b)}!4?LfNA2S08cLtkGls_4#2b%3$5Vd;b#$|-N4XbeG*UG!U@8-*EhKZyF z^v6R!cd52`;q4%FT+`O}=)MYxB8j!<eGS2m!_LOGVAo+E!ak0D7Ar$_CC~jFA?GEWiQDi?Isf^ad+q!u4YAJub6?_$ z+|}GimELBhqyOiO1y4);H~*c7lK0SstyJ580Rwr&+?MFYHx(-b@#p|xSK%c{qvevVg5M( zj`03&unqV9pu&9xyd8Wr;7(9;070thB z?#27Lq8ol@7Wtut##lU}Cu4Q*Avz{9YMaJU?`C6PGk?1|p!#oPon;}JzIWvv+xg`0 zD0wd*I$z1-HiG$MJp^I23FE75?_#VNH-cIMt zafW`l)`yOlGg=?=ZriUZ-B{}GyoPIBFsCCoBgfnSin6Tow>i9O+7X%Y9^BtU83VuN z?9l$J`ycN5(o5^>zrt^YF@JGizpK4Ju0LJWr;o=6@jafgU%L~g%YJ+Z_p?jJdb6KL zV;aq$3<4|q6~5VLd1&W_2Jqg@VdUYC4)U-kdka(+qOG{qrw|WDcWh{8CmB(2F#ezF zfNoFrVi?_Go?n87>WeS;B$b;3dDe!N85z1{)ayK5Kv(C~V^G~Y1{}?E)!lPIjjc8R za5kv<22C((o`Jaq#vwKza0o7M^ey^wW=P8UHk8(4%QF?OZYo{s^Z7h4eI}kc2iH~9 zyo1uKc?UnfJ}r$yy!re~G;iTd%$vsXsxnu(uzT`GHFvyS2Z}e%FNinID@Z@pfYsmv z(9`aSH}UCtvwqeHDJ+b7bx z|M@-8|I32@uOL#%fSHB-*onOv`$H_U?bn|Cg>cVUJD`34J`JpOhqMjG|8A^|WN8@q zA@XrJcrQ3AJXd~y7y2SDO-{&?rspn2xjpuZiS ze-Hd9{(cT_0{;Sj4D6Hma5$YjmC@^#(f1hrd6Em9yRf(5Lf&b%Nn@mg`7Mrof4)>3 z67MfvMp>`zW_i0vqdzKtoBzp&=W1ikJW8MKKt7ZNJL=Fktl-o2`UJpCzHA?Qf_wvH z;!3t;w&eKwM{oLrv%>t-R7XVZO2K>;`bTw_{-iqYCcO<+dm7#a`f=Nd$cA5M zL_dWz7uFe7R*GBZt`Nt&!Tz}410D`;NaH$3k5axc={}x<5VCed~LwPhe&zv?p|jc2T|06M@!@6qkkH zfA#*scJ-~lh$K9an{d>V7;QP|J zRPTL!rRx1S>Uur44f_aIaa;SZ{*KIp9^Bt)%>Vz+=Kp(n{!?oR9i9KU4JxKXIq#R| za(?;GvWK{m0)&E~m2j_LC4)(I`@2vj+ z651=eL%WmuZ{hb}{eLu-S+&hRuS(bdPatd3qYr|r{||ws>c3BO>H7bv5XZxy>iBtpN0&V@$D?Frm_I*ZlG!d&jb{oMtfX+|gFM|n>^@A^OEg84Oc|J&%!Zd%23wEL># zzMyNmXsKst=TIFN1G^E_8GM;b#cRY->^h)+8H1gG}-qmHBUtSyNki69V z20GO-ohi+;ay7Lx8tPZ|N^e*hybx&lUbiRrAJCd)w1V#Ljczg;GeaY%{Z?jPfX4Mk zL+37=dY5NbHjf7yaozb(XxyCA2z7@9>}|awWuu28nApG+U*D%Heg5nM{7OW120}&3Cld40w^iV=;CS!=_8%U=ExQBRPcqPb@8rOA->UCR zC1Ir8evc!|5qZ>DhUvw;sZ;~G#gT?-x$UI!M^UrF3YrEx1SeV?arhE8#5O+}`bu!GrY zYx#a*tIv1q&%}On&hKdFx1O-RUs2d=t9+h^m05;gg?*z7lgTuJ!*DB)P6eBBYwfEA zoB=Ke2Qm|J2rEs8Xr&5sIAweYCph(7>C?J}?;9j(zd~iIw8-2{9HO}rRC}@tJPH&| zjUR5oE!uLA0B^&6G5991KwBjy+UEqEmD1PP*Y^nu`#I>cq;uZd7bW`I7bV@K{ZPJK z&P~fharpMV@Xh2nj(E;nD`lGV_Hk6FajfULZ;KPxF5^U!3hR;FMefqE5sc;XL%7u+ z{xGOEVH2o)QGRHgavyHx%l+U;@Bz@%R!vc3e=K=14y#<1`%HchNz)}+^KEirJu;S` zPY~ZRq29``Z&x)R=1uJPVf>z$8SctmdFI>2!ku(+o^fxkizfAIGWQq<`K7Vlah>=-1a)^Cm{~TxOwR&mGuDdXSh}NJHesg z&)s|JD7jR&r||pel#clQ@@lUetc{A(O25LD0d2pld$h;UQ+#9E#o^nPf_%hr(C)Z6 zUIHc0|DDF+^ZjL>slMManm?FL*x@MGD(oC=J+=*d4|Xf|N$gJSE7(EPIqQh6!p^}i z!>+|{!fwYtgMAU(pF?s(v173_v5T>5v74~luuoxkVqd`yVvso;TZNs2U4~tY-HhFi zeFgiP`RnI^>bdn-H-zMTJ4)6K-2bU%F8@t|aMl&JcPyg(N1_njqiFqSVK2&GWhI@a zzRvG`^zQF;{(c`TIT)-b?EknZlg;P(Nq5_|bG!NN(?OdU(x<-ai&z*l}#gS1-9r4RwS) zWQVd@!o4cG|664uzxMubW#6AWKUhhx8&&S!_ zT{b7SC8YOIpH%nvNYXoWOkuxloZg{tgq9BHK@Kk(>Ouq^o*Z3s07vLM9;cDIO8JMZ)O8lz7I9a?`b?XQ$`O%zZJLI zbT8|rzm0w#VG(cLN7JrPJ`T5J=K_xCycN6{_u7E(0;RX_3hsNr3A}$lSPe3#&+YP@ zn+flCfby?Ch44GzB;NbJ-0$snp7~?^DUZAyCQc^x zUd2WFong(v@i!}zY1MuP@|v++CUYg|=`Y8BA-@#P%TwvG6m6J`Zyu<=QB4|;&wu4P z<&yETQ5fH;>Q-Q7*mdZ}6zFo&a3{Q6nx4Cu^fvEjIIxVirVYChyB+%s_GRn)Elax+?oJ@1z4q zN(o`~yM;Qi_V1(~C~s{4Pi<(=#IKpCzMb9hk8@V<1eKFm=vgf@iv8=`CMWVTQf6ltZ9Q`G^1|nR* z%xU3XmyYh8jpLrKC5E~M>WcZahq&$Tl_?E;(6@0Jsa;XW#kAC`Li`>0(M>Vxnz}e$ zzqKe%Ev2;ZO)WeU`^px1)H&`ei~Ly@xooRUKQG)|d2w9>2f^E=H@!bMx>QGf(o*#= z=0Cmr2EU!1yNS>IT%DU=dF7N!AY9W619863Sz1p&uD}m&`^>RVPjs#xvakBtd42U+ zbbG36R1aj1#9F_qg5SPQl>UC#1@wzA;C2bqDO*=62Cq{#p--OL4?0EZwE3SQq3M3c zQT2ZYad!Jd3-%oUTO05Y`c?kT&%UUau{^}*ze?2)-9SMRHKmn~v^Y5~k{c(l(KCcH z{bsh)LnXf@mEK|G>s;r4D!D3|p~-@lTrCUW7?<9T!ZbC8I~qFkC)GgRsafJ8lpJ;I zyBp9Rj5Qfl8(oG@miz@3&oB2qq>Sb?=3*bfYW{_G&dtBP2{5_c#cyA}i7RV)p&fL6 zdHq%&T5*4mwo&7-e+3!tIh+#SUl!b=g}l&)`a1`;CztsXckV{<+=~0(aEt!4;0937 zH-bOJ{UE6Lp8$UZS|1*#Yme1mKbo}{nSp2)zrXT)dh0{nGk>;*o-Ri3N_|t~Hw=3hnV}!uk1; z=f<-Y>5a?lnsNwrZ{+nQ(lHL}Wxvo~OMlwfV0m9Z53&N3uDBW0T7dM5ti|DFyY#n; zSB9{wK=E`7c)E6qL~+#f+{z3JwETgG&1v zQ1SO=enYbued(o06ZU0CuBCei{=AGOPTp|RZ{v?o+{cfXww|-U(KL>%j@&UEpN!-Jnma*G{^3q+GK=n0}d| z0gvI?sn|o|VKCOO!&v@%*(hCxcN4$(crU0jd|yiM6qgq-^Gwfwa36m#O8ej|Sf{~O zVP|9Ov2ECm*lpOSurFZ$9*pX->7z{{!84R0!F-hQ|8Lo};~w>L{bv(##QhJ+;B+E< zGx$fW=JT|Mf}TtyLpuJO$>u+qZQY#qK^EiRrz6Q&`qZM&4QZ8JDc(&Pf1mPw;H9|r zd>VK^?&;tI;5Fc8@H+5gpz7BaQ0e(Ncsr6s;li+uQKc)Rs zxaqgJ@V^fDhwy$k_%QEvc6lqveG)GIlfcj5K0COz9`I@0Q-XUM_*vWp4}BZeAm4B4 zOYgF9-`!Bg+lNN)bWfh{q${i?Rj}$dm{Fh)uQ^%YM=JP{rtox3=0D@3bn;(DLoq~+ z#cSptDhE{mZT?4nAek{9+}{OUtMIF9t0DL$HH2kJ=Q^oD?7yRY>d9G$ zkWX$`gUhE}`?Drb29@CiAY@XGJeq8IlnPT*kM_p~y6x7-tR3UJ3TI-P3!!<8@U724L$ub1-^0p%zil|!k7uWW1HloX`l+Xb>K{~sCxT~y*8fyL zLGAmQ;7FdI4W0@5e&!g)Bj?d}s-Jl}w$lB^i!=7k-j{GGExx`cuI|dif!H?vz>FnM z)zNc7rSW`FX&VQ!u8_F^R119}sI^?BsUqM>;6*$?1*`%KX{!op8(EaDLA2?GF^8{T zNh%i-Pw_1?f%ufJYEbEzn8rW3T^zo?l#b()5Xa;Y$CM7@@bX{!Jmh5|j;WyZ?6fqF zS?$u{Ww~@ZW`sCqg5u@!G>#c*9LiHKmxVPR@vpI_%&{)a+&$)9$MSA8N`4-8C3XvT z2lhGa%h*9zG7i92W9MR5V%KB0VEsJT1-pR^kxNPlNrz&!lmdo&y+)pB>ckXRt4*u3weS9Elx?os3LZFhn-8^eGn)4VnlXPrh34T#Q~d2Cn$|Au4m70)%=`?R#~96C z+!tVcsUN5QftT^pXX@HA`Ub-5-F&Y6dKpdJyol1Ha<#q$b4U0+F7@kWtaQBZDvH<3 zNa=X#Ycj9u&-^G2zKl!9d#{UkNSX#;Hl^eJu#5Nf)UVIe!uhM1x4ZFM#`!#(AG$-G zSB&~ed34?;>?7D`u`gl=T}}T8I~h9<+lJkU-GO};`vUeg^ViLRGRRxqZVS3=K$Ilr zFw0jlKyt67Pi}0!xvpiwVn44jE4L`OGM)FCj3QM~5@AelJeE_hf2a z!yA=^_?g|E;nwQI-WNS%(S6bK`kJPRE0^hmOKkOS?sRWTPxl6NyoNtvd2>tS(uuWo zZcm(V+j_GX?Ep8YWM#moLY;}r;QuIt+e?(ewA|A9xh7u*J!!L4rb@5%m*<6Q7}rMT z<;(9fnll>gTR%NoOEWsA#~&|2hq>|c_ZXe=H`gr5^{jm=rlGxOGE+Rbzkh3+)Ddp9y9f;zO2vh!kJHHmvp@ha}{~fISaJC zhoYfyKL1LGJ12xgN4E>7zMjvMB+V=JBj#ac=xgUS-@;A_#sTiG9?qw7S2ph9Aag42 zd=2vydG>6xx}f;0GJVh{eK;T4ht*S$72ru}n{mY9c*ZD>G8VH(V5_n9*f#7Y>?7Ex zu)DCYU|%!)F9)RmtxxU*4EOhf4ieQzsXNmsT=!^3!_3C!mRY$5MgY9C`F_n`D~$Qu zTfHCe51gKBDcKHmw*Rn{j#pYW4%8aQ*Rj_Ho@^eSzGXUvx@?qq^Xm%jo{#qP|I(e^ z+S>p<&1)%-WmLbk7i18a?U&@&CHY?{F4be@z0bcS&410`YtM(w@!pG8@Z16?c^ zvcjF8fOU5U5;dBClIPMZ{{=EPo9{;&rC+#T-+eD^5{OR7F9pvBZwJZy{D;5`z{kN0 z!Eb{Xflq@~;J<+5L4OWHIcIB~TF<-^I}3X_R_EokXF>P|tiJQ5Gnc~GVf9XK&EqPp z?C4<4t#|S}IHUQ4crW*RgCz8a{vgJPBe4IdMzU$`^Lp}MW{n5;_geNZZF_h7`9G`o zIxi@{_CBun@gB~ozt`oS?6}X@SwFC|`tRPwdp%JiH#asdVH>sACDA)E8S5ME1J_!a zo)3!F-X>g8G48^#H{Qthshaxck*?3iEOptpF8a+ApS|V>Q?{RUK=#WIZkwlY(>QfR zy>WXkmA{hYzF2P#kPdL`R;n+YiA$sp%9A9?e=Y0cHGRB0l*bSY3SLKfjCoHe4{d&} z&$Z;nH>{GEp7a4#uF^d=7r8QsIQk?tbMbS9(VE&=Q>)F;6B?Tum$M_Cep*k~utd-J zJ_5c>@2!WLm!Bk+yLb&ndQSN#y{E1N>B}DvR)FX*dKQ^Hy2

    38YBYLI?d+YO-f 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¬N9L%HuEKgxrqqBFhcR>u}s}d3#gkdfC-j-af6r%q1w-%gvQ_3s@#lzm)99)K``X^JKY2*-kDd`-xFrw_KLWaYiWf z9@I=8r(Kif?NW^7wsW}5nJUk>PD;5!DPxp!?lzfAP@Z25W+?NuLz$1AvJ6zN?>v?5 zNacO(Xl1*sa-I|YMY&()d@fqKUNs7n{bmf5?PkjLs;hFnsvj)JpW0oPzRLBgyK)dewNeJ2mfK~I%YIuc@8{LoFZ0PgWSQPkwr7==rR#24Zn!FMZ#qnF z+bGwy$(xm&@;ngcDRa@v`$4|S^-Iuv*?+WhJf*giIV(_wMGH0M%zZxpnryk1dPLy(95PntmyCp;B&6VrY z{C#Erp~~~H`$^gEtUO-@D%YchmFv;M?Pa@V8`+wZ#PJ8hkTR$2V~09 zsgk_CevoY6;4JIol+ta9Y)?8R%Mj&!Dpa}dOq(rlXB;X^U*)

    9_1BMtPmfP|CC> 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 diff --git a/Runtime/XericLibrary.xml b/Runtime/XericLibrary.xml index b305bc5..1b677b5 100644 --- a/Runtime/XericLibrary.xml +++ b/Runtime/XericLibrary.xml @@ -1528,6 +1528,1347 @@ 超时时间(秒) + +

    + 配置宏 + + + + + 保存uri配置文件 + + 自行完毕状态 + + + + 读取uri配置文件 + + 自行完毕状态 + + + + 协议 + + + + + 主机名 + + + + + 最终路径,最后的斜杠会影响uri的处理 + + + + + 在列表中搜索名称,如果没找到,返回一个空字符串 + + + + + + + + 通过名称获取路径uri + + + + + + + + 处理一段路径中的占位符,将其替换为目标符号 + + + + + + + + 添加一个配置项 + + + + + + + 移除一个配置项 + + + + + + 移除一个配置项 + + + + + + 设置一个配置项 + + + + + + + 名称 + + + + + 值 + + + + + 静态类型,生成时固定类型,如果后续设置类型不同将拒绝赋值 + + + + + 是否为空,不检查值是否为空,而是置标志位 + + + + + 类型 + + + + + 调试宏,重载unity的日志输出效果 + + + + + 开始替换日志输出器 + + + + + 结束替换日志输出器 + + + + + 彩色日志 + + + + + + 彩色日志 + + + + + + 彩色警告 + + + + + + 彩色抛出 + + + + + + 彩色断言 + + + + + + 彩色错误 + + + + + + il指令分析库 + + + + + 从类上获取IL程序集 + + + + + + + 检查类上的方法是否调用了基类的类 + + + + + + + + 检查一个方法里是否通过base.调用基类的方法 + + + + + + + + + + 菜单宏 + + + + + 值为空时显示的文本 + + + + + 数值格式化格式 + + + + + 字符太长时替换样式 + + + + + 呈献值 + + + + + 值为空时显示的文本 + + + + + 数值格式化格式 + + + + + 字符太长时替换样式 + + + + + 名称及标识符 + + + + + 值处理器 + + + + + 承载对象 + + + + + 格式包裹器 + + + + + 创建一个呈现组 + + + + + + + + + + + 添加一个值 + + + + + + + + + + + + + 创建一个值 + + + + + + + + + + + + + 创建一个值 + + + + + + + + + + + + 对象计算器 + + + + + 设置值 + + + + + + + 获取值 + + + + + + + 值计算器 + + + + + + 值步骤长度 + + + + + 取整方向 + + + + + 设置值 + + + + + + 获取值 + + + + + + 设置值 + + + + + + 浮点数计算器 + + + + + 浮点数计算器 + + + + + 浮点数计算器 + + + + + 检查当前变换组件上是否发生盒体碰撞 + + + + + + + 检查当前变换组件上是否发生盒体碰撞 + + + + + + + + + 检查盒体范围是否发生碰撞(或在某个碰撞体内) + + + + + + + + + + + 检查胶囊体范围是否发生碰撞(或在某个碰撞体内) + + + + + + + + + + + 检查球体范围是否发生了碰撞(或在某个碰撞体内) + + + + + + + + + + 命令控制台面板宏 + + 脚本中将监听的命令注册到此,当用户输入时,也可以通过这里的字典进行查找。 + 命令需要有一个开启词,自动补全也仅支持开启词补全。 + 命令后的参数将会由具体目标处理。 + + + + + + 命令 + + + + + 继承中间件 + + + + + 执行命令 + + + + + 当前进程ID + + + + + 通过程序名称查询窗口句柄 + + + + + + + + 枚举窗口回调委托 + + 窗口句柄。 + 应用程序定义值。 + + + + + 通过将句柄传递到每个窗口,进而将传递给应用程序定义的回调函数,枚举屏幕上的所有顶级窗口。 + 枚举窗口 将一直持续到最后一个顶级窗口被枚举或回调函数返回 FALSE。 + + EnumWindows 函数不枚举子窗口,但系统拥有的几个具有WS_CHILD样式的顶级窗口除外。 + 此函数比在循环中调用 GetWindow 函数更可靠。 + 调用 GetWindow 以执行此任务的应用程序有被捕获到无限循环或引用已销毁窗口的句柄的风险。 + + + + 指向应用程序定义的回调函数的指针。 + 要传递给回调函数的应用程序定义值。 + 如果该函数成功,则返回真 + + + + 检索指定窗口的父级或所有者的句柄。 + 若要检索指定上级的句柄,请使用 GetAncestor 函数。 + + 如果函数失败,则返回值为 NULL。 要获得更多的错误信息,请调用 GetLastError。 + + 此函数通常由于以下原因之一而失败: + 该窗口是无所有者或没有 WS_POPUP 样式的顶级窗口。 + 所有者窗口具有 WS_POPUP 样式。 + + + + + 如果窗口是子窗口,则返回值是父窗口的句柄。 如果窗口是具有 WS_POPUP 样式的顶级窗口,则返回值是所有者窗口的句柄。 + + + + 检索创建指定窗口的线程的标识符,以及创建该窗口的进程(可选)的标识符。 + + + 窗口的句柄。 + 指向接收进程标识符的变量的指针。 如果此参数不为 NULL, 则 GetWindowThreadProcessId 会将进程的标识符复制到变量;否则,它不会。 如果函数失败,则变量的值保持不变。 + 如果函数成功,则返回值是创建窗口的线程的标识符。 如果窗口句柄无效,则返回值为零。 要获得更多的错误信息,请调用 GetLastError。 + + + + 找到当前进程下的窗口句柄 + + + + + + 找到当前进程下的所有窗口句柄 + + 如果发生错误,返回null + + + + 所有窗口展示命令 + + + + + + 隐藏窗口并激活另一个窗口 + + + + + 激活并显示窗口。如果窗口最小化、最大化或排列,系统会将其还原到其原始大小和位置。应用程序应在首次显示窗口时指定此标志 + + + + + 同 ShowNormal + + + + + 激活窗口并将其显示未最小化窗口 + + + + + 激活窗口并显示未最大化的窗口 + + + + + 同 ShowMaximized + + + + + 以最近的大小和位置显示窗口。 此值类似于 SW_SHOWNORMAL,只是窗口未激活。 + + + + + 激活窗口并以当前大小和位置显示窗口。 + + + + + 最小化指定的窗口,并按 Z 顺序激活下一个顶级窗口。 + + + + + 将窗口显示为最小化窗口。 此值类似于 SW_SHOWMINIMIZED,但窗口未激活。 + + + + + 以当前大小和位置显示窗口。 此值类似于 SW_SHOW,只是窗口未激活。 + + + + + 激活并显示窗口。 如果窗口最小化、最大化或排列,系统会将其还原到其原始大小和位置。 还原最小化窗口时,应用程序应指定此标志。 + + + + + 根据启动应用程序的程序传递给 CreateProcess 函数的 STARTUPINFO 结构中指定的SW_值设置显示状态。 + + + + + 最小化窗口,即使拥有窗口的线程没有响应。 仅当最小化不同线程的窗口时,才应使用此标志。 + + + + + 设定窗口的显示状态 + + + 窗口句柄 + 指定窗口如何显示。如果发送应用程序的程序提供了StartUpInfo结构,则应用程序的第一次调用ShowWindow时该参数被忽略。否则,在第一次调用ShowWindow函数时,该值应为在函数WinMain中nCmdShow参数。 + 如果窗口以前就可见,返回真,否则返回否 + + + + 设定窗口的显示状态,而无需等待操作完成 + + + 窗口句柄 + 指定窗口如何显示。如果发送应用程序的程序提供了StartUpInfo结构,则应用程序的第一次调用ShowWindow时该参数被忽略。否则,在第一次调用ShowWindow函数时,该值应为在函数WinMain中nCmdShow参数。 + 如果操作已成功启动,则返回真 + + + + 矩形信息 + + + + + 监视器信息 + + + + + 结构体大小 + + + + + 物理分辨率和位置 + + + + + 工作区域(排除任务栏) + + + + + 标志位(如主显示器) + + + + + 设备名称 + + + + + + + 设备上下文(DC) + 剪辑区域 + + 自定义数据 + + + + + 显示器拷贝信息 + + + + + 刷新所有显示器信息 + + + 返回显示器原始信息 + + + + 消息宏 + + + + + 基础消息 + + + + + 业务消息 + + + + + + 重定向文本消息发送(一般定向到消息发送方法上) + + + + + 所有委派成员 + + + + + 无参委派成员 + + + + + 启用自动转换 + + 让委派成员更智能地通过cast函数来传播消息里的内容; + 具体来说,当消息里的内容是一个对象结构时,而输出是string类型,这时json反序列化会报错, + 但使用自动转换会尝试通过其他方法获取到里面的内容。 + + + + + + 自动调用委托 + + + + + + 一个参数的委派成员 + + + + + + 注册一个重定向消息处理,这会通过消息事件处理 + + + + + + 注册一个重定向且带有具体类型的消息处理 + + 尽管在每个委托实现的前面注册重定向会比较符合阅读习惯,但是这样会导致只能注册一个寂寞(因为在还没有任何成员注册以前,它只是一个null) + + + + + + + + + 向这里发送重定向消息 + + 由于消息很可能不是在主线程运行的,所以这里只是保存. + 需要在主线程上手动调用MainThreadProcessingMessage来处理消息 + + + + + + + 在主线程上处理消息 + + + + + 获取安全的消息,过程中发生的错误均会通过消息链路进行向上传递 + + + + + + + 将对象序列化为消息 + + + + + + + + + 发送消息的扩展 + + + + + + 发送对象的扩展 + + + + + + + + 直接获取事件名称 + + + + + + + 直接获取事件成员 + + + + 是否沉默,如果为真,则不会输出错误信息 + + + + + 直接获取事件成员 + + + + + + + + + 可以调用的目标封装 + + + + + 调用承载 + + + + + 示例方法封装 + + 目标实例 + 方法名称 + + + + 示例方法封装 + + 目标实例 + 方法名称 + 参数类型 + + + + 实例方法封装 + + 目标实例 + 方法名称 + 参数对象 + + + + 实例方法封装 + + 目标实例 + 方法名称 + + + + 实例方法封装 + + 目标实例 + 方法名称 + 参数类型 + + + + 实例方法封装 + + 目标实例 + 方法名称 + 参数对象 + + + + 调用 + + + + + + 设置参数 + + + + + 添加委托封装对象 + + + + + + 通过名称召唤委托封装 + + + + + + + 尝试通过名称召唤委托封装 + + + + + + + + 移除一个委托封装目标 + + + + + + + 对象池宏 + + + + + 对象池组件列表 + + + + + 获取对象池对应的哈希双子列表,如果此对象池已经对应了另一个数据集合,则失败 + + + + + + + + + 从对象池列表中销毁组件 + + + + + + + + + 可以直接通过 + 关于批量释放,可以使用pool + + + + + + 加入创建过程(不需要提供创建方法) + + + + + 加入获取过程(实例对象,理论索引) + + + + + 加入释放过程 + + + + + 加入销毁过程(可以执行销毁方法) + + + + + 获取一个池化对象 + + + + + + 获取一个池化对象,并获取上面的一个组件 + + + + + + + + 获取一个池化对象,并获取上面的多个组件 + + + + + + + + + + 获取一个池化对象,并获取上面的多个组件 + + + + + + + + + + + + 获取一个池化对象,并获取上面的多个组件 + + + + + + + + + + + + 获取一个池化对象,并获取上面的多个组件 + + + + + + + + + + + + 获取一个池化对象,并获取子项上的组件 + + + + + + + + 获取一个池化对象,并获取子项上的组件 + + + + + + + + 获取一个池化对象,并获取子项上的组件 + + + + + + + + 获取一个池化对象,并获取子项上的组件 + + + + + + + + 获取一个池化对象,并获取子项上的组件 + + + + + + + + 进入推迟获取区间 + + + + + 获取一个池化对象,并获取上面的一个组件 + + + + + + + + 获取一个池化对象,并获取上面的组件 + + + + + + + + 获取一个池化对象,并获取上面的组件 + + + + + + + + 获取一个池化对象,并获取上面的组件 + + + + + + + + 获取一个池化对象,并获取上面的组件 + + + + + + + + 结束当前推迟获取组件 + + + + + 径直释放一个对象 + + + + + + 将给定的对象的任意子项用于释放对象 + + + + + + 释放所有对象 + + + + + 对象径直池化(也就是说这个对象可以使用径直释放方法) + + + + + + + 通过枚举器生成伴随循环的池化实例项目 + + + + + + + + 获取所有激活的池化项目 + + + + + + 获取所有激活的池化项目上的组件 + + + + + + + 信标,用于查找 + + + + + 对象池设置 + + + + + 对象池 + + + + + 激活对象的字典 + + + + + 非激活对象的列表 + + + + + 所有激活的对象 + + + + + 激活对象与索引 + + + + + 未激活对象列表 + + + + + 初始化设置对象 + + + + + + 移动一个元素到激活列表中 + + + + + 移动一个元素到非激活列表中 + + + + + 在非激活列表中移除元素 + + + + + 检查池化对象是否有效 + + + + + + + 检查池化对象是否无效 + + + + + + + 检查对象是否池化 + + + + + + + 尝试获取当前对象的数据 + + + + + + + + 释放所有对象 + + + + + 对象池联合参数 + + + + + 对象索引 + + + + + 快速创建一个UI对象池 + + 这个简单的对象池将在获取对象时激活物体,释放对象时取消激活物体。 + 并且会监控创建的顺序,将其按照获取的顺序排列 + + + 对象池管理组件类型 + 预制体对象 + 对象池预设父级 + 在释放时检查对象,如果对象是刚建立的成员将会弹出报错 + 初始的池深度,这只是声名深度,并不会立刻创建对象 + 池最大深度,多余的对象将在释放时直接销毁 + 设置对象 + + + + + 快速创建一个UI对象池 + + 这个简单的对象池将在获取对象时激活物体,释放对象时取消激活物体。 + 并且会监控创建的顺序,将其按照获取的顺序排列。 + + + 对象池管理组件类型 + 预制体对象 + 对象池预设父级 + 如何从对象获取组件 + 如何从组件获取对象 + 额外的获取方法 + 额外的释放方法 + 在释放时检查对象,如果对象是刚建立的成员将会弹出报错 + 初始的池深度,这只是声名深度,并不会立刻创建对象 + 池最大深度,多余的对象将在释放时直接销毁 + 设置对象 + + + + + 快速创建一个对象池 + + 这个简单的对象池将在获取对象时激活物体,释放对象时取消激活物体。 + + + + + + + + + 快速创建一个对象池 + + 这个简单的对象池将在获取对象时激活物体,释放对象时取消激活物体。 + + + + + + + + + 快速创建一个对象池 + + 这个简单的对象池将在获取对象时激活物体,释放对象时取消激活物体。 + + + + + + + + + 快速创建一个对象池 + + 这个简单的对象池将在获取对象时激活物体,释放对象时取消激活物体。 + + + + + + + + + 在释放时检查对象,如果对象是刚建立的成员将会弹出报错 + + + +
    数学库 @@ -1591,579 +2932,6 @@ - - - 文本包裹块处理器 - - 包裹器支持通过反射进行兼容性序列化,但这样会带来一些反射开销 - 通过 compatibility 开启反射兼容。 - - 部分格式的包裹器支持通过 SetParamters 设置值。 - - - - - - 赋予结果的委托 - - - - - 启用兼容性反射检查 - - - - - 包裹器内如果包含变量,将允许SetParamters设置这个变量 - - - - - 参数化占用的名额 - - - - - 子集发生了改变 - - - - - 判断目标类型是否为事件委托 - - - - - - - - 格式化数值 - - - - - - - - 格式化颜色 - - - - - - - 尝试格式化对象为浮点数 - - - - - - - - 尝试格式化对象为枚举 - - - - - - - - - 开始文本拼接,返回文本构建器 - - - - - - 结束文本拼接,返回结果并清空构建内容 - - - - - - - 将当前包裹器内所有子包裹器序列化并拼接起来。 - - - - - - 获取当前节点下所有的包裹器 - - - - - - 获取当前节点的所有血统父级 - - - - - - 广度优先地获取对象 - - - - - - 检查自身是否被给定的所有类型包裹 - - - - - - - 检查自身是否被给定的所有类型包裹(默认认为给定的类型都是包裹器) - - - - - - - 直接设置参数,并将其设置到各个允许设置值的包裹器中 - - - - - - 设置参数 - - 参数起点索引 - 所有参数 - 返回使用了多少参数 - - - - 设置是否启用兼容性反射检查 - - - - - - - 设置是否启用变量化这个包裹器 - - - 手动设置占用变量 - - - - - 设置延迟赋值的委托事件 - - - - - - - 启动延迟赋值 - - - - - - 委托包裹器 - - - - - 反射包裹器(有子项) - - - - - 寻找成员 - - - - - - - - 设置值 - - - - - 获取值 - - - - - - 值包裹器(没有子项,计数) - - - - - 值名称(用于查找) - - - - - 值 - - - - - 值包裹器(没有子项,计数) - - - 值有两个状态,正常,超出范围(无效) - 当设置的值超出设定的范围时,如果同时开启了显示无效值的模式,那么将会显示为预设的无效名称。 - - - - - 值名称(用于查找) - - - - - 值 - - - - - 最小值 - - - - - 最大值 - - - - - 格式化文本 - - - - - 启用无效值 - - - - - 值无效 - - - - - 无效时展示 - - - - - 值包裹器 - - - - - - - - - - - - 日期时间包裹器 - - - - - 值名称(用于查找) - - - - - 值 - - - - - 最小值 - - - - - 最大值 - - - - - 格式化文本 - - - - - 启用无效值 - - - - - 值无效 - - - - - 无效时展示 - - - - - 值包裹器 - - - - - - - - - - - - 值表达式包裹器(没有子项,不计数) - - - - - 工作模式 - - - - - 自定义状态 - - - - - 暂存 - - - - - 总和 - - - - - 总差 - - - - - 平均值 - - - - - 最大值 - - - - - 最小值 - - - - - 自定义 - - - - - 创建值表达式 - - - - - - - 条件包裹器 - - - - - 设置参数 - - 参数起点索引 - 所有参数 - 返回使用了多少参数 - - - - 对齐 - - - - - 对齐 - - - - - 颜色 - - - - - 粗体 - - - - - 斜体 - - - - - 间距(一段文本的整体字符间距) - - - - - 字体 - - - - - - - 字体资源是必要的 - 如若不需要材质资源,填null即可 - - - - - 行高 - - - - - 行缩进 - - - - - 链接 - - - - - 小写 - - - - - 大写 - - - - - 小型大写字母 - - - - - 边缘 - - - - - - - 设置为负来取消这类标签 - 设置为负来取消这类标签 - 设置为负来取消这类标签 - - - - - 马克(背景颜色,或者说前景?因为马克在文本之上) - - - - - 字符间距,设置为给定等宽距离(单个字符调整左右边距) - - - - - 阻止解析标签 - - - - - 不间断空格,让单词保持在一起,而不是被自动换行分隔 - - - - - 分页符(必须将 text 对象设置为 page overflow 模式才能正常工作) - - - - - 水平位置 - - - - - 字体大小 - - - - - 水平间隔(在位置中插入间隔) - - - - - 精灵 - - - - - 删除线 - - - - - 下划线 - - - - - 样式 - - - - - 上标 - - - - - 下标 - - - - - 垂直间隔 - - - - - 文本宽度 - - - - - 富文本单位模式 - - 转换弧度到角度 @@ -2931,15 +3699,6 @@ 内插语法,表示此foreachdo不会作为执行器运行,而是作为其中一步执行 返回值可能是有效的,根据是否启用内插来判断 - - - 重复对象 - - - - - - 重复枚举器中的每个对象 @@ -4917,6 +5676,500 @@ + + + 文本包裹块处理器 + + 包裹器支持通过反射进行兼容性序列化,但这样会带来一些反射开销 + 通过 compatibility 开启反射兼容。 + + 部分格式的包裹器支持通过 SetParamters 设置值。 + + + + + + 启用兼容性反射检查 + + + + + 包裹器内如果包含变量,将允许SetParamters设置这个变量 + + + + + 参数化占用的名额 + + + + + 判断目标类型是否为事件委托 + + + + + + + + 格式化数值 + + + + + + + + 格式化颜色 + + + + + + + 尝试格式化对象为浮点数 + + + + + + + + 尝试格式化对象为枚举 + + + + + + + + + 开始文本拼接,返回文本构建器 + + + + + + 结束文本拼接,返回结果并清空构建内容 + + + + + + + 将当前包裹器内所有子包裹器序列化并拼接起来。 + + + + + + 获取当前节点下所有的包裹器 + + + + + + 获取当前节点的所有血统父级 + + + + + + 广度优先地获取对象 + + + + + + 检查自身是否被给定的所有类型包裹 + + + + + + + 检查自身是否被给定的所有类型包裹(默认认为给定的类型都是包裹器) + + + + + + + 直接设置参数,并将其设置到各个允许设置值的包裹器中 + + + + + + 设置参数 + + 参数起点索引 + 所有参数 + 返回使用了多少参数 + + + + 设置是否启用兼容性反射检查 + + + + + + + 设置是否启用变量化这个包裹器 + + + 手动设置占用变量 + + + + + 委托包裹器 + + + + + 反射包裹器(有子项) + + + + + 寻找成员 + + + + + + + + 设置值 + + + + + 获取值 + + + + + + 值包裹器(没有子项,计数) + + + + + 值名称(用于查找) + + + + + 值 + + + + + 其他参数 + + + + + 值包裹器(没有子项,计数) + + + + + 值名称(用于查找) + + + + + 值 + + + + + 最小值 + + + + + 最大值 + + + + + 格式化文本 + + + + + 启用无效值 + + + + + 值无效 + + + + + 无效时展示 + + + + + 值包裹器 + + + + + + + + + + + + 值表达式包裹器(没有子项,不计数) + + + + + 工作模式 + + + + + 自定义状态 + + + + + 暂存 + + + + + 总和 + + + + + 总差 + + + + + 平均值 + + + + + 最大值 + + + + + 最小值 + + + + + 自定义 + + + + + 创建值表达式 + + + + + + + 条件包裹器 + + + + + 设置参数 + + 参数起点索引 + 所有参数 + 返回使用了多少参数 + + + + 对齐 + + + + + 对齐 + + + + + 颜色 + + + + + 粗体 + + + + + 斜体 + + + + + 间距 + + + + + 字体 + + + + + + + 字体资源是必要的 + 如若不需要材质资源,填null即可 + + + + + 行高 + + + + + 行缩进 + + + + + 链接 + + + + + 小写 + + + + + 大写 + + + + + 小型大写字母 + + + + + 边缘 + + + + + + + 设置为负来取消这类标签 + 设置为负来取消这类标签 + 设置为负来取消这类标签 + + + + + 马克(背景颜色,或者说前景?因为马克在文本之上) + + + + + 字符间距,设置为给定等宽距离 + + + + + 阻止解析标签 + + + + + 不间断空格,让单词保持在一起,而不是被自动换行分隔 + + + + + 分页符(必须将 text 对象设置为 page overflow 模式才能正常工作) + + + + + 水平位置 + + + + + 字体大小 + + + + + 水平间隔 + + + + + 精灵 + + + + + 删除线 + + + + + 下划线 + + + + + 链接 + + + + + 上标 + + + + + 下标 + + + + + 垂直间隔 + + + + + 文本宽度 + + + + + 富文本单位模式 + + 将一个数值四舍五入后转为一个文本,并保留特定的小数点位,如果这个小数位为0则省略不写 @@ -5638,1347 +6891,6 @@ - - - 配置宏 - - - - - 保存uri配置文件 - - 自行完毕状态 - - - - 读取uri配置文件 - - 自行完毕状态 - - - - 协议 - - - - - 主机名 - - - - - 最终路径,最后的斜杠会影响uri的处理 - - - - - 在列表中搜索名称,如果没找到,返回一个空字符串 - - - - - - - - 通过名称获取路径uri - - - - - - - - 处理一段路径中的占位符,将其替换为目标符号 - - - - - - - - 添加一个配置项 - - - - - - - 移除一个配置项 - - - - - - 移除一个配置项 - - - - - - 设置一个配置项 - - - - - - - 名称 - - - - - 值 - - - - - 静态类型,生成时固定类型,如果后续设置类型不同将拒绝赋值 - - - - - 是否为空,不检查值是否为空,而是置标志位 - - - - - 类型 - - - - - 调试宏,重载unity的日志输出效果 - - - - - 开始替换日志输出器 - - - - - 结束替换日志输出器 - - - - - 彩色日志 - - - - - - 彩色日志 - - - - - - 彩色警告 - - - - - - 彩色抛出 - - - - - - 彩色断言 - - - - - - 彩色错误 - - - - - - il指令分析库 - - - - - 从类上获取IL程序集 - - - - - - - 检查类上的方法是否调用了基类的类 - - - - - - - - 检查一个方法里是否通过base.调用基类的方法 - - - - - - - - - - 菜单宏 - - - - - 值为空时显示的文本 - - - - - 数值格式化格式 - - - - - 字符太长时替换样式 - - - - - 呈献值 - - - - - 值为空时显示的文本 - - - - - 数值格式化格式 - - - - - 字符太长时替换样式 - - - - - 名称及标识符 - - - - - 值处理器 - - - - - 承载对象 - - - - - 格式包裹器 - - - - - 创建一个呈现组 - - - - - - - - - - - 添加一个值 - - - - - - - - - - - - - 创建一个值 - - - - - - - - - - - - - 创建一个值 - - - - - - - - - - - - 对象计算器 - - - - - 设置值 - - - - - - - 获取值 - - - - - - - 值计算器 - - - - - - 值步骤长度 - - - - - 取整方向 - - - - - 设置值 - - - - - - 获取值 - - - - - - 设置值 - - - - - - 浮点数计算器 - - - - - 浮点数计算器 - - - - - 浮点数计算器 - - - - - 检查当前变换组件上是否发生盒体碰撞 - - - - - - - 检查当前变换组件上是否发生盒体碰撞 - - - - - - - - - 检查盒体范围是否发生碰撞(或在某个碰撞体内) - - - - - - - - - - - 检查胶囊体范围是否发生碰撞(或在某个碰撞体内) - - - - - - - - - - - 检查球体范围是否发生了碰撞(或在某个碰撞体内) - - - - - - - - - - 命令控制台面板宏 - - 脚本中将监听的命令注册到此,当用户输入时,也可以通过这里的字典进行查找。 - 命令需要有一个开启词,自动补全也仅支持开启词补全。 - 命令后的参数将会由具体目标处理。 - - - - - - 命令 - - - - - 继承中间件 - - - - - 执行命令 - - - - - 当前进程ID - - - - - 通过程序名称查询窗口句柄 - - - - - - - - 枚举窗口回调委托 - - 窗口句柄。 - 应用程序定义值。 - - - - - 通过将句柄传递到每个窗口,进而将传递给应用程序定义的回调函数,枚举屏幕上的所有顶级窗口。 - 枚举窗口 将一直持续到最后一个顶级窗口被枚举或回调函数返回 FALSE。 - - EnumWindows 函数不枚举子窗口,但系统拥有的几个具有WS_CHILD样式的顶级窗口除外。 - 此函数比在循环中调用 GetWindow 函数更可靠。 - 调用 GetWindow 以执行此任务的应用程序有被捕获到无限循环或引用已销毁窗口的句柄的风险。 - - - - 指向应用程序定义的回调函数的指针。 - 要传递给回调函数的应用程序定义值。 - 如果该函数成功,则返回真 - - - - 检索指定窗口的父级或所有者的句柄。 - 若要检索指定上级的句柄,请使用 GetAncestor 函数。 - - 如果函数失败,则返回值为 NULL。 要获得更多的错误信息,请调用 GetLastError。 - - 此函数通常由于以下原因之一而失败: - 该窗口是无所有者或没有 WS_POPUP 样式的顶级窗口。 - 所有者窗口具有 WS_POPUP 样式。 - - - - - 如果窗口是子窗口,则返回值是父窗口的句柄。 如果窗口是具有 WS_POPUP 样式的顶级窗口,则返回值是所有者窗口的句柄。 - - - - 检索创建指定窗口的线程的标识符,以及创建该窗口的进程(可选)的标识符。 - - - 窗口的句柄。 - 指向接收进程标识符的变量的指针。 如果此参数不为 NULL, 则 GetWindowThreadProcessId 会将进程的标识符复制到变量;否则,它不会。 如果函数失败,则变量的值保持不变。 - 如果函数成功,则返回值是创建窗口的线程的标识符。 如果窗口句柄无效,则返回值为零。 要获得更多的错误信息,请调用 GetLastError。 - - - - 找到当前进程下的窗口句柄 - - - - - - 找到当前进程下的所有窗口句柄 - - 如果发生错误,返回null - - - - 所有窗口展示命令 - - - - - - 隐藏窗口并激活另一个窗口 - - - - - 激活并显示窗口。如果窗口最小化、最大化或排列,系统会将其还原到其原始大小和位置。应用程序应在首次显示窗口时指定此标志 - - - - - 同 ShowNormal - - - - - 激活窗口并将其显示未最小化窗口 - - - - - 激活窗口并显示未最大化的窗口 - - - - - 同 ShowMaximized - - - - - 以最近的大小和位置显示窗口。 此值类似于 SW_SHOWNORMAL,只是窗口未激活。 - - - - - 激活窗口并以当前大小和位置显示窗口。 - - - - - 最小化指定的窗口,并按 Z 顺序激活下一个顶级窗口。 - - - - - 将窗口显示为最小化窗口。 此值类似于 SW_SHOWMINIMIZED,但窗口未激活。 - - - - - 以当前大小和位置显示窗口。 此值类似于 SW_SHOW,只是窗口未激活。 - - - - - 激活并显示窗口。 如果窗口最小化、最大化或排列,系统会将其还原到其原始大小和位置。 还原最小化窗口时,应用程序应指定此标志。 - - - - - 根据启动应用程序的程序传递给 CreateProcess 函数的 STARTUPINFO 结构中指定的SW_值设置显示状态。 - - - - - 最小化窗口,即使拥有窗口的线程没有响应。 仅当最小化不同线程的窗口时,才应使用此标志。 - - - - - 设定窗口的显示状态 - - - 窗口句柄 - 指定窗口如何显示。如果发送应用程序的程序提供了StartUpInfo结构,则应用程序的第一次调用ShowWindow时该参数被忽略。否则,在第一次调用ShowWindow函数时,该值应为在函数WinMain中nCmdShow参数。 - 如果窗口以前就可见,返回真,否则返回否 - - - - 设定窗口的显示状态,而无需等待操作完成 - - - 窗口句柄 - 指定窗口如何显示。如果发送应用程序的程序提供了StartUpInfo结构,则应用程序的第一次调用ShowWindow时该参数被忽略。否则,在第一次调用ShowWindow函数时,该值应为在函数WinMain中nCmdShow参数。 - 如果操作已成功启动,则返回真 - - - - 矩形信息 - - - - - 监视器信息 - - - - - 结构体大小 - - - - - 物理分辨率和位置 - - - - - 工作区域(排除任务栏) - - - - - 标志位(如主显示器) - - - - - 设备名称 - - - - - - - 设备上下文(DC) - 剪辑区域 - - 自定义数据 - - - - - 显示器拷贝信息 - - - - - 刷新所有显示器信息 - - - 返回显示器原始信息 - - - - 消息宏 - - - - - 基础消息 - - - - - 业务消息 - - - - - - 重定向文本消息发送(一般定向到消息发送方法上) - - - - - 所有委派成员 - - - - - 无参委派成员 - - - - - 启用自动转换 - - 让委派成员更智能地通过cast函数来传播消息里的内容; - 具体来说,当消息里的内容是一个对象结构时,而输出是string类型,这时json反序列化会报错, - 但使用自动转换会尝试通过其他方法获取到里面的内容。 - - - - - - 自动调用委托 - - - - - - 一个参数的委派成员 - - - - - - 注册一个重定向消息处理,这会通过消息事件处理 - - - - - - 注册一个重定向且带有具体类型的消息处理 - - 尽管在每个委托实现的前面注册重定向会比较符合阅读习惯,但是这样会导致只能注册一个寂寞(因为在还没有任何成员注册以前,它只是一个null) - - - - - - - - - 向这里发送重定向消息 - - 由于消息很可能不是在主线程运行的,所以这里只是保存. - 需要在主线程上手动调用MainThreadProcessingMessage来处理消息 - - - - - - - 在主线程上处理消息 - - - - - 获取安全的消息,过程中发生的错误均会通过消息链路进行向上传递 - - - - - - - 将对象序列化为消息 - - - - - - - - - 发送消息的扩展 - - - - - - 发送对象的扩展 - - - - - - - - 直接获取事件名称 - - - - - - - 直接获取事件成员 - - - - 是否沉默,如果为真,则不会输出错误信息 - - - - - 直接获取事件成员 - - - - - - - - - 可以调用的目标封装 - - - - - 调用承载 - - - - - 示例方法封装 - - 目标实例 - 方法名称 - - - - 示例方法封装 - - 目标实例 - 方法名称 - 参数类型 - - - - 实例方法封装 - - 目标实例 - 方法名称 - 参数对象 - - - - 实例方法封装 - - 目标实例 - 方法名称 - - - - 实例方法封装 - - 目标实例 - 方法名称 - 参数类型 - - - - 实例方法封装 - - 目标实例 - 方法名称 - 参数对象 - - - - 调用 - - - - - - 设置参数 - - - - - 添加委托封装对象 - - - - - - 通过名称召唤委托封装 - - - - - - - 尝试通过名称召唤委托封装 - - - - - - - - 移除一个委托封装目标 - - - - - - - 对象池宏 - - - - - 对象池组件列表 - - - - - 获取对象池对应的哈希双子列表,如果此对象池已经对应了另一个数据集合,则失败 - - - - - - - - - 从对象池列表中销毁组件 - - - - - - - - - 可以直接通过 - 关于批量释放,可以使用pool - - - - - - 加入创建过程(不需要提供创建方法) - - - - - 加入获取过程(实例对象,理论索引) - - - - - 加入释放过程 - - - - - 加入销毁过程(可以执行销毁方法) - - - - - 获取一个池化对象 - - - - - - 获取一个池化对象,并获取上面的一个组件 - - - - - - - - 获取一个池化对象,并获取上面的多个组件 - - - - - - - - - - 获取一个池化对象,并获取上面的多个组件 - - - - - - - - - - - - 获取一个池化对象,并获取上面的多个组件 - - - - - - - - - - - - 获取一个池化对象,并获取上面的多个组件 - - - - - - - - - - - - 获取一个池化对象,并获取子项上的组件 - - - - - - - - 获取一个池化对象,并获取子项上的组件 - - - - - - - - 获取一个池化对象,并获取子项上的组件 - - - - - - - - 获取一个池化对象,并获取子项上的组件 - - - - - - - - 获取一个池化对象,并获取子项上的组件 - - - - - - - - 进入推迟获取区间 - - - - - 获取一个池化对象,并获取上面的一个组件 - - - - - - - - 获取一个池化对象,并获取上面的组件 - - - - - - - - 获取一个池化对象,并获取上面的组件 - - - - - - - - 获取一个池化对象,并获取上面的组件 - - - - - - - - 获取一个池化对象,并获取上面的组件 - - - - - - - - 结束当前推迟获取组件 - - - - - 径直释放一个对象 - - - - - - 将给定的对象的任意子项用于释放对象 - - - - - - 释放所有对象 - - - - - 对象径直池化(也就是说这个对象可以使用径直释放方法) - - - - - - - 通过枚举器生成伴随循环的池化实例项目 - - - - - - - - 获取所有激活的池化项目 - - - - - - 获取所有激活的池化项目上的组件 - - - - - - - 信标,用于查找 - - - - - 对象池设置 - - - - - 对象池 - - - - - 激活对象的字典 - - - - - 非激活对象的列表 - - - - - 所有激活的对象 - - - - - 激活对象与索引 - - - - - 未激活对象列表 - - - - - 初始化设置对象 - - - - - - 移动一个元素到激活列表中 - - - - - 移动一个元素到非激活列表中 - - - - - 在非激活列表中移除元素 - - - - - 检查池化对象是否有效 - - - - - - - 检查池化对象是否无效 - - - - - - - 检查对象是否池化 - - - - - - - 尝试获取当前对象的数据 - - - - - - - - 释放所有对象 - - - - - 对象池联合参数 - - - - - 对象索引 - - - - - 快速创建一个UI对象池 - - 这个简单的对象池将在获取对象时激活物体,释放对象时取消激活物体。 - 并且会监控创建的顺序,将其按照获取的顺序排列 - - - 对象池管理组件类型 - 预制体对象 - 对象池预设父级 - 在释放时检查对象,如果对象是刚建立的成员将会弹出报错 - 初始的池深度,这只是声名深度,并不会立刻创建对象 - 池最大深度,多余的对象将在释放时直接销毁 - 设置对象 - - - - - 快速创建一个UI对象池 - - 这个简单的对象池将在获取对象时激活物体,释放对象时取消激活物体。 - 并且会监控创建的顺序,将其按照获取的顺序排列。 - - - 对象池管理组件类型 - 预制体对象 - 对象池预设父级 - 如何从对象获取组件 - 如何从组件获取对象 - 额外的获取方法 - 额外的释放方法 - 在释放时检查对象,如果对象是刚建立的成员将会弹出报错 - 初始的池深度,这只是声名深度,并不会立刻创建对象 - 池最大深度,多余的对象将在释放时直接销毁 - 设置对象 - - - - - 快速创建一个对象池 - - 这个简单的对象池将在获取对象时激活物体,释放对象时取消激活物体。 - - - - - - - - - 快速创建一个对象池 - - 这个简单的对象池将在获取对象时激活物体,释放对象时取消激活物体。 - - - - - - - - - 快速创建一个对象池 - - 这个简单的对象池将在获取对象时激活物体,释放对象时取消激活物体。 - - - - - - - - - 快速创建一个对象池 - - 这个简单的对象池将在获取对象时激活物体,释放对象时取消激活物体。 - - - - - - - - - 在释放时检查对象,如果对象是刚建立的成员将会弹出报错 - - - - 提供相机的计算宏,比如计算视锥角等。 @@ -8136,6 +8048,77 @@ + + + 获取软接口反射目标,并执行相应的步骤 + + + + + + 失败返回否,比如字段和属性中都没有找到 + + + + 使用软接口名称(对象以及类上成员名称)获取字段属性的值; + + + + + 失败返回否,比如字段和属性中都没有找到 + + + + 使用软接口名称(对象以及类上成员名称)设置字段属性的值; + + + + + 失败返回否,比如字段和属性中都没有找到 + + + + 使用软接口名称(对象以及类上成员名称)获取字段属性的值 + + + + + + + + + + 使用一系列软接口名称(对象以及类上成员名称)获取多个字段属性的值 + + + + + 如果给定名称找不到字段,则返回default + + + + 使用一系列候选软接口名称设置一系列对象上的字段属性值 + + + + + + + + 在一系列对象上使用相同软接口名称获取字段属性值 + + + + + + + + 在一系列对象上使用相同软接口名称设置字段属性值 + + + + + 超驰实例化 @@ -8267,22 +8250,6 @@ - - - 获取运行时成员集合 - - - - - - - - - 获取一个对象上所有属性的匿名键值对快照 - - - - 获取一个对象上所有属性的匿名键值对快照 @@ -8290,20 +8257,6 @@ - - - 获取一个对象上所有字段的匿名键值对快照 - - - - - - - 获取一个类上所有属性的名称 - - - - 获取一个类上所有属性的名称 @@ -8311,6 +8264,13 @@ + + + 获取一个对象上所有字段的匿名键值对快照 + + + + 获取一个类上所有字段的名称 @@ -8521,377 +8481,6 @@ - - - 反射加速配置 - - - - - 获取方法的哈希值 - - - - - - - - - 获取接口的哈希值 - - - - - - - - 获取软接口反射目标,并执行相应的步骤 - - - - - - 失败返回否,比如字段和属性中都没有找到 - - - - 使用软接口名称(对象以及类上成员名称)获取字段属性的值; - - - - - 失败返回否,比如字段和属性中都没有找到 - - - - 使用软接口名称(对象以及类上成员名称)设置字段属性的值; - - - - - 失败返回否,比如字段和属性中都没有找到 - - - - 使用软接口名称(对象以及类上成员名称)获取字段属性的值 - - - - - - - - - - 使用一系列软接口名称(对象以及类上成员名称)获取多个字段属性的值 - - - - - 如果给定名称找不到字段,则返回default - - - - 使用一系列候选软接口名称设置一系列对象上的字段属性值 - - - - - - - - 在一系列对象上使用相同软接口名称获取字段属性值 - - - - - - - - 在一系列对象上使用相同软接口名称设置字段属性值 - - - - - - - - 查找符合参数条件的构造方法并创建实例 - - 目标类型 - 构造方法参数 - 找到单个构造方法时的回调 - 找到多个构造方法时的回调 - 是否找到符合条件的构造方法 - - - - 检查构造方法是否匹配参数条件 - - - - - 直接调用指定的构造方法创建实例 - - 目标类型 - 要调用的构造方法 - 构造方法参数 - 创建的实例 - - - - 查找符合条件的方法 - - 目标对象 - 方法名称 - 限定的类(null表示不限定) - 输入参数(不包含out参数) - 输出参数类型(包含返回值作为第一个元素, 为空时表示不参考) - 找到单个方法时的回调 - 找到多个方法时的回调 - 是否找到符合条件的方法 - - - - 检查方法是否匹配参数条件(out算作输出值,而ref则输入和输出都算) - - - - - 执行找到的方法 - - 目标对象 - 要执行的方法 - 输入参数 - 输出参数(将被填充) - 方法的返回值(如果有) - - - - 直接执行无参数方法 - - - - - - - - - 调用一个静态无参方法 - - - - - - - - 调用一个实例无参方法 - - - - - - - - - 调用一个有参静态方法,但不对输出类型作限制 - - - - 仅包括输入类型,out标记不算在内 - - - - - 调用一个有参静态方法 - - - - 仅包括输入类型,out标记不算在内 - - - - - 调用一个有参静态方法 - - - - 仅包括输入类型,out标记不算在内 - - - - - 调用一个有参静态方法 - - - - 仅包括输入类型,out标记不算在内 - - - - - 调用一个有参静态方法 - - - - 仅包括输入类型,out标记不算在内 - - - - - 调用一个有参静态方法 - - - - 仅包括输入类型,out标记不算在内 - - - - - 调用一个有参静态方法 - - - - 仅包括输入类型,out标记不算在内 - - - - - 调用一个有参静态方法 - - - - 仅包括输入类型,out标记不算在内 - - - - - 调用一个有参静态方法 - - - - 仅包括输入类型,out标记不算在内 - - - - - 调用一个有参静态方法 - - - - 仅包括输入类型,out标记不算在内 - - - - - 调用一个有参实例方法,但不对输出类型作限制 - - - - 仅包括输入类型,out标记不算在内 - - - - - 调用一个有参实例方法 - - - - - 仅包括输入类型,out标记不算在内 - - - - - 调用一个有参实例方法 - - - - - 仅包括输入类型,out标记不算在内 - - - - - 调用一个有参静态方法 - - - - 仅包括输入类型,out标记不算在内 - - - - - 调用一个有参静态方法 - - - - 仅包括输入类型,out标记不算在内 - - - - - 调用一个有参静态方法 - - - - 仅包括输入类型,out标记不算在内 - - - - - 调用一个有参静态方法 - - - - 仅包括输入类型,out标记不算在内 - - - - - 调用一个有参静态方法 - - - - 仅包括输入类型,out标记不算在内 - - - - - 调用一个有参静态方法 - - - - 仅包括输入类型,out标记不算在内 - - - - - 调用一个有参静态方法 - - - - 仅包括输入类型,out标记不算在内 - - - - - 调用一个有参静态方法 - - - - 仅包括输入类型,out标记不算在内 - - - - - 调用一个有参静态方法 - - - - 仅包括输入类型,out标记不算在内 - - 预制函数退化链节点 @@ -13421,7 +13010,7 @@ - 双生哈希表 + 双胞胎哈希表 @@ -14866,313 +14455,89 @@ unity委托耗时执行测试 - + - 目录树类,用于处理文本分割和管理 + 目录树型管理结构 - + - 根节点 + 路径分隔符号 - + - 脏标记,标识树是否需要维护 + 当前节点的名称,通常是路径名称 - + - 默认构造函数 + 值是无效的 - + - 将文本按指定分割符添加到目录树 - - 要添加的文本 - 分割符 - 添加后的叶节点 - - - - 在指定父节点下插入子节点 - - 父节点 - 子节点文本 - 插入位置(可选) - 插入的节点 - - - - 查找包含指定文本的节点 - - 要查找的文本 - 是否区分大小写 - 找到的节点列表 - - - - 获取指定节点的所有子节点 - - 父节点 - 子节点列表 - - - - 获取所有叶节点 - - 叶节点列表 - - - - 删除节点及其子树 - - 要删除的节点 - 是否删除成功 - - - - 清理无用节点 - - 起始节点 - - - - 维护树结构(排序、清理等) + 当前值 - + - 获取树中节点文本的数量 + 父级节点 - + - 是否为只读集合 + 子项目 - + - 添加文本到树中(使用默认分割符) - - 要添加的文本 - - - - 清空树 + 如果这个节点是自动生成的,那么可能没有给定值,所以项目为null,但实际上如果获取的话值为defualt。 - + - 检查树中是否包含指定文本 + 创建一个目录树节点 - 要检查的文本 - 是否包含 + - + - 复制到数组 + 创建一个目录树节点,并指定节点无效,这通常用于自动创建 - 目标数组 - 起始索引 + - + - 移除指定文本 + 添加子目录节点 - 要移除的文本 - 是否移除成功 + - + - 获取枚举器 + 根据路径添加新的节点 - 枚举器 + 相对路径 + + - + - 目录树节点类 + 获取当前节点的根节点 + - + - 节点文本内容 - - - - - 分割符集合,用于记录到此节点的不同分割方式数量 - - - - - 优先级,用于节点排序 - - - - - 是否为叶节点 - - - - - 初始化一个目录树节点 - - 节点文本内容 - - - - 添加子节点 - - 要添加的子节点 - - - - 移除子节点 - - 要移除的子节点 - 是否移除成功 - - - - 获取从根节点到当前节点的完整文本 - - 是否包含当前节点的文本 - 完整文本 - - - - 按照优先级排序子节点 - - - - - 插入子节点到指定位置 - - 插入位置 - 要插入的子节点 - - - - 目录树字典类,将目录节点映射到泛型对象 - - 映射的值类型 - - - - 获取目录树 - - - - - 构造函数 - - - - - 添加键值对 - - 目录节点 - 关联的值 - - - - 添加文本并关联值 - - 文本 - 分割符 - 关联的值 - 创建的叶节点 - - - - 获取或设置与指定节点关联的值 - - 目录节点 - 关联的值 - - - - 获取与指定文本路径关联的值 - - 文本路径 - 关联的值 - - - - 检查是否包含指定节点 - - 目录节点 - 是否包含 - - - - 尝试获取与指定节点关联的值 - - 目录节点 - 关联的值 - 是否获取成功 - - - - 移除指定节点及其关联的值 - - 目录节点 - 是否移除成功 - - - - 获取键值对数量 - - - - - 是否为只读集合 - - - - - 添加键值对 - - 键值对 - - - - 清空字典 - - - - - 检查是否包含指定键值对 - - 键值对 - 是否包含 - - - - 复制到数组 - - 目标数组 - 起始索引 - - - - 移除键值对 - - 键值对 - 是否移除成功 - - - - 获取枚举器 - - 枚举器 - - - - 比较类型枚举 + 获取路径下的遍历结构 + + 默认遍历成员从第一个非目录控制字符开始,。 + + ../表示上一级,./表示同级,ROOT/表示顶级,其他片段表示以当前节点往下进行查找(或创建) + 允许在遍历时遇到不存在的节点时创建,否则会产生报错 + 启用调试成员,将输出所有控制字符在遍历的成员 + 允许调试语句,将不再检查语句语法,可以完全使用路径语句进行流程遍历控制,而不会产生报错 @@ -15413,163 +14778,6 @@ 格式化性能报告 - - - 包裹器参数 - - - - - 设置包裹器参数,仅保留传入参数集中与空值不一样的字段 - - - - - 注意:此方法基于反射实现。 - - - - - TextBlockRichBuilder 静态实例集合 - - - 不论该类型的实例是否实现,静态实例总是可以获取,但为了规范具体用法,其中的成员不一定总是是有效的,如果其具体行为尚未定义,即便获取也总是返回null。 - 这里允许你重复实现文本包裹器池对象,从而覆盖原有对象类型,但注意这可能会导致无法预料的后果,实例具体类型将由编译器决定。(这种用法只是一种猜想,最好还是重写) - - - - - 包裹器对象池 - - - - - - 包裹器代理对象池 - - - - - - 包裹器代理接口 - - - - - 当前包裹器代理节点的父级 - - - - - 将当前包裹器代理节点烘焙为包裹器实例,因为包裹器实际上只有设置值的时候关心类型,所以返回值是object类型。 - - - - - - - 包裹器容器代理接口 - - - 限制从池用法,要求池对象必须被具体实现,且继承此接口。 - - - - - 包裹器代理节点的子项成员枚举器 - - - - - 包裹器代理节点的子项数量 - - - - - 包裹器代理节点索引器 - - - - - - - 添加一个代理节点为当前代理节点的子项 - - - - - - 在项目之前插入对象 - - - - - - - 包裹器类型 - - - - - 纯值构建代理 - - - - - 块语法构建代理框架 - - - - - (构建入口)创建代理 - - - - - - - - - 定义如何从池中获取自己的对象 - - - - - - 获取根节点 - - - - - - 当前是根节点 - - - - - - 从当前节点上构建一个文本包裹器 - - - - - - - - 完整释放当前的包裹器代理 - - - - - 在当前节点上构建文本包裹器,然后释放掉它 - - - - - - 清空当前代理 - - 字典树节点类 @@ -16584,16 +15792,16 @@ 额外代理的单例 - - - 组件自身单例(如果目标源并非自身,则可以使用自身引用获取) - - 额外代理的单例 + + + 组件自身单例(如果目标源并非自身,则可以使用自身引用获取) + + 具体的运行时定义实例 @@ -16982,16 +16190,6 @@ 移除此处的单例实例 - - - 移除已有的单例实例,以当前代理实例为准 - - - - - 移除当前代理实例,以首个单例实例为准 - - 手动指派一个实例到此 @@ -17133,12 +16331,23 @@ + + + 此处的矩形变换组件 + + 定义如何获取弱矩形变换组件,用于重载所有弱变换组件检查 + + + 定义如何获取弱变换组件,用于重载所有弱变换组件检查 + + + 定义如何获取此弱游戏对象, 用于重载所有弱游戏对象检查 @@ -17157,6 +16366,36 @@ + + + 定义此弱三维坐标,用于重载所有弱检查 + + + + + + 定义此弱三维旋转,用于重载所有弱检查 + + + + + + 定义此弱三维缩放,用于重载所有弱检查 + + + + + + 定义此弱界面三维坐标,用于重载所有弱检查 + + + + + + 定义此弱界面坐标,用于重载所有弱检查 + + + 如果目标为空 diff --git a/Samples~/XericUnityAnalyzer/Microsoft.CodeAnalysis.Analyzers.dll b/Samples~/XericUnityAnalyzer/Microsoft.CodeAnalysis.Analyzers.dll deleted file mode 100644 index dc57598e3b1015139a3275d37baf14ff7d1a1da7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 620672 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

    Fsz!MVGhliwi@G&fMsY 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 CTW4ng diff --git a/Samples~/XericUnityAnalyzer/XericUnityAnalyzer.dll b/Samples~/XericUnityAnalyzer/XericUnityAnalyzer.dll index 56e805dccdd2425930988abc9b3d6c8b2c6c9bc3..fec44acf84db11f9eadbac3c061b3d22c5dd3d64 100644 GIT binary patch delta 213 zcmZoz!Q8Ndc|r%v{>UQ}C-%rNzMHr*oN>-%M#g%kFQ+FrG1f6&*v!b3zExmyw8G8r zc7+}bIdrDQx!h#hT(SL!2=B8jy-o&3-vA~C28OMZYtP8DmcC|SD4o3UjI!v%6_so5 ze@XS8r7G`Kz3pKpBT$X|)|&+{y=R#MUUBT$Xo

    mq-=ei}%lYd{X*C+uoD=e7558(bU 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