From adf52e857b98502bb2f489cc10ea739889d9c155 Mon Sep 17 00:00:00 2001 From: Vitor Hideyoshi Date: Wed, 18 Nov 2020 09:54:31 -0300 Subject: [PATCH 1/6] write function changed --- yoshi-seals1.3.3/Seals/write/write.py | 36 ++++++++++++++++++++------- 1 file changed, 27 insertions(+), 9 deletions(-) diff --git a/yoshi-seals1.3.3/Seals/write/write.py b/yoshi-seals1.3.3/Seals/write/write.py index b9bd1e9..a2b9461 100644 --- a/yoshi-seals1.3.3/Seals/write/write.py +++ b/yoshi-seals1.3.3/Seals/write/write.py @@ -18,16 +18,34 @@ # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import csv +import numpy as np +import pandas as pd -def numpy(array, path): +class numpy: - with open(path, mode='w') as sistema_linear: + def __init__(self): + pass + def csv(self, array, path): - solution_writer = csv.writer(sistema_linear, delimiter=',', quotechar='"', quoting=csv.QUOTE_MINIMAL) - solution_writer.writerows(array) - - return array + with open(path, mode='w') as sistema_linear: -def pandas(df, path): - - df.to_csv(path) \ No newline at end of file + solution_writer = csv.writer(sistema_linear, delimiter=',', quotechar='"', quoting=csv.QUOTE_MINIMAL) + solution_writer.writerows(array) + + def txt(self, array, path): + + np.savetxt(path, array, fmt='%8f', delimiter=' ', \ + newline='\n', header='', footer='', comments='# ', encoding=None) + +class pandas: + + def __init__(self): + pass + def csv(self, df, path): + + df.to_csv(path) + + def txt(self, df, path): + + np.savetxt(path, df.values, fmt='%8f', delimiter=' ', \ + newline='\n', header='', footer='', comments='# ', encoding=None) \ No newline at end of file From 5c2c551c2711331b13df9d3d3d8494362747947f Mon Sep 17 00:00:00 2001 From: Vitor Hideyoshi Date: Wed, 18 Nov 2020 11:39:26 -0300 Subject: [PATCH 2/6] changes on scan --- .../scan/__pycache__/__init__.cpython-38.pyc | Bin 0 -> 266 bytes .../Seals/scan/__pycache__/scan.cpython-38.pyc | Bin 0 -> 587 bytes yoshi-seals1.3.3/Seals/scan/scan.py | 10 ++-------- yoshi-seals1.3.3/Seals/write/__init__.py | 7 +++++-- .../write/__pycache__/__init__.cpython-38.pyc | Bin 0 -> 284 bytes .../Seals/write/__pycache__/write.cpython-38.pyc | Bin 0 -> 1558 bytes yoshi-seals1.3.3/Seals/write/write.py | 2 +- 7 files changed, 8 insertions(+), 11 deletions(-) create mode 100644 yoshi-seals1.3.3/Seals/scan/__pycache__/__init__.cpython-38.pyc create mode 100644 yoshi-seals1.3.3/Seals/scan/__pycache__/scan.cpython-38.pyc create mode 100644 yoshi-seals1.3.3/Seals/write/__pycache__/__init__.cpython-38.pyc create mode 100644 yoshi-seals1.3.3/Seals/write/__pycache__/write.cpython-38.pyc diff --git a/yoshi-seals1.3.3/Seals/scan/__pycache__/__init__.cpython-38.pyc b/yoshi-seals1.3.3/Seals/scan/__pycache__/__init__.cpython-38.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e2911f9451ac79e9f4e4419d90bdc25fbd5d4a8f GIT binary patch literal 266 zcmYk0ziI<9490EWC4|y!9s2?|2K1~SgB!iN0=vH$JqYSx<%`BvhPGn$7eUiLJT*{B(CVI_{ReFkGEI;OW&eD4u z&ipuCObq-js^T>8la>y4hvId%9A`a9&T~ja|B?(OO|rCi`0W52=Lx` z%3uUO4A2w6=PV4qFq>y!WhX-kBL<%O8mITB|rOKrL&V7xB#03nR5I zszp3ows~E}cQtgSvhiHW(oT|2D^p}sS!P|?+1Qm$EZtp3SJBm9T5K~}If$BNKd3t0 zERTr@y~;$uePIIhGSX{nL7+9FAi#DFC|Aw^Tvw5J3Vd4;}G6nQ19 z6SS)@g6A!nYnN@9P&7d}Dbk^>=lUh;QN`jMF%o9#LQjKygV>Z=p&!i#ZxtJ~RFhAG zX2<9+QCO?pg&n7H@QyusnT<;9q=ZSkL$)gF^P@25Y;t1D+b)&eZMX0Ce`jn7XPj%N YN6x!2%~yAJF}lCO;8fDrWKA3L3%;I8O8@`> literal 0 HcmV?d00001 diff --git a/yoshi-seals1.3.3/Seals/write/__pycache__/write.cpython-38.pyc b/yoshi-seals1.3.3/Seals/write/__pycache__/write.cpython-38.pyc new file mode 100644 index 0000000000000000000000000000000000000000..995f60f6056e0fc90204d0b1d7fa9443885f865f GIT binary patch literal 1558 zcma)6OK%)S5bo}I?5>H|0dnAVFo_XNlz2fAQiKpPvJi@dmjn|9&1E#2?#+%hk4^WC z&8{{la<%vi;lRN^fHVK2ublV`zQ9*KUc8Ykphs2RUENh(kFVzO=H>>&`1QlzlHWtd z{-DkJ@UYnfnfqXpNnWtHn|UnU-i!UOnH17{!KC+-h>?46qBZ^CUlHQTQjc**GJ< zJ_I&2^rM?ZSww%o~4vp2IHPJrE_+XM9vNJwD z1GBzS#YB_TvGd7jT9;}x&83>xW}1&4>iVfp%QCN?jvmgNXKZy{0Sxa@!@0|0Sk!J@|6?q9Sbv$_1){V-hsg8TJMDS5y{d%S<>t*KHhAtc( zZ$5hb?e||L2M@*%4!-;*9(3aR#6*DxV3-Y3t<$;nXK6EyhbA|TD$}IMD+SwIrY_nh zudAffyR3umL0NBsy$3R6iix4P!54!rM{wem^iZl^1G)5UW6`i9z7$JNcpVU}b zbig|R^u`PCgZq4GiEBW_ z+n6+UyA6-iqE$w}Pm;@Oxg1ahKL%YOW4Mltl~V)_O?|PZd|B#k9DGC;sA*iOeN8fS iq{9eB*f~SeSj^;AW^DiS4sBoDz%4_i>2rKyc>Qk!ia84a literal 0 HcmV?d00001 diff --git a/yoshi-seals1.3.3/Seals/write/write.py b/yoshi-seals1.3.3/Seals/write/write.py index a2b9461..632928e 100644 --- a/yoshi-seals1.3.3/Seals/write/write.py +++ b/yoshi-seals1.3.3/Seals/write/write.py @@ -48,4 +48,4 @@ class pandas: def txt(self, df, path): np.savetxt(path, df.values, fmt='%8f', delimiter=' ', \ - newline='\n', header='', footer='', comments='# ', encoding=None) \ No newline at end of file + newline='\n', header='', footer='', comments='# ', encoding=None) From 50a505fbeb57f82a3facea44cd04595b2c99c40c Mon Sep 17 00:00:00 2001 From: Vitor Hideyoshi Date: Sun, 22 Nov 2020 13:48:30 -0300 Subject: [PATCH 3/6] gauss more efficient --- Source Code - Seals/process/process.py | 64 ++++++++++++-------------- 1 file changed, 29 insertions(+), 35 deletions(-) diff --git a/Source Code - Seals/process/process.py b/Source Code - Seals/process/process.py index 968cd9c..eee2688 100644 --- a/Source Code - Seals/process/process.py +++ b/Source Code - Seals/process/process.py @@ -44,48 +44,42 @@ def identity(matrix): return matrix -def gauss(matrix): +def gauss(a): - i = 0 - k = 0 - - while (i < matrix.shape[0]): - - if (matrix[i][i] == 0): + for i in range(a.shape[0]): + + k = i + 1 + + while (k Date: Sun, 22 Nov 2020 20:17:12 -0300 Subject: [PATCH 4/6] gauss-jordan changed --- Source Code - Seals/process/process.py | 42 +++++++++++++++++++++++++- 1 file changed, 41 insertions(+), 1 deletion(-) diff --git a/Source Code - Seals/process/process.py b/Source Code - Seals/process/process.py index eee2688..facbd11 100644 --- a/Source Code - Seals/process/process.py +++ b/Source Code - Seals/process/process.py @@ -83,7 +83,47 @@ def gauss(a): def inverse(matrix): - return gauss(np.hstack((matrix, identity(np.zeros(matrix.shape))))) + matrix = np.hstack(matrix,np.identity(matrix.shape[0])) + i = 0 + k = 0 + + while (i < matrix.shape[0]): + + if (matrix[i][i] == 0): + + n = i + + while (matrix[i][i] == 0) and (n < matrix.shape[0]): + + temp = matrix[i].copy() + matrix[i] = matrix[n] + matrix[n] = temp + + n += 1 + + while (k < matrix.shape[0]): + + if (k == i) or (matrix[i][i] == 0): + + k += 1 + + else: + + mult = matrix[k][i]/matrix[i][i] + matrix[k] = matrix[k] - mult*matrix[i] + k += 1 + + i += 1 + k = 0 + + i = 0 + + while ((i) < matrix.shape[0]) and (matrix[i][i] != 0): + + matrix[i] = matrix[i]/matrix[i][i] + i += 1 + + return matrix[:,(matrix.shape[0]):] def cholesky(A, b): From b7520c61a56e6570747cce0bbbd678e68d61dc3a Mon Sep 17 00:00:00 2001 From: Vitor Hideyoshi Date: Mon, 23 Nov 2020 08:48:55 -0300 Subject: [PATCH 5/6] gauss changed --- Source Code - Seals/process/process.py | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/Source Code - Seals/process/process.py b/Source Code - Seals/process/process.py index facbd11..bc1541f 100644 --- a/Source Code - Seals/process/process.py +++ b/Source Code - Seals/process/process.py @@ -61,12 +61,17 @@ def gauss(a): l += 1 - while (a[k][i] == 0 and (k+1) < a.shape[0]): - k += 1 - - a[k] = a[k] - (a[k][i]/a[i][i])*a[i] + while (k < a.shape[0]): - k += 1 + if (a[k][i] == 0): + + k += 1 + + else: + + mult = a[k][i]/a[i][i] + a[k] = a[k] - mult*a[i] + k += 1 i += 1 @@ -103,7 +108,7 @@ def inverse(matrix): while (k < matrix.shape[0]): - if (k == i) or (matrix[i][i] == 0): + if (k == i) or (matrix[k][i] == 0) or (matrix[i][i] == 0): k += 1 From 4b1eee68e773e6b4874f0b33e4f41f1da047cd6d Mon Sep 17 00:00:00 2001 From: Vitor Hideyoshi Date: Mon, 23 Nov 2020 11:02:02 -0300 Subject: [PATCH 6/6] gauss more eficient --- .../process/__pycache__/__init__.cpython-38.pyc | Bin 0 -> 389 bytes .../process/__pycache__/process.cpython-38.pyc | Bin 0 -> 3046 bytes Source Code - Seals/process/process.py | 15 ++++++--------- 3 files changed, 6 insertions(+), 9 deletions(-) create mode 100644 Source Code - Seals/process/__pycache__/__init__.cpython-38.pyc create mode 100644 Source Code - Seals/process/__pycache__/process.cpython-38.pyc diff --git a/Source Code - Seals/process/__pycache__/__init__.cpython-38.pyc b/Source Code - Seals/process/__pycache__/__init__.cpython-38.pyc new file mode 100644 index 0000000000000000000000000000000000000000..c1fdae0106bb0bcc08b914ed48f0c9d54f7107c0 GIT binary patch literal 389 zcmYk2%}T^D5XX~#EB59C^xDIk7Z4E^Z@R23UUDfV2~Ds`O415_4`0Gp>ebV}f+r`z z1t;XsZ$6lrz_e5;&?&!ioNe-HVZ3ug6X zy_%IZ5Ga`IwQz^F+{(#WCcJlHXO{+n7a^AiDT0(BU&vhr4)P<3v|11e8?4q#MUKu6 z&`>KgkmEW_Ysib`3ydcx(T{$2SYVoB`+j80xIok{j)`V(xoCDxtRa7Ukgiik&0Tjl Uty^`kW1ojxnCruz-{8yn1@f$7wg3PC literal 0 HcmV?d00001 diff --git a/Source Code - Seals/process/__pycache__/process.cpython-38.pyc b/Source Code - Seals/process/__pycache__/process.cpython-38.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e321252023566c2898d48eb1c9ff95c5de00a6ab GIT binary patch literal 3046 zcmbVOOOG2x5bo}Icw)TPLd?cVmSBaIz#)mbAP}-pP$EvSinNIYD-i2=Cbrj)v3tf* z9F0#)B!qH+E2p)@B{#$|TsUy%2aGsGf&=*rocOAG#`Y4pu&aJmRaf^^ef70(Z)_9= z{=QxO^hI0|;&)oC|0yi4p+z^)`NEe2u`hX4`^s0o^`+RieA{<0+P>=-Fgm{HpTg++ zMgIki1;6BPVDx;sC+g*A@FaHIl7{Th!bt5pT67nkFXu9mi8#dUtmq4U2NIR2HOVK? ztG?3j`H&{CN>o#fDlE11u8-ZhG{H^Z5py-!N+i$Z#7@MXcx>%zy2dl=>N0hrZfhLW zt<)X1V%@u+%3dlD9}De4|5vBc4TnLa+w+527y_1)^OMxbs9HkaW@<_J`Vlq zAcz`!L2D3Q*_{pp-D_WO4cgPe6w+|2+d=Jm=m)hcHMVJtb=VG~C?BtmXQ_u1MsY8m zox!ou7CND9Rp#bl^i)X|@vkX$C*pVt0vC1@~{R%qhDaZhACdJ-{IFKQs}JzhcSGI zVGR1_Ne#W>rPXZ?;Cpqdg;?a0r5qSBUzYg-R!|RMQSopYU7Fv;9diUZdIRZ5-EI`O z+I=o{29qv9Tz9pDfq|o6Bs)3Mr%3`1H*~cIl|paCX!{hp=q+?YRi!O$z+)4nLVzhr z4}jTJZ)AWeDo?u5U4&&x>9g3=CSd1(1VMr}!{y!*E{6)Grw}BB2Q)zi3F;*RM_6ug z`k~F%A0oj-GzW=oMpMG1H*iCm2^2PH{kP2KYXlN9(j&QiHm*cT(9gIHK}5U~=Ma5Vuk}(=U^ZUcWUs zdF^h9H?BW>2zm4_I)Mj?@gxaR+aRKgXe9AeMHW@frg>3qW4?otutnsgcd+-radnk( z6-z@w3wgATEqa_*MObFMF*Xc7fPk+OiyslnCu4?Xcuw+tuwV^Skc&C;N0KH{I#w8S zd|YEJug)WETYVY*K=y0?pX3>wkZ-~SX_q#fb(X@n(HrC}t+Hnhm|ydh6Jhl^MBrHm zK9+bek59p{1@XrU2h1A`0R0LSl>OVfhFK~qHSnLHn@C?Ol3Jzh-gSnNcoNEgi*WNQ+yR03KS?UgY zqt>8Z