Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How does the program handle trajectories with variable cell parameters (NPT)? #2264

Open
luzujiall opened this issue Aug 26, 2024 · 3 comments
Labels
enhancement New feature or request help wanted Extra attention is needed

Comments

@luzujiall
Copy link

luzujiall commented Aug 26, 2024

Original content:

感谢作者的卓越贡献。我在此有两个小问题想请教您。
首先,rng无疑是可以考虑周期性条件的,这从选项的设置上就可以看出,但我还是想确认一下,对于npt模拟这种晶胞可变的动力学过程,rng会更新每步的晶胞信息吗?
例如,在dump格式文件中,包含每一帧的晶胞参数,程序是否会逐帧读取,还是只读取第一帧的参数。
当输入文件为XYZ这种不包含晶胞参数的格式时,似乎需要利用--cell选项进行定义,是不是说明XYZ格式只能定义固定晶胞参数呢?
其次,当我想用reacnetgenerator.tools.calculate_rate时,也需要定义晶胞参数,此时是不是也无法考虑npt过程?只能当作nvt系综来处理?


Thank you for the author's outstanding contributions. I have two small questions to ask:

First, RNG can undoubtedly consider periodic boundary conditions, as evidenced by the options settings. However, I would like to confirm whether, for NPT simulations where the cell is variable, RNG updates the cell information at each step. For example, in a dump format file that contains cell parameters for each frame, does the program read frame-by-frame, or does it only read the parameters from the first frame? When the input file is in XYZ format, which does not include cell parameters, it seems necessary to use the --cell option to define them. Does this mean that XYZ format can only define fixed cell parameters?

Second, when I want to use reacnetgenerator.tools.calculate_rate, I also need to define cell parameters. At this point, is it still not possible to consider the NPT process, and must it be treated as an NVT ensemble instead?

@njzjz njzjz changed the title 程序对于可变晶胞参数轨迹(npt)是如何考虑的 How does the program handle trajectories with variable cell parameters (NPT)? Aug 26, 2024
@njzjz
Copy link
Member

njzjz commented Aug 26, 2024

We use English for discussion. I translate the issue into English.

@njzjz
Copy link
Member

njzjz commented Aug 26, 2024

does the program read frame-by-frame, or does it only read the parameters from the first frame?

It reads frame-by-frame.

Does this mean that XYZ format can only define fixed cell parameters?

Yes, and please tell me if you have any other ideas.

Second, when I want to use reacnetgenerator.tools.calculate_rate, I also need to define cell parameters. At this point, is it still not possible to consider the NPT process, and must it be treated as an NVT ensemble instead?

This is a good question. You may need to read https://doi.org/10.1002/jcc.25809 and re-derive the equations under a variable volume (which can be one part of your work). You can share how the equations change, and we can make calculate_rate support that situation.

@luzujiall
Copy link
Author

luzujiall commented Aug 27, 2024

I greatly appreciate your thoughtful response. Regarding the first question, I am already quite satisfied with the confirmation I received, and I will find a way to convert other trajectory formats into the LAMMPS format. If you seek my opinion, I believe that if it's convenient for you, adding support for the more commonly used PDB format, which can record cell information, might be a good idea.
As for the second question, unfortunately, my mathematical foundation is not strong enough to carry out the specific derivation and verification work. However, perhaps we could consider using the concept of differentiation by selecting the volume within a certain time segment as the fixed volume of the system during that period and then substituting it into the original formula. But doing so might lead to significant errors, and I am not sure whether it is feasible.

@njzjz njzjz added enhancement New feature or request help wanted Extra attention is needed labels Sep 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

2 participants