PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Fragen zu AMSBOOK



joh
23-10-2008, 00:27
Hallo an alle,
kennt sich hier jemand ziemlich gut mit den AMS-Klassen aus?
Ich will ein Matheskript schreiben und das in amsbook. Allerdings würde ich gerne ein paar Dinge wie Kapitelnummerierung ändern bzw. vielleicht auch eigene Zähler einbauen für Definitionen und so... und ich finde beim besten Willen die Anworten auf meine Fragen nicht. ;)
Hab auch eine gewisse Erfahrung, hab schon ein Skript, zu meiner vollsten Unzufriedenheit, getippt und das möchte ich nun einfach mal besser machen, vorallem in Aussicht auf weitere Arbeiten und im weitesten Sinne für Diplomarbeit schon jetzt ne gute Grundlage legen... soviel zu dem Thema :rolleyes:
Und wenn es da in Latex in die tieferen Schichten geht bin ich dann doch etwas vorsichtig.

mfg joh

Stefan_K
23-10-2008, 01:19
Hallo joh,

AMS-LaTeX ist gut dokumentiert, hier (http://www.ams.org/tex/amslatex.html) finden sich Dokumentationen und z.B. FAQ. Hast Du dort schon nachgesehen?
Wenn Du konkrete Fragen hast, stelle sie doch einfach. ;)

Viele Grüße,

Stefan

voss
23-10-2008, 09:33
kennt sich hier jemand ziemlich gut mit den AMS-Klassen aus?
Ich will ein Matheskript schreiben und das in amsbook. Allerdings würde ich gerne ein paar Dinge wie Kapitelnummerierung ändern bzw. vielleicht auch eigene Zähler einbauen für Definitionen und so... und ich finde beim besten Willen die Anworten auf meine Fragen nicht. ;)


amsbook ist schon sehr speziell für die Bedürfnisse der AMS erstellt worden.
Du fährst besser, wenn du scrbook nimmst.

Herbert

joh
23-10-2008, 18:15
Mit ist klar das amsbook sehr speziell ist. Aber da es sich um ein Matheskript handelt passt das ja auch. Nur so Kleinigkeiten wollen manchmal irgendwie nicht...
Das mit dem "Zähler" für Definitionen hab ich inzwischen mit der \newtheorem Umgebung rausgefunden. Aber zum Beispiel, will ich das die Nummerierung wie folgt ist:

Kapitel 0
Section 0.1
Definition 0.1.1
Sie ist aber, wenn ich die Definition so \newtheorem{thm}{Satz}[section] einführe, ohne die Kapitelnummerierung:
Kapitel 0
Section 1
Definition 1.1
Das regele ich doch normalerweise mit \setcounter{\secnumdepth}{}, oder?
Wenn ich das ganze als scrbook mache dann tut es ja auch.
Das finde ich doch sehr seltsam.

Stefan_K
23-10-2008, 18:36
Hallo,

\secnumdepth beeinflusst die Tiefe, bis zu der die Gliederungsebenen nummeriert werden, nicht, auf welche Weise sie nummeriert werden.
Dass sections die Kapitelnummer vorangestellt erhalten sowie bei neuem Kapitel zurückgesetzt werden, was sich gleichzeitig wie gewünscht auf die Theoremnummerierung auswirkt, erreichst Du durch

\numberwithin{section}{chapter}

Stefan

voss
23-10-2008, 19:58
Mit ist klar das amsbook sehr speziell ist. Aber da es sich um ein Matheskript handelt passt das ja auch. Nur so Kleinigkeiten wollen manchmal irgendwie nicht...


du hast mich nicht verstanden ... es ist für die Bedürfnisse des Instituts erstellt
worden. Mit Mathe hat das primär nichts zu tun, denn dafür gibt es amsmath ...

Herbert

joh
23-10-2008, 21:32
Danke Stefan, funktioniert. Hatte ich auch schon mal gewusst wie das geht, aber leider wieder vergessen.
@voss: ok, da hast du natürlich recht, aber ich finde das ganze Paket eigentlich gut, bis auf verschiedene kleinere Dinge wie schon erwähnt. Oder kannst du mir Vorteile von scrbook gegebenüber amsbook aufzeigen. Lass mich gern überzeugen.
Was mir dabei auffällt: Ist das Koma-Script bei amsbook auch irgendwie mit eingebunden?

Ansonsten hätte ich noch eine Frage bezüglich des Indexes. Irgendwo hab ich gelesen, dass amsbook oder das package amsthm schon Befehle für den Index enthält und es glaub ich auch nicht mit makeindex kooperiert. Wisst ihr darüber was?

mfg joh

Stefan_K
23-10-2008, 21:40
Hallo,

