2019/03/11 - gcloud服务器初始化计算环境

安装必备软件

sudo apt-get install zip unzip gcc gfortran -y
sudo apt-get update -y

安装历史命令

wget http://git.oschina.net/x242025/Shell/raw/master/CentOS/history.sh
chmod a+x history.sh
bash history.sh
rm history.sh

安装ddscat

wget https://github.com/rusterx/mddscat/releases/download/v1.0.0/linux.mddscat.v1.0.0.zip
unzip linux.mddscat.v1.0.0.zip
rm linux.mddscat.v1.0.0.zip
chmod a+x linux.mddscat.v1.0.0/*
mkdir dda.project

暴露ddscat的位置

echo 'PATH="$PATH:~/linux.mddscat.v1.0.0"' | sudo tee -a ~/.profile
source ~/.profile
sudo ln -s ~/linux.mddscat.v1.0.0/ddscat /usr/bin/ddscat

安装监控软件

cd ~/dda.project
wget https://gitee.com/rusterx/monitor/repository/archive/master.zip
unzip master.zip
rm master.zip
chmod -R 777 monitor/*

安装python环境

sudo apt install python python-pip -y
pip install bottle

暴露监控位置

echo 'PATH="$PATH:~/dda.project/monitor"' | sudo tee -a ~/.profile
source ~/.profile

设置vim偏好

# 设置vim
echo 'set ts=4' | sudo tee -a /etc/vim/vimrc

删除冗余文件并重启

rm ~/init_ddscat.sh
sudo reboot

2019/03/11 - 使用Python脚本生成shape.dat文件

ddscat所使用的shape.dat文件实际上就是点的集合,使用python生成该文件十分方便,以下就是实例

#!/usr/bin/env python
# -*- coding: UTF-8 -*-


"""
该代码主要用来生成球形的shape.dat,用于ddscat的计算
"""

header_template = """ >core_shell.py: NBX, NBY, NBZ=  {}  {}  {}
{:>7} = NAT
   1.0000   0.0000   0.0000 = A_1 vector
   0.0000   1.0000   0.0000 = A_2 vector
 1.000000 1.000000 1.000000 = lattice spacings (d_x,d_y,d_z)/d
 0.0 0.0 0.0
     JA  IX  IY  IZ ICOMP(x,y,z)
"""

data = list()
index = 1
radius = 20

for x in range(-1*radius, radius+1):
    for y in range(-1*radius, radius+1):
        for z in range(-1*radius, radius+1):
            if x**2 + y**2 + z**2 <= radius**2:
                data.append('{:>7}{:>4}{:>4}{:>4} 1 1 1\n'.format(index, x, y, z))
                index = index + 1

with open('shape.dat', 'w', encoding="utf-8") as f:
    f.write(header_template.format(radius*2, radius*2, radius*2, index-1))
    f.write(''.join(data))

在python环境中运行这个文件,就会生成一个半径为20个点的球体,使用vtrconvert命令将这个文件转换成paraview可以使用的vtr文件如下:

vtrconvert shape.dat output

使用paraview软件打开output_1.vtr文件,然后使用Contour过滤器,应用之后,就会形成如下的图形。

2019/03/10 - 新服务器初始化脚本

CentOS文件编码修改为utf-8,修改完成之后,需要reboot,如果需要xshell正常显示,也许要对客户端进行同步修改

bash <(curl -s http://git.oschina.net/x242025/Shell/raw/master/CentOS/set_locale.sh)

Ubuntu将字符集修改成中文

bash <(curl -s http://git.oschina.net/x242025/Shell/raw/master/CentOS/u_set_locale.sh)

为终端增加历史功能

bash <(curl -s http://git.oschina.net/x242025/Shell/raw/master/CentOS/history.sh)