摘要: 本文重点介绍了VMD分子动力学模拟可视化软件的安装与基本使用方法,VMD是一款非常小而精致的可视化工具,在业界也备受推崇。如果只是用于做分子模型的展示,功能是完全足够的,如果要执行更多的操作,需要掌握tcl语言,当然这也是一个坑点。 阅读全文
posted @ 2021-05-07 15:19 DECHIN 阅读(13349) 评论(0) 推荐(0)
摘要: 继上一篇文章介绍了MindSpore的CPU版本的Docker容器化部署之后,MindSpore官方团队推出了MindSpore的GPU版本的Docker容器化部署方案,本文针对这一方案进行了安装测试,并且对于其中一些安装的时候可以遇到的问题的细节进行了处理。之所以采用容器化的解决方案,主要是为了做到SDK环境与编程环境的隔离,释放本地环境配置与部署的压力。当然,也使得本地的开发环境更加的“干净”。 阅读全文
posted @ 2021-05-06 16:26 DECHIN 阅读(814) 评论(0) 推荐(0)
摘要: 本文按照操作流程的时间顺序,分别介绍了Gitlab的Docker容器部署、Gitlab平台的基本配置以及基于Git的代码仓基本管理与同步方法。通过掌握这一套的流程,就可以实现在本地构建一个类似于Github的代码托管系统,在企业内网更好的管理私有代码仓库,避免因为在Github上进行代码开发而被其他企业窃取核心技术。 阅读全文
posted @ 2021-05-05 19:48 DECHIN 阅读(2368) 评论(5) 推荐(2)
摘要: 本文主要展示了一些lambda表达式的使用示例,通过这些示例,我们可以了解到lambda表达式的常用语法以及使用的场景。在一般情况下,其最大的意义还是简化了python中函数的定义方式,在可读性上远不如def所定义的函数。 阅读全文
posted @ 2021-05-04 21:17 DECHIN 阅读(1516) 评论(0) 推荐(0)
摘要: 本文介绍了python的迭代器yield,其实关于yield,我们可以简单的将其理解为单个元素的return。这样不仅就初步理解了yield的使用语法,也能够大概了解到yield的优势,也就是在计算过程中每次只占用一个元素的内存,而不需要一直存储大量的元素在内存中。 阅读全文
posted @ 2021-05-04 19:29 DECHIN 阅读(887) 评论(0) 推荐(1)
摘要: 为了使得输入参数的可扩展性更好,python中自带了args和kwargs两种方法,可以用于表示一个tuple类型的可变长度入参。其中args是一系列的一元变量的输入,kwargs是一系列键值对的输入,可以认为是一个二元变量的输入。虽然这两种方案也都可以用自行实现的tuple来替代,但是直接使用这两种定义会节省很多自定义可变入参的繁琐。 阅读全文
posted @ 2021-05-03 19:29 DECHIN 阅读(550) 评论(0) 推荐(0)
摘要: 在科学计算中对于恒定不变的数据,不一定需要实时保存在内存中,或者是需要跨平台运算的数据,我们可以将其保存为numpy格式的列表文件npy或者npz。而如果存储的文件过大,本文也额外介绍了简单的tar压缩与解压缩的使用方法。 阅读全文
posted @ 2021-05-02 19:21 DECHIN 阅读(2653) 评论(0) 推荐(0)
摘要: 本文通过简单演示,介绍了在Manjaro Linux系统下设置变更主机名的方法,包含有临时方法和永久生效的方法。这些方法在Linux系统中应该是可以通用的,不仅仅局限在Manjaro Linux中。 阅读全文
posted @ 2021-04-19 15:06 DECHIN 阅读(590) 评论(0) 推荐(0)
摘要: 本文介绍了numba的两个装饰器的原理与测试案例,以及python中两坐标轴绘图的案例。其中基于即时编译技术jit的装饰器,能够对代码中的for循环产生较大的编译优化,可以配合并行技术使用。而基于SIMD的向量化计算技术,也能够在向量的计算中,如向量间的乘加运算等场景中,实现巨大的加速效果。这都是非常底层的优化技术,但是要分场景使用,numba这个强力的工具并不能保证在所有的计算场景下都能够产生如此的加速效果。 阅读全文
posted @ 2021-04-16 16:56 DECHIN 阅读(1768) 评论(0) 推荐(0)
摘要: 二维码技术在日常生活和工业应用中都担任着非常重要的角色,这里我们可以使用python的myqr来生成个性化的二维码,比如带图片背景的二维码,或者是动态背景的二维码。经过测试,用微信扫码都成功的识别了出来,也就是说这些二维码都是可以直接拿来使用的。当然,现在技术都已经非常成熟,所以有很多线上的免费的二维码生成器可以使用,配套的也有二维码解码器,可以将生成的二维码翻译成文字。 阅读全文
posted @ 2021-04-16 11:35 DECHIN 阅读(911) 评论(0) 推荐(0)
摘要: 很多机器学习的算法的基础就是函数的拟合,这里我们考虑的是其中一种最简单也最常见的场景:线性函数的拟合,并且我们要通过mindspore来实现这个数据的训练。通过构造均方误差函数,配合前向传播网络与反向传播网络的使用,最终大体成功的拟合了给定的一个线性函数。文末我们还顺带介绍了使用matplotlib的animation来生成动态图的功能,可视化的展现了整个训练的过程。 阅读全文
posted @ 2021-04-15 11:37 DECHIN 阅读(1448) 评论(0) 推荐(0)
摘要: 本文介绍了两种表格数据的打印工具:tabulate和prettytable的安装与基本使用方法。由于表格数据本身是没有对输出格式进行规范化的,因此打印出来的数据会显得比较杂乱,不利于直观的阅读。因此引入这两种工具,加强了输出结果的可读性。这两者在使用上各有优劣,tabulate支持更多形式的表格样式,而prettytable则使用了更加接近于数据库的操作形式,对于部分用户而言有天然的生态优势。 阅读全文
posted @ 2021-04-14 11:09 DECHIN 阅读(1601) 评论(1) 推荐(0)
摘要: 本文介绍了用tracemalloc来进行python程序的内存追踪的技术,以及简单的文件映射技术mmap的使用方法介绍和演示。通过这些案例,我们了解到,对于小规模的计算场景,可以将整个的需要计算的元素包含在内存中,这比较方便也比较快速。而对于大规模的文件场景,还是使用内存映射技术更加的快速,这个速度在本文中介绍的几个案例的运行中也能够体会到。内存映射技术已经有很多应用场景,比如前面介绍过的vaex就是得益于内存映射技术。 阅读全文
posted @ 2021-04-12 11:49 DECHIN 阅读(3390) 评论(0) 推荐(2)
摘要: 基于python也可以开发安卓APP,这需要使用到kivy库来进行开发,再通过buildozer来编译构建。这两个库的安装和使用方式都相对比较简单,我们推荐直接在本地的系统环境下直接部署使用,最大的困难其实在于部署的过程以及配置文件的修改,这也都是比较基础的操作了。最后我们演示了使用文本框和按钮事件,加上python的eval()函数和math数学仓库,实现了一个可以在移动端调用math库中的函数执行数学计算的简单APP,并提供了apk下载网盘地址。 阅读全文
posted @ 2021-04-07 15:44 DECHIN 阅读(11578) 评论(0) 推荐(5)
摘要: 本文中通过python库diagrams展示了基础的架构图绘制的方法,库中提供了常用的AWS和k8S等场景下常用的组件标签,使得我们用python代码也可以绘制精美清晰的架构图。这里组件之间的连接和耦合关系,也可以通过简单的符号进行实现,这也得益于python中所特有的魔法函数。 阅读全文
posted @ 2021-04-04 21:00 DECHIN 阅读(2453) 评论(0) 推荐(0)