amsbook hat nichts mit KOMA-Script zu tun. Die KOMA-Klassen wiederum bieten sehr viele gute Features und können natürlich amsmath verwenden, daher würde ich diese bevorzugen statt der speziellen amsbook-Klasse.
amsbook arbeitet mit makeindex zusammen. makeidx braucht man jedoch nicht einzubinden, \makeindex muss hingegen in die Präambel.

Stefan

joh
27-10-2008, 18:43
Wie kann man denn, zu Beginn einer Theorem Umgebung einen manuellen Zeilenumbruch einfügen?


\begin{bsp}
\textbf{a) Temperaturverteilung}
text
.
.
.
text
\end{bsp}
sollte so aussehen,

0.1 BEISPIEL
a) Temperaturverteilung
text
.
.
.
text
macht es aber nicht. Man kann das ja allgemein für das spezielle Theorem einstellen, will ich aber eigentlich nicht, weil es das ja dann bei jedem macht. Hier ist das aber ein Spezialfall.

Und wie immer vielen Dank für eure Hilfe!

Stefan_K
27-10-2008, 18:51
Hallo joh,

Du kannst \\ oder \newline verwenden. Falls die Meldung There's no line here to end auftreten sollte, wäre das durch \leavevmode oder ~ u.a. behebbar.

Stefan

joh
27-10-2008, 19:35
Okay, auf die Idee hätte ich auch selber kommen können. ;)

joh
27-10-2008, 19:44
Und gleich ein weiteres Problem hinterher. Und zwar hab ich hier ne Theoremumgebung.

\begin{defi}[Gleitkommaoperationen]
Für $x,y\in A$ definiere:
\begin{align*}
x\oplus y &= rd(x+y)\\
x\ominus y &= rd(x+y)\\
x\odot y &= rd(x\cdot y)\\
x\oslash y &= rd(x/y)
\end{align*}
\end{defi}

Aber als Fehlermeldung bekomme ich:

Illegal unit of measure (pt inserted). \begin{defi} (followed by: [Gleitkommaoperationen])
Ich versteh allerdings überhaupt nicht, wo der irgendne Längeneinheit haben will...

Stefan_K
27-10-2008, 19:53
Wie ist die defi-Umgebung definiert?

Stefan

