# Otevřená věda
# Počítačové simulace molekul po absorpci záření s využitím strojového učení
:::danger
__Cíl stáže__: teoretickými metodami studovat fotochemii molekuly
:::
___
## Projects
- __Jak získat přístup k odborným článkům?__ (= není to úplně správný způsob, jak se k článkům dostat, ale protože nemáte oficiální afiliaci k Univerzitě/Akademii, je to pro Vás, mimo placení poplatků, jediná cesta):
- Otevřte https://sci-hub.se/
- Vložte DOI kód: `https://doi.org/<doplň DOI>`
- __Papery na software + review__:
- [Quantum Chemistry in the Age of Machine Learning](https://pubs.acs.org/doi/abs/10.1021/acs.jpclett.9b03664)
- [MLatom 3: A Platform for Machine Learning-Enhanced Computational Chemistry Simulations and Workflows](https://pubs.acs.org/doi/full/10.1021/acs.jctc.3c01203)
- [MLatom doc](http://mlatom.com/docs/index.html)
- [Newton-X Platform: New Software Developments for Surface Hopping and Nuclear Ensembles](https://pubs.acs.org/doi/10.1021/acs.jctc.2c00804)
- __Molekuly__:
- A) __Silaethylene__
<img src="https://hackmd.io/_uploads/S1jsv9VQA.png" width="200"/>
- [Experimental work](https://doi.org/10.1002/anie.198105971)
- [Excited-state potential energy surfaces of silaethylene: a MRCI investigation ](https://www.tandfonline.com/doi/full/10.1080/00268970412331333573)
- [Multiple pathways in the photodynamics of a polar $\pi$-bond: A case study of silaethylene](https://doi.org/10.1016/j.cplett.2005.11.015)
- B) __3-(Hydroxymethyl)naphthalen-2-ol__
<img src="https://hackmd.io/_uploads/H1C0v5V7C.png" width="300"/>
- [References](https://pubchem.ncbi.nlm.nih.gov/compound/3-_Hydroxymethyl_naphthalen-2-ol#section=Consolidated-References)
- [Photoreactive Polymer Brushes for High-Density Patterned Surface Derivatization Using a Diels–Alder Photoclick Reaction](https://pubs.acs.org/doi/10.1021/ja210350d)
= 300 nm nebo 350 nm
- [Patterned Surface Derivatization Using Diels–Alder Photoclick Reaction](https://pubs.acs.org/doi/10.1021/ja205652m)
- [Light-Induced Hetero-Diels−Alder Cycloaddition: A Facile and Selective Photoclick Reaction](https://pubs.acs.org/doi/10.1021/ja200356f)
= 275 nm nebo 324 nm
- [Photochemical Generation and the Reactivity of o-Naphthoquinone Methides in Aqueous Solutions](https://pubs.acs.org/doi/10.1021/ja9031924)
- [Photolabile protection of alcohols, phenols, and carboxylic acids with 3-hydroxy-2-naphthalenemethanol](https://pubs.acs.org/doi/10.1021/jo801302m)
- [Photo-activatable Reagents for Bioorthogonal Ligation Reactions](https://link.springer.com/article/10.1007/s41061-023-00447-4)
= 300 nm absorpce
- [Competing photochemical reactions of bis-naphthols and their
photoinduced antiproliferative activity](https://link.springer.com/article/10.1039/c8pp00532j)
- C) __Cycl[3,3,3]azine__ & __Cycl[3,3,3]borane__ & __Heptazine__
<img src="https://hackmd.io/_uploads/SJWcSqV70.png" width="200"/><img src="https://hackmd.io/_uploads/HyLzsCRBA.png" width="200"/><img src="https://hackmd.io/_uploads/SJNdjR0rA.png" width="200"/>
- [The inverted singlet–triplet gap: a vanishing myth?](https://doi.org/10.3389/fchem.2023.1239604)
- [Singlet–Triplet Inversion in Heptazine and in Polymeric Carbon Nitrides](https://doi.org/10.1021/acs.jpca.9b06215 "DOI URL")
- [Large Inverted Singlet–Triplet Energy Gaps Are Not Always Favorable for Triplet Harvesting: Vibronic Coupling Drives the (Reverse) Intersystem Crossing in Heptazine Derivatives](https://doi.org/10.1021/acs.jpca.1c09150)
- [Inverted Singlet–Triplet Gaps and Their Relevance to Thermally Activated Delayed Fluorescence](https://doi.org/10.1021/acs.jpclett.9b02333)
- [On the origin of the inverted singlet–triplet gap of the 5th generation light-emitting molecules](https://pubs.rsc.org/en/content/articlelanding/2022/cp/d2cp02364d)
- [Role of Spin Polarization and Dynamic Correlation in Singlet–Triplet Gap Inversion of Heptazine Derivatives](https://pubs.acs.org/doi/10.1021/acs.jctc.3c00781)
- [Delayed fluorescence from inverted singlet and triplet excited states](https://www.nature.com/articles/s41586-022-05132-y)
- [Picosecond Fluorescence from the Second Excited Singlet State of Cycl[3.3.3]azine, a Bridged 12$\pi$-Perimeter Annulene. Spectra and Kinetics for $S_2-S_0$ and $S_2-S_1$ Transitions](https://pubs.acs.org/doi/10.1021/j150651a028)
- [A Series of Singlet-Triplet InVerted TADF Fluorescent Probes with High Stability, Low Molecular Weight, and Synthesis Accessibility](https://doi.org/10.1002/adts.202200863)
- [Next generation quantum theory of atoms in molecules for the design of emitters exhibiting thermally activated delayed fluorescence with laser irradiation](https://doi.org/10.1002/jcc.26783)
- [Triangular boron carbon nitrides: an unexplored family of chromophores with unique properties for photocatalysis and optoelectronics](https://doi.org/10.1039/D1CP02026A)
<img src="https://hackmd.io/_uploads/SJYduc4XR.png" width="400"/>
- D) [__Cytosine__](https://cs.wikipedia.org/wiki/Cytosin)
<img src="https://hackmd.io/_uploads/r1ZxK0vX0.png" width="200"/>
- [Vertical Excitation Energies and Lifetimes of the Two Lowest Singlet Excited States of Cytosine, 5-Aza-cytosine, and the Triazine Family: Quantum Mechanics–Molecular Mechanics Studies](https://pubs.acs.org/doi/10.1021/acs.jctc.2c01262)
- __How to:__
- nastavit cesty k Turbomole:
```bash
export TURBODIR="/usr/local/programs/turbomole/tm-7.3/arch/TURBOMOLE"
export TURBO="/usr/local/programs/turbomole/tm-7.3/arch/TURBOMOLE/bin/em64t-unknown-linux-gnu/"
export PATH="/usr/local/programs/turbomole/tm-7.3/arch/TURBOMOLE/bin/em64t-unknown-linux-gnu_smp/:$PATH"
export PATH="/usr/local/programs/turbomole/tm-7.3/arch/TURBOMOLE/bin/em64t-unknown-linux-gnu/:$PATH"
export PATH="/usr/local/programs/turbomole/tm-7.3/arch/TURBOMOLE/scripts:$PATH"
```
- udělat Turbomole input (ADC(2))
```bash
define # run in terminal, turbomole has to be in your PATH
.
.
a coord # addition of coordinates, which has to be in TM format
*
no
b all <basis_set_name> # for example def2-TZVP, aug-cc-pVTZ
*
eht # <enter> for rest of the section
cc
freeze
* # This will set default freezing, which should be ok
cbas
* # This will set auxiliary basis set for ri
ricc2
adc(2)
*
exci
irrep a 3 # This will add line into control, which has to be changed manually
*
*
* # end of define
# In control, this has to be set for:
# a) in case of singlet (S0, S1) calculation
irrep=a multiplicity= 1 nexc= 1 npre= 2 nstart= 2
# b) in case of triplet (S0, T1) calculation
irrep=a multiplicity= 3 nexc= 1 npre= 2 nstart= 2
qsub pmold4turbo # submission of a job to gpu cluster
# qstat
# qdel
```
- udělat Turbomole input (DFT), výpočet frekcencí
```bash
define # run in terminal, turbomole has to be in your PATH
.
.
a coord # addition of coordinates, which has to be in TM format
*
no
b all <basis_set_name> # for example SVP
*
eht # <enter> for rest of the section
dft
on
func b3-lyp
*
* # end of define
qsub pmold4turbo
# dscf > dscf.out
# aoforce > aoforce.out
```
- Zadávání výpočtů:
```bash
qsub <script name> # submituje job na klastr
qstat # zobrazi bezici joby, qstat -u '*' zobrazi vsechny joby
qdel <JOB_ID> # smaze job s JOB_ID - to zjistite pomoci qstat
```
- Optimalizace geometrie:
> O co jde? Hledáme uspořádání atomů (molekulovou geometrii) s nejnižší energií. V případě dvou atomů, dostaneme PES jako křivku, pro molekuly s více atomy, je však situace složitější, PES je vícedimenzionální a musíme použít speciální metody pro hledání tzv. optimální geometrie. Další informace jsou popsány v kapitole 7 Turbomole tutoriálu: [ZDE](https://www.turbomole.org/wp-content/uploads/2019/10/Tutorial_7-4.pdf).
1. Připravit input pro běžný singlepoint výpočet - excitované stavy by zde neměly hrát roli - optimalizujeme geometrii v základním stavu a příkaz `ricc2` se vůbec neprovede, pouze `dscf`
2. V submitovacím skriptu `pmold` máme pro singlepoint příkazy `dscf` a `ricc2`, tyto příkazy je potřeba odstranit (nebo z nich udělat komentář přidáním `#` na začátek řádky) a přidat `jobex > jobex.out`
3. Poté se optimalizace standardně pošle na klastr: `qsub pmold`
4. Optimalizovaná geometrie bude v souboru `coord` - je dobre si ji někam nakopírovat a pojmenovat přehledně - typicky `coord_eq`
5. Je taky dobré opticky zkontrolovat, že proběhla optimalizace úspěšně převedením do kartézských souřadnic `t2x`, což vypíše xyz souřadnice a ty po uložení zobrazit `molden`em
- Výpočet vibračních frekvencí (tzv. normálních módů):
> O co jde? Vibrační frekvence potřebujeme k vygenerování počátečních podmínek (tedy souboru geometrií a rychlostí), což potřebujeme pro zahájení molekulové dynamiky nebo výpočtu spektra. Další informace jsou popsány v kapitole 8 Turbomole tutoriálu: [ZDE](https://www.turbomole.org/wp-content/uploads/2019/10/Tutorial_7-4.pdf). Jak normální módy vypadají se můžete podívat [ZDE](https://www.chem.purdue.edu/jmol/vibs/index.html)
1. Připravit input pro běžný singlepoint výpočet - excitované stavy by zde neměly hrát roli - ale potřebujeme pro výpočet použít ==__optimalizovanou geometrii__==
2. V submitovacím skriptu `pmold` máme pro singlepoint příkazy `dscf` a `ricc2`, tyto příkazy je potřeba odstranit (nebo z nich udělat komentář přidáním `#` na začátek řádky) a přidat `aoforce > force.out`
3. Poté se výpočet standardně pošle na klastr: `qsub pmold`
4. Frekvence budou v souboru `force.out` a je potřeba zkontrolovat, zda prvních 6 frekvencí je rovno nule (například příkaz `grep "frequency " force.out`), druhá možnost je, že se nám optimalizace nezdařila a jedna z frekvencí je komplexní číslo. V takovm případě je potřeba provést optimalizaci znovu.
Kontrola zda ta báze je v turbomole:
https://www.cosmologic-services.de/basis-sets/basissets.php
___
### #1 Spectrum (Z)
:::info
__Central aim__: Simulovat spektrum vybrané molekuly metodou NEA (nuclear ensemble approach), vyzkoušet způsoby jeho zlepšení pomocí různých technik strojového učení (ML)
:::
:::success
__Hypothesis__: ML dokáže zlepšit kvalitu absorpčního spektra
:::
#### :bookmark_tabs: Crucial papers
- [Machine Learning for Absorption Cross Sections](https://pubs.acs.org/doi/10.1021/acs.jpca.0c05310)
#### :information_source: Info
|||
| --- | --- |
| Geometrie | `/home/jakubm/WORK/napthalen-2-ol/` |
| Submitovaci skript | `/home/jakubm/TEMPLATES/pmold4turbo` |
| Cyclazine poč. podm. | `/home/jakubm/WORK/CYCLAZINE/SPEC/final_output` |
| Heptazine poč. podm. | `/home/jakubm/WORK/HEPTAZINE/SPEC/final_output` |
| Cycloboran poč. podm. | `/home/jakubm/WORK/BORAZINE/SPEC/final_output` |
| Single point input | `-\|\|-/SPEC/input/` |
| Skript na single-point | `/data/theoch/jakubm/_SPEC_ADC2_CAS/SPECTRUM/skript.sh`|
#### :pencil2: List of tasks
- [x] Udělat benchmark metod - vybrat tu, která má nejlepší poměr čas/přesnost
- [x] Optimalizovat geometrii - nalezení minima na PES
- [x] Analýza excitovaných stavů - vertikální excitační energie v optimální geometrii
- [x] Vygenerovat počáteční podmínky:
- [ ] Simulovat spektrum metodou NEA
- [ ] (* spustit molekulovou dynamiku)
- [ ] Vyzkoušet predikce spektra s využitím MLatomu
- [ ] Použít strojové učení k natrénování modelu a zlepšit přesnost spektra s jeho využitím
#### :question: Additional information/questions
#### :trophy: Results (Napthalenol):
| Báze | Čas | $S_0$ | $S_0\rightarrow S_1$ |
| --- | --- | --- | --- |
| Def2-SVP |2:1| -571.64302328563 | 4.14368 |
| Def2-TZVP |27:57|-572.27960979494 | 4.03361 |
| Def2-TZVPP |39:4|-572.28543507094 | 4.02771 |
| Def2-QZVP |434:21|-572.30946004536 | 4.00831 |
| Def2-QZVPP |432:53|-572.30946004536 | 4.00831 |
| aug-cc-pVDZ |37:23|-572.14442626029 | 4.01733 |
| aug-cc-pVTZ |195:18|-572.27170375574 | 3.99862 |
| aug-cc-pVQZ |3711:12|-572.30483048122| | |
| Báze | Čas | $S_0$ | $S_0\rightarrow S_1$ | $S_0\rightarrow S_2$ | $S_0\rightarrow S_3$ | $S_0\rightarrow T_1$ | $S_0\rightarrow T_2$ | $S_0\rightarrow T_3$ |
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
| Def2-SVP |1:33 |-571.64302328867 |4.14367 |4.71982 |5.81101 |2.97060 |4.04544 |4.47024 |
| ==Def2-TZVP== |==21:45== |==-572.27960979555== |==4.03361== |==4.52758== |==5.63574== |==2.93829== |==3.95174== |==4.37208== |
| Def2-TZVPP |30:11 |-572.28543507111 |4.02771 |4.52223 |5.62971 |2.93436 |3.94775 |4.36608 |
| Experiment |X|X| | | |
___
### #2 Study of excited states (O)
:::info
__Central aim__: Studovat chování vybrané molekuly v excitovaném stavu (Jak dlouho bude excitovaná? Jaké strukturní změny s tím budou spojeny?)
:::
:::success
__Hypothesis__: Je lepší používat předtrénovaný model AIQM1 než standardní přístup kvantově chemickými metodami?
:::
:::spoiler Papers
- [The inverted singlet–triplet gap: a vanishing myth?](https://doi.org/10.3389/fchem.2023.1239604)
- molecules with inverted S-T gap (INVEST molecules) violate the Hund's rule (that T is lower than S, because of exchange interaction of unpaired electrons)
- singlet-triplet gap (STG) only if they have very similar spatial part of the wavefunction
- STG is defined to be positive, when triplet is lower
- STG is related to intersystem crossing (ISC), which is relevant for the thermally activated reverse intersystem crossing (RISC) - from T to S and then by fluorescence into the S0 = thermally activated delayed fluorescence (TADF), which is relevant to OLEDs: [PAPER1](https://pubs.rsc.org/en/content/articlelanding/2022/sc/d1sc07180g), [PAPER2](https://academic.oup.com/chemlett/article/50/5/938/7350928)
- ==heptazines== and ==cycl[3.3.3]azines== are being studied now: [PAPER1](https://pubs.acs.org/doi/10.1021/acs.jpca.9b06215), [PAPER2](https://pubs.acs.org/doi/10.1021/acs.jpclett.9b02333), [PAPER3](https://chemistry-europe.onlinelibrary.wiley.com/doi/10.1002/cphc.202000926), [PAPER4](https://www.frontiersin.org/journals/chemistry/articles/10.3389/fchem.2022.999856/full)
- ==heptazine==:
- `ADC(3) cc-pVDZ (−0.109 eV)` [PAPER](https://doi.org/10.1016/j.matt.2021.02.017)
- `NEVPT2(6,6) def2-SV(P) (−0.344 eV)` PAPER: `-||-`
- `EOM-CSSD cc-pVDZ (CanO, −0.180 eV), (NatO, −0.214 eV)` PAPER: `-||-`
- `TDDFT` positive STgap [PAPER1](https://doi.org/10.1016/j.cplett.2021.138827), [PAPER2](https://doi.org/10.1002/cphc.202000926), [PAPER3](https://doi.org/10.1039/D2CP02364D)
- `DFT/MRCI (−0.01 eV)` [PAPER](https://doi.org/10.1021/acs.jpca.1c09150)
- Experiemental evidence on small negative STgap time-resolved photoluminescence and transient absorption spectroscopy [PAPER1](https://doi.org/10.1021/acs.jpca.9b06215), [PAPER2](https://www.nature.com/articles/s41586-022-05132-y)
- 'Recent theoretical calculations of rate constants demonstrated the efficiency and temperature dependence of TADF do not exclusively depend on STG; moreover, the rates were determined by an interplay of vibrionic effects and near-zero STGs' [PAPER](https://pubs.acs.org/doi/10.1021/acs.jpca.1c09150)
- 'stabilization of the singlet state has been attributed to energetically low-lying doubly excited singlet configurations, with which the singlet state can interact but not the triplet state' [PAPER](https://pubs.acs.org/doi/10.1021/acs.jpclett.9b02333)
- excitation into $S_1$ (HOMO-LUMO) is symmetry-forbidden (spectroscopically dark) - for heptazine, cycl[3.3.3]azine and cycl[3.3.3]borane
- ADC(3)/cc-pVTZ level heptazine (−0.06 eV), cycl[3.3.3]azine (−0.07 eV) and cycl[3.3.3]borane (-0.10 eV) ==this paper==
- ADC(2)-x heptazine (−0.16 eV), cycl[3.3.3]azine (−0.11 eV) and cycl[3.3.3]borane (-0.15 eV) - ==this paper==
- ADC(2) heptazine (−0.24 eV), cycl[3.3.3]azine (−0.14 eV) and cycl[3.3.3]borane (-0.20 eV) - dynamic correlation (via inclusion of doubles) stabilizes singlet over triplet ==this paper==
- $\Delta$CCSD/cc-pVTZ heptazine (−0.382 eV), cycl[3.3.3]azine (−0.303 eV) and cycl[3.3.3]borane (-0.364 eV)
- $\Delta$CCSD(T)/cc-pVTZ heptazine (0.039 eV), cycl[3.3.3]azine (0.025 eV) and cycl[3.3.3]borane (0.017 eV) - inclusion of triples capture higher-order correlation effects related to the entanglement of the hole and particle in the corresponding exciton
- the possible error introduced by singlet–triplet state mixing, i.e., spin contamination, is expected to lead to an underestimation of the absolute values of the calculated gaps.
- ADC(1) - positive STG ==this paper==
- number of nitrogens has negligible influence on STG
- They exhibit a negligible multi-configurational characteristic
- 'Seemingly, the description of the excitons is not yet converged at the level of ADC(2) ... demonstrating that at least a third-order treatment of the states in question is required for their proper theoretical description' - von Neumann entanglement entropy (quantifies the correlation between the electron and hole, and it can, thus, serve as a criterion for how well excited states are described at a certain level of the theory) ==this paper 3.2==
- when we use larger basis set, the STG tends to go to positive values (for $\Delta$CCSDT(T) and ADC(3))
- As noted previously, the efficiency of TADF depends on the details of the dynamical processes and not solely on the STG [PAPER](https://doi.org/10.1021/acs.jpca.1c09150)
- [Singlet–Triplet Inversion in Heptazine and in Polymeric Carbon Nitrides](https://doi.org/10.1021/acs.jpca.9b06215 "DOI URL")
- [Large Inverted Singlet–Triplet Energy Gaps Are Not Always Favorable for Triplet Harvesting: Vibronic Coupling Drives the (Reverse) Intersystem Crossing in Heptazine Derivatives](https://doi.org/10.1021/acs.jpca.1c09150)
- [Inverted Singlet–Triplet Gaps and Their Relevance to Thermally Activated Delayed Fluorescence](https://doi.org/10.1021/acs.jpclett.9b02333)
- [On the origin of the inverted singlet–triplet gap of the 5th generation light-emitting molecules](https://pubs.rsc.org/en/content/articlelanding/2022/cp/d2cp02364d)
- [Role of Spin Polarization and Dynamic Correlation in Singlet–Triplet Gap Inversion of Heptazine Derivatives](https://pubs.acs.org/doi/10.1021/acs.jctc.3c00781)
- [Delayed fluorescence from inverted singlet and triplet excited states](https://www.nature.com/articles/s41586-022-05132-y)
- [Picosecond Fluorescence from the Second Excited Singlet State of Cycl[3.3.3]azine, a Bridged 12$\pi$-Perimeter Annulene. Spectra and Kinetics for $S_2-S_0$ and $S_2-S_1$ Transitions](https://pubs.acs.org/doi/10.1021/j150651a028)
- [A Series of Singlet-Triplet InVerted TADF Fluorescent Probes with High Stability, Low Molecular Weight, and Synthesis Accessibility](https://doi.org/10.1002/adts.202200863)
- [Next generation quantum theory of atoms in molecules for the design of emitters exhibiting thermally activated delayed fluorescence with laser irradiation](https://doi.org/10.1002/jcc.26783)
- [Triangular boron carbon nitrides: an unexplored family of chromophores with unique properties for photocatalysis and optoelectronics](https://doi.org/10.1039/D1CP02026A)
:::
#### :information_source: Info
|||
| --- | --- |
| Geometrie | `/home/jakubm/WORK/CYCLAZINE/SP_adc/` |
| Submitovaci skript | `/home/jakubm/TEMPLATES/pmold4turbo` |
| Cesta k Borazine IC | `home/novak/OV/SES/cyclborane` |
#### :pencil2: List of tasks
- [x] Nalinkovat si turbomole do ~/.bashrc
- [x] Udělat benchmark bází - pomocí define vytvořit inputy (lišit se budou jen báze) a do tabulky doplnit dlku výpočtu (dscf + ricc2)
- [x] Doplnit do tabulky hodnotu $S_0$ `total energy` v dscf.out
- [x] Doplnit do tabulky hodnotu $S_0\rightarrow S_1$ v [eV] `ADC(2) excitation energies` v ricc2.out - to jsou tzv. vertikální excitační energie, neboli rozdíl $E$ mezi stavy
- [x] Pro zvolenou bázi (po diskuzi) optimalizovat geometrii = připraví se input a zavolá se `jobex` - to vede k nalezení minima na PES
- [x] Vygenerovat počáteční podmínky
- [ ] Spustit trajektorie vybranou metodou
- [ ] Analýza trajektorií
- [ ] Spustit trajektorie s předtrénovaným modelem AIQM1
#### :question: Additional information/questions
#### :trophy: Results:
##### Cyclazine
| Báze | Čas (hh:mm:ss) | $S_0$ | $S_0\rightarrow S_1$ | $S_0\rightarrow T_1$ | $T_1\rightarrow S_1$ |
| --- | --- | --- | --- | --- | --- |
| Def2-SVP | 00:05:46 | -513.69013429312 | 1.03436 | 1.21585 | -0.18149 |
| Def2-TZVP | 00:39:17 | -514.24265016979 | 0.99233 | | |
| Def2-TZVPP | 01:12:34 | -514.24598741377 | 0.99557 | | |
| aug-cc-pVTZ | 07:39:16 | -514.23447326729 | 3.21594 | |
##### Borazine:
Energie optimalizované geometrie:
$E_0=-486.8669618797$ au
| Báze | Čas (hh:mm:ss) | $S_0$ | $S_0\rightarrow S_1$ | $S_0\rightarrow T_1$ | $T_1\rightarrow S_1$ |
| --- | --- | --- | --- | --- | --- |
| Def2-SVP | 00:10:04 | -483.92635394275 | 1.20516 | 1.40618 | −0.20102 |
| Def2-TZVP | 01:36:20 | -484.44999606744 | 1.22316 | 1.38621 | −0.16305 |
| Def2-TZVPP | 02:17:44 |-484.45320232212 | 1.21846 | 1.38220 | −0.16374 |
| aug-cc-pVTZ | 07:48:36 | -484.44284375813 |1.22039 | 1.38229 | −0.1619 |
___
### #3 Machine learning (H)
:::info
__Central aim__: Určit důležité vlastnosti tréninkové sady pro excitované stavy (Jak moc jsou body v okolí kónických intersekcí důležité pro fit PES? Jakou roli hraje vzorkování trénovací sady?)
:::
:::success
__Hypothesis__: Tréninková sada by pro správný fit excitovaných stavů měla obsahovat body v okolí kónických intersekcí
:::
#### :bookmark_tabs: Crucial papers
- [Deep Learning for Nonadiabatic Excited-State Dynamics](https://pubs.acs.org/doi/10.1021/acs.jpclett.8b03026)
#### :information_source: Info
|||
| --- | --- |
| Dataset | `/data/theoch/mahesh/DATA/Cytosine/DATA/sample_149/`|
| Počet bodů | `17999700 (train: 17879702, test: 119998)` |
| Energie stavů | `energy1.dat, energy2.dat, energy3.dat` |
| Formát `energyN.dat` | `<Krok v trajektorii> <energie v kcal/mol> <energie v au>` |
| Geometrie | `geometry.dat` - $xyz$ jsou v au |
| CI struktury | [Optimalizované CI struktury - str. 12 (v au)](https://pubs.acs.org/doi/suppl/10.1021/acs.jctc.2c01262/suppl_file/ct2c01262_si_001.pdf) |
|Inspirace jak vypada profesionalni kod|`/home/jakubm/WORK/mlatom_3/mlatom/devtests/namd/fssh/fssh_temp/run_fssh.py`|
#### :pencil2: List of tasks
- [ ] trajektorie cytosinu obsahuji otevrenou/zavrenou konfiguraci - je potreba zjistit, jak moc je otevrena konfigurace reprezentovana v trajektoriich. Pro urceni, zda se jedna o otevrenou/zavrenou konfiguraci by bylo dobre vykreslit vzdalenost mezi atomy kruhu, tzn. $atom_1-atom_2$, $atom_2-atom_3$, $atom_4-atom_5$, $atom_5-atom_6$, $atom_6-atom_1$ - tyto hodnoty vykreslit jako funkci casu - pokud se jedna hodnota bude zvertsovat, znamena to, ze se kruh otevrel (je mozne pouzit ten skript, ktery pocita vzdalenosti atomu a pouzit `awk '{print $<poradi sloupce>}'` pro vypsani pouze vzdalenosti, ktere nas zajimaji)
- [ ] Napsat pythonovský skript, který z tréninkové sady pro Cytosin identifikuje geometrie v blízkosti kónických intersekcí
- [ ] Vytvorit soubory (celkem 2) s CI geometriemi (prevzit z [paperu](https://pubs.acs.org/doi/suppl/10.1021/acs.jctc.2c01262/suppl_file/ct2c01262_si_001.pdf)) - __pozor__ geometrie v datasetu maji jine poradi atomu nez CI geometrie, musi se tedy preusporadat, aby bylo stejne poradi, protoze pro selekci bodu (ktere jsou blizko CI) chceme porovnavat $\mathbf{x}= (r_{12},r_{13},...)$. Pro identifikaci, ktery atom je ktery, staci vytvorit kopii `geom_CI.xyz` (= souboru s CI geometrii) a odstranit jeden atom a podivat se pomoci `moldenu`, ktery atom chybi.
- [x] Vytvorit si maly dataset (napr. 5 geometrii), pro ktere se otestuje, zda program spravne konvertuje geometrii na $\mathbf{x}$ a porovna ji s CI strukturou
- [ ] Zjistit jak rychly je program (predpokladam, ze to bude v pythonu) pro velke datasety - nebude lepsi to napsat v __C/C++__?
- [ ] Určit optimální velikost sady pro fit PES
- [ ] Rozhodnout, který způsob vzorkování, je důležitý random x farthest point
#### :question: Additional information/questions
```bash
for i in `seq 1 50`; do cd TRAJ$i/TEMP/SAVED_FILES; n=$(ls geom* | wc -w); for j in `seq 0 $((n-1))`; do cat geom_$j >> ../../../geoms.dat ;done;cd ../../..;done
```
#### :trophy: Results:
___
## Domací úkol
___
## Questions
- (Jakub) Příklad: Co je to $\hat{H}$ v Schrödingerově rovnici?
> $\hat{H}$ je Hamiltonův operátor (neboli Hamiltonián). Jedná se o operátor vyjadřující celkovou energii systému (tedy součet kinetické energie $\hat{T}$ a potenciálni energie $\hat{V}$ - značení je v kvantové mechanice trochu rozdílné, než v klasické). Zcela obecně můžeme pro systém $N$ jader a $n$ elektronů (v tzv. přirozených jednotkách) zapsat Hamiltonián jako:
> $$\hat{H} = -\frac{1}{2}\sum_{A=1}^N\frac{1}{M_A}\nabla_A^2 -\frac{1}{2}\sum_{i=1}^n\nabla_i^2 +\sum_{A=1}^N\sum_{B>A}^N \frac{Z_AZ_B}{R_{AB}} -\sum_{i=1}^n\sum_{A=1}^N \frac{Z_A}{r_{iA}} +\sum_{i=1}^n\sum_{j>i}^n \frac{1}{r_{ij}}$$, kde $\nabla_A=(\frac{\partial}{\partial x},\frac{\partial}{\partial y},\frac{\partial}{\partial z})$
> Pro atom vodíku H (tedy systém jeden $p^+$ a jeden $e^-$) má Hamiltonián tvar:
> $$\hat{H} = -\frac{1}{2}\nabla_{p^+}^2 -\frac{1}{2}\nabla_{e^-}^2 -\frac{1}{r_{e^-p^+}}$$
## Seznam zkratek
| Slovo | Definice |
| --- | --- |
| PES | hyperplocha potenciálni energie |
| ML | machine learning |
| NEA | nuclear ensemble approach |
| KRR | kernel ridge regression |
| au | atomove jednotky (atomic units)|
---
## Bash cheat sheet:
- `vim <name>`
- textový editor ([hra na procvičení vimu](https://vim-adventures.com/))
- [jak ho zavřít](https://stackoverflow.com/questions/11828270/how-do-i-exit-vim)? `:q` nebo `ZZ`

| příkaz | definice |
| --- | --- |
| `pwd` | vypíše jméno pracovního adresáře |
| `cd [adresář]` | změní pracovní adresář |
| `ls [-ladL] <adresář>` | vypíše obsah adresáře |
| `mkdir [-p] <adresář>` | vytvoří adresář/adresáře |
| `rmdir <adresář>` | smaže prázdný adresář |
| `rm [–r] <název>` | smaže soubor [adresář] (nemusí být prázdný) |
___
## Poznámky ze skupinových meetingů:
### 1. Uvodní skupinový meeting (12. 1. 2024, 16:30-19:00):
- Intro, představení, očekávání, návrh temat
1. Kvantová chemie (pro elektrony)
1. Schrödingerova rovnice:
- $\hat{H}\Psi=E\Psi$ - nejde rešit přesně, musíme použít aproximace
- rešením získáme celkovou energii ($E$) a vlnovou funkci ($\Psi$)
- kvadrát absolutní hodnoty funkce je hustota pravděpodobnosti výskytu elektronů, neboli: $|\Psi(x,y,z)|^2=\rho(x,y,z)$
- Kodaňská interpretace kvantové mechaniky
2. Hyperplocha potenciální energie (PES)
- je to potenciální energie uspořádání jader $E=f(\vec{R})$
2. Molekulová dynamika (pro jádra)
- Newtonovy pohybové rovnice - rešíme $-\frac{\partial V}{\partial \vec{r}}=F=ma=m\frac{d^2\vec{r}}{d t^2}$ dynamický vývoj polohy jader v čase
3. Fotochemie
- Fotochemické procesy - molekula je reprezentována bodem na PES a časový vývoj odpovídá pohybu jeho pohybu po PES
4. Strojové učení
- Z napočítaných dat sestavíme tréninková sada: $\{E,\Psi\}$
- Přesnost ML modelu určíme rozptylovými grafy
5. Soft skills
- Dokumenty, prezentace - $\LaTeX$
- Práce s literaturou JabRef
- Vizualizace dat - gnuplot/Python/Jupyter notebook
### Call #1 (23. 1. 2024, 17:30-18:30):
- Editace `~./bashrc`, například: `export NX="<cesta k adresari>"`
- `qsub, qdel, qstat` - pro submitovaní jobů
### 2. Druhý skupinový meeting ():
- Definice derivace, hledání minima (příklady: $x^2, x^3-3x$)
- Kvantově chemické výpočty programem Gaussian metodou Hartre-Fock
### Individuální meeting
- Výsledky disociačních křivek
### 3. Druhý skupinový meeting (30. 4. 2024 17:00-18:30):
- Jupyter Notebooku - ML fit $H_2$ křivky
- Roadmap projektů
- Absorpční spektra
- Neadiabatická molekulová dynamika
- Strojové učení
___
### Archiv domácích úkolů
#### #1 bash
Základní info:
- pokud chcete použít předchozí příkaz, nemusíte ho psát znova, stačí použít šipky nahoru/dolů
- k zobrazení nápovědy nějakého příkazu můžete použít `man <prikaz>`
1. Manipulace se soubory a adresáři
1. Vytvořte adresář s názvem `bash` příkazem `mkdir <jmeno>` (make directory), název se vám ale nelíbí, takže ho změňte na `testing_bash` příkazem `mv <stary> <novy>` (move)
2. Přejděte do adresáře příkazem `cd <jmeno>` (change directory) a ověřte, že je prázdný `ls` (list), zkuste také příkaz `cd` bez jména adresáře, vrátíte se zpět do domovského adresáře, což si můžete ověřit příkazem `pwd` (print working directory), zpět se vrátíte `cd -` nebo `cd <jmeno>`.
3. Vypište si na standardní výstup text příkazem `echo "Test 1"`, poté zkuste znovu, ale přesměrujte jej do souboru `echo "Test 1" > test.txt`.
4. Ověřte, že se vám soubor vytvořil, vyzkoušejte různé pepínače, např.: `ls -l`, `ls -a`, `ls -lh`
5. Zkuste `echo "Test 2" > test.txt` a podívejte se, na obsah souboru, poté zkuste `echo "Test 2" >> test.txt` - teď by mělo být jasné jaký je rozdíl mezi `>` a `>>`.
6. Zkopírujte si soubor `dyn.out` z `/home/jakubm/OtevrenaVeda/` příkazem `cp <cesta k souboru> <cesta kam>`,
7. Vytvořte si ještě jednu kopii s názvem `dyn.out_bk` (zkontrolujte pomocí `ls`), původní soubor smažte pomocí `rm` (remove)
8. Soubor si přejmenujte na `dyn.out` pomocí `mv`.
2. Práce s textem
1. Soubor `dyn.out` obsahuje část trajektorie na, na kterou jsme se dívali, do souboru se můžete podívat pomocí `vim` můžete si zkusit něco změnit poté co se dostanete do editačního módu stiskem `i`. Soubor ale nechceme měnit, takže bez úprav můžete odejít pomocí stisku `Esc` a `:q!`
2. Na trajektorii se můžete podívat pomocí jednoduchého programu `molden <jmeno>`, soubor je ale ve špatném formátu a nic se vám nenačte, zavřete tedy pomocí lebky (křížek nefunguje) a použijte perlový skript pro transformaci `/home/jakubm/NX-2.4-B06/bin/dynout2xyz.pl`, vytvořil se vám soubor dyn.xyz, nyní bychom se chtěli podívat, co se s ním stalo. Můžeme použít vim, ale je i jednodušší způsob
3. Příkazem `cat <jmeno>` (concatenate) zobrazte obsah souborů. Zjistili jste, že jsou velmi dlouhé a chtěi byste zobrazit pouze první řádky, ppoužijte příkazy `head <jmeno>` a `tail <jmeno>`, zkuste také kolik prvních řáků chcete zobrazit `head -20 <jmeno>`. Zjistili jste, že `dyn.out` obsahuje nějaké řádky navíc, zkuste nyní použít `molden` pro zobrazení trajektorie, vyzkoušejte si jaké má funkcionality.
4. Zajímá nás potenciální energie, která je v `dyn.out` vždy pod souřadnicemi a rychlostmi molekuly. Můžete si všimnout, že na začátku řádky se vždy nachází znak `%`, toho můžeme šikovně využít příkazem `grep "%" dyn.out` (global regular expression print). Poslední řádek je potenciální energie, chtěli bychom tento sloupeček uložit do nějakého souboru, začneme tedy příkazy řetězit to se udělá pomocí `|` mezi příkazy, tedy: `grep "%" dyn.out | awk '{print $5}` - tím říkáme, že chceme vytisknout 5. sloupec. Chceme jej ale do souboru, takže přidejte `> jmeno`.
5. Chtěli bychom se podívat, jak se nám potenciální energie mění podél trajektorie, použijte program `gnuplot`, dostanete se do prostredi, kde muzete zadat `plot '<jmeno souboru>' using 1` a zobrazí se vám vývoj v čase - to je jednoduchý způsob jak si rychle kontrolovat výsledky.
3. Psaní skriptů
1. Je výhodné jednotlivé příkazy psát do spustitelných souborů - psát skripty. Vytvořte si proto soubor `make_dirs.sh` a do nej napište příkazy pro vytvoření 20 adresářů pojmenovaných `GEOM_N` kde `N` bude číslo adresáře. Nejdřív musíte soubor udělat "spustitelným", podívejte se nejřív na práva příkazem `ls -l` levá písmena označují práva pro `r = read`, `w = write`, `x = execute`, použijte `chmod +x make_dirs.sh`. Když vypíšete `ls -l` měl by se vám soubor zobrazit jinou barvou a uvidíte, že jsou všude `x` a je tedy spustelný.
2. Použijte `for` cyklus, zkuste si nejdriv spustit `./make_dirs.sh` (všimněte si, že na prvním řádku říkáme, že používáme bash, stejně tak je možné napsat skript v pythonu):
```
#!/bin/bash
for i in {1..20}; do
echo "${i}"
# tohle je komentar
done
```
3. Napište skript, který do vytvořených adresářů nakopíruje příslušné geometrie tak, jak jdou v souboru `dyn.out` po sobě, tedy to co je pod: `New geometry:`. Dále bychom v jednotlivých adresářích chtěli separátní soubory pro kinetickou, potenciální a celkovou energii (tedy to co jsme si dřív tzv. vygrepovali). V adresáři tedy budeme mít: `geom.dat`, `en_pot.dat`, `en_tot.da`, `en_kin.dat`.
#### #2 Gaussian 1
Užitečné odkazy:
- [Tabulované hodnoty](https://cccbdb.nist.gov/exp2x.asp?casno=1333740&charge=0)
- [Převod jednotek](https://www.justintools.com/unit-conversion/energy.php?k1=atomic-unit-of-energy&k2=electron-volt)
Každý bude mít jiné parametry výpočtů:
- HS:
- RHF/STO-3G
- RHF/3-21G
- ON:
- RHF/cc-pVDZ
- UHF/STO-3G
- ZL:
- UHF/3-21G
- UHF/cc-pVDZ
1. Přečtěte si kapitoly o variačním principu v kvantové chemii. (např. v [Jensen 3.2](http://ktrungthuy.free.fr/SACH-BOOKS/Computational%20Chemistry/Introduction%20to%20computational%20chemistry.pdf), [Slavicek 9.1](https://photox.vscht.cz/old/files/Kvantova_chemie_27-04-2020_COLOR.pdf), [Cramer 4.4.2](http://lqtc.fcien.edu.uy/cursos/Fq2/2009/libros/Essentials%20of%20Computational%20Chemistry%20Theories%20and%20Models%202d%20Ed%20-%20Christopher%20J.%20Cramer.pdf)), [Wikipedie](https://en.wikipedia.org/wiki/Variational_method_(quantum_mechanics)) a pokuste se odpovědět na otázky (je to obtížné, pokud něčemu nerozumíte, zkuste se zeptat ChatGPT):
1. Popište variační princip v kvantové chemii, co to je a proč je důležitý?
2. Jaké parametry se v rámci variačních metod minimalizují?
- v následujích úlohách se snažte používat skripty v bashi (např. pro vytvoření souborů s geometriemi, zadávání výpočtů a extrakci výsledných hodnot)
2. Vytvořte 25 souborů se souřadnicemi molekuly H$_2$, místo $x$ doplňte $\{0.3, 0.4, ..., 2.7\}$ (dávejte si pozor, že desetinná čísla obsahují tečky, nikoliv čárky)
```
%Chk=h2
# RHF/STO-3G Geom=NoCrowd Guess=Mix
vodik disociace
0 1
H 0.0 0.0 0.0
H x 0.0 0.0
```
3. Samotné výpočty provádějte buď v jednom adresáři nebo každý ve vlastním. Spusťte výpočet metodou HF (`G16 <input_file> 1`) pro zadané metody (RHF/UHF) a báze (STO-3G, 3-21G, cc-pVDZ)
4. Z outputových souborů vytáhněte energie a zobrazte je do grafu, kde na $x$ bude vzdálenost H$_2$ a $y$ bude (elektronová) energie.
5. Identifikujte, jaká vzdálenost odpovídá nejnižší energii a výsledek porovnejte s experimentální hodnotou. (jednak identifikujte, jaký výpočet, a tedy jaká vzdálenost, odpovídá nejnižší energii, jednak proložte body křivkou a určete minimum)
6. Určete disociační energii (tedy energii, kterou musíme dodat, aby došlo k disociaci molekuly) a porovnejte ji s experimentalní hodnotou.
7. Porovnejte výsledky pro různé báze (STO-3G, 3-21G, cc-pVDZ). Jaký vliv má velikost báze na přesnost výsledku? (Jak na disociační energii, tak na vzdálenosti)
8. Porovnejte výsledky obou metod: RHF, UHF. Jak se liší a co která popisuje správně.
9. Která báze dává nejlepší výsledky? Souvisí to nějak s variačním principem?
10. (BONUS) Pokud chcete zkusit nějaký přesnější výpočet, zkuste použít místo `RHF` `CCSD` jedná se o rodinu nejpřesnějších metod vyvinutých českými kvantovými chemiky, tzv. [metoda spřažených klastrů](https://cs.wikipedia.org/wiki/Metoda_v%C3%A1zan%C3%BDch_klastr%C5%AF).
11. (BONUS) Pokud máte hotovo, ale chtěli byste se dozvědět něco o zajímavějších molekulách, zkuste postup zopakovat pro molekuly O$_2$ a N$_2$. (Můžete použít klíčové slovo `Scan` a vše provést v jednom výpočtu). Např.:
```
# UHF/STO-3G Scan Geom=NoCrowd Guess=Mix NoSymm
disociace
0 1
o
o 1 hh2
hh2 = 2.5 20 -0.1
```
#### #3 Gaussian 2
- Už víte, jak zadávat výpočty Gaussianem a udělali jsme si sken hyperplochy potenciální energie pro molekulu vodíku. Teď se trochu podíváme ještě na teorii chemické vazby.
1. Zkuste se zamyslet, zda vzdálenost atomu v molekule $H_2^+$ bude větší či menší než u $H_2$ a proč (souvisí to částečně s Coulombovskou interakcí nábojů).
```
h2
1 2 # 1 - naboj, 2 - multiplicita, spocita se: M=2S+1, celkovy spin
je nyni S=1/2, tedy M=2 (dublet)
h
h 1 hh2
```
2. Zjistěte, zda je ion $H_2^+$ stabilní molekulou. Výpočtem zjistěte jeho disociační energii (nejpřesnější výsledek dostanete metodou CID v bázi cc=pVQZ) a porovnejte ji s $H_2$ (4.46 eV, [Cheng et. al.](https://doi.org/10.1103/PhysRevLett.121.013001)). Odpovídá to silnější nebo slabší vazbě?
3. Výpočtem zjistěte, zda může existovat molekula $He_2$ a $He_2^+$.
4. Spočtěte první 2 excitované stavy molekuly vodíku $H_2$. Co nastane v situaci, kdy $H_2$ absorbuje záření a jeden elektron přejde na vyšší hladinu (použijte k tomu klíčové slovo TD)? Zkuste udělat výpočty jak pro paralelní, tak antiparalelní spiny (tyto stavy se liší multiplicitou M=1 singlet - antiparalelni spiny, M=3 triplet = paralelni spiny)
```
TD=(Root=1,NStates=2)
```