From 417afb32b598da20e7b0ca2b3afc1000549205e2 Mon Sep 17 00:00:00 2001 From: Bausager Date: Fri, 29 Aug 2025 20:43:18 +0200 Subject: [PATCH] varifying vecmult() --- bin/abc_lab | Bin 26744 -> 60592 bytes include/utils/matrix.h | 2 +- obj/main.o | Bin 39216 -> 122104 bytes src/main.cpp | 11 ++++++++--- 4 files changed, 9 insertions(+), 4 deletions(-) diff --git a/bin/abc_lab b/bin/abc_lab index b3f8948c929b83deae3b72953880b44b6488ff01..2300648bf06e1f72fe27660895478dbc0cad333c 100755 GIT binary patch literal 60592 zcmeHw3wT{svHwn*mH>r@MdjH?| z|9>A_o7rn-ty!~X&6+i9_CA}h1WOjDr==PCnqYjvpwjxI6{biCP5b2rpvWjRj=Ba*duh52uT0(-<&hP3uLQym{vQ(McO{7~X zyWyNAs-A|LZuYlA(G3^edy>LyXm3ZlNp4p3X6*jhU(Bo{A8-l@~3e}b(B87hWp6|;pqAd{`JM4tN+of1;3uUb@D<+di)s#PL{ZX z`a>UlIy&^K-|AEUG@ts5ed=dpkY4;Neek#V@PEh$|Ar4f>LX8!PyM|<_0REJ3Xw&E&=n4^u5WAzHzy+TL^y1Oiz}9fqp^5wb!~GZ7Oz;ku&%Ko zRuNfQ7gIEE%4Ow={M>LjQ4?>xDqI(9Se>W|$KvtEcgpP+Tcy%U z47ed&9Z6KzplU^NN*_{>8$}Z6xUD+Yl&EcNV9xn@wT;bT$Q%p9(ZwV2wc*-^+5~Z5 z-PRUvip8578zObJiM8R@T+cBq$_t`4>9NouWIP^O8*Yect*Sb8%_QJB^j2K~t<4E5 z?KE74IbfByeqJ7^K<4XbX659&(0~xHx^b^&0kO)&dVvtndhM8&$H2- zlstQp7DhVuiVXZ!|0WrS;6B~Rer4E|r5aX9vjbo`shRBD}u|82q=)&8OM zb88PbQ14s7Df$HC>q0LA;@H|+L|TU$|1G$Ozjiyeqe;etQf`@6dnoOWkDKi$8LdJi zehY@bfzn~dZo#d6;X(A5Y5ZE3nSO||Ps+b~a1FNF4C8Gne~IZ6j1Q%pICTp`nsnoE z*?@JtrQ@6x$55|^F(iIQ;{$@v>}E0~5Gdt6cd0V%wR(>wOrH%;`?kLNZFtR#XahF9 zgs9vkX~Ta?GXWg3;k8dB@~{m*%~n6FTNTJnQkRVqmHarZsb&w+(OK7q{8)VrtB7yA40p#(#$mf1C~9 zW5fT44gbmQCmQ&7H1O9cCwvgva4<8}G4T&yHH^@vo<#acUueUw%$>}3WKKHJBd28G z@01gZ460v4l)-%?BO|N2xJ-^>@I|Xk4r1^bt4xkz@FA;A4s-Bst4t1JaEnzY$1r%k zRVIfp7`MvgSO-^HWpWIIWmcIS!r%g{OpahM-zt*>7(B@;lS3Xn+A5PH7)-ayFLsrexyp+j<-9kG+h4dM)V?pYVgFERMKG@? z@8_Y;bDxD)N2V5_>bt9QrkuDDMHp!3xe;JOof9u3FmE_96{dRv-NSSb9T}K%;(DsL zQy}W+as4@`5jgduQ2S8m>9@`cJv}@jl(swc!bgc?!Qjo!ib3YcfSNbmp6q-5xu;-0 zjh2~}p$+G5K}{pn{-?y`P{+BuQAi$&iBCphExRZF6Mdvzj<#n1)PC?P5b358?aD*f z9qb2-_MgrIHq`z|03aIb$T(#NGY%&6dP1F>a+%nhT!poSVyP4_p<>6>-6f2rN~=Os z8lHKQR#>RLH@OB&%hviKRcw;hX{Z+J40ch?zcJ(BcDf%_T$>bEs?A&=UncA`s>?pQe*iwir1mBcMK3== zN5qmvqF7OjdL`eRJ%3RZOJz_|#fgOg<4P3U`$HX-$!KWiv8>d@mk%UJ{h{`qn*DJ$ z_J=#!e+UK#4l(PSs{fFsGbiRvR*S2niODBEq)F{fX8aRI@gNmCE+78+PCfgf_G^Yi z?JYy0j^NPcDcCL-sv|gT!)!PhK=UM;CPVGPVL-6zP4+<7U0t>=HXO|2ZiId{#se~Y zYBE50dk1|N^!V@4zn#k8Q_gkp(xb__0MqdA$T8M9n#SON&lq~}rSo)F(v)I8*wCM% zrGlbU>vpZM0njXVb*cI6P3}e`-|=^pW-aly)J1P_n3nc|Y{qt?L&fnPB5nu{rvX14Iy*QJ|2-LqkEQO0&%fnH zw1DLE$oX_kox(+yZuZ|(#yW<+9|sTL-kkb=`hy9f9pArCU7;xtVg@`^|9uupEy}-O z<%79PKcp7c{EJ+5yqZ4&2MSa3OP!i8$8xTM>UTi(+c9(7Nd4XJ{iGuZdT+9xy6p}2 z@N6t+?+xq(@>0FQJu*j~mEDTMdc~2O=4cPi(H_jvw)pRHw}YL#n#Dq5N*e)K_5TB` zHUxX9b`NTAkKb`1-*ly_&cjs4?V%?oH@r{i-sCR`!g}Dn)s~o;m|V>`@}r~JMtl?G z0D~9Vs;B;SBNcfJ*=X)L)5;MKW3zz4bJcQkQjU4cVqcnC^Fil4m|k_vn)54Y&T@Gn zwzoiSm3uJWz9&ijB>zLScLKh|a3^ScsQ5D~&f7WVww{eWiL;-g5H$Jx-$-ZJ)FuWO zQKQ|V_Scek5VB+91Rno0pdEFcNxR}bRxUG4F#o5)A7(jq9T@PYFMfony}<#JYViB` z0}Dw~;Xs076B~BresTVCk6jm@ZFg{lcyoge;@vKz=8>g=O?1B=4H zqbBfgn?#o3g_n zy#opK&UHEHr~~aPV$Eb41L-O$i>5bu(qDOPVGO;=0MR$VZ07}s)r$R;^zh3fvxkeQ z2ig9()f+gcatpHOmd(=Q+g6JcsRf&uWg-6$*x0qSKiR$J=r#uZv|^-o%NoUdwy3Il zCnX!4VJ-<;2c1)|I?vSUKZkhM24F+RAU)H9x~NKpRpk{`g`L^pZxOtr3XIeAXZh3$ zGA>6JA=C~#3ML;XcA@v*4z<4!YX60+e!A43MfG{kceZ?n>wwAEh^P!7V zaR;%37cX~lBC_dI*pnhbE_T*$+S%hIe>*w$jbEVpTyY|hgNLRLCdMp#lV8QYChJKC z^Hq!nrD)vR?WZvf`;_*ARwX=T*QQ zSmx^CKGHeH$u58g`3}~wyNCOU8Ed22>f!yjfYjTDZE7!Jmc7aAh>^8%`~z{aW8?TO z)w4E^9Yj}lbQE{OLT{l?2C;te9Pnc($Tx!NO&)~bvi1&b=kVjMkb1T_0fb=a zd+C5U`WwOhzzI6mVx{#a)3L)*tOZMKW^qS}p?Z@;ETCR#qpZol`-~)Y%;)i-Om9V_ zD#YrA({Jg4@_ImF^W*8LjY6GlXYz*Y^FQ;vUYk!Aot4L=XZrwiJbUltf zYtZLb^x2gX7*}pZ?E0YC;ZEY+S^1zX{(X;8RHHX}@i5{@$gvgDc1aVpLQ&)hm<{7i zYSN*yESu0otvhrNzsE(|4=>+=Dzq<>8g>BE0HK23Wbt(JraGc7lG(P0!&L{#@*HUe zht)aGqEq2Q?7rC^db0ImADsz>Q$DO6o7{$L28_fa2-8o({EQ=S^PqzH@jV|lQ9#V? zI%pnCGo8H#Fa-$etvuH-@?2!5w25~jhEc9yvr^s=R6J}Ya3&_B2S!G$)j_uD;+3SQ zXYN)xj#lh`ZP68_;%FNPwf}Sm#f~Z$7izyP8znn?O38I>;yRsEkC}(07`z{v^(IHi zleBLtqUKTqNA&hhAv*#ZZdYj}se*>j(m2~yHc4mDHc={2^uTu4zNyO2=Qi#}>FIdd z8QM3kP;>_En+jEl#3$iSXMcGc^XQ!XYlsX5-Ntp(Ucj9i^ldd zrTR1@dgx95gpDCr3*DjA+WtSpzD6mqkfhnbyb*PpypBlW)yTYPEZn5yky0K9^E%$* zHQ418Y8QJ@9I;HHJ~xU`Hbx#owWaWSg=ffHs6J&{BrRtXHw>j=A3oPM$Qi`1<2JUn zb~v(*+tiqFfNu|O!&>OZT)^+JS9$@*Zp@d`kj#BYSypJKYELPSj!wmj1Ln0H&g$yQ zz_P6NtVAqwV2VhQoyY!+<`zX|U)Z;0GD@?^Osw<#l#P^09ef9W)Na+AeE)Tt#GevR zqvdS0tQwsqIZhlfTn@DBfL%Fj+*QriMdsAgAgapUqpre-2{{ z8-mzehmsag@54ikK992;*K_Ox$6+}-J#rRvOgZ(-2o1JD1Trg_ z7azU=i|Fh(W#jjF`iTI4*HMXzIDoa&;V?+{*aO%@3-<^-?gpKva1Y=PKuiP2QGmaH zir#ie?oE!2;FLaJIa=9_euWns;B89U|D60SZuuany6Y^>W|`<9xQM2sxcz6rjqfE6 z2Scj(KMP9)G#Q4L8QnTtsQNCXri5itMq`B(VP0S$AAlCfz$ zn1#^O1DK3Gw%U#u4#Vt6zbr!<93bU8IWa*?TA|jgl zf+c4`Oc*r*l-Qt9WJqNpGaN$dgwrKbSGBR~VlpU*$g*csoUsn93t2VrU{yM@4xB>4 z)KEUY3yk``;&gNE(WJ8;{}ardYbqB@q#sM9&mKNdq|>R=Mt`6^l4g?2%;Z`nQ6F_H zeAf`F6EkOds4D6TWeSSSyy%7dC@3;lDx#u*=_T4Z?S}A5J7zP)`uiU+`?gq0X2h;I zbJ{H4p7UnURgtxa(ET0^9}B&5hg}66L84!9ap1Gj_P{CR-yx&0&5o}&&fewT~TWG6CAou)>wqfW6L(x77U{z{a!R2gd~ zeze9EP(7^7<|8#`Ixq(^P(myFGsTI?7g!4SiHc?*HO|FkSTXK4TK;VD&KP$+7+Ui} z`phO~&?iX@*qgkUoh&)K0V>|XMX2)?Ys+x0YkQK5WBZwk7n?ko&}Om}|AIp*F`#_l zC2-PRlBuvnN-?l@96#v@$~oSaA#fQcu@>M33cFpJ=A^wqs%LCpN(+DobrxEy8Ra3* z|GvsC}dxdf4} zBjwZ6s-c$Oxt~^~244ns_#d^7z?MMH0Cmly zmRkp@HkfkOqTk4X3#QF!hr_?K+aV@>TxYFk9If1EEgeN%cW{7gw*9Bs6ymi%lEvV* zOaQyT=;sp`*Xf-4otd^1*Xbm*9Gp5faSc9k6%r$jKm=kQ%2Y?a$zjznK=nFrQ(%+o zo{iyTo@ae>Q;gNC4a(VHtmqtKcgR}-5*}|N@yYP>DDO)-LkY_5p#fQ*YL-TKN-P!W zwo91WS)&HQ0POZ*hX=1J=B^H2a(-*St&Nev^`VY$sauJhw!G$yoYs?E|4EEgW9@)$XeJ&MAC6Fs7*O0Y!qG&qg(sUkT7xi@IgbTm?0>`nfd4JsERiGPPWI3LD)9raeDA3Xf)+&cjV&r4msyfK^n*qp_ zjr608!AbZ-MniU%^FK7ZoJ}!WF2n#sJS}6g4t678*alw&h{GL+=X`SD?f!ar7InDO zn%wed)}$H~HhM74SkABVLO z{82;OnLLJu#)mtqCodLFOzuS$8u_sxC!eCib-Msqco;${D2>8i^HLaSZ?9!PSvNy(Ahk@Q?6gaEA=*Fh@o<4oS)?3ewk87 z^1!~C9fNwcN*~yJlR?^w%;c1~O4ggw=%thuY}ctGW>1H{cJf9FJ5LF+;g3*-78P1* z{UbGme^gdTC#LrikSi5Gn2Q$WbirX5WkL?+&09SN*{E7 z69-PC!@D;;I!VDTz=kj5=}ne_0X?ABL$5-5)RgmHet?gGw5%^_|AQO^cX39_vWE_} zIizaJ;uFz)M5v_@ijCt0)(a&@dXtmDckp_8XHd&xSlg;K>uSricuy4GI_KG$&1R_N z>zw-LXTeZ)_B7>a%p_+iRhy~ONt}(=*-h1zY=gX{PvG?4rW(bVftmf}+K~P*Ixw)U zt)Ob=IY_l)W0M7<><1=CZ+~ECEJS@wsyS>h`{{r%Q<+f79!l;D^v^1Rs3nxe1Lkyq zPRVMaT1-Bw>LVf5g2xU%zvUF6yVZHr%G@nz%{dl|ROvWp`psK^ zMg8<9Uj@{=$Iy$w=`>)S9s(+z$0DkHoVbCsXG2y>n}r5OQg)rQf2pQV#Zzf`Zo9Ob zHyGYr^hU#$^f-LKBX9UCoC%;{r3Xqf%6^Moh9A<4jOlA-tbF|?oB=hh)$eLDu`%qHLk1-4k$K^?NkFU!r+Z@YWua$Vnd!20iSc+b{1!>pmi%PPNB+(`+SHx@`o1$D!7GYT4zI86xLG zY|iTOJWjd9(+= zZBnlhPBW<|vKyS3{KwA`P27$@EF%S-82uziPwMF%O_tS}%D1u+e>=l4_`soj)>l!q z8Q6L*!oX-vJzatyX(9D`4Iww|3h=A4mhaHJKkZhW?(R*}Z-}f|!f6b&luU_s2R}+v zFWAy@qMS0OSM94efrqtC>Zg%aXuTE6bG*~TdBe-MqA}*BH~BgpMd(?0XYhNNjcw5L zc9eI3POt}X2jCvS9>6|4{lSt~ZI{bIj+)Xkz!v{n@(dadV|tV4)Ao(p5TZAECklAz z$iQDMWbD$ZEgo?gN}v!LQ(h&4>?50b2a z)qvJ)q<8_J;H-cbwQcdSIl31gxe)6)$tqq(srl)uUe`JzUXalq9;SGe#V)TRBijuR zWqDrWV~?2}IuI8=cU&XsBLzH1# zz?_h(TRO zJ8>Wi^gRirXeGso>gPx^p?~#C+b}|@VdL5p*^bTAD_&z`?Q!7#`JZ74keQogXeX`D zX60TTJFPBNL9ZZlV%x{OwqFPV4XJsUj9)OJD2|V(=Fi}e@=oVLSU;_4Oy*tq&0A`O zGLDs%OlGo;;3(O$zstS@ zxMS4Rb&apg*aqXZtYL$_$xo5qtVuY8i>|1ezIv7tRa-ManHt`G*&Ce7SwQ*?3i9NX z$H`Jeeq9DdQoOtpMhSJ)!xI~q)@!Uif)N$T{=wZ?&2=YD zR&VlT@}hw6<5`2HU9Y7t`rAJ&j|x=e{%aI%>fDW@wei2o_GjPtw^JnI;Q_`{*-pnG zXsX+wxjb96u8qpn<;<$zznh8fsx@CT@OKuQM*CL_WH=hd9Ih#v(m`Q(h^J zK$6w_eDYZIcHjgGozhy410KiQQdqLkf0Nux%aZunpW(TJCii06aLtg>LMh&1b^$me zn(wATuF3TD4@;WX0!L*{^h|}8lf9Z(R0h{)xgPh5R809dk(%*&jy3P=z>8^!mUlXf zi!KL#Cab|QDPCSkEpv9h4wv4B=6FxQ7A3N~A|1e;tG8MqH9LCS5Ty&pxM>*KXpIR( zRH7zIy-U0Pr+N(y&=Q~*uVoFLhwuy@%OSo#_351gEslhgw3X7_(DrHHRNQmSQ|Qq4 zKJ;gKGd(_QG^6;p3_K09g*5@50do-^g`(x(PG+LrzxB~0+Z6wnGCdxO>rEbFcEviQ z?-$UIuW#*fX)A@>$6S-s+1^b9cbrPThD6YTX=(``BWt5y9K}++v*T>)KC$R|l)a^d zM$loOh_PqxG|!o1tFv-GUK$ASEcZ3f!yAok!8Ui| z@>etzF?)x(U%peGYSMSI%r9es-6z*48u&y5pJ?F!V-3)EVC`2+qPDK?tfi4eytXZ; zHCA2UQkMvv9$18L7vlrQjSbC#Xk)B7(9oC&tg1~IUo>U~jLVJ7XBnuQXpEnAR(NR` zUqGf$72}J-&9QjGPFV%!8l7hQuMQ01=lSYN`}Bmf>D%x021nO}BO}{z-?M#Wqz|wU zFbO#HLxe4W|MSquNC2ps8$VEUtI4|o#b3cv+`>j75+b^~4y*aLVs-~eDBUDE@1Awmp z;*-3_O^D5B0Pdm_0pNRpHGq>4=-mWZ1-K3HO29pUw*n>stDhVhnT)qoXFN4BG7IoB zz!JbK0qX#t0Nf1t9N_(cZvpNF%*G+?Am9$1X|wP)?LNR)umfWv^-0A|y7Q~(PB9|Eibd=!t4*8!%#Ffwu{U6hxA>i);kH{%xJ{tRC zKlBY)_!{~Jya2EbFafv~@KL}WfUg4f10Ie<(Jt*Xl-mKA3)l}>1~?3O@jl3nu<35Va{%83Tmd-$kB}R%4X_*VX22f6eSrG`Z{Lsk z!q2f^2b=-;Az%ow{7SRa5F0uBL20JHG%+kJq!fF*dNtrYNK zzy#nQ0B;4Hmc)DmUXS;*2LQJL;#2a*?*RjVr@aAv1FisE0oV$-9`FXhZoqATJ%A&C z1As>zKzn>#_bY%W1O5djW?4hXIepN1n^xhF<|}2CM+QA20#@M)6VVUgEWqypmH_qx)&af&xEZi&7~=-K60i^OyMRN0 z^b5(X0Q@VSpyUEZ080V405$<`1MC8P9B@0}0l+@M<`2*wkS>@zUujpD8EI`UCjC_u2EII@p0b|9#+4wiG4Sk}Xab(uwBeO4y7iK%{#5& zMgM z_cPG3#4Y*-7JVi!J)BG3X^@(Cfya zZx*_reD{O?_$c!29fN*w4Ekh*M5FPaH3q$840@f=Pq*tgYU!8IX;+t)uq7Vy&HB0c z^t`r5vOD_sL)Z=dH!?E*2*;;wB(!0|gg4We5!uO0=x06jl!tq>PL1j(08}0RZ2|ov zz>EiNe9}W)iRyIWUk~bBMs>bwuXB;v&pF6jzlS=NsAKk%USiUhgFfqlk&(0Q^th6P zad)D!OGD(Nmp``&X%Lj9@KfC_&jf` z6WlN%ebAC;a)x1Seb8UtS)e}*`f1=}_7kz%mw^7{DD*ne_xR9HCfP7=FM>|r$jz8z zlk@z|6EFr_gsrn)IX1g5CmK-mEo&Y`HPOr7-?}B~<=m?RlaV)mz$Kp+g zR?y4r^mOG&sQ=lZZv)-W&s2bZ2k58T+pkdk1HjR{YxjWuyq!*S@w6qwR@AxhA?&mE zI_W>*3M9i0(BB2!Z;bt*Px_Jn7>7ZB5AFTNn2mGB47B$fBYpjH8t8t$vP$S)wi1B+ zZJ?iw_T89s)0Uuv30u<5G2V$f-8h?g>5+8s1nBpHj;++>7G)kgla3@yWnhXul61qMr;poss+&_4(Iem9SoEt}bkIO_{WGL9Q5-|`Yg~} zL7!`pbvrWHJ>xUax?7e1JDmAKXl+ItB)nOOz6zmJaNOM z^!KSZ(rMA5kQL`puRSdQ`U=pKpi}H(%1ZY4ZA;#bsMCbAs^40^2lVSf_Zu($4(bNb z{nqM!(Az+#eb1C3y_yAJ`#%h4N6>?I`Z`O#lR8G6+t+~pL(u(na1-czK=&GB06e#W z{y6BD*!j~KZ1L@0)OibazF@D@VvX@2=#zU!M$Wa<6N(-Hj_mL>&~L&y=L5Kt9t>*3+0ngkLG4S`t1LOw{F?~k)wGQ^wUt+?9Ue0oDBL)pwG9{ zY2s0)_KQG&5A@I3>6csdDCi%8eukaC%A#)s{qVj1I=ct->7bX`+uLk&7wAhtpJS)j zS^W2dz7ljV+v4#ALdKu`Wtq$n9MbwwOPJ^BAnI&Jou&3Vwlz8#M)?@%ezrRc^ghtN^cVoo640Lk z-EWOjohHp0Mu;=~vrE@?(9&|suTMl|Y=zjakI?yix-AkWjmv@3*4El9;8PnCm zBl;7d-v|1Y4!T;n0pMN*{aw&k+v$9kNWX+eNj&f$TQmy$y!UUS2Wa~TeV(01lhP6S zs~u!_ps&W>l5r*+lJ-}{of9@^Y?wHqGL0(}uR8F$;{|^|u^IGk(EaT1e$XEU-Omr~ z1$`gre)Dk<^kLAw?1toSf29aD?sO0R1G;TX1joPqw()8s{R^Y4+hkGDJa- zf$pd0ji9%VLca&}8$tJqTZ#WJ(C-1=EB*?Az901aKp)MoWFCjT!bb+;F$468FOQ7u z#Jxigk0?FR+T8_vx(9W3;6CHR3}?OjEPc_loY}t_8M({OEB$t^K;xljJU;?G;-ISo z4bkb@&%2;wYOOw0+L8CPmp~r`-AmsAG9#X^8|X7Y_Z!1j&_4tE`S$j(yS2~~^}hr3MWFln@qW#$sKtIPdh6WkKI?x{&rTv}4|0a9;^skt9 z@&xFa|Kq>*Uj_Y8(EW7qA?VXU_nU*`@oX*&bT1vz_|5@6eH8x7L8s3L`N_Wy^e=<{ zS^M}dA{UUQBzBT+_CWr{$h>q5GrcHb-&3HNO z^IW7hr>6x<(WYy{#2-$W@U4j#y?#jAj!9^9{h{YQeW>y0Lsj!@m;=?%OPkR}vivyx zAL)4O;f_f-j^B64jcIoumiDc~fWK|>#5*P%J(E>C>G!COX%q3b^smw;;y*0hoqi_w zo_W^9`Nn0ahil}U|B*JOX5v+8UrRgen`y=ms0SrAlRx?Mi3UE=z$Y5`L<65_;1dme zqJd8|@QDUk11pf{p(`Lzl~VueSd#wx!*uELCRh3EQpO_{bs@(}7alS2HRFp4;%LEF z@=gWunjT;D%!Dq4{(KDyoz4?SFX&r`fm~--znu4 z0-FS`7uY4RTi|wqJp%g#4hS3)NO^g>vIJ5do~~ShMFJJ}U;mrg?QDDg!i8rAW>l_h zX-KpL@(OYaa&k|f+rq{CYx8I4dGf#BWiy%_j3WM)dgqw0#88kLMc&d}>nQIVU(4fU)2hsNK; z^*?3kb*=H=!;P2x+qwSHM&=4tQ}_D|!C&pde0@Tb8c5q@ZzfbU6T>ZW*czXYu zuG17S{x0}eIB|#Eso>9py^=gNRSKca?iRr}NQak5{TBuQ!Nm%}xklUukQOCA(Pauh zN9xn}c?kd7VujHBdj!8YPvQC57jAziczSP}u5%PH{x10Zg$i+z;MZUSA^yE5D}?6% z1Hmt#g@fxx1@K?1RP`s7Dg-}+!0o58@erSR!dQ=szSfszeA>wF76t+?lKRD>7~Su! zfGZ(WEzYw2!7}SC5TMF5f^;!QiT__8b23& z(lx(FVs|3`@kOfsk7QgS!Jp=`s}+LZH(yocXZpCk^>dhe=*Q?51_JJs`ge&UR}21k zf`6e%A@sbT1P4m;%)M0MwLa;;!g&<@gRw&4VFr9vOZ}37D(m|90c1fh zo+8A53jQ6}cu&H9?Zu}Ac#`u0jGL~x3K$8&_lSO`3%*zIN8~Dm=J`(_{?icP5dW^v zs`}N!r$F$_$`qnS@bq7vJxT8E;A>LH2}x|3EsF;TdmpeO1T)x9|w>d07rT z_4@@0%qpc(o8VW-`qJy-yMo_!hN`INu}|l*RQ4Thw@YwyRQjil%x*h(ygv;*>0yD`n_j2% z9}FUVkp%2|9`6+Vlcy*?8c*+{Q2kFWQFv`*`vrfu$Uj56KRQd*-!JO|)%dzp@Nw7r z+AR1!nJ=xkUkW~>NVS*c#PK4@^H&MDcPTQ*jVz~YTqQ>-dA11S#Zv!X!CyU7AwDno z-GX0Sq!2O;xQPd4=E~zd%)-BlVvY{3Ow{*4sOR z|FA+;+#&VP!}=lq?s>cn`022RtZr2iZkDfBsegqGs8sM@6a3qvnCk@pnBXUTQ6a<) z8Cf_uQNO$M75)oSf2rW_mwiyo!dNHxJ>oYo9KN;#ukQuLppWqBM;ZE@scA0@pQPAl zs}M#6|Kk#c(ECe01n}a2Gw>vT#p$a4{le$_f^QW*X9)gj!6(WULfgZUuw&xm_RpUe z{3@}Bi14Wb-b&4PEwQCkJS1CXxw6)>I={BH3B=C}m^L6xeg zYy5*oqt4-`9(w zY5a1jAC+-wJGox)_l1-o^qw7EcLA?$RbkZMKlW1!9gh_O@73?+QvaJps{ULB zjPDD6k?2j2>si5{3`p1W3K(w+{toeD4T8_cM36i?WJ2-U5^XiJ&y;0r+6&8 zo2!|BhNZsyJpO3}R3y*Jd8#VC>rU4i!5_O!m9;!K3f}E+?-KlrEOR3Y@d|4Hz7 ziyzkOh+ZC{eqUdp>T7#A0~H8=Z9w6*-@Xj^qmTzH>Q;FAPkGVRB=z0#)jfiDpKJCA ze%ghqy|$|K56%y;517W|jRG2f)f#t#HvDE6$^Zx$RQ$$yg=p!VnU1z%UB7>N3e zO9UTXtnhkY*aAG|C5&!`*MIMl`u{2RbDa=g5&XM=bkT3M=$eZFI175K`i?5=zh?ta zau!NldWjI41pg)RKVrVd1A^ZphM?zbui#I~R}8cs{vmjGyfkZu>i3J%;VkL5TJR6K z?EHGcw+2;3ZRZaO-n}kf0AA0jux9Xv)c>RKk?A+G;J8Q+?)~>v!7q}D`id}HBY3wz zxgB`Yb5XawSA07{>W5@q+$7{-!JjF9`&_{v2ZQH%5yR1AxmfTatQ)$}oUc~FKYXz& zBdq1?8-l+;6o%pR)h~E={BStdr|wItGB^`>k|%$$!pbxo7YY6*nMW)uzP=*(a*-z@ z_@@OwZIMD~d&`CaF#qEeUhj7Wg5N$(;m;O6_;L@|Uo8XG_7D^N7C~U!;_GXIzgprw zy+6JMyw`ZsApptqti(~;Kj#APRey;OevRe`kqmugCj!;JxI(PwKn(&1VJgj$;k12hz{{62)Kps~q413g!5F zfz+Q@q0l>pdW+!8<|~Aj?I*zNdpn~Sr9OSXgDzcXVy=?szeOI6pDy_L`Ktbv3K+$L zzg_s03BFD6nIfm2ueSuhJYQAR{AZy8>0y$rUtK>U_!kzc`g4W0gLP8hokzM4c-@!1evj0@M&v(6h(8BDV6Q0mf0X*}^96n6gyeVU zo#qSvRk4TF!lzO21)_hg&nE@%KIi^Z@Fy%)4D?uXu@I==r)7akH%1ir=|;9Oe5b09 zV=rGfNc}U#FKPRENbqs-^Eys@PVkvhAIm{q<<;>-UQVMC4o6njh7*z11`y4OmQ|~A zs*PwY9$Q`8oQTE4iTZGLU1LM688xGg;nj7GDFIYth73!Y9*e6OO9&k=llw>ZT?md|7#- zByV0*ZLB(WRc&)DT#awECE_jB36PeRCki25ED@=#E65FlO(M3MWN!>t*F+#_ZF9J# zp}BT-Lo8Z+Wia@0o78{&CTpolcyZbMrNMA;*`jb5rSq3nhJztNh8C3>;YF7&o4>Sp zp%Fg6OTrf}UR)lm2v^KsP!dE78rWR*!MWmPbLf+G&2um2@6Q!SgTeAhae00? z7|fd!E)TarCGi-(Mi)uMg00llS$|o1ZkQSc7v?MScsMW08-Lw7)pfB*T-VRb4=X{# zDV}qZbz58Bnc;9lW4s;> zi5|gXDK1?SwT2=6Vmd0q<%J|vd7@x;7)DAfpf*y6p+}WOwX47?)>a*B!pbNvjba{^ zGAnY!Xj~A64U|>zz{(S|s~elv7XM3>JS9;+2I!QC*h7kcu>(gBWf%p- zrnLyUN%_Tuf|XndtIwMokMV@WW2@kc8meQ(72)9Q#M-79Ca1uA8t1Hp(`wKrs27gt zI#O=Vzco?ywZ)~bg+dF0#>JGj;U;Dc`DUvL&7|` zn?-|IL}Dqk$^49PEE-8f?9=GMdc4DgXGrPNgWYUeaeAVC*Sp;fsxN&OV-9T|G-x?E zZzh;;abvaE<-#;j?ZYf1(N1J;xFS~H)EJM%*M?gobuF>Na5+|fWOdB)P5IcJQkPUQ zJC(cwO@q6^GWJjfv`@CE7V6w^Ion2g;>=Zz@v9>7sK+J|ys#o%=DnbZm0D5CL|h9d zFJ(Ln^NTMiTSA*iDU4uI6IfGA=SCAXl{zjj54|tNCLOC@6RwLj1nWzeRI@3ObJhD9 z`Ms20NE5U+X$Q3FqfEQP0`kt0HL+ALYOVn|

AW=)kR%M`kYD=s0{5Ewthb!_A3k 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 HipKu|5#ocn literal 26744 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Ð%InarDj4S@6U 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 -#include +//#include #include "./utils/vector.h" diff --git a/obj/main.o b/obj/main.o index c3f0dab3fa0817fcceaeb67f7302ef2165fca2d1..64c353800a9c75e19ea74bbad7c762b18b5734cb 100644 GIT binary patch literal 122104 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 d-KK&1lj8}t{`R9}7ybIfbub!Mh&}z{D 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 q?hCFQ9*C^ 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 A(f|Me diff --git a/src/main.cpp b/src/main.cpp index dd0c4b5..d6a6d7d 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -9,13 +9,18 @@ int main(int argc, char const *argv[]) { utils::Vd vect1, vect2; - vect1.linspace(1, 3.14159, 11); + //vect1.linspace(1, 3.14159, 3); + vect1.fill(3, 1); vect1.print(); //std::cout << vect[1] << std::endl; - /* + utils::Md matr1, matr2, matr3; - matr1.fill_RNG(3,3); + matr1.fill(4,4, 1); + matr1.print(); + vect2 = matr1.vecmult(vect1); + vect2.print(); + /* matr2 = matr1.inverse("Gauss-Jordan"); matr3 = matr1.matmult(matr2); //