Reihenfolge der chemnum-Nummerierung ändern

Fragen und Probleme, die nicht den obigen Kategorien zugeordnet werden können


Benutzeravatar
lunen
Forum-Anfänger
Forum-Anfänger
Beiträge: 21
Registriert: Mi 18. Mai 2016, 23:37

Reihenfolge der chemnum-Nummerierung ändern

Beitrag von lunen »

Hi,

Ich bin ein wenig am ausprobieren von verscheidenen Lösungen um chemische Strukturen zu nummerieren. Bisher sehr gut gefällt mir das Paket chemnum. Ich weiss, dass laut Dokumentation die Nummerierung mit der ersten referenzierten Verbindung beginnt.
Nun habe ich aber eine Satzkonstuktion in einem Protokoll gefunden, die das ganze ins wanken bringt:
\documentclass[a4paper,11pt, titlepage]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage{ngerman}
\usepackage{textcomp}
\usepackage{amsmath}
\usepackage[super, comma, numbers, square, sort]{natbib} 
\usepackage{chemfig}
\usepackage{titlesec}
\usepackage{url}
\usepackage{graphicx}
\usepackage{color}
\usepackage{caption}
\usepackage{pdfpages}
\usepackage{a4wide}
\usepackage{chemnum}
%----------------------------------------------------------------------------------
    
