山寨是创新之母,但是盗版意味着止步不前。不知道还有没有人记得ICQ和当年的OICQ。OICQ完全山寨了ICQ,虽然我不喜欢现在现在的QQ,但是QQ把在线即时通信做到了极致。还有当年的网易泡泡、新浪UC,全部都灰飞烟灭了。别人想出了一个想法,你可以拿过来,用你自己的方式去实现。你甚至可以照抄别人的界面,但是你不能止步不前。要一直有所创新,要在山寨的基础上不断进步。如果你就只是抄袭了别人的想法、别人的界面,然后止步不前,你就是盗版。
luguode.com(路过的)已经被别人盗版,甚至在用猥琐的方法在luguode.com上做一些广告。我不想骂他们无耻,他们可以屏蔽”luguode”这几个字,但是他们永远学不到luguode的实质。luguode会走自己的特色道路,我们用了别人一个主意,但是我们要有所超越。我不怕,我也不去屏蔽我们的模仿者,我们欢迎竞争,但是请以正当的方式。如果你能做的更好,你必然有更多的用户。
以上
路过的是一种全新的在线交友方式,拒绝表露身份,和随机一个陌生人聊天。谁也不知道你是谁,谁也不知道你会碰上谁,放心向陌生人倾诉,这里没人认识路人甲,大家都是路过的!当然你也可以认为路过的(luguode.com)是对omegle的简单山寨,但是山寨是一种生活态度。在Omegle出来之前,很多人都有这样的想法,但是不是每个人都会去这样做。既然Omegle已经证明了这样一种聊天方式是受欢迎的,那么就去做吧,也让大家又很多的选择。
如果有什么问题,欢迎在这里留言,很乐意听到大家的意见。
今天我们聊一下SMILES,下面是Wikipeida里的解释,但是请不要看它,因为这个解释实在太复杂了。
SMILES(Simplified molecular input line entry specification),简化分子线性输入规范,是一种用ASCII字符串明确描述分子结构的规范。SMILES由Arthur Weininger和David Weininger于20世纪80年代晚期开发,并由其他人,尤其是日光化学信息系统有限公司(Daylight Chemical Information Systems Inc.),修改和扩展。
由于SMILES用一串字符来描述一个三维化学结构,它必然要将化学结构转化成一个生成树,此系统采用纵向优先遍历树算法。转化时,先要去掉氢,还要把环打开。表示时,被拆掉的键端的原子要用数字标记,支链写在小括号里。
SMILES字符串可以被大多数分子编辑软件导入并转换成二维图形或分子的三维模型。转换成二维图形可以使用Helson的“结构图生成算法”(Structure Diagram Generation algorithms)。
这个SMILES是怎么回事呢?一堆牛人在很久很久以前就开发了一套牛X的化学信息系统,但是怎么输入分子结构还是个比较大的问题。就是要用画的,也不是人人都有鼠标啊(我们把时间设置在SMILES还没发明的80年代初)。但是每个有计算机的人都有键盘吧,于是大家就要想想怎么用键盘输入分子结构。
拿这玩意来说吧,
,乙醇分子,大家都认识。我要在纸上画我可以画出来这么一个玩意。高中化学,大家都上过,有时候老师就给留那么一个空,你画图还不好画,你会怎么写呢?对了,就是CH3CH2OH了。这个结构用SMILES标示就是CCO,你发现了什么?这帮牛人太懒了,H都懒得写。反正有机分子都是要配成符合价键规则的,该有几个H大家都清楚,省了就省了。
然后是这个玩意,
,现在我告诉你它的SMILES表示是C=CCO。
现在你可以告诉我,你学会了SMILES了。我给你讲个笑话,说的是从前有个地主,他有个儿子,地主给他儿子请了个先生叫他认字,先生教了“一”字,然后先生又教了“二”字,然后地主儿子就说我学会写字了,结果呢地主让他儿子去写请帖,碰巧人家姓“万”,好冷啊 -.-!
地主儿子还好,他可以画一万横,不过你就是把键盘上的按键都拔下来也找不到那个键上有三个横,于是
这个其实是C#CCO。
现在你会用SMILES表示所有的长链分子了,那么这个怎么办?

这个我们这样表示,C=C(C)CO,分支的地方加个括号就好了。我想你肯定看懂了,接下来我们来点有难度的,环。
这个就是环己烷了,用SMILES表示是C1CCCCC1。简单来说,就是把环给砍断成链了,砍的地方做个标记(这里是1)。然后我只要记住C1和C1是连起来的就是把这个SMILES还原成环了。挺Easy不是?然后我们来看看取代基。
这个是个间甲基苯酚,环上一个羟基取代一个甲基取代。用SMILES表示就是CC1CCCC(O)C1。同样的道理,C1和C1相连,然后跟在某个环内的C后面有个(O),表示这里有个分支。脑子里想象一下,这串SMILES是可以动的,然后C1跟C1接一下,是不是就是上面的图?这里有点复杂了,多给两个例子,自己看看吧。
CC1CCCCC1(N)
CC1CCC(CC1)C(C)=O
然后我们开看看苯环,你想写成C1=CC=CC=C1,这个也太傻了,太烦了,创造SMILES的那帮牛人们不喜欢,于是他们这样写c1ccccc1。用小写字母表示共轭结构,这样更接近分子的真实结构。(虽然我们习惯上还是使用Kekule式)芳环的问题解决了,接下来我们看一下比较考验你脑筋的。
考验你脑筋的时候到了,它的SMILES表示是C1CCc2cnccc2(C1),看明白了吗?看明白就看明白了,没看明白就算了,因为你手里有一个鼠标,还去理这种80年的输入方法干啥?下面就谈到了SMILES的意义了。虽然SMILES设计的时候是用作输入的,因为它便于人类理解,但是现在SMILES常常用于在计算机中储存分子结构,因为它简单,它基于字符。至于输入的活,既然我们已经有了鼠标,那就点点画画吧,直观、方便。但是了解SMILES是很有意义的哦,当然它的意义不仅仅和(你看你就会用Windows,我还会点DOS命令)一样。
另外要说的是,除了SMILES之外,线性编码还有WLN、InChi等,但是现在就不做介绍了,因为它们现在远远没有SMILES应用广泛,WLN已经快老死了,InChi还没有长大。
计算机里的分子 – 1a篇到此完结,下面进行节目预告:
计算机里的分子 – 1b将介绍如何用JChemPaint画分子结构、生成SMILES,以及一点Java,用CDK来读取SMILES的一点Java代码。
EOF
Tags: 化学信息学