0%

最近因为opensuse15.2坏掉了所以升级成了15.4,而安装packman源解决编码器问题一直是个复杂的过程,而最近则发现这个过程已经有人写好了包,所以在这里记录下:

1
2
sudo zypper install opi
opi codecs

以上两行代码就解决了编码器问题。

转化编码格式

有时候在linux打开文件会出现乱码,这时候可以使用iconv转化编码格式:

1
iconv -f GB2312 -t utf-8 -o output.txt input.txt

以上命令可以将GB2312编码格式的input.txt文件转化为utf-8编码格式的output.txt文件。

Read more »

定义新命令

为了在latex中书写方便,可以用newcommand定义新命令:

1
\newcommand{\<cmdname>}[<n>]{<command>}
  1. <cmdname>为新定义的命令名字。
  2. <n>为参数个数,各个参数可以在命令体中用#1#2表示
  3. <command>为命令体。
    例如,可以用newcommand定义平均值的表示:
    1
    \newcommand{\mean}[2]{\frac{#1_1 + #1_2 + \cdots + #1_#2}{#2}}
    之后可以这样在数学环境中使用
    1
    \mean{a}{n}
    但是newcommand不允许定义一个已经存在的命令,如果要防止报错,可以使用providecommand,该命令使用和newcommand一致,当命令不存在时,它相当于newcommand,当命令存在时,它沿用之前的定义。例如:
    1
    \providecommand{\mean}[2]{\frac{#1+#2}{2}}
    \mean{a}{n}依旧等于
    $$ \frac{a_1+a_2+\cdots+a_n}{n} $$
    有时候我们需要重新定义一个已经定义的命令,此时,我们可以用renewcommandrenewcommand的使用和newcomand相同,但是它必须以及存在原命令,否则会报错。
    这些命令的定义会受到局部环境的影响,即在环境内部定义的命令在外部无法使用。
    Read more »

新冠阳了,今天开始复建运动。先试着把小分子的力场文件构建起来吧。这是我并不熟悉的领域,所以需要学习好多教程。

获得PDB结构

这里我们主要是要制作醋酸盐(acetate)和甲铵盐(methylammonium)的力场,我们首先需要得到小分子的PDB结构,可以从PDB库中找到我们需要的小分子。醋酸盐和甲铵盐的代码分别为ACT3P8。在网页上可以下载到.sdf文件,接下来可以使用openbabel将.sdf文件转化为.pdb坐标。
使用openbebal转化文件格式

Read more »

写这个是因为每次用的时候发现都忘记了,甚至不知道网页在哪,每次都要在一堆链接中反复点击,宛如蒙特卡洛模拟,有时候甚至还找不到想要的网站。因此我现在就把使用modeller补全缺失残基的网页放在这里。

我们以4GNX为例进行补全。首先4GNX在PDB中是个二聚体结构,我们只需要其中的一半的信息,所以我们删除了X,Y,Z和L链,改文件命名为4gnx_half.pdb。之后我们需要得到pdb中的序列信息。但是modeller只会得到存在的残基的序列。对于中间缺失的残基,虽然pdb文件的REMARK 465中记录了缺失的残基序号和类型,pdb文件中的SEQRES也记录了生物分子的序列信息,但是modeller并不会帮你从pdb中提取出来在序列上补充上,因为modeller认为这部分信息是不可靠的。并且有的经过处理的pdb甚至会丢失这些信息。

我们可以使用一下代码提取pdb文件中的序列信息:

1
2
3
4
5
6
7
8
9
from modeller import *
# Get the sequence of the 4gnx PDB file, and write to an alignment file
code = '4gnx'

e = Environ()
m = Model(e, file=code)
aln = Alignment(e)
aln.append_model(m, align_codes=code)
aln.write(file=code+'.seq')
Read more »

最近发现自己的数学,在我学习随机过程的时候,我发现我并不会概率论,当我学习概率论的时候,我发现我并不会测度论,而当我学习测度论的时候,我终于发现,原来我不会数学。
想到这里,顿时豁然开朗,原来我应该从头开始学数学。

当然实际上,在我学习测度论的时候,我就发现其实我缺失的是一些最基本的数学上的概念,比如上确界和下确界,这些知识的缺失使我学习测度论的过程异常艰难。

为了补全这些知识,我决定从数学分析开始学起来。为了记住学习的知识点,我决定用费曼学习法,即写一本《数学分析讲义》。希望能在学习和写讲义的过程中有所收获。

Read more »