液滴接触角边界曲线识别—巧用Ovito

关注 M r . m a t e r i a l , \color{Violet} \rm Mr.material\ , Mr.material , 更 \color{red}{更} 多 \color{blue}{多} 精 \color{orange}{精} 彩 \color{green}{彩}


主要专栏内容包括:
†《LAMMPS小技巧》: ‾ \textbf{ \underline{\dag《LAMMPS小技巧》:}}  LAMMPS小技巧》: 主要介绍采用分子动力学( L a m m p s Lammps Lammps)模拟相关安装教程、原理以及模拟小技巧(难度: ★ \bigstar
††《LAMMPS实例教程—In文件详解》: ‾ \textbf{ \underline{\dag\dag《LAMMPS实例教程—In文件详解》:}}  ††LAMMPS实例教程—In文件详解》: 主要介绍采用分子动力学( L a m m p s Lammps Lammps)模拟相关物理过程模拟。(包含:热导率计算、定压比热容计算,难度: ★ \bigstar ★ \bigstar ★ \bigstar
†††《Lammps编程技巧及后处理程序技巧》: ‾ \textbf{ \underline{\dag\dag\dag《Lammps编程技巧及后处理程序技巧》:}}  †††Lammps编程技巧及后处理程序技巧》: 主要介绍针对分子模拟的动力学过程(轨迹文件)进行后相关的处理分析(需要一定编程能力。难度: ★ \bigstar ★ \bigstar ★ \bigstar ★ \bigstar ★ \bigstar )。
††††《分子动力学后处理集成函数—Matlab》: ‾ \textbf{ \underline{\dag\dag\dag\dag《分子动力学后处理集成函数—Matlab》:}}  ††††《分子动力学后处理集成函数—Matlab》: 主要介绍针对后处理过程中指定函数,进行包装,方便使用者直接调用(需要一定编程能力,难度: ★ \bigstar ★ \bigstar ★ \bigstar ★ \bigstar )。
†††††《SCI论文绘图—Python绘图常用模板及技巧》: ‾ \textbf{ \underline{\dag\dag\dag\dag\dag《SCI论文绘图—Python绘图常用模板及技巧》:}}  †††††SCI论文绘图—Python绘图常用模板及技巧》: 主要介绍针对处理后的数据可视化,并提供对应的绘图模板(需要一定编程能力,难度: ★ \bigstar ★ \bigstar ★ \bigstar ★ \bigstar )。
††††††《分子模拟—Ovito渲染案例教程》: ‾ \textbf{ \underline{\dag\dag\dag\dag\dag\dag《分子模拟—Ovito渲染案例教程》:}}  ††††††《分子模拟—Ovito渲染案例教程》: 主要采用 O v i t o \rm Ovito Ovito软件,对 L a m m p s \rm Lammps Lammps 生成的轨迹文件进行渲染(难度: ★ \bigstar ★ \bigstar )。

专栏说明(订阅后可浏览对应专栏全部博文): ‾ \color{red}{\textbf{ \underline{专栏说明(订阅后可浏览对应专栏全部博文):}}}  专栏说明(订阅后可浏览对应专栏全部博文):
注意: \color{red} 注意: 注意:如需只订阅某个单独博文,请联系博主邮箱咨询。 l a m m p s _ m a t e r i a l s @ 163. c o m \rm lammps\_materials@163.com lammps_materials@163.com

♠ \spadesuit † \dag 开源后处理集成程序:请关注专栏《LAMMPS后处理——MATLAB子函数合集整理》
♠ \spadesuit † \dag † \dag 需要付费定制后处理程序请邮件联系: l a m m p s _ m a t e r i a l s @ 163. c o m \rm lammps\_materials@163.com lammps_materials@163.com


请添加图片描述

液滴接触角边界曲线识别—巧用Ovito

一、物理模型构建-液体氧化硅表面的润湿行为

1. 初始结构:在氧化硅表面构建液体模型

在这里插入图片描述

2. 平衡态:液滴与氧化硅表面呈现一定接触角

在这里插入图片描述

二、根据Ovito识别液滴表面

1. 确定表面原子

这里需要点击 S u r f a c e m e s h \rm Surface\ mesh Surface mesh,首先选择出液体对应的type,这将进一步作为全局变量,成为每一个原子的一个property。

在这里插入图片描述

2. 在 E x p r e s s i o n s e l e c t i o n \rm Expression\ selection Expression selection中选择边界

1. 这里我们可以看到,多了一个 S u r f a c D i s t a n c e \rm SurfacDistance SurfacDistance的选择。

在这里插入图片描述

2. 选择边界,具体请下载测试文件。

在这里插入图片描述

3. 删除其他原子

在这里插入图片描述

三、Matlab程序绘图

clc;clear;
% file is file path of lammps file 
file = 'plot.dump'
trydump = fopen(file,'r');
catcherror('Dumpfile not found!');
endi=1;
while feof(dump) == 0id = fgetl(dump);if (strncmpi(id,'ITEM: TIMESTEP',numel('ITEM: TIMESTEP')))timestep(i) = str2num(fgetl(dump));elseif (strncmpi(id,'ITEM: NUMBER OF ATOMS',numel('ITEM: NUMBER OF ATOMS')))Natoms(i) = str2num(fgetl(dump));elseif (strncmpi(id,'ITEM: BOX BOUNDS',numel('ITEM: BOX BOUNDS')))x_bound(i,:) = str2num(fgetl(dump));y_bound(i,:) = str2num(fgetl(dump));z_bound(i,:) = str2num(fgetl(dump));elseif (strcmpi(id(1:11),'ITEM: ATOMS'))for j = 1 : 1: Natomsatom_data(j,:,i) = str2num(fgetl(dump));endi=i+1;endend endend
endXYZ = atom_data(:,3:5,:);for i = 1:40XYZ_plot = XYZ(:,:,i);drawnow;
sz = 150;
scatter(XYZ_plot(:,2),XYZ_plot(:,3),sz,'MarkerEdgeColor',[0 .5 .5],...'MarkerFaceColor',[0 .7 .7],...'LineWidth',1.5);box on;
line([0 143],[22 22],'LineWidth',3,'Color','k','LineStyle','-');       xlim([0 143]);
ylim([0 200]);
% plot(xx(1:1:end)',temp(1:1:end,ii),"ko");hold on;
% plot(xx(30:70)',p1(1).*(xx(30:70))'+(p1(2)),...
%      'r-.','Linewidth',5);
% 
xlabel('Y axis','fontsize',20);
ylabel('Z axis','fontsize',20);
set(gca,'fontsize',20,'linewidth',1.5);
% title(strcat("frame: ",num2str(ii)));  
% print(num2str(i),'-djpeg','-r200');
end

四、测试文件

链接:请点击
提取码:ij47

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/14284.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Protobuf类型定义

"都甩掉吧,我们的世界一定会更美好!其他不重要!" 前面呢,我们讲了如何在Linux环境下安装Protobuf所需的库,那么本篇的着眼点在于Protobuf的编写以及语法规则。 什么是proto3? ProtocolBuffers语⾔版本3&am…

【Python实战】Python采集王者皮肤图片

前言 我们上一篇介绍了,如何采集王者最低战力,本文就来给大家介绍如何采集王者皮肤,买不起皮肤,当个桌面壁纸挺好的。下面,我和大家介绍如何获取数据。 环境使用 python 3.9pycharm模块使用 requests模块介绍 requests requests是一个很实用的Python HTTP客户端库,…

[期末网页作业]-精仿华为官网10个网页(html+css+js)

经过漫长的期末考试季节,我成功地完成了一个华为官网的仿写项目,并且非常高兴地与大家分享。这个项目包含了10个页面,每一个页面都经过了精心的设计和努力的填充。 首先,我注重了页面的整体布局与设计。借鉴了华为官网的风格&…

一文搞懂常见的加密算法

加密算法在互联网技术领域中几乎是无处不在,而密码学也是网络安全的重要基础,这篇文章我们就一起来学习下常见的加密算法。 1 为什么要研究加密算法? 在技术方面,加密算法的研究具有重要的意义,主要体现在以下几个方…

FreeRTOS实时操作系统(十二)事件标志组

系列文章目录 文章目录 系列文章目录事件标志组事件标志组API函数实验测试 事件标志组 事件标志位:用一个位来表示事件是否可以发生。 事件标志组是一组事件标志位的集合 特点: 1.每一个位表示一个事件(高8位不是) 2.每一位事件…

ncnn源码阅读(二)----网络模型结构和权重参数的加载

网络模型结构和权重参数的加载 ncnn推理框架中把模型的结构和权重参数分为两个文件进行存储,实现了结构和权重的分离。在xxx.param中存储了模型的结构信息,在xxx.bin中存储了模型的权重信息。xxx.param的文件结构如下: layer:描…

开源防病毒引擎ClamAV

本文软件是应网友 Windows 的要求折腾的; 什么是 ClamAV ? ClamAV 是一个开源 ( GPLv2 ) 反病毒工具包,专为邮件网关上的电子邮件扫描而设计。它提供了许多实用程序,包括灵活且可扩展的多线程守护程序、命令行扫描程序和用于自动数…

进程池线程池实现TCP高性能并发通信

进程池线程池实现TCP高性能并发通信 使用进程池与线程池实现并发服务,为多个客户进行接收和发送消息的服务 代码实现 # 导入进程池 from multiprocessing import Pool, cpu_count # 导入线程池 from multiprocessing.pool import ThreadPool from socket import …

Linux操作系统详解

文章目录 引言1. 认识Linux1.1 操作系统概述1.2 认识Linux1.3 虚拟机介绍1.4 远程连接Linux操作系统1.5 WSL1.6 虚拟机快照 2. Linux基础命令2.1 Linux的目录结构2.2 命令入门2.3 目录切换相关命令(cd/pwd)2.4 相对路径,绝对路径和特殊路径符…

【计算机视觉 | 目标检测】arxiv 计算机视觉关于目标检测的学术速递(7 月 4 日论文合集)

文章目录 一、检测相关(15篇)1.1 Artifacts Mapping: Multi-Modal Semantic Mapping for Object Detection and 3D Localization1.2 Shi-NeSS: Detecting Good and Stable Keypoints with a Neural Stability Score1.3 HODINet: High-Order Discrepant Interaction Network for…

centos7安装git及maven

安装git 直接使用yum安装,指令如下: yum install git然后执行如下指令判断是否安装完成: git --version紧接着需要维护git的用户名及邮箱等信息 git config --global user.name "zzy" git config --global user.email "ex…

Spring MVC 程序开发

什么是 Spring MVC? 官⽅对于 Spring MVC 的描述是这样的: Spring Web MVC is the original web framework built on the Servlet API and has been included in the Spring Framework from the very beginning. The formal name, “Spring Web MVC,”…