From f55549beac1de70270b692660680dab63d0e8e43 Mon Sep 17 00:00:00 2001 From: Gauthier Roy <gauthierroy83@gmail.com> Date: Tue, 28 Jan 2020 15:16:42 +0100 Subject: [PATCH] fix in the distance --- .vscode/settings.json | 2 +- RotTable.py | 10 +++++----- Traj3D.py | 6 ++++++ __pycache__/RotTable.cpython-36.pyc | Bin 2085 -> 2132 bytes __pycache__/Traj3D.cpython-36.pyc | Bin 1976 -> 1976 bytes first_plot.png | Bin 0 -> 2412 bytes individu.py | 17 ++++++----------- 7 files changed, 18 insertions(+), 17 deletions(-) create mode 100644 first_plot.png diff --git a/.vscode/settings.json b/.vscode/settings.json index 395ba2d..31e7ddf 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,3 +1,3 @@ { - "python.pythonPath": "D:\\Programmes\\Anaconda3\\python.exe" + "python.pythonPath": "/Users/gauthierroy/anaconda3/bin/python" } \ No newline at end of file diff --git a/RotTable.py b/RotTable.py index bcee295..3d9a88f 100644 --- a/RotTable.py +++ b/RotTable.py @@ -53,16 +53,16 @@ class RotTable: ################### def getTwist(self, dinucleotide): - return RotTable.__ORIGINAL_ROT_TABLE[dinucleotide][0] + return self.rot_table[dinucleotide][0] def getWedge(self, dinucleotide): - return RotTable.__ORIGINAL_ROT_TABLE[dinucleotide][1] + return self.rot_table[dinucleotide][1] def getDirection(self, dinucleotide): - return RotTable.__ORIGINAL_ROT_TABLE[dinucleotide][2] + return self.rot_table[dinucleotide][2] ################### -table1 = RotTable() -print(table1.orta()) +#table1 = RotTable() +#print(table1.orta()) diff --git a/Traj3D.py b/Traj3D.py index eee7181..92cc972 100644 --- a/Traj3D.py +++ b/Traj3D.py @@ -65,3 +65,9 @@ class Traj3D: ax.plot(x,y,z) plt.show() plt.savefig(filename) + +# from RotTable import RotTable +# table = RotTable() +# test = Traj3D() +# test.compute("AAAGGATCTTCTTGAGATCCTTTTTTTCTGCGCGTAATCTGCTGCCAGTAAACGAAAAAACCGCCTGGGGAGGCGGTTTAGTCGAA", table) +# test.draw("first_plot") \ No newline at end of file diff --git a/__pycache__/RotTable.cpython-36.pyc b/__pycache__/RotTable.cpython-36.pyc index dbb2e4134f6503a6df95598a7c5505e659fc5c85..98365b3695b6ee33d2f796c59a3503d3f62271be 100644 GIT binary patch delta 764 zcmZ1~a794bn3tF9yNyBIJPrni#|%h-nSp`9fq{XcSZkuPrbP;4FoPz`OOU)@GKhp> zQJ69{Mh1pdhA74qhA5^K#wg|#rWEEBvxzgz`OQ<rQzTN@)7eraQ>0QXCf<`~w4C_M zT-GXuJB0@<uAU;E!k)sJ!Vl)jrzoUYPxfP!X0(}{#c08kV$#A8#g$?j%%Ewzc^RW8 zBV*L$4@~n}i}Fk2OD0cYc4riye1|!UQD(9`%TZoo1_p*(tVM}=>8V9RlO<W@6hTfb z5(5b{W)_JvFfc#}2@p$!fq_9~as;bfJtNddAR2_7L4IdrU|^_W$YKa)&}8(}WGn(1 zuE|&gHWAgNTP*oSC5c)fO-vw@7^`@L@=HPzlX6n^Kr+c-Q3eJE5Dmg$^ZB6W*D%^j zGNdp{f-GY4D+1ZC$yg-Bz`&r%1hEa|eu%rl_JSOLiz7X?B&0mExWs(&byjm{kV9)2 zk<58Xf;r)-De0+Jlf&4|SwQAYp2#L_K-dL5>8T|ynMJ9|C7Jnowv%tNxiNB2R$$k2 z1O-%)BrJrBWI-%B5TO7f6hQ>o9|!{Eqaskiu!6!+Z*mvAS`-Th2L~GmF9$ORGgwNK zC5kgQu_U9kBr~V@77K`3Bn>hPqz@@{z@~x>yv1RYo1apelWGSFiegZ7axii*axeh^ D@12NV delta 689 zcmca2uv9?Vn3tD}`IUa$PId-{#|%h-nSp`9fq{Xc*lwb-rcWw!GeZ<hDr+iB7F!C7 zBttVJBSQ*fFoP!ROOPJFWDp6%qA;y;j0_B^3{i|J3{gxej8V)fOexGMCKFrC`At*A zQzTN@)7eraQ>0SNCZ3XJG@tm)oY7*k9HTU&<zy>HX-2EbVT=|m!3>(#n`be4GBVzp z{Df&fYfyeke8}VuW_L!3$rqTj7^Np$vmE6WVPIgm#afh@m!4WAJeikOPEm}3fuTqo zB+QsuBmv@p2}uwO<Upm#KCE(+_pwQOlrUs5)-Xykq%cY{1T$zd`4urTFfeE`6)}O- zf=t$ADuNq_X4Wl^^wg4&^338Aqsa@{BqrOj$+LhAoSeueY)FC;;i)O<siu<`u$lXS zw4=I*jRg1bq^Fj+WEQ0+mt^MWSxlB=cVpz5oXW1}4Dv{k6v#^;?-$8|SPCFQ5k!Ck z2SI>?3FLoPP!iB#U|`^2WMQ8CkX>T(dv>-m5oQi{4gn5k4rWLo34k2P9>tlPSdvj% zl9^L{iv`3ik^vbFGA4?xBrz!`)$kT;K~ZL2Ns%x}0%0AP1+w!NhfQvNN@-529ViZp Qxxf~4Fmf>QS+Fqz0Amh+1ONa4 diff --git a/__pycache__/Traj3D.cpython-36.pyc b/__pycache__/Traj3D.cpython-36.pyc index ecd80201694553fe02c71577fca8c84a37602d91..a01f12cb0c29d22c424578f11642ea789f4f035a 100644 GIT binary patch delta 18 ZcmdnNzk{FCn3tDJ$I>9~=|;}=>;NvC1vdZy delta 18 ZcmdnNzk{FCn3tC;;l5s+$VSff>;N%*1wH@( diff --git a/first_plot.png b/first_plot.png new file mode 100644 index 0000000000000000000000000000000000000000..0e536fb530ea40bc82a9395940755ad27a030609 GIT binary patch literal 2412 zcmeAS@N?(olHy`uVBq!ia0y~yU}|7sV0^&A#=yW}dhyN^1_lO}VkgfK4h{~E8jh3> z1_lPs0*}aI1_u5_5N2FqzdVzHfx)uGHKHUqKdq!Zu_%=xH?gE3C%+^oGfAN=wWv5V zKTp9(&rr`uM<Ju6q`*pFAE7`mzbIYbl>6ri1_q9ko-U3d6?5KRGh}2?;5lG$VE^-n zOnquxRb}VT=rAxCoqNx~z;Mr~fq}u0O@Kk+7y}c-5eWx|1_@>k27zP-MusFF1qO#6 zMizz+!%;<}K`@#MMl-@_Suk20j@AgHl_Fi+1$t_g?0c3k-;~6_z`)??>gTe~DWM4f DIVz$A literal 0 HcmV?d00001 diff --git a/individu.py b/individu.py index d01e39b..4653a58 100644 --- a/individu.py +++ b/individu.py @@ -13,21 +13,15 @@ class Individu(): traj = Traj3D() traj.compute(brin, self.table) traj_array = np.array(traj.getTraj()) - + print(traj_array) first_nucleotide = traj_array[0, 0:3] last_nucleotide = traj_array[-1, 0:3] + print(first_nucleotide) + print(last_nucleotide) distance = sqrt(sum((first_nucleotide - last_nucleotide) ** 2)) + diff_ideal_distance = abs(3.38 - distance) - first_name = brin[0] - last_name = brin[-1] - - rot_computed = self.table.Rot_Table[last_name+first_name] - rot_traj = first_nucleotide - last_nucleotide - print(rot_traj) - print(rot_computed) - diff_angle = sum(abs(rot_computed - rot_traj)) - - self.score = 1/(distance + diff_angle) + self.score = 1/(diff_ideal_distance ) def mutation(self): @@ -37,4 +31,5 @@ class Individu(): table = RotTable() test = Individu(table) test.evaluate("AAAGGATCTTCTTGAGATCCTTTTTTTCTGCGCGTAATCTGCTGCCAGTAAACGAAAAAACCGCCTGGGGAGGCGGTTTAGTCGAA") +print(table.rot_table) print(test.score) -- GitLab