\setatomsep{1.8em} %atome nicht so nah beieinander
\usetikzlibrary{arrows} %pfeile
\renewcommand*\printatom[1]{\ensuremath{\mathsf{#1}}} %serifenlose Schrift in Molekülen

    %anpassung von \chemfig
  %----------------------------------

\titleformat{\chapter}{\Huge\bfseries}{\thechapter.}{20pt}{\Huge\bfseries} %keine überschrift "kapitel" und nummereirung direkt vor der überschrift

\linespread{1,5}\selectfont %1.5 zeilenabstand 

\setlength{\abovecaptionskip}{10 px} %tabellenüberschriften mit etwas abstand

\setlength{\parindent}{0em} %vermeidet einrückungen nach gleichungen etc

    %allgemeine anpassung des Text/formats
    

\begin{document}


\sffamily %schriftart


%----------------------------------------------------------------------------------

\section{Einführung}
So sieht es aus:

In diesem Protokoll wird eine zweistufige Synthese von \textit{N}-(7-Methyl-1,8-naphthyridin-2-yl)acrylamid \cmpd{stufe2} über die Zwischenstufe 2-Amino-7-methylnaphthyridinamin \cmpd{stufe1} dargestellt. 


\begin{center}   
\scriptsize\setbondoffset{1pt}\setatomsep{2em}\setcompoundsep{4em}\setarrowdefault{0,1.5}
\schemestart
\chemfig{*6(-=-(-[:30]@{stick}\lewis{2, N}(-[:0]H)(-[:-90]H))=N-(-[:150]H_2N)=)}
\arrow{->}
  \chemname{\chemfig{*6(=-(*6(-=-(-[:30]@{stickstoff2}\lewis{6, N}(-[:90]H)(-[:-30]H))=N--))=-N=(-[:150])-)}}{\cmpd{stufe1}}
    \arrow{->}
 \chemname{\chemfig{*6(=-(*6(-=-(-[:30]N(-[:90]H)(-[:-30](=[:-90]O)-[:30]=[:-30]))=N--))=-N=(-[:150])-)}}{\cmpd{stufe2}}
\schemestop
\end{center}

So sollte es werden:

In diesem Protokoll wird eine zweistufige Synthese von \textit{N}-(7-Methyl-1,8-naphthyridin-2-yl)acrylamid \textbf{2} über die Zwischenstufe 2-Amino-7-methylnaphthyridinamin \textbf{1} dargestellt. 
\begin{center}
\scriptsize\setbondoffset{1pt}\setatomsep{2em}\setcompoundsep{4em}\setarrowdefault{0,1.5}
\schemestart
\chemfig{*6(-=-(-[:30]@{stick}\lewis{2, N}(-[:0]H)(-[:-90]H))=N-(-[:150]H_2N)=)}
\arrow{->}
  \chemname{\chemfig{*6(=-(*6(-=-(-[:30]@{stickstoff2}\lewis{6, N}(-[:90]H)(-[:-30]H))=N--))=-N=(-[:150])-)}}{\textbf{1}}
    \arrow{->}
 \chemname{\chemfig{*6(=-(*6(-=-(-[:30]N(-[:90]H)(-[:-30](=[:-90]O)-[:30]=[:-30]))=N--))=-N=(-[:150])-)}}{\textbf{2}}
\schemestop

\end{center}

\end{document}
Die Nummerierung ist in soweit korrekt, dass sie stringent durchgezogen wird, jedoch wird spätestens bei der Reaktion klar, warum das nur suboptimal ist:

Es ist in der Reihenfolge unlogisch, dass Verbindung 2 mit verbindung 1 reagiert.
In dem Schema darunter habe ich die Markierungen "per hand" gesetzt, um zu zeigen, wie ich es mir vorgestellt habe.

Gibt es eine mehr oder weniger elegante Lösung dafür, ausser dass ich den Satz umformuliere?

Danke,
Gruss,
Lunen

markusv
Forum-Meister
Forum-Meister
Beiträge: 947
Registriert: Do 3. Sep 2015, 17:20
Wohnort: Leipzig

Beitrag von markusv »

Eine quick-and-dirty-Lösung könnte die Verwendung von
\cmpd*{stufe1}\cmpd{stufe2}

anstelle der ersten Referenzierung sein.

Damit wird stufe1 bereits vor stufe2 referenziert, aber nicht gesetzt.

Im Code:
\documentclass[a4paper,11pt, titlepage]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage{ngerman}
\usepackage{textcomp}
\usepackage{amsmath}
\usepackage[super, comma, numbers, square, sort]{natbib} 
\usepackage{chemfig}
\usepackage{titlesec}
\usepackage{url}
\usepackage{graphicx}
\usepackage{color}
\usepackage{caption}
\usepackage{pdfpages}
\usepackage{a4wide}
\usepackage{chemnum}
%----------------------------------------------------------------------------------
    
\setatomsep{1.8em} %atome nicht so nah beieinander
\usetikzlibrary{arrows} %pfeile
\renewcommand*\printatom[1]{\ensuremath{\mathsf{#1}}} %serifenlose Schrift in Molekülen

    %anpassung von \chemfig
  %----------------------------------

\titleformat{\chapter}{\Huge\bfseries}{\thechapter.}{20pt}{\Huge\bfseries} %keine überschrift "kapitel" und nummereirung direkt vor der überschrift

\linespread{1,5}\selectfont %1.5 zeilenabstand 

\setlength{\abovecaptionskip}{10 px} %tabellenüberschriften mit etwas abstand

\setlength{\parindent}{0em} %vermeidet einrückungen nach gleichungen etc

    %allgemeine anpassung des Text/formats
    

\begin{document}


\sffamily %schriftart


%----------------------------------------------------------------------------------

\section{Einführung}
So sieht es aus:

In diesem Protokoll wird eine zweistufige Synthese von \textit{N}-(7-Methyl-1,8-naphthyridin-2-yl)acrylamid \cmpd*{stufe1}\cmpd{stufe2} über die Zwischenstufe 2-Amino-7-methylnaphthyridinamin \cmpd{stufe1} dargestellt. 
\begin{center}   
\scriptsize\setbondoffset{1pt}\setatomsep{2em}\setcompoundsep{4em}\setarrowdefault{0,1.5}
\schemestart
\chemfig{*6(-=-(-[:30]@{stick}\lewis{2, N}(-[:0]H)(-[:-90]H))=N-(-[:150]H_2N)=)}
\arrow{->}
  \chemname{\chemfig{*6(=-(*6(-=-(-[:30]@{stickstoff2}\lewis{6, N}(-[:90]H)(-[:-30]H))=N--))=-N=(-[:150])-)}}{\cmpd{stufe1}}
    \arrow{->}
 \chemname{\chemfig{*6(=-(*6(-=-(-[:30]N(-[:90]H)(-[:-30](=[:-90]O)-[:30]=[:-30]))=N--))=-N=(-[:150])-)}}{\cmpd{stufe2}}
\schemestop
\end{center}
\end{document}
Wäre Microsoft Word für das Schreiben von Büchern entwickelt worden,
würde es Microsoft Book heißen.

Unkomplizierte und schnelle LaTeX-Hilfe, bspw. Erstellung von Vorlagen und Bewerbungen:
Help-LaTeX@web.de

Benutzeravatar
lunen
Forum-Anfänger
Forum-Anfänger
Beiträge: 21
Registriert: Mi 18. Mai 2016, 23:37

Beitrag von lunen »

Danke schön.

Antworten