分类 科研 下的文章

Word 2016一次删除全部noteexpress引用的方法

个人原创,如有转载,请注明出处。

——by realasking

之前投稿被拒,要更换期刊,结果在用noteexpress(NE)格式化参考文献时发现,有些引用文献的期刊名被正确缩写,有些缩写是错误的,有些则完全没被缩写。将NE自带的对应期刊的Reference Style(RS)复制了一份,然后对照csl修改未果,将几种内置缩写格式都试了一遍,也都不正确,万般无奈下决定更换Mendeley。

要更换Mendeley,需要先删除掉NE已经插入的引用。NE是采用域的形式添加引用的,在网上搜索,很多人都提到搜索全部域,然后删除即可,但是这样会伤及无辜,影响已输入公式、晶向、通讯作者等信息。最后查找微软帮助,解决问题,过程如下:

1. 在正文中显示域代码

在联想笔记本上输入:Alt+Fn+F9

在其它笔记本上输入:Alt+F9

2.打开搜索

Ctrl+H

3.搜索特定域,并用空内容替换

点击替换

点击特殊格式,在弹出菜单中选择域,此时在查找内容中出现:

^d

在其后输入 ADDIN NE.Ref.

即:^d ADDIN NE.Ref.

保持替换为中啥都没有

点击全部替换

4.关闭对话框

5.隐藏域代码

操作同1.

然后就可以看到,NE插入的东西都很轻松的干掉了。

笔记:numpy的数组乘法

有些忘记了,写一下,备忘。

——by realasking

In [1]: import numpy as np

In [2]: A=np.array([[1,2],[3,4]])

直接乘是对应元素相乘:

In [3]: A*A
Out[3]:
array([[ 1,  4],
        [ 9, 16]])

做矩阵乘法要用dot,下面的是A^2:

In [4]: np.dot(A,A)
Out[4]:
array([[ 7, 10],
        [15, 22]])

叉乘用cross:

In [5]: np.cross(A,A)
Out[5]: array([0, 0])

[原创]Bash动态变量的使用

个人尝试得到,备忘,如有转载,请注明作者和出处。

——by realasking

很久没有写脚本了,今天处理数据,又写脚本,结果写着写着突然发现直接用了很多如x,y,z之类的变量名,结果就不如定义数组那么方便使用了,如果要改,改动的地方不少,有些费事儿,想了想,还是使用动态变量的办法来处理。

使用动态变量,其实是用read来赋值,用eval来取值,但是很久没看shell的东西了,有些手生,自己摸索了半天,终于还是弄出来了,故作个笔记,防止以后再遗忘。

假定我定义了如下的变量:

xl,yl,zl, xh,yh,zh

要对x,y,z作循环,对这些从文件赋值,就是:

j=0

for i in x y z

do

      j=$((j+1))

      sed –n ‘’”$j”’’p filename1>filename2

      read $(echo $i)l $(echo $i)h<filename2

done

如果对这些从字符串赋值,就是:

j=0

for i in x y z

do

      j=$((j+1))

      read $(echo $i)l $(echo $i)h<<<`sed –n ‘’”$j”’’p filename1`

done

在循环中取出两组已赋值的变量,并求和:

t1=`eval echo '$'"$(echo $i)l"`

t2=`eval echo '$'"$(echo $i)h"`

read $(echo $i)h<<<`echo "$t1 + $t2"|bc`

t2=`eval echo '$'"$(echo $i)h"`

sed输出由动态变量[x]linen保存的数字作行号的行:

sed -n ''"$(($(echo $i)linen))"''p filename

sed替换动态变量名所在行内容为动态变量内容和动态变量名:

A="$t1 $(echo $i)l"

sed -i '/'"$(echo $i)l"'/s/.*/'"$A"'/g' filename

Discovery Studio Visualizer 2017R2导入蛋白质pdb文件后一直没有响应的解决办法

个人笔记,如有转载,请注明出处。

——by realasking

应该是由于我的笔记本电脑配置太低了造成的,从URL打开pdb文件一直没有响应,经过尝试,找到了如下解决办法。

1.打开Edit->Preferences->Molecule Window->Graphics

2.取消选中Hardware acceleration

3.Rendering on move选择Simplified

4.点击OK关掉对话框

然后再打开pdb文件,就一切正常了。

做了个小工具essential-pathway

个人作品说明,如有转载,请注明作者和出处。

——by realasking

工具下载地址:

github pypi

以前就一直觉得在命令行下切换各个目录很头疼,而且总是忘记哪些目录在用,所以后来就自己写了好几个shell脚本来管理在使用的目录,并提醒自己其中的内容。最近几天,突然萌生了把它们整理一下、打成一个包的念头,不过没有想到的是,做着做着突然觉得还不如干脆用python来整个重写一遍,结果最后就做出了这么个东西。

这个小工具是用python3.6开发的,以LGPLv3发布,兼容性并未进行多少测试,目前只在64位archlinux上使用着。它用python调用sqlite3来管理常用路径,并生成包含数据内记录路径的modulefile供Tcl版的environment module来读取,以生成新的环境变量供用户调用,而在列表显示内部的路径时,需要调用python的prettytable库,所以该工具在安装前,需要先安装配置module和prettytable。

prettytable直接用pip install prettytable即可安装。

module在archlinux上用yaourt -S env-modules-tcl安装,在安装完成后,需要在$HOME下建立文件.modulespath,其内容为存放modulefile的目录位置,然后还需要在.bashrc中添加如下两行:
export MODULEPATH=${HOME}/env/module_files:$MODULEPATH
source /etc/modules-tcl/init/bash
下次登录bash即可启用module了。

本工具所生成的modulefile叫epath,要启用它,则需要在以上两行之后另起一行,添加以下内容:

module load epath

这一步建议在本工具安装完成并至少运行一次后操作

设置完成后,用pip install essential-pathway安装本工具,然后执行ep,就可以看到各种功能的使用说明了,举个例子,比如要将当前目录加入到pathway中,并将此pathway命名为myhome,执行:

ep a myhome

然后执行:

ep l

显示:

然后执行:

[realasking@Laptop Documents]$cd ~
[realasking@Laptop ~]$module load epath
[realasking@Laptop ~]$cd "$myhome"
[realasking@Laptop Documents]$

可以看到,环境变量myhome就生效了。

同样的,该工具还支持评注(备忘)、删除、刷新、备份、卸载环境变量设置等功能,需要注意的是,每次使用该命令前,请先执行一次module unload epath,否则可能会出现一些问题,在所需操作都执行完之后,需要让所有的pathway都生效,则可以再执行一次module load epath,当然,如果将这一句导入到了.bashrc中,则重新登录shell就可以了。

有兴趣的朋友可以试试,欢迎大家提意见,但限于个人精力和能力,本人不保证此工具的有效性及稳定性,也不一定能及时回复大家的关切,还望大家海涵。

最新文章

最近回复

  • realasking: 哪里的话,还要非常感...
  • cnfczn: 发送留言报错:in_...
  • cnfczn: 大狮兄666,以前经...
  • realasking: 最近还行啊,就是上网...
  • cnfczn: 大狮兄,好久不见啊....
  • realasking: 您好。有什么问题就在...
  • Eric Chen: 作者你好!最近折腾中...

分类

归档

其它