# 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` ![Screenshot from 2024-01-15 01-36-43](https://hackmd.io/_uploads/H1dvAxMFa.png) | 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) ```