Seite 1 von 1
Chemie: Kopplungskonstanten
Verfasst: Fr 20. Nov 2015, 09:56
von lisa7147
Hallo,
für meine Chemie-Protokolle muss ich NMRs auswerten und dann angeben. Dafür benutze ich die experimental-Umgebung, die mir an sich keine Schwierigkeiten bereitet
Jedoch muss ich die Kopplungskonstanten so angeben, dass die koppelnden Kerne nach dem J tiefgestellt sind. Mit dem \J-Befehl kommen die aber auf Höhe des J in Klammern
Hier mal ein kurzes Minimalbeispiel, wie ich die experimental-Umgebung definiert habe:
\documentclass[
parskip,
12pt
]{scrartcl}
\usepackage[ngerman]{babel}
\usepackage{amsmath, amssymb, textcomp,chemnum }
\usepackage[ngerman]{chemmacros}
\usepackage{siunitx}
\usepackage{gensymb}
\begin{document}
\sisetup{separate-uncertainty,per-mode=symbol,detect-all,range-phrase=--}
\begin{experimental}[delta=[ppm],list=true,use-equal, pos-number=sub]
\NMR{1, H}(400)[\textrm{D2O}] \val{2.01} (s, \#{24}, \pos{1}, \J(3; H1, H2)[\hertz]{6.0}).
\end{experimental}
\end{document}
Die (H1, H2) sollen also ohne Klammern tiefgestellt werden. Gibt es dafür eine Option? Ich bin im chemmacros-Paket nicht fündig geworden
Im Voraus schon einmal vielen Dank!!!

Beispiel auf Lauffähigkeit prüfen
Verfasst: Fr 20. Nov 2015, 19:21
von Beobachter
Das Beispiel läuft nicht und erzeugt folgende Meldung (s. Protokolldatei *.log). Es kann also nicht als
Minimalbeispiel bezeichnet werden.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!
/tmp/chm.tex: chemmacros error: "undefined"
!
! The environment `experimental' is undefined. You need to load the
! `spectroscopy' module.
!
! See the chemmacros documentation for further information.
!
! Type <return> to continue.
!...............................................
Wie Module geladen werden, ist in Teil III der Anleitung zu »
chemmacros« nachzulesen.
\documentclass[
fontsize=12pt,
parskip=full,
ngerman
]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage{selinput}
\SelectInputMappings{
adieresis={ä},
germandbls={ß}
}
\usepackage{babel}
\usepackage{chemmacros}
\chemsetup{modules=spectroscopy}
\usepackage{siunitx}
\sisetup{
detect-all,
separate-uncertainty,
per-mode=symbol,
range-phrase=--
}
\begin{document}
\begin{experimental}[delta=[ppm],list=true,use-equal, pos-number=sub]
\NMR{1, H}(400)[\textrm{D2O}] \val{2.01} (s, \#{24}, \pos{1}, \J(3; H1, H2)[\hertz]{6.0}).
\end{experimental}
\end{document}
Da »
chemmacros« in der Syntax von LaTeX3 geschrieben ist, kommt für brauchbare Hilfe nur jemand in Frage, der sich damit auskennt. Das könnte auch der Autor selbst sein (
cgnieder).
Verfasst: Sa 21. Nov 2015, 11:13
von cgnieder
Ich glaube, Du suchst einfach
\chemsetup{spectroscopy/coupling-pos = sub}
Grüße
Verfasst: Sa 21. Nov 2015, 14:46
von cgnieder
Die folgende Datei sollte mit chemmacros v4 und v5 laufen:
\documentclass[
fontsize=12pt,
parskip=full,
ngerman
]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage{selinput}
\SelectInputMappings{
adieresis={ä},
germandbls={ß}
}
\usepackage{babel}
\usepackage{chemmacros}
\providecommand\IfChemCompatibilityTF[4]{#4}
\IfChemCompatibilityTF{>=}{5.0}{
\chemsetup{
modules = spectroscopy ,
spectroscopy/coupling-pos = sub
}
}{
\chemsetup{ nmr/coupling-pos = sub }
}
\usepackage{siunitx}
\sisetup{
detect-all,
separate-uncertainty,
per-mode=symbol,
range-phrase=--
}
\begin{document}
\begin{experimental}[delta=[ppm],list=true,use-equal, pos-number=sub]
\NMR{1, H}(400)[D2O] \val{2.01} (s, \#{24}, \pos{1}, \J(3; H1, H2)[\hertz]{6.0}).
\end{experimental}
\end{document}
Grüße
Verfasst: Mo 23. Nov 2015, 10:34
von lisa7147
Verfasst: So 27. Dez 2015, 11:24
von lisa7147
@Clemens
Hallo, ich hätte noch eine Frage:
Kann man bei der Anzahl der H-Atome den Abstand verkleinern?
Also dass bei deinem Beispiel \#{24} der Abstand bei 24 H kleiner wird?
In der chemmacros-Dokumentation habe ich nichts dazu gefunden. Mir scheint, dass in den dort aufgeführten Beispielen der Abstand allgemein geringer ist...
Vielen Dank schon einmal im Vorraus

Verfasst: Mi 30. Dez 2015, 09:57
von lisa7147
Weiß jemand da zufällig die Antwort? Bin bei meinen Recherchen nicht fündig geworden...
Verfasst: Mi 30. Dez 2015, 14:38
von cgnieder
Der Abstand ist nicht konfigurierbar, das könnte ich aber ändern… Im Moment wird \, (was \thinspace entspricht) eingefügt. Man kann es durch manuelle Umdefinition des entsprechenden Makros ändern:
\documentclass{article}
\usepackage{chemmacros}
\chemsetup{ modules = spectroscopy }
\ExplSyntaxOn
\cs_set_protected:Npn \chemmacros_nmr_number:n #1
{
\__chemmacros_nmr_number:n {#1}
x % <<< das hier ändern, voreingestellt ist \, (= \thinspace)
\chemmacros_chemformula:V \g__chemmacros_nmr_element_tl
}
\ExplSyntaxOff
\begin{document}
\begin{experimental}
\NMR(600)[CDCl3] \val{2.01} (s, \#{24}, \pos{5})
\end{experimental}
\end{document}
Grüße
Verfasst: Do 31. Dez 2015, 10:20
von lisa7147
Achso, ok. Mich hat es wie gesagt gewundert, dass in der chemmacros-Dokumentation die Abstände generell kleiner waren. Aber du konntest mir bei meinem Problem mal wieder helfen!!!
Vielen Dank und einen guten Rutsch!!!!
