Vibrations table: ECCE assigns mode symmetry and describes each mode (IR/Raman teaching)
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 25/100
Research direction
Start by reading NModePanel.C and tracing the existing symmetry code and normal mode data for the supported chemistry codes. The issue calls for a wx-free analysis library with a command-line test; begin by checking how those modes and point-group operations are represented. Done means symmetry and activity assignments plus internal-coordinate mode descriptions match the listed textbook examples and program output.
Written by the indexing model from the issue text.
Description
For teaching, the vibration table should say what each IR/Raman peak is. Today it has Frequency, Sym, Infrared and Raman, and Sym is filled only by codes that print mode symmetry: Gaussian and MOPAC. ORCA, NWChem and ECCE-QM print none, so the column shows mode numbers. (The comment in NModePanel.C that says orca.desc extracts VIBSYM is wrong.)
1. Symmetry, for every code
- Apply the molecule's point-group operations (existing symmetry code) to each mode's displacement vector and read the irrep from the characters.
- Add IR active / Raman active from the character table, so a mode with no IR intensity is explained.
- Where the code prints labels as well (Gaussian, MOPAC), the test compares ours with theirs.
2. A Mode column describing the motion
- Project each normal mode onto internal coordinates (bond stretches, angle bends, out-of-plane bends, torsions) and show the dominant ones with their share, e.g.
C=O stretch 86%,H–O–H bend. - Equivalent coordinates moving in phase are symmetric, out of phase antisymmetric (
O–H stretch, sym./antisym.). - Bond names follow the Builder's bond orders (C=O, C≡N).
Layout: the analysis goes in a wx-free library with a command-line test; the panel only shows the columns.
Checks: textbook assignments for H2O, CO2, NH3, CH4, HCHO and benzene, and the mode descriptions ORCA and NWChem print where they exist.
Codes: every code that gives normal modes (Gaussian 16, ORCA, NWChem, MOPAC, ECCE-QM).
Labels on the plotted peaks are not part of this.
- Dominant language
- C
- Stars
- 10
- Forks
- 8
- Avg merge
- 21m
- Merged PRs (30d)
- 1
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from FriendsofECCE/ECCE
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
FriendsofECCE/ECCE#336 · 1 comment ·
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 35/100
FriendsofECCE/ECCE#407 ·
-
enhancement
Difficulty 4/5 3-5 days Newbie friendliness 45/100
FriendsofECCE/ECCE#406 ·
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 25/100
FriendsofECCE/ECCE#405 ·
-
ORCA Duplicate with Final Orbitals: warn when the copy runs under a different ORCA major versionOpenenhancement
Difficulty 4/5 3-5 days Newbie friendliness 48/100
FriendsofECCE/ECCE#404 ·
All issues in FriendsofECCE/ECCE
Similar issues
-
v9.6.0: CMake incorrectly enforces presence of libevdevPossibly taken A pull request linked to this issue is open or already merged. Open
Difficulty 2/5 1-3 hours Newbie friendliness 67/100
Maintainers usually reply within 1 day
-
[Bug] Unhandled ValueError terminates watchdog thread when GISRC value contains multiple colonsOpenbug
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
Maintainers usually reply within 1 day
-
bug Component component: net
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
RT-Thread/rt-thread#11913 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
contiki-ng/contiki-ng#3289 ·
Maintainers usually reply within 3 days
-
area:docs help wanted type:enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
Maintainers usually reply within 1 day