AFM数据处理软件Gwyddion的安装以及Python包的安装使用
Python #AFM #Gwyddion
介绍用AFM逐行扫描的高度数据往往需要处理以获得正确的高度分布。JPK公司提供的 原始软件“ JPKSPM数据处理”可以执行一些校准,但是我们无法从pytho程序中使用它,如果您要处理的文件很多,并且需要测试这些文件的不同处理方法,效率就会很低,因此我们还是希望有机会用脚本进行大批量的数据处理。安装此软件包并不容易,因此我在Windows和Linux系统中都列出了该软件包的安装方法。
安装Gwyddion的步骤在windows的ubuntu子系统安装我的笔记本电脑已经安装了ubuntu子系统,首先想到的是在子系统中安装gwyddion,因为gywddion只支持python2.7,子系统安装不会改变我的python3的使用。 在Windows子系统“ ubuntu-18.04”中,我直接键入了以下命令以成功安装该软件包1sudo apt-get install gwyddion
1sudo apt-get install python-gobject
1sudo apt install python-gtk2 libcanberra-gtk ...
Python办公:自动化生成latex代码来整理大量的图片到PDF
Python #Tools介绍本篇笔记主要是记录我利用python生成LaTex文件来将很多图片整理并保存到PDF的过程。作为科研人员,或者学生,生活中常常会遇到这样的场景:
在听取报告的时候,我们经常会将我们感兴趣的报告的PPT拍下来,后续再去查阅相关资料。理想很丰满,现实很骨感,实际上很多时候PPT拍完我们就不再会去整理了,因为太麻烦了。一系列照片,挨个分类保存还是很麻烦的。
在上课的时候,有的老师不会发PPT,遇到有疑问的也是手机保存一下。后续整理笔记也是会遇到照片太多不方便整理的情况。
做实验的时候,或者仿真的时候,也会产生很多图片,我们想将这些图片放到PPT里面展示,但是图片太多的时候,挨个选取图片、插入、排版都会浪费我们不少的时间。
针对这个痛点,我决定用所学的编程知识让这一过程自动化,基本思路是:
图片排版用Latex来完成,可以生成PDF的报告或者Beamer形式。
插入图片的Latex代码用Python来完成。
下面是具体的实现
准备一个模板latex文件我们需要先准备一个模板Latex文件,模板文件大致有所有的需要的基本代码,我的大致如下:
12345678 ...
MATLAB如何自定义颜色曲线
MATLAB #ColormapMATLAB有一套自己的颜色库,常用的都有,但是数量不算太多。我们有时候需要用到一些MATLAB没有的colormap,比如Python的Matplotlib就有很多的colormap,我们也有可能需要自己来定义一些渐变的颜色。本片笔记主要是介绍colormap如何自己定义或者如何从网络上下载自己需要的颜色图并且使用。
colormap的原理何为colormap?其实就是一个的数值矩阵,数字是0到1的数据,分别对应的是RGB通道的强度,比如红色就是[1,0,0]。而颜色图是一个颜色变化的图,当你把这个数据给MATLAB之后,MATLAB会按照这个colormap在绘制数据的时候自动插值。所以我们可以任意自己定义一个colormap,下面是一个例子,12345678color_map_mine=[linspace(0,1,100)',linspace(0,1,100)',linspace(0,0.5,100)'];x=linspace(-3,3,200);y=linspace(-3,3,200);[x_grid,y_grid]=meshgrid(x,y); ...
MATLAB光滑数据的方法总结
MATLAB #DataprocessingMATLAB光滑数据的方法总结对于数据的光滑,我开始理解的不透彻,直接用了一些MATLAB、Python的内置函数,没有理解其内在本质,仔细看了一些技术文章,了解了其基本原理,总结出来,希望以后可以用到
几种常用信号平滑去噪的方法
含普通噪声的数据的光滑普通噪声即随机的噪声,是一些比较随机的波动。我们可以做的只是让这些波动变得平均。要去除背景还得用测量的结果减去背景才行。MATLAB内置了很多的函数,我们取其中的smoothdata,filter,movmean函数,另外还可以手动来做卷积,来比较结果的异同。smoothdata的处理含movmean的选项,所以我们直接用smoothdata函数即可。代码如下
12345678910111213141516171819202122232425x=linspace(0,10,100);y=exp(-(x-5).^2)+ 0.25*rand(size(x));y_0=exp(-(x-5).^2);window=5;b = (1/window)*ones(1,window);a = 1;y_smoo ...
运用Python的CV2库检测tiff图形中的圆形
Python #Dataprocessing如何确定实验数据的圆形?实验数据保存为Tiff文件,其实就是一个强度分布的矩阵,与实际的图片是有区别的。
标签图像文件格式(Tag Image File Format,TIFF)是一种灵活的位图格式,主要用来存储包括照片和艺术图在内的图像,最初由Aldus公司与微软公司一起为PostScript打印开发。TIFF与JPEG和PNG一起成为流行的高位彩色图像格式。TIFF格式在业界得到了广泛的支持,如Adobe公司的Photoshop、The GIMP Team的GIMP、Ulead PhotoImpact和Paint Shop Pro等图像处理应用、QuarkXPress和Adobe InDesign这样的桌面印刷和页面排版应用,扫描、传真、文字处理、光学字符识别和其它一些应用等都支持这种格式。从Aldus获得了PageMaker印刷应用程序的Adobe公司控制着TIFF规范。
我们需要一个检测圆的算法来实现,我主要参考了这两个教程Detecting Circles in Images using OpenCV and Hough Cir ...
Cent OS 远程安装软件root无法打开图形界面的解决
Centos最近才开始接触Cent OS系统,以前是Ubuntu的深度用户。在打算在CentOS安装COMSOL, MATLAB以及Lumerical FDTD Solutions遇到了问题:安装时需要有图形化的安装引导界面,并且安装一般是需要root权限的,当我们用普通用户权限时,通过例如Moba Xterm是可以打开大部分软件的图形界面的,但是当我们切换为Root用户之后就会报错, 如下:
1X11 connection rejected because of wrong authentication
网络上开始找到的方案都不可取,后来知道这是由于默认只给了登录的用户使用图形界面的权限,而没有给Root这个权限,感觉可以通过Root直接远程登录解决,前提是系统有Root登录这个选项,比较直接的解决方案是写我们切换为Root之后,输入如下命令
1xauth merge /home/huyle/.Xauthority
此时便可以愉快的在Root账户通过图形界面安装了。问题的解决主要参考了下面的博客:
sudo as root X11 connection rejected becau ...
Centos 安装 Lumerical FDTD Solutions
软件安装 #Lumerical #Centos关于在Ubuntu的安装,可以参见我之前的笔记
Ubuntu安装Lumerical FDTD Solutions
Ubuntu安装COMSOL,MATLAB以及FDTD Solutions
服务器最近换了Centos 8,安装LumericalFDTDSolutions相较于Ubuntu安装更加方便,缺少库的问题可以自动解决掉。
关于CentOS切换root之后图形界面打不开的问题,可查阅该博客:
sudo as root X11 connection rejected because of wrong authentication
逐个安装软件默认的Lumerical FDTD Solutions为rpm文件, 可以直接通过rpm install <packagename.rpm> 安装,之前Ubuntu还需要自己手动转为deb包,这一点方便了许多。不过安装时一般都会有库缺少问题,CentOS的yum支持自动安装依赖,所以只需要cd到对应的文件夹,依次安装即可, 比如安装FDTD模块,
1yum install FDTD- ...
Ubuntu安装Lumerical FDTD Solutions
软件安装 #Lumerical #Ubuntu教程查阅了该网址:https://kx.lumerical.com/t/how-to-install-on-ubuntu-systems/2471https://docs.nomagic.com/display/NMDOC/FlexNet+license+server+installation
转换包rpm包为deb格式Lumerical官网对于linux的包只有rpm文件,即是为redhat等系统准备的,对于Debian/Ubuntu系统,需要将rpm转为deb包,工具为alien,安装方式为
12sudo apt-get updatesudo apt-get install alien
转换方式为,cd到对应的rpm包所在目录后输入
1sudo alien ./*/rpm
就会生成对应的deb包,这种方法一般不推荐,因为在装换的时候可能会遇到各种各样的小问题(有时候会报错),但是没有其他更好的办法了。
逐个安装软件现安装文件.rpm文件已转换为.deb文件,位于install子文件夹内。利用安装命令逐个安装对应的软件:Device, F ...
COMSOL livelink with MATLAB 参数化扫描中避免内存不断增加
COMSOLCOMSOL与MATLAB是可以无缝连接的,有些图形化界面难以实施的操作可以通过MATLAB代码来实现。当我们通过MATLAB对COMSOL进行参数化扫描的时候,会发现随着时间的推移,内存会占用的越来越多,几乎是指数增加,如下图
具体如何绘制出这样一幅图可以见我的另外一片博客
个人博客地址从COMSOL的log文件读取运算时间和内存并绘图
知乎地址从COMSOL的log文件读取运算时间和内存并绘图
我们只需要在每一次循环扫描的时候,都将模型释放掉再重新Load一遍,内存增长的速度就会慢很多,如下图所示
具体的代码大致如下:
12345678910111213141516171819202122clear;clc;import com.comsol.model.*import com.comsol.model.util.*ModelUtil.showProgress('comsol_progress_inten_1.txt');% do some sweep herefor l=1:num % load the model % We will load the mo ...
Mathematica如何用来写Python并且二者之间进行数据转换
Mathematica前言 现如今Python很火,因为其入门简单,功能强大。在科学计算领域中也占有一席之地。本人作为量子光学领域的理论研究生,平时仿真软件(COMSOL,Lumerical)用的很多,MATLAB,Python以及Mathematica也用得勤。
个人体验来说,MATLAB,Python功能有重叠的地方,也有互相不可替代的地方。比如MATLAB与 COMSOL,Lumerical的Livelink就是我所需要的不可替代的功能,非常方便处理仿真数据。而对于一般的数据处理,MATLAB, Python我觉得不相伯仲。Python有一些开源的包,比如Qutip,在MATLAB里面已经停止维护了,所以想用Qutip还得用Python。
最后来说Mathematica,以前一直以为是个计算器,忽视了其作用,疫情期间花时间了解之后,知晓其功能之强大,也对Mathematica的创始人顶礼膜拜。Mathematica设计的初衷就是想做一个全能型选手,其在各个领域都有涉及,特别是符号计算,其编程的思路以及写程序的模式一旦适应,写起来真的很顺手。
为什么不直 ...