Dreifachbindung bei ChemFig

Formelsatz für Mathematik, Naturwissenschaften und Technik


Ferghun
Forum-Anfänger
Forum-Anfänger
Beiträge: 20
Registriert: Fr 8. Apr 2011, 13:14
Wohnort: Dortmund

Dreifachbindung bei ChemFig

Beitrag von Ferghun »

Hallo,

Tjaja, ich stelle schon oft Fragen. Ich versuche es ja mit viel lesen und ausprobieren und logisch denken, aber das folgende kann ich mir nicht erklären:
\documentclass{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{chemfig}
\usepackage[version=3]{mhchem}
\usepackage{mychemistry}

\setatomsep{1.8em}
\setcrambond{3pt}{0.5pt}{1pt}

\begin{document}
\chemfig{N~[:30]N-[:30](-[:120])(-[:60])-[:-30]N=[:30]N-[:-30]-[:30]N~[:30]N}
\end{document}
Warum wertet TeX die linken Tilde als Leerschritt und die rechte Tilde als Dreifachbindung?
Warum wertet TeX beide Tilden als Leerschritte, wenn ich "(-[:120])(-[:60])" weglasse?
Wie kriege ich es hin, dass beides Dreifachbindungen sind?

Benutzeravatar
cgnieder
Forum-Meister
Forum-Meister
Beiträge: 730
Registriert: Fr 22. Okt 2010, 18:37
Wohnort: Herrenberg
Kontaktdaten:

Beitrag von cgnieder »

Erstens: durch Laden von mychemistry werden chemfig und mhchem (version=3) automatisch geladen und brauchen nicht mehr extra geladen werden.

Zweitens: bei mir läuft Dein Beispiel fehlerfrei durch und produziert zwei Dreifachbindungen.

Hast Du eine aktuelle Version (0.4a) von ChemFig?
Clemens
Paketauthor

Ferghun
Forum-Anfänger
Forum-Anfänger
Beiträge: 20
Registriert: Fr 8. Apr 2011, 13:14
Wohnort: Dortmund

Beitrag von Ferghun »

So sehe ich das (zwei Methyl-Gruppen habe ich schon wieder eingefügt):
Bild

Mmmh. Wo kann ich das nachschauen?

Im Package Manager steht "packaged: 08.04.2011". Habe seit ungefähr 2 Wochen LaTeX.

Vielleicht siehst du ein paar Fehler darin in welcher Reihenfolge und was ich installiert habe:
Acrobat Reader 8.1.2
MiKTeX 2.9
Ghostscript 9.01
FreePDF 4.04
TeXnicCenter 1 RC 1

Danach Updates durchgeführt, "Update Formats" und "Refresh FNDB". MyChemistry müsste in der aktuellsten Version vorliegen, außer MiKTeX macht das nicht, wenn ich den Button drücke: "Update"

Benutzeravatar
cgnieder
Forum-Meister
Forum-Meister
Beiträge: 730
Registriert: Fr 22. Okt 2010, 18:37
Wohnort: Herrenberg
Kontaktdaten:

Beitrag von cgnieder »

An den Programmen wird's nicht liegen.

Am 10.04.2011 gab es ein Update von ChemFig mit bugfixes... http://www.ctan.org/tex-archive/macros/ ... ib/chemfig

Bei Dir sieht es aus, als ob
N~[:30]
als Atom interpretiert wird. Versuch mal, den Stickstoff in geschweifte Klammern zu setzen:
\chemfig{{N}~[:30]N-[:30](-[:120])(-[:60])-[:-30]N=[:30]N-[:-30]-[:30]N~[:30]N}
Clemens
Paketauthor

Ferghun
Forum-Anfänger
Forum-Anfänger
Beiträge: 20
Registriert: Fr 8. Apr 2011, 13:14
Wohnort: Dortmund

Beitrag von Ferghun »

Egal wo ich geschweifte Klammern setze, es will und will nicht funktionieren. Die 0.4a Version habe ich jetzt auch auf jeden Fall, aber das hat an speziell diesem Problem nichts verändert.
Komisch ist natürlich, warum die zweite Dreifachbindung hinhaut, aber die erste nicht.

Eine Version hat nun letztendlich funktioniert, und zwar wenn man wieder mit draw=none arbeitet. = )
\documentclass{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{mychemistry}

\setatomsep{1.8em}
\setcrambond{3pt}{0.5pt}{1pt}

\begin{document} 
\chemfig{([0,.01,,,draw=none])N~[:30]N-[:30](-[:120])(-[:60])-[:-30]N=[:30]N-[:-30](-[:-120])(-[:-60])-[:30]N~[:30]N}
\end{document}
Vielen Dank für die Hilfestellung! Jetzt ist das package ja auch auf dem neusten Stand. :D

Benutzeravatar
cgnieder
Forum-Meister
Forum-Meister
Beiträge: 730
Registriert: Fr 22. Okt 2010, 18:37
Wohnort: Herrenberg
Kontaktdaten:

Beitrag von cgnieder »

Ich bin etwas ratlos.
Vielleicht kannst Du zu Deinem ersten Beispiel mal eine log-Datei posten?

Wie erwähnt: wenn ich Dein erstes Beispiel durchlaufen lasse, sieht alles aus, wie es soll.
Clemens
Paketauthor

Ferghun
Forum-Anfänger
Forum-Anfänger
Beiträge: 20
Registriert: Fr 8. Apr 2011, 13:14
Wohnort: Dortmund

Beitrag von Ferghun »

Okay, also jetzt folgende Datei:
\documentclass{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{mychemistry}

\setatomsep{1.8em}
\setcrambond{3pt}{0.5pt}{1pt}
\setarrowlength{4em}

\begin{document}
\begin{rxn}
\reactand{\chemfig{N~[:30]N-[:30](-[:120])(-[:60])-[:-30]N=[:30]N-[:-30](-[:-120])(-[:-60])-[:30]N~[:30]N}}{}
\arrow[type={->}]{$\Delta$}{}
\reactand{2}
\reactand{\chemfig{N~[:30]N-[:30]\lewis{1.,C}(-[:90])-[:-30]}}{}
\chemand
\reactand{\ce{N2}}{}
\end{rxn}
\end{document}
Ich hoffe du kannst .rar-Dateien entpacken. Hatte schon sehr sehr oft böse Rückmeldung wegen dem Datei-Format bekommen. ;D
Dateianhänge
AIBN.rar
die entsprechende log-Datei
(21.75 KiB) 382-mal heruntergeladen

Benutzeravatar
cgnieder
Forum-Meister
Forum-Meister
Beiträge: 730
Registriert: Fr 22. Okt 2010, 18:37
Wohnort: Herrenberg
Kontaktdaten:

Beitrag von cgnieder »

Ah jetzt ja! Du hast beim ersten Mal offenbar kein echtes Minimalbeispiel gepostet. Jetzt kann ich den Fehler reproduzieren. Er liegt offensichtlich bei myChemistry, wie man hier sehen kann:
\documentclass{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{mychemistry}

\setatomsep{1.8em}
\setcrambond{3pt}{0.5pt}{1pt}
\setarrowlength{4em}

\begin{document}
\begin{rxn}
\reactand{\chemfig{N~[:30]N-[:30](-[:120])(-[:60])-[:-30]N=[:30]N-[:-30](-[:-120])(-[:-60])-[:30]N~[:30]N}}
\arrow{$\Delta$}{}
\reactand{2}
\reactand{\chemfig{N~[:30]N-[:30]\lewis{1.,C}(-[:90])-[:-30]}}
\chemand
\reactand{\ce{N2}}
\end{rxn}

\chemfig{N~[:30]N-[:30](-[:120])(-[:60])-[:-30]N=[:30]N-[:-30](-[:-120])(-[:-60])-[:30]N~[:30]N}\chemrel[$\Delta$]{->}2 \chemfig{N~[:30]N-[:30]\lewis{1.,C}(-[:90])-[:-30]}\chemsign+\ce{H2}

\end{document}
Ich werde dem auf den Grund gehen. Dann gibt es wohl bald ein Update von myChemistry geben.

BTW:
\reactand{}
hat nur ein Argument und
\arrow{}{}
hat als Default den type={->}.
Clemens
Paketauthor

Benutzeravatar
cgnieder
Forum-Meister
Forum-Meister
Beiträge: 730
Registriert: Fr 22. Okt 2010, 18:37
Wohnort: Herrenberg
Kontaktdaten:

Beitrag von cgnieder »

Vorläufige Lösung: ein paar Klammern () vor der ersten Dreifachbindung. Nach dem Klammerpaar geht es seltsamerweise, deshalb hatte das Molekül bei Dir an der zweiten Stelle auch die richtige Bindung.
\documentclass{scrartcl}
\usepackage{mychemistry}
\begin{document}
\begin{rxn}
\reactand{\chemfig{~[:30]}}
\end{rxn}
vs.
\begin{rxn}
\reactand{\chemfig{()~[:30]}}
\end{rxn}
\end{document}
Clemens
Paketauthor

Ferghun
Forum-Anfänger
Forum-Anfänger
Beiträge: 20
Registriert: Fr 8. Apr 2011, 13:14
Wohnort: Dortmund

Beitrag von Ferghun »

Vielen Dank! Das ist wohl eine sehr ungewöhnliche Lösung, aber effektiv. :D

Antworten