苟利国家生死以,岂因祸福避趋之

0%

(2019年1月7日测试;域名成本除外)

1.打开Cloud Studio网站(https://studio.dev.tencent.com),点击右上角注册按钮注册(若已有腾讯云账号,可直接登陆):

2.注册腾讯云账号(必须使用微信注册):

3.注册及登陆成功后,在https://studio.dev.tencent.com 点击”进入工作空间“:

4.按提示设置用户名后,点击”新建工作空间“:

5.项目名设置为wordpress,下方选择“从模板创建”,选择WordPress,点击创建:

6.打开创建好的工作空间:

7.加载完成后,最右侧点“一键部署”,再点“一键开启”:

8.在“资源管理”菜单,有数据库的连接信息:

9.现在,在左侧“文件树”下找到wp-config-sample.php,右键重命名为wp-config.php;左键打开,从第23行起设置上一步获得的数据库信息,并保存:

10.现在,回到“一键部署”的”基本设置“界面,点击”一键部署“:

11.在“域名绑定“选项,可以看到一个http://coding.io结尾的域名(没有自己的域名可以用这个域名);在自己的域名服务中添加CNAME记录,至该http://coding.io域名,然后在域名绑定界面添加自己的域名(这里以190107.njzjz.win为例),自己的域名就被添加了。

12.待证书状态为”正常“时,打开自己的域名,填写站点的基本信息,点击Install WordPress,然后点击login in,会进入后台登陆界面:

13.现在,WordPress已经安装完毕,just enjoy it:

根据ping的结果,服务器位于香港腾讯云,所以无需备案:

参考资料

[1] 一键部署使用指南. https://dev.tencent.com/help/cloud-studio/one-click-deploy

[2] Cloud Studio介绍. https://dev.tencent.com/help/cloud-studio/about-new-cloud-studio

2018年12月22日上午,第二十四届上海高校学生创造发明“科创杯”颁奖大会于上海市科技创业中心举行。化学e+获上海发明协会颁发的发明创新三等奖(证书编号2018381),推荐单位为华东师范大学。

上海高校学生创造发明奖创设于1995年,本届“科创杯”奖由上海市科技创业中心资助、上海发明协会主办,旨在贯彻落实国务院《关于大力推进大众创业万众创新若干政策措施的意见》《关于深化高等学校创新创业教育改革的实施意见》,有效搭建大学生创新创业平台,进一步推动“大众创业、万众创新”。本届“科创杯”的宗旨是:通过“双创”,激发、鼓励上海高校学生创造发明和科研实践能力;将学生发明创新的科技成果实现创新、创业或通过创业孵化器进行转化,实现高校学生“破茧成蝶”的蓝海之梦。本届评选活动包括有复旦大学、上海交通大学、同济大学等高校和研究院所在内的二百多个项目、七百余名学生参评,激发了全市大学生发明创造的热情。

化学e+最初开发于2015年11月,有元素查询、质量计算、偏差计算、气体计算、酸碱计算、元素记忆等多种实用功能。小程序版本于2017年3月上线,目前累计用户量已达1.9万。

2019/1/3

近日,《华东师范大学2018 届毕业生就业质量报告》出炉,化学与分子工程学院就业率为85.66%,在全校33个专业中排名32,位居全校倒数第二名[1]

笔者查阅了化学与分子工程学院(及其前身化学系)近三年的就业率及排名:2017届为89.19%,排第29名,位居倒数第六[2];2016届位85.99%,第31名,位居倒数第四[3];2015届92.57%,为第20名,位于倒数第19[4]。2014年并未公布院系数据[5]

由此可见,化学与分子工程学院2018届就业率无论是数值还是排名,均位于近四年来的最低点。作图如下图所示:

据悉,今年华东师范大学全校就业率为97.21%,自2016年开始连续三年持上升,较去年同期增长2.09%[1]。据第三方社会调查机构麦可思发布的《2018年中国大学生就业报告》显示,2017届全国大学生毕业半年后的就业率为91.9%[6]

参考资料


  1. 1.华东师范大学2018 届毕业生就业质量报告 https://career.ecnu.edu.cn/web_upload/File/20181230170610646.pdf
  2. 2.华东师范大学2017 届毕业生就业质量报告 https://career.ecnu.edu.cn/web_upload/File/20171229161152655.pdf
  3. 3.华东师范大学2016 届毕业生就业质量报告http://www.career.ecnu.edu.cn/web_upload/Media/20170302102544364.pdf
  4. 4.华东师范大学2015 届毕业生就业质量报告https://career.ecnu.edu.cn/web_upload/Media/20160202164840549.pdf
  5. 5.华东师范大学2014年度毕业生就业质量报告 https://career.ecnu.edu.cn/commonpage/NewsDetail.aspx?id=Bj+ggSsmd50=
  6. 6.就业蓝皮书:2017届大学毕业生就业率整体稳定 http://www.gov.cn/xinwen/2018-06/11/content_5297948.htm

坐标江苏南京,光猫型号是华为HG8120C,路由器是刷了最新版padavan的斐讯k2。光猫为桥接模式,路由器为路由模式。

一、配置

首先要确定光猫已经有IPv6业务了,不支持的话就是白搭。

接着务必把光猫的DHCPv6关掉:

接着在路由器的IPv6设置界面,选择Native DHCPv6,下面两个选择Stateless。

过一会路由器就有IPv6地址了:

同时电脑和手机上也能收到240e开头的IPv6地址:

WSL里面ifconfig的显示(eth2和eth3分别是有线和无线网卡):

二、体验

1.test-ipv6.com测试满分:

2.外网可以直接连通内网机器,无需进行端口映射。

为了实验外网的连通性如何,我拿位于上海的实验室里面2001开头的教育网电脑做了测试,

可以ping通:

甚至电信没有屏蔽80端口:

有IPv6的朋友们可以连接http://[240e:ec:865:fd00:951b:d8c1:c33e:c791]/看看能不能访问,目前显然是没有屏蔽任何端口的,不过相信很快像IPv4一样屏蔽了。

3.动态

经过测试,分到的IPv6地址是动态的,第三位和第四位会变。如果需要绑定稳定的域名,从来在外面访问,就需要一个DDNS了。

(绑定了IPv6的域名)

4.连通性

(1)QQ可以毫无压力的ping通

(2)Google能获取地址,无法ping通,也上不了,显然那啥已经建成

(3)中文维基百科能ping通但访问不了,显然那啥已经升级。

(4)有些ip教育网能ping通,电信网ping不通,显然那啥也会区别对待

(5)Telegram可以连接

2018-09-28

为了在无GUI的环境下登陆校园网,我们编写了 ecnunetwork ——一个Python模块,在Python 2.7和Python 3.6均通过测试,
因为目前校园网IPv6无需登陆,所以可以直接使用pip安装:

$ pip install ecnunetwork

如果提示权限不足,可在当前用户下安装:

$ pip install ecnunetwork --user

使用时,输入network即可连接校园网:

$ network

如果提示找不到命令,可以进入Python运行:

$ python

>>> import ecnunetwork
>>> ecnunetwork.ecnunetwork().connect()

首次连接会要求输入用户名和密码:

Please input your ECNU id: xxxxxx
Please input your password: xxxxxx
Successfully connected to the Internet.
Save password? [Y/n] y

2018-09-23

1.安装Intel® MPI Library并激活,如source /share/apps/intel/compilers_and_libraries/linux/bin/compilervars.sh intel64
2.编译LAMMPS前,make yes-user-intel激活USER-INTEL package。
3.用make intel_cpu_intelmpi编译LAMMPS。
4.用KMP_BLOCKTIME=0 mpirun -np 36 lmp_intel_cpu_intelmpi -pk intel 0 omp 2 -sf intel -in in.script运行LAMMPS。
5.在in.script的开头加入processors * * * grid numa
参考资料:https://lammps.sandia.gov/doc/Speed_intel.html

2018-08-20

conda install --channel "anaconda" package

安装Anaconda

使用conda install需要安装Anaconda,安装方式见 #18 。
但也可以用我写的一键脚本安装:
wget https://raw.githubusercontent.com/njzjz/ChemAutoInstaller/master/ChemAutoInstaller.sh && bash ChemAutoInstaller.sh --anaconda

添加清华镜像

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/
conda config --set show_channel_urls yes

经测试,在华东师范大学校园网下可以满速下载。

常用软件

一些最常用的软件,如numpy、scipy已经预装在Anaconda中。剩下一些常用的软件(其实是我常用的)安装命令(-y可以跳过确认):
TensorFlow(含cuDDN)
conda install tensorflow-gpu
OpenBabel
conda install openbabel
RDkit
conda install rdkit
高版本GCC
conda install libgcc
DeePMD
conda install -c deepmd.kit deepmd

搜索软件

anaconda.org可以搜索安装包,资源非常丰富。

2018/08/07

环境准备

1.安装酷Q和HTTP API插件

酷Q:https://cqp.cc/
CoolQ HTTP API 插件:https://github.com/richardchien/coolq-http-api
将HTTP API插件放置于app文件夹中,启动并登陆酷Q,在菜单中启用插件。
HTTP API插件的默认地址为http://localhost:5700/

2.安装cqhttp

pip install cqhttp
安装后在Python中使用:

from cqhttp import CQHttp
bot = CQHttp(api_root='http://219.228.63.56:5700/')
bot.send_group_msg(group_id=599070209,message='hello world')

default

第二行定义了一个机器人,第三行让这个机器人发一条hello world的消息。

开始编写程序

1.获取任务状态

import subprocess as sp
class CQJobMonitor():
    def jobstate(self):
        states=sp.check_output(self.command.split()).decode('utf-8').split("\n")
        states=[' '.join(line.split()) for line in states if any([keyword in line for keyword in self.keywords])]
        return states

这里self.command为获取任务状态的命令,如qstatself.keywords为关键词,如['jzzeng']。如此即可返回含有关键词的任务状态。

2.发送消息

import time
from cqhttp import CQHttp
class CQJobMonitor():
    def sendstate(self):
        localtime = time.asctime(time.localtime(time.time()))
        message=localtime+"\n"+self.tip+"\n"
        message+="\n".join(self.jobstate())
        self.bot.send_group_msg(group_id=self.group_id,message=message)

调用定义好的CQHttp类发送消息,顺便带上当前时间。

3.循环发送

设置每300秒发送一次:

from threading import Timer
import os
class CQJobMonitor():
    def loopmonitor(self):
        while not os.path.exists("pause"):
            timer=Timer(self.timeinterval,self.sendstate)
            timer.start()
            timer.join()
        print("Exit per signal.")

这里self.timeinterval设置为300.

运行

完整的程序如下:

import os
import subprocess as sp
from cqhttp import CQHttp
import time
from threading import Timer

class CQJobMonitor():
    def __init__(self,command="qstat",cqroot='http://219.228.63.56:5700/',group_id=312676525,keywords=['jzzeng'],timeinterval=300):
        self.tip="JobMonitor"
        print(self.tip)
        self.command=command
        self.group_id=group_id
        self.keywords=keywords
        self.bot = CQHttp(api_root=cqroot)
        self.timeinterval=timeinterval

    def jobstate(self):
        states=sp.check_output(self.command.split()).decode('utf-8').split("\n")
        states=[' '.join(line.split()) for line in states if any([keyword in line for keyword in self.keywords])]
        return states

    def sendstate(self):
        localtime = time.asctime(time.localtime(time.time()))
        message=localtime+"\n"+self.tip+"\n"
        message+="\n".join(self.jobstate())
        self.bot.send_group_msg(group_id=self.group_id,message=message)

    def loopmonitor(self):
        while not os.path.exists("pause"):
            timer=Timer(self.timeinterval,self.sendstate)
            timer.start()
            timer.join()
        print("Exit per signal.")

代码已上传至pypi,可用pip install CQJobMonitor安装。
编写monitor.py

from CQJobMonitor import CQJobMonitor
CQJobMonitor(command="qstat",cqroot='http://219.228.63.56:5700/',group_id=312676525,keywords=['jzzeng'],timeinterval=300).loopmonitor()

并在后台运行:

nohup python monitor.py >/dev/null &

image

即可定时发送任务情况。

2018/07/26

1.安装

可用Anaconda安装conda install openbabel -c conda-forge或参照 此文 自己编译。

2.转换格式

把xyz格式文件转换成pdb格式文件:
obabel C.xyz -ixyz -opdb -O C.pdb
支持118种格式,如xyz、mol、mol2、pdb、smi,Gaussian文件gjf、log、fchk,ChemDraw文件cdx等。
可以从没有成键信息的xyz文件转换为有成键信息的mol文件。

3.转换SMILES

生成甲烷的mol文件:
obabel -:C --gen3d -omol -O C.mol
若要得到坐标,--gen3d不可少。
SMILES会默认补氢至饱和,将C补成甲烷,若要得到单个碳的mol文件:
obabel -:[C] --gen3d -omol -O C.mol
若要生成甲基的文件:
obabel -:[CH3] --gen3d -omol -O CH3.mol
或:
obabel -:"[C]([H])([H])[H]" --gen3d -omol -O CH3.mol
若SMILES有括号时,务必要加上引号。
获取C.xyz、C.pdb等多个文件的SMILES:
obabel C.mol C.mol2 C.pdb C.xyz --osmi -O C.smi

4.生成结构式的图像

cys

phosphate

obabel -:"C([C@@H](C(=O)O)N)S" -opng -O cys.png
即可生成半胱氨酸的结构式:

亦可生成矢量图像:
obabel -:"C([C@@H](C(=O)O)N)S" -osvg -O cys.svg
可以将文件直接转换为图像:
obabel phosphate.log -ilog -opng -O phosphate.png

5.配合Gaussian使用

从SMILES直接生成Gaussian输入文件:
obabel -:CC --gen3d -ogjf|sed "1c %nproc=28\n#opt b3lyp/6-31g(d,p)" >CC.gjf
从已有文件或上一步的log文件中得到下一步的输入文件:
obabel CC.log -ilog -ogjf|sed "1c %nproc=28\n#freq b3lyp/6-31g(d,p)" >CC2.gjf

2018年6月22日发表于微信公众号 (需已经安装好EndNote)

  1. 下载EndNote引用文件:①打开Google Scholar,②搜索文献,③点击文献下方的引用按钮,④点击EndNote下载,⑤打开下载好的EndNote文件:

2.在EndNote中选中刚刚导入的文献: 3.插入文献:①光标移到想插入文献的位置,②点击选项卡中EndNote X8,③点击Insert Citation,④点击Insert Selected Citation(s): 效果图: 自动插入了1. Jiang, Z.-m., Reflections on energy issues in China. Journal of Shanghai Jiaotong University (Science) 2008, 13 (3), 257-274. 注:

  1. Style一栏可以选择文献格式,大多数期刊都会提供格式文件:
  2. 可以多次加入同一文献,或在同一位置加入多个文献;
  3. 可以给Reference加个标题。