joh
27-10-2008, 20:04
\newtheoremstyle{satz}% name
{3pt}% hSpace abovei
{3pt}% hSpace belowi
{}% Body font
{}% Indent amount
{\bfseries}% Theorem head font
{.}% Punctuation after theorem head
{}% Space after theorem head
{}% Theorem head spec (can be left empty, meaning `normal')

\theoremstyle{satz}
\newtheorem{defi}[thm]{Definition}
Ich bekomm diesen Fehler auch wenn ich nur schreibe

\begin{defi}
hallo
\end{defi}

joh
27-10-2008, 20:14
Ok, bin selber drauf gekommen.
Ich sollte schon sagen wieviel Platz frei bleiben soll nach dem Titel... :confused:
Manchmal sollte man einfach mal wohin gehen, dann nochmal anschauen.
Also Problem war da:

\newtheoremstyle{satz}% name
{3pt}% hSpace abovei
{3pt}% hSpace belowi
{}% Body font
{}% Indent amount
{\bfseries}% Theorem head font
{.}% Punctuation after theorem head
{.5em}% Space after theorem head
{}% Theorem head spec (can be left empty, meaning `normal')

\theoremstyle{satz}
\newtheorem{defi}[thm]{Definition}

joh
15-11-2008, 12:15
So ich hätte da mal noch ne neue Frage...
Und zwar benutze ich das amsthm-package für Definition etc. Kann ich die Nummerierung, die bei mir fortlaufend ist, von diesen Pkten in das Inhaltsverzeichnis aufnehmen? Und wenn ja, kann ich da auch welche auslassen?

Stefan_K
15-11-2008, 12:29
Hallo joh,

dafür kannst du \addcontentsline (http://weinelt.de/latex/addcontentsline.html) oder \addtocontents (http://weinelt.de/latex/addtocontents.html) verwenden.

Stefan

joh
15-11-2008, 14:49
Danke, funktioniert. Ist wohl nicht die eleganteste Lösung bzw. sollte man eigentlich vermeiden, oder? Muss aber leider sein. Da mein Prof. das Skript sehr seltsam aufbaut. :eek:

mfg jo

Stefan_K
15-11-2008, 15:21
Elegant oder nicht, letztlich geht es auf eines dieser beiden Kommandos zurück oder auf irgendein tex-Kommando zu Schreiben in die Datei. Man kann es evtl. automatisieren, z.B. durch Redefinition von amsthm-Interna, wenn man sich die Zeit zum Programmieren nehmen möchte.

Stefan

joh
18-12-2008, 21:33
Hallo,
ich hätte da mal wieder ne Frage. Und zwar nutze ich ja das amsthm-package und man kann da ja den Sätzen oder was auch immer nen Namen geben, also:

\begin{thm}[von Fubini]
\end{thm}
sieht ja dann so aus:

2.1 Satz (von Fubini)
So und ich möchte jetzt diesen Zusatz bearbeiten. Zum Beispiel, dass er auch fett geschrieben wird. Das müsste ich doch in der Theoremdefinition eingeben, oder?
Danke schonmal.

mechanicus
19-12-2008, 10:45
So und ich möchte jetzt diesen Zusatz bearbeiten. Zum Beispiel, dass er auch fett geschrieben wird. Das müsste ich doch in der Theoremdefinition eingeben, oder?
Danke schonmal.
Ja

Gruß
Marco

joh
20-12-2008, 19:46
Okay, Mechanicus, blöde Frage. :o
Kannst Du mir vielleicht auch noch sagen wie (;)) ich das ändern kann?

mechanicus
21-12-2008, 13:16
Hallo,

ich würde es so machen:

\documentclass{scrreprt}
\usepackage{amsmath,amsthm}
\newtheoremstyle{mystyle}% hnamei
{3pt}% hSpace above
{3pt}% hSpace below
{}% Body font
{}% Indent amount
{\itshape}% hTheorem head font
{:}% Punctuation after theorem head
{.5em}% Space after theorem head
{#1 #2 (\textbf{#3})}% Theorem head spec (can be left empty, meaning `normal')
\theoremstyle{mystyle}
\newtheorem{thm}{Theorem}[chapter]

\begin{document}
\chapter{foo}
text Formeln
\begin{thm}[von Fubini]
Sei \ldots
\end{thm}
\end{document}

Gruß
Marco

joh
22-12-2008, 19:27
Hi mchanicus,
danke für die Antwort. Habs jetzt auch gecheckt wie es funktioniert mit den verschieden nummern, also #1, #2 und #3.
Dein Beispiel funktioniert auch super. Leider tut es bei mir nicht. :(
Hier mal mein Header:


%-----------------------------------------
%Beginn des Kopfbereiches
%-----------------------------------------
\documentclass[a4paper,twoside,11pt,openright]{amsbook}


%Diese drei Pakete werden die Umlaute, Deutsche Silbentrennung etc. benötigt
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}


%Das Paket wird für den Zeilenabstand benötigt
\usepackage{setspace}


%Mathepakete
\usepackage{amsmath,amssymb,amsfonts,amsthm}
\usepackage{tikz}
\usepackage[arrow, matrix, curve]{xy}
\usepackage{bbm}


%Quellcode einfügen
\usepackage{listings}


%Regeln Kapitelnummerierungen
\setcounter{chapter}{-1}
\setcounter{secnumdepth}{3}
\numberwithin{section}{chapter}


%Umgebung für Definitionen, Sätze, etc.
\swapnumbers

\newtheoremstyle{bsp}% name
{10pt}% hSpace abovei
{10pt}% hSpace belowi
{}% Body font
{}% Indent amount
{\scshape}% Theorem head font
{:}% Punctuation after theorem head
{\newline}% Space after theorem head
{}% Theorem head spec (can be left empty, meaning `normal')

\newtheoremstyle{satz}% name
{10pt}% hSpace abovei
{10pt}% hSpace belowi
{\itshape}% Body font
{}% Indent amount
{\bfseries}% Theorem head font
{.}% Punctuation after theorem head
{.5em}% Space after theorem head
{}% Theorem head spec (can be left empty, meaning `normal')

\newtheoremstyle{definition}% name
{10pt}% hSpace abovei
{10pt}% hSpace belowi
{}% Body font
{}% Indent amount
{\bfseries}% Theorem head font
{.}% Punctuation after theorem head
{.5em}% Space after theorem head
{#1 #2 (\textbf{#3})}% Theorem head spec (can be left empty, meaning `normal')

\theoremstyle{satz}
\newtheorem{thm}{Satz}[chapter]
\newtheorem{prop}[thm]{Proposition}
\newtheorem{lem}[thm]{Lemma}
\newtheorem{cor}[thm]{Korollar}
\newtheorem{folg}[thm]{Folgerung}

\theoremstyle{definition}
\newtheorem{defi}[thm]{Definition}
\newtheorem{abs}[thm]{}

\theoremstyle{bsp}
\newtheorem{bsp}[thm]{Beispiel}
\newtheorem*{bspo}{Beispiel}
\newtheorem*{folgo}{Folgerung}
\newtheorem{bem}[thm]{Bemerkung}


%Kein Einrücken bei Absätzen
\setlength{\parindent}{0cm}


%Erweitert die Spaltenanzahl von Matrizen
\setcounter{MaxMatrixCols}{11}


%Index laden
\makeindex


%Erstellen und Bearbeiten von Verlinkungen
\usepackage[colorlinks=true,linkcolor=blue,urlcolor=blue,pdfst artview={FitV}]{hyperref}
%-----------------------------------------
%Ende des Kopfbereiches
%-----------------------------------------

Ich benutze ja wie man sieht amsbook. Aber ich hab das bei deinem Beispiel auch ersetzt, also die Klasse. Tat immer noch.
Siehst du da irgendwo nen Fehler? Also ich bekomme keine Fehlermeldung, es funktioniert einfach nur nicht.

mechanicus
22-12-2008, 21:40
Hallo Joh,

also das Problem ist swapnumbers. Ich habe es nun wie folgt gelöst:

%-----------------------------------------
%Beginn des Kopfbereiches
%-----------------------------------------
\documentclass[a4paper,twoside,11pt,openright]{amsbook}


%Diese drei Pakete werden die Umlaute, Deutsche Silbentrennung etc. benötigt
\usepackage[ansinew]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}


%Das Paket wird für den Zeilenabstand benötigt
\usepackage{setspace}


%Mathepakete
\usepackage{amsmath,amssymb,amsfonts}
\usepackage{tikz}
\usepackage[arrow, matrix, curve]{xy}
\usepackage{bbm}


%Quellcode einfügen
\usepackage{listings}


%Regeln Kapitelnummerierungen
\setcounter{chapter}{-1}
\setcounter{secnumdepth}{3}
\numberwithin{section}{chapter}


%Umgebung für Definitionen, Sätze, etc.
\usepackage{amsthm}
%\swapnumbers

\newtheoremstyle{bsp}% name
{10pt}% hSpace abovei
{10pt}% hSpace belowi
{}% Body font
{}% Indent amount
{\scshape}% Theorem head font
{:}% Punctuation after theorem head
{\newline}% Space after theorem head
{#2 #1 #3}% Theorem head spec (can be left empty, meaning `normal')

\newtheoremstyle{satz}% name
{10pt}% hSpace abovei
{10pt}% hSpace belowi
{\itshape}% Body font
{}% Indent amount
{\bfseries}% Theorem head font
{.}% Punctuation after theorem head
{.5em}% Space after theorem head
{#2 #1 #3}% Theorem head spec (can be left empty, meaning `normal')

\newtheoremstyle{definition}% name
{10pt}% hSpace abovei
{10pt}% hSpace belowi
{}% Body font
{}% Indent amount
{\bfseries}% Theorem head font
{.}% Punctuation after theorem head
{.5em}% Space after theorem head
{#2 #1 (\textbf{#3})}% Theorem head spec (can be left empty, meaning `normal')

\theoremstyle{satz}
\newtheorem{thm}{Satz}[chapter]
\newtheorem{prop}[thm]{Proposition}
\newtheorem{lem}[thm]{Lemma}
\newtheorem{cor}[thm]{Korollar}
\newtheorem{folg}[thm]{Folgerung}

\theoremstyle{definition}
\newtheorem{defi}[thm]{Definition}
\newtheorem{abs}[thm]{}

\theoremstyle{bsp}
\newtheorem{bsp}[thm]{Beispiel}
\newtheorem*{bspo}{Beispiel}
\newtheorem*{folgo}{Folgerung}
\newtheorem{bem}[thm]{Bemerkung}


%Kein Einrücken bei Absätzen
\setlength{\parindent}{0cm}


%Erweitert die Spaltenanzahl von Matrizen
\setcounter{MaxMatrixCols}{11}


%Index laden
\makeindex


%Erstellen und Bearbeiten von Verlinkungen
\usepackage[colorlinks=true,linkcolor=blue,urlcolor=blue,pdfst artview={FitV}]{hyperref}
%-----------------------------------------
%Ende des Kopfbereiches
%-----------------------------------------

\begin{document}
\setcounter{chapter}{1}
\chapter{foo}
text Formeln
\begin{defi}[von Fubini]
Sei \ldots
\end{defi}
\begin{thm}[von Fubini]
Sei \ldots
\end{thm}
\begin{lem}[von Fubini]
Sei \ldots
\end{lem}
\end{document}
Wie du erkennst, habe ich die Reihenfolge in der Definition festgelegt und ich swapnumbers auskommentiert.

Gruß
Marco

joh
22-12-2008, 23:25
Dankeschön. Klappt einwandfrei!