總是有很多idea,但是一般都會忘記了??纯磳懴聛頃粫泻锰?!
1。用JAVA寫個小程序
目的: 分析已有的蛋白質3D結構之間的相互作用,比如分子間,和分子內的。
想法: 蛋白質的三維結構,在數據存儲表現上,實際就是一個三維點陣,用一個三維(XYZ)的坐標表示原子的相對位置。
目前想實現的是快速找到和總結兩個蛋白質分子之間靠的比較近的殘基。
實現方法: 用一個比較笨的方法: 計算所有的距離:
從分子A的第一原子開始, 依次計算它與分子B的所有的原子之間的相對距離(很簡單:就是XYZ對X'Y'Z'的距離),
依次計算分子A的所有原子。
for {set i 0} {incr i} {
for {set j 0} {incr j} {
if {[set dis [expr pow(pow(x($i)-x($j),2)+pow(y($i)-y($j), 2)+pow(z($i)-z($j),2),0.5)]]<=$indist} {
如果dis小于某個數值,就將兩個原子打印出來。
改進: 對于算法,我是基本沒辦法了,不過有幾個功能還是很需要的
1。 可以針對不同的原子類型,作出篩選
2。 可以根據給的一個dis的值,一次算出以這個值以下(一次-1)為限制條件的所有步驟,比如dis=10,那么9,8,7等等也被分別算出。
3。 最好可以把算出來的蛋白質殘基remap到原來的結構上去。