-
Notifications
You must be signed in to change notification settings - Fork 0
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
Manually calculate the Raman Intensities #13
base: master
Are you sure you want to change the base?
Conversation
@pcostacarvalho can you test this new workflow for Raman simulations with the HKUST-1 structure on CCC? In case you need some help just let me know and we can schedule a meeting. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, @lipelopesoliveira !!! 👏 👏 👏
This will bring an amazing productivity gain. I would even suggest to include the Shell script in the PR description as a file in the repository. Maybe @pcostacarvalho can do that after figuring out the appropriate command for the LSF cluster we have.
@lipelopesoliveira Which of these packages need to be added to Even though you cited |
@lipelopesoliveira Is it time already to merge this branch, or are you still working on it? |
I'm still working on this. |
…culate_properties
… output and spectrum calculation
…_shift.py and calculate_properties.py
…arameter clarity in parse_phonon.py
@neumannrf This is a tentative for closing this PR. There is still two functionalities that are not implemented:
The first two are not urgent so I'll let it for the future. The third one could help a lot right now, but unfortunately implement it will require a lot more time than I anticipated, so maybe in a few weeks when I will have more time to dedicate to it I can come back and implement it. I tested most of the things here on my computer and everything seems to be working. But if @pcostacarvalho have some time to spare it would be good to double check the code with some simple examples just to make sure that I didn't broke anything. There still some things that I would like to implement, such as unit tests and a better documentation with more examples. But as people says: "The perfect is the enemy of the good..." |
Manual Raman Intensity Calculation Using Small Displacements Approach
This pull request introduces a new set of tools designed to manually calculate Raman intensities (total, perpendicular, and parallel) using the small displacements approach. The calculation leverages the polarizability tensor, as outlined in issue #4, and incorporates symmetry analysis through the Phono3py package. This package is used to generate the dynamical matrix from atomic forces, enabling accurate vibrational mode analysis.
Key Features
After running the scripts, the following files and directories are produced:
VIBRATION_FILES
{FrameworkName}_{ModeNumber}_{IrreductiveRepresentation}_{Freq}.axsf
These files can be visualized using VESTA.
All Displacements File:
{FrameworkName}_all.axsf
that consolidates all displacement vectors. This file is suitable for visualization in XCrysDen.Raman Data CSV:
{FrameworkName}_RamanTable.csv
that tabulates the computed Raman intensities and related data.Normalized Raman Curve CSV:
{FrameworkName}_RAMAN_Curve.csv
that contains the normalized Raman curve, with intensities normalized by the total intensity and a given half width for the peaks.Usage and Execution
Prepare Input Files:
Run Simulations:
Parse and Analyze Results:
Below there is an example of two scripts that can execute the workflow completely.
Closes #4